package v1 import ( "aps_crm/constvar" "aps_crm/model" "aps_crm/model/request" "aps_crm/model/response" "aps_crm/pkg/contextx" "aps_crm/pkg/ecode" "aps_crm/pkg/structx" "aps_crm/utils" "github.com/gin-gonic/gin" ) type ServiceContractApi struct{} // Add // // @Tags ServiceContract // @Summary 添加服务合同 // @Produce application/json // @Param object body request.AddServiceContract true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/serviceContract/add [post] func (s *ServiceContractApi) Add(c *gin.Context) { var params request.AddServiceContract ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } serviceContract := new(model.ServiceContract) if err := structx.AssignTo(params, serviceContract); err != nil { ctx.Fail(ecode.ParamsErr) return } errCode := serviceContractService.AddServiceContract(serviceContract) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } //// Delete //// //// @Tags ServiceContract //// @Summary 删除服务合同 //// @Produce application/json //// @Param object body request.DeleteServiceContract true "查询参数" //// @Success 200 {object} contextx.Response{} //// @Router /api/serviceContract/delete [delete] //func (s *ServiceContractApi) Delete(c *gin.Context) { // var params request.DeleteServiceContract // ctx, ok := contextx.NewContext(c, ¶ms) // if !ok { // return // } // // errCode := serviceContractService.DeleteServiceContract(params.Ids) // if errCode != ecode.OK { // ctx.Fail(errCode) // return // } // // ctx.Ok() //} // BatchDelete // @Tags ServiceContract // @Summary 批量删除服务合同 // @Produce application/json // @Param object body request.CommonIds true "参数" // @Success 200 {object} contextx.Response{} // @Router /api/serviceContract/delete [delete] func (s *ServiceContractApi) BatchDelete(c *gin.Context) { var params request.CommonIds ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } errCode := serviceContractService.BatchDeleteServiceContract(params.Ids) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } // Update // // @Tags ServiceContract // @Summary 更新服务合同 // @Produce application/json // @Param object body request.UpdateServiceContract true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/serviceContract/update [put] func (s *ServiceContractApi) Update(c *gin.Context) { var params request.UpdateServiceContract ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } serviceContract := new(model.ServiceContract) if err := structx.AssignTo(params, serviceContract); err != nil { ctx.Fail(ecode.ParamsErr) return } serviceContract.Id = params.Id errCode := serviceContractService.UpdateServiceContract(serviceContract) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } // List // // @Tags ServiceContract // @Summary 服务合同列表 // @Produce application/json // @Param object body request.GetServiceContractList true "参数" // @Success 200 {object} contextx.Response{data=response.ServiceContractsResponse} // @Router /api/serviceContract/list [post] func (con *ServiceContractApi) List(c *gin.Context) { var params request.GetServiceContractList ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } var memberIds []int userInfo := utils.GetUserInfo(c) if userInfo.UserType == constvar.UserTypeSub { memberIds = []int{userInfo.CrmUserId} } serviceContracts, total, errCode := serviceContractService.GetServiceContractList(params.Page, params.PageSize, params.QueryClass, params.KeywordType, params.Keyword, memberIds) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.OkWithDetailed(response.ServiceContractsResponse{ List: serviceContracts, Count: int(total), }) }