|
@@ -59,24 +59,27 @@ public class RepalChangeRecordServiceImpl extends ServiceImpl<RepalChangeRecordM
|
|
|
throw new CommonException(CodeMsg.FAILED, "未查到对应的账款");
|
|
|
}
|
|
|
RepalBill repalBill = repalBillService.getById(repalChangeRecord.getRepalBillId());
|
|
|
- // 删除之前那条记录,重新计算
|
|
|
- this.calculateMoney(dto.getRepalChangeRecordId(), repalBill.getId());
|
|
|
- // 新增一条
|
|
|
List<RepalChangeRecord> recordList = this.list(Wrappers.lambdaQuery(RepalChangeRecord.class)
|
|
|
.eq(RepalChangeRecord::getRepalBillId, repalBill.getId())
|
|
|
.eq(RepalChangeRecord::getDeleted, DeletedStatusEnum.NORMAL.getCode())
|
|
|
- .orderByDesc(RepalChangeRecord::getId)
|
|
|
- .last("LIMIT 1"));
|
|
|
- RepalChangeRecord entity = new RepalChangeRecord();
|
|
|
- BeanUtils.copyProperties(recordList.get(0), entity);
|
|
|
- entity.setPreMoney(recordList.get(0).getAfterMoney());
|
|
|
- entity.setTransMoney(dto.getMoney());
|
|
|
- entity.setAfterMoney(entity.getPreMoney().subtract(entity.getTransMoney()));
|
|
|
- entity.setRecordDate(dto.getRecordDate());
|
|
|
+ .ge(RepalChangeRecord::getId, repalChangeRecord.getId()));
|
|
|
+ if (CollUtil.isEmpty(recordList)) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ // 单独修改一条,后续的重新计算
|
|
|
RepalGroupMember member = repalGroupMemberService.getMemberByUserId(UserContextUtil.getUser().getUserId());
|
|
|
- entity.setOperUserName(member.getMemberUserName());
|
|
|
- entity.setOperUserId(member.getUserId());
|
|
|
- this.save(entity);
|
|
|
+ for (int i = 0; i < recordList.size(); i++) {
|
|
|
+ if (i == 0) {
|
|
|
+ recordList.get(i).setOperUserName(member.getMemberUserName());
|
|
|
+ recordList.get(i).setOperUserId(member.getUserId());
|
|
|
+ recordList.get(i).setRecordDate(dto.getRecordDate());
|
|
|
+ recordList.get(i).setTransMoney(dto.getMoney());
|
|
|
+ } else {
|
|
|
+ recordList.get(i).setPreMoney(recordList.get(i - 1).getAfterMoney());
|
|
|
+ }
|
|
|
+ recordList.get(i).setAfterMoney(recordList.get(i).getPreMoney().subtract(recordList.get(i).getTransMoney()));
|
|
|
+ }
|
|
|
+ this.saveOrUpdateBatch(recordList);
|
|
|
return true;
|
|
|
}
|
|
|
|