|
@@ -0,0 +1,65 @@
|
|
|
|
|
+package user
|
|
|
|
|
+
|
|
|
|
|
+import (
|
|
|
|
|
+ "context"
|
|
|
|
|
+ "fmt"
|
|
|
|
|
+ "git.i2edu.net/i2/i2-bill-api/internal/utils"
|
|
|
|
|
+ "net/http"
|
|
|
|
|
+ "strconv"
|
|
|
|
|
+ "time"
|
|
|
|
|
+
|
|
|
|
|
+ "git.i2edu.net/i2/i2-bill-api/internal/svc"
|
|
|
|
|
+ "git.i2edu.net/i2/i2-bill-api/internal/types"
|
|
|
|
|
+
|
|
|
|
|
+ "git.i2edu.net/i2/go-zero/core/logx"
|
|
|
|
|
+)
|
|
|
|
|
+
|
|
|
|
|
+type PunchClockPageLogic struct {
|
|
|
|
|
+ logx.Logger
|
|
|
|
|
+ ctx context.Context
|
|
|
|
|
+ svcCtx *svc.ServiceContext
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+func NewPunchClockPageLogic(ctx context.Context, svcCtx *svc.ServiceContext) PunchClockPageLogic {
|
|
|
|
|
+ return PunchClockPageLogic{
|
|
|
|
|
+ Logger: logx.WithContext(ctx),
|
|
|
|
|
+ ctx: ctx,
|
|
|
|
|
+ svcCtx: svcCtx,
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+func (l *PunchClockPageLogic) PunchClockPage(r *http.Request) (*types.Response, error) {
|
|
|
|
|
+ // todo: add your logic here and delete this line
|
|
|
|
|
+ r.ParseForm()
|
|
|
|
|
+ create_time_sta := r.Form.Get("create_time_sta")
|
|
|
|
|
+ create_time_end := r.Form.Get("create_time_end")
|
|
|
|
|
+ page, _ := strconv.Atoi(r.Form.Get("page"))
|
|
|
|
|
+ rows, _ := strconv.Atoi(r.Form.Get("rows"))
|
|
|
|
|
+ sort := r.Form.Get("__sort__")
|
|
|
|
|
+ userId := fmt.Sprintf("%d", l.svcCtx.GetUserIdByJwt(l.ctx))
|
|
|
|
|
+ if create_time_end != "" {
|
|
|
|
|
+ end, err := time.Parse("2006-01-02", create_time_end)
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ return &types.Response{500, err.Error(), nil}, nil
|
|
|
|
|
+ }
|
|
|
|
|
+ create_time_end = end.Add(time.Second*24*60*60 - 1*time.Second).Format("2006-01-02 15:04:05")
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ if sort == "" {
|
|
|
|
|
+ sort = "id desc"
|
|
|
|
|
+ }
|
|
|
|
|
+ paramMap_i_t := map[string]interface{}{
|
|
|
|
|
+ "page": page,
|
|
|
|
|
+ "rows": rows,
|
|
|
|
|
+ "create_time_sta": create_time_sta,
|
|
|
|
|
+ "create_time_end": create_time_end,
|
|
|
|
|
+ "user_id": userId,
|
|
|
|
|
+ "__sort__": sort,
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ res, err := utils.PageSearch(l.svcCtx.DB, "i2bill_acquirer_attendance_record", "page", "i2bill_acquirer_attendance_record", paramMap_i_t)
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ return &types.Response{500, err.Error(), nil}, nil
|
|
|
|
|
+ }
|
|
|
|
|
+ return &types.Response{200, "", res}, nil
|
|
|
|
|
+}
|