From 6f201b8d3743e246a71f00a9ba98d10b128fae38 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 16 Jan 2024 08:59:52 +0800
Subject: [PATCH] 派遣记录导入
---
src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java | 110 ++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 76 insertions(+), 34 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 02c434d..5521f38 100644
--- a/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
+++ b/src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
@@ -16,22 +16,35 @@
*/
package org.springblade.modules.dispatcher.controller;
+import com.alibaba.excel.EasyExcel;
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.servlet.http.HttpServletResponse;
import javax.validation.Valid;
+
+import org.apache.commons.codec.Charsets;
import org.apache.commons.lang3.StringUtils;
+import org.springblade.common.excel.RowWriteHandler;
+import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.log.exception.ServiceException;
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.dispatcher.entity.DispatcherUnit;
+import org.springblade.modules.dispatcher.excel.DispatcherExcel;
+import org.springblade.modules.dispatcher.excel.DispatcherImporter;
+import org.springblade.modules.dispatcher.excel.DispatcherUnitExcel;
+import org.springblade.modules.dispatcher.excel.DispatcherUnitImporter;
import org.springblade.modules.dispatcher.service.IDispatcherUnitService;
import org.springblade.modules.dispatcher.vo.DispatcherStatistics;
import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.excel.UserCertificateExcel;
import org.springblade.modules.system.service.IUserService;
import org.springblade.modules.system.service.MyAsyncService;
import org.springblade.modules.system.vo.UserVO;
@@ -41,7 +54,11 @@
import org.springblade.modules.dispatcher.vo.DispatcherVO;
import org.springblade.modules.dispatcher.service.IDispatcherService;
import org.springblade.core.boot.ctrl.BladeController;
+import org.springframework.web.multipart.MultipartFile;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
@@ -235,44 +252,10 @@
//修改
status = dispatcherService.updateById(dispatcher);
- if (status) {
- //内网同步
- 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()) + "'" +
- ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
- ",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 = " + "'" + dispatcher.getId() + "';" +
- "update blade_user set dispatch = " + "'" + user1.getDispatch() + "'" +
- " " + "where id = " + "'" + user1.getId() + "'";
- //FtpUtil.sqlFileUpload(s1);
- myAsyncService.dataSync(s1);
- }
} else {
//没有修改保安员,只修改了派遣时间等信息
//修改
status = dispatcherService.updateById(dispatcher);
- if (status) {
- //内网同步
- String s1 =
- "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
- ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
- ",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 = " + "'" + dispatcher.getId() + "'";
- //FtpUtil.sqlFileUpload(s1);
- myAsyncService.dataSync(s1);
- }
}
}
return R.status(status);
@@ -653,5 +636,64 @@
return R.data(list);
}
+ /**
+ * 导入派遣数据
+ *
+ * @param isCovered 1 覆盖 0不覆盖
+ * @return
+ */
+ @PostMapping("import-dispatcher")
+ public R importDispatcherUnit(MultipartFile file, Integer isCovered) {
+ DispatcherImporter dispatcherImporter = new DispatcherImporter(dispatcherService, false);
+ ExcelUtil.save(file, dispatcherImporter, DispatcherExcel.class);
+ return R.success("操作成功");
+ }
+
+ /**
+ * 导出模板
+ */
+ @GetMapping("export-template")
+ @ApiOperation(value = "导出模板")
+ public void exportUser(HttpServletResponse response) throws ParseException, IOException {
+ List<DispatcherExcel> list = new ArrayList<>();
+
+ DispatcherExcel dispatcher = new DispatcherExcel();
+ dispatcher.setDispatcherUnitId("****公司");
+ dispatcher.setDeptId("****保安服务公司");
+ dispatcher.setUserIds("张三");
+ dispatcher.setCardid("360XXX19XXXXXX****");
+ dispatcher.setDispatcherTime(new SimpleDateFormat("yyyy/MM/dd").parse("2024/10/10"));
+ dispatcher.setEndTime(new SimpleDateFormat("yyyy/MM/dd").parse("2025/10/10"));
+ dispatcher.setDispatcherAddress("*****");
+ list.add(dispatcher);
+
+ DispatcherExcel dispatcher2 = new DispatcherExcel();
+ dispatcher2.setDispatcherUnitId("****公司");
+ dispatcher2.setDeptId("****保安服务公司");
+ dispatcher2.setUserIds("张三");
+ dispatcher2.setCardid("360XXX19XXXXXX****");
+ dispatcher2.setDispatcherTime(new SimpleDateFormat("yyyy/MM/dd").parse("2024/10/10"));
+ dispatcher2.setEndTime(new SimpleDateFormat("yyyy/MM/dd").parse("2025/10/10"));
+ dispatcher2.setDispatcherAddress("*****");
+ list.add(dispatcher2);
+
+
+
+// ExcelUtil.export(response, "派遣数据导入模板" + DateUtil.time(), "派遣单位数据表", list, DispatcherExcel.class);
+
+ String fileName = null;
+ try {
+ response.setContentType("application/vnd.ms-excel");
+ response.setCharacterEncoding(org.apache.commons.codec.Charsets.UTF_8.name());
+ fileName = URLEncoder.encode("派遣数据导入模板" + DateUtil.time(), Charsets.UTF_8.name());
+ response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
+ //修改单元格格式为文本格式
+ EasyExcel.write(response.getOutputStream(), DispatcherExcel.class).sheet("派遣数据表").registerWriteHandler(new RowWriteHandler()).doWrite(list);
+ } catch (Throwable var6) {
+ throw var6;
+ }
+
+ }
+
}
--
Gitblit v1.9.3