Commit 9270486a by zhangxingmin

Merge remote-tracking branch 'origin/test' into test

parents 42e95268 530958a5
......@@ -223,7 +223,7 @@ public class ApiCommissionController {
entities.add(entity);
}
// 补充关联字段、计算本次入账比例
// 补充关联字段、计算本次入账比例、来佣金额(港币)
commissionService.fillCommissionList(entities);
return entities;
......
......@@ -94,7 +94,6 @@ public class CommissionExcelDTO {
entity.setCurrency(CurrencyEnum.getEnumByItemLabel(data.getCurrency2()));
entity.setExchangeRate(data.getExchangeRate2());
entity.setCommissionDate(data.getCommissionDate2());
entity.setHkdAmount(data.getAmount2().multiply(data.getExchangeRate2()));
entity.setRemark(data.getRemark());
entity.setStatus(null);
entity.setCreatorId(loginUserId);
......
......@@ -224,7 +224,7 @@ public class CommissionAsyncService {
// 更新预计来佣状态为已来佣、已入账金额、已入账比例
commissionExpectedService.lambdaUpdate()
.set(CommissionExpected::getStatus, CommissionExpectedStatusEnum.COMPARED.getItemValue())
.set(CommissionExpected::getPaidAmount, paidAmount.setScale(2, RoundingMode.HALF_UP))
.set(CommissionExpected::getPaidAmount, paidAmount)
.set(CommissionExpected::getPaidRatio, paidRatio)
.eq(CommissionExpected::getId, commissionExpected.getId())
.update();
......
......@@ -265,6 +265,8 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
commission.setRemark("未查询到预计来佣记录");
commission.setStatus(CommissionStatusEnum.MATCH_FAILED.getItemValue());
}
// 计算来佣金额(港币)
commission.setHkdAmount(calculateHKDAmount(commission.getAmount(), commission.getExchangeRate(), commission.getCurrency()));
});
}
......@@ -326,9 +328,10 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
// 重新关联预计来佣记录
getCommissionExpectedBizId(commission);
// 计算来佣金额(港币)
BigDecimal hkdAmount = requestAmount
.multiply(commissionUpdateRequest.getExchangeRate());
commission.setHkdAmount(hkdAmount);
commission.setHkdAmount(calculateHKDAmount(
requestAmount,
commissionUpdateRequest.getExchangeRate(),
commissionUpdateRequest.getCurrency()));
// 获取当前登录用户
AuthUserDto currentLoginUser = SecurityUtil.getCurrentLoginUser();
......@@ -363,6 +366,13 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
return true;
}
private BigDecimal calculateHKDAmount(BigDecimal requestAmount, BigDecimal exchangeRate, String currency) {
if ("HKD".equalsIgnoreCase(currency)) {
return requestAmount;
}
return requestAmount.multiply(exchangeRate);
}
private void getCommissionExpectedBizId(Commission commission) {
CommissionExpected commissionExpected = null;
if ("R".equals(commission.getCommissionBizType())) {
......@@ -753,9 +763,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
Commission commission = new Commission();
BeanUtils.copyProperties(request, commission);
// 计算来佣金额(港币)
BigDecimal hkdAmount = request.getAmount()
.multiply(request.getExchangeRate());
commission.setHkdAmount(hkdAmount);
commission.setHkdAmount(calculateHKDAmount(request.getAmount(), request.getExchangeRate(), request.getCurrency()));
// 入账业务id
commission.setCommissionBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_COMMISSION.getCode()));
// 关联业务id
......@@ -895,7 +903,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
String loginUserId = currentLoginUser.getId().toString();
CommissionExpected expected = new CommissionExpected();
BeanUtils.copyProperties(commission, expected, "id");
BeanUtils.copyProperties(commission, expected, "id", "remark");
expected.setCommissionExpectedBizId(RandomStringGenerator.generateBizId16("commission_expected"));
// 生成应收单编号
expected.setReceivableNo(receivableService.generateReceivableNo(
......@@ -910,6 +918,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
expected.setCommissionDate(commission.getCommissionDate());
expected.setStatus(CommissionExpectedStatusEnum.COMPARED.getItemValue());
expected.setStatusDesc("比对成功,通过手动同步预计来佣"); // 设置状态描述为比对成功
expected.setRemark(null);
expected.setCreatorId(loginUserId);
expected.setCreateTime(new Date());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment