From 995436f56f93874f19b8094fe5537e96d413b6fd Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 30 七月 2024 18:07:49 +0800
Subject: [PATCH] 修复bug
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java | 125 +++++++++++++++++++++++++----------------
1 files changed, 77 insertions(+), 48 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
index b902487..8d25f41 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
@@ -18,7 +18,9 @@
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.CarEventMapper;
+import com.doumee.dao.business.CarsMapper;
import com.doumee.dao.business.ParksMapper;
+import com.doumee.dao.business.VisitsMapper;
import com.doumee.dao.business.join.ParkBookJoinMapper;
import com.doumee.dao.business.model.*;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -30,6 +32,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Objects;
/**
* 娴峰悍鍋滆溅搴撳悓姝ervice瀹炵幇
@@ -47,6 +50,10 @@
private ParkBookJoinMapper parkBookMapper;
@Autowired
private CarEventMapper carEventMapper;
+ @Autowired
+ private CarsMapper carsMapper;
+ @Autowired
+ private VisitsMapper visitsMapper;
@Override
public void syncParkBookData() {
if(Constants.DEALING_HK_PARKBOOK){
@@ -60,30 +67,34 @@
return;
}
Date date = new Date();
- //鍏堝嚭鎵�鏈夐渶瑕佸彇娑堝寘鏈熺殑鏁版嵁璁板綍
- for(ParkBook c : list) {
- if(Constants.equalsObject(c.getIsdeleted(),Constants.ONE)){
- //濡傛灉鍙栨秷棰勭害锛屽垯杩涜鍙栨秷鍖呮湡
- if(StringUtils.isNotBlank(c.getParkHkId())
- && StringUtils.isNotBlank(c.getCarCode())){
- boolean result = cancelParkBookHk(c);
- c.setHkStatus(result?Constants.ONE:Constants.TWO);
- c.setRemark(result?"鍙栨秷鍖呮湡鎴愬姛":"鍙栨秷鍖呮湡澶辫触");
- }else{
- c.setHkStatus(Constants.TWO);//涓嬪彂澶辫触
- c.setRemark("鍙栨秷鍖呮湡澶辫触");
- }
- c.setHkDate(date);
- parkBookMapper.updateById(c);
- }
- }
//澶勭悊鎵�鏈夐渶瑕佸寘鏈熺殑杞﹁締鏁版嵁璁板綍
for(ParkBook c : list) {
- if(Constants.equalsObject(c.getIsdeleted(),Constants.ONE)) {
- //鍒犻櫎鐨勫凡澶勭悊锛岃烦杩囧鐞�
- continue;
+ dealParkBookBiz(c,date);
+ }
+ }catch (Exception e){
+ e.printStackTrace();
+ }finally {
+ Constants.DEALING_HK_PARKBOOK =false;
+ }
+
+ }
+
+ private void dealParkBookBiz(ParkBook c,Date date) {
+ try {
+ if(Constants.equalsObject(c.getIsdeleted(),Constants.ONE)) {
+ //濡傛灉鍙栨秷棰勭害锛屽垯杩涜鍙栨秷鍖呮湡
+ if(StringUtils.isNotBlank(c.getParkHkId())
+ && StringUtils.isNotBlank(c.getCarCode())){
+ boolean result = cancelParkBookHk(c);
+ c.setHkStatus(result?Constants.ONE:Constants.TWO);
+ c.setRemark(result?"鍙栨秷鍖呮湡鎴愬姛":"鍙栨秷鍖呮湡澶辫触");
+ }else{
+ c.setHkStatus(Constants.TWO);//涓嬪彂澶辫触
+ c.setRemark("鍙栨秷鍖呮湡澶辫触");
}
- //鏁版嵁涓嶅悎娉曪紝鐩存帴鎻愮ず涓嬪彂澶辫触
+ c.setHkDate(date);
+ }else{
+ //濡傛灉鏄柊澧炲寘鏈燂紝鏁版嵁涓嶅悎娉曪紝鐩存帴鎻愮ず涓嬪彂澶辫触
if(StringUtils.isNotBlank(c.getParkHkId())
&& StringUtils.isNotBlank(c.getCarCode())){
boolean result = addParkBookHk(c);
@@ -93,16 +104,15 @@
c.setHkStatus(Constants.TWO);
c.setRemark("鍖呮湡澶辫触~");
}
- c.setHkDate(date);
- parkBookMapper.updateById(c);
}
+ c.setHkDate(date);
+ parkBookMapper.updateById(c);
}catch (Exception e){
- e.printStackTrace();
- }finally {
- Constants.DEALING_HK_PARKBOOK =false;
+
}
}
+
@Override
public void syncParkBookBySingleModel(ParkBook c) {
if(Constants.equalsObject(c.getIsdeleted(),Constants.ONE)){
@@ -138,8 +148,8 @@
CarChargeAddRequest param = new CarChargeAddRequest();
param.setPlateNo(c.getCarCode());
param.setParkSyscode(c.getParkHkId());
- param.setStartTime(DateUtil.getShortTime(c.getStartTime()));
- param.setEndTime(DateUtil.getShortTime(c.getEndTime()));
+ param.setStartTime(Objects.isNull(c.getStartTime())?DateUtil.getDate(new Date(),"yyyy-MM-dd"):DateUtil.getShortTimeToNull(c.getStartTime()));
+ param.setEndTime(Objects.isNull(c.getEndTime())?"2999-12-31":DateUtil.getShortTimeToNull(c.getEndTime()));
BaseResponse response = HKService.carChargeAddtion(param);
if(response!=null
&& StringUtils.equals(response.getCode(),HKConstants.RESPONSE_SUCCEE)){
@@ -167,8 +177,27 @@
queryWrapper.selectAs(Parks::getHkId,ParkBook::getParkHkId);
queryWrapper.leftJoin(Parks.class,Parks::getId,ParkBook::getParkId);
queryWrapper.selectAs(Device::getHkId,Empower::getDeviceIndexCode);
- List<ParkBook> list = parkBookMapper.selectJoinList(ParkBook.class,queryWrapper.eq(ParkBook::getHkStatus,Constants.ZERO));
+ List<ParkBook> list = parkBookMapper.selectJoinList(ParkBook.class,queryWrapper.eq(ParkBook::getHkStatus,Constants.ZERO).orderByAsc(ParkBook::getId));
return list;
+ }
+ private void getDataChangeList(List<Parks> allList, List<ParkListResponse> allHkList, List<Parks> addList, List<Parks> editList,List<Parks> deleteList, Date date) {
+ if(allHkList!=null && allHkList.size()>0){
+ for(ParkListResponse device : allHkList){
+ Parks model = getExistedData(device,allList);
+ if(model !=null){
+ //濡傛灉宸插瓨鍦紝鍒欐洿鏂版暟鎹�
+ model = initModelByHkData(model,device,date);
+ editList.add(model);
+ }else{
+ //濡傛灉涓嶅瓨鍦紝鍒欐柊澧炴暟鎹�
+ model = new Parks();
+ model = initModelByHkData(model,device,date);
+ addList.add(model);
+ }
+ }
+ }
+ //鍒ゆ柇鑾峰彇鍒犻櫎鐨勯棬绂佽澶囷紝閫昏緫鍒犻櫎
+ getDeleteList(allList,allHkList,deleteList,date);
}
/**
* 鍚屾娴峰悍鍋滆溅搴撴暟鎹�
@@ -219,25 +248,6 @@
}finally {
Constants.DEALING_HK_SYNCPRIVILEGE =false;
}
- }
- private void getDataChangeList(List<Parks> allList, List<ParkListResponse> allHkList, List<Parks> addList, List<Parks> editList,List<Parks> deleteList, Date date) {
- if(allHkList!=null && allHkList.size()>0){
- for(ParkListResponse device : allHkList){
- Parks model = getExistedData(device,allList);
- if(model !=null){
- //濡傛灉宸插瓨鍦紝鍒欐洿鏂版暟鎹�
- model = initModelByHkData(model,device,date);
- editList.add(model);
- }else{
- //濡傛灉涓嶅瓨鍦紝鍒欐柊澧炴暟鎹�
- model = new Parks();
- model = initModelByHkData(model,device,date);
- addList.add(model);
- }
- }
- }
- //鍒ゆ柇鑾峰彇鍒犻櫎鐨勯棬绂佽澶囷紝閫昏緫鍒犻櫎
- getDeleteList(allList,allHkList,deleteList,date);
}
/**
@@ -401,6 +411,25 @@
c.setParkIndex(model.getParkSyscode());
c.setParkName(model.getParkName());
c.setEventId(model.getCrossRecordSyscode());
+ if(StringUtils.isNotBlank(model.getPlateNo())){
+ Cars car = carsMapper.selectOne(new QueryWrapper<Cars>().lambda()
+ .eq(Cars::getIsdeleted,Constants.ZERO)
+ .eq(Cars::getCode,model.getPlateNo())
+ .last("limit 1" ));
+ if(car!=null){
+ //濡傛灉鏄唴閮ㄤ汉鍛�
+ c.setMemberId(car.getMemberId());
+ }
+
+ Visits visits = visitsMapper.selectOne(new QueryWrapper<Visits>().lambda()
+ .eq(Visits::getIsdeleted,Constants.ZERO)
+ .eq(Visits::getCarNos,model.getPlateNo())
+ .last("limit 1" ));
+ if(visits!=null){
+ //濡傛灉鏄瀹�
+ c.setMemberId(visits.getMemberId());
+ }
+ }
c.setGateIndex(model.getEntranceSyscode());
c.setGateName(model.getEntranceName());
c.setIsdeleted(Constants.ZERO);
--
Gitblit v1.9.3