|
|
@@ -435,16 +435,76 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
|
|
|
@Override
|
|
|
public Object logList(Integer eaid) {
|
|
|
List<OutExpenseAccountLog> list = expenseAccountLogMapper.selectByEaid(eaid);
|
|
|
- if (!list.isEmpty()){
|
|
|
- OutExpenseAccountLog lastout=list.get(list.size()-1);
|
|
|
- if (lastout.getStatus()!=3){
|
|
|
- List<OutExpenseAccountLog> eaelist = expenseAccountExamineMapper.selectNotExamineByEaidAndProcessStatus(eaid, lastout.getProcessStatus());
|
|
|
- list.addAll(eaelist);
|
|
|
+ if (!list.isEmpty()) {
|
|
|
+ OutExpenseAccountLog lastout = list.get(list.size() - 1);
|
|
|
+ ExpenseAccount expenseAccount = expenseAccountMapper.selectByPrimaryKey(eaid);
|
|
|
+ Integer processStatus = expenseAccount.getProcessStatus();
|
|
|
+ if (processStatus <4){
|
|
|
+ List<OutExpenseAccountLog> outExpenseAccountLogs = expenseAccountExamineMapper.selectNotExamineByEaidAndProcessStatus(eaid, processStatus);
|
|
|
+ list.addAll(outExpenseAccountLogs);
|
|
|
+ processStatus=3;
|
|
|
+ }
|
|
|
+ if (lastout.getStatus() != 3) {
|
|
|
+ addDetailsLog(list, expenseAccount,processStatus);
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
- return list;
|
|
|
+ return list;
|
|
|
}
|
|
|
|
|
|
+ private void addDetailsLog(List<OutExpenseAccountLog> list, ExpenseAccount expenseAccount,Integer processStatus) {
|
|
|
+ OrganizationListOut dep = departmentMapper.selectAllById(expenseAccount.getApplyDep());
|
|
|
+ List<ExpenseConfigDetails> configDetails = expenseConfigDetailsMapper.selectByDepId(expenseAccount.getApplyDep());
|
|
|
+ if (processStatus ==3){
|
|
|
+ if (dep.getExpenseRetrialFinanceExamine()==1){
|
|
|
+ List<ExpenseConfigDetails> collect = configDetails.stream().filter(e -> e.getType() == 1).collect(Collectors.toList());
|
|
|
+ for (ExpenseConfigDetails e : collect) {
|
|
|
+ addDetailsTypeLog(list, expenseAccount, e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ processStatus++;
|
|
|
+ }
|
|
|
+ if (processStatus ==4){
|
|
|
+ if (dep.getCeoExamine()==1){
|
|
|
+ List<ExpenseConfigDetails> collect = configDetails.stream().filter(e -> e.getType() == 2).collect(Collectors.toList());
|
|
|
+ for (ExpenseConfigDetails e : collect) {
|
|
|
+ addDetailsTypeLog(list, expenseAccount, e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ processStatus++;
|
|
|
+ }if (processStatus ==5){
|
|
|
+ if (dep.getCfoExamine()==1){
|
|
|
+ List<ExpenseConfigDetails> collect = configDetails.stream().filter(e -> e.getType() == 3).collect(Collectors.toList());
|
|
|
+ for (ExpenseConfigDetails e : collect) {
|
|
|
+ addDetailsTypeLog(list, expenseAccount, e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ processStatus++;
|
|
|
+ }if (processStatus ==6){
|
|
|
+ if (dep.getViceCeoExamine()==1){
|
|
|
+ List<ExpenseConfigDetails> collect = configDetails.stream().filter(e -> e.getType() == 4).collect(Collectors.toList());
|
|
|
+ for (ExpenseConfigDetails e : collect) {
|
|
|
+ addDetailsTypeLog(list, expenseAccount, e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ processStatus++;
|
|
|
+ }if (processStatus ==7){
|
|
|
+ if (dep.getCashierExamine()==1){
|
|
|
+ List<ExpenseConfigDetails> collect = configDetails.stream().filter(e -> e.getType() == 5).collect(Collectors.toList());
|
|
|
+ for (ExpenseConfigDetails e : collect) {
|
|
|
+ addDetailsTypeLog(list, expenseAccount, e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private static void addDetailsTypeLog(List<OutExpenseAccountLog> list, ExpenseAccount expenseAccount, ExpenseConfigDetails e) {
|
|
|
+ OutExpenseAccountLog addLog=new OutExpenseAccountLog();
|
|
|
+ addLog.setEaid(expenseAccount.getId());
|
|
|
+ addLog.setAuditor(e.getAid());
|
|
|
+ addLog.setAuditorName(e.getAdminName());
|
|
|
+ list.add(addLog);
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
|
|
@@ -997,6 +1057,7 @@ public class ExpenseAccountServiceImpl extends BaseMybatisDao<ExpenseAccountMapp
|
|
|
expenseAccountMapper.updateByMainId(in.getId(),0);
|
|
|
addExpenseAccountLog(in.getId(),4,0,in.getAid(),"撤销报销审核");
|
|
|
List<ExpenseRelationship> list = expenseRelationshipMapper.selectById(in.getId());
|
|
|
+ //撤销日志处理,先将日志改在挂子编号上,在新发起的时候再从自编号加到新编号上
|
|
|
if (list.size()==1){
|
|
|
ExpenseRelationship e =list.get(0);
|
|
|
expenseAccountLogMapper.updateUseLogByUseId(e.getEaId(),e.getId());
|