package controllers import ( "github.com/gin-gonic/gin" "silkserver/constvar" "silkserver/controllers/request" "silkserver/controllers/response" "silkserver/extend/code" "silkserver/extend/util" "silkserver/models" "strconv" ) type WorkshopManageController struct { } // SaveWorkshopManage // // @Tags 系统设置/车间管理 // @Summary 保存车间管理 // @Produce application/json // @Param object body models.WorkshopManage true "参数" // @Param Authorization header string true "token" // @Success 200 {object} util.Response "成功" // @Router /api-jl/v1/system/saveWorkshopManage [post] func (slf WorkshopManageController) SaveWorkshopManage(c *gin.Context) { var workshop models.WorkshopManage err := c.BindJSON(&workshop) if err != nil { util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误") return } if workshop.ID > 0 { err = models.NewWorkshopManageSearch().Save(&workshop) } else { err = models.NewWorkshopManageSearch().Create(&workshop) } if err != nil { util.ResponseFormat(c, code.SaveFail, "保存失败") return } util.ResponseFormat(c, code.Success, "保存成功") } // GetWorkshopManageList // // @Tags 系统设置/车间管理 // @Summary 获取车间管理列表 // @Produce application/json // @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] func (slf WorkshopManageController) GetWorkshopManageList(c *gin.Context) { var param request.GetWorkshopManage err := c.ShouldBindQuery(¶m) if err != nil { util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误") return } list, total, err := models.NewWorkshopManageSearch().SetPage(param.Page, param.PageSize).Find() if err != nil { util.ResponseFormat(c, code.SelectError, "查询失败") return } util.ResponseFormatList(c, code.Success, list, total) } // DeleteWorkshopManage // // @Tags 系统设置/车间管理 // @Summary 删除车间管理 // @Produce application/json // @Param id path string true "id" // @Success 200 {object} util.Response "成功" // @Router /api-jl/v1/system/deleteWorkshopManage/{id} [delete] func (slf WorkshopManageController) DeleteWorkshopManage(c *gin.Context) { id := c.Param("id") if id == "" { util.ResponseFormat(c, code.RequestParamError, "无效的id") return } atoi, err := strconv.Atoi(id) if err != nil { util.ResponseFormat(c, code.RequestParamError, "数据转换失败") return } err = models.NewWorkshopManageSearch().SetId(atoi).Delete() if err != nil { util.ResponseFormat(c, code.RequestParamError, "删除失败") return } util.ResponseFormat(c, code.Success, "删除成功") } // GetWorkshopManageGroup // // @Tags 系统设置/车间管理 // @Summary 获取车间组别 // @Produce application/json // @Param Authorization header string true "token" // @Param number path string true "number" // @Success 200 {object} util.Response{data=map[int]int} "成功" // @Router /api-jl/v1/system/getWorkshopManageGroup/{number} [get] func (slf WorkshopManageController) GetWorkshopManageGroup(c *gin.Context) { number := c.Param("number") if number == "" { util.ResponseFormat(c, code.RequestParamError, "无效的编码") return } all, err := models.NewWorkshopManageSearch().SetWorkshopNumber(number).FindAll() if err != nil { util.ResponseFormat(c, code.RequestParamError, "查找失败") return } groupMap := make(map[int]int) for _, manage := range all { groupMap[manage.GroupNumber] = manage.GroupNumber } util.ResponseFormat(c, code.Success, groupMap) } // GetCarAndLevel // // @Tags 系统设置/车间管理 // @Summary 获取车辆编号和等级 // @Produce application/json // @Param Authorization header string true "token" // @Param object body request.GetWorkshopManageCar true "参数" // @Success 200 {object} util.Response{data=response.CarAndLevel} "成功" // @Router /api-jl/v1/system/getCarAndLevel [post] func (slf WorkshopManageController) GetCarAndLevel(c *gin.Context) { var params request.GetWorkshopManageCar err := c.BindJSON(¶ms) if err != nil { util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误") return } all, err := models.NewWorkshopManageSearch().SetWorkshopName(params.WorkshopName).SetGroupNumber(params.GroupNumber).FindAll() if err != nil { util.ResponseFormat(c, code.RequestParamError, "查找失败") return } fineness, err := models.NewFinenessRegisterSearch().SetWorkshop(params.WorkshopName).SetWorkshopGroup(params.GroupNumber). SetMarket(params.MarketName).First() if err != nil { util.ResponseFormat(c, code.RequestParamError, "查找失败") return } first, err := models.NewFinenessCheckSearch().SetID(fineness.FinenessCheckID).First() if err != nil { util.ResponseFormat(c, code.RequestParamError, "查找失败") return } var data response.CarAndLevel data.Level = first.FinenessGrade carNum := make([][]int, 0) for _, manage := range all { car := make([]int, 0) i := manage.StartCarNumber if manage.CarFlag == constvar.RightHalfCar { i++ } for ; i <= manage.EndCarNumber; i++ { car = append(car, i) } if len(car) > 0 { carNum = append(carNum, car) } } data.Car = carNum util.ResponseFormat(c, code.Success, data) }