Browse Source

行程上报拉取

master
zxc 3 years ago
parent
commit
6c0e816541
  1. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcTripReportRecordEntity.java
  2. 21
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java
  3. 7
      epmet-user/epmet-user-server/src/main/resources/mapper/IcTripReportRecordDao.xml

2
epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcTripReportRecordEntity.java

@ -231,7 +231,7 @@ public class IcTripReportRecordEntity extends BaseEpmetEntity {
/** /**
* 车牌颜色烟台 * 车牌颜色烟台
*/ */
private String carryVehiclenumberColor; private String carryVehicleNumberColor;
/** /**
* 目的地交通场站烟台 * 目的地交通场站烟台
*/ */

21
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java

@ -1080,12 +1080,21 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
List<String> idCards = new ArrayList<>(idCardAndResiInfoMap.keySet()); List<String> idCards = new ArrayList<>(idCardAndResiInfoMap.keySet());
Map<String, Object> args = new HashMap<>(); Map<String, Object> args = new HashMap<>();
args.put("idcards", idCards); args.put("idcards", idCards);
String json = "[\n" +
" {\"ytId\": \"10100101010\",\"travelCodeAbnormal\": \"否\",\"healthCodeAbnormal\": \"否\",\"twonName\": \"山东路\",\"countyName\": \"市北区\",\"cityName\": \"青岛市\",\"provinceName\": \"山东省\",\"carryHesuanProof\": \"是\",\"leaveTheRiskAreaTime\": \"2022-11-11 10:20:02\",\"comeAreaFull\": \"山东省青岛市市北区辽宁路街道\",\"reportStreet\": \"山东路街道\",\"arriveTime\": \"2022-11-20 11:11:11\",\"shift\": \"D909\",\"comeMode\": \"动车\",\"covidFlag\": \"1\",\"sex\": \"1\",\"age\": \"50\",\"area\": \"哈哈哈\",\"cardType\": \"身份证\",\"invalidTime\": \"2022-12-01 00:00:00\",\"travelCodeImg\": \"/aaa/aaa\",\"arriveLuTime\": \"2022-11-21 11:11:11\",\"destinationStation\": \"青岛北站\",\"carryVehicleNumberColor\": \"蓝\",\"carryVehicleNumber\": \"11111\",\"carryVehicle\": \"是\",\"registeredResidenceAddress\": \"山东青岛市北镇江路街道\",\"registeredResidenceCity\": \"山东青岛\",\"travelPersonnel\": \"无\",\"viaCounty\": \"市北区\",\"viaCity\": \"青岛市\",\"viaProvince\": \"山东省\",\"nonlocalResidenceHistory\": \"否\",\"declarationStatus\": \"1\",\"twoCodeOneReportStatus\": \"正常\",\"detectionAbnormal\": \"否\",\"detailAddress\": \"山东路163号\",\"idCard\": \"370785195001012558\"\n" +
" },\n" +
" {\"ytId\": \"02020191919\",\"travelCodeAbnormal\": \"否\",\"healthCodeAbnormal\": \"否\",\"twonName\": \"山东路\",\"countyName\": \"市北区\",\"cityName\": \"青岛市\",\"provinceName\": \"山东省\",\"carryHesuanProof\": \"是\",\"leaveTheRiskAreaTime\": \"2022-11-11 10:20:02\",\"comeAreaFull\": \"山东省青岛市市北区辽宁路街道\",\"reportStreet\": \"山东路街道\",\"arriveTime\": \"2022-11-20 11:11:11\",\"shift\": \"D909\",\"comeMode\": \"动车\",\"covidFlag\": \"1\",\"sex\": \"1\",\"age\": \"50\",\"area\": \"哈哈哈\",\"cardType\": \"身份证\",\"invalidTime\": \"2022-12-01 00:00:00\",\"travelCodeImg\": \"/aaa/aaa\",\"arriveLuTime\": \"2022-11-21 11:11:11\",\"destinationStation\": \"青岛北站\",\"carryVehicleNumberColor\": \"蓝\",\"carryVehicleNumber\": \"11111\",\"carryVehicle\": \"是\",\"registeredResidenceAddress\": \"山东青岛市北镇江路街道\",\"registeredResidenceCity\": \"山东青岛\",\"travelPersonnel\": \"无\",\"viaCounty\": \"市北区\",\"viaCity\": \"青岛市\",\"viaProvince\": \"山东省\",\"nonlocalResidenceHistory\": \"否\",\"declarationStatus\": \"1\",\"twoCodeOneReportStatus\": \"正常\",\"detectionAbnormal\": \"否\",\"detailAddress\": \"山东路163号\",\"idCard\": \"370785195101012558\"\n" +
" }\n" +
"]";
// List<Map<String,Object>> tripReportList = new ArrayList<>();
List<Map<String,Object>> tripReportList = yantaiNamedParamLantuJdbcTemplate.queryForList( List<Map<String,Object>> tripReportList = yantaiNamedParamLantuJdbcTemplate.queryForList(
"select card_id as idCard, address as presentAddress, i_flag, i_time, i_type, i_date,i_id, travel_code_abnormal, health_code_abnormal, twon_name, county_name, city_name, province_name,\n" + "select card_id as idCard, address as detailAddress, i_flag, i_time, i_type, i_date,i_id, travel_code_abnormal, health_code_abnormal, twon_name, county_name, city_name, province_name,\n" +
"carry_hesuan_proof, leave_the_risk_area_time, come_area_full, report_street, arrive_time, shift, come_mode, covid_flag, sex, age,\n" + "carry_hesuan_proof, leave_the_risk_area_time, come_area_full, report_street, arrive_time, shift, come_mode, covid_flag, sex, age,\n" +
"area, card_type, invalid_time, travel_code_img, arrive_lu_time, destination_station, carry_vehicle_number_color, carry_vehicle_number,\n" + "area, card_type, invalid_time, travel_code_img, arrive_lu_time, destination_station, carry_vehicle_number_color, carry_vehicle_number,\n" +
"carry_vehicle, registered_residence_address, registered_residence_city, travel_personnel, via_county, via_city, via_province,\n" + "carry_vehicle, registered_residence_address, registered_residence_city, travel_personnel, via_county, via_city, via_province,\n" +
"nonlocal_residence_history, declaration_status, two_code_one_report_status, detection_abnormal from t_ymjz_info where cardno in (:idcards)", args); "nonlocal_residence_history, declaration_status, two_code_one_report_status, detection_abnormal from t_ymjz_info where cardno in (:idcards)", args);
/*Map<String, Object> objectObjectHashMap = new HashMap<>();
tripReportList.add(objectObjectHashMap);*/
if (CollectionUtils.isNotEmpty(tripReportList)){ if (CollectionUtils.isNotEmpty(tripReportList)){
List<List<Map<String, Object>>> partition = ListUtils.partition(tripReportList, NumConstant.ONE_HUNDRED); List<List<Map<String, Object>>> partition = ListUtils.partition(tripReportList, NumConstant.ONE_HUNDRED);
partition.forEach(p -> { partition.forEach(p -> {
@ -1093,11 +1102,12 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
List<IcTripReportRecordEntity> needUpdate = new ArrayList<>(); List<IcTripReportRecordEntity> needUpdate = new ArrayList<>();
// 要新增的 // 要新增的
List<IcTripReportRecordEntity> entities = ConvertUtils.sourceToTarget(p, IcTripReportRecordEntity.class); List<IcTripReportRecordEntity> entities = ConvertUtils.sourceToTarget(p, IcTripReportRecordEntity.class);
// List<IcTripReportRecordEntity> entities = JSON.parseArray(json,IcTripReportRecordEntity.class);
// 数据库存在的 // 数据库存在的
List<String> existsTripReport = icTripReportRecordDao.getExistsTripReport(idCards); List<String> existsTripReport = icTripReportRecordDao.getExistsTripReport(idCards);
if (CollectionUtils.isNotEmpty(existsTripReport)){ if (CollectionUtils.isNotEmpty(existsTripReport)){
// 要更新的 // 要更新的
existsTripReport.forEach(etr -> entities.stream().filter(e -> e.getIId().equals(etr)).forEach(e -> { existsTripReport.forEach(etr -> entities.stream().filter(e -> e.getYtId().equals(etr)).forEach(e -> {
needUpdate.add(e); needUpdate.add(e);
})); }));
// 要新增的 // 要新增的
@ -1105,15 +1115,12 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
Iterator<IcTripReportRecordEntity> iterator = entities.iterator(); Iterator<IcTripReportRecordEntity> iterator = entities.iterator();
while (iterator.hasNext()){ while (iterator.hasNext()){
IcTripReportRecordEntity next = iterator.next(); IcTripReportRecordEntity next = iterator.next();
if (next.getIId().equals(etr)){ if (next.getYtId().equals(etr)){
iterator.remove(); iterator.remove();
} }
} }
}); });
if (CollectionUtils.isNotEmpty(entities)){ if (CollectionUtils.isNotEmpty(entities)){
entities.forEach(e -> {
});
entities.forEach(e -> resiInfos.stream().filter(r ->r.getIdCard().equals(e.getIdCard())).forEach(r -> { entities.forEach(e -> resiInfos.stream().filter(r ->r.getIdCard().equals(e.getIdCard())).forEach(r -> {
e.setGridId(r.getGridId()); e.setGridId(r.getGridId());
e.setCustomerId(r.getCustomerId()); e.setCustomerId(r.getCustomerId());
@ -1123,8 +1130,6 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
e.setMobile(r.getMobile()); e.setMobile(r.getMobile());
e.setUserId(r.getUserId()); e.setUserId(r.getUserId());
e.setUserType("ytPull"); e.setUserType("ytPull");
})); }));
icTripReportRecordService.insertBatch(entities); icTripReportRecordService.insertBatch(entities);
} }

7
epmet-user/epmet-user-server/src/main/resources/mapper/IcTripReportRecordDao.xml

@ -155,7 +155,7 @@
<!-- 根据身份证查询存在的行程上报记录ID --> <!-- 根据身份证查询存在的行程上报记录ID -->
<select id="getExistsTripReport" resultType="java.lang.String"> <select id="getExistsTripReport" resultType="java.lang.String">
SELECT SELECT
i_id yt_id
FROM ic_trip_report_record FROM ic_trip_report_record
WHERE DEL_FLAG = '0' WHERE DEL_FLAG = '0'
AND ID_CARD IN ( AND ID_CARD IN (
@ -177,6 +177,11 @@
<update id="updateTripReportList"> <update id="updateTripReportList">
UPDATE ic_trip_report_record UPDATE ic_trip_report_record
<trim prefix="set" suffixOverrides=","> <trim prefix="set" suffixOverrides=",">
<trim prefix="detail_address = (case" suffix="end),">
<foreach collection="list" item="l">
when yt_id = #{l.ytId} then #{l.detailAddress}
</foreach>
</trim>
<trim prefix="travel_code_abnormal = (case" suffix="end),"> <trim prefix="travel_code_abnormal = (case" suffix="end),">
<foreach collection="list" item="l"> <foreach collection="list" item="l">
when yt_id = #{l.ytId} then #{l.travelCodeAbnormal} when yt_id = #{l.ytId} then #{l.travelCodeAbnormal}

Loading…
Cancel
Save