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" ) type SubOrderApi struct{} // Add // // @Tags SubOrder // @Summary 添加子订单 // @Produce application/json // @Param object body request.AddSubOrder true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/subOrder/add [post] func (s *SubOrderApi) Add(c *gin.Context) { var params request.AddSubOrder ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } errCode, subOrder := checkSubOrderParams(params.SubOrder) if errCode != ecode.OK { ctx.Fail(errCode) return } errCode = subOrderService.AddSubOrder(&subOrder) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } // Delete // // @Tags SubOrder // @Summary 删除子订单 // @Produce application/json // @Param object body request.DeleteSubOrder true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/subOrder/delete [delete] func (s *SubOrderApi) Delete(c *gin.Context) { var params request.DeleteSubOrder ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } errCode := subOrderService.DeleteSubOrder(params.Ids) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } // Update // // @Tags SubOrder // @Summary 更新子订单 // @Produce application/json // @Param object body request.UpdateSubOrder true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/subOrder/update [put] func (s *SubOrderApi) Update(c *gin.Context) { var params request.UpdateSubOrder ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } errCode, subOrder := checkSubOrderParams(params.SubOrder) if errCode != ecode.OK { ctx.Fail(errCode) return } subOrder.Id = params.Id errCode = subOrderService.UpdateSubOrder(&subOrder) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.Ok() } // checkSubOrderParams // 检查子订单参数 func checkSubOrderParams(subOrder request.SubOrder) (errCode int, newSubOrder model.SubOrder) { //if subOrder.Number == "" { // return ecode.InvalidParams, newSubOrder //} //if subOrder.MemberId == 0 { // return ecode.InvalidParams, newSubOrder //} newSubOrder.ClientId = subOrder.ClientId newSubOrder.MasterOrderId = subOrder.MasterOrderId newSubOrder.Number = subOrder.Number newSubOrder.MemberId = subOrder.MemberId newSubOrder.Products = subOrder.Product return ecode.OK, newSubOrder } // List // // @Tags SubOrder // @Summary 销售子单列表 // @Produce application/json // @Param object body request.GetSubOrderList true "参数" // @Success 200 {object} contextx.Response{data=response.SubOrderResponse} // @Router /api/subOrder/list [post] func (con *SubOrderApi) List(c *gin.Context) { var params request.GetSubOrderList ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } subOrders, total, errCode := subOrderService.GetSubOrderList(params.Page, params.PageSize, params.SearchMap) if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.OkWithDetailed(response.SubOrderResponse{ List: subOrders, Count: int(total), }) }