From 96084b10aa191db44d706cb8aa79e2cf0ff126de Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Wed, 22 Jan 2025 17:10:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=BA=E5=BA=93=EF=BC=88=E5=90=AB=E6=AC=A0?= =?UTF-8?q?=E6=AC=BE=E5=87=BA=E5=BA=93=EF=BC=89=E6=97=B6=E6=98=AF=E5=90=A6?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E5=88=A4=E6=96=AD=E4=B8=8A=E8=A3=85=E3=80=81?= =?UTF-8?q?=E6=8C=82=E8=BD=A6=E6=98=AF=E5=90=A6=E5=85=A5=E5=BA=93=EF=BC=8C?= =?UTF-8?q?=E5=88=86=E4=B8=BA=E5=85=A8=E6=AC=BE=E5=92=8C=E8=B4=B7=E6=AC=BE?= =?UTF-8?q?=E4=B8=A4=E7=A7=8D=E6=83=85=E5=86=B5=EF=BC=8C=E5=85=A8=E6=AC=BE?= =?UTF-8?q?=E7=9A=84=E4=BB=8E=E9=94=80=E5=94=AE=E8=AE=A2=E5=8D=95=E4=B8=AD?= =?UTF-8?q?=E5=88=A4=E6=96=AD=EF=BC=8C=E5=8F=AA=E5=88=A4=E6=96=AD=E9=94=80?= =?UTF-8?q?=E5=94=AE=E8=AE=A2=E5=8D=95=E4=B8=8A=E8=A3=85=E8=A1=A8=E4=B8=AD?= =?UTF-8?q?=E4=B8=BA=E5=85=AC=E5=8F=B8=E9=87=87=E8=B4=AD=E7=9A=84=E9=99=90?= =?UTF-8?q?=E5=88=B6=EF=BC=9B=E8=B4=B7=E6=AC=BE=E7=9A=84=E4=BB=8E=E5=AE=B6?= =?UTF-8?q?=E8=AE=BF=E5=90=88=E5=90=8C=E4=BF=A1=E6=81=AF=E4=B8=AD=E5=88=A4?= =?UTF-8?q?=E6=96=AD=EF=BC=8C=E4=B8=8A=E8=A3=85=E3=80=81=E6=8C=82=E8=BD=A6?= =?UTF-8?q?=E5=9D=87=E5=88=A4=E6=96=AD=EF=BC=8C=E6=98=AF=E5=90=A6=E5=85=AC?= =?UTF-8?q?=E5=8F=B8=E9=87=87=E8=B4=AD=E4=B8=BA=E6=98=AF=EF=BC=880?= =?UTF-8?q?=EF=BC=89=E7=9A=84=E9=99=90=E5=88=B6=E3=80=82=20=E6=BB=A1?= =?UTF-8?q?=E8=B6=B3=E9=99=90=E5=88=B6=E6=9D=A1=E4=BB=B6=E7=9A=84=EF=BC=8C?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E5=85=88=E4=B8=8A=E8=A3=85=E3=80=81=E6=8C=82?= =?UTF-8?q?=E8=BD=A6=E5=85=A5=E5=BA=93=E7=BB=91=E5=AE=9A=E8=BD=A6=E8=BE=86?= =?UTF-8?q?=E5=90=8E=E6=96=B9=E5=8F=AF=E6=8F=90=E4=BA=A4=E5=87=BA=E5=BA=93?= =?UTF-8?q?=E7=94=B3=E8=AF=B7=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusDeliveredApplyMapper.java | 3 + .../BusDeliveredApplyMapper.xml | 7 + .../BusDeliveredApplyService.java | 218 ++++++++++++------ .../BusSalesOrderMakeupMapper.java | 1 + .../BusSalesOrderMakeupMapper.xml | 7 + .../BusSalesOrderMakeupService.java | 4 + 6 files changed, 164 insertions(+), 76 deletions(-) diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java index 95a529ed29..30b06790a8 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java @@ -38,6 +38,7 @@ import com.yxt.anrui.buscenter.api.busdeliveredapply.AppDeliveredApplyPageVo; import com.yxt.anrui.buscenter.api.busdeliveredapply.BusDeliveredApply; import com.yxt.anrui.buscenter.api.busdeliveredapply.BusDeliveredApplyVo; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; +import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatecustomer.LoanHomevisitInvestigateCustomer; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -135,4 +136,6 @@ public interface BusDeliveredApplyMapper extends BaseMapper { BusSalesOrderVehicle selectVinNoByVehicleSid(@Param("vinSid") String vinSid, @Param("contractNo") String contractId); List selectInstall(String linkNo); + + LoanHomevisitInvestigateCustomer getHomeVisitCustomerInfo(@Param("sid") String sid,@Param("loanSid") String loanSid); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml index e416be9274..11b51fe276 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml @@ -233,4 +233,11 @@ + + \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java index 1d286f0995..7c40c6a223 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java @@ -149,6 +149,7 @@ import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamine; import com.yxt.anrui.riskcenter.api.loanfileexamine.LoanFileexamineFeign; import com.yxt.anrui.riskcenter.api.loanhomevisitfileexamine.LoanHomevisitFileexamineFeign; import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigate.LoanHomevisitInvestigateFeign; +import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatecustomer.LoanHomevisitInvestigateCustomer; import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReviewDetailsVo; import com.yxt.anrui.riskcenter.api.loannoguaranteecreditreview.LoanNoGuaranteeCreditReviewFeign; import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign; @@ -3431,52 +3432,84 @@ public class BusDeliveredApplyService extends MybatisBaseService trailersLists = busSalesOrderTrailerService.selectTrailerByContractNo(dto.getContractId()); - trailersLists = trailersLists.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 - // 如果列表不为空,使用流式操作计算总挂车数量 - if(!trailersLists.isEmpty()){ - int totalTrailerCount = trailersLists.stream() - .mapToInt(BusSalesOrderTrailer::getTrailerCount) // 提取数量 - .sum(); // 累加所有数量 + if ("2".equals(busSalesOrder.getPayTypeKey())) {//贷款 + //先查询该订单下是否有挂车,如果有的话,再根据该订单及车辆查询挂车是否都已入库,若没有全部入库,则提示 + boolean isHave = false; + List trailersLists = busSalesOrderTrailerService.selectTrailerByContractNo(dto.getContractId()); + trailersLists = trailersLists.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + // 如果列表不为空,使用流式操作计算总挂车数量 + if(!trailersLists.isEmpty()){ + int totalTrailerCount = trailersLists.stream() + .mapToInt(BusSalesOrderTrailer::getTrailerCount) // 提取数量 + .sum(); // 累加所有数量 - if(!carList.isEmpty()){ - for (AppCarListVo car : carList) { - //根据车辆sid 查询挂车的数量 - List trList = baseMapper.selectTralier(car.getVinSid()); - trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 - if(totalTrailerCount != trList.size()){ - isHave = true; - break; + if(!carList.isEmpty()){ + for (AppCarListVo car : carList) { + //根据车辆sid 查询挂车的数量 + List trList = baseMapper.selectTralier(car.getVinSid()); + trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(totalTrailerCount != trList.size()){ + isHave = true; + break; + } } } } - } - if(isHave){ - return rb.setMsg("挂车入库绑定车辆后才可以提交出库申请"); - } - boolean issHave = false; - List makeUpsList = busSalesOrderMakeupService.selectMakeUpByContractNo(dto.getContractId()); - makeUpsList = makeUpsList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 - if(!makeUpsList.isEmpty()){ - //查询上装入库中是否有该主车关联的上装 - if(!carList.isEmpty()){ - for (AppCarListVo car : carList) { - //根据车辆sid和合同号查询主车车架号 - BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectVinNoByVehicleSid(car.getVinSid(),dto.getContractId()); - List trList = baseMapper.selectInstall(busSalesOrderVehicle.getLinkNo()); - trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 - if(trList.isEmpty()){ - issHave = true; - break; + if(isHave){ + LoanHomevisitInvestigateCustomer loanHomevisitInvestigateCustomer = baseMapper.getHomeVisitCustomerInfo(busSalesOrder.getSid(),dto.getLoanSid()); + if("0".equals(loanHomevisitInvestigateCustomer.getIsCompBuy())){//是公司采购 + return rb.setMsg("挂车入库绑定车辆后才可以提交出库申请"); + } + } + boolean issHave = false; + List makeUpsList = busSalesOrderMakeupService.selectMakeUpByContractNo2(dto.getContractId()); + makeUpsList = makeUpsList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(!makeUpsList.isEmpty()){ + //查询上装入库中是否有该主车关联的上装 + if(!carList.isEmpty()){ + for (AppCarListVo car : carList) { + //根据车辆sid和合同号查询主车车架号 + BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectVinNoByVehicleSid(car.getVinSid(),dto.getContractId()); + List trList = baseMapper.selectInstall(busSalesOrderVehicle.getLinkNo()); + trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(trList.isEmpty()){ + issHave = true; + break; + } } } } + if(issHave){ + LoanHomevisitInvestigateCustomer loanHomevisitInvestigateCustomer = baseMapper.getHomeVisitCustomerInfo(busSalesOrder.getSid(),dto.getLoanSid()); + if("0".equals(loanHomevisitInvestigateCustomer.getIsCompBuy())){//是公司采购 + return rb.setMsg("上装入库绑定车辆后才可以提交出库申请"); + } + + } + }else{ + boolean issHave = false; + List makeUpsList = busSalesOrderMakeupService.selectMakeUpByContractNo(dto.getContractId()); + makeUpsList = makeUpsList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(!makeUpsList.isEmpty()){ + //查询上装入库中是否有该主车关联的上装 + if(!carList.isEmpty()){ + for (AppCarListVo car : carList) { + //根据车辆sid和合同号查询主车车架号 + BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectVinNoByVehicleSid(car.getVinSid(),dto.getContractId()); + List trList = baseMapper.selectInstall(busSalesOrderVehicle.getLinkNo()); + trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(trList.isEmpty()){ + issHave = true; + break; + } + } + } + } + if(issHave){ + return rb.setMsg("上装入库绑定车辆后才可以提交出库申请"); + } } - if(issHave){ - return rb.setMsg("上装入库绑定车辆后才可以提交出库申请"); - } + //================= BusDeliveredApply busDeliveredApply = fetchBySid(dto.getSid()); int r = submitAppBusinessData(dto, busDeliveredApply); @@ -4304,6 +4337,7 @@ public class BusDeliveredApplyService extends MybatisBaseService carList = dto.getCarList(); if (!carList.isEmpty()) { @@ -4389,52 +4423,84 @@ public class BusDeliveredApplyService extends MybatisBaseService trailersLists = busSalesOrderTrailerService.selectTrailerByContractNo(dto.getContractId()); - trailersLists = trailersLists.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 - // 如果列表不为空,使用流式操作计算总挂车数量 - if(!trailersLists.isEmpty()){ - int totalTrailerCount = trailersLists.stream() - .mapToInt(BusSalesOrderTrailer::getTrailerCount) // 提取数量 - .sum(); // 累加所有数量 + if ("2".equals(busSalesOrder.getPayTypeKey())) {//贷款 + //先查询该订单下是否有挂车,如果有的话,再根据该订单及车辆查询挂车是否都已入库,若没有全部入库,则提示 + boolean isHave = false; + List trailersLists = busSalesOrderTrailerService.selectTrailerByContractNo(dto.getContractId()); + trailersLists = trailersLists.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + // 如果列表不为空,使用流式操作计算总挂车数量 + if(!trailersLists.isEmpty()){ + int totalTrailerCount = trailersLists.stream() + .mapToInt(BusSalesOrderTrailer::getTrailerCount) // 提取数量 + .sum(); // 累加所有数量 - if(!carList.isEmpty()){ - for (AppCarListVo car : carList) { - //根据车辆sid 查询挂车的数量 - List trList = baseMapper.selectTralier(car.getVinSid()); - trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 - if(totalTrailerCount != trList.size()){ - isHave = true; - break; + if(!carList.isEmpty()){ + for (AppCarListVo car : carList) { + //根据车辆sid 查询挂车的数量 + List trList = baseMapper.selectTralier(car.getVinSid()); + trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(totalTrailerCount != trList.size()){ + isHave = true; + break; + } } } } - } - if(isHave){ - return rb.setMsg("挂车入库绑定车辆后才可以提交出库申请"); - } - boolean issHave = false; - List makeUpsList = busSalesOrderMakeupService.selectMakeUpByContractNo(dto.getContractId()); - makeUpsList = makeUpsList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 - if(!makeUpsList.isEmpty()){ - //查询上装入库中是否有该主车关联的上装 - if(!carList.isEmpty()){ - for (AppCarListVo car : carList) { - //根据车辆sid和合同号查询主车车架号 - BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectVinNoByVehicleSid(car.getVinSid(),dto.getContractId()); - List trList = baseMapper.selectInstall(busSalesOrderVehicle.getLinkNo()); - trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 - if(trList.isEmpty()){ - issHave = true; - break; + if(isHave){ + LoanHomevisitInvestigateCustomer loanHomevisitInvestigateCustomer = baseMapper.getHomeVisitCustomerInfo(busSalesOrder.getSid(),dto.getLoanSid()); + if("0".equals(loanHomevisitInvestigateCustomer.getIsCompBuy())){//是公司采购 + return rb.setMsg("挂车入库绑定车辆后才可以提交出库申请"); + } + } + boolean issHave = false; + List makeUpsList = busSalesOrderMakeupService.selectMakeUpByContractNo2(dto.getContractId()); + makeUpsList = makeUpsList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(!makeUpsList.isEmpty()){ + //查询上装入库中是否有该主车关联的上装 + if(!carList.isEmpty()){ + for (AppCarListVo car : carList) { + //根据车辆sid和合同号查询主车车架号 + BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectVinNoByVehicleSid(car.getVinSid(),dto.getContractId()); + List trList = baseMapper.selectInstall(busSalesOrderVehicle.getLinkNo()); + trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(trList.isEmpty()){ + issHave = true; + break; + } } } } + if(issHave){ + LoanHomevisitInvestigateCustomer loanHomevisitInvestigateCustomer = baseMapper.getHomeVisitCustomerInfo(busSalesOrder.getSid(),dto.getLoanSid()); + if("0".equals(loanHomevisitInvestigateCustomer.getIsCompBuy())){//是公司采购 + return rb.setMsg("上装入库绑定车辆后才可以提交出库申请"); + } + + } + }else{ + boolean issHave = false; + List makeUpsList = busSalesOrderMakeupService.selectMakeUpByContractNo(dto.getContractId()); + makeUpsList = makeUpsList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(!makeUpsList.isEmpty()){ + //查询上装入库中是否有该主车关联的上装 + if(!carList.isEmpty()){ + for (AppCarListVo car : carList) { + //根据车辆sid和合同号查询主车车架号 + BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectVinNoByVehicleSid(car.getVinSid(),dto.getContractId()); + List trList = baseMapper.selectInstall(busSalesOrderVehicle.getLinkNo()); + trList = trList.stream().filter(Objects::nonNull).collect(Collectors.toList()); // 去除null元素 + if(trList.isEmpty()){ + issHave = true; + break; + } + } + } + } + if(issHave){ + return rb.setMsg("上装入库绑定车辆后才可以提交出库申请"); + } } - if(issHave){ - return rb.setMsg("上装入库绑定车辆后才可以提交出库申请"); - } + //================= BusDeliveredApply busDeliveredApply = fetchBySid(dto.getSid()); int r = submitAppBusinessData2(dto, busDeliveredApply); diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.java index 0cdd179136..847d837417 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.java @@ -99,4 +99,5 @@ public interface BusSalesOrderMakeupMapper extends BaseMapper selectTopByOrderSid(@Param("orderSid") String orderSid); List selectMakeUpByContractNo(String contractId); + List selectMakeUpByContractNo2(String contractId); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.xml index 8b4ae61752..10de2a04c1 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.xml @@ -116,4 +116,11 @@ left join bus_sales_order bo on bo.sid = bm.salesOrderSid where bo.contractNo = #{contractId} and bm.buyTypeKey = '01' + + \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupService.java index eff8c1e308..903edbb798 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupService.java @@ -285,4 +285,8 @@ public class BusSalesOrderMakeupService extends MybatisBaseService selectMakeUpByContractNo(String contractId) { return baseMapper.selectMakeUpByContractNo(contractId); } + + public List selectMakeUpByContractNo2(String contractId) { + return baseMapper.selectMakeUpByContractNo2(contractId); + } } \ No newline at end of file