package com.nmgs.task; import com.nmgs.mapper.CheckResultGreenFreightTypesMapper; import com.nmgs.mapper.GreenTrafficMapper; import lombok.extern.slf4j.Slf4j; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component; /** * 定时任务类,定时上传数据 */ @Component @Async @Slf4j public class GreenCheckReustInfoUploadTask { @Autowired private CheckResultGreenFreightTypesMapper checkResultGreenFreightTypesMapper; @Autowired private GreenTrafficMapper GreenTrafficMapper; public static Logger logger = LoggerFactory.getLogger(GreenCheckReustInfoUploadTask.class); // @Scheduled(cron = " 0 0/2 * * * ? ")//15秒执行一次 // @Transactional // public void GreenCheckReustInfoUpload() { // // // //1.从集团绿通流水表中,获取500条没有同步过的数据 // HashMap params = new HashMap<>(); // params.put("DBTYPE", PropertiesUtil.getValue("DBType")); // List greens = GreenTrafficMapper.getGreenTrafficNoAsyncList(params); // // if(null != greens && !greens.isEmpty()){ // logger.info("获取数据============="+greens.size()); // // for (GreenTraffic record : greens) { // logger.info("要查询的车牌号============="+record.getAcarNo()+"和transActionId============="+record.getId()); // // //获取最大的货物信息 // String freightType = checkResultMapper.getMaxFreightByTransActionId(record.getId(),'%'+record.getAcarNo()+'%'); // //获取查验信息 // List> result = checkResultMapper.getResultListByTransActionId(record.getId(),'%'+record.getAcarNo()+'%'); // try{ // //插入数据 // if(null != result && !result.isEmpty() && null != freightType && !freightType.isEmpty()){ // Map resultMap = result.get(0); // // CheckResultGreenFreightTypes freightTypes = new CheckResultGreenFreightTypes(); // // //把查验结果保存在实体类中 // if(resultMap.get("TRANSACTIONID").equals(record.getId())){ // freightTypes.setTransActionId(record.getId()); // }else{ // freightTypes.setTransActionId(record.getId()); // freightTypes.setResultTransActionId((String) resultMap.get("TRANSACTIONID")); // } // //如果为空,说明没查到数据,就不添加数据 // freightTypes.setFreightTypes(freightType); // freightTypes.setCheckTime((Date) resultMap.get("CHECKTIME")); // freightTypes.setListNo(record.getListNo()); // freightTypes.setAppointmentId(null==resultMap.get("APPOINTMENTID")?"非预约": (String) resultMap.get("APPOINTMENTID")); // freightTypes.setCheckId((String) resultMap.get("CHECKID")); // freightTypes.setCheckResult(((BigDecimal)resultMap.get("CHECKRESULT")).intValue()); // freightTypes.setCrateType(((BigDecimal)resultMap.get("CRATETYPE")).intValue()); // freightTypes.setCrateTypeText((String) resultMap.get("CRATETYPETEXT")); // freightTypes.setDriverTelephone((String) resultMap.get("DRIVERTELEPHONE")); // freightTypes.setEnStationId((String) resultMap.get("ENSTATIONID")); // freightTypes.setEnWeight(((BigDecimal)resultMap.get("ENWEIGHT")).intValue()); // freightTypes.setExTime((Date) resultMap.get("EXTIME")); // freightTypes.setExWeight(((BigDecimal)resultMap.get("EXWEIGHT")).intValue()); // freightTypes.setInspector((String) resultMap.get("INSPECTOR")); // freightTypes.setMemo((String) resultMap.get("MEMO")); // freightTypes.setPassId((String) resultMap.get("PASSID")); // freightTypes.setPayFee(((BigDecimal)resultMap.get("PAYFEE")).intValue()); // freightTypes.setReason((String) resultMap.get("REASON")); // freightTypes.setReviewer((String) resultMap.get("REVIEWER")); // freightTypes.setVehicleId((String) resultMap.get("VEHICLEID")); // freightTypes.setVehicleType(((BigDecimal)resultMap.get("VEHICLETYPE")).intValue()); // freightTypes.setExStationId((String) resultMap.get("EXSTATIONID")); // int res = checkResultGreenFreightTypesMapper.insert(freightTypes); // logger.info("插入数据res============="+record.getId()); // // //同步green表 // int updateRes = GreenTrafficMapper.updateIsAsyncById(record.getId()); // logger.info("修改绿通流水同步状态============="+record.getId()); // }else{ // //获取最大的货物信息 // freightType = checkResultMapper.getMaxFreightByPassId(record.getPassId(),'%'+record.getAcarNo()+'%'); // //获取查验信息 // result = checkResultMapper.getResultListByPassId(record.getPassId(),'%'+record.getAcarNo()+'%'); // if(null != result && !result.isEmpty() && null != freightType && !freightType.isEmpty()){ // Map resultMap = result.get(0); // CheckResultGreenFreightTypes freightTypes = new CheckResultGreenFreightTypes(); // //把查验结果保存在实体类中 // if(resultMap.get("TRANSACTIONID").equals(record.getId())){ // freightTypes.setTransActionId(record.getId()); // }else{ // freightTypes.setTransActionId(record.getId()); // freightTypes.setResultTransActionId((String) resultMap.get("TRANSACTIONID")); // } // //如果为空,说明没查到数据,就不添加数据 // freightTypes.setFreightTypes(freightType); // freightTypes.setCheckTime((Date) resultMap.get("CHECKTIME")); // freightTypes.setListNo(record.getListNo()); // freightTypes.setAppointmentId(null==resultMap.get("APPOINTMENTID")?"非预约": (String) resultMap.get("APPOINTMENTID")); // freightTypes.setCheckId((String) resultMap.get("CHECKID")); // freightTypes.setCheckResult(((BigDecimal)resultMap.get("CHECKRESULT")).intValue()); // freightTypes.setCrateType(((BigDecimal)resultMap.get("CRATETYPE")).intValue()); // freightTypes.setCrateTypeText((String) resultMap.get("CRATETYPETEXT")); // freightTypes.setDriverTelephone((String) resultMap.get("DRIVERTELEPHONE")); // freightTypes.setEnStationId((String) resultMap.get("ENSTATIONID")); // freightTypes.setEnWeight(((BigDecimal)resultMap.get("ENWEIGHT")).intValue()); // freightTypes.setExTime((Date) resultMap.get("EXTIME")); // freightTypes.setExWeight(((BigDecimal)resultMap.get("EXWEIGHT")).intValue()); // freightTypes.setInspector((String) resultMap.get("INSPECTOR")); // freightTypes.setMemo((String) resultMap.get("MEMO")); // freightTypes.setPassId((String) resultMap.get("PASSID")); // freightTypes.setPayFee(((BigDecimal)resultMap.get("PAYFEE")).intValue()); // freightTypes.setReason((String) resultMap.get("REASON")); // freightTypes.setReviewer((String) resultMap.get("REVIEWER")); // freightTypes.setVehicleId((String) resultMap.get("VEHICLEID")); // freightTypes.setVehicleType(((BigDecimal)resultMap.get("VEHICLETYPE")).intValue()); // freightTypes.setExStationId((String) resultMap.get("EXSTATIONID")); // int res = checkResultGreenFreightTypesMapper.insert(freightTypes); // logger.info("插入数据res============="+record.getId()); // // //同步green表 // int updateRes = GreenTrafficMapper.updateIsAsyncById(record.getId()); // logger.info("修改绿通流水同步状态============="+record.getId()); // } // } // }catch (Exception ignored){ // //如果货物类型不为空,修改货物类型 // if(null != freightType && !freightType.isEmpty()){ // int res = checkResultGreenFreightTypesMapper.updateFreightTypesByTransActionId(record.getId(),freightType); // logger.info("修改res============="+record.getId()); // } // } // // } // // // // } // // } }