正在显示
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 |
-
请 注册 或 登录 后发表评论