Browse Source

消贷系列生成融资协议和还款协议

master
God 1 year ago
parent
commit
94a8e777c9
  1. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java
  2. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeignFallback.java
  3. 3
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractRest.java
  4. 31
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java
  5. 348
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanhomevisitprep/LoanHomevisitPrepService.java
  6. 3962
      anrui-riskcenter/anrui-riskcenter-biz/src/main/resources/ftl/clrzxy.ftl
  7. 9825
      anrui-riskcenter/anrui-riskcenter-biz/src/main/resources/ftl/hkxy.ftl
  8. 3962
      工作内容需要的文档/单据模板/车辆融资协议打印模板/clrzxy.ftl
  9. 91
      工作内容需要的文档/单据模板/车辆融资协议打印模板/车辆融资协议.docx
  10. 9825
      工作内容需要的文档/单据模板/还款协议打印模板/hkxy.ftl
  11. 283
      工作内容需要的文档/单据模板/还款协议打印模板/还款协议.docx

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java

@ -12,6 +12,7 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.validation.Valid;
import java.io.File;
import java.io.IOException;
import java.text.ParseException;
import java.util.List;
@ -157,7 +158,7 @@ public interface CommonContractFeign {
@ApiOperation(value = "新车买卖合同打印pdf")
@PostMapping("/xcmmContract")
public ResultBean<List<PrintConfirmVo>> xcmmContract(@RequestBody PrintConfirmDto dto);
public ResultBean<List<File>> xcmmContract(@RequestBody PrintConfirmDto dto);
/******************************************************新车买卖合同审核(流程)******************************************************/

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeignFallback.java

@ -7,6 +7,7 @@ import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.text.ParseException;
import java.util.List;
@ -169,7 +170,7 @@ public class CommonContractFeignFallback implements CommonContractFeign {
}
@Override
public ResultBean<List<PrintConfirmVo>> xcmmContract(PrintConfirmDto dto) {
public ResultBean<List<File>> xcmmContract(PrintConfirmDto dto) {
return null;
}

3
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractRest.java

@ -31,6 +31,7 @@ import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
@ -442,7 +443,7 @@ public class CommonContractRest implements CommonContractFeign {
}
@Override
public ResultBean<List<PrintConfirmVo>> xcmmContract(PrintConfirmDto dto) {
public ResultBean<List<File>> xcmmContract(PrintConfirmDto dto) {
return commonContractService.xcmmContract(dto);
}

31
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java

@ -1672,9 +1672,8 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp
return r;
}
public ResultBean<List<PrintConfirmVo>> xcmmContract(PrintConfirmDto dto) {
ResultBean<List<PrintConfirmVo>> rb = ResultBean.fireFail();
List<PrintConfirmVo> list = new ArrayList<>();
public ResultBean<List<File>> xcmmContract(PrintConfirmDto dto) {
ResultBean<List<File>> rb = ResultBean.fireFail();
Map<String, Object> map = new HashMap<>();
//客户信息
CrmCustomerTemp crmCustomerTemp = crmCustomerTempFeign.fetchEntity(dto.getCustomerSid()).getData();
@ -1866,7 +1865,6 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp
}
//交纳订金
AppOrderDepositInfoVo depositInfo = appOrderDetailsVo.getDepositInfo();
String depositTotal = depositInfo.getDepositTotal();
if ("02".equals(depositInfo.getDepositTypeKey())) {
ResultBean<List<BusDepositFictitiousDetailsVo>> listResultBean = busDepositFictitiousFeign.detailsList(depositInfo.getSid());
List<BusDepositFictitiousDetailsVo> listResultBeanData = listResultBean.getData();
@ -1928,9 +1926,9 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp
}
}
map.put("contractNo", dto.getContractNo());
String url = "";
PrintConfirmVo printConfirmVo = null;
String urlAll = "";
List<File> filesList = new ArrayList<>();
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
@ -1944,8 +1942,6 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp
Future<String> future1_2 = pool.submit(() -> {
return genCarSaleContract2(dto, map, appOrderDetailsVo);
});
Future<String> future8 = null;
List<File> filesList = new ArrayList<>();
if (future1 != null) {
if (StringUtils.isNotBlank(future1.get())) {
File file = new File(docPdfComponent.getUploadTemplateUrl() + future1.get());
@ -1958,31 +1954,12 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp
filesList.add(file);
}
}
//合并pdf文件
if (future8 != null) {
if (StringUtils.isNotBlank(future8.get())) {
File file = new File(docPdfComponent.getUploadTemplateUrl() + future8.get());
filesList.add(file);
}
}
if (filesList.size() > 0) {
String typeName = appOrderDetailsVo.getPayType() + dto.getContractNo() + ".pdf";
File allFile = WordConvertUtils.mulFile2One(filesList, docPdfComponent.getUploadTemplateUrl() + typeName);
System.out.println("-========" + docPdfComponent.getUploadTemplateUrl() + typeName);
urlAll = typeName;
}
if (StringUtils.isNotBlank(urlAll)) {
printConfirmVo = new PrintConfirmVo();
printConfirmVo.setName(MessageFormat.format("《{0}》", appOrderDetailsVo.getPayType() + dto.getContractNo()));
printConfirmVo.setDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + urlAll);
list.add(printConfirmVo);
}
} catch (Exception e) {
e.printStackTrace();
log.error("生成文件失败:==========================" + e.getMessage());
return rb.setMsg("生成文件失败");
}
return rb.success().setData(list);
return rb.success().setData(filesList);
}
public ResultBean<List<PrintConfirmVo>> printConfirm(PrintConfirmDto dto) {

348
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanhomevisitprep/LoanHomevisitPrepService.java

@ -26,6 +26,7 @@
package com.yxt.anrui.riskcenter.biz.loanhomevisitprep;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleStateDto;
@ -46,12 +47,25 @@ import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoanco
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.buscenter.api.bussalesvehicleorder.BusSalesVehicleOrderFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.riskcenter.api.loanfinbank.LoanFinBank;
import com.yxt.anrui.riskcenter.api.loanfinpolicy.LoanFinPolicy;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigate.LoanHomevisitInvestigate;
import com.yxt.anrui.riskcenter.api.loanhomevisitprep.*;
import com.yxt.anrui.riskcenter.api.loanpreloancreditapply.LoanPreloanCreditApplyVo;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.anrui.riskcenter.biz.loanfinbank.LoanFinBankService;
import com.yxt.anrui.riskcenter.biz.loanfinpolicy.LoanFinPolicyService;
import com.yxt.anrui.riskcenter.biz.loanhomevisitinvestigate.LoanHomevisitInvestigateService;
import com.yxt.anrui.riskcenter.biz.loansolutions.LoanSolutionsService;
import com.yxt.common.base.config.component.DocPdfComponent;
import com.yxt.common.base.utils.WordConvertUtils;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
@ -62,8 +76,12 @@ import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.io.File;
import java.io.InputStream;
import java.math.BigDecimal;
import java.text.MessageFormat;
import java.util.*;
import java.util.concurrent.Future;
/**
* Project: anrui-riskcenter(家访准备) <br/>
@ -97,6 +115,18 @@ public class LoanHomevisitPrepService extends MybatisBaseService<LoanHomevisitPr
private LoanHomevisitInvestigateService loanHomevisitInvestigateService;
@Autowired
private CommonContractFeign commonContractFeign;
@Autowired
private CrmCustomerTempFeign crmCustomerTempFeign;
@Autowired
private FinVehicleInvoiceFeign finVehicleInvoiceFeign;
@Autowired
private LoanSolutionsService loanSolutionsService;
@Autowired
private LoanFinPolicyService loanFinPolicyService;
@Autowired
private LoanFinBankService loanFinBankService;
@Autowired
private DocPdfComponent docPdfComponent;
public PagerVo<LoanHomevisitPrepVo> listPageVo(PagerQuery<LoanHomevisitPrepQuery> pq) {
LoanHomevisitPrepQuery query = pq.getParams();
@ -212,8 +242,8 @@ public class LoanHomevisitPrepService extends MybatisBaseService<LoanHomevisitPr
public ResultBean visit(String sid) {
ResultBean rb = ResultBean.fireFail();
LoanHomevisitPrep loanHomevisitPrep = fetchBySid(sid);
List<BusSalesOrderLoancontract> busSalesOrderLoancontracts = busSalesOrderLoancontractFeign.fetchAllByOrderSidAndDkrSid(loanHomevisitPrep.getSaleOrderSid(),loanHomevisitPrep.getSaleOrderBorrowerSid()).getData();
if (busSalesOrderLoancontracts == null || busSalesOrderLoancontracts.isEmpty()){
List<BusSalesOrderLoancontract> busSalesOrderLoancontracts = busSalesOrderLoancontractFeign.fetchAllByOrderSidAndDkrSid(loanHomevisitPrep.getSaleOrderSid(), loanHomevisitPrep.getSaleOrderBorrowerSid()).getData();
if (busSalesOrderLoancontracts == null || busSalesOrderLoancontracts.isEmpty()) {
return rb.setMsg("未生成消贷合同信息");
}
baseMapper.visit(sid);
@ -223,7 +253,7 @@ public class LoanHomevisitPrepService extends MybatisBaseService<LoanHomevisitPr
loanHomevisitInvestigate.setSaleOrderBorrowerSid(loanHomevisitPrep.getSaleOrderBorrowerSid());
loanHomevisitInvestigateService.save(loanHomevisitInvestigate);
//修改销售订单贷款人家访状态
busSalesOrderBorrowerFeign.updateBusNo("302","家访考察", loanHomevisitPrep.getSaleOrderBorrowerSid());
busSalesOrderBorrowerFeign.updateBusNo("302", "家访考察", loanHomevisitPrep.getSaleOrderBorrowerSid());
//修改车辆状态表家访状态
List<BusSalesOrderVehicle> busSalesOrderVehicles = busSalesOrderVehicleFeign.selectListByOrderSid(loanHomevisitPrep.getSaleOrderSid()).getData();
List<BaseVehicleStateDto> baseVehicleStateDtoArrayList = new ArrayList<>();
@ -246,16 +276,47 @@ public class LoanHomevisitPrepService extends MybatisBaseService<LoanHomevisitPr
public ResultBean<String> saveLoanCon(String sid, String conSetUpKey) {
ResultBean<String> rb = ResultBean.fireFail();
LoanHomevisitPrepVo loanHomevisitPrepVo = baseMapper.selectDetails(sid);
List<BusSalesOrderVehicle> busSalesOrderVehicles = busSalesOrderVehicleFeign.selectListByOrderSidAndDkrSid(loanHomevisitPrepVo.getSaleOrderSid(),loanHomevisitPrepVo.getBorrowerSid()).getData();
List<BusSalesOrderVehicle> busSalesOrderVehicles = busSalesOrderVehicleFeign.selectListByOrderSidAndDkrSid(loanHomevisitPrepVo.getSaleOrderSid(), loanHomevisitPrepVo.getBorrowerSid()).getData();
BusSalesOrder busSalesOrder = busSalesOrderFeign.fetchBySid(loanHomevisitPrepVo.getSaleOrderSid()).getData();
busSalesOrderLoancontractFeign.delByOrderSidAndDkrSid(loanHomevisitPrepVo.getSaleOrderSid(),loanHomevisitPrepVo.getBorrowerSid());
//构建生成参数
PrintConfirmDto printConfirmDto = new PrintConfirmDto();
CommonContract commonContract = commonContractFeign.selectByNo(loanHomevisitPrepVo.getContractNo()).getData();
printConfirmDto.setSid(commonContract.getSid());
printConfirmDto.setBusSid(loanHomevisitPrepVo.getSaleOrderSid());
BusSalesOrderBorrowerDetailsVo busSalesOrderBorrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(loanHomevisitPrepVo.getBorrowerSid()).getData();
printConfirmDto.setCustomerSid(busSalesOrderBorrowerDetailsVo.getCustomSid());
printConfirmDto.setBorrowerSid(busSalesOrderBorrowerDetailsVo.getSid());
printConfirmDto.setContractNo(loanHomevisitPrepVo.getContractNo());
printConfirmDto.setCustomerName(loanHomevisitPrepVo.getBorrowerName());
printConfirmDto.setDiscountKey("0");
printConfirmDto.setInsuranceKey("0");
LoanHomevisitPrep loanHomevisitPrep = fetchBySid(sid);
printConfirmDto.setUserSid(loanHomevisitPrep.getCreateBySid());
//查询销售订单的信息
ResultBean<AppOrderDetailsVo> resultBean = busSalesOrderFeign.getSaleOrderDetails(loanHomevisitPrepVo.getSaleOrderSid());
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
AppOrderDetailsVo appOrderDetailsVo = resultBean.getData();
//甲方
String createOrgName = appOrderDetailsVo.getSalesOrg();
printConfirmDto.setCreateOrgName(createOrgName);
busSalesOrderLoancontractFeign.delByOrderSidAndDkrSid(loanHomevisitPrepVo.getSaleOrderSid(), loanHomevisitPrepVo.getBorrowerSid());
String urlAll = "";
String urlAllVo = "";
List<File> filesList = new ArrayList<>();
//贷款人生成车辆买卖合同
List<File> xcmmContractUrls = commonContractFeign.xcmmContract(printConfirmDto).getData();
for (File xcmmContractUrl : xcmmContractUrls) {
filesList.add(xcmmContractUrl);
}
if (conSetUpKey.equals("001")) {//一车一合同
for (BusSalesOrderVehicle busSalesOrderVehicle : busSalesOrderVehicles) {
//获取相同合同号的最大流水号
String num = busSalesOrderLoancontractFeign.checkContractNo(busSalesOrder.getContractNo()).getData();
if (StringUtils.isBlank(num)){
if (StringUtils.isBlank(num)) {
num = String.format("%02d", 1);
}else {
} else {
num = String.format("%02d", Integer.parseInt(num) + 1);
}
BusSalesOrderLoancontractDto busSalesOrderLoancontractDto = new BusSalesOrderLoancontractDto();
@ -270,13 +331,25 @@ public class LoanHomevisitPrepService extends MybatisBaseService<LoanHomevisitPr
busSalesOrderLoancontractDto.setBusName("资方终审确认");
String loanContractSid = busSalesOrderLoancontractFeign.save(busSalesOrderLoancontractDto).getData();
busSalesOrderVehicleFeign.updateXDCon(busSalesOrderVehicle.getSid(), loanContractSid);
//生成车辆融资协议
String clrzxyUrl = generateCLRZXY(printConfirmDto);
//生成还款协议
String hkxy = hkxy(printConfirmDto);
if (StringUtils.isNotBlank(clrzxyUrl)) {
File file = new File(docPdfComponent.getUploadTemplateUrl() + clrzxyUrl);
filesList.add(file);
}
if (StringUtils.isNotBlank(hkxy)) {
File file = new File(docPdfComponent.getUploadTemplateUrl() + hkxy);
filesList.add(file);
}
}
} else if (conSetUpKey.equals("002")) {//一人一合同
//获取相同合同号的最大流水号
String num = busSalesOrderLoancontractFeign.checkContractNo(busSalesOrder.getContractNo()).getData();
if (StringUtils.isBlank(num)){
if (StringUtils.isBlank(num)) {
num = String.format("%02d", 1);
}else {
} else {
num = String.format("%02d", Integer.parseInt(num) + 1);
}
BusSalesOrderLoancontractDto busSalesOrderLoancontractDto = new BusSalesOrderLoancontractDto();
@ -293,33 +366,238 @@ public class LoanHomevisitPrepService extends MybatisBaseService<LoanHomevisitPr
for (BusSalesOrderVehicle busSalesOrderVehicle : busSalesOrderVehicles) {
busSalesOrderVehicleFeign.updateXDCon(busSalesOrderVehicle.getSid(), loanContractSid);
}
//生成车辆融资协议
String clrzxyUrl = generateCLRZXY(printConfirmDto);
//生成还款协议
String hkxy = hkxy(printConfirmDto);
if (StringUtils.isNotBlank(clrzxyUrl)) {
File file = new File(docPdfComponent.getUploadTemplateUrl() + clrzxyUrl);
filesList.add(file);
}
//贷款人生成车辆买卖合同
PrintConfirmDto printConfirmDto = new PrintConfirmDto();
CommonContract commonContract = commonContractFeign.selectByNo(loanHomevisitPrepVo.getContractNo()).getData();
printConfirmDto.setSid(commonContract.getSid());
printConfirmDto.setBusSid(loanHomevisitPrepVo.getSaleOrderSid());
BusSalesOrderBorrowerDetailsVo busSalesOrderBorrowerDetailsVo = busSalesOrderBorrowerFeign.fetchDetailsBySid(loanHomevisitPrepVo.getBorrowerSid()).getData();
printConfirmDto.setCustomerSid(busSalesOrderBorrowerDetailsVo.getCustomSid());
printConfirmDto.setBorrowerSid(busSalesOrderBorrowerDetailsVo.getSid());
printConfirmDto.setContractNo(loanHomevisitPrepVo.getContractNo());
printConfirmDto.setCustomerName(loanHomevisitPrepVo.getBorrowerName());
printConfirmDto.setDiscountKey("0");
printConfirmDto.setInsuranceKey("0");
LoanHomevisitPrep loanHomevisitPrep = fetchBySid(sid);
printConfirmDto.setUserSid(loanHomevisitPrep.getCreateBySid());
//查询销售订单的信息
ResultBean<AppOrderDetailsVo> resultBean = busSalesOrderFeign.getSaleOrderDetails(loanHomevisitPrepVo.getSaleOrderSid());
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
if (StringUtils.isNotBlank(hkxy)) {
File file = new File(docPdfComponent.getUploadTemplateUrl() + hkxy);
filesList.add(file);
}
AppOrderDetailsVo appOrderDetailsVo = resultBean.getData();
}
//合并pdf文件
if (filesList.size() > 0) {
String typeName = appOrderDetailsVo.getPayType() + printConfirmDto.getContractNo() + ".pdf";
try {
File allFile = WordConvertUtils.mulFile2One(filesList, docPdfComponent.getUploadTemplateUrl() + typeName);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("-========" + docPdfComponent.getUploadTemplateUrl() + typeName);
urlAll = typeName;
}
if (StringUtils.isNotBlank(urlAll)) {
urlAllVo = docPdfComponent.getPrefixTemplateUrl() + urlAll;
}
return rb.success().setData(urlAllVo);
}
public String generateCLRZXY(PrintConfirmDto printConfirmDto) {
Map<String, Object> map = new HashMap<>();
//甲方
String createOrgName = appOrderDetailsVo.getSalesOrg();
printConfirmDto.setCreateOrgName(createOrgName);
List<PrintConfirmVo> printConfirmVos = commonContractFeign.xcmmContract(printConfirmDto).getData();
String xcmmContractUrl = printConfirmVos.get(0).getDownloadUrl();
return rb.success();
map.put("partyA", printConfirmDto.getCreateOrgName());
//乙方
map.put("partyB", printConfirmDto.getCustomerName());
//乙方身份证号
CrmCustomerTemp crmCustomerTemp = crmCustomerTempFeign.fetchEntity(printConfirmDto.getCustomerSid()).getData();
map.put("idNo", crmCustomerTemp.getIDNumber());
//签订时间
map.put("date", "");
//签订地点
List<FinVehicleInvoice> finVehicleInvoices = finVehicleInvoiceFeign.selectByContractNo(printConfirmDto.getContractNo()).getData();
if (finVehicleInvoices.size() > 0) {
map.put("address", finVehicleInvoices.get(0).getAddress());
} else {
map.put("address", "");
}
//资金提供方
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsService.selectDetails(printConfirmDto.getBusSid()).getData();
if (StringUtils.isBlank(solutionsDetailsVo.getPolicySid())) {
map.put("bankName", "无");
} else {
LoanFinPolicy loanFinPolicy = loanFinPolicyService.fetchBySid(solutionsDetailsVo.getPolicySid());
LoanFinBank loanFinBank = loanFinBankService.fetchBySid(loanFinPolicy.getBankSid());
map.put("bankName", loanFinBank.getBankName());
}
//融资类型
map.put("downPayType", "");
//融资项目
//主车
map.put("zc", "☑");
//挂车
if (solutionsDetailsVo.isTrailerAmountCb()) {
map.put("gc", "☑");
} else {
map.put("gc", "□");
}
//保险
if (solutionsDetailsVo.isPremiumCb()) {
map.put("bx", "☑");
} else {
map.put("bx", "□");
}
//购置税
if (solutionsDetailsVo.isPurchaseTaxCb()) {
map.put("gzs", "☑");
} else {
map.put("gzs", "□");
}
//配件
if (solutionsDetailsVo.isAccessoriesAmountCb()) {
map.put("pj", "☑");
} else {
map.put("pj", "□");
}
//融资金额
map.put("downPayMoney", solutionsDetailsVo.getLoanTotal());
//保证金款项
map.put("bondAmounts", solutionsDetailsVo.getBondAmounts());
//车辆落户保证金
map.put("carAmounts", solutionsDetailsVo.getDepositSettle());
//保险保证金
map.put("premAmounts", solutionsDetailsVo.getDepositPremium());
//咨询服务费
map.put("serviceAmounts", solutionsDetailsVo.getServiceAmount());
//代收首年保险费
map.put("proxyPremium", solutionsDetailsVo.getProxyPremium());
//代收购置税
map.put("proxyPurch", solutionsDetailsVo.getProxyPurchasetax());
//代收意外险
map.put("proxyAcciden", solutionsDetailsVo.getProxyAccidentPremium());
//杂费
map.put("otherAmount", solutionsDetailsVo.getOtherAmount());
//合计
map.put("totalMoney", new BigDecimal(solutionsDetailsVo.getBondAmounts())
.add(new BigDecimal(solutionsDetailsVo.getDepositSettle())
.add(new BigDecimal(solutionsDetailsVo.getDepositPremium())
.add(new BigDecimal(solutionsDetailsVo.getServiceAmount())
.add(new BigDecimal(solutionsDetailsVo.getProxyPremium())
.add(new BigDecimal(solutionsDetailsVo.getProxyPurchasetax())
.add(new BigDecimal(solutionsDetailsVo.getProxyAccidentPremium())
.add(new BigDecimal(solutionsDetailsVo.getOtherAmount())))))))).toString());
//融资款的分配
map.put("rzfp", "");
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ftl/" + "clrzxy" + ".ftl");
//生成word文件名
String targetPath = docPdfComponent.getUploadTemplateUrl();
String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
long seconds = System.currentTimeMillis();
String typeName = dateStr + seconds + ".doc";
File file = new File(targetPath + "clrzxy" + seconds + ".ftl");
File dir = new File(targetPath);
WordConvertUtils.inputStreamToFile(inputStream, file);
WordConvertUtils.creatWord1(map, file, targetPath, typeName, dir);
//新生成的word路径
String wordPath = targetPath + typeName;
//生成文件名
String pdfName = "车辆融资协议_" + dateStr + seconds + ".pdf";
WordConvertUtils.doc2pdf(wordPath, targetPath, pdfName);
return pdfName;
}
public String hkxy(PrintConfirmDto printConfirmDto) {
Map<String, Object> map = new HashMap<>();
//签订时间
map.put("date", "");
List<FinVehicleInvoice> finVehicleInvoices = finVehicleInvoiceFeign.selectByContractNo(printConfirmDto.getContractNo()).getData();
if (finVehicleInvoices.size() > 0) {
//签订地
map.put("address", finVehicleInvoices.get(0).getAddress());
//甲方统一社会信用代码
map.put("registNum", finVehicleInvoices.get(0).getTaxpayerNo());
//甲方地址
map.put("parAddress", finVehicleInvoices.get(0).getAddress());
} else {
//签订地
map.put("address", "");
//甲方统一社会信用代码
map.put("registNum", "");
//甲方地址
map.put("parAddress", finVehicleInvoices.get(0).getAddress());
}
//甲方
map.put("partyA", printConfirmDto.getCreateOrgName());
//乙方
map.put("partyB", printConfirmDto.getCustomerName());
//乙方身份证号
CrmCustomerTemp crmCustomerTemp = crmCustomerTempFeign.fetchEntity(printConfirmDto.getCustomerSid()).getData();
map.put("idNo", crmCustomerTemp.getIDNumber());
//乙方电话
map.put("parBphone", crmCustomerTemp.getMobile());
//乙方户籍地址
map.put("parBaddress", crmCustomerTemp.getAddress());
//乙方实际居住地址
map.put("parBxaddress", crmCustomerTemp.getAddress());
//丙方
map.put("partyC", "");
//丙方身份证号
map.put("parCidNo", "");
//丙方电话
map.put("parCphone", "");
//丙方户籍地址
map.put("parCaddress", "");
//丙方实际居住地址
map.put("parCxaddress", "");
//丁方
map.put("partyD", "");
//丁方统一社会信用代码
map.put("partyDregistNum", "");
//丁方负责人
map.put("partyDfzr","");
//丁方电话
map.put("partyDphone","");
//丁方注册地址
map.put("partyDaddress", "");
//丁方实际经营地址
map.put("partyDxaddress", "");
//戊方
map.put("partyE", "");
//戊方身份证号
map.put("partyEidNo", "");
//戊方电话
map.put("partyEphone", "");
//戊方户籍地址
map.put("partyEaddress", "");
//戊方实际居住地址
map.put("partyExaddress", "");
//己方
map.put("partyF", "");
//己方身份证号
map.put("partyFidNo", "");
//己方电话
map.put("partyFphone", "");
//己方户籍地址
map.put("partyFaddress", "");
//己方实际居住地址
map.put("partyFxaddress", "");
//车辆登记在 □ 乙方 □ 丁方名下
map.put("yf","□");
map.put("df","□");
//连带还款责任 □丙方、 □丁方、 □戊方、 □己方为连带还款人
map.put("bf","");
map.put("dfTwo","");
map.put("mf","");
map.put("yfwldhk","");
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ftl/" + "hkxy" + ".ftl");
//生成word文件名
String targetPath = docPdfComponent.getUploadTemplateUrl();
String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
long seconds = System.currentTimeMillis();
String typeName = dateStr + seconds + ".doc";
File file = new File(targetPath + "hkxy" + seconds + ".ftl");
File dir = new File(targetPath);
WordConvertUtils.inputStreamToFile(inputStream, file);
WordConvertUtils.creatWord1(map, file, targetPath, typeName, dir);
//新生成的word路径
String wordPath = targetPath + typeName;
//生成文件名
String pdfName = "还款协议_" + dateStr + seconds + ".pdf";
WordConvertUtils.doc2pdf(wordPath, targetPath, pdfName);
return pdfName;
}
public ResultBean saveHomeVisit(HomeVisitDto dto) {

3962
anrui-riskcenter/anrui-riskcenter-biz/src/main/resources/ftl/clrzxy.ftl

File diff suppressed because it is too large

9825
anrui-riskcenter/anrui-riskcenter-biz/src/main/resources/ftl/hkxy.ftl

File diff suppressed because it is too large

3962
工作内容需要的文档/单据模板/车辆融资协议打印模板/clrzxy.ftl

File diff suppressed because it is too large

91
工作内容需要的文档/单据模板/车辆融资协议打印模板/车辆融资协议.docx

@ -0,0 +1,91 @@
车 辆 融 资 协 议
甲方: ${partyA!}
乙方: ${partyB!} 身份证号:${idNo!}
签订时间: ${date!} 签订地点:${address!}
甲方协助乙方办理车辆融资,本协议各方当事人本着自愿、平等原则,经充分协商,签订本合同,以共同遵守。
第一条 甲乙双方一致认可以下事项
1、乙方办理车辆融资指乙方办理车辆消费贷款或融资租赁业务获得资金支持。融资车辆系购买甲方的车辆或乙方自有的车辆(含自购保险、购置税及其他),具体以融资合同载明的车辆为准。
2、资金提供方系为乙方提供资金的银行、财务公司、融资租赁公司等,由乙方自行选择确定,本协议及还款协议中均称资金提供方。
3、乙方办理的融资业务以乙方与资金提供方签署的合同为准。资金提供方拒绝为乙方提供资金款项,甲方不承担责任。乙方与资金提供方签署的合同称为融资合同。
4、乙方按照本协议和融资合同的约定全面履行义务。甲方为乙方向资金提供方提供连带责任担保。
5、乙方融资完成,甲方对乙方的咨询服务履行完毕。
第二条 融资项目、融资金额、融资所需费用
资金提供方
${bankName!}
融资类型
${downPayType!}
融资项目
☑主车 □挂车 □保险 □购置税 □配件
融资金额
${downPayMoney!}
乙方应付甲方费用明细
项目
金额
1
保证金款项
${bondAmounts!}
2
车辆落户保证金
${carAmounts!}
3
保险保证金
${premAmounts!}
4
咨询服务费
${serviceAmounts!}
5
代收首年保险费
${proxyPremium!}
6
代收购置税
${proxyPurch!}
7
代收意外险
${proxyAcciden!}
8
杂费
${otherAmount!}
9
合计
${totalMoney!}
融资款的分配
${rzfp!}
第三条 融资资料签署
1、本协议签订视为乙方同意甲方、资金提供方查询其征信。
2、本协议签订后乙方应按资金提供方要求提交融资所需材料,配合资金提供方办理融资手续,签署相应的合同。
3、无论何时,资金提供方要求重新提交材料、重新签署合同,乙方均应予配合。乙方拒绝配合的,视为乙方不再办理车辆融资业务。
第四条 担保
1、甲方为乙方向资金提供方提供连带责任担保。
2、因甲方对资金提供方具有担保义务,乙方未按约定日期、数额偿还资金提供方相关款项的,甲方无须通知乙方即可履行担保责任,垫款偿付资金提供方的相关款项,该款项称为甲方履行担保义务垫款。
3、甲方有权根据自身资金情况选择垫款日期,垫款数额。
4、乙方应及时偿还甲方履行担保义务垫款。
5、乙方先行向甲方支付保证金款项。甲方根据融资合同使用保证金款项。融资合同中,资金提供方收取乙方保证金的,该款项由甲方交给资金提供方(方式:资金提供方在发放融资款时直接扣除),此时,该保证金系乙方向资金提供方交纳的保证金。融资合同中,资金提供方未收取乙方保证金的,该款项留在甲方,此时,该保证金系乙方向甲方还款的履约保证金。
第五条 争议解决
本合同项下发生的争议双方协商解决。如果协商不成,双方均可向本协议载明的签订地人民法院提起诉讼解决。
第六条 合同生效
本协议自各方当事人签字或盖章完毕之日起生效。
特别提示:本合同系各方当事人协商确定,甲方提请各方当事人详细阅读所有条款并充分理解其含义及其法律后果,尤其是关于双方权利义务和管辖条款的约定。
如有不明条款或其他约定可在下列补充条款中予以补充约定。
补充条款:
如对所有条款的含义及相应的法律后果全部知晓并充分理解后签署本合同。
甲方(盖章): 乙方(签名按手印):

9825
工作内容需要的文档/单据模板/还款协议打印模板/hkxy.ftl

File diff suppressed because it is too large

283
工作内容需要的文档/单据模板/还款协议打印模板/还款协议.docx

@ -0,0 +1,283 @@
还 款 协 议
签订时间:${date!} 签订地:${address!}
甲 方
${partyA!}
统一社会信用代码
${registNum!}
地 址
${parAddress!}
乙 方
${partyB!}
身份证号
${idNo!}
电话
${parBphone!}
户 籍 地 址
${parBaddress!}
实际居住地址
${parBxaddress!}
丙 方
${partyC!}
身份证号
${parCidNo!}
电话
${parCphone!}
户 籍 地 址
${parCaddress!}
实际居住地址
${parCxaddress!}
丁 方
${partyD!}
统一社会信用代码
${partyDregistNum!}
负责人
${partyDfzr!}
电话
${partyDphone!}
注 册 地 址
${partyDaddress!}
实际经营地址
${partyDxaddress!}
戊 方
${partyE!}
身份证号
${partyEidNo!}
电话
${partyEphone!}
户 籍 地 址
${partyEaddress!}
实际居住地址
${partyExaddress!}
己 方
${partyF!}
身份证号
${partyFidNo!}
电话
${partyFphone!}
户 籍 住 址
${partyFaddress!}
实际居住地址
${partyFxaddress!}
根据甲乙双方签订的《车辆买卖合同》、《车辆融资协议》,乙方负有 向甲方还款的义务。为保证甲方权益,本协议各方当事人本着自愿、平等
原则,经充分协商,签订本协议,以共同遵守。
第一条 本协议各方当事人均认可以下事实
1、乙方负有按照《车辆买卖合同》的约定偿还甲方车辆价款欠款及 分期利息的义务。如未能办理车辆融资,乙方负有向甲方一次性偿还全部 车辆价款的义务。如未能办理车辆融资,甲方为乙方垫付其他费用的,乙
方负有向甲方一次性偿还全部垫款的义务。
2、乙方负有按照融资合同的约定向资金提供方还款的义务。甲方对 资金提供方负有连带担保责任。甲方履行担保义务后,乙方负有偿还甲方
履行担保义务垫款的义务。
3、甲方为乙方垫款支付融资车辆次年或以后年度车辆保险费的,乙
方负有偿还甲方保险费垫款的义务。
4、各连带还款人均系自愿加入乙方的债务偿还,各连带还款人负有
与乙方连带偿还本合同项下所有债务的义务。
5、乙方违约,乙方负有向甲方支付资金占用费或违约金的义务。
第二条 车辆价款欠款偿还
1、如乙方选择车辆价款欠款分期偿还的,乙方应按约定时间、数额 偿还车辆价款及分期利息。乙方未及时足额偿还甲方车辆价款及车辆价款 分期利息的,乙方应向甲方支付资金占用费。资金占用费按每月欠款数额 分别计算,计算期间为每月还款日次日起至实际偿还之日。资金占用费计
算方式为:当月欠款金额x天数x千分之一。
2、无论何种原因,自标的车辆交付之日起 60 日内甲方未能收到融资 款,乙方应一次性偿还全部车辆价款。同时乙方应向甲方支付资金占用费。 资金占用费按乙方欠款金额计算,计算期间为标的车辆交付之日起至实际
偿还之日。资金占用费计算方式为:车辆价款欠款总金额x天数x千分之
一 。
3、无论何种原因,自甲方垫款之日起 60 日内甲方未能收到融资款, 乙方应一次性偿全部垫款(包含但不限于挂车垫款、首年保险费垫款、购 置税垫款以及融资所需垫款)。同时乙方应向甲方支付资金占用费。资金 占用费按乙方欠款金额计算,计算期间为甲方垫款之日起至实际偿还之日,
计算方式为:垫款欠款总金额x天数x千分之一。
第三条 履行担保义务垫款偿还
1、因甲方对资金提供方具有担保义务,乙方未按约定日期、数额偿 还资金提供方相关款项的,甲方无须通知乙方即可履行担保责任,垫款偿 付资金提供方的相关款项。甲方有权根据自身资金情况选择垫款日期、垫 款数额,甲方亦有权选择提前一次性结清资金提供方全部款项。乙方对甲 方垫款数额有异议,不影响乙方向甲方的还款义务,乙方应先偿还甲方再
向资金提供方申请解决。
2、乙方应在甲方垫款次日偿还甲方履行担保义务垫款。乙方未按约 定及时足额偿还甲方履行担保义务垫款的,乙方应向甲方支付资金占用费。 资金占用费按每月欠款金额分别计算,计算期间为每月垫款次日起至实际
偿还之日。资金占用费计算方式为:当月欠垫款金额x天数x千分之一。
第四条 融资车辆保险
1、因甲方负有担保义务,乙方应按照融资合同的约定办理车辆保险。 如资金提供方款项已经还清,但乙方尚欠甲方款项的,在还清甲方欠款前
也应参照融资合同约定办理车辆保险,否则视为违约。
乙方未购买融资车辆次年或以后年度保险,甲方有权选择垫款为融资 车辆购买保险,险种、保额参照上一年度的执行。如甲方未垫款购买融资
车辆保险,甲方不承担责任。
2、融资车辆保险险种至少包含交强险、车损险、第三者责任险、车 上人员责任险、盗抢险、自燃险及不计免赔等。甲方鼓励乙方购买上述险 种以外的保险,以降低融资车辆经营风险。乙方购买的融资车辆险种(含 首年保险、以后年度保险)、保额以保险单为准,系乙方自行选择购买,
乙方自行承担险种不全、保额不足的风险。
3、融资车辆发生交通事故,应及时报警,并通知甲方和保险公司。 乙方应积极维修车辆,申请保险理赔。如融资车辆不能修复或没有修复必 要的,乙方亦应当向保险公司申请理赔。乙方拒不提供理赔资料和申请保 险理赔的,乙方承担保险公司未能赔偿的后果和损失。保险公司拒赔、免
赔部分由乙方自行承担。
4、融资车辆因交通事故导致损坏、灭失不影响乙方向甲方、资金提 供方的还款义务。乙方同意甲方直接接收融资车辆保险理赔款,该款视为 乙方向甲方的还款,甲方退还给乙方部分的除外。如融资车辆不能修复或 没有修复必要的,保险理赔款不足以支付甲方和资金提供方的款项的,乙
方有义务继续支付。
5、融资车辆因乙方违约被代管后,为减少乙方的损失,可先办理退
第七条 融资车辆登记
保手续,甲方收到的保险公司保费退费视为乙方向甲方的还款。乙方还清 欠款继续经营标的车辆的,应重新按照约定购买保险。因退保造成的损失由乙方承担。
第五条 保险费垫款的偿还
甲方垫款为乙方购买融资车辆次年或以后年度保险的,乙方应在前一 年度保险到期后次日偿还甲方保险费垫款,如逾期,乙方应向甲方支付资 金占用费。资金占用费计算期间为自垫款之日起至实际偿还之日。资金占
用费计算方式为:保险费垫款金额x天数x千分之一。
乙方选择分期支付保险费垫款,乙方向甲方支付保险费垫款分期利息。 乙方应签署《保险费垫款偿还承诺书》。乙方未按承诺时间、数额偿还保 险费垫款及保险费垫款分期利息,乙方应向甲方支付资金占用费。资金占 用费按每月欠款金额分别计算,计算期间为每月还款日次日起至实际偿还
之日。资金占用费计算方式为:当月欠款金额x天数x千分之一。
第六条 乙方偿还甲方款项分配顺序
先结算当月履行担保义务垫款,再结算保险费垫款及保险费垫款分期 利息(该项先本后息),最后结算所欠车辆价款及车辆价款分期利息(该 项先本后息)。当月结清后有剩余款项的,转入上月应还款项,再次按照 前述顺序结算,直到结清全部欠款。结清全部欠款后仍有剩余款项的,转
入下月应还款项,按照前述顺序结算。乙方书面告知甲方款项用途的除外。
1、乙方办理融资的车辆登记在□乙方□丁方名下。
2、融资车辆登记在丁方名下的,乙方与丁方权利义务由其双方自行
约定,但不得损害甲方的利益。如有冲突,以本合同约定为准。
3、融资车辆登记在丁方名下,系准予上路行驶的登记,不是所有权
登记。
4、丁方应履行下列义务:(1)配合办理车辆融资(2)配合办理车辆 登记手续(3)配合办理车辆运营相关手续(4)协助办理车辆保险理赔手
续。(5)甲方、乙方需要丁方协助办理的其他业务。
5、甲方变卖融资车辆的,丁方应协助甲方办理融资车辆过户手续。 丁方不得以乙方欠款或其他的任何理由拒绝协助办理过户手续,否则丁方
与乙方连带偿还本协议项下的债务。
第八条 融资车辆使用
1、乙方应妥善使用融资车辆,按规定保养融资车辆。乙方运营融资
车辆所用司机必须具有驾驶融资车辆相应的资质。
2、乙方须按规定办理融资车辆的登记(含改装、维修后登记)、营运、
年检、二级维护等事宜并承担费用。
3、未经甲方书面同意,乙方不得将融资车辆转让、变卖、或进行债
务担保。乙方有义务随时向甲方提供融资车辆位置和使用状况。
4、乙方自愿在融资车辆上安装定位设备(包括但不限于 GPS 定位设 备、北斗定位设备等)。乙方发现定位设备工作异常时须通知甲方。如出 现定位设备丢失或损坏等情形无法继续使用的,甲方有权在融资车辆上重
新安装,相应的费用由乙方承担。
5、融资车辆交付后,融资车辆毁损、灭失的风险由乙方承担。融资
车辆发生毁损,乙方应当自负费用恢复至正常使用状态。毁损情况的发生
不影响乙方的还款义务。
第九条 融资车辆故障解决
乙方在使用融资车辆过程中出现车辆故障,乙方应通过合法途径对融
资车辆故障进行检测,根据检测结果进行处理。
乙方不得以融资车辆出现故障或存在质量问题为由妨碍甲方的正常
经营或拒绝偿还甲方和资金提供方的相应款项。
第十条 融资车辆代管、变卖
1、乙方未按约定向甲方和资金提供方还款的,甲方有权代管融资车 辆。甲方代管融资车辆应依据乙方出具的《代管车辆授权委托书》中授权
及承诺事项进行。乙方未出具委托书的,该条款不适用。
2、甲方代管融资车辆的行为不免除乙方向甲方、资金提供方的还款 义务。甲方代管融资车辆的行为不影响甲方向资金提供方履行担保义务。 甲方处置融资车辆所得价款视为乙方向甲方的还款,按照本协议约定进行
结算。乙方自行承担融资车辆代管期间的贬值损失。
3、甲方代管融资标的车辆时,乙方须予以配合(包括但不限于主动 将车辆送回、提供车辆所在位置、通知驾驶人员或随乘人员配合等),不 得直接或间接采取阻挠手段。甲方代管融资车辆所产生的相关费用由乙方 承担,因代管融资车辆所产生的损失(包括但不限于车辆毁损、停运损失
以及第三人的损失等)均由乙方承担。
4、甲方代管融资车辆后,甲方可以选择向乙方追偿欠款,也可以选
择变卖融资车辆。
5、甲方代管融资车辆后选择追偿欠款的,乙方还清甲方和资金提供
方的所有款项后,甲方将融资车辆归还乙方。甲方代管融资车辆后选择变 卖融资车辆的,甲方应委托车辆评估机构对融资车辆价值进行评估,乙方 同意按照不低于评估价值 80%的价格进行转卖,评估费由乙方承担。融资
车辆变卖的,乙方、丁方应协助办理车辆过户手续。
第十一条 违约责任
1、乙方存在任何一项违约行为,甲方收取的履约保证金作为惩罚性
违约金不予退还。
2、乙方未按约定及时足额偿还甲方履行担保义务垫款、保险费垫款 及保险费垫款分期利息、车辆价款欠款及车辆价款欠款分期利息的,甲方 有权要求乙方一次性偿还上述款项项下的欠款。同时,甲方可以选择要求 乙方支付资金占用费或选择要求乙方支付违约金。资金占用费按照本协议 约定计算。违约金按履行担保义务垫款、保险费垫款、车辆价款欠款等款
项项下欠款总额 30%计算。
3、乙方未及时足额向甲方或资金提供方偿还相关款项或有其他违约 情形的,甲方有权行使本合同第十条约定的代管、变卖融资车辆的权利。 融资车辆变卖价款扣除评估费后的款项视为乙方向甲方的还款。如有剩余
退还乙方。如不足,甲方有权就不足部分向乙方追偿。
4、乙方违约,甲方为实现债权而产生的律师代理费、财产保全责任
保险费、保全费、诉讼费、差旅费均由乙方承担。
5、因乙方未按约定向甲方、资金提供方还款,甲方有权采取下列措
施以督促乙方履行还款义务,产生的费用和损失由乙方承担。
(1)甲方工作人员上门催收,每人次 5000 元。
(2)通过技术手段锁定车辆,每台次 5000 元
(3)代管车辆,每次 10000 元
第十二条 连带还款责任
1、 □丙方、 □丁方、 □戊方、 □己方为连带还款人。
2、各连带还款人自愿加入乙方债务,与乙方连带偿还本协议项下对 甲方的所有债务,承担连带还款责任,连带还款范围包括但不限于(1) 车辆价款欠款及分期利息(2)保险垫款及分期利息(3)甲方履行担保义
务垫款(4)甲方为实现债权而产生的费用(5)其他乙方应还甲方的款项。
3、甲方有权要求各连带还款人在连带还款范围内与乙方连带偿还甲
方债务。甲方要求各连带还款人还款不分份额及先后顺序。
4、甲方与乙方签署的补充协议及乙方向甲方作出的任何承诺,各连
带还款人均认可并承担连带还款责任。
5、如丁方为连带还款人,丁方还款责任不受车辆是否过户影响,丁
方应无条件的履行连带还款责任。
第十三条 纠纷解决
本协议项下发生的争议协商解决。如果协商不成,各方当事人均可向 本协议载明的签订地人民法院提起诉讼解决。实际签订地与本协议载明的
签订地不一致的以本协议载明的签订地为准。
第十四条 送达
本协议各方当事人就本协议中涉及各类通知以及就本协议发生纠纷
后管辖法院法律文书送达时的送达地址及法律后果作如下约定:
1、本协议各方当事人在本协议载明的实际居住地址、联系方式是真
实、准确的。
2、各方当事人一致确认本协议载明的实际居住地址为本合同中各方 当事人涉及各类通知以及本协议发生纠纷后管辖法院法律文书送达时的
送达地址。
3、本协议载明的送达地址、联系方式使用期间包括协议履行期间以
及诉讼阶段,诉讼阶段包括但不限于一审、二审、再审、执行等。
4、本协议任何一方需要变更送达地址或联系方式的,应书面通知其 他方。如在诉讼期间变更送达地址,还应书面通知管辖法院。送达地址变
更并有效通知法院后,以变更后的地址为新的约定送达地址。
5、如本协议任何一方出现以下情形,导致协议中涉及的各类通知及 管辖法院法律文书无法实际送达,应自行承担相应的法律后果。邮寄送达
的,以文书退回之日视为送达之日,视为已经有效送达。
(1)、确认的送达地址或者联系方式不准确、不真实,导致无法联系
受送达人的。
(2)、送达地址变更后未及时书面通知合同其他方和管辖法院。
(3)、受送达人拒绝签收。
第十五条 合同生效
本协议自各方当事人签字或盖章完毕之日起生效。
特别提示:本合同系各方当事人协商确定,甲方提请各方当事人详 细阅读所有条款并充分理解其含义及其法律后果,尤其是关于双方权利
义务和管辖条款的约定。
如有不明条款或其他约定可在下列补充条款中予以补充约定。
补充条款:
如对所有条款的含义及相应的法律后果全部知晓并充分理解后签署
本合同。
甲 方
丁 方
乙 方
戊 方
丙 方
己 方
授权委托人:
附件一 代管车辆授权委托书
签署时间:${date!}
委托人:${partyB!} 身份证号:${idNo!}
受委托人:${partyA!}
根据委托人与受委托人签订的《还款协议》,委托人负有向受委托人 还款的义务。为维护受委托人的权益,委托人同意并授权受委托人办理以
下事项:
1、委托人未按《还款协议》约定还款,受委托人可以行使《还款协
议》第十条约定的代管融资车辆的权利,依约代管融资车辆。
2、融资车辆被代管,受委托人可以行使《还款协议》第十条第 5 项
约定的变卖融资车辆的权利,依约变卖融资车辆,收取融资车辆变卖价款。
3、受委托人变卖融资车辆,受委托人选取有资质的车辆评估公司对 融资车辆进行评估,受委托人可以按照不低于评估价值 80%的价格变卖融
资车辆。
委托人向受委托人承诺如下:
1、委托人自行承担融资车辆代管、变卖的法律后果。
2、委托人自行承担融资车辆代管期间的贬值损失。
3、委托人认可评估公司对融资车辆的评估结果,认可融资车辆的变
卖价格,委托人承担评估费。
4、委托人不以任何理由对抗该授权委托书中委托及承诺事项。
5、本授权委托为不可撤销,有效期自本授权委托书出具之日起至我
还清所有债务之日止。
Loading…
Cancel
Save