From 1cb690574fdf7657e13e3d9d459329eab89f466f Mon Sep 17 00:00:00 2001 From: yangjun <1173114630@qq.com> Date: Tue, 18 Nov 2025 16:03:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B7=BB=E5=8A=A0=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E6=9C=80=E5=A4=A7=E5=8F=AF=E4=BB=A5=E8=AF=B7?= =?UTF-8?q?=E8=B4=AD=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pad/invoicing/api/InvoicingApi.java | 13 ++++++-- .../modules/invoicing/api/IInvoicingApi.java | 5 +-- .../impl/NuInvoicingCgdMainServiceImpl.java | 31 ++++++++++++++++--- 3 files changed, 41 insertions(+), 8 deletions(-) diff --git a/nursing-unit-api/src/main/java/com/nu/modules/pad/invoicing/api/InvoicingApi.java b/nursing-unit-api/src/main/java/com/nu/modules/pad/invoicing/api/InvoicingApi.java index ac00414..b4f4758 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/pad/invoicing/api/InvoicingApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/pad/invoicing/api/InvoicingApi.java @@ -49,11 +49,16 @@ public class InvoicingApi { @AutoLog(value = "请购单-请购信息-添加") @PostMapping(value = "/addShoppingCartList") public Result addShoppingCartList(@RequestBody List infoList) { - String result = invoicingApi.addShoppingCartList(infoList); + Integer maxCount = 100;//购物车最大数量 + String result = invoicingApi.addShoppingCartList(infoList,maxCount); if("1".equals( result)){ return Result.error("请购信息已存在,不可重复请购!"); }else if(result.indexOf("2@")>-1){ return Result.error("您已有其他物料请购数据,请购总数量超出库存上限,请修改请购数量,剩余请购数量为:" + result.split("@")[1]); + }else if("3".equals( result)){ + return Result.error("添加的物料配置错误,请检查物料是否在对应仓库里!"); + }else if("4".equals( result)){ + return Result.error("购物车最大数量为"+maxCount+",请购数量超出限制"); } return Result.OK("添加成功!"); } @@ -322,7 +327,11 @@ public class InvoicingApi { if(StringUtils.isEmpty(cgdInfoEntityDto.getNuId())){ return Result.error("请选择仓库"); } - String result = invoicingApi.addWaringAll(cgdInfoEntityDto); + Integer maxCount = 100;//最大可添加数量 + String result = invoicingApi.addWaringAll(cgdInfoEntityDto,maxCount); + if("4".equals( result)){ + return Result.error("购物车最大可添加"+maxCount+"条请购信息,已超出限制,不可再进行请购"); + } return Result.OK("添加成功!"); } diff --git a/nursing-unit-invoicing/nu-invoicing-api/nu-invoicing-local-api/src/main/java/com/nu/modules/invoicing/api/IInvoicingApi.java b/nursing-unit-invoicing/nu-invoicing-api/nu-invoicing-local-api/src/main/java/com/nu/modules/invoicing/api/IInvoicingApi.java index 7a4a6eb..fbe3f83 100644 --- a/nursing-unit-invoicing/nu-invoicing-api/nu-invoicing-local-api/src/main/java/com/nu/modules/invoicing/api/IInvoicingApi.java +++ b/nursing-unit-invoicing/nu-invoicing-api/nu-invoicing-local-api/src/main/java/com/nu/modules/invoicing/api/IInvoicingApi.java @@ -2,6 +2,7 @@ package com.nu.modules.invoicing.api; import com.baomidou.mybatisplus.core.metadata.IPage; import com.nu.entity.*; +import io.swagger.models.auth.In; import javax.servlet.http.HttpServletRequest; import java.util.List; @@ -13,7 +14,7 @@ public interface IInvoicingApi { IPage queryShoppingCartList(Integer pageNo, Integer pageSize, QgdInfoEntity qgdInfoEntityDto, HttpServletRequest req); - String addShoppingCartList(List infoList); + String addShoppingCartList(List infoList,Integer maxCount); List generatedPurchaseViewOrder(List infoList); @@ -69,7 +70,7 @@ public interface IInvoicingApi { IPage querySxdList(Integer pageNo, Integer pageSize, CgdSxdEntity cgdSxdEntityDto, HttpServletRequest req); - String addWaringAll(CgdInfoEntity cgdInfoEntityDto); + String addWaringAll(CgdInfoEntity cgdInfoEntityDto, Integer maxCount); String pickingInfo(CgdInfoEntity cgdInfoEntityDto); diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdMainServiceImpl.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdMainServiceImpl.java index 8d92b68..9fe6aca 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdMainServiceImpl.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdMainServiceImpl.java @@ -29,6 +29,7 @@ import com.nu.modules.qgd.mapper.QgdInfoMapper; import com.nu.modules.sysconfig.ISysConfigApi; import com.nu.modules.warehouseMaterialInfo.entity.BlWarehouseMaterialInfo; import com.nu.modules.warehouseMaterialInfo.mapper.BlWarehouseMaterialInfoMapper; +import io.swagger.models.auth.In; import org.apache.commons.lang.StringUtils; import org.apache.shiro.SecurityUtils; import org.jeecg.common.system.query.QueryGenerator; @@ -154,7 +155,18 @@ public class NuInvoicingCgdMainServiceImpl extends ServiceImpl infoList) { + public String addShoppingCartList(List infoList,Integer maxCount) { + + String nuId = infoList.get(0).getNuId(); + if(StringUtils.isEmpty(nuId)){ + return "3";//护理单元为空 + }else{ + List listqg = qgdInfoMapper.selectList(new QueryWrapper().eq("nu_id",nuId)); + if(listqg.size()>maxCount){ + return "4";//购物车最大数量为100,请购数量超出限制 + } + } + String result = "0"; for (QgdInfoEntity info : infoList) { if(info.getPurchaseQuantity()!=null && info.getPurchaseQuantity()>0){ @@ -754,17 +766,24 @@ public class NuInvoicingCgdMainServiceImpl extends ServiceImpl listqg = qgdInfoMapper.selectList(new QueryWrapper().eq("nu_id",cgdInfoEntityDto.getNuId())); + if(listqg.size()>=maxCount){ + return "4";//购物车最大数量为100,请购数量超出限制 + } QueryWrapper queryWrapper = new QueryWrapper<>() ; queryWrapper.eq("nu_id",cgdInfoEntityDto.getNuId()); queryWrapper.apply("kcsl <= lower_limit");//库存小于下限的数据 queryWrapper.eq("del_flag","0");//查询未删除的数据 queryWrapper.eq("iz_enabled","Y");//查询启用的数据 queryWrapper.eq("isAdd","0");//查询未在购物车里的数据 +// queryWrapper.last("limit " + (3-listqg.size())); //库存预警数据 List list = mterialInfoMapper.selectList(queryWrapper); //供应商集合 List gysList = gysMapper.selectList(new QueryWrapper().eq("del_flag","0")); + int count = listqg.size(); for(BlWarehouseMaterialInfo info : list){ String wlupperlimit = info.getUpperLimit()+""; @@ -795,7 +814,7 @@ public class NuInvoicingCgdMainServiceImpl extends ServiceImpl=maxCount){ + break; + } } return "1"; }