正在显示
1 个修改的文件
包含
20 行增加
和
12 行删除
| @@ -102,6 +102,7 @@ func (cashPoolService *CashPoolService) CreateCashPool(createCashPoolCommand *co | @@ -102,6 +102,7 @@ func (cashPoolService *CashPoolService) CreateCashPool(createCashPoolCommand *co | ||
| 102 | if err != nil { | 102 | if err != nil { |
| 103 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | 103 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) |
| 104 | } | 104 | } |
| 105 | + cashPoolExchangeCash := cashPools[0].ExchangedCash | ||
| 105 | 106 | ||
| 106 | // 不存在现金池 | 107 | // 不存在现金池 |
| 107 | if count == 0 { // 新增现金池 | 108 | if count == 0 { // 新增现金池 |
| @@ -130,11 +131,11 @@ func (cashPoolService *CashPoolService) CreateCashPool(createCashPoolCommand *co | @@ -130,11 +131,11 @@ func (cashPoolService *CashPoolService) CreateCashPool(createCashPoolCommand *co | ||
| 130 | return cashPool, nil | 131 | return cashPool, nil |
| 131 | } | 132 | } |
| 132 | } else { // 更新现金池 | 133 | } else { // 更新现金池 |
| 133 | - if createCashPoolCommand.Cash < cashPools[0].ExchangedCash { | 134 | + if createCashPoolCommand.Cash < cashPoolExchangeCash { |
| 134 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "投入的现金值必须大于当前已兑换现金值") | 135 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "投入的现金值必须大于当前已兑换现金值") |
| 135 | } | 136 | } |
| 136 | // 重新计算平均兑换汇率 | 137 | // 重新计算平均兑换汇率 |
| 137 | - newRate := cashPools[0].ExchangedCash / systemExchangedSuMoney | 138 | + newRate := cashPoolExchangeCash / systemExchangedSuMoney |
| 138 | 139 | ||
| 139 | // 获取上次兑换活动兑换汇率查询 | 140 | // 获取上次兑换活动兑换汇率查询 |
| 140 | var lastActivityRate float64 | 141 | var lastActivityRate float64 |
| @@ -158,7 +159,7 @@ func (cashPoolService *CashPoolService) CreateCashPool(createCashPoolCommand *co | @@ -158,7 +159,7 @@ func (cashPoolService *CashPoolService) CreateCashPool(createCashPoolCommand *co | ||
| 158 | updateCashPoolCommand := &command.UpdateCashPoolCommand{ | 159 | updateCashPoolCommand := &command.UpdateCashPoolCommand{ |
| 159 | CashPoolId: cashPools[0].CashPoolId, | 160 | CashPoolId: cashPools[0].CashPoolId, |
| 160 | Cash: createCashPoolCommand.Cash, | 161 | Cash: createCashPoolCommand.Cash, |
| 161 | - ExchangedCash: cashPools[0].ExchangedCash, | 162 | + ExchangedCash: cashPoolExchangeCash, |
| 162 | UnExchangeCash: cashPools[0].UnExchangeCash + (createCashPoolCommand.Cash - cashPools[0].Cash), | 163 | UnExchangeCash: cashPools[0].UnExchangeCash + (createCashPoolCommand.Cash - cashPools[0].Cash), |
| 163 | ExchangedSuMoney: systemExchangedSuMoney, | 164 | ExchangedSuMoney: systemExchangedSuMoney, |
| 164 | UnExchangeSuMoney: systemUnExchangeSuMoney, | 165 | UnExchangeSuMoney: systemUnExchangeSuMoney, |
| @@ -589,7 +590,7 @@ func (cashPoolService *CashPoolService) ListExchangeCashActivity(listExchangeCas | @@ -589,7 +590,7 @@ func (cashPoolService *CashPoolService) ListExchangeCashActivity(listExchangeCas | ||
| 589 | // 更新兑换现金活动倒计时命令 | 590 | // 更新兑换现金活动倒计时命令 |
| 590 | updateExchangeCashActivity := &command.UpdateExchangeCashActivityCommand { | 591 | updateExchangeCashActivity := &command.UpdateExchangeCashActivityCommand { |
| 591 | ExchangeCashActivityId: activity.ActivityId, | 592 | ExchangeCashActivityId: activity.ActivityId, |
| 592 | - CountDown: int64(math.Ceil(t2.Sub(t1).Hours() / 24)), // 重新计算活动倒计时 | 593 | + CountDown: int64(math.Ceil(t2.Sub(t1).Hours() / 24)), |
| 593 | Deadline: activity.Deadline.Local(), | 594 | Deadline: activity.Deadline.Local(), |
| 594 | ExchangedSuMoney: activity.ExchangedSuMoney, | 595 | ExchangedSuMoney: activity.ExchangedSuMoney, |
| 595 | ExchangedCash: activity.ExchangedCash, | 596 | ExchangedCash: activity.ExchangedCash, |
| @@ -870,13 +871,15 @@ func (cashPoolService *CashPoolService) UpdateExchangeCashActivity(updateExchang | @@ -870,13 +871,15 @@ func (cashPoolService *CashPoolService) UpdateExchangeCashActivity(updateExchang | ||
| 870 | return activityUpdated, nil | 871 | return activityUpdated, nil |
| 871 | } | 872 | } |
| 872 | } | 873 | } |
| 874 | + cashPoolFoundUnExchangeCash := cashPoolsFound[0].UnExchangeCash | ||
| 875 | + cashPoolFoundExchangedCash := cashPoolsFound[0].ExchangedCash | ||
| 873 | 876 | ||
| 874 | // 获取当前兑换活动汇率 | 877 | // 获取当前兑换活动汇率 |
| 875 | activityFoundRate := activityFound.Rate | 878 | activityFoundRate := activityFound.Rate |
| 876 | 879 | ||
| 877 | if updateExchangeCashActivityCommand.ExchangeRate != activityFoundRate && updateExchangeCashActivityCommand.ExchangeRate != 0 { // 更新兑换活动兑换汇率 | 880 | if updateExchangeCashActivityCommand.ExchangeRate != activityFoundRate && updateExchangeCashActivityCommand.ExchangeRate != 0 { // 更新兑换活动兑换汇率 |
| 878 | // 判断兑换活动清单中现金总金额是否超过平台未兑换现金值 | 881 | // 判断兑换活动清单中现金总金额是否超过平台未兑换现金值 |
| 879 | - if activityFound.ExchangedSuMoney * updateExchangeCashActivityCommand.ExchangeRate > cashPoolsFound[0].UnExchangeCash { | 882 | + if activityFound.ExchangedSuMoney * updateExchangeCashActivityCommand.ExchangeRate > cashPoolFoundUnExchangeCash { |
| 880 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已超过投入现金池的未兑换现金") | 883 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已超过投入现金池的未兑换现金") |
| 881 | } | 884 | } |
| 882 | 885 | ||
| @@ -930,14 +933,14 @@ func (cashPoolService *CashPoolService) UpdateExchangeCashActivity(updateExchang | @@ -930,14 +933,14 @@ func (cashPoolService *CashPoolService) UpdateExchangeCashActivity(updateExchang | ||
| 930 | if systemExchangedSuMoney == 0 { | 933 | if systemExchangedSuMoney == 0 { |
| 931 | rate = 0 | 934 | rate = 0 |
| 932 | } else { | 935 | } else { |
| 933 | - rate = (cashPoolsFound[0].ExchangedCash + (updateExchangeCashActivityCommand.ExchangedCash - activityFound.ExchangedCash)) / systemExchangedSuMoney | 936 | + rate = (cashPoolFoundExchangedCash + (updateExchangeCashActivityCommand.ExchangedCash - activityFound.ExchangedCash)) / systemExchangedSuMoney |
| 934 | } | 937 | } |
| 935 | 938 | ||
| 936 | // 更新现金池命令 | 939 | // 更新现金池命令 |
| 937 | updateCashPoolCommand := &command.UpdateCashPoolCommand{ | 940 | updateCashPoolCommand := &command.UpdateCashPoolCommand{ |
| 938 | CashPoolId: cashPoolsFound[0].CashPoolId, | 941 | CashPoolId: cashPoolsFound[0].CashPoolId, |
| 939 | - ExchangedCash: cashPoolsFound[0].ExchangedCash + (updateExchangeCashActivityCommand.ExchangedCash - activityFound.ExchangedCash), | ||
| 940 | - UnExchangeCash: cashPoolsFound[0].UnExchangeCash - (updateExchangeCashActivityCommand.ExchangedCash - activityFound.ExchangedCash) , | 942 | + ExchangedCash: cashPoolFoundExchangedCash + (updateExchangeCashActivityCommand.ExchangedCash - activityFound.ExchangedCash), |
| 943 | + UnExchangeCash: cashPoolFoundUnExchangeCash - (updateExchangeCashActivityCommand.ExchangedCash - activityFound.ExchangedCash) , | ||
| 941 | ExchangedSuMoney: systemExchangedSuMoney, | 944 | ExchangedSuMoney: systemExchangedSuMoney, |
| 942 | UnExchangeSuMoney: systemUnExchangeSuMoney, | 945 | UnExchangeSuMoney: systemUnExchangeSuMoney, |
| 943 | Rate: rate, | 946 | Rate: rate, |
| @@ -1128,9 +1131,10 @@ func (cashPoolService *CashPoolService) UpdateExchangeCashPerson(updateExchangeC | @@ -1128,9 +1131,10 @@ func (cashPoolService *CashPoolService) UpdateExchangeCashPerson(updateExchangeC | ||
| 1128 | if employeeFound == nil { | 1131 | if employeeFound == nil { |
| 1129 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "无效的员工") | 1132 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "无效的员工") |
| 1130 | } | 1133 | } |
| 1134 | + employeeFoundSuMoney := employeeFound.SuMoney | ||
| 1131 | 1135 | ||
| 1132 | // 判断该员工兑换的素币是否超过本人持有的素币 | 1136 | // 判断该员工兑换的素币是否超过本人持有的素币 |
| 1133 | - if employeeFound.SuMoney < updateExchangeCashPersonCommand.ExchangedSuMoney { | 1137 | + if employeeFoundSuMoney < updateExchangeCashPersonCommand.ExchangedSuMoney { |
| 1134 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "当前兑换素币超过本人持有的素币值") | 1138 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "当前兑换素币超过本人持有的素币值") |
| 1135 | } | 1139 | } |
| 1136 | 1140 | ||
| @@ -1224,8 +1228,10 @@ func (cashPoolService *CashPoolService) UpdateExchangeCashPerson(updateExchangeC | @@ -1224,8 +1228,10 @@ func (cashPoolService *CashPoolService) UpdateExchangeCashPerson(updateExchangeC | ||
| 1224 | return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", string(activityFound.CompanyId))) | 1228 | return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", string(activityFound.CompanyId))) |
| 1225 | } | 1229 | } |
| 1226 | 1230 | ||
| 1231 | + cashPoolFoundUnExchangeCash := cashPoolsFound[0].UnExchangeCash | ||
| 1232 | + | ||
| 1227 | // 判断是否超过平台未兑换现金 | 1233 | // 判断是否超过平台未兑换现金 |
| 1228 | - if activityUpdated.ExchangedSuMoney * activityUpdated.Rate > cashPoolsFound[0].UnExchangeCash { | 1234 | + if activityUpdated.ExchangedSuMoney * activityUpdated.Rate > cashPoolFoundUnExchangeCash { |
| 1229 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已超过投入现金池的未兑换现金") | 1235 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已超过投入现金池的未兑换现金") |
| 1230 | } | 1236 | } |
| 1231 | 1237 | ||
| @@ -2217,6 +2223,7 @@ func (cashPoolService *CashPoolService) CreateExchangeCashPerson(createExchangeC | @@ -2217,6 +2223,7 @@ func (cashPoolService *CashPoolService) CreateExchangeCashPerson(createExchangeC | ||
| 2217 | if employeeFound == nil { | 2223 | if employeeFound == nil { |
| 2218 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "无效的员工") | 2224 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "无效的员工") |
| 2219 | } | 2225 | } |
| 2226 | + employeeFoundSuMoney := employeeFound.SuMoney | ||
| 2220 | 2227 | ||
| 2221 | // 判断当前员工是否已经存在兑换素币清单中 | 2228 | // 判断当前员工是否已经存在兑换素币清单中 |
| 2222 | if _, people, err := exchangeCashPersonListRepository.Find(map[string]interface{}{ | 2229 | if _, people, err := exchangeCashPersonListRepository.Find(map[string]interface{}{ |
| @@ -2231,7 +2238,7 @@ func (cashPoolService *CashPoolService) CreateExchangeCashPerson(createExchangeC | @@ -2231,7 +2238,7 @@ func (cashPoolService *CashPoolService) CreateExchangeCashPerson(createExchangeC | ||
| 2231 | } | 2238 | } |
| 2232 | 2239 | ||
| 2233 | // 判断该员工兑换的素币是否超过本人持有的素币 | 2240 | // 判断该员工兑换的素币是否超过本人持有的素币 |
| 2234 | - if employeeFound.SuMoney < createExchangeCashPersonCommand.ExchangedSuMoney { | 2241 | + if employeeFoundSuMoney < createExchangeCashPersonCommand.ExchangedSuMoney { |
| 2235 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "当前兑换素币超过本人持有的素币值") | 2242 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "当前兑换素币超过本人持有的素币值") |
| 2236 | } | 2243 | } |
| 2237 | 2244 | ||
| @@ -2309,9 +2316,10 @@ func (cashPoolService *CashPoolService) CreateExchangeCashPerson(createExchangeC | @@ -2309,9 +2316,10 @@ func (cashPoolService *CashPoolService) CreateExchangeCashPerson(createExchangeC | ||
| 2309 | if len(cashPoolsFound) == 0 { | 2316 | if len(cashPoolsFound) == 0 { |
| 2310 | return nil, application.ThrowError(application.RES_NO_FIND_ERROR, "当前现金池为空,请先投入现金") | 2317 | return nil, application.ThrowError(application.RES_NO_FIND_ERROR, "当前现金池为空,请先投入现金") |
| 2311 | } | 2318 | } |
| 2319 | + cashPoolFoundUnExchangeCash := cashPoolsFound[0].UnExchangeCash | ||
| 2312 | 2320 | ||
| 2313 | // 判断兑换活动的现金是否超过现金池未兑换现金 | 2321 | // 判断兑换活动的现金是否超过现金池未兑换现金 |
| 2314 | - if activityUpdated.ExchangedSuMoney * updateExchangeCashActivityCommand.ExchangeRate > cashPoolsFound[0].UnExchangeCash { | 2322 | + if activityUpdated.ExchangedSuMoney * updateExchangeCashActivityCommand.ExchangeRate > cashPoolFoundUnExchangeCash { |
| 2315 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已超过投入现金池未兑换现金") | 2323 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "已超过投入现金池未兑换现金") |
| 2316 | } | 2324 | } |
| 2317 | 2325 |
-
请 注册 或 登录 后发表评论