王佳豪
2021-05-07 cf8ba6b7a9d9f05aa2eaf41ffb2f58c3beb50278
1.通知出库-平仓出库允许分批出
2个文件已修改
73 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/OutStockController.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/pakStore/outStockNormalDetail.html 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OutStockController.java
@@ -1,9 +1,11 @@
package com.zy.asrs.controller;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.annotations.ManagerAuth;
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.LocNormal;
import com.zy.asrs.entity.param.LocNormalStockOutParam;
@@ -15,6 +17,8 @@
import com.zy.common.service.erp.entity.OutStockBillEntry;
import com.zy.common.web.BaseController;
import lombok.extern.slf4j.Slf4j;
import net.bytebuddy.implementation.bytecode.Throw;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -99,11 +103,37 @@
            // erp中间表更新数据
            Integer FInterI = outStockService.queryOutStockFInterID(param.getSupplier()); // 获取出库单主表主键
            if (!erpService.incrementCPakOut(FInterI, locNormals.getMatnr(), locNormals.getAnfme().doubleValue(), param.getSupplier())) {
                log.info("更新ERP成品出库数据[matnr={0}]失败", locNormals.getMatnr());
                log.info("更新ERP成品出库数据[matnr={0}]失败", locNormals.getMatnr(), param.getSupplier());
            }
            LocNormal locNormal = locNormalService.selectOne(new EntityWrapper<LocNormal>().eq("id", locNormals.getId()));
            if (!Cools.isEmpty(locNormal)) {
                if (locNormal.getAnfme().compareTo(locNormals.getAnfme()) == 1) {
                    LocNormal logLocNormal = new LocNormal();
                    logLocNormal.setAnfme(locNormals.getAnfme());
                    logLocNormal.setMatnr(locNormal.getMatnr());
                    logLocNormal.setMaktx(locNormal.getMaktx());
                    logLocNormal.setLgnum(locNormal.getLgnum());
                    logLocNormal.setType(locNormal.getType());
                    logLocNormal.setMnemonic(locNormal.getMnemonic());
                    logLocNormal.setSupplier(locNormal.getSupplier());
                    logLocNormal.setWarehouse(locNormal.getWarehouse());
                    logLocNormal.setWarehouseName(locNormal.getWarehouseName());
                    logLocNormal.setBrand(locNormal.getBrand());
                    logLocNormal.setAltme(locNormal.getAltme());
                    logLocNormal.setBname(locNormal.getBname());
                    logLocNormal.setMemo(locNormal.getMemo());
                    logLocNormal.setState("2");
                    // 生成出库记录
                    locNormalService.insert(logLocNormal);
                    // 更新原先平仓记录
                    locNormalService.updateLocNormal(locNormal.getMatnr(), locNormal.getAnfme().subtract(locNormals.getAnfme()), modiUser, modiTime, locNormal.getId());
                } else {
            // 把对应物料平仓库存出库
            locNormalService.outLocNormal(locNormals.getMatnr(), modiUser, modiTime, locNormals.getId());
        }
            }
        }
        return R.ok("平仓出库成功");
    }
}
src/main/webapp/views/pakStore/outStockNormalDetail.html
@@ -33,13 +33,14 @@
    var orderData = parent.getOrderData();
    var locData = [];
    var table;
    var sourceData = [];
    function getCol() {
        var cols = [
            {type: 'checkbox'}
            , {field: 'warehouseName', align: 'center', title: '库区名称'}
            , {field: 'warehouse', align: 'center', title: '库位编号'}
            , {field: 'anfme', align: 'center', title: '数量'}
            , {field: 'anfme', align: 'center', title: '数量', edit: 'text'}
        ];
        cols.push.apply(cols, locNormalCols);
        cols.push({field: 'modiUser$', align: 'center', title: '修改人员', hide: true}
@@ -81,14 +82,50 @@
                if (res.code === 403) {
                    top.location.href = baseUrl + "/";
                }
                if (res.code === 200) {
                locData = res.data;
                    sourceData = [];
                    if (res.data && res.data.length > 0) {
                        res.data.map(function (item) {
                            var obj = {
                                anfme: item.anfme,
                                id: item.id,
                                matnr: item.matnr,
                                supplier: item.supplier,
                            }
                            sourceData.push(obj);
                        });
                    }
                }
            }
        });
        // 页面修改
        table.on('edit(stockOut)', function (obj) {
            if (obj.field === 'anfme') {
                if (isNaN(obj.value)) {
                    layer.msg("请输入数字");
                    locDetlTableIns.reload();
                }
                // 单元格编辑之前的值进行比较
                for (var i = 0; i < sourceData.length; i++) {
                    if (obj.data.id == sourceData[i].id) {
                        if (Number(obj.value) > sourceData[i].anfme) {
                            layer.msg("数量不可大于库存量");
                            locDetlTableIns.reload();
                        }
                    }
                }
                if (obj.value <= 0) {
                    layer.msg("数量不可小于等于零");
                    locDetlTableIns.reload();
                }
            }
        });
    });
    /* 启动出库 */
    function outbound() {
        locData
        var checkStatus = table.checkStatus('stockOut');
        var checkData = checkStatus.data;
        var obj = {