Browse Source

开票网关判断修改

zhanglei
God 1 year ago
parent
commit
e97d2196c3
  1. 217
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java

217
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java

@ -466,19 +466,19 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BusSalesOrder busSalesOrder = busSalesOrderFeign.fetchBySid(record.getBusSalesOrderSid()).getData();
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetails(record.getBusSalesOrderSid()).getData();
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.selectByNoAndVinSid(record.getContractId(), record.getVinSid()).getData();
if ("2".equals(record.getSaleTypeKey())){
if (StringUtils.isBlank(solutionsDetailsVo.getTypeKey())){//担保
if ("2".equals(record.getSaleTypeKey())) {
if (StringUtils.isBlank(solutionsDetailsVo.getTypeKey())) {//担保
String jfkcSid = loanHomevisitInvestigateFeign.selSaleOrderSidAndBorrSid(record.getBusSalesOrderSid(), busSalesOrderVehicle.getBorrowerSid()).getData();
LoanHomevisitInvestigateCustomerDetailsVo loanHomevisitInvestigateCustomerDetailsVo = loanHomevisitInvestigateCustomerFeign.selectByMainSid(jfkcSid).getData();
BusSalesOrderBorrowerDetailsVo busSalesOrderBorrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(loanHomevisitInvestigateCustomerDetailsVo.getBorrowerSid()).getData();
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(busSalesOrderBorrowerDetailsVo.getCustomSid()).getData();
record.setInvoiceTypeKey(busSalesOrder.getBillingTypeKey());
record.setInvoiceType(busSalesOrder.getBillingType());
if ("1".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())){
if ("1".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())) {
record.setInvoiceName(loanHomevisitInvestigateCustomerDetailsVo.getBorrowerName());
record.setOpenTickSid(busSalesOrderBorrowerDetailsVo.getCustomSid());
record.setInvoiceInfo(crmCustomerTempVo.getIDNumber());
}else if ("2".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())){
} else if ("2".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())) {
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.selectInvoingByTaxpayerNo(loanHomevisitInvestigateCustomerDetailsVo.getAccCompRegistNum()).getData();
record.setInvoiceName(loanHomevisitInvestigateCustomerDetailsVo.getAccCompName());
record.setOpenTickSid(finCompanyInvoicingDetailsVo.getSid());
@ -500,17 +500,17 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
}
record.setInvoiceInfo(openTickRemarks);
}
}else if ("01".equals(solutionsDetailsVo.getTypeKey())){//非担保
} else if ("01".equals(solutionsDetailsVo.getTypeKey())) {//非担保
LoanNoGuaranteeCreditReviewDetailsVo loanNoGuaranteeCreditReviewDetailsVo = loanNoGuaranteeCreditReviewFeign.selByBorrSid(busSalesOrderVehicle.getBorrowerSid()).getData();
BusSalesOrderBorrowerDetailsVo busSalesOrderBorrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(busSalesOrderVehicle.getBorrowerSid()).getData();
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(busSalesOrderBorrowerDetailsVo.getCustomSid()).getData();
record.setInvoiceTypeKey(busSalesOrder.getBillingTypeKey());
record.setInvoiceType(busSalesOrder.getBillingType());
if ("1".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())){
if ("1".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())) {
record.setInvoiceName(busSalesOrderBorrowerDetailsVo.getBorrowerName());
record.setOpenTickSid(busSalesOrderBorrowerDetailsVo.getCustomSid());
record.setInvoiceInfo(crmCustomerTempVo.getIDNumber());
}else if ("2".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())){
} else if ("2".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())) {
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.selectInvoingByName(loanNoGuaranteeCreditReviewDetailsVo.getAffiliatedCompany()).getData();
record.setInvoiceName(loanNoGuaranteeCreditReviewDetailsVo.getAffiliatedCompany());
record.setOpenTickSid(finCompanyInvoicingDetailsVo.getSid());
@ -573,10 +573,10 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
List<FinBillTrailerDto> finBillTrailers = dto.getFinBillTrailers();
List<FinBillVehicleDto> finBillVehicles = dto.getFinBillVehicles();
for (FinBillVehicleDto finBillVehicle : finBillVehicles) {
if ("02".equals(finBillVehicle.getBillTypeKey())){
if ("02".equals(finBillVehicle.getBillTypeKey())) {
String openTickSid = finBillVehicle.getOpenTickSid();
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.fetchDetailsVoBySid(openTickSid);
if (StringUtils.isBlank(finCompanyInvoicingDetailsVo.getSid())){
if (StringUtils.isBlank(finCompanyInvoicingDetailsVo.getSid())) {
return rb.setMsg("个人不能开具增值税专用发票");
}
}
@ -938,7 +938,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
}
}
if("1".equals(busSalesOrder.getPayTypeKey())){
if ("1".equals(busSalesOrder.getPayTypeKey())) {
if (loanSolutions != null) {
if (!dto.getOneBillMoney().equals(loanSolutions.getMainVehicleAmount())) {
String remarks = "";
@ -1006,7 +1006,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
filesList.add(file);
}
}
if("1".equals(busSalesOrder.getPayTypeKey())){
if ("1".equals(busSalesOrder.getPayTypeKey())) {
Map<String, Object> finalCheckMap = checkMap;
if (!finalCheckMap.isEmpty()) {
Future<String> future3 = pool.submit(() -> {
@ -1037,7 +1037,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
fileUrl = typeName;
}
}
if(StringUtils.isNotBlank(fileUrl)){
if (StringUtils.isNotBlank(fileUrl)) {
FinBillApplication finBillApplication = fetchBySid(dto.getSid());
finBillApplication.setFileUrl(fileUrl);
baseMapper.updateById(finBillApplication);
@ -1093,7 +1093,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
sameOpenTickSidList.forEach(v -> {
//车架号
BaseVehicle baseVehicle = baseMapper.selectVinNoByVinSid(v.getVehSid());
if(baseVehicle != null){
if (baseVehicle != null) {
finalBillFileVo.setVinNo(baseVehicle.getVinNo());
}
List<FinBillTrailerDto> finBillTrailers = dto.getFinBillTrailers();
@ -1168,7 +1168,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
}
}
if("1".equals(busSalesOrder.getPayTypeKey())){
if ("1".equals(busSalesOrder.getPayTypeKey())) {
if (loanSolutions != null) {
if (busSalesOrderPrice.getSingleFinalPrice().compareTo(new BigDecimal(dto.getOneBillMoney())) != 0) {
String remarks = "";
@ -1236,7 +1236,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
filesList.add(file);
}
}
if("1".equals(busSalesOrder.getPayTypeKey())){
if ("1".equals(busSalesOrder.getPayTypeKey())) {
Map<String, Object> finalCheckMap = checkMap;
if (!finalCheckMap.isEmpty()) {
Future<String> future3 = pool.submit(() -> {
@ -1266,12 +1266,12 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
System.out.println("-========" + docPdfComponent.getUploadTemplateUrl() + typeName);
fileUrl = typeName;
}
}else{
if(StringUtils.isNotBlank(loanSolutions.getTypeKey())){//非担保、生成开票申请书和车辆登记合同
} else {
if (StringUtils.isNotBlank(loanSolutions.getTypeKey())) {//非担保、生成开票申请书和车辆登记合同
List<FinBillVehicleDto> finBillVehicles = dto.getFinBillVehicles();
for (FinBillVehicleDto v : finBillVehicles) {
BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.selectByBorrowSid(dto.getContractNo(), v.getVehSid());
if(StringUtils.isNotBlank(busSalesOrderVehicle.getBorrowerSid())){
if (StringUtils.isNotBlank(busSalesOrderVehicle.getBorrowerSid())) {
LoanNoGuaranteeCreditReviewDetailsVo loanNoGuaranteeCreditReviewDetailsVo = loanNoGuaranteeCreditReviewFeign.selByBorrSid(busSalesOrderVehicle.getBorrowerSid()).getData();
if ("2".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())) {//登记在挂靠公司
v.setOpenTickSid(loanNoGuaranteeCreditReviewDetailsVo.getAffiliatedCompanySid());
@ -1315,7 +1315,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
sameOpenTickSidList.forEach(v -> {
//车架号
BaseVehicle baseVehicle = baseMapper.selectVinNoByVinSid(v.getVehSid());
if(baseVehicle != null){
if (baseVehicle != null) {
finalBillFileVo.setVinNo(baseVehicle.getVinNo());
}
List<FinBillTrailerDto> finBillTrailers = dto.getFinBillTrailers();
@ -1525,7 +1525,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BusSalesOrder busSalesOrder = busSalesOrderFeign.selectOrderByContractNo(contractNo).getData();
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetails(busSalesOrder.getSid()).getData();
BigDecimal oneBillMoney;
if ("2".equals(entity.getSaleTypeKey())){
if ("2".equals(entity.getSaleTypeKey())) {
oneBillMoney = new BigDecimal(solutionsDetailsVo.getMainVehicleAmount());
vo.setOneBillMoney(oneBillMoney.toString());
vo.setTotalBillMoney(oneBillMoney.multiply(new BigDecimal(finBillVehicleVos.size())).toString());
@ -1533,7 +1533,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
vo.setOpenTickTypeValue(busSalesOrder.getBillingType());
vo.setNoEditInvoiceTypeAndName(true);
vo.setNoEditInvoiceMoney(true);
}else {
} else {
oneBillMoney = entity.getOneBillMoney();
if (oneBillMoney != null) {
vo.setTotalBillMoney(entity.getOneBillMoney().multiply(new BigDecimal(finBillVehicleVos.size())).toString());
@ -1550,19 +1550,19 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
finBillVehicleVo.setCertificatePhoto(clhgeImages);
}
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.selectByNoAndVinSid(contractNo, finBillVehicleVo.getVehSid()).getData();
if ("2".equals(entity.getSaleTypeKey())){
if ("01".equals(busSalesOrder.getFinancePlan())){//担保
if ("2".equals(entity.getSaleTypeKey())) {
if ("01".equals(busSalesOrder.getFinancePlan())) {//担保
String jfkcSid = loanHomevisitInvestigateFeign.selSaleOrderSidAndBorrSid(busSalesOrder.getSid(), busSalesOrderVehicle.getBorrowerSid()).getData();
LoanHomevisitInvestigateCustomerDetailsVo loanHomevisitInvestigateCustomerDetailsVo = loanHomevisitInvestigateCustomerFeign.selectByMainSid(jfkcSid).getData();
BusSalesOrderBorrowerDetailsVo busSalesOrderBorrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(busSalesOrderVehicle.getBorrowerSid()).getData();
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(busSalesOrderBorrowerDetailsVo.getCustomSid()).getData();
finBillVehicleVo.setBillTypeKey(busSalesOrder.getBillingTypeKey());
finBillVehicleVo.setBillTypeValue(busSalesOrder.getBillingType());
if ("1".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())){
if ("1".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())) {
finBillVehicleVo.setOpenTickName(loanHomevisitInvestigateCustomerDetailsVo.getBorrowerName());
finBillVehicleVo.setOpenTickSid(busSalesOrderBorrowerDetailsVo.getCustomSid());
finBillVehicleVo.setInvoiceInfo(crmCustomerTempVo.getIDNumber());
}else if ("2".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())){
} else if ("2".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())) {
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.selectInvoingByTaxpayerNo(loanHomevisitInvestigateCustomerDetailsVo.getAccCompRegistNum()).getData();
finBillVehicleVo.setOpenTickName(loanHomevisitInvestigateCustomerDetailsVo.getAccCompName());
finBillVehicleVo.setOpenTickSid(finCompanyInvoicingDetailsVo.getSid());
@ -1584,17 +1584,17 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
}
finBillVehicleVo.setInvoiceInfo(openTickRemarks);
}
}else if ("02".equals(busSalesOrder.getFinancePlan())){//非担保
} else if ("02".equals(busSalesOrder.getFinancePlan())) {//非担保
LoanNoGuaranteeCreditReviewDetailsVo loanNoGuaranteeCreditReviewDetailsVo = loanNoGuaranteeCreditReviewFeign.selByBorrSid(busSalesOrderVehicle.getBorrowerSid()).getData();
BusSalesOrderBorrowerDetailsVo busSalesOrderBorrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(busSalesOrderVehicle.getBorrowerSid()).getData();
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(busSalesOrderBorrowerDetailsVo.getCustomSid()).getData();
finBillVehicleVo.setBillTypeKey(busSalesOrder.getBillingTypeKey());
finBillVehicleVo.setBillTypeValue(busSalesOrder.getBillingType());
if ("1".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())){
if ("1".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())) {
finBillVehicleVo.setOpenTickName(loanNoGuaranteeCreditReviewDetailsVo.getBorrowerName());
finBillVehicleVo.setOpenTickSid(busSalesOrderBorrowerDetailsVo.getCustomSid());
finBillVehicleVo.setInvoiceInfo(crmCustomerTempVo.getIDNumber());
}else if ("2".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())){
} else if ("2".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())) {
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.selectInvoingByName(loanNoGuaranteeCreditReviewDetailsVo.getAffiliatedCompany()).getData();
finBillVehicleVo.setOpenTickName(loanNoGuaranteeCreditReviewDetailsVo.getAffiliatedCompany());
finBillVehicleVo.setOpenTickSid(finCompanyInvoicingDetailsVo.getSid());
@ -1731,8 +1731,8 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
}
//生成的合同下载地址
String allDownloadUrl = "";
if(StringUtils.isNotBlank(entity.getFileUrl())){
allDownloadUrl = docPdfComponent.getPrefixTemplateUrl()+entity.getFileUrl();
if (StringUtils.isNotBlank(entity.getFileUrl())) {
allDownloadUrl = docPdfComponent.getPrefixTemplateUrl() + entity.getFileUrl();
vo.setAllDownloadUrl(allDownloadUrl);
}
int contractBtns = 0;
@ -1743,18 +1743,18 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BusSalesOrderPrice busSalesOrderPrice = baseMapper.selectByPrices(busSalesOrder.getSid());
if ("1".equals(busSalesOrder.getPayTypeKey())) {//全款
contractBtns = 1;
}else{
if(StringUtils.isNotBlank(loanSolutions.getTypeKey())){
} else {
if (StringUtils.isNotBlank(loanSolutions.getTypeKey())) {
contractBtns = 2;
}
}
vo.setContractBtns(contractBtns);
//销售订单开票sid
if(StringUtils.isNotBlank(busSalesOrder.getAffiliatedCompanySid())){
if (StringUtils.isNotBlank(busSalesOrder.getAffiliatedCompanySid())) {
vo.setOrderInvoiceSid(busSalesOrder.getAffiliatedCompanySid());
}
if(busSalesOrderPrice != null){
if(busSalesOrderPrice.getSingleFinalPrice() != null){
if (busSalesOrderPrice != null) {
if (busSalesOrderPrice.getSingleFinalPrice() != null) {
vo.setOrderInvoicePrice(busSalesOrderPrice.getSingleFinalPrice().toString());
}
}
@ -2385,8 +2385,11 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
variables.put("isdbdk", "2".equals(busSalesOrder.getPayTypeKey()));
//判断是否是高低开,若是,则isAdj网关参数为true=============添加
BusSalesOrderPrice data = busSalesOrderFeign.selectByContractNo(contractNo).getData();
if (data != null) {
variables.put("isAdj", !data.getSingleFinalPrice().equals(finBillApplication.getOneBillMoney()));
int i = data.getSingleFinalPrice().compareTo(finBillApplication.getOneBillMoney());
if (i == 0) {
variables.put("isAdj", false);
} else {
variables.put("isAdj", true);
}
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid);
@ -2902,10 +2905,10 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
List<FinBillTrailerDto> finBillTrailers = dto.getFinBillTrailers();
List<FinBillVehicleDto> finBillVehicles = dto.getFinBillVehicles();
for (FinBillVehicleDto finBillVehicle : finBillVehicles) {
if ("02".equals(finBillVehicle.getBillTypeKey())){
if ("02".equals(finBillVehicle.getBillTypeKey())) {
String openTickSid = finBillVehicle.getOpenTickSid();
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.fetchDetailsVoBySid(openTickSid);
if (StringUtils.isBlank(finCompanyInvoicingDetailsVo.getSid())){
if (StringUtils.isBlank(finCompanyInvoicingDetailsVo.getSid())) {
return rb.setMsg("个人不能开具增值税专用发票");
}
}
@ -3231,10 +3234,10 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
List<FinBillTrailerDto> finBillTrailers = dto.getFinBillTrailers();
List<FinBillVehicleDto> finBillVehicles = dto.getFinBillVehicles();
for (FinBillVehicleDto finBillVehicle : finBillVehicles) {
if ("02".equals(finBillVehicle.getBillTypeKey())){
if ("02".equals(finBillVehicle.getBillTypeKey())) {
String openTickSid = finBillVehicle.getOpenTickSid();
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.fetchDetailsVoBySid(openTickSid);
if (StringUtils.isBlank(finCompanyInvoicingDetailsVo.getSid())){
if (StringUtils.isBlank(finCompanyInvoicingDetailsVo.getSid())) {
return rb.setMsg("个人不能开具增值税专用发票");
}
}
@ -4673,18 +4676,18 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BusSalesOrderPrice busSalesOrderPrice = baseMapper.selectByPrices(busSalesOrder.getSid());
if ("1".equals(busSalesOrder.getPayTypeKey())) {//全款
contractBtns = 1;
}else{
if(StringUtils.isNotBlank(loanSolutions.getTypeKey())){
} else {
if (StringUtils.isNotBlank(loanSolutions.getTypeKey())) {
contractBtns = 2;
}
}
finBillApplicationDetailsVo.setContractBtns(contractBtns);
//销售订单开票sid
if(StringUtils.isNotBlank(busSalesOrder.getAffiliatedCompanySid())){
if (StringUtils.isNotBlank(busSalesOrder.getAffiliatedCompanySid())) {
finBillApplicationDetailsVo.setOrderInvoiceSid(busSalesOrder.getAffiliatedCompanySid());
}
if(busSalesOrderPrice != null){
if(busSalesOrderPrice.getSingleFinalPrice() != null){
if (busSalesOrderPrice != null) {
if (busSalesOrderPrice.getSingleFinalPrice() != null) {
finBillApplicationDetailsVo.setOrderInvoicePrice(busSalesOrderPrice.getSingleFinalPrice().toString());
}
}
@ -5740,20 +5743,20 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetails(busSalesOrder.getSid()).getData();
billApplicationIInfoVoss = baseMapper.selectByContractNos(contractId);
BigDecimal oneBillMoney;
if ("2".equals(busSalesOrder.getPayTypeKey())){
if ("2".equals(busSalesOrder.getPayTypeKey())) {
oneBillMoney = new BigDecimal(solutionsDetailsVo.getMainVehicleAmount());
billApplicationIInfoVoss.setInvoiceMoney(oneBillMoney.toString());
billApplicationIInfoVoss.setInvoiceTotal(oneBillMoney.multiply(new BigDecimal(vins.size())).toString());
billApplicationIInfoVoss.setNoEditInvoiceTypeAndName(true);
billApplicationIInfoVoss.setNoEditInvoiceMoney(true);
}else {
} else {
oneBillMoney = busSalesOrder.getOneBillMoney();
if (oneBillMoney != null) {
billApplicationIInfoVoss.setInvoiceMoney(oneBillMoney.toString());
billApplicationIInfoVoss.setInvoiceTotal(oneBillMoney.multiply(new BigDecimal(vins.size())).toString());
billApplicationIInfoVoss.setNoEditInvoiceTypeAndName(false);
billApplicationIInfoVoss.setNoEditInvoiceMoney(true);
}else {
} else {
billApplicationIInfoVoss.setNoEditInvoiceTypeAndName(false);
billApplicationIInfoVoss.setNoEditInvoiceMoney(false);
}
@ -5794,19 +5797,19 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
}
//贷款主车初始化开票名称、开票类型
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.selectByNoAndVinSid(contractId, vins.get(i)).getData();
if ("2".equals(busSalesOrder.getPayTypeKey())){
if (StringUtils.isBlank(solutionsDetailsVo.getTypeKey())){//担保
if ("2".equals(busSalesOrder.getPayTypeKey())) {
if (StringUtils.isBlank(solutionsDetailsVo.getTypeKey())) {//担保
String jfkcSid = loanHomevisitInvestigateFeign.selSaleOrderSidAndBorrSid(busSalesOrder.getSid(), busSalesOrderVehicle.getBorrowerSid()).getData();
LoanHomevisitInvestigateCustomerDetailsVo loanHomevisitInvestigateCustomerDetailsVo = loanHomevisitInvestigateCustomerFeign.selectByMainSid(jfkcSid).getData();
BusSalesOrderBorrowerDetailsVo busSalesOrderBorrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(busSalesOrderVehicle.getBorrowerSid()).getData();
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(busSalesOrderBorrowerDetailsVo.getCustomSid()).getData();
vinListVos1.setInvoiceTypeKey(busSalesOrder.getBillingTypeKey());
vinListVos1.setInvoiceType(busSalesOrder.getBillingType());
if ("1".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())){
if ("1".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())) {
vinListVos1.setInvoiceName(loanHomevisitInvestigateCustomerDetailsVo.getBorrowerName());
vinListVos1.setOpenTickSid(busSalesOrderBorrowerDetailsVo.getCustomSid());
vinListVos1.setInvoiceInfo(crmCustomerTempVo.getIDNumber());
}else if ("2".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())){
} else if ("2".equals(loanHomevisitInvestigateCustomerDetailsVo.getVehRegis())) {
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.selectInvoingByTaxpayerNo(loanHomevisitInvestigateCustomerDetailsVo.getAccCompRegistNum()).getData();
vinListVos1.setInvoiceName(loanHomevisitInvestigateCustomerDetailsVo.getAccCompName());
vinListVos1.setOpenTickSid(finCompanyInvoicingDetailsVo.getSid());
@ -5828,17 +5831,17 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
}
vinListVos1.setInvoiceInfo(openTickRemarks);
}
}else if ("01".equals(solutionsDetailsVo.getTypeKey())){//非担保
} else if ("01".equals(solutionsDetailsVo.getTypeKey())) {//非担保
LoanNoGuaranteeCreditReviewDetailsVo loanNoGuaranteeCreditReviewDetailsVo = loanNoGuaranteeCreditReviewFeign.selByBorrSid(busSalesOrderVehicle.getBorrowerSid()).getData();
BusSalesOrderBorrowerDetailsVo busSalesOrderBorrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(busSalesOrderVehicle.getBorrowerSid()).getData();
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(busSalesOrderBorrowerDetailsVo.getCustomSid()).getData();
vinListVos1.setInvoiceTypeKey(busSalesOrder.getBillingTypeKey());
vinListVos1.setInvoiceType(busSalesOrder.getBillingType());
if ("1".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())){
if ("1".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())) {
vinListVos1.setInvoiceName(busSalesOrderBorrowerDetailsVo.getBorrowerName());
vinListVos1.setOpenTickSid(busSalesOrderBorrowerDetailsVo.getCustomSid());
vinListVos1.setInvoiceInfo(crmCustomerTempVo.getIDNumber());
}else if ("2".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())){
} else if ("2".equals(loanNoGuaranteeCreditReviewDetailsVo.getType())) {
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = finCompanyInvoicingService.selectInvoingByName(loanNoGuaranteeCreditReviewDetailsVo.getAffiliatedCompany()).getData();
vinListVos1.setInvoiceName(loanNoGuaranteeCreditReviewDetailsVo.getAffiliatedCompany());
vinListVos1.setOpenTickSid(finCompanyInvoicingDetailsVo.getSid());
@ -5875,18 +5878,18 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BusSalesOrderPrice busSalesOrderPrice = baseMapper.selectByPrices(busSalesOrder.getSid());
if ("1".equals(busSalesOrder.getPayTypeKey())) {//全款
contractBtns = 1;
}else{
if(StringUtils.isNotBlank(loanSolutions.getTypeKey())){
} else {
if (StringUtils.isNotBlank(loanSolutions.getTypeKey())) {
contractBtns = 2;
}
}
billApplicationIInfoVoss.setContractBtns(contractBtns);
//销售订单开票sid
if(StringUtils.isNotBlank(busSalesOrder.getAffiliatedCompanySid())){
if (StringUtils.isNotBlank(busSalesOrder.getAffiliatedCompanySid())) {
billApplicationIInfoVoss.setOrderInvoiceSid(busSalesOrder.getAffiliatedCompanySid());
}
if(busSalesOrderPrice != null){
if(busSalesOrderPrice.getSingleFinalPrice() != null){
if (busSalesOrderPrice != null) {
if (busSalesOrderPrice.getSingleFinalPrice() != null) {
billApplicationIInfoVoss.setOrderInvoicePrice(busSalesOrderPrice.getSingleFinalPrice().toString());
}
}
@ -5899,7 +5902,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
return rb.success().setData(finBillApplicationDetailsVo);
}
public String createContractNo(FinBillApplicationDto dto){
public String createContractNo(FinBillApplicationDto dto) {
/* try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
@ -5922,92 +5925,92 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BusSalesOrderModel busSalesOrderModel = baseMapper.selectByOrderSid(busSalesOrder.getSid());
BusSalesOrderPrice busSalesOrderPrice = baseMapper.selectByPrices(busSalesOrder.getSid());
int contractBts = 0;
if("1".equals(busSalesOrder.getPayTypeKey())){
if ("1".equals(busSalesOrder.getPayTypeKey())) {
contractBts = 1;
}else{
if(StringUtils.isNotBlank(loanSolutions.getTypeKey())){
} else {
if (StringUtils.isNotBlank(loanSolutions.getTypeKey())) {
contractBts = 2;
}
}
if(StringUtils.isBlank(dto.getSid())){//新增的,与销售订单数据作对比
switch (contractBts){
if (StringUtils.isBlank(dto.getSid())) {//新增的,与销售订单数据作对比
switch (contractBts) {
case 1:
//全款,与销售订单的价格不一样,就notice
if(StringUtils.isNotBlank(dto.getOneBillMoney()) && new BigDecimal(dto.getOneBillMoney()).compareTo(busSalesOrderPrice.getSingleFinalPrice()) !=0){
if (StringUtils.isNotBlank(dto.getOneBillMoney()) && new BigDecimal(dto.getOneBillMoney()).compareTo(busSalesOrderPrice.getSingleFinalPrice()) != 0) {
showNotice = true;
}else{
} else {
//与销售订单的价格一致,判断是否与销售订单的开票名称不一致的情况
List<FinBillVehicleDto> finBillVehicleDtoList = dto.getFinBillVehicles();
finBillVehicleDtoList = finBillVehicleDtoList.stream().filter(v->!v.getOpenTickSid().equals(busSalesOrder.getAffiliatedCompanySid())).collect(Collectors.toList());
finBillVehicleDtoList = finBillVehicleDtoList.stream().filter(v -> !v.getOpenTickSid().equals(busSalesOrder.getAffiliatedCompanySid())).collect(Collectors.toList());
finBillVehicleDtoList.removeAll(Collections.singleton(null));
showNotice = finBillVehicleDtoList.size()>0;
showNotice = finBillVehicleDtoList.size() > 0;
}
break;
case 2:
showNotice = dto.getFinBillVehicles().size()>0;
showNotice = dto.getFinBillVehicles().size() > 0;
break;
}
}else{//若是修改的话,且生成过合同的情况下,则与旧数据作对比
} else {//若是修改的话,且生成过合同的情况下,则与旧数据作对比
FinBillApplication finBillApplication = fetchBySid(dto.getSid());
if(StringUtils.isBlank(finBillApplication.getFileUrl())){
switch (contractBts){
if (StringUtils.isBlank(finBillApplication.getFileUrl())) {
switch (contractBts) {
case 1:
//全款,与销售订单的价格不一样,就notice
if(StringUtils.isNotBlank(dto.getOneBillMoney()) && new BigDecimal(dto.getOneBillMoney()).compareTo(busSalesOrderPrice.getSingleFinalPrice()) !=0){
if (StringUtils.isNotBlank(dto.getOneBillMoney()) && new BigDecimal(dto.getOneBillMoney()).compareTo(busSalesOrderPrice.getSingleFinalPrice()) != 0) {
showNotice = true;
}else{
} else {
//与销售订单的价格一致,判断是否与销售订单的开票名称不一致的情况
List<FinBillVehicleDto> finBillVehicleDtoList = dto.getFinBillVehicles();
finBillVehicleDtoList = finBillVehicleDtoList.stream().filter(v->!v.getOpenTickSid().equals(busSalesOrder.getAffiliatedCompanySid())).collect(Collectors.toList());
finBillVehicleDtoList = finBillVehicleDtoList.stream().filter(v -> !v.getOpenTickSid().equals(busSalesOrder.getAffiliatedCompanySid())).collect(Collectors.toList());
finBillVehicleDtoList.removeAll(Collections.singleton(null));
showNotice = finBillVehicleDtoList.size()>0;
showNotice = finBillVehicleDtoList.size() > 0;
}
break;
case 2:
showNotice = dto.getFinBillVehicles().size()>0;
showNotice = dto.getFinBillVehicles().size() > 0;
break;
}
}else{
} else {
//若有合同,则与旧数据作对比
boolean isTrue = false;
List<FinBillVehicleVo> finBillVehicleVos = finBillVehicleService.fetchByMainSid(dto.getSid());
List<FinBillVehicleDto> finBillVehicleVosNew = dto.getFinBillVehicles();
switch (contractBts){
switch (contractBts) {
case 1:
//全款,与销售订单的价格不一样,则与旧数据作对比
if(new BigDecimal(dto.getOneBillMoney()).compareTo(busSalesOrderPrice.getSingleFinalPrice()) != 0){
if (new BigDecimal(dto.getOneBillMoney()).compareTo(busSalesOrderPrice.getSingleFinalPrice()) != 0) {
isTrue = true;
}else{
} else {
//与销售订单的价格一致,判断是否与销售订单的开票名称不一致的情况,若有不一致的情况,则与旧数据作对比
finBillVehicleVosNew = finBillVehicleVosNew.stream().filter(v->!v.getOpenTickSid().equals(busSalesOrder.getAffiliatedCompanySid())).collect(Collectors.toList());
finBillVehicleVosNew = finBillVehicleVosNew.stream().filter(v -> !v.getOpenTickSid().equals(busSalesOrder.getAffiliatedCompanySid())).collect(Collectors.toList());
finBillVehicleVosNew.removeAll(Collections.singleton(null));
isTrue = finBillVehicleVosNew.size()>0;
isTrue = finBillVehicleVosNew.size() > 0;
}
if(isTrue){
if(new BigDecimal(dto.getOneBillMoney()).compareTo(finBillApplication.getOneBillMoney()) != 0){
if (isTrue) {
if (new BigDecimal(dto.getOneBillMoney()).compareTo(finBillApplication.getOneBillMoney()) != 0) {
showNotice = true;
}else{
} else {
//如果数量发生变化,则生成合同
if(finBillVehicleVos.size() != finBillVehicleVosNew.size()){
if (finBillVehicleVos.size() != finBillVehicleVosNew.size()) {
showNotice = true;
}else{//数量没发生变化,车辆发生变化,则生成合同
} else {//数量没发生变化,车辆发生变化,则生成合同
List<String> stringList1 = finBillVehicleVos.stream().map(FinBillVehicleVo::getVehSid).collect(Collectors.toList());
List<String> stringList2 = finBillVehicleVosNew.stream().map(FinBillVehicleDto::getVehSid).collect(Collectors.toList());
Set<String> stringSet3 = new HashSet<>();
stringSet3.addAll(stringList1);
stringSet3.addAll(stringList2);
if(stringSet3.size() != stringList1.size()){
if (stringSet3.size() != stringList1.size()) {
showNotice = true;
}else{
} else {
//车辆没发生变化,查询开票信息是否发生变化
for (int i = 0; i < finBillVehicleVos.size(); i++) {
String vehSid = finBillVehicleVos.get(i).getVehSid();
String openTickSid = finBillVehicleVos.get(i).getOpenTickSid();
String openTickSidNew = finBillVehicleVosNew.stream().filter(vv->vehSid.equals(vv.getVehSid())).collect(Collectors.toList()).get(0).getOpenTickSid();
if(!openTickSid.equals(openTickSidNew)){
String openTickSidNew = finBillVehicleVosNew.stream().filter(vv -> vehSid.equals(vv.getVehSid())).collect(Collectors.toList()).get(0).getOpenTickSid();
if (!openTickSid.equals(openTickSidNew)) {
showNotice = true;
break;
}
@ -6020,35 +6023,35 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
case 2:
//车辆数量发生变化,
if(finBillVehicleVos.size() != finBillVehicleVosNew.size()){
if (finBillVehicleVos.size() != finBillVehicleVosNew.size()) {
showNotice = true;
}else{
} else {
List<String> stringList1 = finBillVehicleVos.stream().map(FinBillVehicleVo::getVehSid).collect(Collectors.toList());
List<String> stringList2 = finBillVehicleVosNew.stream().map(FinBillVehicleDto::getVehSid).collect(Collectors.toList());
Set<String> stringSet3 = new HashSet<>();
stringSet3.addAll(stringList1);
stringSet3.addAll(stringList2);
if(stringSet3.size() != stringList1.size()){
if (stringSet3.size() != stringList1.size()) {
showNotice = true;
}
}
break;
}
if(!showNotice && !isTrue){
if (!showNotice && !isTrue) {
allDownloadUrl = finBillApplication.getFileUrl();
}
}
}
if(showNotice){
if (showNotice) {
allDownloadUrl = getFileUrlNew(dto);
}
return allDownloadUrl;
}
public List<String> castList(Object obj, Class<String> clazz){
public List<String> castList(Object obj, Class<String> clazz) {
List<String> result = new ArrayList<>();
if(obj instanceof List<?>){
for (Object o : (List<?>) obj){
if (obj instanceof List<?>) {
for (Object o : (List<?>) obj) {
result.add(clazz.cast(o));
}
return result;
@ -6061,8 +6064,8 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
DownloanVoUrl downloanVoUrl = new DownloanVoUrl();
ResultBean<DownloanVoUrl> resultBean = saveOrUpdateDto(dto);
String allDownloadUrl = resultBean.getData().getAllDownloadUrl();
if(StringUtils.isNotBlank(allDownloadUrl)){
downloanVoUrl.setAllDownloadUrl(docPdfComponent.getPrefixTemplateUrl()+allDownloadUrl);
if (StringUtils.isNotBlank(allDownloadUrl)) {
downloanVoUrl.setAllDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + allDownloadUrl);
}
downloanVoUrl.setSid(resultBean.getData().getSid());
return rb.success().setData(downloanVoUrl);
@ -6073,8 +6076,8 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
DownloanVoUrl downloanVoUrl = new DownloanVoUrl();
ResultBean<DownloanVoUrl> resultBean = saveOrUpdateDtoQK(dto);
String allDownloadUrl = resultBean.getData().getAllDownloadUrl();
if(StringUtils.isNotBlank(allDownloadUrl)){
downloanVoUrl.setAllDownloadUrl(docPdfComponent.getPrefixTemplateUrl()+allDownloadUrl);
if (StringUtils.isNotBlank(allDownloadUrl)) {
downloanVoUrl.setAllDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + allDownloadUrl);
}
downloanVoUrl.setSid(resultBean.getData().getSid());
return rb.success().setData(downloanVoUrl);

Loading…
Cancel
Save