From ffa54cddadb29a265869573abb0c1067fcd74b96 Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期五, 09 五月 2025 16:14:03 +0800 Subject: [PATCH] 提交 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java | 227 +++++++++++++++++++++++++++++++++----------------------- 1 files changed, 135 insertions(+), 92 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 18f39cc..4e7d5c0 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 @@ -1,7 +1,6 @@ package com.doumee.service.business.impl.hksync; import com.alibaba.fastjson.JSONObject; -import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.C; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.doumee.biz.system.SystemDictDataBiz; @@ -25,7 +24,6 @@ import com.doumee.dao.business.model.*; import com.doumee.dao.business.model.Member; import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO; -import com.doumee.service.business.CategoryService; import com.doumee.service.business.VisitsService; import com.doumee.service.business.impl.PlatformWarnEventServiceImpl; import com.doumee.service.business.third.TmsService; @@ -33,9 +31,7 @@ import com.doumee.service.business.third.model.response.TmsOrderInfoResponse; import com.github.yulichang.wrapper.MPJLambdaWrapper; import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; -import org.apache.commons.net.ftp.FTP; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -284,9 +280,9 @@ inoutDayCount.setOutOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutOtherMemberNum())+1);//鐩稿叧鏂瑰嚭鍦轰汉娆� } } - } - if(record.getMemberType()!=null){ - inoutRecordList.add(record); + if(record.getMemberType()!=null){ + inoutRecordList.add(record); + } } } } @@ -573,7 +569,7 @@ record.setCreateDate(DateUtil.getISO8601DateByStr2(request.getHappenTime())); record.setTimeInfo(Utils.Date.getStart(record.getCreateDate())); record.setType(Constants.ONE);//浜哄憳 - record.setMemberType(Constants.ZERO); + record.setMemberType(Constants.RetentionMemberType.fk); record.setIsdeleted(Constants.ZERO); record.setMemberName(visits.getName()); record.setObjId(visits.getId()); @@ -584,10 +580,12 @@ record.setInOrOut(Constants.ZERO); record.setHkEventId(request.getEventId()); record.setHkId(visits.getHkId()); + record.setDeviceName((request.getData()!=null &&request.getData().getParamValues()!=null)? + request.getData().getParamValues().getSrcName():request.getSrcName()); //濡傛灉鏄瀹㈤�氳 if(request.getData()!=null&&request.getData().getParamValues()!=null && StringUtils.equals(request.getData().getParamValues().getInOrOut(),"0")){ - //濡傛灉鏄瀹㈢櫥璁帮紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰� + //濡傛灉鏄瀹㈣繘鍏ワ紝褰曞叆浜哄憳鐨勫湪鍦烘暟鎹褰� Retention r = getRetentionModelByVisitRequest(visits, request.getHappenTime(),request.getSrcType()); r.setCarNo(request.getData().getParamValues().getPlateNos()); r.setAccessType(request.getData().getParamValues().getAccessType()); @@ -595,11 +593,48 @@ r.setDeviceIndex(request.getData().getParamValues().getSrcIndex()); retentionList.add(r); inoutDayCount.setInVisitorNum(Constants.formatIntegerNum(inoutDayCount.getInVisitorNum())+1); + record.setInOrOut(Constants.ZERO);//杩涘叆鍥尯 } if(request.getData()!=null&&request.getData().getParamValues()!=null && - !StringUtils.equals(request.getData().getParamValues().getInOrOut(),"0")){ + !StringUtils.equals(request.getData().getParamValues().getInOrOut(),"0")){ inoutDayCount.setOutVisitorNum(Constants.formatIntegerNum(inoutDayCount.getOutVisitorNum())+1); record.setInOrOut(Constants.ONE); + } + if( request.getData().getParamValues()!=null + && StringUtils.isNotBlank(request.getData().getParamValues().getPlateNos()) + && StringUtils.isNotBlank(request.getData().getParamValues().getParkIndex())){ + //濡傛灉鏄仠杞﹀満浜嬩欢锛岃褰曡溅杈嗙被鍨� + Category category = null; + record.setCarCode(request.getData().getParamValues().getPlateNos()); + if(StringUtils.isNotBlank(record.getCarCode())){ + category = categoryMapper.selectJoinOne(Category.class, new MPJLambdaWrapper<Category>() + .selectAll(Category.class) + .select("t4.name",Category::getParentName) + .leftJoin("category t4 on t.parent_id=t4.id") + .eq(Category::getIsdeleted,Constants.ZERO) + .eq(Category::getBizType,Constants.RetentionCarType.fkCar) + .last("limit 1")); + if(category ==null){ + category = new Category(); + category.setName("璁垮杞﹁締"); + } + category.setParentName(StringUtils.defaultString(category.getParentName(),"璁垮杞﹁締")); + } + record.setCarBizType(Constants.RetentionCarType.fkCar); + record.setCategoryId(category.getId()); + record.setDeviceName(request.getData().getParamValues().getGateName()); + record.setCategoryName(category.getName()); + record.setCategoryParentId(category.getParentId()); + record.setCategoryParentName(category.getParentName()); + if(Constants.equalsInteger(record.getInOrOut(),Constants.ONE)){ + record.setRemark("璁垮璺熼殢杞﹁締绂诲洯骞惰嚜鍔ㄧ绂�"); + try { + //璁垮鐢宠鑷姩绛剧 + visitsService.visitLevelForCarOut(visits); + }catch (Exception e){ + log.error("璁垮璺熼殢杞﹁締鍑哄洯鑷姩绛剧澶辫触锛�==========="+e.getMessage()); + } + } } inoutRecordList.add(record); } @@ -665,6 +700,10 @@ event.setSrcParentIndex(request.getSrcParentIndex()); event.setSrcName((request.getData()!=null &&request.getData().getParamValues()!=null)? request.getData().getParamValues().getSrcName():request.getSrcName()); + if(StringUtils.isBlank(event.getSrcName())){ + event.setSrcName((request.getData()!=null &&request.getData().getParamValues()!=null)? + request.getData().getParamValues().getGateName()+ request.getData().getParamValues().getParkIndex():request.getSrcName()); + } event.setSrcIndex(request.getSrcIndex()); event.setSex(detail.getSex()); event.setPurpose(request.getData().getVisitorInvoices().getVisitReason()); @@ -852,9 +891,11 @@ .in(Retention::getCarNo,delRetentionList)); } if(delMemberRetentionList.size()>0){ - //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鍐呴儴浜哄憳鍜岃瀹級 + //鍏堝垹闄ゅ師鏈夌殑鍦ㄥ満浜哄憳(鍐呴儴浜哄憳銆佺浉鍏虫柟鍜岃瀹級 retentionMapper.delete(new UpdateWrapper<Retention>().lambda() - .in(Retention::getType,Constants.memberType.internal,Constants.memberType.visitor) + .in(Retention::getType,Constants.RetentionMemberType.internalMember + ,Constants.RetentionMemberType.relMember + ,Constants.RetentionMemberType.fk) .in(Retention::getMemberId,delMemberRetentionList)); } if(retentionList.size()>0){ @@ -890,11 +931,11 @@ if(StringUtils.isNotBlank(event.getPlateNos())){ //鏍囪杞﹁締杩涘嚭璁板綍 List<Category> categoryList = categoryMapper.selectJoinList(Category.class, new MPJLambdaWrapper<Category>() - .selectAll(Category.class) - .select("t4.name",Category::getParentName) - .leftJoin("category t4 on t.parent_id=t4.id") - .eq(Category::getIsdeleted,Constants.ZERO) - .isNotNull(Category::getBizType));//鏌ヨ鎵�鏈夊甫鏈変笟鍔$被鍨嬬殑杞﹁締鍒嗙被缂栫爜 + .selectAll(Category.class) + .select("t4.name",Category::getParentName) + .leftJoin("category t4 on t.parent_id=t4.id") + .eq(Category::getIsdeleted,Constants.ZERO) + .isNotNull(Category::getBizType));//鏌ヨ鎵�鏈夊甫鏈変笟鍔$被鍨嬬殑杞﹁締鍒嗙被缂栫爜 List<Visits> visitsList = null; InoutRecord carrecord = new InoutRecord(); carrecord.setCreateDate(DateUtil.getISO8601DateByStr2(request.getHappenTime())); @@ -906,27 +947,27 @@ carrecord.setHkEventId(request.getEventId()); carrecord.setCarCode(event.getPlateNos()); Cars carModel = carsMapper.selectJoinOne(Cars.class,new MPJLambdaWrapper<Cars>() - .selectAll(Cars.class ) - .selectAs(Company::getType,Cars::getCompanyType) - .selectAs(Member::getName,Cars::getMemberName) - .selectAs(Member::getIdcardDecode,Cars::getIdcardDecode) - .selectAs(Member::getCode,Cars::getMemberCode) - .selectAs(Member::getFaceImg,Cars::getFaceImg) - .selectAs(Member::getIdcardNo,Cars::getIdcardNo) - .selectAs(Member::getName,Cars::getMemberName) - .selectAs(Member::getPhone,Cars::getMemberPhone) - .selectAs(Company::getCompanyNamePath,Cars::getCompanyName) - .selectAs(Category::getBizType,Cars::getBizType) - .selectAs(Category::getName,Cars::getCateName) - .select("t4.id",Cars::getCatePId) - .select("t4.name",Cars::getCatePName) - .leftJoin(Company.class,Company::getId,Cars::getGroupId) - .leftJoin(Member.class,Member::getId,Cars::getMemberId) - .leftJoin(Category.class,Category::getId,Cars::getCateId) - .leftJoin("category t4 on t3.parent_id=t4.id") - .eq(Cars::getCode,event.getPlateNos()) - .eq(Cars::getIsdeleted,Constants.ZERO) - .last(" limit 1")); + .selectAll(Cars.class ) + .selectAs(Company::getType,Cars::getCompanyType) + .selectAs(Member::getName,Cars::getMemberName) + .selectAs(Member::getIdcardDecode,Cars::getIdcardDecode) + .selectAs(Member::getCode,Cars::getMemberCode) + .selectAs(Member::getFaceImg,Cars::getFaceImg) + .selectAs(Member::getIdcardNo,Cars::getIdcardNo) + .selectAs(Member::getName,Cars::getMemberName) + .selectAs(Member::getPhone,Cars::getMemberPhone) + .selectAs(Company::getCompanyNamePath,Cars::getCompanyName) + .selectAs(Category::getBizType,Cars::getBizType) + .selectAs(Category::getName,Cars::getCateName) + .select("t4.id",Cars::getCatePId) + .select("t4.name",Cars::getCatePName) + .leftJoin(Company.class,Company::getId,Cars::getGroupId) + .leftJoin(Member.class,Member::getId,Cars::getMemberId) + .leftJoin(Category.class,Category::getId,Cars::getCateId) + .leftJoin("category t4 on t3.parent_id=t4.id") + .eq(Cars::getCode,event.getPlateNos()) + .eq(Cars::getIsdeleted,Constants.ZERO) + .last(" limit 1")); if(carModel!=null){ //0瀹夋嘲鍏姟杞� 1瀹夋嘲鑷湁鐗╂祦杞� 2鍏跺畠 event.setMemberId(carModel.getMemberId()); @@ -988,7 +1029,7 @@ carrecord.setCompanyId(carTypeJob.getCompanyId()); carrecord.setCompanyName(carTypeJob.getCompanyNamePath()); carrecord.setType(Constants.RetentionMemberType.car); - if(carModel.getMemberPhone()!=null || StringUtils.isNotBlank(carModel.getMemberName())){ + if(carTypeJob.getDriverName()!=null || StringUtils.isNotBlank(carTypeJob.getDrivierPhone())){ //璐ц繍鍙告満(濡傛灉鍙告満鎵嬫満鍙锋垨鑰呭鍚嶄笉涓虹┖锛� carrecord.setMemberType(Constants.RetentionMemberType.driver); } @@ -1038,7 +1079,7 @@ carrecord.setInOrOut(Constants.ONE); } //杞﹁締杩涘叆璁板綍瀵瑰簲涓氬姟绫诲瀷 - if(isCarInOrOutEvent(request) &&( 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()) @@ -1054,41 +1095,43 @@ event.setCarType(Constants.RetentionCarType.fkCar); int index =0; carrecord.setCarBizType(Constants.RetentionCarType.fkCar); - Category category =findCategoryByBizType(Constants.RetentionCarType.fkCar,"璁垮杞﹁締","璁垮杞﹁締",categoryList); - carrecord.setCategoryId(category.getId()); - carrecord.setCategoryName(StringUtils.defaultString(category.getName(),"璁垮杞﹁締")); - carrecord.setCategoryParentName(StringUtils.defaultString(category.getParentName(),"璁垮杞﹁締")); - carrecord.setCategoryParentId(category.getParentId()); - for(Visits v :visitsList){ - delMemberRetentionList.add(event.getMemberId()); - InoutRecord copyObj = new InoutRecord(); - BeanUtils.copyProperties(carrecord,copyObj); - copyObj.setMemberId(v.getMemberId()); - copyObj.setMemberName(v.getName()); - copyObj.setMemberPhone(v.getPhone()); - copyObj.setCompanyName(v.getCompanyName()); - copyObj.setType(Constants.ONE); - copyObj.setRemark(carrecord.getCarCode()); - copyObj.setCarCode(index>=0?null:carrecord.getCarCode()); - copyObj.setMemberType(Constants.RetentionMemberType.fk); - inoutRecordList.add(copyObj); - index++; - if(Constants.equalsInteger(carrecord.getInOrOut(),Constants.ONE)){ - //濡傛灉鏄溅杈嗗嚭鍥尯 缁熻璁垮杩涘叆鏁� - inoutDayCount.setOutVisitorNum(Constants.formatIntegerNum(inoutDayCount.getOutVisitorNum())+1); - try { - //璁垮鐢宠鑷姩绛剧 - visitsService.visitLevelForCarOut(v); - //缁熻绛剧鏁� - inoutDayCount.setLeaveVisitorNum(Constants.formatIntegerNum(inoutDayCount.getLeaveVisitorNum())+1); - }catch (Exception e){ - log.error("璁垮璺熼殢杞﹁締鍑哄洯鑷姩绛剧澶辫触锛�==========="+e.getMessage()); + if(1==2){ + Category category =findCategoryByBizType(Constants.RetentionCarType.fkCar,"璁垮杞﹁締","璁垮杞﹁締",categoryList); + carrecord.setCategoryId(category.getId()); + carrecord.setCategoryName(StringUtils.defaultString(category.getName(),"璁垮杞﹁締")); + carrecord.setCategoryParentName(StringUtils.defaultString(category.getParentName(),"璁垮杞﹁締")); + carrecord.setCategoryParentId(category.getParentId()); + for(Visits v :visitsList){ + delMemberRetentionList.add(event.getMemberId()); + InoutRecord copyObj = new InoutRecord(); + BeanUtils.copyProperties(carrecord,copyObj); + copyObj.setMemberId(v.getMemberId()); + copyObj.setMemberName(v.getName()); + copyObj.setMemberPhone(v.getPhone()); + copyObj.setCompanyName(v.getCompanyName()); + copyObj.setType(Constants.ONE); + copyObj.setRemark("璁垮璺熼殢杞﹁締銆�"+carrecord.getCarCode()+"銆戠鍥�"); + copyObj.setCarCode(index>0?null:carrecord.getCarCode()); + copyObj.setMemberType(Constants.RetentionMemberType.fk); + inoutRecordList.add(copyObj); + index++; + if(Constants.equalsInteger(carrecord.getInOrOut(),Constants.ONE)){ + //濡傛灉鏄溅杈嗗嚭鍥尯 缁熻璁垮杩涘叆鏁� + inoutDayCount.setOutVisitorNum(Constants.formatIntegerNum(inoutDayCount.getOutVisitorNum())+1); + try { + //璁垮鐢宠鑷姩绛剧 + visitsService.visitLevelForCarOut(v); + //缁熻绛剧鏁� + inoutDayCount.setLeaveVisitorNum(Constants.formatIntegerNum(inoutDayCount.getLeaveVisitorNum())+1); + }catch (Exception e){ + log.error("璁垮璺熼殢杞﹁締鍑哄洯鑷姩绛剧澶辫触锛�==========="+e.getMessage()); + } + }else{ + //濡傛灉鏄繘鍏ュ洯鍖猴紝璁垮褰曞叆鍦ㄥ洯浜哄憳璁板綍 + retentionList.add(getRetentionModelByRequest(copyObj,request)); + //缁熻璁垮鍑鸿鏁� + inoutDayCount.setInVisitorNum(Constants.formatIntegerNum(inoutDayCount.getInVisitorNum())+1); } - }else{ - //濡傛灉鏄繘鍏ュ洯鍖猴紝璁垮褰曞叆鍦ㄥ洯浜哄憳璁板綍 - retentionList.add(getRetentionModelByRequest(copyObj,request)); - //缁熻璁垮鍑鸿鏁� - inoutDayCount.setInVisitorNum(Constants.formatIntegerNum(inoutDayCount.getInVisitorNum())+1); } } } @@ -1287,9 +1330,9 @@ param.setContractNumber(detail.getContractNum()); TmsOrderInfoResponse response = tmsService.orderInfo(param); if(response!=null &&( StringUtils.equals(response.getOrderStatus(),"3") ) - ||StringUtils.equals(response.getOrderStatus(),"4") - ||StringUtils.equals(response.getOrderStatus(),"5") - ||StringUtils.equals(response.getOrderStatus(),"6")){ + ||StringUtils.equals(response.getOrderStatus(),"4") + ||StringUtils.equals(response.getOrderStatus(),"5") + ||StringUtils.equals(response.getOrderStatus(),"6")){ //濡傛灉鍚堝悓鍦ㄩ�旓紝鍒欒嚜鍔ㄧ鍒� jobAutoSignBiz(platformJob); } @@ -1391,20 +1434,20 @@ continue; } Integer workStatus = 0; - if( data.getHPWorkingStatus() ==null || data.getHPWorkingStatus().size() ==0){ - continue;//濡備綍鎺ㄩ�佺姸鎬侀泦鍚堜负绌猴紝涓嶅鐞嗚烦杩� - } - PlatformDevice model = platformDeviceMapper.selectOne(new QueryWrapper<PlatformDevice>().lambda() - .eq(PlatformDevice::getDeviceId,request.getSrcIndex()) - .eq(PlatformDevice::getIsdeleted,Constants.ZERO) - .last("limit 1")); - if(model ==null){ - continue;//鐩戞帶鐐规湭鍚屾锛岃烦杩囧鐞� - } - //鍚勮溅閬撹溅杈嗙姸鎬� - for(EventPlatformStatusInfoRequest status : data.getHPWorkingStatus()){ + if( data.getHPWorkingStatus() ==null || data.getHPWorkingStatus().size() ==0){ + continue;//濡備綍鎺ㄩ�佺姸鎬侀泦鍚堜负绌猴紝涓嶅鐞嗚烦杩� + } + PlatformDevice model = platformDeviceMapper.selectOne(new QueryWrapper<PlatformDevice>().lambda() + .eq(PlatformDevice::getDeviceId,request.getSrcIndex()) + .eq(PlatformDevice::getIsdeleted,Constants.ZERO) + .last("limit 1")); + if(model ==null){ + continue;//鐩戞帶鐐规湭鍚屾锛岃烦杩囧鐞� + } + //鍚勮溅閬撹溅杈嗙姸鎬� + for(EventPlatformStatusInfoRequest status : data.getHPWorkingStatus()){ - } + } } result = "鎴愬姛"; log.info("銆愭捣搴锋湀鍙板伐浣滅姸鎬佷簨浠舵帹閫併��========鎴愬姛======="); @@ -1521,7 +1564,7 @@ platformJobMapper.updateById(update); } dealPlatformContentForLeave(job); - } + } } }else if(StringUtils.equals(status.getMotionStatus(),"enter")){ //濡傛灉鏄溅杈嗚繘鍏� @@ -1546,7 +1589,7 @@ }else{ continue;//鍏朵粬鐘舵�佷笉澶勭悊锛岃烦杩� } - //鏆傛椂涓嶅仛鐩稿叧鑷姩瀹屾垚浣滀笟涓氬姟澶勭悊 + //鏆傛椂涓嶅仛鐩稿叧鑷姩瀹屾垚浣滀笟涓氬姟澶勭悊 // dealPlatformJobLogBiz(update,status);//璁板綍浣滀笟鏃ュ織 } if(eventList.size()>0){ -- Gitblit v1.9.3