From cc057177b2fb17aee9a173a6adbabdc578fd74c7 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 06 Dec 2021 10:30:44 +0800
Subject: [PATCH] 1.许可
---
src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java | 160 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 156 insertions(+), 4 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 6176fff..bcd4cb9 100644
--- a/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
+++ b/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
@@ -23,10 +23,15 @@
import lombok.AllArgsConstructor;
import javax.validation.Valid;
+import org.springblade.common.utils.arg;
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.springblade.modules.FTP.FtpUtil;
+import org.springblade.modules.dispatcher.service.IDispatcherUnitService;
+import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.service.IUserService;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.modules.dispatcher.entity.Dispatcher;
@@ -34,7 +39,10 @@
import org.springblade.modules.dispatcher.service.IDispatcherService;
import org.springblade.core.boot.ctrl.BladeController;
+import java.text.SimpleDateFormat;
import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
/**
* 控制器
@@ -49,6 +57,10 @@
public class DispatcherController extends BladeController {
private final IDispatcherService dispatcherService;
+
+ private final IDispatcherUnitService dispatcherUnitService;
+
+ private final IUserService userService;
/**
* 详情
@@ -84,12 +96,28 @@
}
/**
+ * APP-从业单位查询(派遣单位)
+ */
+ @GetMapping("/queryDispatcher")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "分页", notes = "传入dispatcher")
+ public R<IPage<DispatcherVO>> queryDispatcher(DispatcherVO dispatcher, Query query) {
+ IPage<DispatcherVO> pages = dispatcherService.queryDispatcher(Condition.getPage(query), dispatcher);
+ return R.data(pages);
+ }
+
+ /**
* 新增
*/
@PostMapping("/save")
@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());
+ //查询派遣单位的信息,设置行政区
+ }
return R.status(dispatcherService.save(dispatcher));
}
@@ -103,6 +131,43 @@
return R.status(dispatcherService.updateById(dispatcher));
}
+
+ /**
+ * 结束派遣
+ * @param dispatcher
+ */
+ @PostMapping("/over-dispatcher")
+ public R overDispatcher(@Valid @RequestBody Dispatcher dispatcher) {
+ dispatcher.setStatus(1);
+ Boolean status = dispatcherService.updateById(dispatcher);
+
+ //查询当前用户的派遣记录,是否存在多条未结束派遣的
+ Dispatcher dispatcher1 = new Dispatcher();
+ dispatcher1.setUserIds(dispatcher.getUserIds());
+ List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher1));
+
+ User user = new User();
+ if (dispatcherList.size()<1){
+ //用户状态改变
+ user.setDispatch("1");
+ }else {
+ //用户状态改变
+ user.setDispatch("0");
+ }
+ user.setId(Long.parseLong(dispatcher.getUserIds()));
+ userService.updateById(user);
+
+ //内网同步
+ String s1 =
+ "update sys_dispatcher set status = " + "'" + dispatcher.getStatus() + "'" +
+ ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + "'" +
+ " " +"where id = " + "'" + dispatcher.getId() + "';"+
+ "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
+ " " +"where id = " + "'" + user.getId() + "'";
+ FtpUtil.sqlFileUpload(s1);
+ return R.status(status);
+ }
+
/**
* 新增或修改
*/
@@ -110,11 +175,91 @@
@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());
+ //List<String> list = Arrays.asList(dispatcher.getUserIds().split(","));
+ //计算派遣人数
+ //dispatcher.setNum(list.size());
+
+ boolean status = false;
+ if (dispatcher.getId()==null){
+ dispatcher.setCreateTime(new Date());
+ dispatcher.setStatus(0);
+
+ User user = new User();
+ user.setId(Long.parseLong(dispatcher.getUserIds()));
+ user.setDispatch("0");
+ userService.updateById(user);
+
+ //新增派遣记录
+ status = dispatcherService.save(dispatcher);
+
+ //数据同步
+ String s1 =
+ "insert into sys_dispatcher(id,dispatcherTime,dispatcher_unit_id,user_ids,end_time,dept_id,jurisdiction,create_time,status) " +
+ "values(" + "'" + dispatcher.getId() + "'" + "," +
+ "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" + "," +
+ "'" + dispatcher.getDispatcherUnitId() + "'" + "," +
+ "'" + dispatcher.getUserIds() + "'" + "," +
+ "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" + "," +
+ "'" + dispatcher.getDeptId() + "'" + "," +
+ "'" + dispatcher.getJurisdiction() + "'" + "," +
+ "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getCreateTime()) + "'" + "," +
+ "'" +dispatcher.getStatus() + "'" + ");" +
+ "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
+ " " +"where id = " + "'" + user.getId() + "'";
+ FtpUtil.sqlFileUpload(s1);
+ }else {
+ dispatcher.setUpdateTime(new Date());
+
+ //查询当前派遣记录
+ Dispatcher dispatcher1 = dispatcherService.getById(dispatcher.getId());
+ if (!dispatcher1.getUserIds().equals(dispatcher.getUserIds())){
+ //修改原保安人员的派遣状态
+ //查询原保安人员的派遣记录,是否存在多条未结束派遣的
+ Dispatcher dispatcher2 = new Dispatcher();
+ dispatcher2.setUserIds(dispatcher1.getUserIds());
+ dispatcher2.setStatus(0);
+ List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher2));
+ User user = new User();
+ user.setId(Long.parseLong(dispatcher1.getUserIds()));
+ if (dispatcherList.size()<1){
+ //用户状态改变
+ user.setDispatch("1");
+ }else {
+ user.setDispatch("0");
+ }
+ //修改原保安人员用户信息
+ userService.updateById(user);
+
+ //修改当前保安人员的派遣状态
+ User user1 = new User();
+ user1.setId(Long.parseLong(dispatcher.getUserIds()));
+ user1.setDispatch("0");
+ userService.updateById(user1);
+
+ //修改
+ status = dispatcherService.updateById(dispatcher);
+
+ //内网同步
+ String s1 =
+ "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
+ " " +"where id = " + "'" + user.getId() + "';" +
+ "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
+ ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
+ ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
+ ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
+ ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
+ ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
+ ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
+ " " +"where id = " + "'" + user.getId() + "';"+
+ "update blade_user set dispatch = " + "'" + user1.getDispatch() + "'" +
+ " " +"where id = " + "'" + user1.getId() + "'";
+ FtpUtil.sqlFileUpload(s1);
+ }else {
+ //修改
+ status = dispatcherService.updateById(dispatcher);
+ }
}
- return R.status(dispatcherService.saveOrUpdate(dispatcher));
+ return R.status(status);
}
@@ -125,6 +270,13 @@
@ApiOperationSupport(order = 8)
@ApiOperation(value = "删除", notes = "传入ids")
public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+ //内网删除
+ List<Long> list = Func.toLongList(ids);
+ list.forEach(id ->{
+ //内网同步
+ String s1 = "delete from sys_dispatcher where id = " + "'" + id + "'";
+ FtpUtil.sqlFileUpload(s1);
+ });
return R.status(dispatcherService.removeByIds(Func.toLongList(ids)));
}
--
Gitblit v1.9.3