From 63ea601aa950e88237728bf183e30268a3af8616 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Tue, 12 Jul 2022 10:22:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/main/java/org/springblade/modules/system/controller/UserController.java | 588 ++++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 501 insertions(+), 87 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 b3f262a..5fd639c 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -33,16 +33,14 @@
import lombok.AllArgsConstructor;
import net.sf.json.JSONObject;
import org.apache.commons.codec.Charsets;
+import org.apache.commons.lang3.StringUtils;
import org.springblade.common.cache.DictCache;
import org.springblade.common.config.FtpConfig;
import org.springblade.common.enums.DictEnum;
import org.springblade.common.excel.CustomCellWriteHeightConfig;
import org.springblade.common.excel.CustomCellWriteWeightConfig;
import org.springblade.common.excel.RowWriteHandler;
-import org.springblade.common.utils.HttpClientUtils;
-import org.springblade.common.utils.HttpReqUtil;
-import org.springblade.common.utils.ImageUtils;
-import org.springblade.common.utils.arg;
+import org.springblade.common.utils.*;
import org.springblade.core.cache.utils.CacheUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.launch.constant.AppConstant;
@@ -107,11 +105,13 @@
import java.security.NoSuchAlgorithmException;
import java.text.SimpleDateFormat;
import java.util.*;
+import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.Collectors;
import static org.springblade.common.config.FtpConfig.*;
import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE;
import static org.springblade.core.cache.constant.CacheConstant.USER_CACHE;
+import static org.springblade.modules.FTP.DataHandler.handlerUserInfo;
/**
* 控制器
@@ -229,20 +229,37 @@
//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
public R submit(@Valid @RequestBody User user) {
if (null == user.getId()) {
- //新增
- //密码加密
- if (Func.isNotEmpty(user.getPassword())) {
- user.setPassword(DigestUtil.encrypt(user.getPassword()));
- }
Integer userCount = userService.selectCountAccount(user.getAccount());
if (userCount > 0) {
throw new org.springblade.core.log.exception.ServiceException(StringUtil.format("当前用户 [{}] 已存在!", user.getAccount()));
}
+ //判断角色
+ if(user.getRoleId().equals("1412226235153731586")){
+ //如果是保安员,默认为无证
+ user.setHold("2");
+ }
user.setTenantId("000000");
+ user.setDispatch("1");
+ //待审查
+ user.setExaminationType("2");
+// String realName = user.getRealName();
+// String cardid = user.getCardid();
+//// user.setAccount(user.getRealName());
+// user.setAccount(realName.substring(0,1)+cardid.substring(cardid.length()-4));
+ //默认在职
user.setStatus(1);
user.setIsDeleted(0);
user.setCreateTime(new Date());
user.setUpdateTime(new Date());
+
+ //密码加密
+ if (Func.isNotEmpty(user.getCardid())) {
+ //取身份证号码后6位作为密码
+ user.setPassword(DigestUtil.encrypt(user.getCardid().substring(user.getCardid().length() - 6)));
+ }
+ user.setCreateTime(new Date());
+ user.setTenantId("000000");
+
//判断是否为民警 code
if (null != user.getCode() && !user.getCode().equals("")) {
//民警
@@ -254,32 +271,73 @@
Jurisdiction one = jurisdictionService.getOne(Condition.getQueryWrapper(jurisdiction));
user.setJurisdiction(one.getId().toString());
}
- //新增
- boolean stats = userService.save(user);
- if (stats) {
- //内网同步
- String s = "insert into blade_user(" +
- "id,tenant_id,code,account,password,real_name,phone,sex,role_id,dept_id," +
- "create_time,update_time,cardid,status,is_deleted,jurisdiction) " +
- "values(" + "'" + user.getId() + "'" + "," +
- "'" + user.getTenantId() + "'" + "," +
- "'" + user.getCode() + "'" + "," +
- "'" + user.getAccount() + "'" + "," +
- "'" + user.getPassword() + "'" + "," +
- "'" + user.getRealName() + "'" + "," +
- "'" + user.getPhone() + "'" + "," +
- "'" + user.getSex() + "'" + "," +
- "'" + user.getRoleId() + "'" +
- "," + "'" + user.getDeptId() + "'" +
- "," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getCreateTime()) + "'" +
- "," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "'" +
- "," + "'" + user.getCardid() + "'" +
- "," + "'" + user.getStatus() + "'" +
- "," + "'" + user.getIsDeleted() + "'" +
- "," + "'" + user.getJurisdiction() + "'"
- + ")";
- myAsyncService.FTP(s);
+ //用户新增
+// boolean status = userService.save(user);
+
+
+ User user1 = Objects.requireNonNull(BeanUtil.copy(user,User.class));
+
+ //生成随机数
+ String uuid = UUID.randomUUID().toString();
+ //将 user 存入 redis
+ redisTemplate.opsForValue().set(uuid,JSON.toJSONString(user));
+ //user1 临时设置uuid 到 reason_for_leav 离职原因字段
+ user1.setReasonForLeav(uuid);
+
+ //数据推送
+ Map<String, Object> map = new HashMap<>(1);
+ map.put("user",user1);
+ myAsyncService.FTPObject(map);
+
+ int count = 0;
+ int flag = 1;
+ Result result = new Result();
+ //调用ftp获取返回数据
+ while (true){
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ //调用ftp获取返回数据
+ result = Monitor.isFTPFileExist(uuid);
+ //如果返回true,就退处
+ if (result.getCode()==200){
+ flag = 1;
+ break;
+ }else if (result.getCode()==201){
+ flag = 2;
+ break;
+ }else if (result.getCode()==202){
+ flag = 3;
+ break;
+ }else if (result.getCode()==203){
+ flag = 4;
+ break;
+ }else{
+ //计数
+ count++;
+ //如果超过10s 没有读取到,则退出
+ if (count == 60) {
+ System.out.println("等待超时.....................");
+ break;
+ }
+ }
}
+ if (flag==1 || flag==2) {
+ //返回
+ return R.data(200, null, "新增成功!");
+ }else if (flag==3){
+ throw new ServiceException(result.getMsg());
+ }else if (flag==4){
+// return R.data(201, null, "保安证编号不匹配,请核实!也可通过提供保安证件信息提交核实申请!");
+ return R.data(201, null, "保安证编号不匹配,请核实!");
+ }else{
+ //返回
+ return R.data(400, null, "新增失败!");
+ }
+
+
} else {
//修改
User user1 = userService.getById(user.getId());
@@ -306,6 +364,93 @@
//返回
return R.success("成功");
}
+
+ /**
+// * 新增或修改
+// */
+// @PostMapping("/submit")
+// @ApiOperationSupport(order = 4)
+// @ApiOperation(value = "新增或修改", notes = "传入User")
+// //@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+// public R submit(@Valid @RequestBody User user) {
+// if (null == user.getId()) {
+// //新增
+// //密码加密
+// if (Func.isNotEmpty(user.getPassword())) {
+// user.setPassword(DigestUtil.encrypt(user.getPassword()));
+// }
+// Integer userCount = userService.selectCountAccount(user.getAccount());
+// if (userCount > 0) {
+// throw new org.springblade.core.log.exception.ServiceException(StringUtil.format("当前用户 [{}] 已存在!", user.getAccount()));
+// }
+// user.setTenantId("000000");
+// user.setStatus(1);
+// user.setIsDeleted(0);
+// user.setCreateTime(new Date());
+// user.setUpdateTime(new Date());
+// //判断是否为民警 code
+// if (null != user.getCode() && !user.getCode().equals("")) {
+// //民警
+// //根据 deptId 查询dept信息,公安管理员
+// Dept dept = iDeptService.getById(user.getDeptId());
+// //获取辖区的数据
+// Jurisdiction jurisdiction = new Jurisdiction();
+// jurisdiction.setDeptName(dept.getDeptName());
+// Jurisdiction one = jurisdictionService.getOne(Condition.getQueryWrapper(jurisdiction));
+// user.setJurisdiction(one.getId().toString());
+// }
+// //新增
+// boolean stats = userService.save(user);
+// if (stats) {
+// //内网同步
+// String s = "insert into blade_user(" +
+// "id,tenant_id,code,account,password,real_name,phone,sex,role_id,dept_id," +
+// "create_time,update_time,cardid,status,is_deleted,jurisdiction) " +
+// "values(" + "'" + user.getId() + "'" + "," +
+// "'" + user.getTenantId() + "'" + "," +
+// "'" + user.getCode() + "'" + "," +
+// "'" + user.getAccount() + "'" + "," +
+// "'" + user.getPassword() + "'" + "," +
+// "'" + user.getRealName() + "'" + "," +
+// "'" + user.getPhone() + "'" + "," +
+// "'" + user.getSex() + "'" + "," +
+// "'" + user.getRoleId() + "'" +
+// "," + "'" + user.getDeptId() + "'" +
+// "," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getCreateTime()) + "'" +
+// "," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "'" +
+// "," + "'" + user.getCardid() + "'" +
+// "," + "'" + user.getStatus() + "'" +
+// "," + "'" + user.getIsDeleted() + "'" +
+// "," + "'" + user.getJurisdiction() + "'"
+// + ")";
+// myAsyncService.FTP(s);
+// }
+// } else {
+// //修改
+// User user1 = userService.getById(user.getId());
+// user.setPassword(user1.getPassword());
+// user.setUpdateTime(new Date());
+// boolean b = userService.updateById(user);
+// if (b) {
+// String s1 =
+// "update blade_user set account = " + "'" + user.getAccount() + "'"
+// + ",code = " + "'" + user.getCode() + "'"
+// + ",real_name = " + "'" + user.getRealName() + "'"
+// + ",phone = " + "'" + user.getPhone() + "'"
+// + ",sex = " + "'" + user.getSex() + "'"
+// + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()) + "'"
+// + ",role_id = " + "'" + user.getRoleId() + "'"
+// + ",dept_id = " + "'" + user.getDeptId() + "'"
+// + ",cardid = " + "'" + user.getCardid() + "'"
+// + ",guncode = " + "'" + user.getGuncode() + "'"
+// + " " + "where id = " + "'" + user.getId() + "'";
+// myAsyncService.FTP(s1);
+// }
+// }
+//
+// //返回
+// return R.success("成功");
+// }
/**
* 修改
@@ -438,7 +583,10 @@
boolean status = userService.updateById(user);
//qfqk 数据推送
if (status) {
- myAsyncService.updateUserByQfqk(user);
+ User user2 = new User();
+ user2.setId(user.getId());
+ //删除
+ myAsyncService.deleteUserByQfqk(user2);
//内网更新
String s1 =
"update blade_user set status = " + "'" + user.getStatus() + "'"
@@ -572,6 +720,168 @@
return R.data(200,null,"修改成功!");
}
+ /**
+ * 修改保安员信息
+ */
+ @PostMapping("/updateSecurityInfo")
+ public R updateSecurityInfo(@RequestBody User user) throws Exception {
+ User user1 = userService.getById(user.getId());
+ user.setId(user1.getId());
+ user.setUpdateTime(new Date());
+ user.setPassword(user1.getPassword());
+ //创建更新的字符串
+ StringBuilder builder = new StringBuilder();
+ builder.append("update blade-user set update_time = "+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getUpdateTime()));
+
+ //姓名
+ if (null != user.getRealName() && !user.getRealName().equals("")) {
+ builder.append(",set real_name = "+user.getRealName());
+ }
+
+ int state = 1;
+ //身份证号码
+ if (null != user.getCardid() && !user.getCardid().equals("")) {
+ //身份证号校验
+ //去除所有空格
+ String cardid = user.getCardid().replaceAll(" ", "");
+ //校验
+ boolean b = IdCardNoUtil.checkIdCardNo(cardid);
+ if(b){
+ user.setCardid(cardid);
+ //账号,密码也修改
+ user.setAccount(user1.getRealName().substring(0,1)+cardid.substring(cardid.length()-4));
+ //获取默认密码配置
+ user.setPassword(user.getCardid().substring(user.getCardid().length() - 6));
+ //加密
+ if (Func.isNotEmpty(user.getPassword())) {
+ user.setPassword(DigestUtil.encrypt(user.getPassword()));
+ }
+ state = 2;
+ builder.append(",set account = "+user.getAccount()+",set cardid = "+user.getCardid()+",set password = "+user.getPassword());
+ }else {
+ throw new ServiceException("导入失败!身份证号码[ "+user.getCardid()+" ]不正确,请核对!");
+ }
+ }
+ //手机号
+ if (null != user.getPhone() && !user.getPhone().equals("")) {
+ builder.append(",set phone = "+user.getPhone());
+ }
+ //指纹url 处理
+ String url = "";
+ if (null != user.getFingerprint() && !user.getFingerprint().equals("")) {
+ if (user.getFingerprint().length() > 100) {
+ //指纹图片上传并返回url
+ String s = uploadBase64String(user);
+ String[] split = s.split(",");
+ user.setFingerprint(split[0]);
+ //内网指纹图片url
+ url = split[1];
+ builder.append(",set fingerprint = "+url);
+ }
+ }
+ //头像
+ if (null != user.getAvatar() && !user.getAvatar().equals("")) {
+ String avatar = FtpConfig.ip +"/"+ user.getAvatar().substring(26);
+ System.out.println("头像上传 url = " + avatar);
+ builder.append(",set fingerprint = "+avatar);
+ }
+
+ //名族
+ if (null != user.getNation() && !user.getNation().equals("")) {
+ builder.append(",set nation = "+user.getNation());
+ }
+ //学历
+ if (null != user.getEducation() && !user.getEducation().equals("")) {
+ builder.append(",set education = "+user.getEducation());
+ }
+ //政治面貌
+ if (null != user.getPoliticaloutlook() && !user.getPoliticaloutlook().equals("")) {
+ builder.append(",set politicaloutlook = "+user.getPoliticaloutlook());
+ }
+ //健康状态
+ if (null != user.getHealstats() && !user.getHealstats().equals("")) {
+ builder.append(",set healstats = "+user.getHealstats());
+ }
+ //身高
+ if (null != user.getHeight() && !user.getHeight().equals("")) {
+ builder.append(",set height = "+user.getHeight());
+ }
+ //联系地址
+ if (null != user.getAddress() && !user.getAddress().equals("")) {
+ builder.append(",set address = "+user.getAddress());
+ }
+ //身份证地址
+ if (null != user.getRegistered() && !user.getRegistered().equals("")) {
+ builder.append(",set registered = "+user.getRegistered());
+ }
+
+ //修改
+// boolean status = userService.updateById(user);
+ boolean status = userService.update(user, Wrappers.<User>update().lambda().in(User::getId,user.getId()));
+
+ if (status) {
+ if (state == 2) {
+ UserDTO userDTO = new UserDTO();
+ userDTO.setAccount(user.getAccount());
+ userDTO.setCardid(user.getCardid());
+ userDTO.setOldCardid(user1.getCardid());
+ userDTO.setPassword(user.getPassword());
+ userDTO.setRealName(user.getRealName());
+ userDTO.setPhone(user.getPhone());
+ userDTO.setSex(user.getSex());
+ userDTO.setAvatar(user.getAvatar());
+ //推送qfqk
+ myAsyncService.updateUserByAccount(userDTO);
+ } else {
+ myAsyncService.updateUserByQfqk(user);
+ }
+ }
+ //拼接最终的sql
+ String sql = builder.append(" where id = " + user.getId()).toString();
+ myAsyncService.FTP(sql);
+ //返回
+ return R.data(200,null,"修改成功!");
+ }
+
+ /**
+ * 账号修改
+ * @param user
+ * @return
+ */
+ @PostMapping("/update_account")
+ public R updataAccount(@RequestBody User user){
+ boolean status = false;
+ //校验账户是否重复
+ User user1 = new User();
+ user1.setIsDeleted(0);
+ user1.setStatus(1);
+ user1.setAccount(user.getAccount());
+ List<User> list = userService.list(new QueryWrapper<>(user1));
+ if (list.size()>0){
+ throw new ServiceException("账号:["+user.getAccount()+"]已存在!");
+ }
+ //如果不重复,则进行修改操作
+ //更新用户账户信息
+ status = userService.update(user, Wrappers.<User>update().lambda().in(User::getId,user.getId()));
+// status = userService.updateById(user);
+ if (status){
+ System.out.println("user = " + user);
+ User user2 = userService.getById(user.getId());
+ UserDTO userDTO = new UserDTO();
+ userDTO.setAccount(user.getAccount());
+ userDTO.setPassword(user2.getPassword());
+ userDTO.setSecurityId(user2.getId().toString());
+ userDTO.setRealName(user1.getRealName());
+ userDTO.setPhone(user2.getPhone());
+ userDTO.setCardid(user2.getCardid());
+ userDTO.setSex(user1.getSex());
+ //异步修改群防群控
+ myAsyncService.updateUserByAccount(userDTO);
+ }
+ //返回
+ return R.status(status);
+ }
+
/**
* 修改
@@ -679,7 +989,7 @@
minioClient.makeBucket(MakeBucketArgs.builder().bucket(bucket).build());
minioClient.setBucketPolicy(SetBucketPolicyArgs.builder().bucket(bucket).build());
}
- String newName = "upload/picture/" + UUID.randomUUID().toString().replaceAll("-", "") + ".jpg";
+ String newName = "upload/picture/f" + UUID.randomUUID().toString().replaceAll("-", "") + ".jpg";
InputStream in = new ByteArrayInputStream(b);
String[] split = newName.split("/");
//创建头部信息
@@ -777,7 +1087,7 @@
User user = userService.getById(id);
User user1 = new User();
user1.setId(user.getId());
- user1.setCardid(user.getCardid());
+// user1.setCardid(user.getCardid());
user1.setIsDeleted(1);
//qfqk 同步
myAsyncService.deleteUserByQfqk(user1);
@@ -1343,7 +1653,7 @@
"values(" + "'" + experience.getId() + "'" + "," +
"'" + experience.getName() + "'" + "," +
"'" + experience.getPost() + "'" + "," +
- "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getEntrytime()) + "'" +
+ "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getEntrytime()) + "'" +
"," + "'" + experience.getCardid() + "'" +
"," + "'" + experience.getCompanyname() + "'" +
"," + "'" + experience.getSecurityid() + "'"
@@ -1392,7 +1702,10 @@
user.setDispatch("1");
//待审查
user.setExaminationType("2");
- user.setAccount(user.getRealName());
+ String realName = user.getRealName();
+ String cardid = user.getCardid();
+// user.setAccount(user.getRealName());
+ user.setAccount(realName.substring(0,1)+cardid.substring(cardid.length()-4));
user.setStatus(1);
//密码加密
@@ -1406,10 +1719,10 @@
// boolean status = userService.save(user);
- User user1 = user;
+ User user1 = Objects.requireNonNull(BeanUtil.copy(user,User.class));
//头像
if (null != user.getAvatar() && !user.getAvatar().equals("")) {
- user1.setAvatar(FtpConfig.ip + user.getAvatar().substring(26));
+ user1.setAvatar(FtpConfig.ip +"/"+ user.getAvatar().substring(26));
}
//指纹
String url = "";
@@ -1435,48 +1748,134 @@
map.put("user",user1);
myAsyncService.FTPObject(map);
- int count = 0;
- int flag = 1;
- Result result = new Result();
- //调用ftp获取返回数据
- while (true){
- Thread.sleep(1000);
- //调用ftp获取返回数据
- result = Monitor.isFTPFileExist(uuid);
- //如果返回true,就退处
- if (result.getCode()==200){
- flag = 1;
- break;
- }else if (result.getCode()==201){
- flag = 2;
- break;
- }else if (result.getCode()==202){
- flag = 3;
- break;
- }else if (result.getCode()==203){
- flag = 4;
- break;
- }else{
- //计数
- count++;
- //如果超过10s 没有读取到,则退出
- if (count == 30) {
- break;
- }
- }
- }
- if (flag==1 || flag==2) {
- //返回
- return R.data(200, null, "新增成功!");
- }else if (flag==3){
- throw new ServiceException(result.getMsg());
- }else if (flag==4){
-// return R.data(201, null, "保安证编号不匹配,请核实!也可通过提供保安证件信息提交核实申请!");
- return R.data(201, null, "保安证编号不匹配,请核实!");
- }else{
- //返回
- return R.data(400, null, "新增失败!");
- }
+// int count = 0;
+// int flag = 1;
+// Result result0 = new Result();
+// //调用ftp获取返回数据
+// while (true){
+// System.out.println("用户新增开始接收消息......................");
+// Thread.sleep(2000);
+// //调用ftp获取返回数据
+// result0 = Monitor.isFTPFileExist(uuid);
+// System.out.println("result0 ftp 返回结果 = " + result0);
+// //如果返回true,就退处
+// if (result0.getCode()==200){
+// break;
+// }else{
+// //计数
+// count++;
+// //如果超过60s 没有读取到,则退出
+// if (count == 20) {
+// break;
+// }
+// }
+// }
+//
+// //将不能导入的保安员账号存起来
+// List<String> errorList = new ArrayList<>();
+// //保安员证编号不符的保安员信息存入集合
+// List<String> securityInvalidList = new ArrayList<>();
+// //导入状态,默认为true ,如果有一个出现问题则为 false
+// AtomicBoolean status = new AtomicBoolean(true);
+// AtomicBoolean securityInvalidStatus = new AtomicBoolean(true);
+// if (null!=result0){
+// Result result = result0.getData().get(0);
+// //用户数处理
+// User users = handlerUserInfo(uuid);
+// System.out.println("用户数据处理---------------");
+// System.out.println("用户数据 = " + users);
+// //判断结果
+// if (result.getCode()==200){
+// //新增
+// users.setId(result.getUserId());
+// users.setStatus(1);
+// //插入数据库
+// boolean save = userService.save(users);
+// if (save){
+// //异步同步到群防群控
+// myAsyncService.qfqkUserSave(users);
+// }
+// }else if (result.getCode()==201) {
+// //修改
+// users.setId(result.getUserId());
+// //先查询当前库是否有改用户?
+// User user2 = userService.getById(result.getUserId());
+// if (null!=user2) {
+// //数据修改
+// boolean b = userService.updateById(users);
+// if (b) {
+// //异步同步到群防群控
+// myAsyncService.updateUserByQfqk(users);
+// }
+// }else {
+// //新增
+// boolean save = userService.save(users);
+// if (save){
+// //异步同步到群防群控
+// myAsyncService.qfqkUserSave(users);
+// }
+// }
+// }else if (result.getCode()==203){
+// //保安证编号不匹配,请核实!也可通过提供保安证件信息提交核实申请! 用户为新增
+// //新增
+// users.setId(result.getUserId());
+// //插入数据库
+// boolean save = userService.save(users);
+// if (save) {
+// //异步同步到群防群控
+// myAsyncService.qfqkUserSave(users);
+// }
+// securityInvalidStatus.set(false);
+// //保安证编号不匹配
+// securityInvalidList.add(user.getCardid());
+// }else if (result.getCode()==204){
+// //保安证编号不匹配,请核实!也可通过提供保安证件信息提交核实申请! 内网用户已存在情况
+// users.setId(result.getUserId());
+// //先查询当前库是否有改用户?
+// User user2 = userService.getById(result.getUserId());
+// //判断
+// if (null!=user2) {
+// //修改
+// //数据修改
+// boolean b = userService.updateById(users);
+// if (b){
+// //异步同步到群防群控
+// myAsyncService.updateUserByQfqk(users);
+// }
+// }else {
+// //新增
+// boolean save = userService.save(users);
+// if (save){
+// //异步同步到群防群控
+// myAsyncService.qfqkUserSave(users);
+// }
+// }
+// securityInvalidStatus.set(false);
+// //保安证编号不匹配
+// securityInvalidList.add(user.getCardid());
+// }else {
+// status.set(false);
+// //已在其他单位存在
+// errorList.add(user.getCardid());
+// }
+// }
+
+ //如果所有数据导入有一个异常
+// StringBuilder errorBuilder = new StringBuilder();
+// if (!status.get()){
+// String errorAccount = StringUtils.join(errorList, "\\\n");
+// errorBuilder.append("用户:[" + errorAccount + "]导入失败!已在其他单位存在!");
+// }
+// //抛出异常
+// if (errorBuilder.length()>0){
+// throw new org.springblade.core.log.exception.ServiceException(errorBuilder.toString());
+// }
+//
+// if (!securityInvalidStatus.get()){
+//// return R.data(201, null, "保安证编号不匹配,请核实!也可通过提供保安证件信息提交核实申请!");
+// return R.data(201, null, "保安证编号不匹配,请核实!");
+// }
+ return R.data(200, null, "新增成功!");
}
/**
@@ -1545,8 +1944,8 @@
//内网同步
String s = "insert into sys_experience(id,name,entryTime,departureTime,leaving,cardId,companyname,securityId) " +
- "values(" + "'" + experience.getId() + "'" + "," +
- "'" + experience.getName() + "'" + "," +
+ "values(" + "'" + experience.getId() + "'" +
+ "," + "'" + experience.getName() + "'" +
"," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getEntrytime()) + "'" +
"," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getDeparturetime()) + "'" +
"," + "'" + experience.getLeaving() + "'" +
@@ -1610,7 +2009,7 @@
*/
@GetMapping("export-security-info")
public void exportSecurityInfo(HttpServletResponse response, UserVO user) throws IOException {
- List<SecurityExcel> list = userService.exportSecurityInfo(user);
+ List<ExportSecurityExcel> list = userService.exportSecurityInfo(user);
String fileName = null;
try {
response.setContentType("application/vnd.ms-excel");
@@ -1618,7 +2017,7 @@
fileName = URLEncoder.encode("保安员数据导出" + DateUtil.time(), Charsets.UTF_8.name());
response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
//修改单元格格式为文本格式
- EasyExcel.write(response.getOutputStream(), SecurityExcel.class).sheet("保安员数据表").registerWriteHandler(new RowWriteHandler()).doWrite(list);
+ EasyExcel.write(response.getOutputStream(), ExportSecurityExcel.class).sheet("保安员数据表").registerWriteHandler(new RowWriteHandler()).doWrite(list);
} catch (Throwable var6) {
throw var6;
}
@@ -1676,4 +2075,19 @@
public R getNotUpdatePwdInfo() {
return R.data(userService.getNotUpdatePwdInfo());
}
+
+ /**
+ * 用户手动离职(用户数据未同步成功的)
+ * @param user
+ * @return
+ */
+ @GetMapping("/leave")
+ public void leave(User user){
+ user.setStatus(2);
+ String s1 =
+ "update blade_user set status = " + "'" + user.getStatus() + "'"
+ + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + "'"
+ + " " + "where cardid = " + "'" + user.getCardid() + "'";
+ myAsyncService.FTP(s1);
+ }
}
--
Gitblit v1.9.3