| | |
| | | for _, worker := range workers { |
| | | if attendance.WorkerId == worker.ID { |
| | | attendance.WorkTypeId = worker.WorkTypeId |
| | | attendance.PhoneNum = worker.PhoneNum |
| | | break |
| | | } |
| | | } |
| | |
| | | util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误") |
| | | return |
| | | } |
| | | manages, total, err := models.NewAttendanceManageSearch().SetPage(params.Page, params.PageSize).Find() |
| | | manages, total, err := models.NewAttendanceManageSearch().SetPage(params.Page, params.PageSize).SetOrder("created_at desc").Find() |
| | | if err != nil { |
| | | util.ResponseFormat(c, code.RequestParamError, err) |
| | | return |
| | |
| | | return |
| | | } |
| | | //获取月份天数 |
| | | location, err := time.ParseInLocation("2006-01", "2024-04", time.Local) |
| | | location, err := time.ParseInLocation("2006-01", params.Month, time.Local) |
| | | if err != nil { |
| | | util.ResponseFormat(c, code.RequestParamError, "月份格式错误") |
| | | return |
| | | } |
| | | year, month, _ := location.Date() |
| | | date := timex.GetDate(year, month) |
| | | weeks := timex.GetWeeksOfMonth(year, month) |
| | | |
| | | manages, err := models.NewAttendanceManageSearch().SetMonth(params.Month).SetPreload(true).FindNotTotal() |
| | | manages, err := models.NewAttendanceManageSearch().SetMonth(params.Month).SetKeyword(params.Keyword).SetPreload(true).FindNotTotal() |
| | | if err != nil { |
| | | util.ResponseFormat(c, code.RequestParamError, err) |
| | | return |
| | | } |
| | | weekMap := map[string]string{ |
| | | "Sunday": "周日", |
| | | "Monday": "周一", |
| | | "Tuesday": "周二", |
| | | "Wednesday": "周三", |
| | | "Thursday": "周四", |
| | | "Friday": "周五", |
| | | "Saturday": "周六", |
| | | } |
| | | |
| | | m := make(map[string]response.AttendanceStatistic) |
| | |
| | | as.Month = params.Month |
| | | as.WorkTypeId = manage.WorkTypeId |
| | | var details []response.AttendanceDetail |
| | | for i := 1; i <= date; i++ { |
| | | var ad response.AttendanceDetail |
| | | ad.Date = i |
| | | ad.Status = constvar.Vacation |
| | | details = append(details, ad) |
| | | for _, week := range weeks { |
| | | for _, day := range week { |
| | | var ad response.AttendanceDetail |
| | | ad.Date = day.Day() |
| | | ad.WeekDay = weekMap[day.Weekday().String()] |
| | | ad.Status = constvar.Vacation |
| | | details = append(details, ad) |
| | | } |
| | | } |
| | | as.Details = details |
| | | } |