Merge branch 'test' of http://gitlab.fjmaimaimai.com/allied-creation/allied-crea…
…tion-cooperation into test
正在显示
7 个修改的文件
包含
208 行增加
和
148 行删除
| @@ -150,6 +150,7 @@ func (creditAccountService *CreditAccountService) CreateCreditAccount(createCred | @@ -150,6 +150,7 @@ func (creditAccountService *CreditAccountService) CreateCreditAccount(createCred | ||
| 150 | var goodAmountCount float64 | 150 | var goodAmountCount float64 |
| 151 | for _, dividendsEstimate := range dividendsEstimates { | 151 | for _, dividendsEstimate := range dividendsEstimates { |
| 152 | accountDetail = append(accountDetail, &domain.AccountDetail{ | 152 | accountDetail = append(accountDetail, &domain.AccountDetail{ |
| 153 | + DividendsEstimateOrderId: dividendsEstimate.DividendsEstimateId, | ||
| 153 | DividendsEstimateOrderNumber: dividendsEstimate.DividendsEstimateOrderNumber, | 154 | DividendsEstimateOrderNumber: dividendsEstimate.DividendsEstimateOrderNumber, |
| 154 | DividendsType: dividendsEstimate.DividendsType, | 155 | DividendsType: dividendsEstimate.DividendsType, |
| 155 | DividendsAmount: dividendsEstimate.DividendsAmount, | 156 | DividendsAmount: dividendsEstimate.DividendsAmount, |
| @@ -393,6 +394,7 @@ func (creditAccountService *CreditAccountService) RemoveCreditAccount(removeCred | @@ -393,6 +394,7 @@ func (creditAccountService *CreditAccountService) RemoveCreditAccount(removeCred | ||
| 393 | defer func() { | 394 | defer func() { |
| 394 | _ = transactionContext.RollbackTransaction() | 395 | _ = transactionContext.RollbackTransaction() |
| 395 | }() | 396 | }() |
| 397 | + // 账期结算单仓储初始化 | ||
| 396 | var creditAccountRepository domain.CreditAccountRepository | 398 | var creditAccountRepository domain.CreditAccountRepository |
| 397 | if value, err := factory.CreateCreditAccountRepository(map[string]interface{}{ | 399 | if value, err := factory.CreateCreditAccountRepository(map[string]interface{}{ |
| 398 | "transactionContext": transactionContext, | 400 | "transactionContext": transactionContext, |
| @@ -401,20 +403,55 @@ func (creditAccountService *CreditAccountService) RemoveCreditAccount(removeCred | @@ -401,20 +403,55 @@ func (creditAccountService *CreditAccountService) RemoveCreditAccount(removeCred | ||
| 401 | } else { | 403 | } else { |
| 402 | creditAccountRepository = value | 404 | creditAccountRepository = value |
| 403 | } | 405 | } |
| 404 | - creditAccount, err := creditAccountRepository.FindOne(map[string]interface{}{"creditAccountId": removeCreditAccountCommand.CreditAccountId}) | 406 | + |
| 407 | + // 分红预算单仓储初始化 | ||
| 408 | + var dividendsEstimateRepository domain.DividendsEstimateRepository | ||
| 409 | + if value, err := factory.CreateDividendsEstimateRepository(map[string]interface{}{ | ||
| 410 | + "transactionContext": transactionContext, | ||
| 411 | + }); err != nil { | ||
| 412 | + return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | ||
| 413 | + } else { | ||
| 414 | + dividendsEstimateRepository = value | ||
| 415 | + } | ||
| 416 | + | ||
| 417 | + // 获取账期阶段单 | ||
| 418 | + creditAccount, err := creditAccountRepository.FindOne(map[string]interface{}{ | ||
| 419 | + "creditAccountId": removeCreditAccountCommand.CreditAccountId, | ||
| 420 | + }) | ||
| 405 | if err != nil { | 421 | if err != nil { |
| 406 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | 422 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) |
| 407 | } | 423 | } |
| 408 | if creditAccount == nil { | 424 | if creditAccount == nil { |
| 409 | return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", strconv.FormatInt(removeCreditAccountCommand.CreditAccountId, 10))) | 425 | return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", strconv.FormatInt(removeCreditAccountCommand.CreditAccountId, 10))) |
| 410 | } | 426 | } |
| 411 | - if creditAccount, err := creditAccountRepository.Remove(creditAccount); err != nil { | 427 | + if creditAccountRemoved, err := creditAccountRepository.Remove(creditAccount); err != nil { |
| 412 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | 428 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) |
| 413 | } else { | 429 | } else { |
| 430 | + // 更新相关分红预算单结算状态 | ||
| 431 | + dividendsEstimateIds := make([]int64, 0) | ||
| 432 | + if count, dividendsEstimates, err := dividendsEstimateRepository.Find(map[string]interface{}{ | ||
| 433 | + "dividendsEstimateIds": dividendsEstimateIds, | ||
| 434 | + }); err != nil { | ||
| 435 | + return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | ||
| 436 | + } else { | ||
| 437 | + if count > 0 { | ||
| 438 | + for i, dividendsEstimate := range dividendsEstimates { | ||
| 439 | + if !dividendsEstimate.IsCanceled { | ||
| 440 | + dividendsEstimates[i].DividendsAccountStatus = int32(1) | ||
| 441 | + } | ||
| 442 | + } | ||
| 443 | + // 保存分红预算单 | ||
| 444 | + _, err3 := dividendsEstimateRepository.UpdateMany(dividendsEstimates) | ||
| 445 | + if err3 != nil { | ||
| 446 | + return nil, err3 | ||
| 447 | + } | ||
| 448 | + } | ||
| 449 | + } | ||
| 450 | + | ||
| 414 | if err := transactionContext.CommitTransaction(); err != nil { | 451 | if err := transactionContext.CommitTransaction(); err != nil { |
| 415 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | 452 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) |
| 416 | } | 453 | } |
| 417 | - return creditAccount, nil | 454 | + return creditAccountRemoved, nil |
| 418 | } | 455 | } |
| 419 | } | 456 | } |
| 420 | 457 |
| @@ -237,7 +237,11 @@ func (dividendsEstimateService *DividendsEstimateService) CancelDividendsEstimat | @@ -237,7 +237,11 @@ func (dividendsEstimateService *DividendsEstimateService) CancelDividendsEstimat | ||
| 237 | 237 | ||
| 238 | // 校验是否能够取消 | 238 | // 校验是否能够取消 |
| 239 | if dividendsEstimate.DividendsType == domain.ORDER_DIVIDENDS || dividendsEstimate.DividendsType == domain.RETURN_WRITE_OFF { // 订单分红、退货冲销 | 239 | if dividendsEstimate.DividendsType == domain.ORDER_DIVIDENDS || dividendsEstimate.DividendsType == domain.RETURN_WRITE_OFF { // 订单分红、退货冲销 |
| 240 | - if count, dividendsEstimatesRelative, err2 := dividendsEstimateRepository.Find(map[string]interface{}{"orderOrReturnedOrderNum": dividendsEstimate.OrderOrReturnedOrderNum}); err2 != nil { | 240 | + if count, dividendsEstimatesRelative, err2 := dividendsEstimateRepository.Find(map[string]interface{}{ |
| 241 | + "orderOrReturnedOrderNum": dividendsEstimate.OrderOrReturnedOrderNum, | ||
| 242 | + "companyId": dividendsEstimate.Company.CompanyId, | ||
| 243 | + "orgId": dividendsEstimate.Org.OrgId, | ||
| 244 | + }); err2 != nil { | ||
| 241 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err2.Error()) | 245 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err2.Error()) |
| 242 | } else { | 246 | } else { |
| 243 | if count > 0 { | 247 | if count > 0 { |
| @@ -249,7 +253,11 @@ func (dividendsEstimateService *DividendsEstimateService) CancelDividendsEstimat | @@ -249,7 +253,11 @@ func (dividendsEstimateService *DividendsEstimateService) CancelDividendsEstimat | ||
| 249 | } | 253 | } |
| 250 | } | 254 | } |
| 251 | } else if dividendsEstimate.DividendsType == domain.MONEY_INCENTIVES { // 金额激励分红 | 255 | } else if dividendsEstimate.DividendsType == domain.MONEY_INCENTIVES { // 金额激励分红 |
| 252 | - if count, dividendsEstimatesRelative, err3 := dividendsEstimateRepository.Find(map[string]interface{}{"cooperationContractNumber": dividendsEstimate.CooperationContractNumber}); err3 != nil { | 256 | + if count, dividendsEstimatesRelative, err3 := dividendsEstimateRepository.Find(map[string]interface{}{ |
| 257 | + "cooperationContractNumber": dividendsEstimate.CooperationContractNumber, | ||
| 258 | + "companyId": dividendsEstimate.Company.CompanyId, | ||
| 259 | + "orgId": dividendsEstimate.Org.OrgId, | ||
| 260 | + }); err3 != nil { | ||
| 253 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err3.Error()) | 261 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err3.Error()) |
| 254 | } else { | 262 | } else { |
| 255 | if count > 0 { | 263 | if count > 0 { |
| @@ -347,10 +355,14 @@ func (dividendsEstimateService *DividendsEstimateService) BatchCancelDividendsEs | @@ -347,10 +355,14 @@ func (dividendsEstimateService *DividendsEstimateService) BatchCancelDividendsEs | ||
| 347 | 355 | ||
| 348 | // 校验是否能够取消 | 356 | // 校验是否能够取消 |
| 349 | if dividendsEstimate.DividendsType == domain.ORDER_DIVIDENDS || dividendsEstimate.DividendsType == domain.RETURN_WRITE_OFF { // 订单分红、退货冲销 | 357 | if dividendsEstimate.DividendsType == domain.ORDER_DIVIDENDS || dividendsEstimate.DividendsType == domain.RETURN_WRITE_OFF { // 订单分红、退货冲销 |
| 350 | - if count, dividendsEstimatesRelative, err2 := dividendsEstimateRepository.Find(map[string]interface{}{"orderOrReturnedOrderNum": dividendsEstimate.OrderOrReturnedOrderNum}); err2 != nil { | 358 | + if countRelativeDividendsEstimates, dividendsEstimatesRelative, err2 := dividendsEstimateRepository.Find(map[string]interface{}{ |
| 359 | + "orderOrReturnedOrderNum": dividendsEstimate.OrderOrReturnedOrderNum, | ||
| 360 | + "companyId": dividendsEstimate.Company.CompanyId, | ||
| 361 | + "orgId": dividendsEstimate.Org.OrgId, | ||
| 362 | + }); err2 != nil { | ||
| 351 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err2.Error()) | 363 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err2.Error()) |
| 352 | } else { | 364 | } else { |
| 353 | - if count > 0 { | 365 | + if countRelativeDividendsEstimates > 0 { |
| 354 | for _, dividendsEstimateRelative := range dividendsEstimatesRelative { | 366 | for _, dividendsEstimateRelative := range dividendsEstimatesRelative { |
| 355 | if dividendsEstimateRelative.DividendsAccountStatus == domain.ACCOUNTED { | 367 | if dividendsEstimateRelative.DividendsAccountStatus == domain.ACCOUNTED { |
| 356 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已有相关分红预算单已结算,无法取消") | 368 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已有相关分红预算单已结算,无法取消") |
| @@ -359,10 +371,14 @@ func (dividendsEstimateService *DividendsEstimateService) BatchCancelDividendsEs | @@ -359,10 +371,14 @@ func (dividendsEstimateService *DividendsEstimateService) BatchCancelDividendsEs | ||
| 359 | } | 371 | } |
| 360 | } | 372 | } |
| 361 | } else if dividendsEstimate.DividendsType == domain.MONEY_INCENTIVES { // 金额激励分红 | 373 | } else if dividendsEstimate.DividendsType == domain.MONEY_INCENTIVES { // 金额激励分红 |
| 362 | - if count, dividendsEstimatesRelative, err3 := dividendsEstimateRepository.Find(map[string]interface{}{"cooperationContractNumber": dividendsEstimate.CooperationContractNumber}); err3 != nil { | 374 | + if countRelativeDividendsEstimates, dividendsEstimatesRelative, err3 := dividendsEstimateRepository.Find(map[string]interface{}{ |
| 375 | + "cooperationContractNumber": dividendsEstimate.CooperationContractNumber, | ||
| 376 | + "companyId": dividendsEstimate.Company.CompanyId, | ||
| 377 | + "orgId": dividendsEstimate.Org.OrgId, | ||
| 378 | + }); err3 != nil { | ||
| 363 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err3.Error()) | 379 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err3.Error()) |
| 364 | } else { | 380 | } else { |
| 365 | - if count > 0 { | 381 | + if countRelativeDividendsEstimates > 0 { |
| 366 | for _, dividendsEstimateRelative := range dividendsEstimatesRelative { | 382 | for _, dividendsEstimateRelative := range dividendsEstimatesRelative { |
| 367 | if dividendsEstimateRelative.DividendsAccountStatus == domain.ACCOUNTED { | 383 | if dividendsEstimateRelative.DividendsAccountStatus == domain.ACCOUNTED { |
| 368 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已有相关分红预算单已结算,无法取消") | 384 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已有相关分红预算单已结算,无法取消") |
| @@ -1420,12 +1436,10 @@ func (dividendsEstimateService *DividendsEstimateService) SearchMoneyIncentivesE | @@ -1420,12 +1436,10 @@ func (dividendsEstimateService *DividendsEstimateService) SearchMoneyIncentivesE | ||
| 1420 | stageUndertakerMap[dividendsEstimate.DividendsStage] = append(stageUndertakerMap[dividendsEstimate.DividendsStage], undertaker) | 1436 | stageUndertakerMap[dividendsEstimate.DividendsStage] = append(stageUndertakerMap[dividendsEstimate.DividendsStage], undertaker) |
| 1421 | } | 1437 | } |
| 1422 | } | 1438 | } |
| 1423 | - break | ||
| 1424 | } else if countDividendsEstimates == 0 { // 未分红,可以加入任意阶段进行金额激励 | 1439 | } else if countDividendsEstimates == 0 { // 未分红,可以加入任意阶段进行金额激励 |
| 1425 | for i, _ := range stageUndertakerMap { | 1440 | for i, _ := range stageUndertakerMap { |
| 1426 | stageUndertakerMap[i] = append(stageUndertakerMap[i], undertaker) | 1441 | stageUndertakerMap[i] = append(stageUndertakerMap[i], undertaker) |
| 1427 | } | 1442 | } |
| 1428 | - break | ||
| 1429 | } | 1443 | } |
| 1430 | } | 1444 | } |
| 1431 | } | 1445 | } |
| 1 | package domain | 1 | package domain |
| 2 | 2 | ||
| 3 | type AccountDetail struct { | 3 | type AccountDetail struct { |
| 4 | - // 分红预算单号 | 4 | + // 分红预算单号ID |
| 5 | + DividendsEstimateOrderId int64 `json:"dividendsEstimateOrderId"` | ||
| 6 | + // 分红预算单编号 | ||
| 5 | DividendsEstimateOrderNumber string `json:"dividendsEstimateOrderNumber"` | 7 | DividendsEstimateOrderNumber string `json:"dividendsEstimateOrderNumber"` |
| 6 | // 分红类型,1订单分红,2退货冲销,3金额激励 | 8 | // 分红类型,1订单分红,2退货冲销,3金额激励 |
| 7 | DividendsType int32 `json:"dividendsType"` | 9 | DividendsType int32 `json:"dividendsType"` |
| @@ -117,21 +117,6 @@ func (domainService *ConfirmDividendsIncentivesEstimateService) Confirm(orderGoo | @@ -117,21 +117,6 @@ func (domainService *ConfirmDividendsIncentivesEstimateService) Confirm(orderGoo | ||
| 117 | continue | 117 | continue |
| 118 | } | 118 | } |
| 119 | 119 | ||
| 120 | - // 校验合约关联的项目是否已结束 | ||
| 121 | - //if cooperationProject.Status == 2 { | ||
| 122 | - // dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 123 | - // DividendsUser: nil, | ||
| 124 | - // DividendsParticipateType: 0, | ||
| 125 | - // DividendsStage: 0, | ||
| 126 | - // DividendsAmount: 0, | ||
| 127 | - // OrderOrReturnedOrderNumber: orderGood.DividendsOrderNumber, | ||
| 128 | - // IsSuccessfully: false, | ||
| 129 | - // Reason: "共创项目" + orderGood.CooperationContractNumber + "已结束", | ||
| 130 | - // }) | ||
| 131 | - // continue | ||
| 132 | - // //return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("共创项目%s已结束", cooperationContract.CooperationProjectNumber)) | ||
| 133 | - //} | ||
| 134 | - | ||
| 135 | if orderGood.DividendsOrderNumber != "" { // 获取分红订单 | 120 | if orderGood.DividendsOrderNumber != "" { // 获取分红订单 |
| 136 | // 获取分红订单 | 121 | // 获取分红订单 |
| 137 | dividendsOrder, err2 := dividendsOrderRepository.FindOne(map[string]interface{}{ | 122 | dividendsOrder, err2 := dividendsOrderRepository.FindOne(map[string]interface{}{ |
| @@ -190,75 +175,82 @@ func (domainService *ConfirmDividendsIncentivesEstimateService) Confirm(orderGoo | @@ -190,75 +175,82 @@ func (domainService *ConfirmDividendsIncentivesEstimateService) Confirm(orderGoo | ||
| 190 | if dividendsIncentivesRuleMatched != nil { | 175 | if dividendsIncentivesRuleMatched != nil { |
| 191 | for _, undertaker := range cooperationContract.Undertakers { | 176 | for _, undertaker := range cooperationContract.Undertakers { |
| 192 | // 添加承接人分红预算信息详情 | 177 | // 添加承接人分红预算信息详情 |
| 193 | - undertakerDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.DividendsIncentivesPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 194 | - dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 195 | - DividendsUser: &domain.User{ | ||
| 196 | - UserId: undertaker.UserId, | ||
| 197 | - UserBaseId: undertaker.UserBaseId, | ||
| 198 | - Org: undertaker.Org, | ||
| 199 | - Orgs: undertaker.Orgs, | ||
| 200 | - Department: undertaker.Department, | ||
| 201 | - Roles: undertaker.Roles, | ||
| 202 | - UserInfo: undertaker.UserInfo, | ||
| 203 | - UserType: undertaker.UserType, | ||
| 204 | - UserName: undertaker.UserInfo.UserName, | ||
| 205 | - UserPhone: undertaker.UserPhone, | ||
| 206 | - Status: undertaker.Status, | ||
| 207 | - Company: undertaker.Company, | ||
| 208 | - }, | ||
| 209 | - DividendsParticipateType: domain.UNDERTAKER, | ||
| 210 | - DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | ||
| 211 | - DividendsAmount: undertakerDividendsAmount, | ||
| 212 | - OrderOrReturnedOrderNumber: dividendsOrder.DividendsOrderNumber, | ||
| 213 | - IsSuccessfully: true, | ||
| 214 | - }) | ||
| 215 | - // 添加推荐人分红预算信息详情 | ||
| 216 | - if undertaker.Referrer != nil { | ||
| 217 | - referrerDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.ReferrerPercentage).Div(decimal.NewFromFloat(100))).Float64() | 178 | + if dividendsIncentivesRuleMatched.DividendsIncentivesPercentage > 0 { |
| 179 | + undertakerDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.DividendsIncentivesPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 218 | dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | 180 | dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ |
| 219 | DividendsUser: &domain.User{ | 181 | DividendsUser: &domain.User{ |
| 220 | - UserId: undertaker.Referrer.UserId, | ||
| 221 | - UserBaseId: undertaker.Referrer.UserBaseId, | ||
| 222 | - Org: undertaker.Referrer.Org, | ||
| 223 | - Orgs: undertaker.Referrer.Orgs, | ||
| 224 | - Department: undertaker.Referrer.Department, | ||
| 225 | - Roles: undertaker.Referrer.Roles, | ||
| 226 | - UserInfo: undertaker.Referrer.UserInfo, | ||
| 227 | - UserType: undertaker.Referrer.UserType, | ||
| 228 | - UserName: undertaker.Referrer.UserName, | ||
| 229 | - UserPhone: undertaker.Referrer.UserPhone, | ||
| 230 | - Company: undertaker.Referrer.Company, | 182 | + UserId: undertaker.UserId, |
| 183 | + UserBaseId: undertaker.UserBaseId, | ||
| 184 | + Org: undertaker.Org, | ||
| 185 | + Orgs: undertaker.Orgs, | ||
| 186 | + Department: undertaker.Department, | ||
| 187 | + Roles: undertaker.Roles, | ||
| 188 | + UserInfo: undertaker.UserInfo, | ||
| 189 | + UserType: undertaker.UserType, | ||
| 190 | + UserName: undertaker.UserInfo.UserName, | ||
| 191 | + UserPhone: undertaker.UserPhone, | ||
| 192 | + Status: undertaker.Status, | ||
| 193 | + Company: undertaker.Company, | ||
| 231 | }, | 194 | }, |
| 232 | - DividendsParticipateType: domain.REFERRER, | 195 | + DividendsParticipateType: domain.UNDERTAKER, |
| 233 | DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | 196 | DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, |
| 234 | - DividendsAmount: referrerDividendsAmount, | 197 | + DividendsAmount: undertakerDividendsAmount, |
| 235 | OrderOrReturnedOrderNumber: dividendsOrder.DividendsOrderNumber, | 198 | OrderOrReturnedOrderNumber: dividendsOrder.DividendsOrderNumber, |
| 236 | IsSuccessfully: true, | 199 | IsSuccessfully: true, |
| 237 | }) | 200 | }) |
| 238 | } | 201 | } |
| 202 | + | ||
| 203 | + // 添加推荐人分红预算信息详情 | ||
| 204 | + if undertaker.Referrer != nil { | ||
| 205 | + if dividendsIncentivesRuleMatched.ReferrerPercentage > 0 { | ||
| 206 | + referrerDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.ReferrerPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 207 | + dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 208 | + DividendsUser: &domain.User{ | ||
| 209 | + UserId: undertaker.Referrer.UserId, | ||
| 210 | + UserBaseId: undertaker.Referrer.UserBaseId, | ||
| 211 | + Org: undertaker.Referrer.Org, | ||
| 212 | + Orgs: undertaker.Referrer.Orgs, | ||
| 213 | + Department: undertaker.Referrer.Department, | ||
| 214 | + Roles: undertaker.Referrer.Roles, | ||
| 215 | + UserInfo: undertaker.Referrer.UserInfo, | ||
| 216 | + UserType: undertaker.Referrer.UserType, | ||
| 217 | + UserName: undertaker.Referrer.UserName, | ||
| 218 | + UserPhone: undertaker.Referrer.UserPhone, | ||
| 219 | + Company: undertaker.Referrer.Company, | ||
| 220 | + }, | ||
| 221 | + DividendsParticipateType: domain.REFERRER, | ||
| 222 | + DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | ||
| 223 | + DividendsAmount: referrerDividendsAmount, | ||
| 224 | + OrderOrReturnedOrderNumber: dividendsOrder.DividendsOrderNumber, | ||
| 225 | + IsSuccessfully: true, | ||
| 226 | + }) | ||
| 227 | + } | ||
| 228 | + } | ||
| 239 | // 添加关联业务员分红预算信息详情 | 229 | // 添加关联业务员分红预算信息详情 |
| 240 | if undertaker.Salesman != nil { | 230 | if undertaker.Salesman != nil { |
| 241 | - salesmanDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.SalesmanPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 242 | - dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 243 | - DividendsUser: &domain.User{ | ||
| 244 | - UserId: undertaker.Salesman.UserId, | ||
| 245 | - UserBaseId: undertaker.Salesman.UserBaseId, | ||
| 246 | - Org: undertaker.Salesman.Org, | ||
| 247 | - Orgs: undertaker.Salesman.Orgs, | ||
| 248 | - Department: undertaker.Salesman.Department, | ||
| 249 | - Roles: undertaker.Salesman.Roles, | ||
| 250 | - UserInfo: undertaker.Salesman.UserInfo, | ||
| 251 | - UserType: undertaker.Salesman.UserType, | ||
| 252 | - UserName: undertaker.Salesman.UserInfo.UserName, | ||
| 253 | - UserPhone: undertaker.Salesman.UserPhone, | ||
| 254 | - Company: undertaker.Salesman.Company, | ||
| 255 | - }, | ||
| 256 | - DividendsParticipateType: domain.SALESMAN, | ||
| 257 | - DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | ||
| 258 | - DividendsAmount: salesmanDividendsAmount, | ||
| 259 | - OrderOrReturnedOrderNumber: dividendsOrder.DividendsOrderNumber, | ||
| 260 | - IsSuccessfully: true, | ||
| 261 | - }) | 231 | + if dividendsIncentivesRuleMatched.SalesmanPercentage > 0 { |
| 232 | + salesmanDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.SalesmanPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 233 | + dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 234 | + DividendsUser: &domain.User{ | ||
| 235 | + UserId: undertaker.Salesman.UserId, | ||
| 236 | + UserBaseId: undertaker.Salesman.UserBaseId, | ||
| 237 | + Org: undertaker.Salesman.Org, | ||
| 238 | + Orgs: undertaker.Salesman.Orgs, | ||
| 239 | + Department: undertaker.Salesman.Department, | ||
| 240 | + Roles: undertaker.Salesman.Roles, | ||
| 241 | + UserInfo: undertaker.Salesman.UserInfo, | ||
| 242 | + UserType: undertaker.Salesman.UserType, | ||
| 243 | + UserName: undertaker.Salesman.UserInfo.UserName, | ||
| 244 | + UserPhone: undertaker.Salesman.UserPhone, | ||
| 245 | + Company: undertaker.Salesman.Company, | ||
| 246 | + }, | ||
| 247 | + DividendsParticipateType: domain.SALESMAN, | ||
| 248 | + DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | ||
| 249 | + DividendsAmount: salesmanDividendsAmount, | ||
| 250 | + OrderOrReturnedOrderNumber: dividendsOrder.DividendsOrderNumber, | ||
| 251 | + IsSuccessfully: true, | ||
| 252 | + }) | ||
| 253 | + } | ||
| 262 | } | 254 | } |
| 263 | } | 255 | } |
| 264 | } | 256 | } |
| @@ -304,75 +296,84 @@ func (domainService *ConfirmDividendsIncentivesEstimateService) Confirm(orderGoo | @@ -304,75 +296,84 @@ func (domainService *ConfirmDividendsIncentivesEstimateService) Confirm(orderGoo | ||
| 304 | // 计算分红 | 296 | // 计算分红 |
| 305 | for _, undertaker := range cooperationContract.Undertakers { | 297 | for _, undertaker := range cooperationContract.Undertakers { |
| 306 | // 添加承接人分红退货预算信息详情 | 298 | // 添加承接人分红退货预算信息详情 |
| 307 | - undertakerDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.DividendsIncentivesPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 308 | - dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 309 | - DividendsUser: &domain.User{ | ||
| 310 | - UserId: undertaker.UserId, | ||
| 311 | - UserBaseId: undertaker.UserBaseId, | ||
| 312 | - Org: undertaker.Org, | ||
| 313 | - Orgs: undertaker.Orgs, | ||
| 314 | - Department: undertaker.Department, | ||
| 315 | - Roles: undertaker.Roles, | ||
| 316 | - UserInfo: undertaker.UserInfo, | ||
| 317 | - UserType: undertaker.UserType, | ||
| 318 | - UserName: undertaker.UserInfo.UserName, | ||
| 319 | - UserPhone: undertaker.UserPhone, | ||
| 320 | - Status: undertaker.Status, | ||
| 321 | - Company: undertaker.Company, | ||
| 322 | - }, | ||
| 323 | - DividendsParticipateType: domain.UNDERTAKER, | ||
| 324 | - DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | ||
| 325 | - DividendsAmount: -undertakerDividendsAmount, | ||
| 326 | - OrderOrReturnedOrderNumber: dividendsReturnedOrder.DividendsOrderNumber, | ||
| 327 | - IsSuccessfully: true, | ||
| 328 | - }) | ||
| 329 | - // 添加推荐人分红退货预算信息详情 | ||
| 330 | - if undertaker.Referrer != nil { | ||
| 331 | - referrerDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.ReferrerPercentage).Div(decimal.NewFromFloat(100))).Float64() | 299 | + if dividendsIncentivesRuleMatched.DividendsIncentivesPercentage > 0 { |
| 300 | + undertakerDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.DividendsIncentivesPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 332 | dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | 301 | dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ |
| 333 | DividendsUser: &domain.User{ | 302 | DividendsUser: &domain.User{ |
| 334 | - UserId: undertaker.Referrer.UserId, | ||
| 335 | - UserBaseId: undertaker.Referrer.UserBaseId, | ||
| 336 | - Org: undertaker.Referrer.Org, | ||
| 337 | - Orgs: undertaker.Referrer.Orgs, | ||
| 338 | - Department: undertaker.Referrer.Department, | ||
| 339 | - Roles: undertaker.Referrer.Roles, | ||
| 340 | - UserInfo: undertaker.Referrer.UserInfo, | ||
| 341 | - UserType: undertaker.Referrer.UserType, | ||
| 342 | - UserName: undertaker.Referrer.UserName, | ||
| 343 | - UserPhone: undertaker.Referrer.UserPhone, | ||
| 344 | - Company: undertaker.Referrer.Company, | 303 | + UserId: undertaker.UserId, |
| 304 | + UserBaseId: undertaker.UserBaseId, | ||
| 305 | + Org: undertaker.Org, | ||
| 306 | + Orgs: undertaker.Orgs, | ||
| 307 | + Department: undertaker.Department, | ||
| 308 | + Roles: undertaker.Roles, | ||
| 309 | + UserInfo: undertaker.UserInfo, | ||
| 310 | + UserType: undertaker.UserType, | ||
| 311 | + UserName: undertaker.UserInfo.UserName, | ||
| 312 | + UserPhone: undertaker.UserPhone, | ||
| 313 | + Status: undertaker.Status, | ||
| 314 | + Company: undertaker.Company, | ||
| 345 | }, | 315 | }, |
| 346 | - DividendsParticipateType: domain.REFERRER, | 316 | + DividendsParticipateType: domain.UNDERTAKER, |
| 347 | DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | 317 | DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, |
| 348 | - DividendsAmount: -referrerDividendsAmount, | 318 | + DividendsAmount: -undertakerDividendsAmount, |
| 349 | OrderOrReturnedOrderNumber: dividendsReturnedOrder.DividendsOrderNumber, | 319 | OrderOrReturnedOrderNumber: dividendsReturnedOrder.DividendsOrderNumber, |
| 350 | IsSuccessfully: true, | 320 | IsSuccessfully: true, |
| 351 | }) | 321 | }) |
| 352 | } | 322 | } |
| 323 | + | ||
| 324 | + // 添加推荐人分红退货预算信息详情 | ||
| 325 | + if undertaker.Referrer != nil { | ||
| 326 | + if dividendsIncentivesRuleMatched.ReferrerPercentage > 0 { | ||
| 327 | + referrerDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.ReferrerPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 328 | + dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 329 | + DividendsUser: &domain.User{ | ||
| 330 | + UserId: undertaker.Referrer.UserId, | ||
| 331 | + UserBaseId: undertaker.Referrer.UserBaseId, | ||
| 332 | + Org: undertaker.Referrer.Org, | ||
| 333 | + Orgs: undertaker.Referrer.Orgs, | ||
| 334 | + Department: undertaker.Referrer.Department, | ||
| 335 | + Roles: undertaker.Referrer.Roles, | ||
| 336 | + UserInfo: undertaker.Referrer.UserInfo, | ||
| 337 | + UserType: undertaker.Referrer.UserType, | ||
| 338 | + UserName: undertaker.Referrer.UserName, | ||
| 339 | + UserPhone: undertaker.Referrer.UserPhone, | ||
| 340 | + Company: undertaker.Referrer.Company, | ||
| 341 | + }, | ||
| 342 | + DividendsParticipateType: domain.REFERRER, | ||
| 343 | + DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | ||
| 344 | + DividendsAmount: -referrerDividendsAmount, | ||
| 345 | + OrderOrReturnedOrderNumber: dividendsReturnedOrder.DividendsOrderNumber, | ||
| 346 | + IsSuccessfully: true, | ||
| 347 | + }) | ||
| 348 | + } | ||
| 349 | + } | ||
| 350 | + | ||
| 353 | // 添加关联业务员分红退货预算信息详情 | 351 | // 添加关联业务员分红退货预算信息详情 |
| 354 | if undertaker.Salesman != nil { | 352 | if undertaker.Salesman != nil { |
| 355 | - salesmanDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.SalesmanPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 356 | - dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 357 | - DividendsUser: &domain.User{ | ||
| 358 | - UserId: undertaker.Salesman.UserId, | ||
| 359 | - UserBaseId: undertaker.Salesman.UserBaseId, | ||
| 360 | - Org: undertaker.Salesman.Org, | ||
| 361 | - Orgs: undertaker.Salesman.Orgs, | ||
| 362 | - Department: undertaker.Salesman.Department, | ||
| 363 | - Roles: undertaker.Salesman.Roles, | ||
| 364 | - UserInfo: undertaker.Salesman.UserInfo, | ||
| 365 | - UserType: undertaker.Salesman.UserType, | ||
| 366 | - UserName: undertaker.Salesman.UserInfo.UserName, | ||
| 367 | - UserPhone: undertaker.Salesman.UserPhone, | ||
| 368 | - Company: undertaker.Salesman.Company, | ||
| 369 | - }, | ||
| 370 | - DividendsParticipateType: domain.SALESMAN, | ||
| 371 | - DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | ||
| 372 | - DividendsAmount: -salesmanDividendsAmount, | ||
| 373 | - OrderOrReturnedOrderNumber: dividendsReturnedOrder.DividendsOrderNumber, | ||
| 374 | - IsSuccessfully: true, | ||
| 375 | - }) | 353 | + if dividendsIncentivesRuleMatched.SalesmanPercentage > 0 { |
| 354 | + salesmanDividendsAmount, _ := decimal.NewFromFloat(orderGood.OrderGoodAmount).Mul(decimal.NewFromFloat(dividendsIncentivesRuleMatched.SalesmanPercentage).Div(decimal.NewFromFloat(100))).Float64() | ||
| 355 | + dividendsEstimateDetails = append(dividendsEstimateDetails, &service.DividendsEstimateDetail{ | ||
| 356 | + DividendsUser: &domain.User{ | ||
| 357 | + UserId: undertaker.Salesman.UserId, | ||
| 358 | + UserBaseId: undertaker.Salesman.UserBaseId, | ||
| 359 | + Org: undertaker.Salesman.Org, | ||
| 360 | + Orgs: undertaker.Salesman.Orgs, | ||
| 361 | + Department: undertaker.Salesman.Department, | ||
| 362 | + Roles: undertaker.Salesman.Roles, | ||
| 363 | + UserInfo: undertaker.Salesman.UserInfo, | ||
| 364 | + UserType: undertaker.Salesman.UserType, | ||
| 365 | + UserName: undertaker.Salesman.UserInfo.UserName, | ||
| 366 | + UserPhone: undertaker.Salesman.UserPhone, | ||
| 367 | + Company: undertaker.Salesman.Company, | ||
| 368 | + }, | ||
| 369 | + DividendsParticipateType: domain.SALESMAN, | ||
| 370 | + DividendsStage: dividendsIncentivesRuleMatched.DividendsIncentivesStage, | ||
| 371 | + DividendsAmount: -salesmanDividendsAmount, | ||
| 372 | + OrderOrReturnedOrderNumber: dividendsReturnedOrder.DividendsOrderNumber, | ||
| 373 | + IsSuccessfully: true, | ||
| 374 | + }) | ||
| 375 | + } | ||
| 376 | + | ||
| 376 | } | 377 | } |
| 377 | } | 378 | } |
| 378 | } | 379 | } |
| 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 | ) |
| 7 | 8 | ||
| 8 | func TransformToDividendsEstimateDomainModelFromPgModels(dividendsEstimateModel *models.DividendsEstimate) (*domain.DividendsEstimate, error) { | 9 | func TransformToDividendsEstimateDomainModelFromPgModels(dividendsEstimateModel *models.DividendsEstimate) (*domain.DividendsEstimate, error) { |
| 10 | + dividendsAmount, _ := decimal.NewFromFloatWithExponent(dividendsEstimateModel.DividendsAmount, -2).Float64() | ||
| 9 | return &domain.DividendsEstimate{ | 11 | return &domain.DividendsEstimate{ |
| 10 | DividendsEstimateId: dividendsEstimateModel.DividendsEstimateId, | 12 | DividendsEstimateId: dividendsEstimateModel.DividendsEstimateId, |
| 11 | DividendsAccountStatus: dividendsEstimateModel.DividendsAccountStatus, | 13 | DividendsAccountStatus: dividendsEstimateModel.DividendsAccountStatus, |
| 12 | - DividendsAmount: dividendsEstimateModel.DividendsAmount, | 14 | + DividendsAmount: dividendsAmount, |
| 13 | DividendsEstimateOrderNumber: dividendsEstimateModel.DividendsEstimateOrderNumber, | 15 | DividendsEstimateOrderNumber: dividendsEstimateModel.DividendsEstimateOrderNumber, |
| 14 | DividendsEstimateTime: dividendsEstimateModel.DividendsEstimateTime, | 16 | DividendsEstimateTime: dividendsEstimateModel.DividendsEstimateTime, |
| 15 | DividendsParticipateType: dividendsEstimateModel.DividendsParticipateType, | 17 | DividendsParticipateType: dividendsEstimateModel.DividendsParticipateType, |
| 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 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/utils" | 7 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/utils" |
| @@ -8,10 +9,11 @@ import ( | @@ -8,10 +9,11 @@ import ( | ||
| 8 | 9 | ||
| 9 | func TransformToMoneyIncentivesRuleDomainModelFromPgModels(moneyIncentivesRuleModel *models.MoneyIncentivesRule) (*domain.MoneyIncentivesRule, error) { | 10 | func TransformToMoneyIncentivesRuleDomainModelFromPgModels(moneyIncentivesRuleModel *models.MoneyIncentivesRule) (*domain.MoneyIncentivesRule, error) { |
| 10 | stageString := utils.NumberToCNNumber(int(moneyIncentivesRuleModel.MoneyIncentivesStage)) | 11 | stageString := utils.NumberToCNNumber(int(moneyIncentivesRuleModel.MoneyIncentivesStage)) |
| 12 | + moneyIncentivesAmount, _ := decimal.NewFromFloatWithExponent(moneyIncentivesRuleModel.MoneyIncentivesAmount, -2).Float64() | ||
| 11 | return &domain.MoneyIncentivesRule{ | 13 | return &domain.MoneyIncentivesRule{ |
| 12 | MoneyIncentivesRuleId: moneyIncentivesRuleModel.MoneyIncentivesRuleId, | 14 | MoneyIncentivesRuleId: moneyIncentivesRuleModel.MoneyIncentivesRuleId, |
| 13 | CooperationContractNumber: moneyIncentivesRuleModel.CooperationContractNumber, | 15 | CooperationContractNumber: moneyIncentivesRuleModel.CooperationContractNumber, |
| 14 | - MoneyIncentivesAmount: moneyIncentivesRuleModel.MoneyIncentivesAmount, | 16 | + MoneyIncentivesAmount: moneyIncentivesAmount, |
| 15 | MoneyIncentivesStage: moneyIncentivesRuleModel.MoneyIncentivesStage, | 17 | MoneyIncentivesStage: moneyIncentivesRuleModel.MoneyIncentivesStage, |
| 16 | MoneyIncentivesStageCN: stageString, | 18 | MoneyIncentivesStageCN: stageString, |
| 17 | MoneyIncentivesStageEnd: moneyIncentivesRuleModel.MoneyIncentivesStageEnd, | 19 | MoneyIncentivesStageEnd: moneyIncentivesRuleModel.MoneyIncentivesStageEnd, |
| 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 | ) |
| 7 | 8 | ||
| 8 | func TransformToOrderGoodDomainModelFromPgModels(orderGoodModel *models.OrderGood) (*domain.OrderGood, error) { | 9 | func TransformToOrderGoodDomainModelFromPgModels(orderGoodModel *models.OrderGood) (*domain.OrderGood, error) { |
| 10 | + orderGoodAmount, _ := decimal.NewFromFloatWithExponent(orderGoodModel.OrderGoodAmount, -2).Float64() | ||
| 9 | return &domain.OrderGood{ | 11 | return &domain.OrderGood{ |
| 10 | OrderGoodId: orderGoodModel.OrderGoodId, | 12 | OrderGoodId: orderGoodModel.OrderGoodId, |
| 11 | - OrderGoodAmount: orderGoodModel.OrderGoodAmount, | 13 | + OrderGoodAmount: orderGoodAmount, |
| 12 | OrderGoodName: orderGoodModel.OrderGoodName, | 14 | OrderGoodName: orderGoodModel.OrderGoodName, |
| 13 | OrderGoodPrice: orderGoodModel.OrderGoodPrice, | 15 | OrderGoodPrice: orderGoodModel.OrderGoodPrice, |
| 14 | OrderGoodQuantity: orderGoodModel.OrderGoodQuantity, | 16 | OrderGoodQuantity: orderGoodModel.OrderGoodQuantity, |
-
请 注册 或 登录 后发表评论