Pārlūkot izejas kodu

修改了打款的数据

wxf 2 gadi atpakaļ
vecāks
revīzija
77dd85e824

+ 1 - 1
hx-account/src/main/java/com/fjhx/account/entity/account/vo/AccountRunningWaterVo.java

@@ -45,6 +45,6 @@ public class AccountRunningWaterVo extends AccountRunningWater {
     /**
      *资金流水-部门关联表列表
      */
-    private List<AccountDeptRunningWaterDetail> accountDeptRunningWaterDetailList;
+    private List<AccountDeptRunningWaterDetail> deptRunningWaterDetailList;
 
 }

+ 1 - 0
hx-account/src/main/java/com/fjhx/account/mapper/account/AccountDeptRunningWaterDetailMapper.java

@@ -1,5 +1,6 @@
 package com.fjhx.account.mapper.account;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fjhx.account.entity.account.po.AccountDeptRunningWaterDetail;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

+ 22 - 10
hx-account/src/main/java/com/fjhx/account/service/account/impl/AccountDeptRunningWaterDetailServiceImpl.java

@@ -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()));
 

+ 1 - 1
hx-account/src/main/resources/mapper/account/AccountDeptRunningWaterMapper.xml

@@ -20,7 +20,7 @@
             arw.update_time,
             am.alias accountManagementName,
             adrw.type,
-            adrw.dept_id
+            adrw.id  accountDeptRunningWaterId
         from account_running_water arw
                  left join  account_management am on arw.account_management_id = am.id
                  left join account_dept_running_water adrw on arw.id = adrw.running_water_id