From 0a4fbcd9d997005bda2b5ac5dc9daa586342d7db Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Fri, 25 Feb 2022 14:43:11 +0800
Subject: [PATCH] 任务数量统计

---
 src/main/java/org/springblade/modules/taskqd/controller/TaskqdController.java |  123 ++++++++++++++++++++++++++++++++++------
 1 files changed, 104 insertions(+), 19 deletions(-)

diff --git a/src/main/java/org/springblade/modules/taskqd/controller/TaskqdController.java b/src/main/java/org/springblade/modules/taskqd/controller/TaskqdController.java
index b644d87..822307a 100644
--- a/src/main/java/org/springblade/modules/taskqd/controller/TaskqdController.java
+++ b/src/main/java/org/springblade/modules/taskqd/controller/TaskqdController.java
@@ -36,11 +36,16 @@
 import org.springblade.modules.taskqd.service.impl.TaskqdServiceImpl;
 import org.springblade.modules.taskqd.vo.TaskqdVO;
 import org.springblade.modules.taskqd.wrapper.TaskqdWrapper;
+import org.springblade.modules.webscoket.service.IPushMsgService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
+import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 控制器
@@ -55,6 +60,9 @@
 public class TaskqdController extends BladeController {
 
 	private final TaskqdServiceImpl taskqdService;
+
+	@Autowired
+	private IPushMsgService pushMsgService;
 
 	/**
 	 * 详情
@@ -120,6 +128,19 @@
 		return R.status(taskqdService.removeByIds(Func.toLongList(ids)));
 	}
 
+	/**
+	 * 分页
+	 */
+	@GetMapping("/queryReceiver")
+	@ApiOperation(value = "分页", notes = "传入task")
+	public R queryReceiver(Taskqd taskqd, Query query) {
+		String sreid = taskqd.getSerid();
+		if (sreid.charAt(sreid.length() - 1) == ',') { //s.length()-1获取字符串最后一位字符的索引,传入charAt方法获取索引对应的字符,判断是否为逗号
+			sreid = sreid.substring(0, sreid.length() - 1);
+		}
+		return R.data(taskqdService.queryReceiver(sreid));
+	}
+
 
 	/**
 	 * 抢单
@@ -138,33 +159,55 @@
 			if (num == jnum - 1) {
 				int i = num + 1;
 				String serid = taskqd.getSerid();
-				if (empty==true){
+				if (empty == true) {
 					//String serid2 = list.get(0).getSerid();
 					//String substring = serid2.substring(0, serid.length() - 1);
 					//String s = serid + substring;
-					taskqdService.updatet(taskqd.getId(), i, serid);
+					taskqdService.updatet(taskqd.getId(), i, serid, null, null);
 					return R.success("抢单成功");
-				}
-				else {
+				} else {
 					String ser = taskqd.getSerid();
 					String ser2 = list.get(0).getSerid();
-					String sub = ser2.substring(0, serid.length() - 1);
-					String ss = ser + sub;
-					taskqdService.updatet(taskqd.getId(), i, ss);
+					String sub = ser.substring(0, serid.length() - 1);
+					String ss = ser2 + sub;
+
+					String team = taskqd.getCaptain();
+					boolean isteam = StringUtil.isEmpty(list.get(0).getTeam());
+					String team2 = list.get(0).getTeam();
+					String teamz = "";
+					if (isteam) {
+						teamz = team;
+					} else {
+						teamz = team2 + "," + team;
+					}
+
+					taskqdService.updatet(taskqd.getId(), i, ss, null, teamz);
 					return R.success("抢单成功");
 				}
 
 			} else {
 				int i = num + 1;
 				String serid = taskqd.getSerid();
-				if (empty==true){
-					taskqdService.updatet(taskqd.getId(), i, serid);
+				if (empty == true) {
+					String captain = taskqd.getCaptain();
+					taskqdService.updatet(taskqd.getId(), i, serid, captain, null);
 					return R.success("抢单成功");
-				}
-				else {
+				} else {
 					String serid1 = list.get(0).getSerid();
-					String s = serid + serid1;
-					taskqdService.updatet(taskqd.getId(), i, s);
+					String s = serid1 + serid;
+
+					String team = taskqd.getCaptain();
+					boolean isteam = StringUtil.isEmpty(list.get(0).getTeam());
+					String team2 = list.get(0).getTeam();
+					String teamz = "";
+					if (isteam) {
+						teamz = team;
+					} else {
+						teamz = team2 + "," + team;
+					}
+
+
+					taskqdService.updatet(taskqd.getId(), i, s, null, teamz);
 					return R.success("抢单成功");
 				}
 			}
@@ -175,22 +218,64 @@
 
 	/**
 	 * 查询任务
+	 *
 	 * @param type
 	 * @param serid
 	 * @return
 	 */
 	@PostMapping("/selectLi")
-	public R selectLi(String type,String serid) {
-		List<TaskqdVO> list = taskqdService.selectLi(type, serid);
-		for (int i=0;i<list.size();i++){
+	public R selectLi(String type, String serid, String jurisdiction) {
+		List<TaskqdVO> list = taskqdService.selectLi(type, serid, jurisdiction);
+		for (int i = 0; i < list.size(); i++) {
 			Integer nums = list.get(i).getNums();
-			if (nums==0){
-				list.get(i).setType("0");
+
+			boolean isteam = StringUtil.isEmpty(list.get(i).getSerid());
+			if (isteam) {
+				list.get(i).setIscation("0");
+			} else {
+				if (list.get(i).getSerid().split(",")[0].equals(serid)) {
+					list.get(i).setIscation("1");
+				} else {
+					list.get(i).setIscation("0");
+				}
 			}
-			else {
+
+			if (nums == 0) {
+				list.get(i).setType("0");
+			} else {
 				list.get(i).setType("1");
 			}
 		}
 		return R.data(list);
 	}
+
+	/**
+	 * 查询可参与任务
+	 * @param serid
+	 * @param jurisdiction
+	 * @return
+	 */
+	@GetMapping("/selectNum")
+	public R selectNum(String serid,String jurisdiction,String workjurisdiction) {
+		return R.data(taskqdService.selectNum(serid, jurisdiction,workjurisdiction));
+	}
+
+	@GetMapping("/startTask")
+	public R<Map> startTask(String rid, String serid,String type,String data) {
+		//获取组员id并进行通知
+		Map<String, Object> map = new HashMap<>();
+
+		serid = taskqdService.querySerid(rid);
+
+		int msg = pushMsgService.startTask(serid, rid,type,data);
+		map.put("res", msg);
+		map.put("type", type);
+		map.put("data",data);
+		if (!type.equals("stop")){
+			taskqdService.updateRtype("0",rid);
+		}
+		return R.data(map);
+	}
+
+
 }

--
Gitblit v1.9.3