|
@@ -86,10 +86,66 @@ public class AccountDeptRunningWaterDetailServiceImpl extends ServiceImpl<Accoun
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = {Exception.class})
|
|
|
public void add(AccountRunningWaterVo accountRunningWaterVo) {
|
|
|
-
|
|
|
+ //判断是调整部门还是分拆(是否存在资金流水分拆部门表)
|
|
|
+ List<AccountDeptRunningWaterDetail> deptRunningWaterDetailList = accountRunningWaterVo.getDeptRunningWaterDetailList();
|
|
|
//修改资金流水-账户表的的分拆类型为已分拆
|
|
|
AccountDeptRunningWater accountDeptRunningWater = new AccountDeptRunningWater();
|
|
|
- List<AccountDeptRunningWaterDetail> deptRunningWaterDetailList = accountRunningWaterVo.getDeptRunningWaterDetailList();
|
|
|
+
|
|
|
+ if (ObjectUtil.isNotEmpty(deptRunningWaterDetailList)){//分拆功能
|
|
|
+ //分拆功能 添加或者修改资金流水分拆部门表的数据
|
|
|
+ saveOrEditAccountDeptRunningWaterDetail(accountRunningWaterVo,accountDeptRunningWater,deptRunningWaterDetailList);
|
|
|
+ }else {//调整部门功能
|
|
|
+ AccountDeptRunningWaterDetail accountDeptRunningWaterDetail = new AccountDeptRunningWaterDetail();
|
|
|
+ accountDeptRunningWaterDetail.setDeptRunningWaterId(accountRunningWaterVo.getAccountDeptRunningWaterId());
|
|
|
+ accountDeptRunningWaterDetail.setDeptId(accountRunningWaterVo.getDeptId());
|
|
|
+ accountDeptRunningWaterDetail.setAmount(accountRunningWaterVo.getAmount());
|
|
|
+ //如果部门-资金流水关联表ID不为null修改资金流水分拆部门表的数据
|
|
|
+ if (ObjectUtil.isNotEmpty(accountRunningWaterVo.getAccountDeptRunningWaterId())){
|
|
|
+ accountDeptRunningWater.setRunningWaterId(accountRunningWaterVo.getId());
|
|
|
+ accountDeptRunningWater.setType("10");
|
|
|
+ //查询部门-资金流水关联表的数据(获取到部门-资金流水关联表中的数据是否分拆,如果是分拆则删除资金流水分拆部门表的数据,否则修改资金流水分拆部门表的数据在添加资金流水分拆部门表的数据)
|
|
|
+ AccountDeptRunningWater accountDeptRunningWater1 = accountDeptRunningWaterService.getById(accountRunningWaterVo.getAccountDeptRunningWaterId());
|
|
|
+ if (accountDeptRunningWater1.getType().equals("20")){
|
|
|
+ accountDeptRunningWater.setId(accountRunningWaterVo.getAccountDeptRunningWaterId());
|
|
|
+ accountDeptRunningWaterService.updateById(accountDeptRunningWater);
|
|
|
+ //删除资金流水分拆部门表的数据
|
|
|
+ baseMapper.delete(Wrappers.<AccountDeptRunningWaterDetail>lambdaQuery()
|
|
|
+ .eq(AccountDeptRunningWaterDetail::getDeptRunningWaterId,accountRunningWaterVo.getAccountDeptRunningWaterId()));
|
|
|
+ baseMapper.insert(accountDeptRunningWaterDetail);
|
|
|
+
|
|
|
+ }else if (accountDeptRunningWater1.getType().equals("10")){
|
|
|
+ //修改资金流水分拆部门表的数据的数据
|
|
|
+ baseMapper.update(accountDeptRunningWaterDetail,Wrappers.<AccountDeptRunningWaterDetail>lambdaQuery()
|
|
|
+ .eq(AccountDeptRunningWaterDetail::getDeptRunningWaterId,accountRunningWaterVo.getAccountDeptRunningWaterId()));
|
|
|
+ }
|
|
|
+ }else {//如果部门-资金流水关联表ID为null添加资金流水分拆部门表的数据
|
|
|
+ //添加部门-资金流水关联表的信息
|
|
|
+ accountDeptRunningWaterService.save(accountDeptRunningWater);
|
|
|
+ accountDeptRunningWaterDetail.setDeptRunningWaterId(accountDeptRunningWater.getId());
|
|
|
+ baseMapper.insert(accountDeptRunningWaterDetail);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void edit(AccountDeptRunningWaterDetailDto accountDeptRunningWaterDetailDto) {
|
|
|
+ this.updateById(accountDeptRunningWaterDetailDto);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void delete(Long id) {
|
|
|
+ this.removeById(id);
|
|
|
+ }
|
|
|
+
|
|
|
+ //分拆功能 添加或者修改资金流水分拆部门表的数据
|
|
|
+ private void saveOrEditAccountDeptRunningWaterDetail(AccountRunningWaterVo accountRunningWaterVo,
|
|
|
+ AccountDeptRunningWater accountDeptRunningWater,
|
|
|
+ List<AccountDeptRunningWaterDetail> deptRunningWaterDetailList
|
|
|
+ ){
|
|
|
+ //如果存在部门-资金流水关联表的ID则修改
|
|
|
if (ObjectUtil.isNotEmpty(accountRunningWaterVo.getAccountDeptRunningWaterId())){
|
|
|
accountDeptRunningWater.setId(accountRunningWaterVo.getAccountDeptRunningWaterId());
|
|
|
accountDeptRunningWater.setType("20");
|
|
@@ -110,7 +166,6 @@ public class AccountDeptRunningWaterDetailServiceImpl extends ServiceImpl<Accoun
|
|
|
accountDeptRunningWater.setType("20");
|
|
|
accountDeptRunningWaterService.save(accountDeptRunningWater);
|
|
|
}
|
|
|
-
|
|
|
//获取分拆部门详情中ID为null的数据
|
|
|
deptRunningWaterDetailList = deptRunningWaterDetailList.stream()
|
|
|
.filter(deptRunningWaterDetail->deptRunningWaterDetail.getId()==null)
|
|
@@ -121,17 +176,6 @@ public class AccountDeptRunningWaterDetailServiceImpl extends ServiceImpl<Accoun
|
|
|
.setDeptRunningWaterId(accountRunningWaterVo.getAccountDeptRunningWaterId()));
|
|
|
|
|
|
this.saveBatch(deptRunningWaterDetailList);
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void edit(AccountDeptRunningWaterDetailDto accountDeptRunningWaterDetailDto) {
|
|
|
- this.updateById(accountDeptRunningWaterDetailDto);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void delete(Long id) {
|
|
|
- this.removeById(id);
|
|
|
}
|
|
|
|
|
|
}
|