From 108189b4a9f2948647b60aeac4f777bc237c532e Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期一, 26 二月 2024 18:38:14 +0800
Subject: [PATCH] ERP接口
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 73 ++++++++++++++++++++++++++++++++----
1 files changed, 65 insertions(+), 8 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
index fe0d178..d872e52 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -50,6 +50,8 @@
@Autowired
private CarsMapper carsMapper;
@Autowired
+ private ParkBookMapper parkBookMapper;
+ @Autowired
private DeviceEventMapper deviceEventMapper;
@Autowired
private MemberMapper memberMapper;
@@ -307,7 +309,9 @@
EventVisitDataRequest model = request.getData();
MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>();
queryWrapper.selectAll(Visits.class);
+ queryWrapper.selectAs(Member::getType,Visits::getMemberType);
queryWrapper.eq(Visits::getHkId,model.getVisitorId() );
+ queryWrapper.leftJoin(Member.class,Member::getId,Visits::getMemberId );
queryWrapper.last("limit 1");
Visits visits = visitsMapper.selectJoinOne(Visits.class,queryWrapper);
if(visits !=null){
@@ -319,9 +323,13 @@
//濡傛灉鏄瀹㈢櫥璁帮紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰�
retentionList.add(getRetentionModelByVisitRequest(visits,request));
//鏉ヨ鏃堕棿
- updateVistis.setOutDate(DateUtil.getISO8601DateByStr(model.getStartTime()));
+ updateVistis.setStatus(Constants.VisitStatus.signin);
+ updateVistis.setInDate(DateUtil.getISO8601DateByStr(model.getStartTime()));
+ updateVistis.setOutDate(DateUtil.getISO8601DateByStr(model.getEndTime()));
}else {
//濡傛灉鏄瀹㈢绂讳簨浠�
+ updateVistis.setStatus(Constants.VisitStatus.signout);
+ updateVistis.setInDate(DateUtil.getISO8601DateByStr(model.getStartTime()));
updateVistis.setOutDate(DateUtil.getISO8601DateByStr(model.getEndTime()));
updateVistis.setOutType(Constants.ZERO);
updateVistis.setOutInfo("璁垮姝e父绛剧");
@@ -341,7 +349,9 @@
event.setVisitorCode(request.getData().getVisitorCode());
event.setTimeout(request.getTimeout());
event.setSvrIndexCode(request.getData().getSvrIndexCode());
+ event.setHappenTime(request.getHappenTime());
event.setStatus(request.getStatus());
+ event.setEndTime(request.getData().getEndTime());
event.setStartTime(request.getData().getStartTime());
event.setSrcType(request.getSrcType());
event.setSrcParentIndex(request.getSrcParentIndex());
@@ -350,8 +360,23 @@
event.setSignOrg(request.getData().getSignOrg());
event.setSex(request.getData().getSex());
event.setPurpose(request.getData().getPurpose());
+ event.setPhone(request.getData().getPhone());
+ event.setBeVisitedPersonId(request.getData().getBeVisitedPersonId());
+ event.setBeVisitedPersonName(request.getData().getBeVisitedPersonName());
+ event.setBeVisitedPersonOrg(request.getData().getBeVisitedPersonOrg());
+ event.setBeVisitedPersonOrgId(request.getData().getBeVisitedPersonOrgId());
+ event.setVisitorWorkUint(request.getData().getVisitorWorkUint());
event.setPhotoUrl(getHkImgUrl(request.getData().getPhotoUrl()));
event.setPersonName(request.getData().getPersonName());
+ event.setCarNo(request.getData().getCarNo());
+ event.setCaptureUrl(request.getData().getCaptureUrl());
+ if(StringUtils.isNotBlank(request.getData().getCaptureUrl())){
+ event.setCaptureUrl(HKConstants.IMG_INDEX+request.getData().getCaptureUrl());
+ }
+ if(StringUtils.isNotBlank(request.getData().getPhotoUrl())){
+
+ event.setPhotoUrl(HKConstants.IMG_INDEX+request.getData().getPhotoUrl());
+ }
event.setIdType(request.getData().getIdType());
String idnum =request.getData().getIdNo();
if(StringUtils.isNotBlank(idnum)){
@@ -362,8 +387,6 @@
}
event.setEventType(request.getEventType());
event.setEventId(request.getEventId());
- event.setHappenTime(event.getHappenTime());
-
return event;
}
@@ -409,16 +432,28 @@
//闂ㄧ浜嬩欢闆嗗悎
List<EventParkInfoRequest> events = param.getParams().getEvents();
List<CarEvent> list = new ArrayList<>();
+ List<Retention> retentionList = new ArrayList<>();
+ List<String> delRetentionList = new ArrayList<>();
for(EventParkInfoRequest request : events){
if(request.getData() ==null ||StringUtils.isBlank(request.getData().getPlateNo())){
continue;
}
//灏佽浜嬩欢淇℃伅琛ㄥ璞�
- list.add(getParkEventModelByRequest(request));
+ list.add(getParkEventModelByRequest(request,delRetentionList,retentionList));
}
if(list.size()>0){
//鎻掑叆闂ㄧ璁板綍
carEventMapper.insertBatchSomeColumn(list);
+ }
+ if(delRetentionList.size()>0){
+ //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鍐呴儴浜哄憳锛�
+ retentionMapper.delete(new UpdateWrapper<Retention>().lambda()
+ .eq(Retention::getType,Constants.THREE)
+ .in(Retention::getCarNo,delRetentionList));
+ }
+ if(retentionList.size()>0){
+ //鍐嶆彃鍏ユ渶鏂扮殑鍦ㄥ巶浜哄憳
+ retentionMapper.insertBatchSomeColumn(retentionList);
}
log.error("銆愭捣搴峰仠杞﹀満浜嬩欢鎺ㄩ�併��========鎴愬姛=======");
}catch (Exception e){
@@ -434,7 +469,7 @@
* @param request
* @return
*/
- private CarEvent getParkEventModelByRequest(EventParkInfoRequest request) {
+ private CarEvent getParkEventModelByRequest(EventParkInfoRequest request, List<String> delRetentionList , List<Retention> retentionList ) {
CarEvent event = new CarEvent();
event.setIsdeleted(Constants.ZERO);
event.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime()));
@@ -488,18 +523,40 @@
event.setPlatePicUrl(getHkImgUrl(request.getData().getPicUrl().getPlatePicUrl()));
}
if(StringUtils.isNotBlank(event.getPlateNos())){
- Cars cars = carsMapper.selectOne(new QueryWrapper<Cars>().lambda()
- .eq(Cars::getCode,event.getPlateNos())
- .eq(Cars::getIsdeleted,Constants.ONE )
+ ParkBook cars = parkBookMapper.selectOne(new QueryWrapper<ParkBook>().lambda()
+ .eq(ParkBook::getCarCode,event.getPlateNos())
+ .eq(ParkBook::getIsdeleted,Constants.ONE )
.last("limit 1" ));
if(cars!=null){
event.setMemberId(cars.getMemberId());
}
+
+ if(Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_IN.getKey()){
+ //濡傛灉鏄叆鍘傛斁琛�
+ delRetentionList.add(event.getPlateNos());
+ retentionList.add(getRetentionModelByParkRequest(request));
+ }else if(Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_OUT.getKey()){
+ //濡傛灉鏄嚭鍦烘斁琛�
+ delRetentionList.add(event.getPlateNos());
+ }
}
+
return event;
}
+ private Retention getRetentionModelByParkRequest(EventParkInfoRequest request) {
+ Retention retention = new Retention();
+ retention.setIsdeleted(Constants.ZERO);
+ retention.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime()));
+ retention.setCarNo(request.getData().getPlateNo());
+ retention.setType(Constants.THREE);
+// retention.setDeviceName(request.getSrcName());
+// retention.setDeviceIndex(request.getSrcIndex());
+
+ return retention;
+ }
+
private void saveInterfaceLog(Object param, String path,String result) {
InterfaceLog hkMonitoryLogDO=new InterfaceLog();
hkMonitoryLogDO.setType(1);
--
Gitblit v1.9.3