From 15601bee826ae306649c50d88dfa4f8416c8aa94 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Wed, 07 Feb 2024 10:19:10 +0800
Subject: [PATCH] 任务列表接口优化

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/service/impl/PatrolTaskServiceImpl.java |   72 ++++++++++++++++++++++++++++++------
 1 files changed, 60 insertions(+), 12 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/service/impl/PatrolTaskServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/service/impl/PatrolTaskServiceImpl.java
index c3120e2..0db7c54 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/service/impl/PatrolTaskServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/service/impl/PatrolTaskServiceImpl.java
@@ -5,6 +5,7 @@
 import cn.gistack.flow.core.feign.IFlowClient;
 import cn.gistack.flow.core.utils.FlowUtil;
 import cn.gistack.flow.core.utils.TaskUtil;
+import cn.gistack.nky.fegin.INkyClient;
 import cn.gistack.sm.patrol.entity.PatrolRecord;
 import cn.gistack.sm.patrol.entity.PatrolReport;
 import cn.gistack.sm.patrol.entity.PatrolTask;
@@ -14,10 +15,8 @@
 import cn.gistack.sm.patrol.service.IPatrolTaskService;
 import cn.gistack.sm.patrol.util.EnhancementServicesTool;
 import cn.gistack.sm.patrol.util.IdWorker;
-import cn.gistack.sm.patrol.vo.BladeFlowTask;
-import cn.gistack.sm.patrol.vo.PatrolTaskReport;
-import cn.gistack.sm.patrol.vo.PatrolTaskVO;
-import cn.gistack.sm.patrol.vo.TaskStatusCount;
+import cn.gistack.sm.patrol.vo.*;
+import cn.gistack.sm.sjztmd.service.IYwTermitesTaskService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import lombok.AllArgsConstructor;
 import org.springblade.core.log.exception.ServiceException;
@@ -26,16 +25,12 @@
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.support.Kv;
-import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.StringUtil;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.net.http.HttpRequest;
 import java.util.*;
-import java.util.stream.Collectors;
 
 import static org.springblade.core.launch.constant.FlowConstant.TASK_USR_PREFIX;
 
@@ -46,6 +41,8 @@
 	private final IFlowClient flowClient;
 	private final IPatrolRecordService patrolRecordService;
 	private final IPatrolReportService patrolReportService;
+	private final INkyClient nkyClient;
+	private final IYwTermitesTaskService waterDataTermitesService;
 
 	/**
 	 * 自定义分页查询
@@ -55,8 +52,14 @@
 	 */
 	@Override
 	public IPage<PatrolTaskVO> selectPatrolTask(IPage<PatrolTaskVO> page, PatrolTaskVO patrolTask) {
-		List<PatrolTaskVO> patrolTaskList = baseMapper.selectPatrolTask(page, patrolTask);
-		return page.setRecords(patrolTaskList);
+//		List<PatrolTaskVO> patrolTaskList = baseMapper.selectPatrolTask(page, patrolTask);
+
+		List<PatrolTaskVO> patrolTaskList = baseMapper.selectPatrolTaskPage(page.getCurrent()-1,page.getSize(),patrolTask);
+		long total = baseMapper.getPatrolTaskTotal(patrolTask);
+		page.setRecords(patrolTaskList);
+		page.setTotal(total);
+
+		return page;
 	}
 
 	/**
@@ -113,7 +116,7 @@
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public boolean startProcess(PatrolTask patrolTask) {
+	public PatrolTask startProcess(PatrolTask patrolTask) {
 		String businessTable = FlowUtil.getBusinessTable(ProcessConstant.PATROL_KEY);
 		if (Func.isEmpty(patrolTask.getId())) {
 			save(patrolTask);
@@ -133,7 +136,7 @@
 		} else {
 			updateById(patrolTask);
 		}
-		return true;
+		return patrolTask;
 	}
 
 	@Override
@@ -160,6 +163,15 @@
 			//保存上报
 			//停用
 //			saveReport(patrolTask);
+
+
+			//查监测预警表,看是否有这个任务,有的话修改任务状态
+			Boolean finishDamTask = nkyClient.finishTask(patrolTask.getId().toString());
+			if (!finishDamTask){
+				//查白蚁表,看是否有这个任务,有的话修改任务状态
+				Boolean finishTermitesTask = waterDataTermitesService.finishTask(patrolTask.getId().toString());
+			}
+
 			return baseMapper.updateById(patrolTask) >0;
 		}else {
 			return  false;
@@ -247,6 +259,42 @@
 	}
 
 	@Override
+	public List<TaskStatusCount> getTaskStatusCountOptimize(PatrolTaskVO patrolTaskVO) {
+		List<TaskStatusCount> list = new ArrayList<>();
+//		TaskStatusCount all = baseMapper.getTaskStatusCountAll(patrolTaskVO);
+//
+//		TaskStatusCount unfinished = baseMapper.getTaskStatusCountByType(patrolTaskVO,"1");
+//		TaskStatusCount processing = baseMapper.getTaskStatusCountByType(patrolTaskVO,"2");
+//		TaskStatusCount finished = baseMapper.getTaskStatusCountByType(patrolTaskVO,"3");
+//
+//		list.add(unfinished);
+//		list.add(processing);
+//		list.add(finished);
+//		list.add(all);
+
+		TaskStatus taskStatus = baseMapper.getTaskStatus(patrolTaskVO);
+
+		TaskStatusCount unfinished = new TaskStatusCount("未完成","1",taskStatus.getUnfinished());
+		TaskStatusCount processing = new TaskStatusCount("进行中","2",taskStatus.getProcessing());
+		TaskStatusCount finished = new TaskStatusCount("已完成","3",taskStatus.getFinished());
+		TaskStatusCount all = new TaskStatusCount("全部","",taskStatus.getTotal());
+
+		list.add(unfinished);
+		list.add(processing);
+		list.add(finished);
+		list.add(all);
+		return list;
+	}
+
+	@Override
+	public TaskStatus getTaskStatus(PatrolTaskVO patrolTaskVO) {
+
+		TaskStatus taskStatus = baseMapper.getTaskStatus(patrolTaskVO);
+
+		return taskStatus;
+	}
+
+	@Override
 	public List<TaskStatusCount> getTaskTypeCount(PatrolTaskVO patrolTaskVO) {
 		return baseMapper.getTaskTypeCount(patrolTaskVO);
 	}

--
Gitblit v1.9.3