正在显示
4 个修改的文件
包含
30 行增加
和
17 行删除
@@ -45,15 +45,6 @@ func (cooperationApplicationService *CooperationApplicationService) ApplyForCoop | @@ -45,15 +45,6 @@ func (cooperationApplicationService *CooperationApplicationService) ApplyForCoop | ||
45 | cooperationProjectRepository = value | 45 | cooperationProjectRepository = value |
46 | } | 46 | } |
47 | 47 | ||
48 | - // 获取共创项目 | ||
49 | - cooperationProject, err := cooperationProjectRepository.FindOne(map[string]interface{}{"cooperationProjectId": applyForCooperationCommand.CooperationProjectId}) | ||
50 | - if err != nil { | ||
51 | - return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "共创项目不存在") | ||
52 | - } | ||
53 | - if cooperationProject == nil { | ||
54 | - return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", strconv.FormatInt(applyForCooperationCommand.CooperationProjectId, 10))) | ||
55 | - } | ||
56 | - | ||
57 | // 用户REST服务初始化 | 48 | // 用户REST服务初始化 |
58 | var userService service.UserService | 49 | var userService service.UserService |
59 | if value, err := factory.CreateUserService(map[string]interface{}{}); err != nil { | 50 | if value, err := factory.CreateUserService(map[string]interface{}{}); err != nil { |
@@ -102,6 +93,19 @@ func (cooperationApplicationService *CooperationApplicationService) ApplyForCoop | @@ -102,6 +93,19 @@ func (cooperationApplicationService *CooperationApplicationService) ApplyForCoop | ||
102 | organization = data | 93 | organization = data |
103 | } | 94 | } |
104 | 95 | ||
96 | + // 获取共创项目 | ||
97 | + cooperationProject, err := cooperationProjectRepository.FindOne(map[string]interface{}{"cooperationProjectId": applyForCooperationCommand.CooperationProjectId}) | ||
98 | + if err != nil { | ||
99 | + return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "共创项目不存在") | ||
100 | + } | ||
101 | + if cooperationProject == nil { | ||
102 | + return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", strconv.FormatInt(applyForCooperationCommand.CooperationProjectId, 10))) | ||
103 | + } | ||
104 | + | ||
105 | + // TODO 校验:同一个用户,不能多次申请同一个项目 | ||
106 | + | ||
107 | + // TODO 校验:判断用户类型是否属于承接对象 | ||
108 | + | ||
105 | newCooperationApplication := &domain.CooperationApplication{ | 109 | newCooperationApplication := &domain.CooperationApplication{ |
106 | CooperationApplicationApplicant: applicant, | 110 | CooperationApplicationApplicant: applicant, |
107 | CooperationApplicationAttachment: applyForCooperationCommand.CooperationApplicationAttachment, | 111 | CooperationApplicationAttachment: applyForCooperationCommand.CooperationApplicationAttachment, |
@@ -6,6 +6,7 @@ import ( | @@ -6,6 +6,7 @@ import ( | ||
6 | "fmt" | 6 | "fmt" |
7 | "github.com/linmadan/egglib-go/core/application" | 7 | "github.com/linmadan/egglib-go/core/application" |
8 | "github.com/linmadan/egglib-go/utils/tool_funs" | 8 | "github.com/linmadan/egglib-go/utils/tool_funs" |
9 | + "github.com/shopspring/decimal" | ||
9 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/dividendsReturnedOrder/command" | 10 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/dividendsReturnedOrder/command" |
10 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/dividendsReturnedOrder/query" | 11 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/dividendsReturnedOrder/query" |
11 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/factory" | 12 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/factory" |
@@ -130,12 +131,16 @@ func (dividendsReturnedOrderService *DividendsReturnedOrderService) CreateDivide | @@ -130,12 +131,16 @@ func (dividendsReturnedOrderService *DividendsReturnedOrderService) CreateDivide | ||
130 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "分红退货单号已存在") | 131 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "分红退货单号已存在") |
131 | } | 132 | } |
132 | 133 | ||
134 | + // 退货金额 | ||
135 | + var dividendsReturnedOrderRefund float64 | ||
136 | + | ||
133 | // 获取分红退货单产品 | 137 | // 获取分红退货单产品 |
134 | var orderGoods []*domain.OrderGood | 138 | var orderGoods []*domain.OrderGood |
135 | for _, orderGood := range createDividendsReturnedOrderCommand.OrderGoods { | 139 | for _, orderGood := range createDividendsReturnedOrderCommand.OrderGoods { |
140 | + orderGoodAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodPrice).Mul(decimal.NewFromFloat(float64(orderGood.OrderGoodQuantity))).Float64() | ||
136 | orderGoods = append(orderGoods, &domain.OrderGood{ | 141 | orderGoods = append(orderGoods, &domain.OrderGood{ |
137 | OrderGoodId: 0, | 142 | OrderGoodId: 0, |
138 | - OrderGoodAmount: orderGood.OrderGoodAmount, | 143 | + OrderGoodAmount: orderGoodAmount, |
139 | OrderGoodName: orderGood.OrderGoodName, | 144 | OrderGoodName: orderGood.OrderGoodName, |
140 | OrderGoodPrice: orderGood.OrderGoodPrice, | 145 | OrderGoodPrice: orderGood.OrderGoodPrice, |
141 | OrderGoodQuantity: orderGood.OrderGoodQuantity, | 146 | OrderGoodQuantity: orderGood.OrderGoodQuantity, |
@@ -150,11 +155,12 @@ func (dividendsReturnedOrderService *DividendsReturnedOrderService) CreateDivide | @@ -150,11 +155,12 @@ func (dividendsReturnedOrderService *DividendsReturnedOrderService) CreateDivide | ||
150 | DeletedAt: time.Time{}, | 155 | DeletedAt: time.Time{}, |
151 | UpdatedAt: time.Time{}, | 156 | UpdatedAt: time.Time{}, |
152 | }) | 157 | }) |
158 | + dividendsReturnedOrderRefund, _ = decimal.NewFromFloat(dividendsReturnedOrderRefund).Add(decimal.NewFromFloat(orderGood.OrderGoodPrice).Mul(decimal.NewFromFloat(float64(orderGood.OrderGoodQuantity)))).Float64() | ||
153 | } | 159 | } |
154 | 160 | ||
155 | newDividendsReturnedOrder := &domain.DividendsReturnedOrder{ | 161 | newDividendsReturnedOrder := &domain.DividendsReturnedOrder{ |
156 | DividendsReturnedOrderNumber: dividendsReturnedOrderNumber, | 162 | DividendsReturnedOrderNumber: dividendsReturnedOrderNumber, |
157 | - DividendsReturnedOrderRefund: createDividendsReturnedOrderCommand.DividendsReturnedOrderRefund, | 163 | + DividendsReturnedOrderRefund: dividendsReturnedOrderRefund, |
158 | OriginalOrderNum: createDividendsReturnedOrderCommand.OriginalOrderNum, | 164 | OriginalOrderNum: createDividendsReturnedOrderCommand.OriginalOrderNum, |
159 | DividendsOrderNumber: createDividendsReturnedOrderCommand.DividendsOrderNumber, | 165 | DividendsOrderNumber: createDividendsReturnedOrderCommand.DividendsOrderNumber, |
160 | DividendsReturnedCustomerName: createDividendsReturnedOrderCommand.DividendsReturnedCustomerName, | 166 | DividendsReturnedCustomerName: createDividendsReturnedOrderCommand.DividendsReturnedCustomerName, |
1 | package transform | 1 | package transform |
2 | 2 | ||
3 | import ( | 3 | import ( |
4 | + "github.com/shopspring/decimal" | ||
4 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/domain" | 5 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/domain" |
5 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg/models" | 6 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg/models" |
6 | ) | 7 | ) |
@@ -10,9 +11,10 @@ func TransformToDividendsReturnedOrderDomainModelFromPgModels( | @@ -10,9 +11,10 @@ func TransformToDividendsReturnedOrderDomainModelFromPgModels( | ||
10 | goods []*models.OrderGood) (*domain.DividendsReturnedOrder, error) { | 11 | goods []*models.OrderGood) (*domain.DividendsReturnedOrder, error) { |
11 | var orderGoods []*domain.OrderGood | 12 | var orderGoods []*domain.OrderGood |
12 | for _, good := range goods { | 13 | for _, good := range goods { |
14 | + orderGoodAmount, _ := decimal.NewFromFloatWithExponent(good.OrderGoodAmount, -2).Float64() | ||
13 | orderGoods = append(orderGoods, &domain.OrderGood{ | 15 | orderGoods = append(orderGoods, &domain.OrderGood{ |
14 | OrderGoodId: good.OrderGoodId, | 16 | OrderGoodId: good.OrderGoodId, |
15 | - OrderGoodAmount: good.OrderGoodAmount, | 17 | + OrderGoodAmount: orderGoodAmount, |
16 | OrderGoodName: good.OrderGoodName, | 18 | OrderGoodName: good.OrderGoodName, |
17 | OrderGoodPrice: good.OrderGoodPrice, | 19 | OrderGoodPrice: good.OrderGoodPrice, |
18 | OrderGoodQuantity: good.OrderGoodQuantity, | 20 | OrderGoodQuantity: good.OrderGoodQuantity, |
@@ -26,10 +28,11 @@ func TransformToDividendsReturnedOrderDomainModelFromPgModels( | @@ -26,10 +28,11 @@ func TransformToDividendsReturnedOrderDomainModelFromPgModels( | ||
26 | UpdatedAt: good.UpdatedAt, | 28 | UpdatedAt: good.UpdatedAt, |
27 | }) | 29 | }) |
28 | } | 30 | } |
31 | + dividendsReturnedOrderRefund, _ := decimal.NewFromFloatWithExponent(dividendsReturnedOrderModel.DividendsReturnedOrderRefund, -2).Float64() | ||
29 | return &domain.DividendsReturnedOrder{ | 32 | return &domain.DividendsReturnedOrder{ |
30 | DividendsReturnedOrderId: dividendsReturnedOrderModel.DividendsReturnedOrderId, | 33 | DividendsReturnedOrderId: dividendsReturnedOrderModel.DividendsReturnedOrderId, |
31 | DividendsReturnedOrderNumber: dividendsReturnedOrderModel.DividendsReturnedOrderNumber, | 34 | DividendsReturnedOrderNumber: dividendsReturnedOrderModel.DividendsReturnedOrderNumber, |
32 | - DividendsReturnedOrderRefund: dividendsReturnedOrderModel.DividendsReturnedOrderRefund, | 35 | + DividendsReturnedOrderRefund: dividendsReturnedOrderRefund, |
33 | OriginalOrderNum: dividendsReturnedOrderModel.OriginalOrderNum, | 36 | OriginalOrderNum: dividendsReturnedOrderModel.OriginalOrderNum, |
34 | DividendsOrderNumber: dividendsReturnedOrderModel.DividendsOrderNumber, | 37 | DividendsOrderNumber: dividendsReturnedOrderModel.DividendsOrderNumber, |
35 | DividendsReturnedCustomerName: dividendsReturnedOrderModel.DividendsReturnedCustomerName, | 38 | DividendsReturnedCustomerName: dividendsReturnedOrderModel.DividendsReturnedCustomerName, |
@@ -108,7 +108,7 @@ func (repository *DividendsReturnedOrderRepository) Save(dividendsReturnedOrder | @@ -108,7 +108,7 @@ func (repository *DividendsReturnedOrderRepository) Save(dividendsReturnedOrder | ||
108 | ); err != nil { | 108 | ); err != nil { |
109 | return dividendsReturnedOrder, err | 109 | return dividendsReturnedOrder, err |
110 | } | 110 | } |
111 | - // 新增订单产品 | 111 | + // 新增退货单产品 |
112 | var orderGoodsModel []*models.OrderGood | 112 | var orderGoodsModel []*models.OrderGood |
113 | for _, good := range dividendsReturnedOrder.Goods { | 113 | for _, good := range dividendsReturnedOrder.Goods { |
114 | orderGoodsModel = append(orderGoodsModel, &models.OrderGood{ | 114 | orderGoodsModel = append(orderGoodsModel, &models.OrderGood{ |
@@ -247,9 +247,6 @@ func (repository *DividendsReturnedOrderRepository) Save(dividendsReturnedOrder | @@ -247,9 +247,6 @@ func (repository *DividendsReturnedOrderRepository) Save(dividendsReturnedOrder | ||
247 | } | 247 | } |
248 | } | 248 | } |
249 | } | 249 | } |
250 | - log.Logger.Info("待更新的分红退货单产品", map[string]interface{}{ | ||
251 | - "orderGoodModelsToUpdate": orderGoodModelsToUpdate, | ||
252 | - }) | ||
253 | for i, orderGoodModelToUpdate := range orderGoodModelsToUpdate { | 250 | for i, orderGoodModelToUpdate := range orderGoodModelsToUpdate { |
254 | for j, orderGood := range dividendsReturnedOrder.Goods { | 251 | for j, orderGood := range dividendsReturnedOrder.Goods { |
255 | if orderGood.OrderGoodId == orderGoodModelToUpdate.OrderGoodId { | 252 | if orderGood.OrderGoodId == orderGoodModelToUpdate.OrderGoodId { |
@@ -274,6 +271,9 @@ func (repository *DividendsReturnedOrderRepository) Save(dividendsReturnedOrder | @@ -274,6 +271,9 @@ func (repository *DividendsReturnedOrderRepository) Save(dividendsReturnedOrder | ||
274 | } | 271 | } |
275 | } | 272 | } |
276 | if len(orderGoodModelsToUpdate) > 0 { | 273 | if len(orderGoodModelsToUpdate) > 0 { |
274 | + log.Logger.Info("待更新的分红退货单产品", map[string]interface{}{ | ||
275 | + "orderGoodModelsToUpdate": orderGoodModelsToUpdate, | ||
276 | + }) | ||
277 | if _, err := tx.Model(&orderGoodModelsToUpdate).WherePK().Update(); err != nil { | 277 | if _, err := tx.Model(&orderGoodModelsToUpdate).WherePK().Update(); err != nil { |
278 | return nil, err | 278 | return nil, err |
279 | } | 279 | } |
-
请 注册 或 登录 后发表评论