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 3cce3f07..bce59129 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 @@ -59,6 +59,8 @@ public class InvoicingApi { return Result.error("添加的物料配置错误,请检查物料是否在对应仓库里!"); }else if("4".equals( result)){ return Result.error("购物车最大数量为"+maxCount+",请购数量超出限制"); + }else if(result.indexOf("5@")>-1){ + return Result.error("请购总数量超出库存上限,请修改请购数量,已超出数量为:" + result.split("@")[1]); } return Result.OK("添加成功!"); } diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/service/impl/ConfigMaterialCategoryServiceImpl.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/service/impl/ConfigMaterialCategoryServiceImpl.java index 35cbd387..3b9ed3a8 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/service/impl/ConfigMaterialCategoryServiceImpl.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/ConfigMaterial/service/impl/ConfigMaterialCategoryServiceImpl.java @@ -254,9 +254,11 @@ public class ConfigMaterialCategoryServiceImpl extends ServiceImpl oneSet = new LinkedHashSet<>(Arrays.asList(oneParts)); diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdInfoMapper.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdInfoMapper.java index 26e36bd3..1e8b8250 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdInfoMapper.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdInfoMapper.java @@ -18,4 +18,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; public interface NuInvoicingCgdInfoMapper extends BaseMapper { List queryCgdInfoList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + List selectWlNumList(@Param("params") NuInvoicingCgdInfo nuInvoicingCgdInfo); } diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdInfoMapper.xml b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdInfoMapper.xml index 1e182f8e..285f6bb9 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdInfoMapper.xml +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdInfoMapper.xml @@ -9,4 +9,13 @@ LEFT JOIN nu_warehouse_material_info d on a.wl_id = d.wl_id ${ew.customSqlSegment} + + + \ No newline at end of file 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 9aba5c31..2f80dbb1 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 @@ -145,7 +145,7 @@ public class NuInvoicingCgdMainServiceImpl extends ServiceImpl page = new Page(pageNo, pageSize); List list = qgdInfoMapper.queryShoppingCartList(page, queryWrapper); //封装返回结果 @@ -175,15 +175,19 @@ public class NuInvoicingCgdMainServiceImpl extends ServiceImpl listqg = qgdInfoMapper.selectList(new QueryWrapper().eq("wl_id",info.getWlId()).eq("nu_id",info.getNuId())); int totalQgsl = 0; + //判断库存数量是否超出上限 if(StringUtils.isNotBlank(info.getKcsl())){ totalQgsl = Integer.parseInt(info.getKcsl()); } + //计算物料的总数量(这个是按照 库存数量+请购车数量) for(QgdInfo qgdInfoParam : listqg){ totalQgsl += qgdInfoParam.getPurchaseQuantity(); } @@ -193,6 +197,20 @@ public class NuInvoicingCgdMainServiceImpl extends ServiceImpl listcg = cgdInfoMapper.selectWlNumList(cgdInfoParam); + int cgdNum = 0; + for(NuInvoicingCgdInfo cgdInfo : listcg){ + cgdNum += cgdInfo.getPurchaseQuantity(); + } + + if(Integer.parseInt(upperLimit)<(totalQgsl + dqsl + cgdNum)){ + result = "5@"+ (totalQgsl + dqsl + cgdNum); + break; + } } info.setWlName(ConfigMaterialInfo.getMaterialName()); info.setWlMaterialNo(ConfigMaterialInfo.getMaterialNo()); @@ -397,7 +415,10 @@ public class NuInvoicingCgdMainServiceImpl extends ServiceImpl queryWrapper = QueryGenerator.initQueryWrapper("a",nuInvoicingCgdInfo, req.getParameterMap()); +// QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper("a",nuInvoicingCgdInfo, req.getParameterMap()); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("a.cgd_id",cgdInfoEntityDto.getCgdId()); +// queryWrapper.eq("d.nu_id",cgdInfoEntityDto.getNuId()); Page page = new Page<>(pageNo, pageSize); queryWrapper.apply(StringUtils.isNotBlank(cgdInfoEntityDto.getWlParamInfo()),"( b.material_name like concat('%', '"+cgdInfoEntityDto.getWlParamInfo()+"' , '%') or\n" + " b.pinyin like concat('%', '"+cgdInfoEntityDto.getWlParamInfo()+"' , '%') or\n" + @@ -595,7 +616,7 @@ public class NuInvoicingCgdMainServiceImpl extends ServiceImpl list = configMaterialInfoMapper.getGwcTreeDataWlnum(queryWrapper); map.put("success",true);