liuyc 2 жил өмнө
parent
commit
eadda63497

+ 7 - 2
blade-service/blade-control/src/main/java/org/springblade/control/controller/ExMaTwoController.java

@@ -97,7 +97,7 @@ public class ExMaTwoController extends BladeController {
         queryWrapper.eq(EMLoanInfo::getIsTemp, 1); //已提交
         queryWrapper.eq(EMLoanInfo::getStatus, 2); //已审批
         queryWrapper.like(EMLoanInfo::getLoanUserName, SecureUtil.getNickName());
-        queryWrapper.apply("return_money != loan_money"); //排除已还款,已还款的还款金额=借款金额
+        queryWrapper.apply("return_money IS NULL OR return_money != loan_money"); //排除已还款,已还款的还款金额=借款金额
         List<EMLoanInfo> emLoanInfos = emLoanService.getBaseMapper().selectList(queryWrapper);
 
         List<ExMaByLoanVO> collect = emLoanInfos.stream().map(obj -> {
@@ -106,7 +106,12 @@ public class ExMaTwoController extends BladeController {
             Date useDate = obj.getUseDate();
             SimpleDateFormat smp = new SimpleDateFormat("yyyy年MM月dd日");
             String format = smp.format(useDate);
-            BigDecimal difference = obj.getLoanMoney().subtract(obj.getReturnMoney()).abs();
+            BigDecimal difference;
+            if (ObjectUtil.isNotEmpty(obj.getReturnMoney())) {
+                difference = obj.getLoanMoney().subtract(obj.getReturnMoney()).abs();
+            } else {
+                difference = obj.getLoanMoney();
+            }
             String title = format + "借款" + difference + "元";
             vo.setLoanName(title);
             vo.setLoanMoney(difference);

+ 1 - 1
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/LogHistoryServiceImpl.java

@@ -531,7 +531,7 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
                 }
             }
             vo.setStatusName(obj.getStatus().equals(4) ? "已完成" : "未完成");
-            vo.setStatus(obj.getStatus());
+            //vo.setStatus(obj.getStatus());
             vo.setTaskDesc(ObjectUtil.isNotEmpty(obj.getPlanTaskDesc()) ? obj.getPlanTaskDesc() : "");
             if (ObjectUtil.isNotEmpty(obj.getPlanStartTime()) && ObjectUtil.isNotEmpty(obj.getPlanEndTime())) {
                 LocalDate planStartTime = obj.getPlanStartTime();

+ 17 - 17
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/TaskProcessServiceImpl.java

@@ -1005,25 +1005,25 @@ public class TaskProcessServiceImpl extends BaseServiceImpl<TaskProcessMapper, T
         switch (businessDataType) {
             case 1: //计划任务
                 if (taskStatus == 2) { //通过审批
-                    //task_approve = 1 已审批 , status = 4 已完成
+                    /*//task_approve = 1 已审批 , status = 4 已完成
                     jdbcTemplate.execute("update c_project_cost_budget set task_approve = 1,status = 4 where id = " + dataId);
 
                     //判断是否为转移任务,计划任务转移后,修改计划任务人id
                     TaskPlanUpdateStatusInfo taskPlanUpdateStatusInfo = jdbcTemplate.query("select * from c_task_plan_update_status_info where update_type = 2 and approve_task_id = " + approveTaskId + " and plan_task_id = " + dataId, new BeanPropertyRowMapper<>(TaskPlanUpdateStatusInfo.class)).stream().findAny().orElse(null);
                     if (taskPlanUpdateStatusInfo != null) {
                         jdbcTemplate.execute("update c_project_cost_budget set task_approve = 0,status = 2,task_user = " + taskPlanUpdateStatusInfo.getTransferObject() + " where id = " + taskPlanUpdateStatusInfo.getPlanTaskId());
+                    */
+                    //任务转移后,标记关系信息为转移任务
+                    jdbcTemplate.execute("update c_expense_task_record set is_transfer = 1 where expense_info_type = 1 and task_id = " + approveTaskId + " and expense_info_id = " + dataId);
 
-                        //任务转移后,标记关系信息为转移任务
-                        jdbcTemplate.execute("update c_expense_task_record set is_transfer = 1 where expense_info_type = 1 and task_id = " + approveTaskId + " and expense_info_id = " + dataId);
+                    //删除当前计划任务与日志关系信息(如果任务转移,那么就不属于该用户了,就应该在新用户写日志时,与新用户绑定)
+                    jdbcTemplate.execute("delete from c_log_history_task_record where task_id = " + dataId);
+                    //}
 
-                        //删除当前计划任务与日志关系信息(如果任务转移,那么就不属于该用户了,就应该在新用户写日志时,与新用户绑定)
-                        jdbcTemplate.execute("delete from c_log_history_task_record where task_id = " + dataId);
-                    }
-
-                } else if (taskStatus == 3) { //驳回审批
+                } /*else if (taskStatus == 3) { //驳回审批
                     //task_approve = 0 未开始 , status = 2 进行中
                     jdbcTemplate.execute("update c_project_cost_budget set task_approve = 0,status = 2 where id = " + dataId);
-                }
+                }*/
                 break;
 
             case 2: //财务
@@ -1079,21 +1079,18 @@ public class TaskProcessServiceImpl extends BaseServiceImpl<TaskProcessMapper, T
         switch (businessDataType) {
             case 1:
                 //计划任务 task_approve = 1,status = 4 表示已完成,且通过审批
+                TaskProcessInfo taskProcessInfo = jdbcTemplate.query("select status from c_task_process_info where id = " + approveTaskId, new BeanPropertyRowMapper<>(TaskProcessInfo.class)).stream().findAny().orElse(null);
                 ProjectCostBudget projectCostBudget = jdbcTemplate.query("select * from c_project_cost_budget where id = " + dataId, new BeanPropertyRowMapper<>(ProjectCostBudget.class)).stream().findAny().orElse(null);
-                if (projectCostBudget != null && projectCostBudget.getStatus().equals(4) && projectCostBudget.getTaskApprove().equals(1)) {
+                if (taskProcessInfo != null && projectCostBudget != null) {
                     //获取任务完成时间
                     TaskPlanUpdateStatusInfo taskPlanUpdateStatusInfo = jdbcTemplate.query("select completion_time from c_task_plan_update_status_info where update_type = 1 and approve_task_id = " + approveTaskId + " and plan_task_id = " + dataId, new BeanPropertyRowMapper<>(TaskPlanUpdateStatusInfo.class)).stream().findAny().orElse(null);
-                    if (taskPlanUpdateStatusInfo != null) {
+                    if (taskPlanUpdateStatusInfo != null && taskProcessInfo.getStatus().equals(2)) { //已完成的任务才推送
                         //修改任务实际完成时间、金额
                         LocalDate localDate = taskPlanUpdateStatusInfo.getCompletionTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
                         projectCostBudgetService.taskFinishedStats(projectCostBudget.getId(), localDate);
                     }
-
                     //日志信息
-                    TaskProcessInfo taskProcessInfo = jdbcTemplate.query("select task_name from c_task_process_info where id = " + approveTaskId, new BeanPropertyRowMapper<>(TaskProcessInfo.class)).stream().findAny().orElse(null);
-                    if (taskProcessInfo != null) {
-                        planInformService.taskFinishedInform(taskProcessInfo.getTaskName(), projectCostBudget.getTaskUser(), SecureUtil.getUserName());
-                    }
+                    planInformService.taskFinishedInform(projectCostBudget.getPlanTaskDesc(), projectCostBudget.getTaskUser(), SecureUtil.getUserName(), taskProcessInfo.getStatus());
                 }
 
                 break;
@@ -1132,6 +1129,7 @@ public class TaskProcessServiceImpl extends BaseServiceImpl<TaskProcessMapper, T
                 }
                 break;
         }
+
     }
 
     /**
@@ -1256,9 +1254,11 @@ public class TaskProcessServiceImpl extends BaseServiceImpl<TaskProcessMapper, T
      */
     public User getDepartmentHead(Long deptId) {
         if (ObjectUtil.isNotEmpty(deptId)) {
-            List<User> leaderUser = jdbcTemplate.query("select * from blade_user where tenant_id = " + SecureUtil.getUser().getTenantId() + " and dept_id = " + deptId + " and is_leader like '%" + deptId + "%'", new BeanPropertyRowMapper<>(User.class));
+            List<User> leaderUser = jdbcTemplate.query("select * from blade_user where tenant_id = " + SecureUtil.getUser().getTenantId() + " and is_leader like '%" + deptId + "%'", new BeanPropertyRowMapper<>(User.class));
             if (leaderUser.size() == 1) {
                 return leaderUser.get(0);
+            } else if (leaderUser.size() > 1) {
+                throw new ServiceException("获取到多个部门负责人,请联系管理员");
             }
         }
         return null;