|
@@ -201,8 +201,8 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
//获取当天,当前用户所有的计划任务信息,新增关联信息
|
|
|
List<TaskPlanInfoVO> taskPlanInfoVOS = this.logTaskList();
|
|
|
if (taskPlanInfoVOS.size() > 0) {
|
|
|
- jdbcTemplate.execute("delete from c_log_history_task_record where log_id = " + dto.getId());
|
|
|
for (TaskPlanInfoVO task : taskPlanInfoVOS) {
|
|
|
+ jdbcTemplate.execute("delete from c_log_history_task_record where log_id = " + dto.getId() + " and task_id = " + task.getId());
|
|
|
jdbcTemplate.execute("insert into c_log_history_task_record(id,log_id,task_id) values(" + SnowFlakeUtil.getId() + "," + dto.getId() + "," + task.getId() + ")");
|
|
|
}
|
|
|
}
|
|
@@ -244,8 +244,8 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
//获取当天,当前用户所有的计划任务信息,新增关联信息
|
|
|
List<TaskPlanInfoVO> taskPlanInfoVOS = this.logTaskList();
|
|
|
if (taskPlanInfoVOS.size() > 0) {
|
|
|
- jdbcTemplate.execute("delete from c_log_history_task_record where log_id = " + dto.getId());
|
|
|
for (TaskPlanInfoVO task : taskPlanInfoVOS) {
|
|
|
+ jdbcTemplate.execute("delete from c_log_history_task_record where log_id = " + dto.getId() + " and task_id = " + task.getId());
|
|
|
jdbcTemplate.execute("insert into c_log_history_task_record(id,log_id,task_id) values(" + SnowFlakeUtil.getId() + "," + dto.getId() + "," + task.getId() + ")");
|
|
|
}
|
|
|
}
|
|
@@ -326,9 +326,6 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
}
|
|
|
|
|
|
if (taskIds.size() > 0) {
|
|
|
- //任务逾期完成关系信息
|
|
|
- //List<TaskPlanOverdueStatusVO> overdueStatusVOS = jdbcTemplate.query("select * from c_task_plan_overdue_status where user_id = " + obj.getUserId(), new BeanPropertyRowMapper<>(TaskPlanOverdueStatusVO.class));
|
|
|
-
|
|
|
//获取所有审批任务与计划任务关系
|
|
|
List<ExpenseTaskRecord> expenseTaskRecords = jdbcTemplate.query("select task_id,expense_info_id,is_transfer from c_expense_task_record where expense_info_type = 1 and expense_info_id in(" + StringUtils.join(taskIds, ",") + ")", new BeanPropertyRowMapper<>(ExpenseTaskRecord.class));
|
|
|
Map<String, ExpenseTaskRecord> taskRecordMaps = expenseTaskRecords.stream().collect(Collectors.toMap(ExpenseTaskRecord::getExpenseInfoId, Function.identity()));
|
|
@@ -339,6 +336,26 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
LocalDate nowDateYQ = LocalDate.now();
|
|
|
for (ProjectCostBudget taskObj : taskObjs) {
|
|
|
TaskPlanInfoVO vos = new TaskPlanInfoVO();
|
|
|
+ if (ObjectUtil.isNotEmpty(taskObj.getPlanStartTime()) && ObjectUtil.isNotEmpty(taskObj.getPlanEndTime())) {
|
|
|
+ //如果任务结束时间在当前系统时间之前,视为逾期
|
|
|
+ if (taskObj.getPlanEndTime().isBefore(nowDateYQ) && taskObj.getStatus() == 4 && taskObj.getTaskUser().equals(SecureUtil.getUserId())) {
|
|
|
+ //逾期完成(自己不查看)
|
|
|
+ continue;
|
|
|
+ } else if (taskObj.getPlanEndTime().isBefore(nowDateYQ) && taskObj.getStatus() == 4 && !taskObj.getTaskUser().equals(SecureUtil.getUserId())) {
|
|
|
+ //逾期完成(别人查看状态)
|
|
|
+ vos.setIsOverdue(1);
|
|
|
+ } else if (taskObj.getPlanEndTime().isBefore(nowDateYQ) && taskObj.getStatus() != 4) {
|
|
|
+ //逾期未完成(都要查看)
|
|
|
+ vos.setIsOverdue(1);
|
|
|
+ }
|
|
|
+
|
|
|
+ LocalDate planStartTime = taskObj.getPlanStartTime();
|
|
|
+ LocalDate planEndTime = taskObj.getPlanEndTime();
|
|
|
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd");
|
|
|
+ String planStartTimeStr = planStartTime.format(formatter);
|
|
|
+ String planEndTimeStr = planEndTime.format(formatter);
|
|
|
+ vos.setStartAndEndDate(planStartTimeStr + "~" + planEndTimeStr);
|
|
|
+ }
|
|
|
vos.setId(taskObj.getId());
|
|
|
for (ControlProjectInfo projectInfo : controlProjectInfos) {
|
|
|
if (projectInfo.getId().equals(taskObj.getProjectId())) {
|
|
@@ -346,7 +363,6 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
//判断任务状态
|
|
|
ExpenseTaskRecord record = taskRecordMaps.getOrDefault(String.valueOf(taskObj.getId()), null);
|
|
|
if (record != null) {
|
|
@@ -364,35 +380,8 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
vos.setStatus(0);
|
|
|
vos.setStatusName("未上报");
|
|
|
}
|
|
|
-
|
|
|
vos.setTaskDesc(ObjectUtil.isNotEmpty(taskObj.getPlanTaskDesc()) ? taskObj.getPlanTaskDesc() : "");
|
|
|
- if (ObjectUtil.isNotEmpty(taskObj.getPlanStartTime()) && ObjectUtil.isNotEmpty(taskObj.getPlanEndTime())) {
|
|
|
- LocalDate planStartTime = taskObj.getPlanStartTime();
|
|
|
- LocalDate planEndTime = taskObj.getPlanEndTime();
|
|
|
- DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd");
|
|
|
- String planStartTimeStr = planStartTime.format(formatter);
|
|
|
- String planEndTimeStr = planEndTime.format(formatter);
|
|
|
- vos.setStartAndEndDate(planStartTimeStr + "~" + planEndTimeStr);
|
|
|
- /*if (vos.getStatus().equals(4)) { //TODO 业务说暂时不需要标记逾期完成的
|
|
|
- //逾期完成
|
|
|
- for (TaskPlanOverdueStatusVO overdueVO : overdueStatusVOS) {
|
|
|
- if (overdueVO.getPlanTaskId().equals(taskObj.getId())) {
|
|
|
- vos.setIsOverdue(1);
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- } else {*/
|
|
|
- //逾期未完成
|
|
|
- if (taskObj.getPlanEndTime().isBefore(nowDateYQ) && obj.getStatus() != 4) {
|
|
|
- if (ObjectUtil.isNotEmpty(taskObj.getPlanStartTime()) && ObjectUtil.isNotEmpty(taskObj.getPlanEndTime())) {
|
|
|
- vos.setIsOverdue(1);
|
|
|
- }
|
|
|
- }
|
|
|
- //}
|
|
|
- }
|
|
|
-
|
|
|
vos.setReimbursementAmount(taskObj.getBudgetCountMoney());
|
|
|
-
|
|
|
resultList.add(vos);
|
|
|
}
|
|
|
List<TaskPlanInfoVO> collect = resultList.stream().sorted(Comparator.comparing(TaskPlanInfoVO::getStatus)).collect(Collectors.toList());
|
|
@@ -427,6 +416,9 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
if (ObjectUtil.isEmpty(SecureUtil.getUser())) {
|
|
|
throw new ServiceException("获取当前用户信息失败,请联系管理员");
|
|
|
}
|
|
|
+ if (ObjectUtil.isEmpty(logId)) {
|
|
|
+ throw new ServiceException("请先提交日志后再进行计划任务关联!");
|
|
|
+ }
|
|
|
|
|
|
ProjectCostBudget task = projectCostBudgetServiceImpl.getBaseMapper().selectById(taskId);
|
|
|
if (ObjectUtil.isEmpty(task.getDeptId())) {
|
|
@@ -465,8 +457,8 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
if (ObjectUtil.isNotEmpty(logId)) { //编辑时,点完成,那么重塑关系信息
|
|
|
List<TaskPlanInfoVO> taskPlanInfoVOS = this.logTaskList();
|
|
|
if (taskPlanInfoVOS.size() > 0) {
|
|
|
- jdbcTemplate.execute("delete from c_log_history_task_record where log_id = " + logId);
|
|
|
for (TaskPlanInfoVO taskPlanInfoVO : taskPlanInfoVOS) {
|
|
|
+ jdbcTemplate.execute("delete from c_log_history_task_record where log_id = " + logId + " and task_id = " + taskPlanInfoVO.getId());
|
|
|
jdbcTemplate.execute("insert into c_log_history_task_record(id,log_id,task_id) values(" + SnowFlakeUtil.getId() + "," + logId + "," + taskPlanInfoVO.getId() + ")");
|
|
|
}
|
|
|
}
|
|
@@ -532,19 +524,11 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
}
|
|
|
//当前用户所有的计划任务信息
|
|
|
List<ProjectCostBudget> projectCostBudgetsAllByTaskUser = jdbcTemplate.query("SELECT * FROM c_project_cost_budget WHERE task_user = " + SecureUtil.getUserId(), new BeanPropertyRowMapper<>(ProjectCostBudget.class));
|
|
|
- //List<ProjectCostBudget> projectCostBudgets = jdbcTemplate.query("SELECT * FROM c_project_cost_budget WHERE CURDATE() BETWEEN plan_start_time AND plan_end_time AND task_user = " + SecureUtil.getUserId(), new BeanPropertyRowMapper<>(ProjectCostBudget.class));
|
|
|
List<ControlProjectInfo> controlProjectInfos = projectInfoServiceImpl.getBaseMapper().selectList(Wrappers.<ControlProjectInfo>lambdaQuery().select(ControlProjectInfo::getId, ControlProjectInfo::getName));
|
|
|
List<TaskPlanInfoVO> resultList = new ArrayList<>();
|
|
|
LocalDate nowDate = LocalDate.now();
|
|
|
for (ProjectCostBudget obj : projectCostBudgetsAllByTaskUser) {
|
|
|
TaskPlanInfoVO vo = new TaskPlanInfoVO();
|
|
|
- vo.setId(obj.getId());
|
|
|
- for (ControlProjectInfo projectInfo : controlProjectInfos) {
|
|
|
- if (projectInfo.getId().equals(obj.getProjectId())) {
|
|
|
- vo.setProjectName(projectInfo.getName());
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
vo.setStatusName(obj.getStatus().equals(4) ? "已完成" : "未完成");
|
|
|
vo.setTaskDesc(ObjectUtil.isNotEmpty(obj.getPlanTaskDesc()) ? obj.getPlanTaskDesc() : "");
|
|
|
if (ObjectUtil.isNotEmpty(obj.getPlanStartTime()) && ObjectUtil.isNotEmpty(obj.getPlanEndTime())) {
|
|
@@ -554,12 +538,24 @@ public class LogHistoryServiceImpl extends BaseServiceImpl<LogHistoryMapper, Log
|
|
|
String planStartTimeStr = planStartTime.format(formatter);
|
|
|
String planEndTimeStr = planEndTime.format(formatter);
|
|
|
vo.setStartAndEndDate(planStartTimeStr + "~" + planEndTimeStr);
|
|
|
+ if (obj.getPlanEndTime().isBefore(nowDate) && obj.getStatus() == 4) {
|
|
|
+ //如果当前任务是已完成任务,且起止时间已超过当前时间,那么跳过
|
|
|
+ continue;
|
|
|
+ }
|
|
|
if (obj.getPlanEndTime().isBefore(nowDate) && obj.getStatus() != 4) {
|
|
|
if (ObjectUtil.isNotEmpty(obj.getPlanStartTime()) && ObjectUtil.isNotEmpty(obj.getPlanEndTime())) {
|
|
|
vo.setIsOverdue(1); //逾期任务
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ vo.setId(obj.getId());
|
|
|
+ for (ControlProjectInfo projectInfo : controlProjectInfos) {
|
|
|
+ if (projectInfo.getId().equals(obj.getProjectId())) {
|
|
|
+ vo.setProjectName(projectInfo.getName());
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
resultList.add(vo);
|
|
|
}
|
|
|
if (resultList.size() > 0) {
|