|
|
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<String,Object> params = new HashMap<>();
|
|
|
// params.put("DBTYPE", PropertiesUtil.getValue("DBType"));
|
|
|
// List<GreenTraffic> 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<Map<String,Object>> result = checkResultMapper.getResultListByTransActionId(record.getId(),'%'+record.getAcarNo()+'%');
|
|
|
// try{
|
|
|
// //插入数据
|
|
|
// if(null != result && !result.isEmpty() && null != freightType && !freightType.isEmpty()){
|
|
|
// Map<String, Object> 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<String, Object> 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());
|
|
|
// }
|
|
|
// }
|
|
|
//
|
|
|
// }
|
|
|
//
|
|
|
//
|
|
|
//
|
|
|
// }
|
|
|
//
|
|
|
// }
|
|
|
|
|
|
}
|