package com.zskk.task; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import org.w3c.dom.NamedNodeMap; import org.w3c.dom.NodeList; import com.jfinal.plugin.activerecord.Db; import com.jfinal.plugin.activerecord.Record; import com.jfinal.plugin.cron4j.ITask; import com.zskk.service.ServiceFactory; import com.zskk.service.ThreadPoolService; import com.zskk.tools.XmlHelper; public class UpdateTask implements ITask { @Override public void run() { // TODO Auto-generated method stub List records = Db.use("connected").find("select * from examinfo where checkDate>'?' order by checkDate desc",parseStringToDateTime()); for (Record record : records) { if (record == null) { continue; } if (record.getStr("studyuid").isBlank()) { continue; } String studyuidString = record.getStr("studyuid"); String modalitiesString = record.getStr("modality"); Record studyidfind = Db.use("local").findFirst("select * from study where studyuid = ?", studyuidString); if (studyidfind == null) { Record studyinfo = new Record().set("studyuid", studyuidString).set("modalities", modalitiesString) .set("status", 1).set("createAt", parseStringToDate()).set("updateAt", parseStringToDate()); Db.use("local").save("study", studyinfo); } } } @Override public void stop() { // TODO Auto-generated method stub } /** * 日期字符串格式转换年月日 * * @param dateStr * @return */ private String parseStringToDate() { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = new Date(); long dInteger = date.getTime(); String daString = sdf.format(new Date(dInteger)); return daString; } /** * 日期字符串格式转换年月日时分秒 * * @param dateStr * @return */ private String parseStringToDateTime() { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = new Date(); Date dateBefore = new Date(date.getTime()-6000000); String daString = sdf.format(dateBefore); return daString; } }