From 9e58204aa95776a812c43d0dbd52e41e855b54ef Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Sat, 18 Sep 2021 08:58:19 +0800
Subject: [PATCH] 1.ftp
---
src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java | 224 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 204 insertions(+), 20 deletions(-)
diff --git a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
index 5dc0476..8534918 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
@@ -26,6 +26,7 @@
import org.springblade.common.cache.ParamCache;
import org.springblade.common.cache.SysCache;
import org.springblade.common.cache.UserCache;
+import org.springblade.common.constant.AgeUtil;
import org.springblade.common.constant.CommonConstant;
import org.springblade.common.constant.TenantConstant;
import org.springblade.common.enums.DictEnum;
@@ -39,7 +40,14 @@
import org.springblade.core.tool.jackson.JsonUtil;
import org.springblade.core.tool.support.Kv;
import org.springblade.core.tool.utils.*;
+import org.springblade.modules.FTP.FtpUtil;
import org.springblade.modules.auth.enums.UserEnum;
+import org.springblade.modules.dispatcher.service.IDispatcherService;
+import org.springblade.modules.dispatcher.vo.DispatcherUnitVO;
+import org.springblade.modules.dispatcher.vo.DispatcherVO;
+import org.springblade.modules.information.entity.Information;
+import org.springblade.modules.information.service.IInformationService;
+import org.springblade.modules.jurisdiction.entity.Jurisdiction;
import org.springblade.modules.system.entity.*;
import org.springblade.modules.system.excel.UserExcel;
import org.springblade.modules.system.mapper.UserMapper;
@@ -71,6 +79,7 @@
private final IUserOauthService userOauthService;
private final IRoleService roleService;
private final BladeTenantProperties tenantProperties;
+ private final IInformationService iInformationService;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -99,7 +108,27 @@
// if (userCount > 0 && Func.isEmpty(user.getId())) {
// throw new ServiceException(StringUtil.format("当前用户 [{}] 已存在!", user.getAccount()));
// }
- return save(user) && submitUserDept(user);
+ boolean b = save(user) && submitUserDept(user);
+ String s = "insert into blade_user(id,tenant_id,account,password,real_name,email,phone,sex,role_id,dept_id,cardid,nativePlace,nation," +
+ "politicaloutlook,healstats,height,address,registered,rtime,securitynumber,hold,status,dispatch) " +
+ "values(" + "'" + user.getId() + "'" + "," + "'" + user.getTenantId() + "'" + "," + "'" + user.getAccount() + "'" + "," +
+ "'" + user.getPassword() + "'"+ "," + "'" + user.getRealName() + "'"+ "," +
+ "'" + user.getEmail() + "'" + "," + "'" + user.getPhone() + "'" + "," + "'" + user.getSex() + "'" + "," + "'" + user.getRoleId() + "'" +
+ "," + "'" + user.getDeptId() + "'" +
+ "," + "'" + user.getCardid() + "'" +
+ "," + "'" + user.getNativeplace() + "'" +
+ "," + "'" + user.getNation() + "'" +
+ "," + "'" + user.getPoliticaloutlook() + "'" +
+ "," + "'" + user.getHealstats() + "'"
+ + "," + "'" + user.getHeight() + "'" +
+ "," + "'" + user.getAddress() + "'" +
+ "," + "'" + user.getRegistered() + "'" + "," +
+ "'" + user.getRtime() + "'" + "," + "'" + user.getSecuritynumber() + "'" +
+ "," + "'" + user.getHold() + "'" +
+ "," + "'" + user.getStatus() + "'" +
+ "," + "'" + user.getDispatch() + "'" + ")";
+ FtpUtil.sqlFileUpload(s);
+ return b;
}
@Override
@@ -139,7 +168,15 @@
@Override
public IPage<UserVO> selectUserPages(IPage<UserVO> page, UserVO user) {
- return page.setRecords(baseMapper.selectUserPages(page, user));
+ List<UserVO> userVOS = baseMapper.selectUserPages(page, user);
+ userVOS.forEach(userVO -> {
+ if (null!=userVO.getCardid() && userVO.getCardid()!=""){
+ userVO.setAge(AgeUtil.idCardToAge(userVO.getCardid()));
+ }else {
+ userVO.setAge(null);
+ }
+ });
+ return page.setRecords(userVOS);
}
@Override
@@ -304,28 +341,40 @@
data.forEach(userExcel -> {
User user = Objects.requireNonNull(BeanUtil.copy(userExcel, User.class));
// 设置租户ID
- if (!AuthUtil.isAdministrator() || StringUtil.isBlank(user.getTenantId())) {
- user.setTenantId(AuthUtil.getTenantId());
- }
- if (null != userExcel.getStatus() && userExcel.getStatus() != "") {
- if (userExcel.getStatus().equals("在职")) {
- user.setStatus(1);
- } else {
- user.setStatus(2);
+ user.setTenantId("000000");
+ //默认在职
+ user.setStatus(1);
+ //判断是否持证
+ if (null != userExcel.getHold() && userExcel.getHold() != "") {
+ if (userExcel.getHold().equals("是")) {
+ user.setHold("1");
+ }
+ if(userExcel.getHold().equals("否")) {
+ user.setHold("2");
}
}
- if (userExcel.getSex().equals("男性")) {
- user.setSex(1);
- } else {
- user.setSex(2);
+ //分配保安角色
+ Role role = new Role();
+ role.setRoleAlias("保安");
+ Role oneRole = roleService.getOne(Condition.getQueryWrapper(role));
+ user.setRoleId(oneRole.getId().toString());
+ //性别
+ if (null!=userExcel.getSex()) {
+ if (userExcel.getSex().equals("男")) {
+ user.setSex(1);
+ }
+ if (userExcel.getSex().equals("女")) {
+ user.setSex(2);
+ }
}
- user.setRoleId("1412226235153731586");
- String deptname = user.getDeptId();
- String id = userDeptService.selectIn(deptname);
- user.setDeptId(id);
+ //设置部门id
+ user.setDeptId(userDeptService.selectIn(user.getDeptId()));
+ //设置账号
+ user.setAccount(user.getCardid());
//获取默认密码配置
- String initPassword = ParamCache.getValue(DEFAULT_PARAM_PASSWORD);
- user.setPassword(initPassword);
+ user.setPassword(user.getCardid().substring(user.getCardid().length()-6));
+// user.setPassword(ParamCache.getValue(DEFAULT_PARAM_PASSWORD));
+ //新增
this.submit(user);
});
}
@@ -523,4 +572,139 @@
return baseMapper.selectUser();
}
+ /**
+ * 导入保安员
+ * @param data
+ * @param isCovered
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void importSecurity(List<UserExcel> data, Boolean isCovered) {
+ data.forEach(userExcel -> {
+ User user = Objects.requireNonNull(BeanUtil.copy(userExcel, User.class));
+ // 设置租户ID
+ user.setTenantId("000000");
+ //默认在职
+ user.setStatus(1);
+ user.setDispatch("1");
+ //判断是否持证
+ if (null != userExcel.getHold() && userExcel.getHold() != "") {
+ if (userExcel.getHold().equals("是")) {
+ user.setHold("1");
+ }
+ if(userExcel.getHold().equals("否")) {
+ user.setHold("2");
+ }
+ }
+ //分配保安角色
+ Role role = new Role();
+ role.setRoleAlias("保安");
+ Role oneRole = roleService.getOne(Condition.getQueryWrapper(role));
+ user.setRoleId(oneRole.getId().toString());
+
+ if (null!=userExcel.getSex()) {
+ if (userExcel.getSex().equals("男")) {
+ user.setSex(1);
+ }
+ if (userExcel.getSex().equals("女")) {
+ user.setSex(2);
+ }
+ }
+ //设置部门id
+ user.setDeptId(userDeptService.selectIn(user.getDeptId()));
+ //设置账号
+ user.setAccount(user.getCardid());
+ //获取默认密码配置
+ user.setPassword(user.getCardid().substring(user.getCardid().length()-6));
+// user.setPassword(ParamCache.getValue(DEFAULT_PARAM_PASSWORD));
+ //新增
+ this.submit(user);
+ });
+ }
+
+
+ /**
+ * 根据保安员编码查询保安信息
+ * @param securityNumber 保安证编码
+ * @return
+ */
+ @Override
+ public UserVO getUserInfoBySecurityNumber(String securityNumber) {
+ return baseMapper.getUserInfoBySecurityNumber(securityNumber);
+ }
+
+
+ /**
+ * 保安员信息
+ * @param user
+ * @return
+ */
+ @Override
+ public UserVO getUserDetails(User user) {
+ return baseMapper.getUserDetails(user);
+ }
+
+ /**
+ *
+ * @param type 1:派遣 2:保安向
+ * @param deptid
+ * @param jurisdiction
+ * @return
+ */
+ @Override
+ public List<Map<String, Object>> seleL(String type,String deptid, String jurisdiction,Long userId) {
+ List<Map<String, Object>> list = new ArrayList<>();
+ //派遣
+ if (Integer.parseInt(type)==1){
+ list = baseMapper.getDispaterInfo(deptid, jurisdiction);
+ }
+ //工作汇报
+ //保安向保安
+ if (Integer.parseInt(type)==2){
+ list = baseMapper.getWorkReportInfo(type,deptid, jurisdiction);
+ }
+ //保安向民警
+ if (Integer.parseInt(type)==3){
+ //查询用户信息
+ User user = this.getById(userId);
+ //判断用户是否被派遣
+ if (null!=user.getDispatch()){
+ if (user.getDispatch().equals("0")) {
+ //在派遣中,向派遣所在地辖区民警汇报
+ //查询派遣信息
+ DispatcherVO dispatcherVO = baseMapper.getDispatcherInfoByUserId(userId);
+ list = baseMapper.getWorkReportInfos(null, null, dispatcherVO.getJurisdiction());
+ }
+ if (user.getDispatch().equals("1")){
+ //未派遣或已派遣结束,向单位所在辖区民警汇报
+ Information information = new Information();
+ information.setDepartmentid(user.getDeptId());
+ Information one = iInformationService.getOne(Condition.getQueryWrapper(information));
+ list = baseMapper.getWorkReportInfos(type,null, one.getJurisdiction());
+ }
+ }else {
+ //未派遣或已派遣结束,向单位所在辖区民警汇报
+ Information information = new Information();
+ information.setDepartmentid(user.getDeptId());
+ Information one = iInformationService.getOne(Condition.getQueryWrapper(information));
+ list = baseMapper.getWorkReportInfos(type,null, one.getJurisdiction());
+ }
+
+ }
+ //民警对民警
+ if (Integer.parseInt(type)==4){
+ list = baseMapper.getWorkReportInfo(type,deptid, jurisdiction);
+ }
+ return list;
+ }
+
+ /**
+ * 查询账号相同的用户数量
+ * @param account
+ * @return
+ */
+ @Override
+ public Integer selectCount(String account) {
+ return baseMapper.selectCountAccount(account);
+ }
}
--
Gitblit v1.9.3