From 6bbaeff9658e297a6087c559352393fc732e8742 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期一, 15 五月 2023 08:39:04 +0800 Subject: [PATCH] 库存明细-库存冻结 --- src/main/webapp/static/js/locDetl/locDetl.js | 16 ++++++++ src/main/webapp/views/locDetl/locDetl.html | 4 ++ src/main/java/com/zy/asrs/mapper/LocDetlMapper.java | 2 + src/main/java/com/zy/asrs/service/LocDetlService.java | 2 + src/main/java/com/zy/asrs/controller/LocDetlController.java | 10 +++++ src/main/java/com/zy/asrs/entity/LocDetl.java | 11 +++++ src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 5 ++ src/main/resources/mapper/LocDetlMapper.xml | 10 +++++ src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java | 5 ++ 9 files changed, 65 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java index 30ec08b..cf08cdd 100644 --- a/src/main/java/com/zy/asrs/controller/LocDetlController.java +++ b/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){ diff --git a/src/main/java/com/zy/asrs/entity/LocDetl.java b/src/main/java/com/zy/asrs/entity/LocDetl.java index 47dd290..789ca66 100644 --- a/src/main/java/com/zy/asrs/entity/LocDetl.java +++ b/src/main/java/com/zy/asrs/entity/LocDetl.java @@ -157,6 +157,10 @@ @ApiModelProperty(value= "澶囨敞") private String memo; + @TableField("stock_freeze") + @ApiModelProperty(value= "搴撳瓨鍐荤粨{1:姝e父,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 ? "姝e父" : "鍐荤粨"; + } + } diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java index 2e3ecdb..004592e 100644 --- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java +++ b/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); + } diff --git a/src/main/java/com/zy/asrs/service/LocDetlService.java b/src/main/java/com/zy/asrs/service/LocDetlService.java index 4b4ccce..2a0111c 100644 --- a/src/main/java/com/zy/asrs/service/LocDetlService.java +++ b/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 浜у搧鍙� diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java index 357cb56..fe22f58 100644 --- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java +++ b/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); + } } diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java index 2f55cb9..fc9d604 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/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; diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml index 2d0859d..6b33153 100644 --- a/src/main/resources/mapper/LocDetlMapper.xml +++ b/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> diff --git a/src/main/webapp/static/js/locDetl/locDetl.js b/src/main/webapp/static/js/locDetl/locDetl.js index 34bdbae..4b7432f 100644 --- a/src/main/webapp/static/js/locDetl/locDetl.js +++ b/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}); + }); + }) + }); diff --git a/src/main/webapp/views/locDetl/locDetl.html b/src/main/webapp/views/locDetl/locDetl.html index 8ddbe26..83ed293 100644 --- a/src/main/webapp/views/locDetl/locDetl.html +++ b/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="姝e父|鍐荤粨" 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> -- Gitblit v1.9.1