1
zhang
6 小时以前 e776092499ea84188c796e9f66c9a2e69321c92e
1
1 文件已重命名
16个文件已修改
192 ■■■■■ 已修改文件
zy-acs-cv/src/main/java/com/zy/Boot.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/asrs/controller/CtuController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/ApplyInDto.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/asrs/service/JobService.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/asrs/service/impl/WmsMainServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/core/operation/handler/AppleLocOperationHandler.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/core/operation/handler/ClearSingleOperationHandler.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/core/operation/handler/FakeUserOperationHandler.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/core/operation/handler/InOperationHandler.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/core/operation/handler/OutOperationHandler.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/core/operation/handler/SendTaskOperationHandler.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/resources/application.yml 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/resources/mapper/JobMapper.xml 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-cv/src/main/java/com/zy/Boot.java
@@ -5,9 +5,11 @@
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;
@EnableAsync
@SpringBootApplication
@EnableScheduling
public class Boot extends SpringBootServletInitializer {
    public static void main(String[] args) {
zy-acs-cv/src/main/java/com/zy/asrs/controller/CtuController.java
@@ -55,7 +55,7 @@
            stationResponseParam.setStaNo(staNo);
            stationResponseParam.setOccupied(staProtocol.isLoading());
            stationResponseParam.setInEnable((staProtocol.isInEnable() && staProtocol.getWorkNo() == 0 ? true : false));
            stationResponseParam.setOutEnable((staProtocol.isOutEnable() && staProtocol.getWorkNo() > 0 ? true : false));
            stationResponseParam.setOutEnable((staProtocol.isOutEnable() ? true : false));
            stationResponseParam.setOnline(staProtocol.isAutoing());
            list.add(stationResponseParam);
        }
zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/ApplyInDto.java
@@ -12,5 +12,7 @@
    private String barcode;
    private Boolean full;
}
zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java
@@ -27,15 +27,14 @@
    /**
     * 任务号
     */
    @TableField("out_task_no")
    private String outTaskNo;
    @TableField("task_no")
    private String taskNo;
    /**
     * 任务号
     *
     */
    @TableField("in_task_no")
    private String inTaskNo;
    @TableField("barcode")
    private String barcode;
    /**
     * 批次号
zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java
@@ -13,15 +13,19 @@
public interface JobMapper extends BaseMapper<Job> {
    Job getJobByInTaskNo(@Param("seqNum") String seqNum);
    Job getJobByOutTaskNo(@Param("seqNum") String seqNum);
    Job getJobByTaskNo(@Param("seqNum") String seqNum);
    Job getJobByJobNo(@Param("workNo") Integer workNo);
    Job getJobByJobNoAndJobSts(@Param("workNo") Integer workNo, @Param("jobSts") Integer jobSts);
    Job getJobByBarcodeAndJobSts(@Param("barcode") String barcode, @Param("jobSts") Integer jobSts);
    Job getJobByBarcode(@Param("barcode") String barcode);
    List<Job> listJobByJobSts(@Param("jobSts") Integer jobSts);
zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java
@@ -16,9 +16,6 @@
public class JobLogScheduler {
    // job数据保存天数
    public static final int JOB_SAVE_DAY = 3;
    @Autowired
    private JobService jobService;
@@ -27,9 +24,14 @@
    private JobMapper jobMapper;
    @Scheduled(cron = "0 0 2 * * ?")
    //@Scheduled(cron = "0 0 2 * * ?")
    @Scheduled(cron = "*/5 * * * * ?")
    public void autoToLog() {
        List<Job> jobs = jobMapper.listJobByJobSts(6);
        List<Job> jobs = jobMapper.listJobByJobSts(8);
        for (Job job : jobs) {
            jobService.saveJobLog(job);
        }
        jobs = jobMapper.listJobByJobSts(2);
        for (Job job : jobs) {
            jobService.saveJobLog(job);
        }
zy-acs-cv/src/main/java/com/zy/asrs/service/JobService.java
@@ -7,9 +7,12 @@
public interface JobService extends IService<Job> {
    Job getJobByInTaskNo(String seqNum);
    Job getJobByOutTaskNo(String seqNum);
    Job getJobByTaskNo(String seqNum);
    Job getJobByBarcodeAndJobSts(String barcode, Integer jobSts);
    Job getJobByBarcode(String barcode);
    Job getJobByJobNo(Integer jobNo);
zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java
@@ -20,14 +20,10 @@
    private JobLogMapper jobLogMapper;
    @Override
    public Job getJobByInTaskNo(String seqNum) {
        return baseMapper.getJobByInTaskNo(seqNum);
    }
    @Override
    public Job getJobByOutTaskNo(String seqNum) {
        return baseMapper.getJobByOutTaskNo(seqNum);
    public Job getJobByTaskNo(String seqNum) {
        return baseMapper.getJobByTaskNo(seqNum);
    }
    @Override
@@ -40,6 +36,15 @@
        return baseMapper.getJobByJobNoAndJobSts(workNo, jobSts);
    }
    @Override
    public Job getJobByBarcodeAndJobSts(String barcode, Integer jobSts) {
        return baseMapper.getJobByBarcodeAndJobSts(barcode, jobSts);
    }
    @Override
    public Job getJobByBarcode(String barcode) {
        return baseMapper.getJobByBarcode(barcode);
    }
    @Override
    public List<Job> listJobByJobSts(Integer jobSts) {
zy-acs-cv/src/main/java/com/zy/asrs/service/impl/WmsMainServiceImpl.java
@@ -58,9 +58,9 @@
                    .setJson(JSON.toJSONString(applyInDto))
                    .build()
                    .doPost();
            log.info("WMS返回数据:{}", response);
            JSONObject jsonObject = JSON.parseObject(response);
            if (jsonObject.getInteger(code).equals(codeValue)) {
                log.info("WMS返回数据:{}", response);
            if (jsonObject.get(code) != null && jsonObject.getInteger(code).equals(codeValue)) {
                return JSONObject.parseObject(jsonObject.getString(dataCode), ApplyInRepsonseDto.class);
            } else {
                log.error("调用下发任务接口报错,响应码:{},响应内容:{}", jsonObject.getInteger(code), response);
zy-acs-cv/src/main/java/com/zy/core/operation/handler/AppleLocOperationHandler.java
@@ -4,6 +4,7 @@
import com.zy.asrs.controller.vo.ApplyInDto;
import com.zy.asrs.controller.vo.ApplyInRepsonseDto;
import com.zy.asrs.entity.Job;
import com.zy.asrs.enums.WorkNoTypeType;
import com.zy.asrs.service.JobService;
import com.zy.asrs.service.WmsMainService;
import com.zy.asrs.service.WrkLastnoService;
@@ -73,27 +74,33 @@
                        return;
                    }
                    if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
                        Job job = jobService.getJobByJobNoAndJobSts(staProtocol.getWorkNo(), 2);
                        if (job != null) {
                            String barcode = barcodeThread.getBarcode();
                            if (Cools.isEmpty(barcode)) {
                                log.info("未扫到码值:{}",barcode);
                                return;
                            }
                            ApplyInDto applyInDto = new ApplyInDto();
                            applyInDto.setStaNo(inSta.getStaNo() + "");
                            applyInDto.setBarcode(barcode);
                            ApplyInRepsonseDto locOfWms = wmsMainService.getLocOfWms(applyInDto);
                            if (locOfWms != null) {
                                job.setLoc(locOfWms.getLocNo());
                                job.setInTaskNo(locOfWms.getTaskNo());
                                job.setBatchNo(locOfWms.getBatchNo());
                                job.setStaNo(inSta.getTargetSta() + "");
                                job.setJobSts(4);
                                job.setWmsTime(new Date());
                                jobService.updateById(job);
                            } else {
                                log.info("WMS未返回库位信息,{}", applyInDto);
                        String barcode = barcodeThread.getBarcode();
                        if (Cools.isEmpty(barcode)) {
                            log.info("未扫到码值:{}", barcode);
                            return;
                        }
                        if (staProtocol.getWorkNo() >= 9991 && staProtocol.getWorkNo() <= 9992) {
                            Job job = jobService.getJobByBarcode(barcode);
                            if (job == null || (job != null && job.getJobSts() == 8)) {
                                ApplyInDto applyInDto = new ApplyInDto();
                                applyInDto.setStaNo(inSta.getStaNo() + "");
                                applyInDto.setBarcode(barcode);
                                applyInDto.setFull(staProtocol.getWorkNo() == 9992);
                                ApplyInRepsonseDto locOfWms = wmsMainService.getLocOfWms(applyInDto);
                                if (locOfWms != null) {
                                    job = new Job();
                                    job.setLoc(locOfWms.getLocNo());
                                    job.setTaskNo(locOfWms.getTaskNo());
                                    job.setBatchNo(locOfWms.getBatchNo());
                                    job.setBarcode(barcode);
                                    job.setStaNo(inSta.getTargetSta() + "");
                                    job.setJobNo(wrkLastnoService.nextWorkNo(WorkNoTypeType.WORK_NO_TYPE.type));
                                    job.setJobSts(4);
                                    job.setWmsTime(new Date());
                                    jobService.insert(job);
                                } else {
                                    log.info("WMS未返回库位信息,{}", applyInDto);
                                }
                            }
                        }
                    }
zy-acs-cv/src/main/java/com/zy/core/operation/handler/ClearSingleOperationHandler.java
File was renamed from zy-acs-cv/src/main/java/com/zy/core/operation/handler/ClearOperationHandler.java
@@ -26,7 +26,7 @@
 */
@Slf4j
@Component
public class ClearOperationHandler implements OperationHandler {
public class ClearSingleOperationHandler implements OperationHandler {
    @Autowired
    private SlaveProperties slaveProperties;
@@ -68,13 +68,15 @@
                    }
                    if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
                        Job job = jobService.getJobByJobNo(staProtocol.getWorkNo());
                        if (job != null && job.getJobSts() >= 6) {
                            String s = ctuMainService.checkStationStatus(takeSta.getStaNo());
                        if (job != null && job.getJobSts() == 7) {
                            //String s = ctuMainService.checkStationStatus(takeSta.getStaNo());
                            staProtocol.setWorkNo(0);
                            staProtocol.setStaNo(0);
                            boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
                            if (result) {
                                log.info("" + config.getMark() + "站点清空失败:{},{}", takeSta.getStaNo(), staProtocol.getWorkNo());
                                job.setJobSts(8);
                                jobService.updateById(job);
                            }
                        }
                    }
zy-acs-cv/src/main/java/com/zy/core/operation/handler/FakeUserOperationHandler.java
@@ -30,11 +30,6 @@
    private SlaveProperties slaveProperties;
    @Autowired
    private WrkLastnoService wrkLastnoService;
    @Autowired
    private CtuMainService ctuMainService;
    @Autowired
    private JobService jobService;
zy-acs-cv/src/main/java/com/zy/core/operation/handler/InOperationHandler.java
@@ -1,5 +1,6 @@
package com.zy.core.operation.handler;
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.Job;
import com.zy.asrs.service.CtuMainService;
@@ -15,6 +16,7 @@
import com.zy.core.operation.OperationHandler;
import com.zy.core.properties.CtuOperationConfig;
import com.zy.core.properties.SlaveProperties;
import com.zy.core.thread.BarcodeThread;
import com.zy.core.thread.SiemensDevpThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -67,13 +69,15 @@
                        return;
                    }
                    if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
                        //StaProtocol targetStaProtocol = devpThread.getStation().get(inSta.getTargetSta());
                        //if (targetStaProtocol.getWorkNo() == 0 && targetStaProtocol.isAutoing() && !targetStaProtocol.isLoading()) {
                        Job job = jobService.getJobByJobNoAndJobSts(staProtocol.getWorkNo(), 4);
                        BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, devp.getId());
                        String barcode = barcodeThread.getBarcode();
                        if (Cools.isEmpty(barcode)){
                            return;
                        }
                        Job job = jobService.getJobByBarcode(barcode);
                        if (job != null) {
                            Integer workNo = staProtocol.getWorkNo();
                            Integer targetSta = inSta.getTargetSta();
                            staProtocol.setWorkNo(workNo);
                            staProtocol.setWorkNo(job.getJobNo());
                            staProtocol.setStaNo(targetSta);
                            boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
                            if (result) {
zy-acs-cv/src/main/java/com/zy/core/operation/handler/OutOperationHandler.java
@@ -67,18 +67,17 @@
                    if (!staProtocol.isLoading()) {
                        continue;
                    }
                    //&& staProtocol.isOutEnable()
                    if (staProtocol.isAutoing() && staProtocol.getWorkNo() == 0) {
                        String seqNum = ctuMainService.checkStationStatus(releaseSta.getStaNo());
                        if (seqNum != null) {
                            Job jobBySeqNum = jobService.getJobByOutTaskNo(seqNum);
                            Job jobBySeqNum = jobService.getJobByTaskNo(seqNum);
                            if (jobBySeqNum == null) {
                                int workNo = wrkLastnoService.nextWorkNo(WorkNoTypeType.WORK_NO_TYPE.type);
                                // 下发移动 且 下发plc命令
                                staProtocol.setWorkNo(workNo);
                                staProtocol.setStaNo(releaseSta.getTargetSta());
                                Job job = new Job();
                                job.setOutTaskNo(seqNum);
                                job.setTaskNo(seqNum);
                                job.setJobNo(workNo);
                                job.setJobSts(2);
                                if (!jobService.insert(job)) {
zy-acs-cv/src/main/java/com/zy/core/operation/handler/SendTaskOperationHandler.java
@@ -73,7 +73,7 @@
                            openBusSubmitParam.setBatchNo(job.getBatchNo());
                            List<TaskDto> taskList = new ArrayList<>();
                            TaskDto taskDto = new TaskDto();
                            taskDto.setTaskNo(job.getInTaskNo());
                            taskDto.setTaskNo(job.getTaskNo());
                            taskDto.setBatchNo(job.getBatchNo());
                            taskDto.setOriSta(job.getStaNo());
                            taskDto.setDestLoc(job.getLoc());
@@ -84,9 +84,9 @@
                                job.setJobSts(7);
                                job.setRcsTime(new Date());
                                jobService.updateById(job);
                                log.info("任务发送给RCS成功," + job.getInTaskNo() + " - " + job.getJobNo());
                                log.info("任务发送给RCS成功," + job.getTaskNo() + " - " + job.getJobNo());
                            } else {
                                log.info("任务发送给RCS失败," + job.getInTaskNo() + " - " + job.getJobNo());
                                log.info("任务发送给RCS失败," + job.getTaskNo() + " - " + job.getJobNo());
                            }
                        }
                    }
zy-acs-cv/src/main/resources/application.yml
@@ -17,7 +17,7 @@
    static-path-pattern: /**
wms:
  url: 10.10.10.251:8082
  url: 10.10.10.220:8081
  apply: /rsf-open-api/rcs/api/open/location/allocate
ctu:
  url: 10.10.10.200:8088
@@ -30,15 +30,15 @@
      - type: OUTBOUND
        mark: 10
        max-retries: 3
        retry-delay: 500
        retry-delay: 800
      - type: FAKEUSER
        mark: 20
        max-retries: 2
        retry-delay: 300
        retry-delay: 800
      - type: APPLYLOC
        mark: 30
        max-retries: 2
        retry-delay: 300
        retry-delay: 2000
      - type: INBOUND
        mark: 40
        max-retries: 3
@@ -46,11 +46,11 @@
      - type: CLEARSIGNAL
        mark: 50
        max-retries: 2
        retry-delay: 300
        retry-delay: 800
      - type: SENDTASK
        mark: 60
        max-retries: 2
        retry-delay: 300
        retry-delay: 800
mybatis-plus:
  mapper-locations: classpath:mapper/*.xml
zy-acs-cv/src/main/resources/mapper/JobMapper.xml
@@ -10,6 +10,7 @@
        <result column="batch_no" property="batchNo"/>
        <result column="loc" property="loc"/>
        <result column="sta_no" property="staNo"/>
        <result column="barcode" property="barcode"/>
        <result column="job_no" property="jobNo"/>
        <result column="job_sts" property="jobSts"/>
        <result column="wms_time" property="wmsTime"/>
@@ -24,30 +25,39 @@
        <result column="memo" property="memo"/>
    </resultMap>
    <select id="getJobByInTaskNo" resultMap="BaseResultMap">
        select *
        from cv_job
        where in_task_no = #{seqNum}
    </select>
    <select id="getJobByOutTaskNo" resultMap="BaseResultMap">
    <select id="getJobByTaskNo" resultMap="BaseResultMap">
        select *
        from cv_job
        where out_task_no = #{seqNum}
        where task_no = #{seqNum}  order by id desc limit 1
    </select>
    <select id="getJobByJobNo" resultMap="BaseResultMap">
        select *
        from cv_job
        where job_no = #{workNo}
        where job_no = #{workNo} order by id desc limit 1
    </select>
    <select id="getJobByJobNoAndJobSts" resultMap="BaseResultMap">
        select *
        from cv_job
        where job_no = #{workNo}
          and job_sts = #{jobSts}
          and job_sts = #{jobSts}  order by id desc limit 1
    </select>
    <select id="getJobByBarcodeAndJobSts" resultMap="BaseResultMap">
        select *
        from cv_job
        where barcode = #{barcode}
          and job_sts = #{jobSts}  order by id desc limit 1
    </select>
    <select id="getJobByBarcode" resultMap="BaseResultMap">
        select *
        from cv_job
        where barcode = #{barcode}  order by id desc limit 1
    </select>