Commit a29595b1 authored by mx's avatar mx

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

# Conflicts:
#	src/main/resources/mapper/SysDeptRepositorys.xml
parents cb911009 820835b8
...@@ -9,10 +9,7 @@ import org.rcisoft.integration.jieLink.dto.JieLinkDoorRecordDto; ...@@ -9,10 +9,7 @@ import org.rcisoft.integration.jieLink.dto.JieLinkDoorRecordDto;
import org.rcisoft.integration.jieLink.dto.JieLinkResultDto; import org.rcisoft.integration.jieLink.dto.JieLinkResultDto;
import org.rcisoft.integration.jieLink.service.IJieLinkService; import org.rcisoft.integration.jieLink.service.IJieLinkService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j @Slf4j
@RestController @RestController
...@@ -26,7 +23,7 @@ public class JieLinkInterController { ...@@ -26,7 +23,7 @@ public class JieLinkInterController {
@CyOpeLogAnno(title = "jieLinkInter-捷顺道闸上传门禁记录", businessType = CyLogTypeEnum.INSERT) @CyOpeLogAnno(title = "jieLinkInter-捷顺道闸上传门禁记录", businessType = CyLogTypeEnum.INSERT)
@ApiOperation(value="捷顺对接集成", notes="门禁数据上传") @ApiOperation(value="捷顺对接集成", notes="门禁数据上传")
@PostMapping(value = "/doorrecord") @PostMapping(value = "/doorrecord")
public JieLinkResultDto add(@RequestBody JieLinkDoorRecordDto recodeDto) { public JieLinkResultDto addDoorrecord(@RequestBody JieLinkDoorRecordDto recodeDto) {
JieLinkResultDto result = new JieLinkResultDto(); JieLinkResultDto result = new JieLinkResultDto();
if(recodeDto!=null && StringUtils.isNotBlank(recodeDto.getRecordId())){ if(recodeDto!=null && StringUtils.isNotBlank(recodeDto.getRecordId())){
/** /**
...@@ -56,4 +53,16 @@ public class JieLinkInterController { ...@@ -56,4 +53,16 @@ public class JieLinkInterController {
} }
@CyOpeLogAnno(title = "jieLinkInter-同步设备信息", businessType = CyLogTypeEnum.INSERT)
@ApiOperation(value="捷顺对接集成", notes="同步设备信息")
@GetMapping(value = "/syncDeviceData")
public JieLinkResultDto syncDeviceData() {
jieLinkService.syncDeviceInfo();
JieLinkResultDto result = new JieLinkResultDto();
result.setMsg("同步完成");
result.setCode("0");
return result;
}
} }
...@@ -65,5 +65,5 @@ public interface IJieLinkService { ...@@ -65,5 +65,5 @@ public interface IJieLinkService {
*/ */
public JieLinkResultDto saveDoorRecordInfo(JieLinkDoorRecordDto recordDto); public JieLinkResultDto saveDoorRecordInfo(JieLinkDoorRecordDto recordDto);
public void syncDeviceInfo();
} }
...@@ -13,6 +13,8 @@ import org.rcisoft.core.model.CyPersistModel; ...@@ -13,6 +13,8 @@ import org.rcisoft.core.model.CyPersistModel;
import org.rcisoft.integration.jieLink.common.SignUtils; import org.rcisoft.integration.jieLink.common.SignUtils;
import org.rcisoft.integration.jieLink.dto.*; import org.rcisoft.integration.jieLink.dto.*;
import org.rcisoft.integration.jieLink.service.IJieLinkService; import org.rcisoft.integration.jieLink.service.IJieLinkService;
import org.rcisoft.sys.devices.entity.Devices;
import org.rcisoft.sys.devices.service.DevicesService;
import org.rcisoft.sys.sysuser.entity.DoorRecord; import org.rcisoft.sys.sysuser.entity.DoorRecord;
import org.rcisoft.sys.sysuser.entity.SysUser; import org.rcisoft.sys.sysuser.entity.SysUser;
import org.rcisoft.sys.sysuser.service.DoorRecordService; import org.rcisoft.sys.sysuser.service.DoorRecordService;
...@@ -26,9 +28,7 @@ import org.springframework.transaction.annotation.Propagation; ...@@ -26,9 +28,7 @@ import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
import java.util.ArrayList; import java.util.*;
import java.util.List;
import java.util.UUID;
/** /**
* 捷顺道闸对接接口实现 * 捷顺道闸对接接口实现
...@@ -63,6 +63,9 @@ public class JieLinkServiceImpl implements IJieLinkService { ...@@ -63,6 +63,9 @@ public class JieLinkServiceImpl implements IJieLinkService {
@Autowired @Autowired
private DoorRecordService doorRecordService; private DoorRecordService doorRecordService;
@Autowired
private DevicesService devicesService;
/** /**
* 获取签名所需相关参数 * 获取签名所需相关参数
...@@ -482,8 +485,24 @@ public class JieLinkServiceImpl implements IJieLinkService { ...@@ -482,8 +485,24 @@ public class JieLinkServiceImpl implements IJieLinkService {
return result; return result;
} }
JieLinkDeviceDto device = recordDto.getDevice(); JieLinkDeviceDto device = recordDto.getDevice();
Devices devices = null;
if(device!=null){ if(device!=null){
if(StringUtils.isNotBlank(device.getDeviceGuid())){
Devices deviceInfo = devicesService.getDeviceInfoByDeviceGuid(device.getDeviceGuid());
if(deviceInfo!=null){
devices = deviceInfo;
}else{
//设备无了
result.setCode("ILLEGAL_ARGUMENT");
result.setMsg("设备未获取或关键信息错误,请检查参数");
return result;
}
}else{
//设备无了
result.setCode("ILLEGAL_ARGUMENT");
result.setMsg("设备关键信息丢失,请检查参数");
return result;
}
}else{ }else{
//设备无了 //设备无了
result.setCode("ILLEGAL_ARGUMENT"); result.setCode("ILLEGAL_ARGUMENT");
...@@ -497,13 +516,14 @@ public class JieLinkServiceImpl implements IJieLinkService { ...@@ -497,13 +516,14 @@ public class JieLinkServiceImpl implements IJieLinkService {
record.setMobile(sysUserData.getPhone()); record.setMobile(sysUserData.getPhone());
record.setTenementType(sysUserData.getUserType()); record.setTenementType(sysUserData.getUserType());
record.setRemark(recordDto.getRemark()); record.setRemark(recordDto.getRemark());
record.setDeviceId("");//需要根据设备补全 record.setDeviceId(device.getDeviceGuid());//需要根据设备补全
record.setDeviceName("");//需要根据设备补全 record.setDeviceName(device.getDeviceName());//需要根据设备补全
record.setDeviceType("");//需要根据设备不全 //TODO 此处字段需要后续修改,需要根据业务调整
record.setDeviceType(device.getDeviceType()+"");//需要根据设备不全
record.setCardType(recordDto.getCardType()+""); record.setCardType(recordDto.getCardType()+"");
record.setCardNo(recordDto.getCardNo()); record.setCardNo(recordDto.getCardNo());
if(StringUtils.isNotBlank(recordDto.getCrossTime())){ if(StringUtils.isNotBlank(recordDto.getCrossTime())){
//设备无了 //触发时间无了
result.setCode("ILLEGAL_ARGUMENT"); result.setCode("ILLEGAL_ARGUMENT");
result.setMsg("闸机触发时间丢失,请检查参数"); result.setMsg("闸机触发时间丢失,请检查参数");
return result; return result;
...@@ -520,6 +540,47 @@ public class JieLinkServiceImpl implements IJieLinkService { ...@@ -520,6 +540,47 @@ public class JieLinkServiceImpl implements IJieLinkService {
return result; return result;
} }
@Override
public void syncDeviceInfo() {
String apiUri = "/api/base/devices";
HttpHeaders headers = this.loadHeaderHandle();
if(headers!=null){
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);
try{
if(HttpStatus.OK.value() ==responseEntity.getStatusCode().value()) {
JieLinkResultDto<List<Devices>> resultData = JSONObject.parseObject(responseEntity.getBody(), JieLinkResultDto.class);
if(StringUtils.equals(resultData.getCode(),"0")){
List<Devices> devicesList = resultData.getData();
if(devicesList!=null && !devicesList.isEmpty()){
List<Devices> searchList = devicesService.findAll(null);
Map<String,Devices> searchMap = new HashMap<>();
for(Devices d: searchList){
searchMap.put(d.getDeviceGuid(),d);
}
for(Devices inDevice:devicesList){
if(searchMap.containsKey(inDevice.getDeviceGuid())){
devicesService.merge(inDevice);
}else{
devicesService.persist(inDevice);
}
}
}
}else{
log.error("syncDeviceInfo接口返回错误信息:"+resultData.getMsg());
}
}else{
}
}catch (Exception ex){
log.error(ex.getMessage(),ex);
}
}else{
//认证信息获取失败
}
}
/** /**
* 创建hander头信息 * 创建hander头信息
......
...@@ -25,5 +25,14 @@ public interface DevicesRepository extends CyBaseMapper<Devices> { ...@@ -25,5 +25,14 @@ public interface DevicesRepository extends CyBaseMapper<Devices> {
* *
*/ */
IPage<Devices> queryDevicessPaged(CyPageInfo cyPageInfo,@Param("entity") Devices devices); IPage<Devices> queryDevicessPaged(CyPageInfo cyPageInfo,@Param("entity") Devices devices);
/**
* 根据设备的GUID查询对象
* @param deviceGuid
* @return
*/
Devices getDeviceInfoByDeviceGuid(@Param("deviceGuid")String deviceGuid);
} }
...@@ -64,4 +64,11 @@ public interface DevicesService { ...@@ -64,4 +64,11 @@ public interface DevicesService {
*/ */
List<Devices> export(Devices devices); List<Devices> export(Devices devices);
/**
* 根据设备唯一标识查询设备
* @param deviceGuid
* @return
*/
Devices getDeviceInfoByDeviceGuid(String deviceGuid);
} }
...@@ -116,4 +116,10 @@ public class DevicesServiceImpl extends ServiceImpl<DevicesRepository,Devices> ...@@ -116,4 +116,10 @@ public class DevicesServiceImpl extends ServiceImpl<DevicesRepository,Devices>
return devicesList; return devicesList;
} }
@Override
public Devices getDeviceInfoByDeviceGuid(String deviceGuid) {
return baseMapper.getDeviceInfoByDeviceGuid(deviceGuid);
}
} }
...@@ -37,6 +37,8 @@ public interface SysDeptRepositorys extends CyBaseMapper<SysDept> { ...@@ -37,6 +37,8 @@ public interface SysDeptRepositorys extends CyBaseMapper<SysDept> {
//根据id查询部门 //根据id查询部门
List<SysDept> queryDeptById(String deptId); List<SysDept> queryDeptById(String deptId);
SysDept getDeptById(String deptId);
//根据部门名称查询 //根据部门名称查询
SysDept querySysDeptByName(String deptName); SysDept querySysDeptByName(String deptName);
......
...@@ -55,5 +55,8 @@ public interface SysUserRepositorys extends CyBaseMapper<SysUser> { ...@@ -55,5 +55,8 @@ public interface SysUserRepositorys extends CyBaseMapper<SysUser> {
IPage<SysUser> querySysUsersByFenZhi2(CyPageInfo cyPageInfo, @Param("entity") SysUser sysUser); IPage<SysUser> querySysUsersByFenZhi2(CyPageInfo cyPageInfo, @Param("entity") SysUser sysUser);
List<SysUser> getUserList();
SysUser getUserById(Integer business_id);
} }
...@@ -69,6 +69,10 @@ public interface SysUserService { ...@@ -69,6 +69,10 @@ public interface SysUserService {
*/ */
List<SysUser> findAll(SysUser sysUser); List<SysUser> findAll(SysUser sysUser);
List<SysUser> getList();
SysUser getUserById(Integer id);
//查询字典 //查询字典
List<SysUser> findAllByData(SysUser sysUser); List<SysUser> findAllByData(SysUser sysUser);
......
...@@ -317,6 +317,33 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserRepositorys, SysUser> ...@@ -317,6 +317,33 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserRepositorys, SysUser>
} }
@Override
public List<SysUser> getList(){
List<SysUser> sysUserList = baseMapper.getUserList();
for (SysUser user:sysUserList){
String deptId=user.getDeptId();
if (deptId != null){
SysDept dept = sysDeptRepositorys.getDeptById(deptId);
if (dept.getDeptName()!=null){
user.setDeptName(dept.getDeptName());
}
}
}
return sysUserList;
}
public SysUser getUserById(Integer id){
SysUser user = baseMapper.getUserById(id);
String deptId=user.getDeptId();
if (deptId != null){
SysDept dept = sysDeptRepositorys.getDeptById(deptId);
if (dept.getDeptName()!=null){
user.setDeptName(dept.getDeptName());
}
}
return user;
}
public List<SysUser> findAllByData(SysUser sysUser) { public List<SysUser> findAllByData(SysUser sysUser) {
return sysDictDataRepositorys.queryData(sysUser); return sysDictDataRepositorys.queryData(sysUser);
......
...@@ -123,7 +123,7 @@ public class VisitInfomationController extends CyPaginationController<VisitInfoM ...@@ -123,7 +123,7 @@ public class VisitInfomationController extends CyPaginationController<VisitInfoM
@CyOpeLogAnno(title = "system-邀访信息管理-查询邀访信息", businessType = CyLogTypeEnum.QUERY) @CyOpeLogAnno(title = "system-邀访信息管理-查询邀访信息", businessType = CyLogTypeEnum.QUERY)
@ApiOperation(value = "分页查询邀访信息集合", notes = "分页查询邀访信息集合") @ApiOperation(value = "分页查询邀访信息集合", notes = "分页查询邀访信息集合")
@GetMapping(value = "/queryVisitInfomationByPagination") @GetMapping(value = "/queryVisitInfomationByPagination")
public CyGridModel listByPagination(VisitInfoMation visitInfomation) { public CyGridModel listByPagination(VisitInfoMation visitInfomation,HttpServletRequest request) {
visitInfomationServiceImpl.findAllByPagination(getPaginationUtility(), visitInfomation); visitInfomationServiceImpl.findAllByPagination(getPaginationUtility(), visitInfomation);
return getGridModelResponse(); return getGridModelResponse();
} }
......
...@@ -126,6 +126,26 @@ public class VisitPersonController extends CyPaginationController<SysUser> { ...@@ -126,6 +126,26 @@ public class VisitPersonController extends CyPaginationController<SysUser> {
sysUserServiceImpl.findAll(sysUser)); sysUserServiceImpl.findAll(sysUser));
} }
@CyOpeLogAnno(title = "system-访客表管理-查询访客表", businessType = CyLogTypeEnum.QUERY)
@ApiOperation(value="查询访客表集合", notes="查询访客表集合")
@GetMapping(value = "/querySysUsersList")
public CyResult querySysUsersList() {
return CyResultGenUtil.builder(new CyPersistModel(1),
CyMessCons.MESSAGE_ALERT_SUCCESS,
CyMessCons.MESSAGE_ALERT_ERROR,
sysUserServiceImpl.getList());
}
@CyOpeLogAnno(title = "system-用户表管理-通过ID查询用户", businessType = CyLogTypeEnum.QUERY)
@ApiOperation(value="通过ID查询用户", notes="通过ID查询用户")
@GetMapping(value = "/querySysUserById/{businessId:\\w+}")
public CyResult querySysUserById(@PathVariable Integer businessId) {
return CyResultGenUtil.builder(new CyPersistModel(1),
CyMessCons.MESSAGE_ALERT_SUCCESS,
CyMessCons.MESSAGE_ALERT_ERROR,
sysUserServiceImpl.getUserById(businessId));
}
//@PreAuthorize("@cyPerm.hasPerm('sys:user:list')") //@PreAuthorize("@cyPerm.hasPerm('sys:user:list')")
@CyOpeLogAnno(title = "system-访客表管理-查询访客表", businessType = CyLogTypeEnum.QUERY) @CyOpeLogAnno(title = "system-访客表管理-查询访客表", businessType = CyLogTypeEnum.QUERY)
@ApiOperation(value="分页查询访客表集合", notes="分页查询访客表集合") @ApiOperation(value="分页查询访客表集合", notes="分页查询访客表集合")
......
...@@ -156,6 +156,11 @@ public class VisitInfoMation extends CyIdIncreEntity<VisitInfoMation> { ...@@ -156,6 +156,11 @@ public class VisitInfoMation extends CyIdIncreEntity<VisitInfoMation> {
@Excel(name = "访客姓名", orderNum = "9", width = 20) @Excel(name = "访客姓名", orderNum = "9", width = 20)
String userArry; String userArry;
@Transient
@TableField(exist = false)
@Excel(name = "访客电话", orderNum = "10", width = 20)
String phoneArry;
@Transient @Transient
@TableField(exist = false) @TableField(exist = false)
@JsonFormat(pattern ="yyyy-MM-dd",timezone ="GMT+8") @JsonFormat(pattern ="yyyy-MM-dd",timezone ="GMT+8")
......
...@@ -284,12 +284,16 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos ...@@ -284,12 +284,16 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
v.setVisitRegions(regions); v.setVisitRegions(regions);
} }
String vuList = ""; String vuList = "";
String phoneList = "";
for (VisitUser vu : v.getUserList()) { for (VisitUser vu : v.getUserList()) {
vuList = vuList + vu.getUserName() + ','; vuList = vuList + vu.getUserName() + ',';
phoneList = phoneList + vu.getVisitPhone()+ ',';
} }
if (vuList.length()>0){ if (vuList.length()>0){
vuList = vuList.substring(0, vuList.length() - 1); vuList = vuList.substring(0, vuList.length() - 1);
phoneList = phoneList.substring(0,phoneList.length()-1);
} }
v.setPhoneArry(phoneList);
v.setUserArry(vuList); v.setUserArry(vuList);
} }
list.setRecords(mationList); list.setRecords(mationList);
......
...@@ -25,4 +25,9 @@ ...@@ -25,4 +25,9 @@
select * from devices select * from devices
where 1=1 where 1=1
</select> </select>
<select id="getDeviceInfoByGuid" resultMap="BaseResultMap">
SELECT * FROM devices where device_guid = #{deviceGuid} limit 0,1
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -93,6 +93,13 @@ ...@@ -93,6 +93,13 @@
WHERE del_flag = 0 WHERE del_flag = 0
and sd.parent_id = #{businessId} and sd.parent_id = #{businessId}
</select> </select>
<select id="getDeptById" resultMap="BaseResultMap">
SELECT *
FROM sys_dept sd
WHERE del_flag = 0
and business_id = #{deptId}
</select>
<select id="queryDeptBySJ" resultMap="BaseResultMap"> <select id="queryDeptBySJ" resultMap="BaseResultMap">
SELECT T2.business_id SELECT T2.business_id
FROM ( FROM (
......
...@@ -286,4 +286,12 @@ ...@@ -286,4 +286,12 @@
</if> </if>
GROUP BY su.username GROUP BY su.username
</select> </select>
<select id="getUserList" resultMap="BaseResultMap">
select * from sys_user where del_flag = '0' and user_type = '0'
</select>
<select id="getUserById" resultMap="BaseResultMap">
select * from sys_user where del_flag = '0' and user_type = '0' and business_id = #{business_id}
</select>
</mapper> </mapper>
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