package v1 import ( "aps_crm/model" "aps_crm/model/request" "aps_crm/model/response" "aps_crm/pkg/contextx" "aps_crm/pkg/ecode" "github.com/gin-gonic/gin" "strconv" ) type ProvinceApi struct{} // Add // @Tags Province // @Summary 添加省份 // @Produce application/json // @Param object body request.AddProvince true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/province/add [post] func (p *ProvinceApi) Add(c *gin.Context) { var params request.AddProvince ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } province := new(model.Province) province.Name = params.Name errCode := provinceService.AddProvince(province) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } // Update // @Tags Province // @Summary 更新省份 // @Produce application/json // @Param object body request.UpdateProvinces true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/province/update [put] func (p *ProvinceApi) Update(c *gin.Context) { var params request.UpdateProvinces ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } errCode := provinceService.UpdateProvince(params) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } // List // @Tags Province // @Summary 获取省份列表 // @Produce application/json // @Success 200 {object} contextx.Response{data=response.ProvinceResponse} // @Router /api/province/list [get] func (p *ProvinceApi) List(c *gin.Context) { ctx, ok := contextx.NewContext(c, nil) if !ok { return } provinces, errCode := provinceService.GetProvinces() if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.OkWithDetailed(response.ProvinceResponse{ List: provinces, }) } // Set // @Tags Province // @Summary 设置省份 // @Produce application/json // @Param object body request.SetProvinces true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/province/set [put] func (p *ProvinceApi) Set(c *gin.Context) { var params request.SetProvinces ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } errCode := provinceService.SetProvinces(params.CountryId, params.List) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } // Delete // @Tags Province // @Summary 删除省份 // @Produce application/json // @Param id path int true "省份ID" // @Success 200 {object} contextx.Response{} // @Router /api/province/delete/{id} [delete] func (p *ProvinceApi) Delete(c *gin.Context) { ctx, ok := contextx.NewContext(c, nil) if !ok { return } id, _ := strconv.Atoi(c.Param("id")) errCode := provinceService.DeleteProvince(id) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() }