From 55075b2bbf2b6c41ec6ce831fb2b08666dbf4bf5 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 07 五月 2025 18:52:26 +0800 Subject: [PATCH] 最新版本541200007 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 56 ++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 38 insertions(+), 18 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java index 82cee9c..18f39cc 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java @@ -239,12 +239,13 @@ record.setCreateDate(DateUtil.getISO8601DateByStr2(request.getHappenTime())); record.setTimeInfo(Utils.Date.getStart(record.getCreateDate())); record.setType(Constants.ONE);//浜哄憳 + record.setDeviceName(request.getSrcName()); record.setMemberType(Constants.RetentionMemberType.fk);//榛樿涓烘湭鐭ヤ汉鍛橈紙璁垮锛� record.setIsdeleted(Constants.ZERO); record.setHkEventId(request.getEventId()); record.setHkId(userNo); if(d!=null && Constants.equalsInteger(d.getIsEntrance(),Constants.ONE)){ - if(Constants.formatIntegerNum(request.getData().getExtEventInOut()) != Constants.ONE){ + if(Constants.formatIntegerNum(request.getData().getExtEventInOut()) == Constants.ONE){ //濡傛灉鏄繘闂紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰� record.setInOrOut(Constants.ZERO); inoutDayCount.setInMemberNum(Constants.formatIntegerNum(inoutDayCount.getInMemberNum())+1);//鍏ュ満浜烘 @@ -284,8 +285,10 @@ } } } + if(record.getMemberType()!=null){ + inoutRecordList.add(record); + } } - inoutRecordList.add(record); } } @@ -565,6 +568,8 @@ //濡傛灉浜哄憳淇℃伅瀛樺湪锛屽垏鏄瀹㈤�氳锛屽垯鍒犻櫎涔嬪墠鐨勬墍鏈夎繘鍦烘暟鎹紙鏃犺姝ゆ鎺ㄩ�佹槸杩涘巶杩樻槸鍑哄満鎺ㄩ�佷簨浠讹級 delRetentionLis.add(visits.getMemberId()); InoutRecord record = new InoutRecord(); + record.setDeviceName((request.getData()!=null &&request.getData().getParamValues()!=null)? + request.getData().getParamValues().getSrcName():request.getSrcName()); record.setCreateDate(DateUtil.getISO8601DateByStr2(request.getHappenTime())); record.setTimeInfo(Utils.Date.getStart(record.getCreateDate())); record.setType(Constants.ONE);//浜哄憳 @@ -897,6 +902,7 @@ carrecord.setType(Constants.ZERO);//杞﹁締 carrecord.setIsdeleted(Constants.ZERO); carrecord.setObjType(Constants.ZERO); + carrecord.setDeviceName(request.getData().getGateName()+request.getData().getRoadwayName());//鍋滆溅鍦哄拰鍑哄叆鍙� carrecord.setHkEventId(request.getEventId()); carrecord.setCarCode(event.getPlateNos()); Cars carModel = carsMapper.selectJoinOne(Cars.class,new MPJLambdaWrapper<Cars>() @@ -926,7 +932,7 @@ event.setMemberId(carModel.getMemberId()); event.setCompanyId(carModel.getGroupId()); //-----------------20250429鏀归��----start--------------- - event.setCarType(carModel.getBizType());//杞﹁締涓氬姟绫诲瀷 + event.setCarType(carModel.getBizType()==null?Constants.RetentionCarType.self : carModel.getBizType());//杞﹁締涓氬姟绫诲瀷 carrecord.setObjType(Constants.FOUR); carrecord.setMemberName(carModel.getMemberName());//鍙告満 carrecord.setMemberPhone(carModel.getMemberPhone());//鍙告満 @@ -942,7 +948,7 @@ carrecord.setCategoryId(carModel.getCateId()); carrecord.setCategoryName(carModel.getCateName()); carrecord.setCategoryParentId(carModel.getCatePId()); - carrecord.setCategoryParentName(carModel.getCatePName()); + carrecord.setCategoryParentName(StringUtils.defaultString(carModel.getCatePName(),carModel.getCateName())); carrecord.setType( Constants.RetentionMemberType.car);//鍙槸杞﹁締鐨勮褰� if(carModel.getMemberId()!=null){ if(Constants.equalsInteger(carModel.getCompanyType(),Constants.ONE)){ @@ -1021,7 +1027,7 @@ //濡傛灉鏄叆鍘傛斁琛� delRetentionList.add(event.getPlateNos()); delMemberRetentionList.add(event.getMemberId()); - retentionList.add(getRetentionModelByParkRequest(request,event));//鍦ㄥ巶杞﹁締淇℃伅 + retentionList.add(getRetentionModelByParkRequest(request,event,carrecord));//鍦ㄥ巶杞﹁締淇℃伅 inoutDayCount.setInCarNum(Constants.formatIntegerNum(inoutDayCount.getInCarNum())+1); carrecord.setInOrOut(Constants.ZERO); }else if(Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_OUT.getKey()){ @@ -1029,10 +1035,10 @@ delRetentionList.add(event.getPlateNos()); delMemberRetentionList.add(event.getMemberId()); inoutDayCount.setOutCarNum(Constants.formatIntegerNum(inoutDayCount.getOutCarNum())+1); - carrecord.setInOrOut(Constants.ZERO); + carrecord.setInOrOut(Constants.ONE); } //杞﹁締杩涘叆璁板綍瀵瑰簲涓氬姟绫诲瀷 - if(event.getCarType() ==null || event.getCarType().equals(Constants.RetentionCarType.other)){ + if(isCarInOrOutEvent(request) &&( event.getCarType() ==null || event.getCarType().equals(Constants.RetentionCarType.other))){ //濡傛灉鏈瘑鍒埌杞﹀瀷锛屼笉鏄浐瀹氳溅 涔熶笉鏄揣杩愯溅杈嗭紝鍒欐鏌ユ槸鍚︽槸璁垮杞� visitsList = visitsMapper.selectList(new QueryWrapper<Visits>().lambda() .eq(Visits::getCarNos,event.getPlateNos()) @@ -1050,8 +1056,8 @@ carrecord.setCarBizType(Constants.RetentionCarType.fkCar); Category category =findCategoryByBizType(Constants.RetentionCarType.fkCar,"璁垮杞﹁締","璁垮杞﹁締",categoryList); carrecord.setCategoryId(category.getId()); - carrecord.setCategoryName(category.getName()); - carrecord.setCategoryParentName(category.getParentName()); + carrecord.setCategoryName(StringUtils.defaultString(category.getName(),"璁垮杞﹁締")); + carrecord.setCategoryParentName(StringUtils.defaultString(category.getParentName(),"璁垮杞﹁締")); carrecord.setCategoryParentId(category.getParentId()); for(Visits v :visitsList){ delMemberRetentionList.add(event.getMemberId()); @@ -1087,12 +1093,20 @@ } } } - if(event.getCarType() !=null && !event.getCarType().equals(Constants.RetentionCarType.fkCar)){ + if(isCarInOrOutEvent(request) && event.getCarType() !=null && !event.getCarType().equals(Constants.RetentionCarType.fkCar)){ //褰曞叆闈炶瀹㈢被鍨嬭溅杈嗚繘鍑鸿褰� dealNotFkCarMemberBiz(event,request,carrecord,retentionList,inoutDayCount,inoutRecordList); } } return event; + } + + private boolean isCarInOrOutEvent(EventParkInfoRequest request) { + if(Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_IN.getKey() || + Constants.formatIntegerNum(request.getEventType()) == HKConstants.EventTypes.PARK_PASS_OUT.getKey()){ + return true; + } + return false; } private void dealNotFkCarMemberBiz( CarEvent event ,EventParkInfoRequest request, InoutRecord carrecord,List<Retention> retentionList,InoutDayCount inoutDayCount,List<InoutRecord> inoutRecordList) { @@ -1114,7 +1128,7 @@ } //缁熻浠婃棩鍏ュ洯鎬讳汉娆� inoutDayCount.setInMemberNum(Constants.formatIntegerNum(inoutDayCount.getInMemberNum())+1); - }else if(carrecord.getMemberId()!=null && Constants.equalsInteger(carrecord.getInOrOut(),Constants.ONE)) { + }else if( Constants.equalsInteger(carrecord.getInOrOut(),Constants.ONE)) { //濡傛灉鏄嚭鍥尯 if(Constants.equalsInteger(carrecord.getMemberType(),Constants.RetentionMemberType.relMember)){ //濡傛灉鏄浉鍏虫柟锛岀粺璁′粖鏃ョ疮璁℃暟 @@ -1127,18 +1141,20 @@ inoutDayCount.setOutMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutMemberNum())+1); } } - if(carrecord.getInOrOut() !=null) {//濡傛灉鏄嚭鍏ヨ褰� - if(Constants.equalsInteger(carrecord.getCarBizType(),Constants.RetentionCarType.other)){ - carrecord.setCategoryName("鏈煡杞﹁締");//榛樿鏈煡杞﹁締 - } - inoutRecordList.add(carrecord);//褰曞叆杞﹁締浠ュ強鎼哄甫浜哄憳鐨勫叆鍥槑缁嗚褰曪紙闈炶瀹級 + if(Constants.equalsInteger(carrecord.getCarBizType(),Constants.RetentionCarType.other)){ + carrecord.setCategoryName("鏈煡杞﹁締");//榛樿鏈煡杞﹁締 + carrecord.setCategoryParentName("鏈煡杞﹁締");//榛樿鏈煡杞﹁締 } + inoutRecordList.add(carrecord);//褰曞叆杞﹁締浠ュ強鎼哄甫浜哄憳鐨勫叆鍥槑缁嗚褰曪紙闈炶瀹級 } private Category findCategoryByBizType(Integer carType,String tempname, String pName,List<Category> categoryList) { if(categoryList!=null){ for(Category category :categoryList){ if(Constants.equalsInteger(carType,category.getBizType())){ + if(StringUtils.isBlank(category.getParentName() )){ + category.setParentName(category.getName()); + } return category; } } @@ -1218,7 +1234,6 @@ event.setSrcName(request.getSrcName()); event.setSrcIndex(request.getSrcIndex()); event.setRoadwayType(request.getData().getRoadwayType()); - event.setRoadwayName(request.getData().getRoadwayName()); event.setRoadwayIndex(request.getData().getRoadwayIndex()); event.setPlateType(request.getData().getPlateType()); event.setTimeout(request.getTimeout()); @@ -1231,6 +1246,7 @@ event.setInoutType(request.getData().getInoutType()); event.setHappenTime(request.getHappenTime()); event.setGateName(request.getData().getGateName()); + event.setRoadwayName(request.getData().getRoadwayName()); event.setGateIndex(request.getData().getGateIndex()); event.setEventType(request.getEventType()); event.setEventIndex(request.getData().getEventIndex()); @@ -1316,7 +1332,7 @@ retention.setRemark("璺熼殢杞﹁締鍏ュ洯鍖�"); return retention; } - private Retention getRetentionModelByParkRequest(EventParkInfoRequest request,CarEvent event ) { + private Retention getRetentionModelByParkRequest(EventParkInfoRequest request,CarEvent event ,InoutRecord carrecord ) { Retention retention = new Retention(); retention.setIsdeleted(Constants.ZERO); retention.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime())); @@ -1325,6 +1341,10 @@ retention.setMemberId(event.getMemberId()); retention.setCarType(event.getCarType()); retention.setCompanyId(event.getCompanyId()); + retention.setCategoryId(carrecord.getCategoryId()); + retention.setCategoryName(carrecord.getCategoryName()); + retention.setCategoryParentId(carrecord.getCategoryParentId()); + retention.setCategoryParentName(carrecord.getCategoryParentName()); // retention.setDeviceName(request.getSrcName()); // retention.setDeviceIndex(request.getSrcIndex()); -- Gitblit v1.9.3