自动化立体仓库 - WMS系统
Junjie
2023-05-15 6bbaeff9658e297a6087c559352393fc732e8742
库存明细-库存冻结
9个文件已修改
65 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/LocDetlController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/LocDetl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/LocDetlService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/LocDetlMapper.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/locDetl/locDetl.js 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/locDetl/locDetl.html 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -163,6 +163,16 @@
        return R.ok();
    }
    @RequestMapping(value = "/locDetl/updateStockFreeze/auth")
    @ManagerAuth(memo = "库位冻结")
    public R updateStockFreeze(LocDetl locDetl){
        if (Cools.isEmpty(locDetl) || null==locDetl.getMatnr()){
            return R.error();
        }
        locDetlService.updateStockFreeze(locDetl.getMatnr(), locDetl.getLocNo(), locDetl.getStockFreeze());
        return R.ok();
    }
    @RequestMapping(value = "/locDetl/delete/auth")
    @ManagerAuth(memo = "库位明细删除")
    public R delete(@RequestParam String param){
src/main/java/com/zy/asrs/entity/LocDetl.java
@@ -157,6 +157,10 @@
    @ApiModelProperty(value= "备注")
    private String memo;
    @TableField("stock_freeze")
    @ApiModelProperty(value= "库存冻结{1:正常,0:冻结}")
    private Integer stockFreeze;
    public String getLocNo$(){
        LocMastService service = SpringUtils.getBean(LocMastService.class);
        LocMast locMast = service.selectById(this.locNo);
@@ -252,4 +256,11 @@
        Synchro.Copy(source, this);
    }
    public String getStockFreeze$() {
        if (Cools.isEmpty(this.stockFreeze)){
            return "";
        }
        return this.stockFreeze == 1 ? "正常" : "冻结";
    }
}
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -69,4 +69,6 @@
    List<LocDetl> selectByLocNo(String locNo);
    int updateStockFreeze(String matnr, String locNo, Integer stockFreeze);
}
src/main/java/com/zy/asrs/service/LocDetlService.java
@@ -21,6 +21,8 @@
    boolean updateLocNo(String newLocNo, String oldLocNo);
    int updateStockFreeze(String matnr, String locNo, Integer stockFreeze);
    /**
     * 获取相同规格货物的深库位号
     * @param matnr 产品号
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -126,4 +126,9 @@
    public List<LocDetl> selectByLocNo(String locNo) {
        return this.baseMapper.selectByLocNo(locNo);
    }
    @Override
    public int updateStockFreeze(String matnr, String locNo, Integer stockFreeze) {
        return this.baseMapper.updateStockFreeze(matnr, locNo, stockFreeze);
    }
}
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -176,6 +176,11 @@
            //检测出库的货物中是否有状态为禁止的货物。
            for (LocDetl locDetl : locDetlService.selectByLocNo(locNo)) {
                if (locDetl.getStockFreeze() == 0) {
                    th="库位号:"+locNo+" 有禁止出库的货物!";
                    throw new CoolException("出库失败;"+th);
                }
                Mat mat = matService.selectByMatnr(locDetl.getMatnr());
                if (mat == null) {
                    continue;
src/main/resources/mapper/LocDetlMapper.xml
@@ -44,6 +44,7 @@
        <result column="appe_user" property="appeUser" />
        <result column="appe_time" property="appeTime" />
        <result column="memo" property="memo" />
        <result column="stock_freeze" property="stockFreeze" />
    </resultMap>
    <sql id="batchSeq">
@@ -347,4 +348,13 @@
        where 1=1
        and loc_no = #{locNo}
    </select>
    <update id="updateStockFreeze">
        update asr_loc_detl
        set stock_freeze = #{stockFreeze}
        , modi_time = getdate()
        where 1=1
        and loc_no = #{locNo}
        and matnr = #{matnr}
    </update>
</mapper>
src/main/webapp/static/js/locDetl/locDetl.js
@@ -1,4 +1,5 @@
var pageCurr;
var tableData;
function getCol() {
    var cols = [
        {field: 'locNo$', align: 'center',title: '库位号'},
@@ -41,6 +42,7 @@
    // cols.push.apply(cols, detlCols);
    cols.push({field: 'modiUser$', align: 'center',title: '修改人员',hide: true}
        ,{field: 'modiTime$', align: 'center',title: '修改时间'}
        ,{field: 'stockFreeze', align: 'center',title: '库存冻结', templet: '#stockFreezeTpl'}
    )
    return cols;
}
@@ -86,6 +88,7 @@
            if (res.code === 403) {
                top.location.href = baseUrl+"/";
            }
            tableData = table.cache.locDetl;
            pageCurr=curr;
            limit();
            form.on('checkbox(tableCheckbox)', function (data) {
@@ -491,6 +494,19 @@
        type: 'datetime'
    });
    form.on('switch(stockFreezeSwitch)', function (obj) {
        let index  = obj.othis.parents('tr').attr("data-index");
        let data = tableData[index];
        data[this.stockFreeze] = obj.elem.checked?1:0;
        http.post(baseUrl + "/locDetl/updateStockFreeze/auth", {
            locNo: data.locNo,
            matnr: data.matnr,
            stockFreeze: data[this.stockFreeze]
        }, function (res) {
            layer.msg(res.msg, {icon: 1});
        });
    })
});
src/main/webapp/views/locDetl/locDetl.html
@@ -64,6 +64,10 @@
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a>
</script>
<script type="text/html" id="stockFreezeTpl">
    <input type="checkbox" name="stockFreeze" value="{{d.stockFreeze}}" lay-skin="switch" lay-text="正常|冻结" lay-filter="stockFreezeSwitch" {{ d.stockFreeze === 1 ? 'checked' : '' }}>
</script>
<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>