From 30df94c05573a426d030510d4dd58ae1d93bfb7a Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 06 Dec 2021 14:03:37 +0800
Subject: [PATCH] 1.资格审查排序

---
 src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java |   54 +++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 51 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java b/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
index cfa1422..c3b557f 100644
--- a/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
+++ b/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
@@ -29,11 +29,15 @@
 import org.springblade.core.tool.utils.Func;
 import org.springblade.modules.dispatcher.entity.Dispatcher;
 import org.springblade.modules.dispatcher.service.IDispatcherService;
+import org.springblade.modules.dispatcher.service.IDispatcherUnitService;
 import org.springblade.modules.dispatcher.vo.DispatcherVO;
+import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.service.IUserService;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
 import java.util.Arrays;
+import java.util.List;
 
 /**
  *  控制器
@@ -48,6 +52,10 @@
 public class DispatcherController extends BladeController {
 
 	private final IDispatcherService dispatcherService;
+
+	private final IDispatcherUnitService dispatcherUnitService;
+
+	private final IUserService userService;
 
 	/**
 	 * 详情
@@ -89,6 +97,12 @@
 	@ApiOperationSupport(order = 4)
 	@ApiOperation(value = "新增", notes = "传入dispatcher")
 	public R save(@Valid @RequestBody Dispatcher dispatcher) {
+		if (null != dispatcher.getUserIds() && dispatcher.getUserIds() != "") {
+			//计算派遣人数
+//			dispatcher.setNum(Arrays.asList(dispatcher.getUserIds().split(",")).size());
+			//查询派遣单位的信息,设置行政区
+			dispatcher.setJurisdiction(dispatcherUnitService.getById(dispatcher.getDispatcherUnitId()).getJurisdiction().toString());
+		}
 		return R.status(dispatcherService.save(dispatcher));
 	}
 
@@ -109,9 +123,43 @@
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入dispatcher")
 	public R submit(@Valid @RequestBody Dispatcher dispatcher) {
-		if (null!=dispatcher.getUserIds() && dispatcher.getUserIds()!=""){
-			//计算派遣人数
-			dispatcher.setNum(Arrays.asList(dispatcher.getUserIds().split(",")).size());
+		if (dispatcher.getId()==null){
+			if (null!=dispatcher.getUserIds() && dispatcher.getUserIds()!=""){
+//				List<String> list = Arrays.asList(dispatcher.getUserIds().split(","));
+//				//计算派遣人数
+//				dispatcher.setNum(list.size());
+				//修改保安人员的派遣状态
+				User user = new User();
+				user.setId(Long.parseLong(dispatcher.getUserIds()));
+				user.setDispatch("0");
+				userService.updateById(user);
+				//查询派遣单位的信息,设置行政区
+				dispatcher.setJurisdiction(dispatcherUnitService.getById(dispatcher.getDispatcherUnitId()).getJurisdiction().toString());
+			}
+		}
+		else {
+			if (null != dispatcher.getUserIds() && dispatcher.getUserIds() != "") {
+//				List<String> list = Arrays.asList(dispatcher.getUserIds().split(","));
+				//计算派遣人数
+//				dispatcher.setNum(list.size());
+				//查询当前派遣记录
+				Dispatcher dispatcher1 = dispatcherService.getById(dispatcher.getId());
+				if (!dispatcher1.getUserIds().equals(dispatcher.getUserIds())){
+					//修改原保安人员的派遣状态
+					User user = new User();
+					user.setId(Long.parseLong(dispatcher1.getUserIds()));
+					user.setDispatch("1");
+					userService.updateById(user);
+
+					//修改当前保安人员的派遣状态
+					User user1 = new User();
+					user1.setId(Long.parseLong(dispatcher.getUserIds()));
+					user1.setDispatch("0");
+					userService.updateById(user1);
+				}
+				//查询派遣单位的信息,设置行政区
+				dispatcher.setJurisdiction(dispatcherUnitService.getById(dispatcher.getDispatcherUnitId()).getJurisdiction().toString());
+			}
 		}
 		return R.status(dispatcherService.saveOrUpdate(dispatcher));
 	}

--
Gitblit v1.9.3