From 2ebca060a47784db76369a4aa84f63293da9be33 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Thu, 16 Jun 2022 10:08:08 +0800
Subject: [PATCH] 保安员新增同步编号问题

---
 src/main/java/org/springblade/modules/system/controller/UserController.java |  157 +++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 147 insertions(+), 10 deletions(-)

diff --git a/src/main/java/org/springblade/modules/system/controller/UserController.java b/src/main/java/org/springblade/modules/system/controller/UserController.java
index 3bec228..93125ae 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -25,6 +25,9 @@
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
+import org.json.JSONArray;
+import org.json.JSONObject;
+import org.springblade.common.utils.InvestigateUtil;
 import org.springblade.core.cache.utils.CacheUtil;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.launch.constant.AppConstant;
@@ -39,7 +42,11 @@
 import org.springblade.core.tool.constant.RoleConstant;
 import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.StringPool;
+import org.springblade.modules.FTP.MyAsyncService;
+import org.springblade.modules.accreditation.entity.AccreditationRecords;
+import org.springblade.modules.accreditation.service.AccreditationRecordsService;
 import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.excel.SecurityExcel;
 import org.springblade.modules.system.excel.UserExcel;
 import org.springblade.modules.system.excel.UserImporter;
 import org.springblade.modules.system.service.IUserService;
@@ -51,9 +58,9 @@
 
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.stream.Collectors;
 
 import static org.springblade.core.cache.constant.CacheConstant.USER_CACHE;
 
@@ -71,13 +78,19 @@
 
 	private final IUserService userService;
 
+
+	private final MyAsyncService myAsyncService;
+
+
+	private final AccreditationRecordsService accreditationRecordsService;
+
 	/**
 	 * 查询单条
 	 */
 	@ApiOperationSupport(order = 1)
 	@ApiOperation(value = "查看详情", notes = "传入id")
 	@GetMapping("/detail")
-	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R<UserVO> detail(User user) {
 		User detail = userService.getOne(Condition.getQueryWrapper(user));
 		return R.data(UserWrapper.build().entityVO(detail));
@@ -123,8 +136,21 @@
 	@ApiOperation(value = "列表", notes = "传入account和realName")
 	//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) {
-		user.setAccount("admin");
 		IPage<User> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
+		return R.data(UserWrapper.build().pageVO(pages));
+	}
+
+
+	/**
+	 * 自定义用户列表,
+	 */
+	@GetMapping("/pages")
+	@ApiImplicitParams({
+		@ApiImplicitParam(name = "account", value = "账号名", paramType = "query", dataType = "string"),
+		@ApiImplicitParam(name = "realName", value = "姓名", paramType = "query", dataType = "string")
+	})
+	public R<IPage<UserVO>> pages(@ApiIgnore UserVO user, Query query) {
+		IPage<User> pages = userService.selectUserPages(Condition.getPage(query), user);
 		return R.data(UserWrapper.build().pageVO(pages));
 	}
 
@@ -133,10 +159,10 @@
 	 * 自定义用户列表(只有保安员)
 	 */
 	@GetMapping("/page-security")
-	public R<IPage<UserVO>> pageSecurity(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) {
-		user.setAccount("admin");
-		IPage<User> pages = userService.selectUserPageSecurity(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
-		return R.data(UserWrapper.build().pageVO(pages));
+	public R<IPage<UserVO>> pageSecurity(@ApiIgnore UserVO user, Query query) {
+		//user.setAccount("admin");
+		IPage<UserVO> pages = userService.selectUserPageSecurity(Condition.getPage(query), user);
+		return R.data(pages);
 	}
 
 	/**
@@ -148,6 +174,19 @@
 	//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R submit(@Valid @RequestBody User user) {
 		CacheUtil.clear(USER_CACHE);
+		//资格审查
+		String body = InvestigateUtil.httpGetOne(user.getCardid());
+		JSONObject jsonObject = new JSONObject(body);
+		String data = jsonObject.get("data").toString();
+		JSONObject jsonData = new JSONObject(data);
+		JSONArray res = jsonData.getJSONArray("res");
+		if (res.length()==0){
+			//没有数据正常
+			user.setExaminationType("0");
+		}else {
+			user.setExaminationType("1");
+			user.setExaminationMx(res.getJSONObject(0).get("zdrylbjh").toString());
+		}
 		return R.status(userService.submit(user));
 	}
 
@@ -160,6 +199,15 @@
 	public R update(@Valid @RequestBody User user) {
 		CacheUtil.clear(USER_CACHE);
 		return R.status(userService.updateUser(user));
+	}
+
+	/**
+	 * 修改用户信息
+	 */
+	@PostMapping("/updateUser")
+	public R updateUser(@Valid @RequestBody User user) {
+		user.setUpdateTime(new Date());
+		return R.status(userService.updateById(user));
 	}
 
 	/**
@@ -264,6 +312,17 @@
 	}
 
 	/**
+	 * 导出用户审查明细
+	 */
+	@GetMapping("export-security")
+	@ApiOperationSupport(order = 13)
+	@ApiOperation(value = "导出用户", notes = "传入user")
+	public void exportSecurity(UserVO user, HttpServletResponse response) {
+		List<SecurityExcel> list = userService.exportSecurity(user);
+		ExcelUtil.export(response, "保安员审查数据" + DateUtil.time(), "保安员审查数据表", list, SecurityExcel.class);
+	}
+
+	/**
 	 * 导出模板
 	 */
 	@GetMapping("export-template")
@@ -301,7 +360,7 @@
 	@ApiOperationSupport(order = 17)
 	@ApiOperation(value = "查看平台详情", notes = "传入id")
 	@GetMapping("/platform-detail")
-	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R<UserVO> platformDetail(User user) {
 		return R.data(userService.platformDetail(user));
 	}
@@ -331,5 +390,83 @@
 		return R.success("吊销成功");
 	}
 
+	/**
+	 * 查询押运人员
+	 *
+	 * @return
+	 */
+	@GetMapping("/selectPeo")
+	public R selectPeo(@ApiIgnore UserVO user) {
+		List list = userService.selectPeo(user);
+		return R.data(list);
+	}
+
+	/**
+	 * 查询保安员信息
+	 * @param user
+	 * @return
+	 */
+	@GetMapping("/getSecurityInfoByIdCardNo")
+	public R getSecurityInfoByIdCardNo(User user){
+		return R.data(userService.getSecurityInfoByIdCardNo(user));
+	}
+
+
+	/**
+	 * 修改发证时间
+	 */
+	@PostMapping("/updatePaperTime")
+	public R updatePaperTime(@RequestBody User user) {
+		user.setPaperTime(new Date());
+		user.setUpdateTime(new Date());
+		userService.updateById(user);
+		String paperTime = null;
+		//发证日期处理
+		if (user.getPaperTime() == null) {
+			paperTime = null;
+		} else {
+			paperTime = new SimpleDateFormat("yyyy-MM-dd").format(user.getPaperTime());
+		}
+		//更新制证记录制证状态
+		AccreditationRecords accreditationRecords = new AccreditationRecords();
+		accreditationRecords.setUserId(user.getId());
+		//审核通过的
+		accreditationRecords.setAuditStatus(2);
+		//未制证的记录
+		accreditationRecords.setStatus(1);
+		//查询
+		List<AccreditationRecords> list = accreditationRecordsService.list(Condition.getQueryWrapper(accreditationRecords));
+		if (list.size() > 0) {
+			//排序
+			List<AccreditationRecords> collect = list.stream().sorted(Comparator.comparing(AccreditationRecords::getId).reversed()).collect(Collectors.toList());
+			//取出第一个
+			AccreditationRecords accreditationRecords1 = collect.get(0);
+			//修改为已制证状态
+			accreditationRecords1.setStatus(2);
+			//记录打印时间
+			accreditationRecords1.setPaperTime(new Date());
+			//更新
+			accreditationRecordsService.updateById(accreditationRecords1);
+			//同步
+			String s1 =
+				"update blade_user set paper_time = " + "'" + paperTime + "'"
+					+ ",user_type = " + "'" + user.getUserType() + "'"
+					+ ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "'"
+					+ " " + "where id = " + "'" + user.getId() + "';" +
+				"update sys_accreditation_records set status = " + "'" + accreditationRecords1.getStatus() + "'" +
+					" " + "where id = " + "'" + accreditationRecords1.getId() + "'";
+			myAsyncService.FTP(s1);
+			//返回
+			return R.success("修改成功");
+		}
+
+		String s1 =
+			"update blade_user set paper_time = " + "'" + paperTime + "'"
+				+ ",user_type = " + "'" + user.getUserType() + "'"
+				+ ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "'"
+				+ " " + "where id = " + "'" + user.getId() + "'";
+		myAsyncService.FTP(s1);
+		return R.success("修改成功");
+	}
 
 }

--
Gitblit v1.9.3