智慧保安后台管理项目备份
zhongrj
2024-05-24 b5960d1968e007b91d4d33dd7cbb74f1b566f2c1
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));
   }