package controllers import ( "github.com/gin-gonic/gin" "silkserver/controllers/request" "silkserver/controllers/response" "silkserver/extend/code" "silkserver/extend/util" "silkserver/models" "strconv" ) type RawSilkStandardController struct { } // SavePriceStandard // // @Tags 系统设置/生丝定价标准 // @Summary 保存生丝定价标准 // @Produce application/json // @Param object body models.RawSilkPriceStandard true "参数" // @Success 200 {object} util.Response "成功" // @Router /api-jl/v1/system/savePriceStandard [post] func (slf RawSilkStandardController) SavePriceStandard(c *gin.Context) { var priceStandard models.RawSilkPriceStandard err := c.BindJSON(&priceStandard) if err != nil { util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误") return } if priceStandard.ID > 0 { err = models.NewRawSilkPriceStandardSearch().Save(&priceStandard) } else { err = models.NewRawSilkPriceStandardSearch().Create(&priceStandard) } if err != nil { util.ResponseFormat(c, code.SaveFail, "保存失败") return } util.ResponseFormat(c, code.Success, "保存成功") } // GetPriceStandardList // // @Tags 系统设置/生丝定价标准 // @Summary 获取生丝定价标准 // @Produce application/json // @Param object query request.GetPriceStandard true "参数" // @Success 200 {object} util.ResponseList{data=[]models.RawSilkPriceStandard} "成功" // @Router /api-jl/v1/system/getPriceStandardList [get] func (slf RawSilkStandardController) GetPriceStandardList(c *gin.Context) { var param request.GetPriceStandard err := c.ShouldBindQuery(¶m) if err != nil { util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误") return } list, total, err := models.NewRawSilkPriceStandardSearch().SetPage(param.Page, param.PageSize).Find() if err != nil { util.ResponseFormat(c, code.SelectError, "查询失败") return } util.ResponseFormatList(c, code.Success, list, total) } // DeletePriceStandard // // @Tags 系统设置/生丝定价标准 // @Summary 删除生丝定价标准 // @Produce application/json // @Param id path string true "id" // @Success 200 {object} util.Response "成功" // @Router /api-jl/v1/system/deletePriceStandard/{id} [delete] func (slf RawSilkStandardController) DeletePriceStandard(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.NewRawSilkPriceStandardSearch().SetId(atoi).Delete() if err != nil { util.ResponseFormat(c, code.RequestParamError, "删除失败") return } util.ResponseFormat(c, code.RequestParamError, "删除成功") } // GetRankStandard // // @Tags 系统设置/生丝定级标准 // @Summary 获取生丝定级标准 // @Produce application/json // @Success 200 {object} util.ResponseList{data=[]response.RankStandard} "成功" // @Router /api-jl/v1/system/getRankStandard [get] func (slf RawSilkStandardController) GetRankStandard(c *gin.Context) { standards, err := models.NewRawSilkRankStandardSearch().FindNotTotal() if err != nil { util.ResponseFormat(c, code.RequestParamError, "获取生丝定级标准失败") return } m := make(map[string]response.RankStandard) for _, standard := range standards { var dr response.DynamicsRank dr.RankName = standard.RankName dr.RankValue = standard.RankValue rankStandard, ok := m[standard.LineId] if !ok { rankStandard.LineId = standard.LineId rankStandard.CheckItem = standard.CheckItem rankStandard.StartFineness = standard.StartFineness rankStandard.EndFineness = standard.EndFineness rankStandard.RankA = standard.RankA rankStandard.RankB = standard.RankB rankStandard.RankC = standard.RankC } rankStandard.DynamicsRanks = append(rankStandard.DynamicsRanks, dr) m[standard.LineId] = rankStandard } data := make([]response.RankStandard, 0) for _, standard := range m { data = append(data, standard) } util.ResponseFormat(c, code.Success, data) }