From bd5201e56fe5a9dd414288b6982183fa31073dfe Mon Sep 17 00:00:00 2001 From: liuhanqing Date: Sun, 18 Jan 2026 10:55:40 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=93=E5=AD=98=E6=A0=B9=E6=8D=AE=E6=9D=83?= =?UTF-8?q?=E9=99=90=E6=96=B0=E5=A2=9E=E4=BF=AE=E6=94=B9=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../stock/controller/BasStockController.java | 6 +- .../stock/stock/service/IBasStockService.java | 6 +- .../service/impl/BasStockServiceImpl.java | 73 +++++++++++++++++-- .../resources/mapper/stock/BasStockMapper.xml | 2 + ruoyi-ui/src/views/stock/management/index.vue | 26 ++++++- 5 files changed, 98 insertions(+), 15 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/controller/BasStockController.java b/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/controller/BasStockController.java index a952329..6ae61be 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/controller/BasStockController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/controller/BasStockController.java @@ -84,7 +84,7 @@ public class BasStockController extends BaseController @PostMapping public AjaxResult add(@RequestBody BasStock basStock) { - return toAjax(basStockService.insertBasStock(basStock)); + return basStockService.insertBasStock(basStock); } /** @@ -95,7 +95,7 @@ public class BasStockController extends BaseController @PutMapping public AjaxResult edit(@RequestBody BasStock basStock) { - return toAjax(basStockService.updateBasStock(basStock)); + return basStockService.updateBasStock(basStock); } /** * 修改库存部门 @@ -116,7 +116,7 @@ public class BasStockController extends BaseController @DeleteMapping("/{stockIds}") public AjaxResult remove(@PathVariable String[] stockIds) { - return toAjax(basStockService.deleteBasStockByStockIds(stockIds)); + return basStockService.deleteBasStockByStockIds(stockIds); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/IBasStockService.java b/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/IBasStockService.java index 67adc81..bd72495 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/IBasStockService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/IBasStockService.java @@ -43,7 +43,7 @@ public interface IBasStockService * @param basStock 库存信息 * @return 结果 */ - public int insertBasStock(BasStock basStock); + public AjaxResult insertBasStock(BasStock basStock); /** * 新增库存信息(不记录维护记录) @@ -59,7 +59,7 @@ public interface IBasStockService * @param basStock 库存信息 * @return 结果 */ - public int updateBasStock(BasStock basStock); + public AjaxResult updateBasStock(BasStock basStock); /** * 批量删除库存信息 @@ -67,7 +67,7 @@ public interface IBasStockService * @param stockIds 需要删除的库存信息主键集合 * @return 结果 */ - public int deleteBasStockByStockIds(String[] stockIds); + public AjaxResult deleteBasStockByStockIds(String[] stockIds); /** * 删除库存信息信息 diff --git a/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/impl/BasStockServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/impl/BasStockServiceImpl.java index 9f2016e..52a776d 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/impl/BasStockServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/stock/stock/service/impl/BasStockServiceImpl.java @@ -1,7 +1,9 @@ package com.ruoyi.stock.stock.service.impl; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.IdUtil; +import com.ruoyi.bas.basJobId.service.IBasJobIdService; import com.ruoyi.bas.cargoSpace.service.IBasCargoSpaceService; import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.core.domain.AjaxResult; @@ -41,6 +43,8 @@ public class BasStockServiceImpl implements IBasStockService private IBasStockFreezeRecordService basStockFreezeRecordService; @Autowired private IBasCargoSpaceService basCargoSpaceService; + @Autowired + private IBasJobIdService basJobIdService; /** * 查询库存信息 @@ -87,10 +91,31 @@ public class BasStockServiceImpl implements IBasStockService * @return 结果 */ @Override - public int insertBasStock(BasStock basStock) + public AjaxResult insertBasStock(BasStock basStock) { + if (!"admin".equals(SecurityUtils.getUsername())) { + BasStock param = new BasStock(); + param.setTrayCode(basStock.getTrayCode()); + List basStocks = basStockMapper.selectBasStockList(param); + if (CollUtil.isNotEmpty(basStocks)){ + Optional first = basStocks.stream().filter(x -> x.getModel()!=null &&x.getModel().equals(SecurityUtils.getDeptId().toString())).findFirst(); + if (first.isEmpty()){ + //不是同个部门的,不可以新增物料 + return AjaxResult.error("不是同一个部门,无法修改物料"); + } + } + } insertMaintainRecord(null,basStock,"1"); - return basStockMapper.insertBasStock(basStock); + basStock.setStockId(basJobIdService.getJobId("KC")); + basStock.setModel(SecurityUtils.getDeptId().toString()); + basStock.setProductStatus("1"); + basStock.setInDate(DateUtil.formatDateTime(new Date())); + int i =basStockMapper.insertBasStock(basStock); + if (i > 0){ + return AjaxResult.success(); + }else { + return AjaxResult.error(); + } } private void insertMaintainRecord(BasStock oldStock, BasStock basStock, String operate) { @@ -121,12 +146,29 @@ public class BasStockServiceImpl implements IBasStockService * @return 结果 */ @Override - public int updateBasStock(BasStock basStock) + public AjaxResult updateBasStock(BasStock basStock) { + if (!"admin".equals(SecurityUtils.getUsername())) { + BasStock param = new BasStock(); + param.setTrayCode(basStock.getTrayCode()); + List basStocks = basStockMapper.selectBasStockList(param); + if (CollUtil.isNotEmpty(basStocks)){ + Optional first = basStocks.stream().filter(x -> x.getModel()!=null &&x.getModel().equals(SecurityUtils.getDeptId().toString())).findFirst(); + if (first.isEmpty()){ + //不是同个部门的,不可以新增物料 + return AjaxResult.error("不是同一个部门,无法修改物料"); + } + } + } BasStock oldBasStock = basStockMapper.selectBasStockByStockId(basStock.getStockId()); insertMaintainRecord(oldBasStock,basStock,"2"); insertFreezeRecord(oldBasStock,basStock); - return basStockMapper.updateBasStock(basStock); + int i = basStockMapper.updateBasStock(basStock); + if (i > 0){ + return AjaxResult.success(); + }else { + return AjaxResult.error(); + } } private void insertFreezeRecord(BasStock oldBasStock, BasStock basStock) { @@ -158,13 +200,32 @@ public class BasStockServiceImpl implements IBasStockService */ @Override @Transactional(rollbackFor = Exception.class) - public int deleteBasStockByStockIds(String[] stockIds) + public AjaxResult deleteBasStockByStockIds(String[] stockIds) { + for (String stockId : stockIds) { + if (!"admin".equals(SecurityUtils.getUsername())) { + BasStock param = new BasStock(); + param.setStockId(stockId); + List basStocks = basStockMapper.selectBasStockList(param); + if (CollUtil.isNotEmpty(basStocks)){ + Optional first = basStocks.stream().filter(x -> x.getModel()!=null &&x.getModel().equals(SecurityUtils.getDeptId().toString())).findFirst(); + if (first.isEmpty()){ + //不是同个部门的,不可以新增物料 + return AjaxResult.error("不是同一个部门,无法删除物料"); + } + } + } + } + for (String stockId : stockIds) { BasStock oldBasStock = basStockMapper.selectBasStockByStockId(stockId); insertMaintainRecord(oldBasStock,oldBasStock,"3"); } - return basStockMapper.deleteBasStockByStockIds(stockIds); + int i = basStockMapper.deleteBasStockByStockIds(stockIds); + if (i > 0){ + return AjaxResult.success(); + } + return AjaxResult.error(); } /** diff --git a/ruoyi-admin/src/main/resources/mapper/stock/BasStockMapper.xml b/ruoyi-admin/src/main/resources/mapper/stock/BasStockMapper.xml index 3827981..4fc745c 100644 --- a/ruoyi-admin/src/main/resources/mapper/stock/BasStockMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/stock/BasStockMapper.xml @@ -56,6 +56,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -96,6 +97,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" bs.spare4, --来源 bs.spare1, --用途 bs.distribution, --用途 + bs.model, --用途 bcs.the_type as net_weight --重量 from bas_stock bs left join bas_product bp on bs.product_id = bp.product_id diff --git a/ruoyi-ui/src/views/stock/management/index.vue b/ruoyi-ui/src/views/stock/management/index.vue index 7fca2d5..1ec484a 100644 --- a/ruoyi-ui/src/views/stock/management/index.vue +++ b/ruoyi-ui/src/views/stock/management/index.vue @@ -156,7 +156,7 @@ icon="el-icon-plus" size="mini" @click="handleAdd" - v-hasPermi="['system:stock:add']" + v-hasPermi="['stock:management:add']" >新增 @@ -261,7 +261,18 @@ - + + + + + + + + + + + + + { this.form = response.data this.open = true + this.form.trayCode = this.currentMasterRow.trayCode + this.form.warehouseId = this.currentMasterRow.warehouseId + this.form.cargoSpaceId = this.currentMasterRow.cargoSpaceId + this.form.cargoSpaceName = this.currentMasterRow.cargoSpaceName + this.form.productId = response.data.productId + this.form.productName =response.data.productName + console.log(this.form) + console.log(this.currentMasterRow) this.title = "修改库存信息" // 修改库存信息 }) }, @@ -749,7 +770,6 @@ export default { warehouseId: row.warehouseId, model:row.model } - console.log(this.deptForm) this.openDept = true this.titleDept = "托盘转运部门" },