diff --git a/config/application.properties b/config/application.properties index 17bfac1..cfbe239 100644 --- a/config/application.properties +++ b/config/application.properties @@ -6,3 +6,4 @@ etcV2TV3_villageCode=320924000000001 #射阳数据源读取东台数据源数据 并清洗到数据库中 syrkV3Switch=true +dtJwzTimes=2 diff --git a/src/main/java/com/wt/dataToDBs/tool/ConfigParam.java b/src/main/java/com/wt/dataToDBs/tool/ConfigParam.java index f975139..ec5a6cc 100644 --- a/src/main/java/com/wt/dataToDBs/tool/ConfigParam.java +++ b/src/main/java/com/wt/dataToDBs/tool/ConfigParam.java @@ -8,4 +8,5 @@ public class ConfigParam { public static String etcSwitch = PropertiesUtil.queryPropertiesByKey("etcSwitch"); public static String syrkV3Switch = PropertiesUtil.queryPropertiesByKey("syrkV3Switch"); + public static String dtJwzTimes = PropertiesUtil.queryPropertiesByKey("dtJwzTimes"); } diff --git a/src/main/java/com/wt/dataToDBs/tool/DateUtil.java b/src/main/java/com/wt/dataToDBs/tool/DateUtil.java index 995ecac..b624d74 100644 --- a/src/main/java/com/wt/dataToDBs/tool/DateUtil.java +++ b/src/main/java/com/wt/dataToDBs/tool/DateUtil.java @@ -3,6 +3,7 @@ package com.wt.dataToDBs.tool; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Component; +import java.sql.Timestamp; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; @@ -23,6 +24,17 @@ public class DateUtil { return ymdhms.format(new Date(time * 1000)); } + + public static String convertTimeToString(long longTime, String format) { + try { + Timestamp t = new Timestamp(longTime * 1000L); + SimpleDateFormat sDateFormat = new SimpleDateFormat(format); + return sDateFormat.format(t); + } catch (Exception ex) { + throw new RuntimeException((new StringBuilder()).append("Can't format the time by format[").append(format).append("]!").toString()); + } + } + /** * 鑾峰彇褰撳墠鏃ユ湡鏃堕棿 */ diff --git a/src/main/java/com/wt/dataToDBs/v3/mapper/VillageSendRecordStaticDao.java b/src/main/java/com/wt/dataToDBs/v3/mapper/VillageSendRecordStaticDao.java index 1bafbce..a4a3375 100644 --- a/src/main/java/com/wt/dataToDBs/v3/mapper/VillageSendRecordStaticDao.java +++ b/src/main/java/com/wt/dataToDBs/v3/mapper/VillageSendRecordStaticDao.java @@ -45,4 +45,6 @@ public interface VillageSendRecordStaticDao { * */ public List getList(Map map); + + public List getLastRecord(VillageSendRecordStatic bean); } diff --git a/src/main/java/com/wt/dataToDBs/v3/mapper/VillageUserInfoMapper.java b/src/main/java/com/wt/dataToDBs/v3/mapper/VillageUserInfoMapper.java index c600159..b8eb390 100644 --- a/src/main/java/com/wt/dataToDBs/v3/mapper/VillageUserInfoMapper.java +++ b/src/main/java/com/wt/dataToDBs/v3/mapper/VillageUserInfoMapper.java @@ -85,4 +85,5 @@ public interface VillageUserInfoMapper { public List userArchivesTask(VillageUserInfo userInfo); public List userArchivesTaskNotIn(VillageUserInfo userInfo); + public int deleteVillageUserInfoByUpdatetime(VillageUserInfo bean); } diff --git a/src/main/java/com/wt/dataToDBs/v3/pojo/VillageUserInfo.java b/src/main/java/com/wt/dataToDBs/v3/pojo/VillageUserInfo.java index 7c12c1c..4a14b44 100644 --- a/src/main/java/com/wt/dataToDBs/v3/pojo/VillageUserInfo.java +++ b/src/main/java/com/wt/dataToDBs/v3/pojo/VillageUserInfo.java @@ -389,7 +389,15 @@ public class VillageUserInfo { //鏄惁鍏ㄦ伅妗f璇锋眰 private String enabledArchives; + private String updatetimeV; + public String getUpdatetimeV() { + return updatetimeV; + } + + public void setUpdatetimeV(String updatetimeV) { + this.updatetimeV = updatetimeV; + } public String getC2New() { return c2New; diff --git a/src/main/java/com/wt/dataToDBs/v3/service/VillageUserInfoService.java b/src/main/java/com/wt/dataToDBs/v3/service/VillageUserInfoService.java index ddbd79f..17955d3 100644 --- a/src/main/java/com/wt/dataToDBs/v3/service/VillageUserInfoService.java +++ b/src/main/java/com/wt/dataToDBs/v3/service/VillageUserInfoService.java @@ -60,6 +60,8 @@ public interface VillageUserInfoService { * @return 缁撴灉 */ public int deleteVillageUserInfoById(Long id); + + public int deleteVillageUserInfoByUpdatetime(VillageUserInfo bean); // // public String importBase(List userList, Boolean isUpdateSupport, String operName); // diff --git a/src/main/java/com/wt/dataToDBs/v3/service/impl/VillageUserInfoServiceImpl.java b/src/main/java/com/wt/dataToDBs/v3/service/impl/VillageUserInfoServiceImpl.java index 0da68ab..6a9759a 100644 --- a/src/main/java/com/wt/dataToDBs/v3/service/impl/VillageUserInfoServiceImpl.java +++ b/src/main/java/com/wt/dataToDBs/v3/service/impl/VillageUserInfoServiceImpl.java @@ -239,11 +239,11 @@ public class VillageUserInfoServiceImpl implements VillageUserInfoService { // * @param ids 闇瑕佸垹闄ょ殑浣忔埛淇℃伅涓婚敭 // * @return 缁撴灉 // */ -// @Override -// public int deleteVillageUserInfoByIds(String ids) -// { -// return villageUserInfoMapper.deleteVillageUserInfoByIds(Convert.toStrArray(ids)); -// } + @Override + public int deleteVillageUserInfoByUpdatetime(VillageUserInfo bean) + { + return villageUserInfoMapper.deleteVillageUserInfoByUpdatetime(bean); + } // // /** // * 鎵归噺鍒犻櫎淇℃伅 diff --git a/src/main/java/com/wt/dataToDBs/v3/task/SyrkFromDbV3Task.java b/src/main/java/com/wt/dataToDBs/v3/task/SyrkFromDbV3Task.java index e104471..dd95617 100644 --- a/src/main/java/com/wt/dataToDBs/v3/task/SyrkFromDbV3Task.java +++ b/src/main/java/com/wt/dataToDBs/v3/task/SyrkFromDbV3Task.java @@ -1,6 +1,8 @@ package com.wt.dataToDBs.v3.task; import com.wt.dataToDBs.tool.ConfigParam; +import com.wt.dataToDBs.tool.DateUtil; +import com.wt.dataToDBs.tool.NumKit; import com.wt.dataToDBs.tool.StringKit; import com.wt.dataToDBs.tool.safe.AESTools; import com.wt.dataToDBs.tool.safe.AesConstant; @@ -20,11 +22,10 @@ import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.format.DateTimeFormatter; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 鎴风睄鏁版嵁琛 @@ -44,8 +45,8 @@ public class SyrkFromDbV3Task { // private VillageSendRecordStaticDao sendRecordStaticDao; @Resource private VillageSendRecordStaticDao sendRecordStaticDao; - @Resource - private JdbcTemplate jdbcTemplate; +// @Resource +// private JdbcTemplate jdbcTemplate; /** * 涓滃彴璀︾綉閫氭暟鎹帴鍏 ---- 鎴风睄淇℃伅 姣忓ぉ1鐐规墽琛屼竴娆 * // @@ -60,10 +61,12 @@ public class SyrkFromDbV3Task { long timestamp = System.currentTimeMillis(); // 鑾峰彇褰撳墠鏃堕棿鎴筹紙姣锛 - // 灏嗘椂闂存埑杞崲涓篖ocalDate瀵硅薄 - LocalDate date = LocalDate.ofEpochDay(timestamp / 86400000); - // 灏哃ocalDate瀵硅薄鏍煎紡鍖栦负"YYYY-MM-dd"鏍煎紡鐨勬棩鏈熷瓧绗︿覆 - String strDate = date.format(DateTimeFormatter.ofPattern("YYYYMMdd")); + String strDate = DateUtil.convertTimeToString(timestamp / 1000, "YYYYMMdd"); + + //璁剧疆浠诲姟鎵ц鏃堕棿 + if (setTaskTimes(strDate)) return; + + //鏌ヨ鏁版嵁搴撴槸鍚﹀瓨鍦 姣忓ぉ鎵ц涓娆 Map mapStaticPara = new HashMap(); mapStaticPara.put("manufactorNo", "888888"); @@ -93,6 +96,12 @@ public class SyrkFromDbV3Task { continue; } + if (address.contains("鍙") || address.contains("缁") ) { + }else { + logger.info("褰撳墠灏忓尯鍦板潃涓嶆纭:" + b.getVillageName()); + continue; + } + //姣忓ぉ鎵ц涓娆 //鏍规嵁灏忓尯鐨勫疄闄呭湴鍧鍘 涓滃彴鐨勫簱琛ㄦ煡璇㈠鏋滄煡寰楀埌灏辨槸杩欎釜灏忓尯鐨勫熀纭鏁版嵁. VillageActualUserInfoDo actualUserInfoDo = new VillageActualUserInfoDo(); @@ -163,10 +172,10 @@ public class SyrkFromDbV3Task { String strDate = date.format(DateTimeFormatter.ofPattern("YYYYMMdd")); // String strDateD = date.format(DateTimeFormatter.ofPattern("YYYY-MM-dd")); - // 鑾峰彇褰撳墠鏃ユ湡鍓嶄竴澶╃殑鏃ユ湡 - LocalDate localDate = LocalDate.now().minusDays(1); - // 灏嗘棩鏈熻浆鎹负鎸囧畾鏍煎紡鐨勫瓧绗︿覆 - String formattedDate = localDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); +// // 鑾峰彇褰撳墠鏃ユ湡鍓嶄竴澶╃殑鏃ユ湡 +// LocalDate localDate = LocalDate.now().minusDays(1); +// // 灏嗘棩鏈熻浆鎹负鎸囧畾鏍煎紡鐨勫瓧绗︿覆 +// String formattedDate = localDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); //鏌ヨ鏁版嵁搴撴槸鍚﹀瓨鍦 姣忓ぉ鎵ц涓娆 Map mapStaticPara = new HashMap(); @@ -179,9 +188,13 @@ public class SyrkFromDbV3Task { VillageSendRecordStatic sendRecordStatic = sendRecordStatics.get(0); String resultStatus = sendRecordStatic.getResultStatus(); if("1".equals(resultStatus)){ - String sql = "delete from village_user_info where building_code is null and updatetime like '"+formattedDate+"%'"; - //鍒犻櫎浜哄憳琛ㄦ暟鎹 - jdbcTemplate.execute(sql); +// String sql = "delete from village_user_info where building_code is null and updatetime like '"+formattedDate+"%'"; +// //鍒犻櫎浜哄憳琛ㄦ暟鎹 +// jdbcTemplate.execute(sql); + VillageUserInfo userInfoPara = new VillageUserInfo(); + userInfoPara.setUpdatetimeV(strDate); + villageUserInfoService.deleteVillageUserInfoByUpdatetime(userInfoPara); + sendRecordStatic.setResultStatus("2"); sendRecordStatic.setResultRemark(strDate); sendRecordStaticDao.updateRecord(sendRecordStatic); @@ -193,4 +206,46 @@ public class SyrkFromDbV3Task { } + + private boolean setTaskTimes(String strDate) { + try { + String lastTime = ""; +// String sql = "select * from village_send_static_record where table_name ='" + Config.tablenameSyrk + "' and manufactor_no = '" + "888888" + "'" + +// " and table_id is null order by id desc limit 1"; + VillageSendRecordStatic bean = new VillageSendRecordStatic(); + bean.setTableName(Config.tablenameSyrk); + List maps = sendRecordStaticDao.getLastRecord(bean); + if (maps != null && maps.size() > 0) { + lastTime = StringKit.toString(maps.get(0).getResultRemark()); + } else { + return false; + } + + Integer times = NumKit.checkInt(ConfigParam.dtJwzTimes); + if(times == 0){ + times = 3; + } + + SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); + Date date1 = sdf.parse(strDate); + Date date2 = sdf.parse(lastTime); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date2); + calendar.add(Calendar.DAY_OF_MONTH, times); + Date date2Plus3Days = calendar.getTime(); + + if (date1.after(date2Plus3Days)) { +// System.out.println("20230706 澶т簬 20230701 涓夊ぉ"); + } else { +// System.out.println("20230706 涓嶅ぇ浜 20230701 涓夊ぉ"); + return true; + } + + return false; + } catch (Exception e) { + logger.info(StringKit.getTrace(e)); + return true; + } + } + } diff --git a/src/main/resources/mapper/v3/VillageSendRecordStaticMapper.xml b/src/main/resources/mapper/v3/VillageSendRecordStaticMapper.xml index ea30e92..25d5157 100644 --- a/src/main/resources/mapper/v3/VillageSendRecordStaticMapper.xml +++ b/src/main/resources/mapper/v3/VillageSendRecordStaticMapper.xml @@ -168,5 +168,10 @@ limit 200; + + \ No newline at end of file diff --git a/src/main/resources/mapper/v3/VillageUserInfoMapper.xml b/src/main/resources/mapper/v3/VillageUserInfoMapper.xml index c8948a7..80706a9 100644 --- a/src/main/resources/mapper/v3/VillageUserInfoMapper.xml +++ b/src/main/resources/mapper/v3/VillageUserInfoMapper.xml @@ -679,4 +679,5 @@ where idcard = #{idcard} limit 1 +