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