| | |
| | | import com.zy.acs.conveyor.core.properties.SlaveProperties; |
| | | import com.zy.acs.conveyor.core.service.StationService; |
| | | import com.zy.acs.conveyor.entity.Job; |
| | | import com.zy.acs.conveyor.enums.WorkNoTypeType; |
| | | import com.zy.acs.conveyor.service.JobService; |
| | | import com.zy.acs.conveyor.service.WrkLastnoService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Component; |
| | |
| | | |
| | | @Autowired |
| | | private StationService stationService; |
| | | |
| | | |
| | | @Autowired |
| | | private WrkLastnoService wrkLastnoService; |
| | | |
| | | private final RedisSupport redis = RedisSupport.defaultRedisSupport; |
| | | |
| | |
| | | } |
| | | |
| | | } |
| | | Job jobByJobNo = jobService.getJobByJobNo(staProtocol.getWorkNo()); |
| | | if (jobByJobNo == null) { |
| | | News.error("{}:站点:{},找不到任务", config.getMark(), staProtocol.getSiteId()); |
| | | continue; |
| | | } |
| | | if (jobByJobNo.getJobSts() != ConveyorStateType.OUTBOUND.getStatus()) { |
| | | if (jobByJobNo.getJobSts() == ConveyorStateType.STARTUP.getStatus()) { |
| | | continue; |
| | | // Job jobByJobNo = jobService.getJobByJobNo(staProtocol.getWorkNo()); |
| | | // if (jobByJobNo == null) { |
| | | // News.error("{}:站点:{},找不到任务", config.getMark(), staProtocol.getSiteId()); |
| | | // continue; |
| | | // } |
| | | // if (jobByJobNo.getJobSts() != ConveyorStateType.OUTBOUND.getStatus()) { |
| | | // if (jobByJobNo.getJobSts() == ConveyorStateType.STARTUP.getStatus()) { |
| | | // continue; |
| | | // } |
| | | // News.error("{}:站点:{},任务状态不对,{}", config.getMark(), staProtocol.getSiteId(), JSON.toJSON(jobByJobNo)); |
| | | // continue; |
| | | // } |
| | | |
| | | |
| | | if (staProtocol.getWorkNo() == 0 && staProtocol.isStartUpFlag()) { |
| | | Job job = initJob(getWorkNo()); |
| | | staProtocol.setWorkNo(job.getJobNo()); |
| | | staProtocol.setStaNo(inSta.getStaNo()); |
| | | staProtocol.setStartUpFlag(false); |
| | | redis.push(RedisConveyorConstant.CONVEYOR_TASK_FLAG, staProtocol); |
| | | if (!jobService.insert(job)) { |
| | | News.info("{},启动入库:{},{}", config.getMark(), staProtocol.getWorkNo(), staProtocol.getStaNo()); |
| | | } |
| | | News.error("{}:站点:{},任务状态不对,{}", config.getMark(), staProtocol.getSiteId(), JSON.toJSON(jobByJobNo)); |
| | | continue; |
| | | } |
| | | staProtocol.setStaNo(inSta.getStaNo()); |
| | | redis.push(RedisConveyorConstant.CONVEYOR_TASK_FLAG, staProtocol); |
| | | jobByJobNo.setStartTime(new Date()); |
| | | jobByJobNo.setJobSts(ConveyorStateType.STARTUP.getStatus()); |
| | | if (!jobService.updateById(jobByJobNo)) { |
| | | News.info("{},启动入库:{},{}", config.getMark(), staProtocol.getWorkNo(), staProtocol.getStaNo()); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | | } |
| | | } |
| | | |
| | | private Job initJob(Integer workNo) { |
| | | Job job = new Job(); |
| | | job.setJobNo(workNo); |
| | | job.setJobSts(ConveyorStateType.STARTUP.getStatus()); |
| | | job.setStartTime(new Date()); |
| | | job.setCreateTime(new Date()); |
| | | return job; |
| | | } |
| | | |
| | | private Integer getWorkNo() { |
| | | return wrkLastnoService.nextWorkNo(WorkNoTypeType.WORK_NO_TYPE.type); |
| | | } |
| | | } |