自动化立体仓库 - WMS系统
#
zjj
2024-11-29 bf411aee332eba93ce827ced5b3aa4c8250d81cc
#
1个文件已添加
2个文件已删除
9个文件已修改
182 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/InventoryCheckOrderController.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/LocDetlController.java 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MobileController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/param/StockCheckParam.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/model/DetlDto.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/inventoryCheckOrder.sql 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/inventoryCheckOrderDetl.sql 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/order/order.js 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/pakStore/locCheckOut.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/order/order.html 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/pakStore/locDetlQuery.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/InventoryCheckOrderController.java
@@ -10,7 +10,13 @@
import com.core.common.DateUtils;
import com.core.common.R;
import com.zy.asrs.entity.InventoryCheckOrder;
import com.zy.asrs.entity.InventoryCheckOrderDetl;
import com.zy.asrs.entity.WrkDetl;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.service.InventoryCheckOrderDetlService;
import com.zy.asrs.service.InventoryCheckOrderService;
import com.zy.asrs.service.WrkDetlService;
import com.zy.asrs.service.WrkMastService;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -22,6 +28,38 @@
    @Autowired
    private InventoryCheckOrderService inventoryCheckOrderService;
    @Autowired
    private InventoryCheckOrderDetlService inventoryCheckOrderDetlService;
    @Autowired
    private WrkMastService wrkMastService;
    @Autowired
    private WrkDetlService wrkDetlService;
    @RequestMapping("/inventoryCheckOrder/StockCheck/select/barcode")
    @ManagerAuth()
    public R StockCheckSelectBarcode(@RequestParam String barcode) {
        if (Cools.isEmpty(barcode)) {
            return R.ok();
        }
        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", barcode));
        if (Cools.isEmpty(wrkMast)) {
            return R.error("该条码未查询到盘点任务");
        }
        ArrayList<InventoryCheckOrderDetl> checkOrderDetls = new ArrayList<>();
        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
        for (WrkDetl wrkDetl : wrkDetls) {
            InventoryCheckOrderDetl checkDetl = inventoryCheckOrderDetlService.selectOne(new EntityWrapper<InventoryCheckOrderDetl>()
                    .eq("order_no", wrkMast.getSheetNo())
                    .eq("matnr", wrkDetl.getMatnr())
                    .eq("batch", wrkDetl.getBatch()));
            if (Cools.isEmpty(checkDetl)) {
                continue;
            }
            checkOrderDetls.add(checkDetl);
        }
        return R.ok(checkOrderDetls);
    }
    @RequestMapping("/inventoryCheckOrder/select/status/1")
    @ManagerAuth()
src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -82,41 +82,11 @@
                param.remove("modi_time");
            }
        }
        param.remove("curr");
        param.remove("limit");
        EntityWrapper<LocDetl> wrapper = new EntityWrapper<>();
        if (!Cools.isEmpty(param.get("crnNo"))) {
            switch ((String) param.get("crnNo")) {
                case "1": wrapper.le("SUBSTRING(loc_no, 1, 2)",4);
                    break;
                case "2":wrapper.ge("SUBSTRING(loc_no, 1, 2)",5).le("SUBSTRING(loc_no, 1, 2)",8);
                    break;
                case "3":wrapper.ge("SUBSTRING(loc_no, 1, 2)",9).le("SUBSTRING(loc_no, 1, 2)",12);
                    break;
                case "4":wrapper.ge("SUBSTRING(loc_no, 1, 2)",13).le("SUBSTRING(loc_no, 1, 2)",16);
                    break;
                case "5":
                    break;
                case "6":
                    break;
                case "7":wrapper.ge("SUBSTRING(loc_no, 1, 2)",17).le("SUBSTRING(loc_no, 1, 2)",37);
                    break;
                case "8":wrapper.ge("SUBSTRING(loc_no, 1, 2)",38).le("SUBSTRING(loc_no, 1, 2)",45);
                    break;
                case "9":wrapper.ge("SUBSTRING(loc_no, 1, 2)",46).le("SUBSTRING(loc_no, 1, 2)",53);
                    break;
                default:
            }
            param.remove("crnNo");
        Page<LocDetl> stockOut = locDetlService.getStockOut(toPage(curr, limit, param, LocDetl.class));
        if (stockOut.getRecords().size()==0){
            stockOut = locDetlService.getStockOut(toPage(1, limit, param, LocDetl.class));
        }
        convert(param, wrapper);
        // 不同继承角色显示不同库信息
        RoleUtils.addRoleWrapperByLocNo(getUserId(),wrapper);
        Page<LocDetl> locDetlPage = locDetlService.selectPage(new Page<>(curr, limit), wrapper);
        if (locDetlPage.getRecords().size()==0){
            locDetlPage = locDetlService.selectPage(new Page<>(1, limit), wrapper);
        }
        return R.ok(locDetlPage);
        return R.ok(stockOut);
    }
    @RequestMapping(value = "/stock/out/crn/list/auth")
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -62,6 +62,16 @@
    @Autowired
    private CommonService commonService;
//    @PostMapping("/agv/start")
//    @ManagerAuth
//    public R pdaStockCheck(@RequestBody StockCheckParam param){
//
//
//
//    }
    @PostMapping("/agv/start")
    @ManagerAuth
    public R pdaAgvStart(@RequestBody Map<String,Object> map){
src/main/java/com/zy/asrs/entity/param/StockCheckParam.java
New file
@@ -0,0 +1,36 @@
package com.zy.asrs.entity.param;
import lombok.Data;
import java.util.List;
@Data
public class StockCheckParam {
    // 托盘条码
    private String barcode;
    private List<CombMat> combMats;
    @Data
    public static class CombMat {
        // 物料编号
        private String matnr;
        // 序列码
        private String batch;
        // 物料数量
        private Double anfme;
        // 商品名称
        private String maktx;
        // 规格
        private String specs;
        private Double checkAnfme;
    }
}
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -144,6 +144,7 @@
            orderDetl.setSuppCode(detlDto.getFromOrderNo());
            orderDetl.setMemo(detlDto.getMemo());
            orderDetl.setManu(detlDto.getMark());
            orderDetl.setSupp(detlDto.getCustomer());
            if (!orderDetlService.insert(orderDetl)) {
                throw new CoolException("生成单据明细失败,请联系管理员");
            }
@@ -283,6 +284,7 @@
            orderDetl.setSuppCode(detlDto.getFromOrderNo());
            orderDetl.setMemo(detlDto.getMemo());
            orderDetl.setManu(detlDto.getMark());
            orderDetl.setSupp(detlDto.getCustomer());
            if (!orderDetlService.insert(orderDetl)) {
                throw new CoolException("生成单据明细失败,请联系管理员");
            }
src/main/java/com/zy/common/model/DetlDto.java
@@ -21,6 +21,7 @@
    private String fromOrderNo; //来源单号
    private String memo; //备注
    private String mark;
    private String customer;
    public DetlDto() {
    }
src/main/java/inventoryCheckOrder.sql
File was deleted
src/main/java/inventoryCheckOrderDetl.sql
File was deleted
src/main/webapp/static/js/order/order.js
@@ -42,15 +42,15 @@
        cellMinWidth: 100,
        cols: [[
            {type: 'numbers'},
            {field: 'orderNo', title: '单据编号', templet: '#orderNoTpl'},
            {field: 'docType$', align: 'center', title: '类型',  minWidth: 160, width: 160},
            {align: 'center', title: '明细', toolbar: '#tbLook', minWidth: 160, width: 160},
            {field: 'createTime$', title: '创建时间', minWidth: 200, width: 200},
            {field: 'orderNo', title: '单据编号', templet: '#orderNoTpl',minWidth: 200},
            {field: 'docType$', align: 'center', title: '类型'},
            {align: 'center', title: '明细', toolbar: '#tbLook'},
            {field: 'createTime$', title: '创建时间'},
            {field: 'settle$', align: 'center', title: '状态', templet: '#settleTpl',  minWidth: 160, width: 160},
            {field: 'shipName', align: 'center',title: '制单人'},
            {field: 'itemName', align: 'center',title: '仓库'},
            {field: 'memo', align: 'center',title: '备注', hide: true},
            {align: 'center', title: '操作', toolbar: '#operate', width: 180}
            {align: 'center', title: '操作', toolbar: '#operate'}
        ]],
        request: {
            pageName: 'curr',
@@ -181,7 +181,7 @@
                        var templateDom = $("#templatePreview1");
                        var className = templateDom.attr("class");
                        var param = "编码:"+data.matnr+";名称:"+data.maktx+";批次:"+data.batch+";规格:"+data.specs
                            +";单位:"+data.unit+";数量:"+data.anfme+";客户名称:"+data.cstmrName;
                            +";单位:"+data.unit+";数量:"+data.anfme+";销售单号:"+data.suppCode+";客户名称:"+data.supp;
                        var encodeUrl = encodeURIComponent(param);
                        data["barcodeUrl"]=baseUrl+"/mac/code/auth?type=2&param="+encodeUrl;
                        console.log(data["barcodeUrl"]);
src/main/webapp/static/js/pakStore/locCheckOut.js
@@ -3,7 +3,7 @@
var locDetlData = [];
function getCol() {
    var cols = [
        {field: 'locNo', align: 'center',title: '库位号', merge: true, style: 'font-weight: bold'}
        {field: 'locNo', align: 'center',title: '库位号', style: 'font-weight: bold'}
    ];
    cols.push.apply(cols, detlCols);
    return cols;
src/main/webapp/views/order/order.html
@@ -211,7 +211,10 @@
            数量:{{anfme}}
        </div>
        <div style="font-size: 12px;">
            客户名称:{{cstmrName}}
            销售单号:{{suppCode}}
        </div>
        <div style="font-size: 12px;">
            客户名称:{{supp}}
        </div>
    </div>
    {{/each}}
src/main/webapp/views/pakStore/locDetlQuery.html
@@ -111,7 +111,7 @@
    function getCol() {
        var cols = [
            {type: 'checkbox', merge: ['locNo']}
            {type: 'checkbox'}
            ,{field: 'locNo', align: 'center',title: '库位号', merge: true, style: 'font-weight: bold'}
            // ,{field: 'locNo$', align: 'center',title: '库位号'}
        ];