feat:临时访客一级口门申请
parent
6e331ede6f
commit
94dffef375
|
|
@ -31,7 +31,6 @@ import java.util.Date;
|
|||
public class PersonApplyUpdateExe {
|
||||
private final PersonApplyGateway personApplyGateway;
|
||||
private final XgfApplyPersonGateway xgfApplyPersonGateway;
|
||||
private final MkmjGateGateway mkmjGateGateway;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(PersonApplyUpdateCmd personApplyUpdateCmd) {
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ import com.zcloud.primeport.dto.clientobject.PersonCountCO;
|
|||
import com.zcloud.primeport.dto.clientobject.XgfPersonApplyCO;
|
||||
import com.zcloud.primeport.dto.clientobject.XgfPersonCountCO;
|
||||
import com.zcloud.primeport.plan.mjDevice.OnePersonUtil;
|
||||
import jodd.util.Base64;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -101,16 +102,16 @@ public class PersonApplyServiceImpl implements PersonApplyServiceI {
|
|||
// 开启门禁
|
||||
if (co != null) {
|
||||
personApplyUpdateExe.authorization(co.getId(), co.getXgfApplyPersonId(), cmd.getMkmjPermission(), cmd.getGateLevelAuthArea());
|
||||
onePersonUtil.expirationDateRefreshedUserCard(co.getUserCard(), DateUtil.date2Str(new Date()), "2030-12-31 23:59:59");
|
||||
onePersonUtil.expirationDateRefreshedUserCard(Base64.decodeToString(co.getUserCard()), DateUtil.date2Str(new Date()), "2030-12-31 23:59:59");
|
||||
} else {
|
||||
personApplyAddExe.authorization(cmd);
|
||||
onePersonUtil.dockLongTermUserByUserCardAndFaceImg(co.getUserCard(), co.getUserUid(), co.getEmployeePersonUserName(), co.getUserFaceUrl(), DateUtil.date2Str(new Date()), "2030-12-31 23:59:59");
|
||||
onePersonUtil.dockLongTermUserByUserCardAndFaceImg(Base64.decodeToString(co.getUserCard()), "hbqa"+Base64.decodeToString(co.getUserCard()), co.getEmployeePersonUserName(), co.getUserFaceUrl(), DateUtil.date2Str(new Date()), "2030-12-31 23:59:59");
|
||||
}
|
||||
} else {
|
||||
// 关闭门禁,这个人都没有授权过的话,什么都不管。
|
||||
if (co != null) {
|
||||
personApplyUpdateExe.authorization(co.getId(), co.getXgfApplyPersonId(), cmd.getMkmjPermission(), cmd.getGateLevelAuthArea());
|
||||
onePersonUtil.freezeByUserCard(co.getUserCard(), cmd.getMkmjPermission());
|
||||
onePersonUtil.freezeByUserCard(Base64.decodeToString(co.getUserCard()), cmd.getMkmjPermission());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ public interface PersonApplyGateway {
|
|||
|
||||
void saveBatch(ArrayList<PersonApplyE> personApplyES);
|
||||
|
||||
void xgfPersonAudit(XgfApplyPersonE build);
|
||||
void xgfPersonAudit(XgfApplyPersonE build) throws Exception;
|
||||
|
||||
List<PersonApplyE> personListByxgfApplyPersonId(Long id);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,13 @@
|
|||
package com.zcloud.primeport.gatewayimpl;
|
||||
|
||||
import cn.hutool.json.JSONArray;
|
||||
import cn.hutool.json.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.zcloud.gbscommon.todolistmq.TodoListEventPusherUtil;
|
||||
import com.zcloud.gbscommon.todolistmq.event.TodoListAddEvent;
|
||||
import com.zcloud.gbscommon.todolistmq.event.TodoListCompleteEvent;
|
||||
import com.zcloud.gbscommon.utils.DateUtil;
|
||||
import com.zcloud.primeport.domain.gateway.PersonApplyGateway;
|
||||
import com.zcloud.primeport.domain.model.PersonApplyE;
|
||||
import com.zcloud.primeport.domain.model.XgfApplyPersonE;
|
||||
|
|
@ -14,13 +17,14 @@ import com.zcloud.primeport.persistence.dataobject.XgfApplyPersonDO;
|
|||
import com.zcloud.primeport.persistence.repository.PersonApplyRepository;
|
||||
import com.zcloud.primeport.persistence.repository.PersonMessageRepository;
|
||||
import com.zcloud.primeport.persistence.repository.XgfApplyPersonRepository;
|
||||
import com.zcloud.primeport.plan.mjDevice.OnePersonUtil;
|
||||
import jodd.util.Base64;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* web-infrastructure
|
||||
|
|
@ -35,6 +39,7 @@ public class PersonApplyGatewayImpl implements PersonApplyGateway {
|
|||
private final XgfApplyPersonRepository xgfApplyPersonRepository;
|
||||
private final PersonMessageRepository personMessageRepository;
|
||||
private final TodoListEventPusherUtil todoListEventPusherUtil;
|
||||
private final OnePersonUtil onePersonUtil;
|
||||
|
||||
@Override
|
||||
public Boolean add(PersonApplyE personApplyE) {
|
||||
|
|
@ -74,7 +79,7 @@ public class PersonApplyGatewayImpl implements PersonApplyGateway {
|
|||
}
|
||||
|
||||
@Override
|
||||
public void xgfPersonAudit(XgfApplyPersonE build) {
|
||||
public void xgfPersonAudit(XgfApplyPersonE build) throws Exception {
|
||||
XgfApplyPersonDO d = new XgfApplyPersonDO();
|
||||
BeanUtils.copyProperties(build, d);
|
||||
xgfApplyPersonRepository.updateById(d);
|
||||
|
|
@ -92,6 +97,8 @@ public class PersonApplyGatewayImpl implements PersonApplyGateway {
|
|||
personApplyDOUpdateWrapper.set("mkmj_permission", 1);
|
||||
personApplyDOUpdateWrapper.eq("xgf_apply_person_id", d.getId());
|
||||
ArrayList<PersonMessageDO> personMessageDOS = new ArrayList<>();
|
||||
HashSet<String> userCardHashSet = new HashSet<>();
|
||||
HashMap<String, JSONObject> stringJSONObjectHashMap = new HashMap<>();
|
||||
list.forEach(item -> {
|
||||
PersonMessageDO messageDO = new PersonMessageDO();
|
||||
messageDO.setPersonBelongType(byId.getPersonBelongType());
|
||||
|
|
@ -103,14 +110,72 @@ public class PersonApplyGatewayImpl implements PersonApplyGateway {
|
|||
messageDO.setVisitStartTime(byId.getVisitStartTime());
|
||||
messageDO.setVisitEndTime(byId.getVisitEndTime());
|
||||
personMessageDOS.add(messageDO);
|
||||
userCardHashSet.add(Base64.decodeToString(item.getUserCard()));
|
||||
JSONObject entries = new JSONObject();
|
||||
entries.set("name", item.getEmployeePersonUserName());
|
||||
entries.set("code", "hbqa"+Base64.decodeToString(item.getUserCard()));
|
||||
entries.set("validStartTime", byId.getVisitStartTime() + " 00:00:00");
|
||||
entries.set("validEndTime", byId.getVisitEndTime() + " 23:59:59");
|
||||
entries.set("paperType", 111);
|
||||
entries.set("paperNumber", Base64.decodeToString(item.getUserCard()));
|
||||
entries.set("departmentId", 1);
|
||||
JSONObject fileInfo = new JSONObject();
|
||||
List<JSONObject> dataList = new ArrayList();
|
||||
fileInfo.set("type", 3);
|
||||
fileInfo.set("index", 1);
|
||||
fileInfo.set("path", item.getUserFaceUrl());
|
||||
dataList.add(fileInfo);
|
||||
entries.set("personBiosignatures", dataList);
|
||||
stringJSONObjectHashMap.put(Base64.decodeToString(item.getUserCard()), entries);
|
||||
// byId.getPersonBelongType()
|
||||
// onePersonUtil.dockLongTermUserByUserCardAndFaceImg()
|
||||
});
|
||||
personMessageRepository.saveBatch(personMessageDOS);
|
||||
dcokDoorEquipment(userCardHashSet, stringJSONObjectHashMap);
|
||||
}
|
||||
TodoListCompleteEvent todoListCompleteEvent = new TodoListCompleteEvent();
|
||||
todoListCompleteEvent.setForeignSubsidiaryKey(build.getId());
|
||||
todoListEventPusherUtil.sendMessageCompleteEvent(todoListCompleteEvent);
|
||||
}
|
||||
|
||||
// 对接口门设备
|
||||
public void dcokDoorEquipment(HashSet<String> userCardHashSet, HashMap<String, JSONObject> userHashMap) throws Exception {
|
||||
// 对接过的用户信息
|
||||
ArrayList<JSONObject> waitSaveUser = new ArrayList<>();
|
||||
ArrayList<JSONObject> waitEditUser = new ArrayList<>();
|
||||
ArrayList<String> dockEdUserCards = new ArrayList<>();
|
||||
JSONArray mkmjUserInfoByUserCard = onePersonUtil.getMkmjUserInfoByUserCard(new ArrayList<>(userCardHashSet));
|
||||
for (int i = 0; i < mkmjUserInfoByUserCard.size(); i++) {
|
||||
JSONObject o = mkmjUserInfoByUserCard.getJSONObject(i);
|
||||
String str = o.getStr("paperNumber");
|
||||
JSONObject entries = userHashMap.get(str);
|
||||
if (userCardHashSet.add(str)) {
|
||||
// 要新增的
|
||||
waitSaveUser.add(entries);
|
||||
} else {
|
||||
// 已存在 看下今天是不是在 申请的时间里
|
||||
long validStartTime = DateUtil.fomatDate(entries.getStr("validStartTime")+ "00:00:00","yyyy-MM-dd HH:mm:ss").getTime();
|
||||
long validEndTime = DateUtil.fomatDate(entries.getStr("validEndTime")+ "23:59:59","yyyy-MM-dd HH:mm:ss").getTime();
|
||||
long time = new Date().getTime();
|
||||
if (time >= validStartTime && time <= validEndTime) {
|
||||
// 今天在申请的时间里 需要修改
|
||||
JSONObject entries1 = new JSONObject();
|
||||
entries1.set("personId", o.getLong("id"));
|
||||
entries1.set("validStartTime", DateUtil.date2Str(new Date(),"yyyy-MM-dd")+ "00:00:00");
|
||||
entries1.set("validEndTime", DateUtil.date2Str(new Date(),"yyyy-MM-dd")+ "23:59:59");
|
||||
waitEditUser.add(entries1);
|
||||
}
|
||||
}
|
||||
dockEdUserCards.add(str);
|
||||
}
|
||||
if (!waitSaveUser.isEmpty()) {
|
||||
onePersonUtil.batchSaveUser(waitSaveUser);
|
||||
}
|
||||
if (!waitEditUser.isEmpty()) {
|
||||
onePersonUtil.expirationDateRefreshedUserCard(waitEditUser);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PersonApplyE> personListByxgfApplyPersonId(Long id) {
|
||||
QueryWrapper<PersonApplyDO> xgfApplyPersonDOQueryWrapper = new QueryWrapper<>();
|
||||
|
|
@ -124,5 +189,13 @@ public class PersonApplyGatewayImpl implements PersonApplyGateway {
|
|||
});
|
||||
return xgfApplyPersonES;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
HashSet<String> strings = new HashSet<>();
|
||||
System.out.println(strings.add("1"));
|
||||
System.out.println(strings.add("2"));
|
||||
System.out.println(strings.add("3"));
|
||||
System.out.println(strings.add("1"));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ import lombok.EqualsAndHashCode;
|
|||
@TableName("xgf_apply_person")
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class XgfApplyPersonDO extends BaseDO {
|
||||
// 申请归属1股份2分公司3相关方4临时人员
|
||||
private Integer personBelongType;
|
||||
//授权范围港区与区域
|
||||
@ApiModelProperty(value = "授权范围港区与区域")
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import com.zcloud.primeport.persistence.dataobject.VehicleApplyDO;
|
|||
import com.zcloud.primeport.persistence.dataobject.XgfApplyPersonDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
|
@ -33,5 +34,6 @@ public interface XgfApplyPersonMapper extends BaseMapper<XgfApplyPersonDO> {
|
|||
|
||||
IPage<PersonCountDto> personnelVehicleManagementList(Page<Map<String, Object>> page, @Param("params") Map<String, Object> params, String menuPerms);
|
||||
|
||||
List<XgfApplyPersonDO> listTodayHasPort();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import com.zcloud.primeport.persistence.dataobject.PersonApplyDO;
|
|||
import com.zcloud.primeport.persistence.dataobject.PersonCountDto;
|
||||
import com.zcloud.primeport.persistence.dataobject.XgfApplyPersonDO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
|
@ -20,5 +21,7 @@ public interface XgfApplyPersonRepository extends BaseRepository<XgfApplyPersonD
|
|||
PageResponse<PersonCountDto> personnelVehicleManagementList(Map<String, Object> params);
|
||||
|
||||
PageResponse<XgfApplyPersonDO> listPage(Map<String, Object> params);
|
||||
|
||||
List<XgfApplyPersonDO> listTodayHasPort();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ import com.zcloud.primeport.persistence.repository.XgfApplyPersonRepository;
|
|||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -72,6 +73,11 @@ public class XgfApplyPersonRepositoryImpl extends BaseRepositoryImpl<XgfApplyPer
|
|||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<XgfApplyPersonDO> listTodayHasPort() {
|
||||
return xgfApplyPersonMapper.listTodayHasPort();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,27 @@
|
|||
package com.zcloud.primeport.plan;
|
||||
|
||||
import com.jjb.saas.framework.job.Job;
|
||||
import com.jjb.saas.framework.job.annotation.JobRegister;
|
||||
import com.xxl.job.core.biz.model.ReturnT;
|
||||
import com.xxl.job.core.handler.annotation.XxlJob;
|
||||
import com.zcloud.primeport.persistence.repository.XgfApplyPersonRepository;
|
||||
import com.zcloud.primeport.plan.mjDevice.OnePersonUtil;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@Component
|
||||
public class OneLevelUserXxlJon implements Job {
|
||||
|
||||
@Resource
|
||||
private OnePersonUtil onePersonUtil;
|
||||
|
||||
@Override
|
||||
@JobRegister(cron = "0 14 0 * * ?", jobDesc = "口门定时任务,每日12点14进行当日可进门人员推送", triggerStatus = 1)
|
||||
@XxlJob("com.zcloud.plan.VehicleExpiredExpirationXxlJob")
|
||||
public ReturnT<String> execute(String param) {
|
||||
// 相关方、临时访客 每日授权 门禁
|
||||
onePersonUtil.execute();
|
||||
return ReturnT.SUCCESS;
|
||||
}
|
||||
}
|
||||
|
|
@ -9,11 +9,16 @@ import com.alibaba.fastjson.JSON;
|
|||
import com.alibaba.fastjson.TypeReference;
|
||||
import com.zcloud.gbscommon.dahuaDevice.DaHuaDeviceCommon;
|
||||
import com.zcloud.gbscommon.dahuaDevice.DhuaConfig;
|
||||
import com.zcloud.gbscommon.utils.DateUtil;
|
||||
import com.zcloud.primeport.persistence.dataobject.VehicleDockLogDO;
|
||||
import com.zcloud.primeport.persistence.dataobject.XgfApplyPersonDO;
|
||||
import com.zcloud.primeport.persistence.repository.VehicleApplyRepository;
|
||||
import com.zcloud.primeport.persistence.repository.VehicleDockLogRepository;
|
||||
import com.zcloud.primeport.persistence.repository.XgfApplyPersonRepository;
|
||||
import com.zcloud.primeport.plan.mjDevice.dto.OneLevelCarBlackDto;
|
||||
import com.zcloud.primeport.plan.mjDevice.dto.OneLevelCarRemoveDto;
|
||||
import com.zcloud.primeport.plan.mjDevice.dto.OneLevelCarSaveDto;
|
||||
import jodd.util.Base64;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
|
@ -32,24 +37,33 @@ import java.util.stream.Collectors;
|
|||
*/
|
||||
@Component
|
||||
public class OnePersonUtil {
|
||||
@Value("${kmmj.dockflag}")
|
||||
private Integer dockFlag;
|
||||
@Value("${oneLevelPerson.prefix}")
|
||||
private String prefix;
|
||||
private static String prefix2 = "https://skqhdg.porthebei.com:9008/yjkmRy/";
|
||||
@Resource
|
||||
private XgfApplyPersonRepository xgfApplyPersonRepository;
|
||||
// @Value("${kmmj.dockflag}")
|
||||
// private Integer dockFlag;
|
||||
// @Value("${oneLevelPerson.prefix}")
|
||||
// private String prefix;
|
||||
private static Integer dockFlag = 1;
|
||||
private static String prefix = "https://skqhdg.porthebei.com:9008/yjkmRy/";
|
||||
private static String username = "shuangkong";
|
||||
private static String password = "qinan@202604";
|
||||
private static String clientId = "mkmj_management";
|
||||
private static String clientSecret = "5ef82f7c-9926-46a3-8d07-136fd054849c";
|
||||
|
||||
/*
|
||||
* 刷入当日门禁权限有效期
|
||||
* */
|
||||
|
||||
|
||||
/**
|
||||
* 跟据身份证号码进行用户对接
|
||||
* 跟据身份证号码进行长期用户对接
|
||||
*/
|
||||
public void dockLongTermUserByUserCardAndFaceImg(String userCard, String userUid, String username, String userFaceImages, String visitStartTime, String visitEndTime) throws Exception {
|
||||
if (!dockFlag.equals(1)) return ;
|
||||
DaHuaDeviceCommon daHuaDeviceCommon = getDaHuaDeviceCommon();
|
||||
JSONObject userByUserCard = daHuaDeviceCommon.getUserByUserCard(userCard).getJSONObject("data");
|
||||
if (userByUserCard.isEmpty()) {
|
||||
// 这个人不存在进行保存用户
|
||||
// 这个人不存在 保存用户
|
||||
Long generateId = daHuaDeviceCommon.getGenerateId();
|
||||
JSONObject userInfo = new JSONObject();
|
||||
JSONObject fileInfo = new JSONObject();
|
||||
|
|
@ -59,7 +73,7 @@ public class OnePersonUtil {
|
|||
fileInfo.set("path", userFaceImages);
|
||||
dataList.add(fileInfo);
|
||||
userInfo.set("id", generateId);
|
||||
userInfo.set("personBiosignatures", generateId);
|
||||
userInfo.set("personBiosignatures", dataList);
|
||||
userInfo.set("validStartTime", visitStartTime);
|
||||
userInfo.set("validEndTime", visitEndTime);
|
||||
userInfo.set("code", userUid);
|
||||
|
|
@ -69,13 +83,31 @@ public class OnePersonUtil {
|
|||
userInfo.set("departmentId", 1L);
|
||||
userInfo.set("personType", 0);
|
||||
daHuaDeviceCommon.saveUser(userInfo);
|
||||
}else {
|
||||
// 这个人存在 更新用户
|
||||
expirationDateRefreshedUserCard(userCard, visitStartTime, visitEndTime);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量新增用户
|
||||
*/
|
||||
public void batchSaveUser(List<JSONObject> userList) throws Exception {
|
||||
if (!dockFlag.equals(1)) return ;
|
||||
DaHuaDeviceCommon daHuaDeviceCommon = getDaHuaDeviceCommon();
|
||||
JSONArray batchGenerateId = daHuaDeviceCommon.getBatchGenerateId(userList.size());
|
||||
for (int i = 0; i < batchGenerateId.size(); i++) {
|
||||
JSONObject entries = userList.get(i);
|
||||
entries.set("id", batchGenerateId.getInt(i));
|
||||
}
|
||||
daHuaDeviceCommon.batchSaveUser(userList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 跟据身份证号码进行用户门禁有效期刷新
|
||||
*/
|
||||
public void expirationDateRefreshedUserCard(String userCard, String visitStartTime, String visitEndTime) throws Exception {
|
||||
if (!dockFlag.equals(1)) return ;
|
||||
JSONObject entries = new JSONObject();
|
||||
entries.set("userCard", userCard);
|
||||
entries.set("visitStartTime", visitStartTime);
|
||||
|
|
@ -88,6 +120,7 @@ public class OnePersonUtil {
|
|||
*
|
||||
*/
|
||||
public void expirationDateRefreshedUserCard(List<JSONObject> userList) throws Exception {
|
||||
if (!dockFlag.equals(1)) return ;
|
||||
DaHuaDeviceCommon daHuaDeviceCommon = getDaHuaDeviceCommon();
|
||||
List<String> userCard = userList.stream().map(item -> item.getStr("userCard")).collect(Collectors.toList());
|
||||
Map<String, JSONObject> userCardMap = userList.stream().collect(Collectors.toMap(item -> item.getStr("userCard"), item -> item, (existing, replacement) -> replacement));
|
||||
|
|
@ -111,6 +144,7 @@ public class OnePersonUtil {
|
|||
* 跟据身份证号码进行用户门禁有效期刷新
|
||||
*/
|
||||
private void expirationDateBatchRefreshedUserCardList(List<JSONObject> dataList) throws Exception {
|
||||
if (!dockFlag.equals(1)) return ;
|
||||
DaHuaDeviceCommon daHuaDeviceCommon = getDaHuaDeviceCommon();
|
||||
daHuaDeviceCommon.updatePersonValidity(dataList);
|
||||
}
|
||||
|
|
@ -121,24 +155,64 @@ public class OnePersonUtil {
|
|||
* (1:有 2:无)
|
||||
*/
|
||||
public void freezeByUserCard(String userCard, Integer mkmjPermission) throws Exception {
|
||||
if (!dockFlag.equals(1)) return ;
|
||||
DaHuaDeviceCommon daHuaDeviceCommon = getDaHuaDeviceCommon();
|
||||
JSONObject userByUserCard = daHuaDeviceCommon.getUserByUserCard(userCard).getJSONObject("data");
|
||||
daHuaDeviceCommon.updatePersonStatus(userByUserCard.getLong("id"), mkmjPermission);
|
||||
}
|
||||
|
||||
/**
|
||||
* 跟据身份证号码查询用户信息
|
||||
*/
|
||||
public JSONArray getMkmjUserInfoByUserCard(List<String> userCards) throws Exception {
|
||||
if (!dockFlag.equals(1)) return new JSONArray();
|
||||
DaHuaDeviceCommon daHuaDeviceCommon = getDaHuaDeviceCommon();
|
||||
return daHuaDeviceCommon.getUserListByUserCard(userCards).getJSONObject("data").getJSONArray("pageData");
|
||||
}
|
||||
|
||||
public DaHuaDeviceCommon getDaHuaDeviceCommon() {
|
||||
DhuaConfig dhuaConfig = new DhuaConfig();
|
||||
dhuaConfig.setPrefix(prefix2);
|
||||
dhuaConfig.setClientId(clientId);
|
||||
dhuaConfig.setClientSecret(clientSecret);
|
||||
dhuaConfig.setUsername(username);
|
||||
dhuaConfig.setPassword(password);
|
||||
return new DaHuaDeviceCommon(dhuaConfig);
|
||||
protected DaHuaDeviceCommon getDaHuaDeviceCommon() {
|
||||
return new DaHuaDeviceCommon(new DhuaConfig(dockFlag, prefix, username, password, clientId, clientSecret));
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
OnePersonUtil onePersonUtil = new OnePersonUtil();
|
||||
onePersonUtil.freezeByUserCard("360425198208131948", "1");
|
||||
// JSONArray mkmjUserInfoByUserCard = onePersonUtil.getMkmjUserInfoByUserCard(Arrays.asList("360425198208131948"));
|
||||
// JSONArray mkmjUserInfoByUserCard2 = onePersonUtil.getMkmjUserInfoByUserCard(Arrays.asList("160425198208131948"));
|
||||
//// onePersonUtil.freezeByUserCard("360425198208131948", "1");
|
||||
// System.out.println(mkmjUserInfoByUserCard);
|
||||
// System.out.println(mkmjUserInfoByUserCard2);
|
||||
//
|
||||
// JSONArray batchGenerateId = onePersonUtil.getDaHuaDeviceCommon().getBatchGenerateId(10);
|
||||
|
||||
}
|
||||
|
||||
public void execute() {
|
||||
if (!dockFlag.equals(1)) return;
|
||||
List<XgfApplyPersonDO> dataList = xgfApplyPersonRepository.listTodayHasPort();
|
||||
if (!dataList.isEmpty()) {
|
||||
HashMap<String,JSONObject> userCardHashSet = new HashMap<>();
|
||||
ArrayList<JSONObject> jsonObjects = new ArrayList<>();
|
||||
dataList.forEach(item -> {
|
||||
JSONObject entries = new JSONObject();
|
||||
entries.set("userCard", Base64.decodeToString(item.getUserCard()));
|
||||
entries.set("validStartTime", DateUtil.date2Str(new Date(),"yyyy-MM-dd") + " 00:00:00");
|
||||
entries.set("validEndTime", DateUtil.date2Str(new Date(),"yyyy-MM-dd") + " 23:59:59");
|
||||
userCardHashSet.put(Base64.decodeToString(item.getUserCard()), entries);
|
||||
jsonObjects.add(entries);
|
||||
});
|
||||
JSONArray mkmjUserInfoByUserCard = null;
|
||||
try {
|
||||
mkmjUserInfoByUserCard = getMkmjUserInfoByUserCard(new ArrayList<>(userCardHashSet.keySet()));
|
||||
for (int i = 0; i < mkmjUserInfoByUserCard.size(); i++) {
|
||||
JSONObject jsonObject = mkmjUserInfoByUserCard.getJSONObject(i);
|
||||
userCardHashSet.get(jsonObject.getStr("paperNumber")).set("id", jsonObject.getLong("id"));
|
||||
}
|
||||
expirationDateBatchRefreshedUserCardList(new ArrayList<>(userCardHashSet.values()));
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -163,5 +163,27 @@
|
|||
ORDER BY
|
||||
u.department_id
|
||||
</select>
|
||||
<select id="listTodayHasPort" resultType="com.zcloud.primeport.persistence.dataobject.XgfApplyPersonDO">
|
||||
SELECT
|
||||
pa.employee_person_user_name,
|
||||
pa.user_card,
|
||||
pa.user_face_url,
|
||||
xap.gate_level_auth_area,
|
||||
xap.audit_flag,
|
||||
xap.person_belong_type,
|
||||
xap.visit_start_time,
|
||||
xap.visit_end_time
|
||||
FROM
|
||||
person_apply pa
|
||||
LEFT JOIN xgf_apply_person xap ON pa.xgf_apply_person_id = xap.id
|
||||
WHERE
|
||||
pa.delete_enum = "FALSE"
|
||||
AND xap.delete_enum = 'FALSE'
|
||||
AND xap.audit_flag = 2
|
||||
AND xap.person_belong_type IN ( 3, 4 )
|
||||
AND xap.visit_start_time <= DATE_FORMAT( now(), '%y-%m-%d' ) AND xap.visit_end_time >= DATE_FORMAT( now(), '%y-%m-%d' )
|
||||
GROUP BY
|
||||
pa.user_card
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue