Просмотр исходного кода

报销开发子报销列表新增字段

anderx лет назад: 2
Родитель
Сommit
c4c9aad466

+ 4 - 0
src/main/java/com/goafanti/common/dao/ExpenseAccountMapper.java

@@ -56,4 +56,8 @@ public interface ExpenseAccountMapper {
     int selectCountByIdsAndType(@Param("list") List<String> list, @Param("type") Integer type);
 
     List<ExpenseAccount> selectAllMain();
+
+    void updateSonByDetId(Integer id);
+
+    void updateMainByDetId(Integer id);
 }

+ 20 - 0
src/main/java/com/goafanti/common/mapper/ExpenseAccountMapper.xml

@@ -868,6 +868,26 @@
     set b.status= #{status}
     where a.id= #{id} and a.ea_id=b.id
   </update>
+  <update id="updateSonByDetId">
+    update  expense_account x ,(select b.id,sum(c.amount) amount
+      from expense_account_details a left join expense_account b on a.eaid =b.id
+      left join expense_account_details c on b.id =c.eaid
+      where a.id= #{id} group by b.id)y
+    set x.total_amount =y.amount
+    where x.id=y.id;
+  </update>
+  <update id="updateMainByDetId">
+    update expense_account x ,(    select a.id,sum(c.total_amount)amount
+      from expense_account a  left join expense_relationship b  on a.id=b.id
+      left join expense_account c on b.ea_id =c.id
+      where a.id in(select c.id
+      from expense_account_details a left join expense_account b on a.eaid =b.id
+      left join expense_relationship c on b.id =c.ea_id
+      where a.id= #{id}) group by a.id)y
+    set x.total_amount =y.amount
+    where x.id=y.id
+  </update>
+
 
   <select id="ExpenseMainList" resultMap="MainMap">
     select b.id,b.check_no,b.total_amount,b.order_no,o.contract_no,b.aname,b.apply_dep,b.pay_dep,

+ 1 - 1
src/main/java/com/goafanti/expenseAccount/controller/ExpenseAccountController.java

@@ -346,7 +346,7 @@ public class ExpenseAccountController extends CertifyApiController {
 
     /**
      * 修改实报金额
-     * @param type 类型 1报销与费用  2费用详细
+     * @param type 类型 1报销与费用  2费用详细  去掉修改上级,只能修改费用
      * @param id 编号
      * @param amount 金额
      * @return

+ 2 - 7
src/main/java/com/goafanti/expenseAccount/service/impl/ExpenseAccountServiceImpl.java

@@ -846,17 +846,12 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
 
     @Override
     public Object updateRealAmount(Integer type, Integer id, BigDecimal amount) {
-        if (type ==1){
-            ExpenseAccount account = new ExpenseAccount();
-            account.setId(id);
-            account.setRealAmount(amount);
-            expenseAccountMapper.updateByPrimaryKeySelective(account);
-        }else if (type ==2){
             ExpenseAccountDetails ea= new ExpenseAccountDetails();
             ea.setId(id);
             ea.setRealAmount(amount);
             expenseAccountDetailsMapper.updateByPrimaryKeySelective(ea);
-        }
+            expenseAccountMapper.updateSonByDetId(id);
+            expenseAccountMapper.updateMainByDetId(id);
         return 1;
     }