|
@@ -319,6 +319,7 @@ public class RepalBillServiceImpl extends ServiceImpl<RepalBillMapper, RepalBill
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public Boolean settleRepalBillById(SettleRepalBillDTO dto) {
|
|
|
+ long userId = UserContextUtil.getUser().getUserId();
|
|
|
RepalBill repalBill = this.getById(dto.getRepalBillId());
|
|
|
if (!repalRolePermissionService.checkUserPermission(UserContextUtil.getUser().getUserId(),
|
|
|
RepalBillTypeEnum.RECEIVABLE.getCode().equals(repalBill.getRepalBillType()) ? PermissionEnum.UPDATE_RECEIVABLE.getCode() : PermissionEnum.UPDATE_RECEIPT.getCode())) {
|
|
@@ -331,20 +332,26 @@ public class RepalBillServiceImpl extends ServiceImpl<RepalBillMapper, RepalBill
|
|
|
dto.setMoney(repalBill.getReceivable());
|
|
|
success = true;
|
|
|
}
|
|
|
- // 重新计算金额
|
|
|
- repalBill.setReceivable(success ? BigDecimal.ZERO : repalBill.getReceivable().subtract(dto.getMoney()));
|
|
|
- repalBill.setReceipt(success ? repalBill.getTotalMoney() : repalBill.getReceipt().add(dto.getMoney()));
|
|
|
+ RepalGroupMember member = repalGroupMemberService.getOne(Wrappers.lambdaQuery(RepalGroupMember.class)
|
|
|
+ .eq(RepalGroupMember::getRepalGroupId, repalGroupMemberService.getUserGroupId(userId))
|
|
|
+ .eq(RepalGroupMember::getUserId, userId)
|
|
|
+ .eq(RepalGroupMember::getDeleted, DeletedStatusEnum.NORMAL.getCode()));
|
|
|
+ if (Objects.isNull(member)) {
|
|
|
+ throw new CommonException(CodeMsg.FAILED, "成员信息错误");
|
|
|
+ }
|
|
|
RepalChangeRecord changeRecord = new RepalChangeRecord();
|
|
|
changeRecord.setRepalBookId(repalBill.getRepalBookId());
|
|
|
changeRecord.setRepalBillId(repalBill.getId());
|
|
|
changeRecord.setAfterMoney(repalBill.getTotalMoney().subtract(repalBill.getReceipt()));
|
|
|
changeRecord.setPreMoney(repalBill.getReceivable());
|
|
|
changeRecord.setTransMoney(dto.getMoney());
|
|
|
- changeRecord.setOperUserId(UserContextUtil.getUser().getUserId());
|
|
|
+ changeRecord.setOperUserId(userId);
|
|
|
changeRecord.setRecordDate(dto.getRecordDate());
|
|
|
- UserExt userExt = userExtService.getById(changeRecord.getOperUserId());
|
|
|
- changeRecord.setOperUserName(userExt.getUserName());
|
|
|
+ changeRecord.setOperUserName(member.getMemberUserName());
|
|
|
repalChangeRecordService.save(changeRecord);
|
|
|
+ // 重新计算金额
|
|
|
+ repalBill.setReceivable(success ? BigDecimal.ZERO : repalBill.getReceivable().subtract(dto.getMoney()));
|
|
|
+ repalBill.setReceipt(success ? repalBill.getTotalMoney() : repalBill.getReceipt().add(dto.getMoney()));
|
|
|
this.update(Wrappers.lambdaUpdate(RepalBill.class)
|
|
|
.eq(RepalBill::getId, repalBill.getId())
|
|
|
.set(success, RepalBill::getRepalBillStatus, RepalBillStatusEnum.SUCCESS.getCode())
|