ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpProcurementController.java
@@ -192,7 +192,7 @@ public R<?> detailProcurementSend(@RequestBody DetailProcurementSendDto dto) { SysUser user = tokenService.getLoginUser().getUser(); Integer roleType = user.getRoleType(); String clinicSupplierId=null; List<String> clinicSupplierId=null; if(roleType == 6){ TCrmWarehouse warehouse = crmWarehouseService.getOne(Wrappers.lambdaQuery(TCrmWarehouse.class) @@ -200,10 +200,8 @@ .last("LIMIT 1")); // 供应商 TCrmSupplier crmSupplier = crmSupplierService.getOne(Wrappers.lambdaQuery(TCrmSupplier.class) .eq(TCrmSupplier::getWarehouseId, warehouse.getId()) .last("LIMIT 1")); clinicSupplierId=crmSupplier.getId(); clinicSupplierId = crmSupplierService.list(Wrappers.lambdaQuery(TCrmSupplier.class) .eq(TCrmSupplier::getWarehouseId, warehouse.getId())).stream().map(TCrmSupplier::getId).collect(Collectors.toList()); } erpProcurementService.detailProcurementSend(clinicSupplierId, user, dto.getId(),dto.getLogisticsNumber()); return R.ok(); ruoyi-system/src/main/java/com/ruoyi/system/mapper/TErpProcurementMapper.java
@@ -28,6 +28,6 @@ List<TErpGoodsVO> inventoryNotEnoughList(@Param("user") SysUser user); List<TErpProcurementVo> pageListWarehouse(@Param("query") TErpProcurementQuery query, @Param("pageInfo") PageInfo<TErpProcurementVo> pageInfo, @Param("user") SysUser user, @Param("sTime") String sTime, @Param("eTime") String eTime, @Param("supplierClinicId") String supplierClinicId); List<TErpProcurementVo> pageListWarehouse(@Param("query") TErpProcurementQuery query, @Param("pageInfo") PageInfo<TErpProcurementVo> pageInfo, @Param("user") SysUser user, @Param("sTime") String sTime, @Param("eTime") String eTime, @Param("supplierClinicId") List<String> supplierClinicId); } ruoyi-system/src/main/java/com/ruoyi/system/service/TErpProcurementService.java
@@ -43,5 +43,5 @@ DetailProcurementVO detailProcurement(String clinicSupplierId, SysUser user, String id); void detailProcurementSend(String clinicSupplierId, SysUser user, String id,String logisticsNumber); void detailProcurementSend(List<String> clinicSupplierId, SysUser user, String id,String logisticsNumber); } ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TErpProcurementServiceImpl.java
@@ -171,19 +171,15 @@ Integer roleType = user.getRoleType(); String supplierClinicId = null; List<String> supplierClinicId = null; if (roleType == 6) { TCrmWarehouse warehouse = crmWarehouseMapper.selectOne(Wrappers.lambdaQuery(TCrmWarehouse.class) .eq(TCrmWarehouse::getUserId, user.getUserId()) .last("LIMIT 1")); // 供应商 TCrmSupplier crmSupplier = crmSupplierMapper.selectOne(Wrappers.lambdaQuery(TCrmSupplier.class) .eq(TCrmSupplier::getWarehouseId, warehouse.getId()) .last("LIMIT 1")); supplierClinicId = crmSupplier.getId(); supplierClinicId = crmSupplierMapper.selectList(Wrappers.lambdaQuery(TCrmSupplier.class) .eq(TCrmSupplier::getWarehouseId, warehouse.getId())).stream().map(TCrmSupplier::getId).collect(Collectors.toList()); String sTime = null; String eTime = null; if (query.getTime() != null && !query.getTime().isEmpty()) { @@ -496,11 +492,11 @@ @Override @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public void detailProcurementSend(String clinicSupplierId, SysUser user, String id,String logisticsNumber) { public void detailProcurementSend(List<String> clinicSupplierId, SysUser user, String id,String logisticsNumber) { // 查出这个采购的下级商品 List<TErpProcurementGoods> list = erpProcurementGoodsService.list(new QueryWrapper<TErpProcurementGoods>().eq("procurement_id", id)); List<TErpSupplierWarehousing> tErpSupplierWarehousings = erpSupplierWarehousingMapper.selectList(new LambdaQueryWrapper<TErpSupplierWarehousing>() .eq(TErpSupplierWarehousing::getSupplierId, clinicSupplierId).in(TErpSupplierWarehousing::getGoodsId, list.stream().map(TErpProcurementGoods::getGoodsId).collect(Collectors.toList())) .in(TErpSupplierWarehousing::getSupplierId, clinicSupplierId).in(TErpSupplierWarehousing::getGoodsId, list.stream().map(TErpProcurementGoods::getGoodsId).collect(Collectors.toList())) .orderByAsc(BaseModel::getCreateTime)); if(tErpSupplierWarehousings.isEmpty()){ @@ -544,7 +540,7 @@ if(count>=purchaseCount){ // 添加出库记录 TErpSupplierOutbound tErpSupplierOutbound= new TErpSupplierOutbound(); tErpSupplierOutbound.setSupplierId(clinicSupplierId); tErpSupplierOutbound.setSupplierId(tErpSupplierWarehousing.getSupplierId()); tErpSupplierOutbound.setWarehouseId(tErpSupplierWarehousing.getWarehouseId()); tErpSupplierOutbound.setOutboundType(7); //TODO 确定这个是采购价还是销售价格 @@ -567,7 +563,7 @@ purchaseCount = purchaseCount - count; // 添加出库记录 TErpSupplierOutbound tErpSupplierOutbound= new TErpSupplierOutbound(); tErpSupplierOutbound.setSupplierId(clinicSupplierId); tErpSupplierOutbound.setSupplierId(tErpSupplierWarehousing.getSupplierId()); tErpSupplierOutbound.setWarehouseId(tErpSupplierWarehousing.getWarehouseId()); tErpSupplierOutbound.setOutboundType(7); //TODO 确定这个是采购价还是销售价格 ruoyi-system/src/main/resources/mapper/system/TErpProcurementMapper.xml
@@ -90,7 +90,10 @@ t1.status from t_erp_procurement t1 left JOIN t_crm_clinic t2 on t1.clinic_id = t2.id where t1.disabled = 0 and t1.status in(3,4,5) and t1.supplier_id =#{supplierClinicId} where t1.disabled = 0 and t1.status in(3,4,5) and t1.supplier_id in <foreach collection="supplierClinicId" close=")" item="id" separator="," open="(" > #{id} </foreach> <if test="query.procurementCode != null and query.procurementCode != ''"> and t1.procurement_code = #{query.procurementCode} </if>