智慧保安后台管理-外网项目备份
guoshilong
2024-01-16 6f201b8d3743e246a71f00a9ba98d10b128fae38
src/main/java/org/springblade/modules/dispatcher/controller/DispatcherUnitController.java
@@ -24,24 +24,37 @@
import lombok.AllArgsConstructor;
import org.springblade.common.utils.arg;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.excel.util.ExcelUtil;
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.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.FTP.FtpUtil;
import org.springblade.modules.dispatcher.entity.Dispatcher;
import org.springblade.modules.dispatcher.entity.DispatcherUnit;
import org.springblade.modules.dispatcher.excel.DispatcherUnitExcel;
import org.springblade.modules.dispatcher.excel.DispatcherUnitImporter;
import org.springblade.modules.dispatcher.service.IDispatcherService;
import org.springblade.modules.dispatcher.service.IDispatcherUnitService;
import org.springblade.modules.dispatcher.vo.DispatcherUnitVO;
import org.springblade.modules.dispatcher.vo.DispatcherVO;
import org.springblade.modules.exam.excel.ExamScoreExcel;
import org.springblade.modules.exam.excel.ExamScoreImporter;
import org.springblade.modules.system.service.MyAsyncService;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 *  控制器
 * 控制器
 *
 * @author zhongrj
 * @since 2021-07-07
@@ -53,6 +66,8 @@
public class DispatcherUnitController extends BladeController {
   private final IDispatcherUnitService dispatcherUnitService;
   private final IDispatcherService dispatcherService;
   private final MyAsyncService myAsyncService;
   /**
    * 详情
@@ -85,6 +100,7 @@
   /**
    * 自定义树
    *
    * @param dispatcher
    * @return
    */
@@ -114,14 +130,24 @@
    * 新增或修改
    */
   @PostMapping("/submit")
   public R submit(@Valid @RequestBody DispatcherUnit dispatcherUnit) throws Exception {
      if (dispatcherUnit.getId()==null){
         arg.test01(arg.url+"/dispatcherUnit/save",dispatcherUnit);
      }
      if (null==dispatcherUnit.getId()){
   public R submit(@Valid @RequestBody DispatcherUnit dispatcherUnit) {
      boolean status = false;
      if (null == dispatcherUnit.getId()) {
         dispatcherUnit.setCreateTime(new Date());
         //新增
         status = dispatcherUnitService.save(dispatcherUnit);
      } else {
         //修改
         status = dispatcherUnitService.updateById(dispatcherUnit);
         //派遣记录修改合同时间
         Long id = dispatcherUnit.getId();
         String ids = String.valueOf(id);
         Date date = dispatcherUnit.getEndTime();
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         String endTime = sdf.format(date);
         dispatcherService.updateEndtime(endTime, ids);
      }
      return R.status(dispatcherUnitService.saveOrUpdate(dispatcherUnit));
      return R.status(status);
   }
@@ -130,11 +156,82 @@
    */
   @PostMapping("/remove")
   @ApiOperation(value = "删除", notes = "传入ids")
   public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) throws Exception {
   public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
      //内网删除
      arg.sendPostRemoveByIds(arg.url+"/dispatcherUnit/remove",ids);
      List<Long> list = Func.toLongList(ids);
      list.forEach(id -> {
         //内网同步
         String s1 = "delete from sys_dispatcher_unit where id = " + "'" + id + "'";
         //FtpUtil.sqlFileUpload(s1);
         myAsyncService.dataSync(s1);
      });
      return R.status(dispatcherUnitService.removeByIds(Func.toLongList(ids)));
   }
   /**
    * 导入派遣单位数据
    *
    * @param isCovered 1 覆盖  0不覆盖
    * @return
    */
   @PostMapping("import-dispatcherUnit")
   public R importDispatcherUnit(MultipartFile file, Integer isCovered) {
      DispatcherUnitImporter dispatcherImporter = new DispatcherUnitImporter(dispatcherUnitService, false);
      ExcelUtil.save(file, dispatcherImporter, DispatcherUnitExcel.class);
      return R.success("操作成功");
   }
   /**
    * 导出模板
    */
   @GetMapping("export-template")
   @ApiOperation(value = "导出模板")
   public void exportUser(HttpServletResponse response) throws ParseException {
      List<DispatcherUnitExcel> list = new ArrayList<>();
      DispatcherUnitExcel unitExcel = new DispatcherUnitExcel();
      unitExcel.setDeptName("****保安服务公司");
      unitExcel.setName("****公司");
      unitExcel.setAddress("*********");
      unitExcel.setLongitude("112.85857823133");
      unitExcel.setLatitude("35.496284586473");
      unitExcel.setLinkman("张三");
      unitExcel.setPhone("13112341234");
      unitExcel.setStartTime(new SimpleDateFormat("yyyy/MM/dd").parse("2020/5/1"));
      unitExcel.setEndTime(new SimpleDateFormat("yyyy/MM/dd").parse("2021/5/1"));
      unitExcel.setServeType("***");
      unitExcel.setSecurityLinkman("王老五");
      unitExcel.setCell("13112341234");
      unitExcel.setNum(10);
      list.add(unitExcel);
      DispatcherUnitExcel unitExcel1 = new DispatcherUnitExcel();
      unitExcel1.setDeptName("****保安服务公司");
      unitExcel1.setName("****公司");
      unitExcel1.setAddress("*********");
      unitExcel1.setLongitude("112.85857823133");
      unitExcel1.setLatitude("35.496284586473");
      unitExcel1.setLinkman("李四");
      unitExcel1.setPhone("13112341234");
      unitExcel1.setStartTime(new SimpleDateFormat("yyyy/MM/dd").parse("2020/10/10"));
      unitExcel1.setEndTime(new SimpleDateFormat("yyyy/MM/dd").parse("2021/10/10"));
      unitExcel1.setServeType("***");
      unitExcel1.setSecurityLinkman("钱小七");
      unitExcel1.setCell("13112341234");
      unitExcel1.setNum(100);
      list.add(unitExcel1);
      ExcelUtil.export(response, "派遣单位数据导入模板" + DateUtil.time(), "派遣单位数据表", list, DispatcherUnitExcel.class);
   }
   /**
    * 获取所有派遣单位
    * @param dispatcherUnit
    * @return
    */
   @GetMapping("getAll")
   public R getAll(DispatcherUnit dispatcherUnit){
      List<DispatcherUnitVO> list = dispatcherUnitService.getAll(dispatcherUnit);
      return R.data(list);
   }
}