Browse Source

修改详情接口

anderx 2 years ago
parent
commit
5d126cebe4

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

@@ -29,4 +29,6 @@ public interface ExpenseAccountMapper {
 
     List<OutExpenseAccountStatistics> selectStatistics(@Param("name") String name, @Param("depId") String depId,
                                                        @Param("startTime") String startTime, @Param("endTime") String endTime);
+
+    List<ExpenseAccount> selectByDebit(Integer debitId);
 }

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

@@ -472,4 +472,10 @@
     </if>
 
   </select>
+  <select id="selectByDebit" parameterType="java.lang.Integer" resultMap="BaseResultMap">
+    select
+    <include refid="Base_Column_List" />
+    from expense_account
+    where debit_id = #{debitId}
+  </select>
 </mapper>

+ 15 - 4
src/main/java/com/goafanti/expenseAccount/service/impl/ExpenseAccountServiceImpl.java

@@ -226,10 +226,21 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
                 if (useEa.getDebitId()!=null){
                     ExpenseAccount useDebit=expenseAccountMapper.selectByPrimaryKey(useEa.getDebitId());
                     if (useDebit.getLiquidationStatus()==2){
-                        ExpenseAccount debit=new ExpenseAccount();
-                        debit.setId(useEa.getDebitId());
-                        debit.setLiquidationStatus(3);
-                        expenseAccountMapper.updateByPrimaryKeySelective(debit);
+                        List<ExpenseAccount> expenseAccounts = expenseAccountMapper.selectByDebit(useDebit.getDebitId());
+                        boolean flag=true;
+                        for (ExpenseAccount expenseAccount : expenseAccounts) {
+                            if(expenseAccount.getStatus()!=2){
+                                flag=flag;
+                                break;
+                            }
+                        }
+                        if (flag){
+                            ExpenseAccount debit=new ExpenseAccount();
+                            debit.setId(useEa.getDebitId());
+                            debit.setLiquidationStatus(3);
+                            expenseAccountMapper.updateByPrimaryKeySelective(debit);
+                        }
+
                     }
                 }
             }