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 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 id path int true "查询参数" // @Success 200 {object} contextx.Response{} // @Router /api/subOrder/delete/{id} [delete] func (s *SubOrderApi) Delete(c *gin.Context) { ctx, ok := contextx.NewContext(c, nil) if !ok { return } id, _ := strconv.Atoi(c.Param("id")) errCode := subOrderService.DeleteSubOrder(id) 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() } // List // // @Tags SubOrder // @Summary 获取子订单列表 // @Produce application/json // @Success 200 {object} contextx.Response{data=response.SubOrderResponse} // @Router /api/subOrder/list [get] func (s *SubOrderApi) List(c *gin.Context) { ctx, ok := contextx.NewContext(c, nil) if !ok { return } subOrders, errCode := subOrderService.GetSubOrderList() if errCode != ecode.OK { ctx.Fail(errCode) return } ctx.OkWithDetailed(response.SubOrderResponse{ List: subOrders, }) } // 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 }