自动化立体仓库 - WCS系统
87cceb14f74d7710d63bef0b571baf96ec0a3833..4fe69aa7c84b8e9d88cb7cb88865a88a4815f84c
2025-04-12 zjj
#
4fe69a 对比 | 目录
2025-04-12 zjj
Merge remote-tracking branch 'origin/jx-fyxc-wcs' into jx-fyxc-wcs
e32ff6 对比 | 目录
2025-04-12 zjj
#
eee700 对比 | 目录
2025-04-10 fyxc
#
9f0841 对比 | 目录
7个文件已修改
125 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/MonitorController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/model/MatDto.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/WrkDetlMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/console.map.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/crn.html 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MonitorController.java
@@ -79,7 +79,7 @@
    public R monitorOther(@RequestParam("crnId") Integer crnId, @RequestParam("ledId") Integer sta) {
        Integer ledId = 0;
        for (LedSlave led : slaveProperties.getLed()) {
            for (Integer staNo : led.getStaArr()) {
            for (Integer staNo : led.getInStaArr()) {
                if (staNo.equals(sta)) {
                    ledId = led.getId();
                    break;
@@ -268,7 +268,7 @@
        String ledContent = "";
        List<LedCommand> commandList = null;
        for (LedSlave slave : slaveProperties.getLed()) {
            if (slave.getStaArr().contains(ledId)) {
            if (slave.getInStaArr().contains(ledId)) {
                LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, slave.getId());
                if (null != ledThread) {
                    ledContent = ledThread.getStringBuffer().toString();
@@ -286,7 +286,7 @@
    public R monitorLedError(@RequestParam("ledId") Integer ledId) {
        String errorMsg = "";
        for (LedSlave slave : slaveProperties.getLed()) {
            if (slave.getStaArr().contains(ledId)) {
            if (slave.getInStaArr().contains(ledId)) {
                LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, slave.getId());
                if (null != ledThread) {
                    errorMsg = ledThread.getErrorMsg().toString();
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1307,10 +1307,10 @@
            News.error(""+mark+" - 3"+" - 2"+" - 工作档库位移转失败,原因:检索目标库位失败!工作号={},源库位={}", wrkMast.getWrkNo(), wrkMast.getLocNo());
            return;
        }
        if(sta.getLocType1() != sourceSta.getLocType1()){
            News.error("移库目标库位类型与源库位类型不符");
            return;
        }
//        if(sta.getLocType1() != sourceSta.getLocType1()){
//            News.error("移库目标库位类型与源库位类型不符");
//            return;
//        }
        // 获取堆垛机信息 并 判断是否可入出
        BasCrnp basCrnp = basCrnpService.selectById(slave.getId());
        if (!basCrnp.getInEnable().equals("Y") && !basCrnp.getOutEnable().equals("Y")) {
@@ -1720,13 +1720,13 @@
                                total = locDetl.getAnfme();
                            }
                            if (wrkMast.getIoType() == 101 || wrkMast.getIoType() == 1) {
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(),wrkDetl.getAnfme(),wrkDetl.getUnit()));
                            }
                            if (wrkMast.getIoType() == 103 && (null == wrkDetl.getInspect() || 0 == wrkDetl.getInspect())) {
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(),wrkDetl.getAnfme(),wrkDetl.getUnit()));
                            }
                            if (wrkMast.getIoType() == 107) {
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(),wrkDetl.getAnfme(),wrkDetl.getUnit()));
                            }
                        });
                    }
@@ -1793,13 +1793,13 @@
                                total = locDetl.getAnfme();
                            }
                            if (wrkMast.getIoType() == 101 || wrkMast.getIoType() == 1) {
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(),wrkDetl.getAnfme(),wrkDetl.getUnit()));
                            }
                            if (wrkMast.getIoType() == 103 && (null == wrkDetl.getInspect() || 0 == wrkDetl.getInspect())) {
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(),wrkDetl.getAnfme(),wrkDetl.getUnit()));
                            }
                            if (wrkMast.getIoType() == 107) {
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total));
                                ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(),wrkDetl.getAnfme(),wrkDetl.getUnit()));
                            }
                        });
                    }
@@ -1856,18 +1856,28 @@
            StaProtocol modelStaProtocol = devpThread.getStation().get(led.getModelSta());
            if (null != modelStaProtocol && modelStaProtocol.isIn()) {
                staArr = led.getInStaArr();
                for (Integer staNo : staArr) {
                    // 获取叉车站点
                    StaProtocol staProtocol = devpThread.getStation().get(staNo);
                    if (staProtocol == null) { continue; }
                    if (staProtocol.getWorkNo() != 0 || staProtocol.isErr()) {
                        reset = false;
                        break;
                    }
                }
            } else if (null != modelStaProtocol && modelStaProtocol.isOut()) {
                staArr = led.getOutStaArr();
            }
            for (Integer staNo : staArr) {
                // 获取叉车站点
                StaProtocol staProtocol = devpThread.getStation().get(staNo);
                if (staProtocol == null) { continue; }
                if (staProtocol.getWorkNo() != 0 || staProtocol.isErr()) {
                    reset = false;
                    break;
                for (Integer staNo : staArr) {
                    // 获取叉车站点
                    StaProtocol staProtocol = devpThread.getStation().get(staNo);
                    if (staProtocol == null) { continue; }
                    if (staProtocol.isLoading() || staProtocol.isErr()) {
                        reset = false;
                        break;
                    }
                }
            }
            // 获取led线程
            LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getId());
            // led显示默认内容
src/main/java/com/zy/common/model/MatDto.java
@@ -27,19 +27,20 @@
    // 物料数量
    private Double count;
    private Double anfme;
    private Double total;
    private String sku;
    public MatDto() {
    }
    public MatDto(String matnr, String maknx, String batch, String specs, String manu, String memo, Double count, Double total) {
    public MatDto(String matnr, String maknx, String batch, String specs, Double anfme, String unit) {
        this.matnr = matnr;
        this.maknx = maknx;
        this.batch = batch;
        this.specs = specs;
        this.manu = manu;
        this.memo = memo;
        this.count = count;
        this.total = total;
        this.anfme = anfme;
        this.sku = unit;
    }
    public MatDto(String matNo, String maknx, Double count) {
src/main/resources/application.yml
@@ -8,7 +8,7 @@
    name: @pom.build.finalName@
  datasource:
    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
    url: jdbc:sqlserver://localhost:1433;databasename=fyxcasrs
    url: jdbc:sqlserver://192.168.10.201:1433;databasename=fyxcasrs
    username: sa
    password: sa@123
  mvc:
@@ -138,7 +138,7 @@
      staNo: 1112
      barcode: ${wcs-slave.barcode[0].id}
      backSta: 1111
      led: ${wcs-slave.led[1].id}
      led: ${wcs-slave.led[0].id}
    # 入库口1
    inSta[1]:
      staNo: 1114
@@ -150,25 +150,25 @@
      staNo: 1122
      barcode: ${wcs-slave.barcode[0].id}
      backSta: 1121
      led: ${wcs-slave.led[1].id}
      led: ${wcs-slave.led[2].id}
    # 入库口1
    inSta[3]:
      staNo: 1124
      barcode: ${wcs-slave.barcode[0].id}
      backSta: 1123
      led: ${wcs-slave.led[1].id}
      led: ${wcs-slave.led[3].id}
    outSta[0]:
      staNo: 1111
      led: ${wcs-slave.led[1].id}
      led: ${wcs-slave.led[0].id}
    outSta[1]:
      staNo: 1121
      led: ${wcs-slave.led[1].id}
      led: ${wcs-slave.led[2].id}
    outSta[2]:
      staNo: 1113
      led: ${wcs-slave.led[1].id}
    outSta[3]:
      staNo: 1123
      led: ${wcs-slave.led[1].id}
      led: ${wcs-slave.led[3].id}
  # 条码扫描仪1
@@ -191,42 +191,24 @@
    ip: 10.10.10.102
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    inStaArr: 1112
    outStaArr: 1111
    modelSta: 1112
    inStaArr: 1114
    outStaArr: 1113
    modelSta: 1114
  # LED3
  led[2]:
    id: 3
    ip: 10.10.10.103
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    inStaArr: 1112
    outStaArr: 1111
    modelSta: 1112
    inStaArr: 122
    outStaArr: 1121
    modelSta: 1122
  # LED4
  led[3]:
    id: 4
    ip: 10.10.10.104
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    inStaArr: 1112
    outStaArr: 1111
    modelSta: 1112
  # LED5
  led[4]:
    id: 5
    ip: 10.10.10.105
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    inStaArr: 1112
    outStaArr: 1111
    modelSta: 1112
  # LED6
  led[5]:
    id: 6
    ip: 10.10.10.106
    port: 5005
    devpPlcId: ${wcs-slave.devp[0].id}
    inStaArr: 1112
    outStaArr: 1111
    modelSta: 1112
    inStaArr: 1124
    outStaArr: 1123
    modelSta: 1124
src/main/resources/mapper/WrkDetlMapper.xml
@@ -27,7 +27,7 @@
    </resultMap>
    <select id="findByWorkNo" resultMap="BaseResultMap">
        select wrk_no, matnr, maktx, anfme ,specs from asr_wrk_detl where 1=1 and wrk_no = #{workNo}
        select wrk_no, matnr, maktx, anfme ,specs,batch,unit from asr_wrk_detl where 1=1 and wrk_no = #{workNo}
    </select>
    <update id="updateIoTime">
src/main/webapp/static/js/console.map.js
@@ -88,7 +88,7 @@
        "floors": [{
            "type": "floor",
            "id": "page_floor1",
            "text": "1库",
            "text": "1F",
            "top": 4,
            "left": 22,
            "width": 1819,
@@ -149,7 +149,7 @@
        },{
            "type": "floor",
            "id": "page_floor2",
            "text": "2库",
            "text": "2F",
            "top": 4,
            "left": 22,
            "width": 1819,
src/main/webapp/views/crn.html
@@ -143,9 +143,9 @@
                    <span class="select-title">堆垛机号</span>
                    <div class="select-container" style="padding: 20px 0;">
                        <label><input type="radio" name="crnSelect" value="1" checked>&nbsp;1号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="2">&nbsp;2号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="3">&nbsp;3号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="4">&nbsp;4号堆垛机</label>
<!--                        <label><input type="radio" name="crnSelect" value="2">&nbsp;2号堆垛机</label>-->
<!--                        <label><input type="radio" name="crnSelect" value="3">&nbsp;3号堆垛机</label>-->
<!--                        <label><input type="radio" name="crnSelect" value="4">&nbsp;4号堆垛机</label>-->
                    </div>
                </div>
                <!-- 源站/源库位 选择 -->