liujiandao
2024-04-23 9e864a183115ba2420797a8bda661187b1069e00
考勤统计与车间修改
9个文件已修改
71 ■■■■ 已修改文件
controllers/attendance_controller.go 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
controllers/request/system_set.go 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
controllers/response/attendance_response.go 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
controllers/workshop_manage_controller.go 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/docs.go 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/swagger.json 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/swagger.yaml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pkg/timex/timex.go 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
router/router.go 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
controllers/attendance_controller.go
@@ -13,7 +13,6 @@
    "silkserver/models"
    "silkserver/pkg/logx"
    "silkserver/pkg/timex"
    "strings"
    "time"
)
@@ -207,11 +206,28 @@
        util.ResponseFormat(c, code.RequestParamError, "参数不能为空")
        return
    }
    //获取月份天数
    location, err := time.ParseInLocation("2006-01", "2024-04", time.Local)
    if err != nil {
        util.ResponseFormat(c, code.RequestParamError, "月份格式错误")
        return
    }
    year, month, _ := location.Date()
    date := timex.GetDate(year, month)
    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)
    }
    manages, err := models.NewAttendanceManageSearch().SetMonth(params.Month).SetPreload(true).FindNotTotal()
    if err != nil {
        util.ResponseFormat(c, code.RequestParamError, err)
        return
    }
    m := make(map[string]response.AttendanceStatistic)
    for _, manage := range manages {
        var as response.AttendanceStatistic
@@ -222,13 +238,13 @@
            as.WorkerName = manage.WorkerName
            as.WorkType = manage.WorkType.WorkName
            as.Month = params.Month
            as.Details = details
        }
        as.WeekdayOverTime = as.WeekdayOverTime.Add(manage.OverTimeDuration)
        as.ActualAttendanceDays = as.ActualAttendanceDays + 1
        var ad response.AttendanceDetail
        ad.Date = strings.ReplaceAll(manage.Date, params.Month+"-", "")
        ad.Status = manage.Status
        as.Details = append(as.Details, ad)
        time2, _ := timex.StringToTime2(manage.Date)
        day := time2.Day()
        as.Details[day-1].Status = manage.Status
        m[manage.WorkerId] = as
    }
controllers/request/system_set.go
@@ -53,7 +53,9 @@
// ---------------------------------------车间---------------------------------
type GetWorkshopManage struct {
    PageInfo
    KeyWord string `json:"keyWord"`
    KeyWord      string `json:"keyWord"`
    WorkshopName string `json:"workshopName"` //车间名称
    GroupNumber  int    `json:"groupNumber"`  //组别
}
type GetWorkshopManageCar struct {
controllers/response/attendance_response.go
@@ -22,6 +22,6 @@
}
type AttendanceDetail struct {
    Date   string                    `json:"date"`   //日期
    Date   int                       `json:"date"`   //日期
    Status constvar.AttendanceStatus `json:"status"` //状态
}
controllers/workshop_manage_controller.go
@@ -50,15 +50,15 @@
//     @Param     Authorization    header string true "token"
//        @Param        object    query        request.GetPriceStandard    true    "参数"
//        @Success    200        {object}    util.ResponseList{data=[]models.WorkshopManage}        "成功"
//        @Router        /api-jl/v1/system/getWorkshopManageList [get]
//        @Router        /api-jl/v1/system/getWorkshopManageList [post]
func (slf WorkshopManageController) GetWorkshopManageList(c *gin.Context) {
    var param request.GetWorkshopManage
    err := c.ShouldBindQuery(&param)
    err := c.BindJSON(&param)
    if err != nil {
        util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误")
        return
    }
    list, total, err := models.NewWorkshopManageSearch().SetPage(param.Page, param.PageSize).Find()
    list, total, err := models.NewWorkshopManageSearch().SetWorkshopName(param.WorkshopName).SetGroupNumber(param.GroupNumber).SetPage(param.Page, param.PageSize).Find()
    if err != nil {
        util.ResponseFormat(c, code.SelectError, "查询失败")
        return
docs/docs.go
@@ -1589,7 +1589,7 @@
            }
        },
        "/api-jl/v1/system/getWorkshopManageList": {
            "get": {
            "post": {
                "produces": [
                    "application/json"
                ],
@@ -3975,7 +3975,7 @@
            "properties": {
                "date": {
                    "description": "日期",
                    "type": "string"
                    "type": "integer"
                },
                "status": {
                    "description": "状态",
docs/swagger.json
@@ -1577,7 +1577,7 @@
            }
        },
        "/api-jl/v1/system/getWorkshopManageList": {
            "get": {
            "post": {
                "produces": [
                    "application/json"
                ],
@@ -3963,7 +3963,7 @@
            "properties": {
                "date": {
                    "description": "日期",
                    "type": "string"
                    "type": "integer"
                },
                "status": {
                    "description": "状态",
docs/swagger.yaml
@@ -1245,7 +1245,7 @@
    properties:
      date:
        description: 日期
        type: string
        type: integer
      status:
        allOf:
        - $ref: '#/definitions/constvar.AttendanceStatus'
@@ -2342,7 +2342,7 @@
      tags:
      - 系统设置/车间管理
  /api-jl/v1/system/getWorkshopManageList:
    get:
    post:
      parameters:
      - description: token
        in: header
pkg/timex/timex.go
@@ -56,3 +56,22 @@
func GetCurrentTime() string {
    return time.Now().Format(timeLayout)
}
func GetDate(year int, month time.Month) int {
    day := 0
    if month == time.February {
        if (year%4 == 0 && year%100 != 0) || year%400 == 0 {
            day = 29
        } else {
            day = 28
        }
    } else {
        if month == time.January || month == time.March || month == time.May || month == time.July ||
            month == time.August || month == time.October || month == time.December {
            day = 31
        } else {
            day = 30
        }
    }
    return day
}
router/router.go
@@ -46,7 +46,7 @@
        systemApi.GET("getRankStandardGrade", rawSilkController.GetRankStandardGrade) //获取生丝等级
        systemApi.POST("saveRankStandard", rawSilkController.SaveRankStandard)        //保存生丝定级标准
        //车间管理
        systemApi.GET("getWorkshopManageList", workshopController.GetWorkshopManageList)           //获取车间管理列表
        systemApi.POST("getWorkshopManageList", workshopController.GetWorkshopManageList)          //获取车间管理列表
        systemApi.POST("saveWorkshopManage", workshopController.SaveWorkshopManage)                //保存车间管理
        systemApi.DELETE("deleteWorkshopManage/:id", workshopController.DeleteWorkshopManage)      //删除车间管理
        systemApi.GET("getWorkshopManageGroup/:number", workshopController.GetWorkshopManageGroup) //获取车间组别