|
@ -8,13 +8,22 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
import com.google.common.util.concurrent.ThreadFactoryBuilder; |
|
|
import com.google.common.util.concurrent.ThreadFactoryBuilder; |
|
|
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemDetailsVo; |
|
|
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemDetailsVo; |
|
|
|
|
|
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign; |
|
|
import com.yxt.anrui.base.common.utils.Rule; |
|
|
import com.yxt.anrui.base.common.utils.Rule; |
|
|
|
|
|
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; |
|
|
|
|
|
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; |
|
|
|
|
|
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerDetailsVo; |
|
|
|
|
|
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerFeign; |
|
|
import com.yxt.anrui.buscenter.api.bussalesorderreturnveh.BusSalesOrderReturnVehDetailsVo; |
|
|
import com.yxt.anrui.buscenter.api.bussalesorderreturnveh.BusSalesOrderReturnVehDetailsVo; |
|
|
import com.yxt.anrui.buscenter.api.bussalesorderreturnvehapply.BusSalesOrderReturnVehApplyDetailsVo; |
|
|
import com.yxt.anrui.buscenter.api.bussalesorderreturnvehapply.BusSalesOrderReturnVehApplyDetailsVo; |
|
|
import com.yxt.anrui.buscenter.api.bussalesorderreturnvehapply.BusSalesOrderReturnVehPdfVo; |
|
|
import com.yxt.anrui.buscenter.api.bussalesorderreturnvehapply.BusSalesOrderReturnVehPdfVo; |
|
|
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; |
|
|
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; |
|
|
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; |
|
|
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; |
|
|
|
|
|
import com.yxt.anrui.fin.api.finmanufacturerbank.FinManufacturerBank; |
|
|
import com.yxt.anrui.fin.api.finpaymentrecord.FinPaymentrecordSourceLCVo; |
|
|
import com.yxt.anrui.fin.api.finpaymentrecord.FinPaymentrecordSourceLCVo; |
|
|
|
|
|
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign; |
|
|
|
|
|
import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer; |
|
|
|
|
|
import com.yxt.anrui.fin.api.kingdee.voucher.Voucher; |
|
|
import com.yxt.anrui.flowable.api.flow.FlowableFeign; |
|
|
import com.yxt.anrui.flowable.api.flow.FlowableFeign; |
|
|
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; |
|
|
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; |
|
|
import com.yxt.anrui.flowable.api.flow2.FlowDelegateQuery; |
|
|
import com.yxt.anrui.flowable.api.flow2.FlowDelegateQuery; |
|
@ -24,6 +33,8 @@ import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; |
|
|
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; |
|
|
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; |
|
|
import com.yxt.anrui.flowable.api.utils.ProcDefEnum; |
|
|
import com.yxt.anrui.flowable.api.utils.ProcDefEnum; |
|
|
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; |
|
|
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; |
|
|
|
|
|
import com.yxt.anrui.portal.api.dictcommon.DictCommonFeign; |
|
|
|
|
|
import com.yxt.anrui.portal.api.dictcommon.DictCommonVo; |
|
|
import com.yxt.anrui.portal.api.flow.PCHistTaskListAndCommentList; |
|
|
import com.yxt.anrui.portal.api.flow.PCHistTaskListAndCommentList; |
|
|
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; |
|
|
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; |
|
|
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; |
|
|
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; |
|
@ -118,6 +129,17 @@ public class LoanRepurchaseApplyService extends MybatisBaseService<LoanRepurchas |
|
|
@Autowired |
|
|
@Autowired |
|
|
private MessageListFeign messageListFeign; |
|
|
private MessageListFeign messageListFeign; |
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
|
private BusSalesOrderFeign busSalesOrderFeign; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private FinKingDeeFeign finKingDeeFeign; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private BusSalesOrderBorrowerFeign busSalesOrderBorrowerFeign; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private BasePurchaseSystemFeign basePurchaseSystemFeign; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private DictCommonFeign dictCommonFeign; |
|
|
|
|
|
|
|
|
public PagerVo<LoanRepurchaseApplyVo> listPage(PagerQuery<LoanRepurchaseApplyQuery> pq) { |
|
|
public PagerVo<LoanRepurchaseApplyVo> listPage(PagerQuery<LoanRepurchaseApplyQuery> pq) { |
|
|
IPage<LoanRepurchaseApply> page = PagerUtil.queryToPage(pq); |
|
|
IPage<LoanRepurchaseApply> page = PagerUtil.queryToPage(pq); |
|
|
LoanRepurchaseApplyQuery pagerQuery = pq.getParams(); |
|
|
LoanRepurchaseApplyQuery pagerQuery = pq.getParams(); |
|
@ -718,6 +740,19 @@ public class LoanRepurchaseApplyService extends MybatisBaseService<LoanRepurchas |
|
|
baseMapper.updateById(repurchaseApply); |
|
|
baseMapper.updateById(repurchaseApply); |
|
|
//更新车辆表回购状态
|
|
|
//更新车辆表回购状态
|
|
|
baseMapper.updateBus(repurchaseApply.getBusVinSid()); |
|
|
baseMapper.updateBus(repurchaseApply.getBusVinSid()); |
|
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() |
|
|
|
|
|
.setNameFormat("demo-pool-%d").build(); |
|
|
|
|
|
ExecutorService pool = new ThreadPoolExecutor(2, 100, |
|
|
|
|
|
0L, TimeUnit.MILLISECONDS, |
|
|
|
|
|
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); |
|
|
|
|
|
Future future1 = pool.submit(() -> { |
|
|
|
|
|
pushRiskToFin(businessSid); |
|
|
|
|
|
}); |
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
|
e.printStackTrace(); |
|
|
|
|
|
} |
|
|
} else { |
|
|
} else { |
|
|
//极光推送
|
|
|
//极光推送
|
|
|
loanRepurchaseApply = fetchBySid(businessSid); |
|
|
loanRepurchaseApply = fetchBySid(businessSid); |
|
@ -740,6 +775,194 @@ public class LoanRepurchaseApplyService extends MybatisBaseService<LoanRepurchas |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public void pushRiskToFin(String businessSid){ |
|
|
|
|
|
LoanRepurchaseApply loanRepurchaseApply = fetchBySid(businessSid); |
|
|
|
|
|
if(loanRepurchaseApply != null){ |
|
|
|
|
|
List<Voucher.VoucherResultDetailDto> voucherResultDetailDtos = new ArrayList<>(); |
|
|
|
|
|
LoanRepurchaseCost loanRepurchaseCost = loanRepurchaseCostService.selectByMainSid(businessSid); |
|
|
|
|
|
DictCommonVo dictCommonVo = dictCommonFeign.selectBykey(loanRepurchaseApply.getBankName(), "investorsCode").getData(); |
|
|
|
|
|
Voucher voucher = new Voucher(); |
|
|
|
|
|
SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(loanRepurchaseApply.getUseOrgSid()).getData(); |
|
|
|
|
|
if (null != organizationVo) { |
|
|
|
|
|
voucher.setAccountBook(organizationVo.getOrgCode()); |
|
|
|
|
|
voucher.setVoucherNo(organizationVo.getOrgCode()); |
|
|
|
|
|
} |
|
|
|
|
|
SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(loanRepurchaseApply.getCreateDeptSid()).getData(); |
|
|
|
|
|
String busVinSid = loanRepurchaseApply.getBusVinSid(); |
|
|
|
|
|
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.details(busVinSid).getData(); |
|
|
|
|
|
String customerNumber = ""; |
|
|
|
|
|
BusSalesOrder salesOrder = busSalesOrderFeign.fetchBySid(busSalesOrderVehicle.getSalesOrderSid()).getData(); |
|
|
|
|
|
if (salesOrder != null && busSalesOrderVehicle != null) { |
|
|
|
|
|
//判断财务系统是否有客户
|
|
|
|
|
|
Boolean aBoolean = finKingDeeFeign.customerExistState(busSalesOrderVehicle.getTemporaryNo()).getData(); |
|
|
|
|
|
String linkNo = ""; |
|
|
|
|
|
BusSalesOrderBorrowerDetailsVo borrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(busSalesOrderVehicle.getBorrowerSid()).getData(); |
|
|
|
|
|
if (!aBoolean) { |
|
|
|
|
|
BdCustomer bdCustomer = new BdCustomer(); |
|
|
|
|
|
bdCustomer.setFNumber(busSalesOrderVehicle.getTemporaryNo()); |
|
|
|
|
|
bdCustomer.setFShortName(salesOrder.getContractNo()); |
|
|
|
|
|
if (StringUtils.isNotBlank(salesOrder.getPurchaseSystemSid())) { |
|
|
|
|
|
BasePurchaseSystemDetailsVo data = basePurchaseSystemFeign.fetchDetailsByDeptSid(salesOrder.getPurchaseSystemSid()).getData(); |
|
|
|
|
|
bdCustomer.setTOrgIds(data.getOrgCode()); |
|
|
|
|
|
} |
|
|
|
|
|
bdCustomer.setTOrgIds(deptVo.getOrgCode()); |
|
|
|
|
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(busSalesOrderVehicle.getLinkNo())) { |
|
|
|
|
|
String vinNo = busSalesOrderVehicle.getLinkNo(); |
|
|
|
|
|
if (vinNo.length() > 8) { |
|
|
|
|
|
linkNo = vinNo.substring(vinNo.length() - 8); |
|
|
|
|
|
} else { |
|
|
|
|
|
linkNo = busSalesOrderVehicle.getLinkNo(); |
|
|
|
|
|
} |
|
|
|
|
|
if (null != borrowerDetailsVo) { |
|
|
|
|
|
bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + linkNo); |
|
|
|
|
|
} |
|
|
|
|
|
} else { |
|
|
|
|
|
if (null != borrowerDetailsVo) { |
|
|
|
|
|
bdCustomer.setFName(borrowerDetailsVo.getBorrowerName() + busSalesOrderVehicle.getTemporaryNo()); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
ResultBean<String> resultBean = finKingDeeFeign.draftBdCustomer(bdCustomer); |
|
|
|
|
|
if (resultBean.getSuccess()) { |
|
|
|
|
|
customerNumber = bdCustomer.getFNumber(); |
|
|
|
|
|
} |
|
|
|
|
|
} else { |
|
|
|
|
|
customerNumber = busSalesOrderVehicle.getTemporaryNo(); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
if(loanRepurchaseCost.getBankSettlePrice() != null && loanRepurchaseCost.getBankSettlePrice().compareTo(BigDecimal.ZERO)>0){//资方结清金额>0
|
|
|
|
|
|
BigDecimal loanDeposit = loanRepurchaseCost.getLoanDeposit();//贷款保证金
|
|
|
|
|
|
BigDecimal all = BigDecimal.ZERO; |
|
|
|
|
|
if(loanDeposit != null && loanDeposit.compareTo(BigDecimal.ZERO)>0){ |
|
|
|
|
|
all = all.add(loanDeposit); |
|
|
|
|
|
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); |
|
|
|
|
|
voucherResultDetailDtoDf.setSummary(loanRepurchaseApply.getBankName() + "个贷保证金抵结清款"); |
|
|
|
|
|
voucherResultDetailDtoDf.setSubjectNo("1009.01.00"); |
|
|
|
|
|
//核算部门
|
|
|
|
|
|
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); |
|
|
|
|
|
//核算客户
|
|
|
|
|
|
voucherResultDetailDtoDf.setDimensionCustom(customerNumber); |
|
|
|
|
|
voucherResultDetailDtoDf.setCredit(loanDeposit.toString()); |
|
|
|
|
|
voucherResultDetailDtos.add(voucherResultDetailDtoDf); |
|
|
|
|
|
} |
|
|
|
|
|
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf2 = new Voucher.VoucherResultDetailDto(); |
|
|
|
|
|
String accountNumber = loanRepurchaseCost.getBankAccount(); |
|
|
|
|
|
String payTypeCode = ""; |
|
|
|
|
|
FinManufacturerBank manufacturerBank = baseMapper.selectByAccountNumAndUseSid(accountNumber,loanRepurchaseApply.getUseOrgSid()); |
|
|
|
|
|
if (null != manufacturerBank) { |
|
|
|
|
|
payTypeCode = manufacturerBank.getDueBankKey(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
all= all.add(loanRepurchaseCost.getBankSettlePrice()); |
|
|
|
|
|
if ("02".equals(payTypeCode)) { |
|
|
|
|
|
voucherResultDetailDtoDf2.setSubjectNo("1002.01.00"); |
|
|
|
|
|
} else if ("01".equals(payTypeCode)) { |
|
|
|
|
|
voucherResultDetailDtoDf2.setSubjectNo("1002.02.01"); |
|
|
|
|
|
} |
|
|
|
|
|
voucherResultDetailDtoDf2.setSummary(loanRepurchaseApply.getBankName() + "结清"); |
|
|
|
|
|
//核算部门
|
|
|
|
|
|
voucherResultDetailDtoDf2.setDimensionDept(deptVo.getOrgCode()); |
|
|
|
|
|
//核算客户
|
|
|
|
|
|
voucherResultDetailDtoDf2.setDimensionCustom(customerNumber); |
|
|
|
|
|
voucherResultDetailDtoDf2.setCredit(loanRepurchaseCost.getBankSettlePrice().toString()); |
|
|
|
|
|
voucherResultDetailDtos.add(voucherResultDetailDtoDf2); |
|
|
|
|
|
if(all.compareTo(BigDecimal.ZERO)>0){ |
|
|
|
|
|
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf = new Voucher.VoucherResultDetailDto(); |
|
|
|
|
|
if (null != dictCommonVo) { |
|
|
|
|
|
voucherResultDetailDtoJf.setSubjectNo(dictCommonVo.getDictValue()); |
|
|
|
|
|
} |
|
|
|
|
|
voucherResultDetailDtoJf.setSummary(loanRepurchaseApply.getBankName() + "结清"); |
|
|
|
|
|
//核算部门
|
|
|
|
|
|
voucherResultDetailDtoJf.setDimensionDept(deptVo.getOrgCode()); |
|
|
|
|
|
//核算客户
|
|
|
|
|
|
voucherResultDetailDtoJf.setDimensionCustom(customerNumber); |
|
|
|
|
|
voucherResultDetailDtoJf.setCredit(all.toString()); |
|
|
|
|
|
voucherResultDetailDtos.add(voucherResultDetailDtoJf); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
BigDecimal bankContractLiquidated = loanRepurchaseCost.getBankContractLiquidated();//合同违约金
|
|
|
|
|
|
BigDecimal bankNominalPrice = loanRepurchaseCost.getBankNominalPrice();//名义价
|
|
|
|
|
|
BigDecimal bankOtherReceivable = loanRepurchaseCost.getBankOtherReceivable();//资方其他应收
|
|
|
|
|
|
BigDecimal all2 = bankContractLiquidated.add(bankNominalPrice).add(bankOtherReceivable); |
|
|
|
|
|
if(bankContractLiquidated.compareTo(BigDecimal.ZERO)>0){ |
|
|
|
|
|
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); |
|
|
|
|
|
if (null != dictCommonVo) { |
|
|
|
|
|
voucherResultDetailDtoDf.setSubjectNo(dictCommonVo.getDictValue()); |
|
|
|
|
|
} |
|
|
|
|
|
voucherResultDetailDtoDf.setSummary("还其他费用-合同违约金"); |
|
|
|
|
|
//核算部门
|
|
|
|
|
|
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); |
|
|
|
|
|
//核算客户
|
|
|
|
|
|
voucherResultDetailDtoDf.setDimensionCustom(customerNumber); |
|
|
|
|
|
voucherResultDetailDtoDf.setCredit(bankContractLiquidated.toString()); |
|
|
|
|
|
voucherResultDetailDtos.add(voucherResultDetailDtoDf); |
|
|
|
|
|
} |
|
|
|
|
|
if(bankNominalPrice.compareTo(BigDecimal.ZERO)>0){ |
|
|
|
|
|
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); |
|
|
|
|
|
if (null != dictCommonVo) { |
|
|
|
|
|
voucherResultDetailDtoDf.setSubjectNo(dictCommonVo.getDictValue()); |
|
|
|
|
|
} |
|
|
|
|
|
voucherResultDetailDtoDf.setSummary("名义价"); |
|
|
|
|
|
//核算部门
|
|
|
|
|
|
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); |
|
|
|
|
|
//核算客户
|
|
|
|
|
|
voucherResultDetailDtoDf.setDimensionCustom(customerNumber); |
|
|
|
|
|
voucherResultDetailDtoDf.setCredit(bankNominalPrice.toString()); |
|
|
|
|
|
voucherResultDetailDtos.add(voucherResultDetailDtoDf); |
|
|
|
|
|
} |
|
|
|
|
|
if(bankOtherReceivable.compareTo(BigDecimal.ZERO)>0){ |
|
|
|
|
|
Voucher.VoucherResultDetailDto voucherResultDetailDtoDf = new Voucher.VoucherResultDetailDto(); |
|
|
|
|
|
if (null != dictCommonVo) { |
|
|
|
|
|
voucherResultDetailDtoDf.setSubjectNo(dictCommonVo.getDictValue()); |
|
|
|
|
|
} |
|
|
|
|
|
voucherResultDetailDtoDf.setSummary("资方其他费用"); |
|
|
|
|
|
//核算部门
|
|
|
|
|
|
voucherResultDetailDtoDf.setDimensionDept(deptVo.getOrgCode()); |
|
|
|
|
|
//核算客户
|
|
|
|
|
|
voucherResultDetailDtoDf.setDimensionCustom(customerNumber); |
|
|
|
|
|
voucherResultDetailDtoDf.setCredit(bankOtherReceivable.toString()); |
|
|
|
|
|
voucherResultDetailDtos.add(voucherResultDetailDtoDf); |
|
|
|
|
|
} |
|
|
|
|
|
if(all2.compareTo(BigDecimal.ZERO)>0){ |
|
|
|
|
|
Voucher.VoucherResultDetailDto voucherResultDetailDtoJf = new Voucher.VoucherResultDetailDto(); |
|
|
|
|
|
if("1".equals(busSalesOrderVehicle.getRiskState().toString())){ |
|
|
|
|
|
//应收贷款车欠款_待处理欠款_扣回车辆
|
|
|
|
|
|
voucherResultDetailDtoJf.setSubjectNo("1201.03.01"); |
|
|
|
|
|
}else if("7".equals(busSalesOrderVehicle.getRiskState().toString())){ |
|
|
|
|
|
//应收贷款车欠款_待处理欠款_处置车辆_车辆处置损失
|
|
|
|
|
|
voucherResultDetailDtoJf.setSubjectNo("1201.03.04.01"); |
|
|
|
|
|
}else if("9".equals(busSalesOrderVehicle.getRiskState().toString())){ |
|
|
|
|
|
//应收贷款车欠款_待处理欠款_诉讼车辆
|
|
|
|
|
|
voucherResultDetailDtoJf.setSubjectNo("1201.03.03"); |
|
|
|
|
|
}else if("11".equals(busSalesOrderVehicle.getRiskState().toString())){ |
|
|
|
|
|
//应收贷款车欠款_待处理欠款_处置车辆_已诉讼
|
|
|
|
|
|
voucherResultDetailDtoJf.setSubjectNo("1201.03.04.02"); |
|
|
|
|
|
}else if("12".equals(busSalesOrderVehicle.getRiskState().toString())){ |
|
|
|
|
|
//应收贷款车欠款_待处理欠款_待执行
|
|
|
|
|
|
voucherResultDetailDtoJf.setSubjectNo("1201.03.05"); |
|
|
|
|
|
}else { |
|
|
|
|
|
if("0".equals(busSalesOrderVehicle.getRiskState().toString())){ |
|
|
|
|
|
//应收贷款车欠款_到期欠款_累欠
|
|
|
|
|
|
voucherResultDetailDtoJf.setSubjectNo("1201.02.03"); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
voucherResultDetailDtoJf.setSummary("转科目"); |
|
|
|
|
|
//核算部门
|
|
|
|
|
|
voucherResultDetailDtoJf.setDimensionDept(deptVo.getOrgCode()); |
|
|
|
|
|
//核算客户
|
|
|
|
|
|
voucherResultDetailDtoJf.setDimensionCustom(customerNumber); |
|
|
|
|
|
voucherResultDetailDtoJf.setCredit(all2.toString()); |
|
|
|
|
|
voucherResultDetailDtos.add(voucherResultDetailDtoJf); |
|
|
|
|
|
} |
|
|
|
|
|
if(!voucherResultDetailDtos.isEmpty()){ |
|
|
|
|
|
voucher.setResultDetails(voucherResultDetailDtos); |
|
|
|
|
|
finKingDeeFeign.saveVoucher(voucher); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 撤回 |
|
|
* 撤回 |
|
|