From adcff04c70567f4b1e74ec2c8dcecbb5164f94ec Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Thu, 29 Sep 2022 09:43:35 +0800
Subject: [PATCH] 1、增加轮播图维护 2、修复队伍接口报错

---
 src/main/java/org/springblade/modules/system/controller/UserController.java |  317 +++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 298 insertions(+), 19 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 e7ca5ce..3c41a72 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -17,7 +17,9 @@
 package org.springblade.modules.system.controller;
 
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import com.aliyun.oss.ServiceException;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
@@ -27,6 +29,8 @@
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
+import org.springblade.common.config.FtpConfig;
+import org.springblade.common.utils.DesensitizedUtil;
 import org.springblade.core.cache.utils.CacheUtil;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.http.util.HttpUtil;
@@ -40,15 +44,23 @@
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.constant.BladeConstant;
 import org.springblade.core.tool.constant.RoleConstant;
-import org.springblade.core.tool.utils.DateUtil;
-import org.springblade.core.tool.utils.StringPool;
+import org.springblade.core.tool.utils.*;
+import org.springblade.modules.FTP.FtpUtil;
+import org.springblade.modules.system.dto.UserDTO;
+import org.springblade.modules.system.entity.Role;
 import org.springblade.modules.system.entity.User;
 import org.springblade.modules.system.excel.UserExcel;
+import org.springblade.modules.system.excel.UserExcels;
 import org.springblade.modules.system.excel.UserImporter;
+import org.springblade.modules.system.excel.UserImporters;
+import org.springblade.modules.system.service.IRoleService;
 import org.springblade.modules.system.service.IUserService;
+import org.springblade.modules.system.vo.UserRegisterStatisVO;
 import org.springblade.modules.system.vo.UserVO;
 import org.springblade.modules.system.vo.UsersVo;
 import org.springblade.modules.system.wrapper.UserWrapper;
+import org.springblade.modules.taskqd.vo.TaskqdVO;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import springfox.documentation.annotations.ApiIgnore;
@@ -57,10 +69,8 @@
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 import static org.springblade.core.cache.constant.CacheConstant.USER_CACHE;
 
@@ -78,13 +88,15 @@
 
 	private final IUserService userService;
 
+	private final IRoleService roleService;
+
 	static BASE64Encoder encoder = new BASE64Encoder();
 
-	private final String sm4Key = "bf679652628841dc8f35f84989abf350";
+	private final String sm4Key = "cd888d57e21a4ffc9be7ed601ab3ccd6";
 
-	private final String clientCode = "909BCF57904BDBD3E053AF0A020A3760";
+	private final String clientCode = "369947";
 
-	private final String url = "http://eid.gongqing.gov.cn/uias-test/fca/verifyFace";
+	private final String url = "http://218.87.21.104:59944/uias/verifyFace";
 
 	@PostMapping("/faceCompare")
 	public R upload(@RequestParam("name")String name,@RequestParam("idCardNo")String idCardNo,@RequestParam("file") MultipartFile file){
@@ -225,11 +237,12 @@
 	public R update(@Valid @RequestBody User user) {
 		CacheUtil.clear(USER_CACHE);
 
-		if (user.getOnline_status() == null || user.getOnline_status().equals("")){
-			user.setOnline_status("0");
+		if (user.getExamination_type() == null || user.getExamination_type().equals("")){
+			user.setExamination_type("0");
 		}
-		if (user.getWork_status() == null || user.getWork_status().equals("")){
-			user.setWork_status("0");
+
+		if (user.getExamination_mx() == null || user.getExamination_mx().equals("")){
+			user.setExamination_mx("正常");
 		}
 
 		return R.status(userService.updateUser(user));
@@ -293,12 +306,12 @@
 	@ApiOperation(value = "修改基本信息", notes = "传入User")
 	public R updateInfo(@Valid @RequestBody User user) {
 		CacheUtil.clear(USER_CACHE);
-		if (null!= user.getAvatar() && user.getAvatar()!="") {
-			String avatar = user.getAvatar();
-			String substring = avatar.substring(25, avatar.length());
-			String url = "https://web.byisf.com/minio" + substring;
-			user.setAvatar(url);
-		}
+//		if (null!= user.getAvatar() && user.getAvatar()!="") {
+//			String avatar = user.getAvatar();
+//			String substring = avatar.substring(25, avatar.length());
+//			String url = "https://web.byisf.com/minio" + substring;
+//			user.setAvatar(url);
+//		}
 		return R.status(userService.updateUserInfo(user));
 	}
 
@@ -335,6 +348,17 @@
 	public R importUser(MultipartFile file, Integer isCovered) {
 		UserImporter userImporter = new UserImporter(userService, isCovered == 1);
 		ExcelUtil.save(file, userImporter, UserExcel.class);
+		return R.success("操作成功");
+	}
+
+	/**
+	 * 导入用户(保安员)
+	 */
+	@PostMapping("import-users")
+	@ApiOperation(value = "导入用户", notes = "传入excel")
+	public R importUsers(MultipartFile file, Integer isCovered) {
+		UserImporters userImporter = new UserImporters(userService, isCovered == 1);
+		ExcelUtil.save(file, userImporter, UserExcels.class);
 		return R.success("操作成功");
 	}
 
@@ -442,6 +466,261 @@
 		return R.data(userService.selectUser());
 	}
 
+	/**
+	 * 统计用户注册数据
+	 * @return
+	 */
+	@GetMapping("/getUserRegisterStatisticsData")
+	public R getUserRegisterStatisticsData() {
+		return R.data(userService.getUserRegisterStatisticsData());
+	}
+
+	/**
+	 * 统计六大队伍
+	 */
+	@GetMapping("/getUserTypeCount")
+	public R getUserTypeCount() {
+		return R.data(userService.getUserTypeCount());
+	}
 
 
+	/**
+	 * 按行政区统计六大队伍
+	 */
+	@GetMapping("/getUserDistrictTypeCount")
+	public R getUserDistrictTypeCount() {
+		return R.data(userService.getUserDistrictTypeCount());
+	}
+
+	/**
+	 * 保安员新增
+	 */
+	@PostMapping("/securitySave")
+	@Transactional(rollbackFor = Exception.class)
+	public R securitySave(@Valid @RequestBody Map<String, Object> userMap) {
+		//获取user
+		User user = JSON.parseObject(JSON.toJSONString(userMap.get("user")), User.class);
+
+		//数据脱敏处理
+//		user.setAccount(user.getRealName().substring(0,1)+user.getCardid().substring(user.getCardid().length()-4));
+//		user.setCardid(DesensitizedUtil.desensitizedIdNumber(user.getCardid()));
+//		user.setPhone(DesensitizedUtil.desensitizedPhoneNumber(user.getPhone()));
+//		user.setName(DesensitizedUtil.desensitizedName(user.getName()));
+//		user.setRealName(DesensitizedUtil.desensitizedName(user.getRealName()));
+
+
+		Integer userCount = userService.selectCount(user.getAccount());
+		if (userCount > 0 && Func.isEmpty(user.getId())) {
+			throw new ServiceException(StringUtil.format("当前用户 [{}] 已存在!", user.getAccount()));
+		}
+
+		//密码加密
+		if (Func.isNotEmpty(user.getPassword())) {
+			user.setPassword(DigestUtil.encrypt(user.getPassword()));
+		}
+		user.setTenantId("000000");
+		//用户新增
+		boolean status = userService.save(user);
+
+		//头像
+//		if (null!=user.getAvatar() && !user.getAvatar().equals("")) {
+//			user.setAvatar(FtpConfig.ip + user.getAvatar().substring(26));
+//		}
+//
+//		String s = "insert into blade_user(id,tenant_id,account,password,name,real_name,avatar,email,phone,sex,role_id,dept_id,cardid," +
+//			"jurisdiction,examination_type,status,is_deleted) " +
+//			"values(" + "'" + user.getId() + "'" + "," + "'" + user.getTenantId() + "'" + "," + "'" + user.getAccount() + "'" + "," +
+//			"'" + user.getPassword() + "'" + "," + "'" + user.getName() + "'" + "," + "'" + user.getRealName() + "'" + "," + "'" + user.getAvatar() + "'" + "," +
+//			"'" + user.getEmail() + "'" + "," + "'" + user.getPhone() + "'" + "," + "'" + user.getSex() + "'" + "," + "'" + user.getRoleId() + "'" +
+//			"," + "'" + user.getDeptId() + "'" +
+//			"," + "'" + user.getCardid() + "'" +
+//			"," + "'" + user.getJurisdiction() + "'" +
+//			"," + "'" + user.getExamination_type() + "'" +
+//			"," + "'" + user.getStatus() + "'" +
+//			"," + "'" + user.getIsDeleted() + "'" + ")";
+//		System.out.println(s);
+//		FtpUtil.sqlFileUpload(s);
+		return R.status(status);
+	}
+
+
+	/**
+	 * 保安员新增(数据同步调用)
+	 */
+	@PostMapping("/securitySaves")
+	@Transactional(rollbackFor = Exception.class)
+	public R securitySaves(@RequestBody User user) {
+//		Integer userCount = userService.selectCount(user.getAccount());
+//		//判断用户是否存在
+//		if (userCount > 0) {
+//			throw new ServiceException(StringUtil.format("当前用户 [{}] 已存在!", user.getAccount()));
+//		}
+		user.setRoleId("1495714343888039937");
+		user.setDeptId("1424615972718895106");
+		user.setStype("1");
+		user.setId(null);
+		//用户新增
+		boolean status = userService.save(user);
+		//返回
+		return R.status(status);
+	}
+
+	/**
+	 * 保安员修改(数据同步调用)
+	 */
+	@PostMapping("/updateBySecurtiy")
+	@Transactional(rollbackFor = Exception.class)
+	public R updateBySecurtiy(@RequestBody User user) {
+		User user1 = new User();
+		user1.setIsDeleted(0);
+		user1.setStatus(1);
+//		user1.setCardid(user.getCardid());
+		user1.setSecurityId(user.getSecurityId());
+		User one = userService.getOne(Condition.getQueryWrapper(user1));
+		boolean status = false;
+		if (null!=one){
+			one.setRealName(user.getRealName());
+			one.setAvatar(user.getAvatar());
+			one.setPhone(user.getPhone());
+			one.setExamination_type(user.getExamination_type());
+			one.setStatus(user.getStatus());
+			one.setUpdateTime(new Date());
+			//修改
+			status = userService.updateById(one);
+		}
+		//返回
+		return R.status(status);
+	}
+
+	/**
+	 * 保安员信息修改(账号,身份证,密码 修改)
+	 */
+	@PostMapping("/updateUserByAccount")
+	@Transactional(rollbackFor = Exception.class)
+	public R updateUserByAccount(@RequestBody UserDTO user) {
+		User user1 = new User();
+		user1.setIsDeleted(0);
+		user1.setStatus(1);
+		user1.setSecurityId(user.getSecurityId());
+//		user1.setCardid(user.getOldCardid());
+		User one = userService.getOne(Condition.getQueryWrapper(user1));
+		boolean status = false;
+		if (null!=one){
+			//修改
+			if (null!= user.getAccount()) {
+				one.setAccount(user.getAccount());
+			}
+			if (null!= user.getCardid()) {
+				one.setCardid(user.getCardid());
+			}
+			if (null!= user.getPassword()) {
+				one.setPassword(user.getPassword());
+			}
+			if (null!= user.getPhone()) {
+				one.setPhone(user.getPhone());
+			}
+			if (null!= user.getRealName()) {
+				one.setRealName(user.getRealName());
+			}
+			one.setUpdateTime(new Date());
+			//用户修改
+		    status = userService.updateById(one);
+		}else {
+			User user2 = new User();
+			//如果没有,则插入一条
+			if (null!= user.getAccount()) {
+				user2.setAccount(user.getAccount());
+			}
+			if (null!= user.getCardid()) {
+				user2.setCardid(user.getCardid());
+			}
+			if (null!= user.getPassword()) {
+				user2.setPassword(user.getPassword());
+			}
+			if (null!= user.getPhone()) {
+				user2.setPhone(user.getPhone());
+			}
+			if (null!= user.getRealName()) {
+				user2.setRealName(user.getRealName());
+			}
+			if (null!= user.getSex()) {
+				user2.setSex(user.getSex());
+			}
+			user2.setStatus(1);
+			user2.setIsDeleted(0);
+			user2.setRoleId("1495714343888039937");
+			user2.setDeptId("1424615972718895106");
+			user2.setStype("1");
+			user2.setTenantId("000000");
+			user2.setCreateTime(new Date());
+			user2.setUpdateTime(new Date());
+			user2.setSecurityId(user.getSecurityId());
+			user2.setId(null);
+			//新增
+			status = userService.save(user2);
+		}
+		//返回
+		return R.status(status);
+	}
+
+	/**
+	 * 同步删除
+	 */
+	@PostMapping("/removeSecurity")
+	@Transactional(rollbackFor = Exception.class)
+	public R removeSecurity(@RequestBody User user) {
+		System.out.println("保安员开始删除 = " + user);
+		User user1 = new User();
+		user1.setIsDeleted(0);
+		user1.setStatus(1);
+		user1.setSecurityId(user.getId().toString());
+//		user1.setCardid(user.getCardid());
+		User one = userService.getOne(Condition.getQueryWrapper(user1));
+		boolean status = false;
+		if (null!=one){
+			System.out.println("查询到保安员 = " + one);
+			//用户修改
+			status = userService.removeById(one.getId());
+			System.out.println("保安员删除状态: = " + status);
+		}
+		//返回
+		return R.status(status);
+	}
+
+	/**
+	 * 人员统计
+	 */
+	@GetMapping("/userCount")
+	public R cancelTask(String xid,String index) {
+		List<UserRegisterStatisVO> cout =  userService.getUserTypeCountXq(xid);
+		List<UserVO> list =  userService.getUserTypeList(xid,index);
+		Map<String,Object> res = new HashMap<>();
+		res.put("cout",cout);
+		res.put("list",list);
+		return R.data(res);
+	}
+
+	/**
+	 * 首次登录发送祝贺信
+	 */
+	@GetMapping("/firstLogin")
+	public R firstLogin(String id) {
+		return R.status(userService.firstLogin(id));
+	}
+
+
+	/**
+	 * 清除无效编号
+	 */
+	@GetMapping("/clearPaper")
+	public void clearPaper() {
+		//修改符合条件的用户信息
+		String s0 ="update blade_user set securitynumber = '',hold = '2' where securitynumber like concat('%','赣洪2022','%') and right(securitynumber,5) >2000";
+		FtpUtil.sqlFileClear(s0);
+
+		//修改符合条件的编号信息
+		String s1 ="delete from sys_security_paper where number like concat('%','赣洪2022','%') and right(number,5) >2000";
+		FtpUtil.sqlFileClear(s1);
+	}
 }
+

--
Gitblit v1.9.3