|
@@ -21,8 +21,10 @@ import com.fjhx.account.entity.account.dto.AccountDeptRunningWaterDetailSelectDt
|
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
|
import com.fjhx.account.entity.account.dto.AccountDeptRunningWaterDetailDto;
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -68,7 +70,7 @@ public class AccountDeptRunningWaterDetailServiceImpl extends ServiceImpl<Accoun
|
|
|
.eq(AccountDeptRunningWaterDetail::getDeptRunningWaterId, accountDeptRunningWater.getId()));
|
|
|
|
|
|
//插入资金流水分拆部门表明细信息
|
|
|
- accountRunningWaterVo.setAccountDeptRunningWaterDetailList(accountDeptRunningWaterDetailList);
|
|
|
+ accountRunningWaterVo.setDeptRunningWaterDetailList(accountDeptRunningWaterDetailList);
|
|
|
//插入资金流水-部门关联表ID
|
|
|
accountRunningWaterVo.setAccountDeptRunningWaterId(accountDeptRunningWater.getId());
|
|
|
}
|
|
@@ -82,29 +84,39 @@ public class AccountDeptRunningWaterDetailServiceImpl extends ServiceImpl<Accoun
|
|
|
* 资金流水分拆部门表新增
|
|
|
*/
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = {Exception.class})
|
|
|
public void add(AccountRunningWaterVo accountRunningWaterVo) {
|
|
|
|
|
|
//修改资金流水-账户表的的分拆类型为已分拆
|
|
|
AccountDeptRunningWater accountDeptRunningWater = new AccountDeptRunningWater();
|
|
|
+ List<AccountDeptRunningWaterDetail> deptRunningWaterDetailList = accountRunningWaterVo.getDeptRunningWaterDetailList();
|
|
|
if (ObjectUtil.isNotEmpty(accountRunningWaterVo.getAccountDeptRunningWaterId())){
|
|
|
accountDeptRunningWater.setId(accountRunningWaterVo.getAccountDeptRunningWaterId());
|
|
|
- accountDeptRunningWater.setType(accountRunningWaterVo.getType());
|
|
|
- accountDeptRunningWater.setDeptId(accountRunningWaterVo.getDeptId());
|
|
|
+ accountDeptRunningWater.setType("20");
|
|
|
accountDeptRunningWaterService.updateById(accountDeptRunningWater);
|
|
|
|
|
|
- //删除资金流水分拆部门表数据
|
|
|
+ //删除分拆部门表的数据
|
|
|
+ //获取到有参数中有分拆部门详情表的ID
|
|
|
+ List<Long> ids = deptRunningWaterDetailList.stream().map(deptRunningWaterDetail ->
|
|
|
+ deptRunningWaterDetail.getId()).collect(Collectors.toList());
|
|
|
+
|
|
|
+ //删除数据库中不包含参数中有分拆部门详情表的ID的数据
|
|
|
this.remove(Wrappers.<AccountDeptRunningWaterDetail>lambdaQuery()
|
|
|
- .eq(AccountDeptRunningWaterDetail::getDeptRunningWaterId,accountRunningWaterVo.getAccountDeptRunningWaterId()));
|
|
|
+ .notIn(AccountDeptRunningWaterDetail::getId,ids).eq(AccountDeptRunningWaterDetail::getDeptRunningWaterId,
|
|
|
+ accountRunningWaterVo.getAccountDeptRunningWaterId()));
|
|
|
+
|
|
|
}else {
|
|
|
- accountDeptRunningWater.setId(accountRunningWaterVo.getAccountDeptRunningWaterId());
|
|
|
- accountDeptRunningWater.setType(accountRunningWaterVo.getType());
|
|
|
- accountDeptRunningWater.setDeptId(accountRunningWaterVo.getDeptId());
|
|
|
+ accountDeptRunningWater.setRunningWaterId(accountRunningWaterVo.getId());
|
|
|
+ accountDeptRunningWater.setType("20");
|
|
|
accountDeptRunningWaterService.save(accountDeptRunningWater);
|
|
|
}
|
|
|
|
|
|
- //添加资金流水分拆部门表数据
|
|
|
- List<AccountDeptRunningWaterDetail> deptRunningWaterDetailList = accountRunningWaterVo.getAccountDeptRunningWaterDetailList();
|
|
|
+ //获取分拆部门详情中ID为null的数据
|
|
|
+ deptRunningWaterDetailList = deptRunningWaterDetailList.stream()
|
|
|
+ .filter(deptRunningWaterDetail->deptRunningWaterDetail.getId()==null)
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
|
|
+ //添加资金流水分拆部门表中ID为null的数据
|
|
|
deptRunningWaterDetailList.forEach(deptRunningWaterDetail->deptRunningWaterDetail
|
|
|
.setDeptRunningWaterId(accountRunningWaterVo.getAccountDeptRunningWaterId()));
|
|
|
|