Commit b07b9d83 authored by 盖献康's avatar 盖献康

Merge remote-tracking branch 'origin/dev' into dev

parents 055c0596 cb16f965
......@@ -53,7 +53,6 @@ public class JieLinkInterController {
}
@CyOpeLogAnno(title = "jieLinkInter-同步设备信息", businessType = CyLogTypeEnum.INSERT)
@ApiOperation(value="捷顺对接集成", notes="同步设备信息")
@GetMapping(value = "/syncDeviceData")
public JieLinkResultDto syncDeviceData() {
......
......@@ -5,6 +5,7 @@ import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.RandomUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
......@@ -94,12 +95,12 @@ public class JieLinkServiceImpl implements IJieLinkService {
StringBuffer uriAddr = new StringBuffer();
uriAddr.append(jieLinkUri).append(apiUri);
try{
ResponseEntity<String> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, String.class);
ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, JSONObject.class);
if(HttpStatus.OK.value() ==responseEntity.getStatusCode().value()) {
log.debug("getAppKeyInfo接口返回信息:{0}",responseEntity.getBody());
JieLinkResultDto<List<AppInfoDto>> resultData = JSONObject.parseObject(responseEntity.getBody(), JieLinkResultDto.class);
if(StringUtils.equals(resultData.getCode(),"0")){
List<AppInfoDto> appInfoDtoList = resultData.getData();
log.debug("getAppKeyInfo接口返回信息:{0}",responseEntity.getBody().toJSONString());
JSONObject body = responseEntity.getBody();
if(StringUtils.equals(body.getString("code"),"0")){
List<AppInfoDto> appInfoDtoList = JSONArray.parseArray(body.getJSONArray("data").toJSONString(),AppInfoDto.class);
if(appInfoDtoList!=null && !appInfoDtoList.isEmpty()){
AppInfoDto appInfoDto = appInfoDtoList.get(0);
SignDto signData = new SignDto();
......@@ -112,13 +113,13 @@ public class JieLinkServiceImpl implements IJieLinkService {
}
}else{
log.error("getAppKeyInfo接口返回错误信息:"+resultData.getMsg());
log.error("getAppKeyInfo接口返回错误信息:"+body.getString("msg"));
//请求返回结果错误啦
return null;
}
}else{
//请求失败啦
log.error("getAppKeyInfo接口返回错误信息:{0}",responseEntity.getBody());
log.error("getAppKeyInfo接口请求失败");
return null;
}
}catch (Exception ex){
......@@ -141,11 +142,11 @@ public class JieLinkServiceImpl implements IJieLinkService {
HttpEntity<JieLinkPersonDto> httpEntity = new HttpEntity<>(pushData,headers);
StringBuffer uriAddr = new StringBuffer();
uriAddr.append(jieLinkUri).append(apiUri);
ResponseEntity<String> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, String.class);
ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, JSONObject.class);
try{
if(HttpStatus.OK.value() ==responseEntity.getStatusCode().value()) {
log.debug("pushAddUserData接口返回信息:{0}",responseEntity.getBody());
JieLinkResultDto<JieLinkPersonDto> resultData = JSONObject.parseObject(responseEntity.getBody(), JieLinkResultDto.class);
log.debug("pushAddUserData接口返回信息:{0}",responseEntity.getBody().toJSONString());
JieLinkResultDto<JieLinkPersonDto> resultData = JSONObject.toJavaObject(responseEntity.getBody(), JieLinkResultDto.class);
if(StringUtils.equals(resultData.getCode(),"0")){
JieLinkPersonDto persion = resultData.getData();
if(persion!=null){
......@@ -171,7 +172,7 @@ public class JieLinkServiceImpl implements IJieLinkService {
}
}else{
//请求失败啦
log.error("pushAddUserData接口返回错误信息:{0}",responseEntity.getBody());
log.error("pushAddUserData接口请求失败");
return false;
}
}catch (Exception ex){
......@@ -202,11 +203,11 @@ public class JieLinkServiceImpl implements IJieLinkService {
HttpEntity<JieLinkPersonDto> httpEntity = new HttpEntity<>(pushData,headers);
StringBuffer uriAddr = new StringBuffer();
uriAddr.append(jieLinkUri).append(apiUri);
ResponseEntity<String> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, String.class);
ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, JSONObject.class);
try{
if(HttpStatus.OK.value() ==responseEntity.getStatusCode().value()) {
log.debug("pushModifyUserData接口返回信息:{0}",responseEntity.getBody());
JieLinkResultDto<JieLinkPersonDto> resultData = JSONObject.parseObject(responseEntity.getBody(), JieLinkResultDto.class);
log.debug("pushModifyUserData接口返回信息:{0}",responseEntity.getBody().toJSONString());
JieLinkResultDto<JieLinkPersonDto> resultData = JSONObject.toJavaObject(responseEntity.getBody(), JieLinkResultDto.class);
if(StringUtils.equals(resultData.getCode(),"0")){
return true;
}else{
......@@ -216,7 +217,7 @@ public class JieLinkServiceImpl implements IJieLinkService {
}
}else{
//请求失败啦
log.error("pushAddUserData接口返回错误信息:{0}",responseEntity.getBody());
log.error("pushAddUserData接口请求失败");
return false;
}
}catch (Exception ex){
......@@ -282,12 +283,12 @@ public class JieLinkServiceImpl implements IJieLinkService {
HttpEntity<JSONObject> httpEntity = new HttpEntity<>(pushData,headers);
StringBuffer uriAddr = new StringBuffer();
uriAddr.append(jieLinkUri).append(apiUri);
ResponseEntity<String> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, String.class);
ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, JSONObject.class);
try{
if(HttpStatus.OK.value() ==responseEntity.getStatusCode().value()) {
//后续处理逻辑
log.debug("pushVisitorData接口返回信息:{0}",responseEntity.getBody());
JieLinkResultDto<JSONObject> resultData = JSONObject.parseObject(responseEntity.getBody(), JieLinkResultDto.class);
log.debug("pushVisitorData接口返回信息:{0}",responseEntity.getBody().toJSONString());
JieLinkResultDto<JSONObject> resultData = JSONObject.toJavaObject(responseEntity.getBody(), JieLinkResultDto.class);
if(StringUtils.equals(resultData.getCode(),"0")){
return true;
}else{
......@@ -297,7 +298,7 @@ public class JieLinkServiceImpl implements IJieLinkService {
}
}else{
//请求失败啦
log.error("pushVisitorData接口返回错误信息:{0}",responseEntity.getBody());
log.error("pushVisitorData接口请求失败");
return false;
}
}catch (Exception ex){
......@@ -336,11 +337,11 @@ public class JieLinkServiceImpl implements IJieLinkService {
HttpEntity<JSONObject> httpEntity = new HttpEntity<>(pushData,headers);
StringBuffer uriAddr = new StringBuffer();
uriAddr.append(jieLinkUri).append(apiUri);
ResponseEntity<String> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, String.class);
ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, JSONObject.class);
try{
if(HttpStatus.OK.value() ==responseEntity.getStatusCode().value()) {
log.debug("cancelVisitorData接口返回信息:{0}",responseEntity.getBody());
JieLinkResultDto resultData = JSONObject.parseObject(responseEntity.getBody(), JieLinkResultDto.class);
log.debug("cancelVisitorData接口返回信息:{0}",responseEntity.getBody().toJSONString());
JieLinkResultDto resultData = JSONObject.toJavaObject(responseEntity.getBody(), JieLinkResultDto.class);
if(StringUtils.equals(resultData.getCode(),"0")){
return true;
}else{
......@@ -350,7 +351,7 @@ public class JieLinkServiceImpl implements IJieLinkService {
}
}else{
//请求失败啦
log.error("cancelVisitorData接口返回错误信息:{0}",responseEntity.getBody());
log.error("cancelVisitorData接口请求失败");
return false;
}
}catch (Exception ex){
......@@ -486,11 +487,11 @@ public class JieLinkServiceImpl implements IJieLinkService {
HttpEntity<JSONObject> httpEntity = new HttpEntity<>(pushData,headers);
StringBuffer uriAddr = new StringBuffer();
uriAddr.append(jieLinkUri).append(apiUri);
ResponseEntity<String> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, String.class);
ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, JSONObject.class);
try{
if(HttpStatus.OK.value() ==responseEntity.getStatusCode().value()) {
log.debug("pullVisitUserQrCode接口返回信息:{0}",responseEntity.getBody());
JieLinkResultDto<JSONObject> resultData = JSONObject.parseObject(responseEntity.getBody(), JieLinkResultDto.class);
log.debug("pullVisitUserQrCode接口返回信息:{0}",responseEntity.getBody().toJSONString());
JieLinkResultDto<JSONObject> resultData = JSONObject.toJavaObject(responseEntity.getBody(), JieLinkResultDto.class);
if(StringUtils.equals(resultData.getCode(),"0")){
JSONObject data = resultData.getData();
if(data.containsKey("qrCodeData")){
......@@ -505,7 +506,7 @@ public class JieLinkServiceImpl implements IJieLinkService {
}
}else{
//请求失败啦
log.error("pullVisitUserQrCode接口返回错误信息:{0}",responseEntity.getBody());
log.error("pullVisitUserQrCode接口请求失败");
return null;
}
}catch (Exception ex){
......@@ -639,13 +640,13 @@ public class JieLinkServiceImpl implements IJieLinkService {
HttpEntity<JSONObject> httpEntity = new HttpEntity<>(null,headers);
StringBuffer uriAddr = new StringBuffer();
uriAddr.append(jieLinkUri).append(apiUri);
ResponseEntity<String> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, String.class);
ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(uriAddr.toString(), httpEntity, JSONObject.class);
try{
if(HttpStatus.OK.value() ==responseEntity.getStatusCode().value()) {
log.debug("syncDeviceInfo接口返回信息:{0}",responseEntity.getBody());
JieLinkResultDto<List<Devices>> resultData = JSONObject.parseObject(responseEntity.getBody(), JieLinkResultDto.class);
if(StringUtils.equals(resultData.getCode(),"0")){
List<Devices> devicesList = resultData.getData();
log.info("syncDeviceInfo接口返回信息:{0}",responseEntity.getBody().toJSONString());
JSONObject body = responseEntity.getBody();
if(StringUtils.equals(body.getString("code"),"0")){
List<Devices> devicesList =JSONObject.parseArray(body.getString("data"),Devices.class);
if(devicesList!=null && !devicesList.isEmpty()){
List<Devices> searchList = devicesService.findAll(null);
Map<String,Devices> searchMap = new HashMap<>();
......@@ -661,10 +662,10 @@ public class JieLinkServiceImpl implements IJieLinkService {
}
}
}else{
log.error("syncDeviceInfo接口返回错误信息:"+resultData.getMsg());
log.error("syncDeviceInfo接口返回错误信息:"+body.getString("msg"));
}
}else{
log.error("syncDeviceInfo接口返回错误信息:{0}",responseEntity.getBody());
log.error("syncDeviceInfo接口请求失败");
}
}catch (Exception ex){
log.error(ex.getMessage(),ex);
......
......@@ -30,7 +30,8 @@ public class AttendanceSyncSchedule {
// @Scheduled(cron = "0 0 0,15,16,17 * * ?")
// 每隔5秒执行一次
@Scheduled(cron = "0 */10 * * * ?")
// @Scheduled(cron = "0 */10 * * * ?")
@Scheduled(cron = "*/5 * * * * ?")
public void execute() {
Attendance attendance = new Attendance();
// 查询昨日所有考勤
......
......@@ -224,7 +224,7 @@ public class SysUser extends CyIdIncreEntity<SysUser> {
private String deptId;
/**
* @desc 身份(1正式员工2实习生
* @desc 身份(1普通员工 2管理员 3外部访客
* @column identity
* @default
* @default
......
......@@ -83,34 +83,32 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserRepositorys, SysUser>
@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT)
@Override
public CyPersistModel persist(SysUser sysUser) {
// 判断是否为访客
// 判断是否存在用户
List<SysUser> userList = sysUserRepositorys.querySysUsersByPhone(sysUser.getPhone());
if (sysUser.getUserType().equals("1")) {
if (userList.size() == 0) {
sysUserRepositorys.addSysUsers(sysUser);
} else {
for (SysUser u : userList) {
// 用户已存在
if (userList.size() > 0) {
// 判断存在的用户是否员工,员工报错
for (SysUser u : userList) {
if (u.getUserType().equals("0"))
throw new CyServiceException(500, u.getPhone() + "已被其他员工绑定。");
// 若是访客需要将访客账户删除
if (!u.getName().equals(sysUser.getName())) {
u.setName(sysUser.getName());
sysUserRepositorys.updateSysUser(u);
}
}
return new CyPersistModel(1);
} else {
// 新增员工
if (userList.size() > 0) {
throw new CyServiceException(500, "手机号已存在");
}
//添加所属园区中文
sysUser.setAddressLabel(sysUser.getAddressLabel());
//添加职位中文
sysUser.setPositionLabel(sysUser.getPositionLabel());
//添加班次中文
sysUser.setNltBzLabel(sysUser.getNltBzLabel());
//添加用户名
sysUser.setUsername(sysUser.getPhone());
//添加身份
sysUser.setIdentity("1");
sysUserRepositorys.addSysUsers(sysUser);
}
//添加所属园区中文
sysUser.setAddressLabel(sysUser.getAddressLabel());
//添加职位中文
sysUser.setPositionLabel(sysUser.getPositionLabel());
//添加班次中文
sysUser.setNltBzLabel(sysUser.getNltBzLabel());
//添加用户名
sysUser.setUsername(sysUser.getPhone());
//添加身份
sysUser.setIdentity("1");
sysUserRepositorys.addSysUsers(sysUser);
/* if (!jieLinkService.pushAddUserData(sysUser)) {
try {
throw new CyServiceException(500, "添加员工失败,请稍后重试");
......@@ -119,7 +117,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserRepositorys, SysUser>
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
}
}*/
}
log.debug(CyUserUtil.getAuthenUsername() + "新增了ID为" +
sysUser.getBusinessId() + "的用户表信息");
return new CyPersistModel(1);
......
......@@ -101,9 +101,9 @@ public class CheckUtil {
if (StringUtils.isEmpty(visitInfoDto.getVisitPhone()))
notTrue.add("访客手机号不能为空");
// 判断访客姓名和手机号是否数量匹配
List<String> userName = Arrays.asList(visitInfoDto.getVisitName().split(",")).stream()
List<String> userName = Arrays.asList(visitInfoDto.getVisitName().split(",|,")).stream()
.filter(u -> StringUtils.isNotEmpty(u)).collect(Collectors.toList());
List<String> phone = Arrays.asList(visitInfoDto.getVisitPhone().split(",")).stream()
List<String> phone = Arrays.asList(visitInfoDto.getVisitPhone().split(",|,")).stream()
.filter(p -> StringUtils.isNotEmpty(p)).distinct()
.collect(Collectors.toList());
if (userName.size() != phone.size())
......
......@@ -65,7 +65,6 @@ public class VisitInfomationController extends CyPaginationController<VisitInfoM
@ApiOperation(value = "微信小程序添加邀访信息", notes = "添加邀访信息")
@PostMapping(value = "/wx/add")
public CyResult wxAdd(@RequestBody VisitInfoMation visitInfomation,HttpServletRequest request) {
// //todo 添加信息时候同时添加用户id
String tempUserId = CyUserUtil.getUserInfoStrProp(cyJwtUtil.getToken(request), CyUserUtil.USER_ID);
int userId = Integer.parseInt(tempUserId);
......
......@@ -17,17 +17,13 @@ import org.rcisoft.core.result.CyResult;
import org.rcisoft.core.util.CyEpExcelUtil;
import org.rcisoft.core.util.CyResultGenUtil;
import org.rcisoft.sys.sysuser.entity.SysUser;
import org.rcisoft.sys.sysuser.service.SysUserService;
import org.rcisoft.sys.visit.entity.VisitPerson;
import org.rcisoft.sys.visit.entity.VisitUser;
import org.rcisoft.sys.visit.service.VisitPersonService;
import org.rcisoft.sys.visit.service.VisitUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
......
package org.rcisoft.sys.visit.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.rcisoft.common.component.CyGlobal;
import org.rcisoft.core.component.CyDownErrorTxtComp;
import org.rcisoft.core.exception.CyServiceException;
import org.rcisoft.core.jwt.util.CyJwtUtil;
......@@ -52,6 +52,7 @@ import java.util.stream.Collectors;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
......@@ -133,26 +134,28 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
visitInfomation.getBusinessId() + "的邀访信息信息");
// 添加访客信息
visitInfomation.getUserList().forEach(u -> {
// 判断当前访客(用户)是否已经存在
SysUser sysUser = new SysUser();
sysUser.setName(u.getUserName());
sysUser.setPhone(u.getVisitPhone());
sysUser.setUsername(u.getVisitPhone());
sysUser.setNormal();
List<SysUser> sysUserList = sysUserRepositorys.querySysUsers(sysUser);
// 不存在新增
if (CollectionUtils.isEmpty(sysUserList)) {
// 根据手机号判断用户是否已经存在
QueryWrapper<SysUser> sysUserQueryWrapper = new QueryWrapper<>();
sysUserQueryWrapper.eq("phone", u.getVisitPhone())
.eq("del_flag", 0);
SysUser sysUser = sysUserRepositorys.selectOne(sysUserQueryWrapper);
// 不存在,新增访客
if (ObjectUtils.isEmpty(sysUser)) {
sysUser.setPersonId(UUID.randomUUID().toString());
sysUser.setUserType("1");
sysUser.setIdentity("3");
sysUserRepositorys.insert(sysUser);
u.setPersonId(sysUser.getPersonId());
u.setUserId(sysUser.getBusinessId());
} else {
// 存在覆盖
sysUser.setBusinessId(sysUserList.get(0).getBusinessId());
sysUserRepositorys.updateSysUser(sysUser);
u.setPersonId(sysUserList.get(0).getPersonId());
u.setUserId(sysUserList.get(0).getBusinessId());
// 存在员工
if (sysUser.getUserType().equals("0"))
throw new CyServiceException(500, sysUser.getPhone() + "已被员工绑定,不能成为访客。");
if (!u.getUserName().equals(sysUser.getName())) {
sysUser.setName(u.getUserName());
sysUserRepositorys.updateSysUser(sysUser);
}
}
u.setPersonId(sysUser.getPersonId());
u.setUserId(sysUser.getBusinessId());
u.setVisitId(visitInfomation.getBusinessId());
u.setNormal();
visitUserRepository.insert(u);
......@@ -175,13 +178,14 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
visitInfomation.getBusinessId() + "的邀访信息信息");
return new CyPersistModel(line);
}
/**
* 禁用 邀访信息
*
* @param visitInfomation
* @return
*/
public CyPersistModel forbidden(VisitInfoMation visitInfomation){
public CyPersistModel forbidden(VisitInfoMation visitInfomation) {
visitInfomation.setVisitStatus("2");
// 禁用邀访信息
int line = baseMapper.updateById(visitInfomation);
......@@ -541,7 +545,7 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
} catch (Exception e) {
throw new CyServiceException(CyResSvcExcEnum.EXCEL_IMPORT_HEADER_ERROR);
}
if (!flag){
if (!flag) {
throw new CyServiceException(CyResSvcExcEnum.EXCEL_IMPORT_HEADER_ERROR);
}
if (!flag || !CyCompareToolUtils.compareFileName(file, "邀访信息", 0, 0)) {
......@@ -674,7 +678,7 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
}
// 设置邀访信息访问区域
if (visitInfoDto.getVisitRegion().length() > 0) {
String[] regions = visitInfoDto.getVisitRegion().split(",");
String[] regions = visitInfoDto.getVisitRegion().split(",|,");
visitInfoMation.setVisitRegion(visitInfoDto.getVisitRegion());
String regionCode = "";
for (String region : regions) {
......@@ -698,9 +702,9 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
visitInfoMation.setVisitRealTime(dateFormat.parse(time));
List<VisitUser> userList = new ArrayList<>();
// 判断访客姓名和手机号是否数量匹配
List<String> visitName = Arrays.asList(visitInfoDto.getVisitName().split(",")).stream()
List<String> visitName = Arrays.asList(visitInfoDto.getVisitName().split(",|,")).stream()
.filter(u -> StringUtils.isNotEmpty(u)).collect(Collectors.toList());
List<String> visitPhone = Arrays.asList(visitInfoDto.getVisitPhone().split(",")).stream()
List<String> visitPhone = Arrays.asList(visitInfoDto.getVisitPhone().split(",|,")).stream()
.filter(p -> StringUtils.isNotEmpty(p)).distinct()
.collect(Collectors.toList());
for (int i = 0; i < visitName.size(); i++) {
......
......@@ -3,7 +3,6 @@ package org.rcisoft.sys.visit.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.rcisoft.common.component.CyGlobal;
import org.rcisoft.core.component.CyDownErrorTxtComp;
import org.rcisoft.core.exception.CyServiceException;
import org.rcisoft.core.model.CyPageInfo;
......@@ -11,8 +10,6 @@ import org.rcisoft.core.model.CyPersistModel;
import org.rcisoft.core.result.enums.CyResSvcExcEnum;
import org.rcisoft.core.util.CyCompareToolUtils;
import org.rcisoft.core.util.CyUserUtil;
import org.rcisoft.sys.attendance.entity.Attendance;
import org.rcisoft.sys.attendance.service.impl.AttendanceServiceImpl;
import org.rcisoft.sys.constant.CyDictCons;
import org.rcisoft.sys.dictionary.entity.DictData;
import org.rcisoft.sys.dictionary.service.DictionaryService;
......@@ -21,7 +18,6 @@ import org.rcisoft.sys.sysuser.dao.*;
import org.rcisoft.sys.sysuser.dto.ExcelDTO;
import org.rcisoft.sys.sysuser.dto.ExportUserDTO;
import org.rcisoft.sys.sysuser.entity.*;
import org.rcisoft.sys.sysuser.service.SysUserService;
import org.rcisoft.sys.sysuser.util.CheckUtil;
import org.rcisoft.sys.sysuser.util.CyEpExcelUtil;
import org.rcisoft.sys.visit.dao.VisitInfomationRepository;
......@@ -31,8 +27,6 @@ import org.rcisoft.sys.visit.entity.VisitUser;
import org.rcisoft.sys.visit.service.VisitPersonService;
import org.rcisoft.sys.wbac.user.dto.ErrorDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Propagation;
......@@ -63,18 +57,8 @@ public class VisitPersonServiceImpl extends ServiceImpl<VisitPersonRepositorys,
@Autowired
private CyDownErrorTxtComp errorTxt;
@Autowired
private CyGlobal global;
@Autowired
private SysUserRoleRepository sysUserRoleRepository;
@Autowired
private PasswordEncoder passwordEncoder;
@Value("${cy.init.password}")
private String password;
@Autowired
private AttendanceServiceImpl attendanceService;
@Autowired
private DoorRecordRepository doorRecordRepository;
@Autowired
private VisitInfomationRepository visitInfomationRepository;
/**
......@@ -86,64 +70,22 @@ public class VisitPersonServiceImpl extends ServiceImpl<VisitPersonRepositorys,
@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT)
@Override
public CyPersistModel persist(SysUser sysUser) {
// 判断是否为访客
if (sysUser.getUserType().equals("1")) {
List<SysUser> userList = sysUserRepositorys.querySysUsersByPhone(sysUser.getPhone());
if (userList.size() == 0) {
sysUserRepositorys.addSysUsers(sysUser);
} else {
for (SysUser u : userList) {
// 根据手机号判断是否存在用户
List<SysUser> userList = sysUserRepositorys.querySysUsersByPhone(sysUser.getPhone());
if (userList.size() == 0) {
// 生成guid
sysUserRepositorys.addSysUsers(sysUser);
} else {
// 判断存在的用户是否员工,员工报错
for (SysUser u : userList) {
if (u.getUserType().equals("0"))
throw new CyServiceException(500, u.getPhone() + "已被员工绑定,不能成为访客。");
if (!u.getName().equals(sysUser.getName())) {
u.setName(sysUser.getName());
sysUserRepositorys.updateSysUser(u);
}
}
return new CyPersistModel(1);
}
// //查询是否重名
// if (sysUserRepositorys.querySysUsersByName(sysUser.getName()).size() >= 1) {
// throw new CyServiceException(500, "姓名已存在");
// }
//判断是否添加为管理员
if (sysUser.getIdentity().equals("2")) {
//添加账号为手机号
sysUser.setUsername(sysUser.getPhone());
//查询是否有重复用户名
if (sysUserRepositorys.querySysUsersByUserName(sysUser.getUsername()).size() >= 1) {
throw new CyServiceException(500, "用户名已存在");
}
//添加密码
sysUser.setPassword(this.passwordEncoder.encode(this.password));
sysUserRepositorys.addSysUsers(sysUser);
List<SysUser> sysUsers = sysUserRepositorys.querySysUsersByName(sysUser.getName());
if (sysUser.getRoleList() != null && sysUser.getRoleList().size() > 0) {
for (int i = 0; i < sysUser.getRoleList().size(); i++) {
SysUserRole sysUserRole = new SysUserRole();
sysUserRole.setUserId(sysUsers.get(0).getBusinessId());
sysUserRole.setRoleId((Integer) sysUser.getRoleList().get(i));
sysUserRoleRepository.addRoles(sysUserRole);
}
}
} else {
//查询已有手机号
if (sysUserRepositorys.querySysUsersByPhone(sysUser.getPhone()).size() >= 1) {
throw new CyServiceException(500, "手机号已存在");
}
//添加所属园区中文
sysUser.setAddressLabel(sysUser.getAddressLabel());
//添加职位中文
sysUser.setPositionLabel(sysUser.getPositionLabel());
//添加班次中文
sysUser.setNltBzLabel(sysUser.getNltBzLabel());
//添加用户名
sysUser.setUsername(sysUser.getPhone());
//添加身份
sysUser.setIdentity("1");
sysUserRepositorys.addSysUsers(sysUser);
}
log.debug(CyUserUtil.getAuthenUsername() + "新增了ID为" +
sysUser.getBusinessId() + "的用户表信息");
return new CyPersistModel(1);
}
......@@ -256,22 +198,22 @@ public class VisitPersonServiceImpl extends ServiceImpl<VisitPersonRepositorys,
*/
@Override
public IPage<SysUser> findAllByPagination(CyPageInfo<SysUser> paginationUtility, SysUser sysUser) {
if (sysUser.getSort() == null || sysUser.getSort().equals("")){
if (sysUser.getSort() == null || sysUser.getSort().equals("")) {
sysUser.setSort("1");
}
IPage<SysUser> sysUserIPage = baseMapper.querySysUsersPaged(paginationUtility, sysUser);
List<SysUser> userList = sysUserIPage.getRecords();
for (SysUser user:userList){
for (SysUser user : userList) {
String phone = user.getPhone();
int count = 0;
VisitInfoMation infoMationQuerry = new VisitInfoMation();
infoMationQuerry.setVisitStatus("1");
List<VisitInfoMation> infoMationQuerryList = visitInfomationRepository.queryVisitInfomations(infoMationQuerry);
for (VisitInfoMation info:infoMationQuerryList){
for (VisitUser u:info.getUserList()){
if (u.getVisitPhone() != null && u.getVisitPhone().equals(phone)){
for (VisitInfoMation info : infoMationQuerryList) {
for (VisitUser u : info.getUserList()) {
if (u.getVisitPhone() != null && u.getVisitPhone().equals(phone)) {
count++;
}
}
......
......@@ -129,7 +129,7 @@ public class CyWxMiniServiceImpl implements CyWxMiniService {
List<UserDto> sysUsers = repositorys.selectByOpenidWx(wxOpenid);
if (CollectionUtils.isNotEmpty(sysUsers)){
if(!sysUsers.get(0).getUserType().equals(userType)){
String errMsg = sysUsers.get(0).getUserType().equals("0")? "该手机号内部员工账号" : "该手机号为外部访客账号";
String errMsg = sysUsers.get(0).getUserType().equals("0")? "该手机号内部员工账号" : "该手机号为外部访客账号";
throw new CyServiceException(500,errMsg);
}
// 2.1.2 微信登录,数据库已绑定 openId --->
......
......@@ -2,7 +2,7 @@
cy_redis:
ip: 124.71.16.228
port: 6397
password: '123456'
password: ''
# rabbitMq
cy_mq:
......@@ -18,6 +18,13 @@ cy_db:
password: root
db: entrance
#cy_db:
# ip: 127.0.0.1
# port: 3306
# username: root
# password: wc199921
# db: entrance
#cy_db:
# ip: 127.0.0.1
# port: 3306
......@@ -78,7 +85,8 @@ logging:
# com.alibaba.nacos: debug
global:
base_upload_location: /working/file/
#base_upload_location: /working/file/
base_upload_location: D:\working\file
base_discovery: 'http://124.71.16.228:18088/file/'
code_generate_location: /code
video_location: /video
......
......@@ -254,7 +254,7 @@
<select id="queryVisitById" resultMap="BaseResultMap">
select
vi.business_id,vi.user_name,vi.user_id,vi.visit_reason_code,vi.visit_region_code,vi.dept_name,vi.post_name,vi.create_date,vi.visit_reason,vi.visit_region,vi.visit_real_time,vi.del_flag,
vi.business_id,vi.user_name,vi.user_id,vi.visit_reason_code,vi.visit_region_code,vi.visit_reason_other,vi.dept_name,vi.post_name,vi.create_date,vi.visit_reason,vi.visit_region,vi.visit_real_time,vi.del_flag,
vi.visit_date,vi.visit_time,vi.visit_status
from visit_infomation vi
where vi.del_flag='0'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment