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 |   71 +++++++++++++++++++++++++++++++----
 1 files changed, 62 insertions(+), 9 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 3bcb510..c3b557f 100644
--- a/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
+++ b/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
@@ -16,23 +16,28 @@
  */
 package org.springblade.modules.dispatcher.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
-import javax.validation.Valid;
-
+import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
-import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.modules.dispatcher.entity.Dispatcher;
-import org.springblade.modules.dispatcher.vo.DispatcherVO;
 import org.springblade.modules.dispatcher.service.IDispatcherService;
-import org.springblade.core.boot.ctrl.BladeController;
+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,14 +53,18 @@
 
 	private final IDispatcherService dispatcherService;
 
+	private final IDispatcherUnitService dispatcherUnitService;
+
+	private final IUserService userService;
+
 	/**
 	 * 详情
 	 */
 	@GetMapping("/detail")
 	@ApiOperationSupport(order = 1)
 	@ApiOperation(value = "详情", notes = "传入dispatcher")
-	public R<Dispatcher> detail(Dispatcher dispatcher) {
-		Dispatcher detail = dispatcherService.getOne(Condition.getQueryWrapper(dispatcher));
+	public R<DispatcherVO> detail(Dispatcher dispatcher) {
+		DispatcherVO detail = dispatcherService.getDispatcherInfo(dispatcher);
 		return R.data(detail);
 	}
 
@@ -88,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));
 	}
 
@@ -108,6 +123,44 @@
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入dispatcher")
 	public R submit(@Valid @RequestBody Dispatcher dispatcher) {
+		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