From 36723c513b5188a8f816bee5b69e74d9a35a3b6f Mon Sep 17 00:00:00 2001 From: zhangzhiqiang Date: Mon, 18 Sep 2023 13:50:00 +0800 Subject: [PATCH] =?UTF-8?q?add:=E6=B7=BB=E5=8A=A0=E5=8E=9F=E6=9D=90?= =?UTF-8?q?=E6=96=99=E5=BA=93=E5=AD=98=E5=8F=98=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../structIvt/StIvtStructivtYlController.java | 23 +++++++++----- .../IStIvtIostorinvOutYlService.java | 6 ++++ .../impl/StIvtIostorinvOutYlServiceImpl.java | 31 +++++++++++++++++++ .../rawproduct/rawProductIvt/index.vue | 25 +++++++-------- 4 files changed, 64 insertions(+), 21 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/controller/structIvt/StIvtStructivtYlController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/controller/structIvt/StIvtStructivtYlController.java index 7d03eda3..af79ea42 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/controller/structIvt/StIvtStructivtYlController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/controller/structIvt/StIvtStructivtYlController.java @@ -1,18 +1,27 @@ package org.nl.wms.storage_manage.rawmanage.controller.structIvt; +import cn.hutool.core.util.NumberUtil; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import io.swagger.annotations.ApiOperation; import org.nl.common.anno.Log; import org.nl.common.domain.query.PageQuery; import org.nl.wms.device_manage.ios.service.structIvt.dto.StructIvtEmQuery; +import org.nl.wms.storage_manage.productmanage.util.ChangeIvtUtil; +import org.nl.wms.storage_manage.rawmanage.service.iostorInv.IStIvtIostorinvOutYlService; import org.nl.wms.storage_manage.rawmanage.service.structIvt.IStIvtStructivtYlService; +import org.nl.wms.storage_manage.rawmanage.service.structIvt.dao.StIvtStructivtYl; import org.nl.wms.storage_manage.rawmanage.service.structIvt.dto.StructIvtYLQuery; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import java.math.BigDecimal; +import java.util.List; + /** *

* 仓位库存表 前端控制器 @@ -27,31 +36,29 @@ public class StIvtStructivtYlController { @Autowired private IStIvtStructivtYlService structivtYlService; + @Autowired + private IStIvtIostorinvOutYlService iostorinvOutYlService; @GetMapping("/getRawIvt") @Log("查询可用的原料库存") - //("查询可用的原料库存") public ResponseEntity getRawIvt(StructIvtYLQuery query, PageQuery page) { return new ResponseEntity<>(structivtYlService.getRawIvt(query, page), HttpStatus.OK); } @GetMapping("/getProductIvt") @Log("查询可用的成品库存") - //("查询可用的成品库存") public ResponseEntity getProductIvt(StructIvtYLQuery query, PageQuery page) { return new ResponseEntity<>(structivtYlService.getProductIvt(query,page), HttpStatus.OK); } @PostMapping("/getStructIvt") @Log("查询库存") - //("查询库存") public ResponseEntity getStructIvt(StructIvtYLQuery query) { return new ResponseEntity<>(structivtYlService.getStructIvt(query), HttpStatus.OK); } @PostMapping("/getSemiProductIvt") @Log("查询可用的半成品库存") - //("查询可用的半成品库存") public ResponseEntity getSemiProductIvt(StructIvtYLQuery query) { return new ResponseEntity<>(structivtYlService.getSemiProductIvt(query), HttpStatus.OK); } @@ -59,21 +66,21 @@ public class StIvtStructivtYlController { @GetMapping("/getSemiProductIvt2") @Log("查询可用的半成品库存") - //("查询可用的半成品库存") public ResponseEntity getSemiProductIvt2(StructIvtYLQuery query, PageQuery page) { return new ResponseEntity<>(structivtYlService.getSemiProductIvt(query,page), HttpStatus.OK); } @GetMapping("/getAllRawIvt") @Log("查询原料库存") - //("查询原料库存") public ResponseEntity getAllRawIvt(StructIvtYLQuery query, PageQuery page) { return new ResponseEntity<>(structivtYlService.getAllRawIvt(query, page), HttpStatus.OK); } - @GetMapping("/update") + @PostMapping("/update") @Log("更新原料库存") - //("查询原料库存") public ResponseEntity update(@RequestBody JSONObject form) { + + iostorinvOutYlService.updateIvt(form); + return new ResponseEntity<>(HttpStatus.OK); } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/IStIvtIostorinvOutYlService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/IStIvtIostorinvOutYlService.java index 513db65d..5762c4b1 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/IStIvtIostorinvOutYlService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/IStIvtIostorinvOutYlService.java @@ -63,4 +63,10 @@ public interface IStIvtIostorinvOutYlService extends IService */ void confirm(JSONObject form); + /** + * 手动修改库存 + * @param form + */ + void updateIvt(JSONObject form); + } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvOutYlServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvOutYlServiceImpl.java index 3a445077..6de56470 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvOutYlServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvOutYlServiceImpl.java @@ -299,4 +299,35 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl() + .eq("material_id", form.getString("material_id")) + .eq("stor_id", form.getString("stor_id")) + .eq("canuse_qty", form.getBigDecimal("old_qty")) + ); + if (ivt==null){ + throw new BadRequestException("当前物料库存已变更,请重新操作"); + } + double change_qty = NumberUtil.sub(form.getBigDecimal("ivt_qty"),form.getBigDecimal("old_qty")).doubleValue(); + if (change_qty==0){ + return; + } + ivt.setCanuse_qty(form.getBigDecimal("ivt_qty")); + ivt.setIvt_qty(ivt.getCanuse_qty()); + structivtYlService.updateById(ivt); + // 插入库存变动记 + JSONObject param = JSONObject.parseObject(JSON.toJSONString(ivt)); + param.put("change_type", change_qty>0?ChangeIvtUtil.SUBWAREHOUSING_ADDIVT_QTY:ChangeIvtUtil.SUBFROZEN_SUBIVT_QTY); + param.put("change_qty",Math.abs(change_qty)); + param.put("result_qty", form.getBigDecimal("ivt_qty")); + param.put("bill_code",""); + param.put("inv_id",""); + param.put("bill_type_scode",""); + iStIvtStructivtflowYlService.insetIvtChange(param); + } + } diff --git a/mes/qd/src/views/wms/storage_manage/rawproduct/rawProductIvt/index.vue b/mes/qd/src/views/wms/storage_manage/rawproduct/rawProductIvt/index.vue index 550dfc2e..8c9e0731 100644 --- a/mes/qd/src/views/wms/storage_manage/rawproduct/rawProductIvt/index.vue +++ b/mes/qd/src/views/wms/storage_manage/rawproduct/rawProductIvt/index.vue @@ -114,12 +114,7 @@ - - - - - - + @@ -127,7 +122,7 @@ @@ -218,12 +213,16 @@ export default { updateMaterial(row){ this.dialogVisible = true this.ivtForm = row - // ProductIvt.edit(row).then(res => { - // this.crud.notify('操作成功', CRUD.NOTIFICATION_TYPE.SUCCESS) - // this.crud.toQuery() - // }).catch(err => { - // console.log(err.response.data.message) - // }) + this.ivtForm.old_qty = row.canuse_qty + + }, + updateIvt(){ + ProductIvt.edit(this.ivtForm).then(res => { + this.crud.notify('操作成功', CRUD.NOTIFICATION_TYPE.SUCCESS) + this.crud.toQuery() + this.closeView() + }).catch(err => { + }) } } }