|
|
@ -562,6 +562,7 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
|
|
|
|
/** |
|
|
|
* 打印项设置 |
|
|
|
* |
|
|
|
* @param busSid |
|
|
|
* @return |
|
|
|
*/ |
|
|
@ -575,13 +576,15 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
|
|
|
|
/** |
|
|
|
* 打印项-确认 |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public ResultBean<List<PrintConfirmVo>> printConfirm(PrintConfirmDto dto) { |
|
|
|
Map<String, Object> map = new HashMap<String, Object>(); |
|
|
|
// 合同信息
|
|
|
|
CommonContract contract = new CommonContract();//fetchBySid(dto.getSid());
|
|
|
|
CommonContract contract = fetchBySid(dto.getSid()); |
|
|
|
// CommonContract contract = new CommonContract();//fetchBySid(dto.getSid());
|
|
|
|
map.put("partyA", contract.getPartyA()); // 甲方
|
|
|
|
map.put("partyB", contract.getPartyB()); // 乙方
|
|
|
|
map.put("contractNo", contract.getContractNo()); // 合同编号
|
|
|
@ -700,6 +703,7 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
|
|
|
|
/** |
|
|
|
* 生成 新车买卖合同(现车或订车) pdf |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
*/ |
|
|
|
private String genCarSaleContract(PrintConfirmDto dto, Map<String, Object> map, BusOrderVo order) { |
|
|
@ -727,6 +731,7 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
|
|
|
|
/** |
|
|
|
* 生成 新车买卖合同(现车) (空)pdf |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @param map |
|
|
|
* @param order |
|
|
@ -754,6 +759,7 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
|
|
|
|
/** |
|
|
|
* 生成 客户开票申请书 pdf |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
@ -782,6 +788,7 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
|
|
|
|
/** |
|
|
|
* 生成 车辆登记合同 pdf |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
@ -810,6 +817,7 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
|
|
|
|
/** |
|
|
|
* 生成 委托提车授权书 pdf |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
@ -838,21 +846,22 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
* 生成合同编号 |
|
|
|
* 构成: 品牌简称+车型代号+地区简称+门店名称首字母(遇到重复时用2个字母)+销售区域划分+年份+月份+合同顺序号+类型 |
|
|
|
* 说明:1、合同编号中“年份”和“月份”以交订金时间所属年份和月份划分 |
|
|
|
* 2、顺序号以门店为单位,从001-999号依次按序编写,跨月后,顺序号重新从001开始编写 |
|
|
|
* 3、客户取消业务的此合同编号作废,不得再次使用 |
|
|
|
* 2、顺序号以门店为单位,从001-999号依次按序编写,跨月后,顺序号重新从001开始编写 |
|
|
|
* 3、客户取消业务的此合同编号作废,不得再次使用 |
|
|
|
* 类型: |
|
|
|
* 1、全款销售或消贷的实际购车人签署的车辆买卖合同的合同号此项为空 |
|
|
|
* 2、贷款销售第一个贷款人合同号为:A |
|
|
|
* 3、贷款销售第二个贷款人合同号为:B |
|
|
|
* 4、依据上面规律确定多个贷款人合同号此项编码。 |
|
|
|
* 1、全款销售或消贷的实际购车人签署的车辆买卖合同的合同号此项为空 |
|
|
|
* 2、贷款销售第一个贷款人合同号为:A |
|
|
|
* 3、贷款销售第二个贷款人合同号为:B |
|
|
|
* 4、依据上面规律确定多个贷款人合同号此项编码。 |
|
|
|
* 举例1:陕汽张家口瑞鹏在2021年11月份销售的第3笔载货车销售合同,厂家金融贷款, |
|
|
|
* 系统合同编号为:S1ZR02111003,第一个贷款人消贷系列合同(具体见附件一)编码:S1ZR02111003A, |
|
|
|
* 第二个贷款人消贷系列合同编码:S1ZR02111003B |
|
|
|
* 系统合同编号为:S1ZR02111003,第一个贷款人消贷系列合同(具体见附件一)编码:S1ZR02111003A, |
|
|
|
* 第二个贷款人消贷系列合同编码:S1ZR02111003B |
|
|
|
* 举例2:欧曼福仕达在2021年12月份全款销售的第50笔牵引车销售合同, |
|
|
|
* 《车辆买卖合同(订车/现车)》、《车辆交付确认单》编号为:B4HF02112050 |
|
|
|
* @param brandSid 品牌sid |
|
|
|
* @param modelSid 车型sid |
|
|
|
* @param orgSid 员工组织机构sid |
|
|
|
* 《车辆买卖合同(订车/现车)》、《车辆交付确认单》编号为:B4HF02112050 |
|
|
|
* |
|
|
|
* @param brandSid 品牌sid |
|
|
|
* @param modelSid 车型sid |
|
|
|
* @param orgSid 员工组织机构sid |
|
|
|
* @param createDate 交订金时间(未确定,暂时取“制单日期”) |
|
|
|
* @return |
|
|
|
*/ |
|
|
@ -878,21 +887,23 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
// 消贷类型(???未定)
|
|
|
|
String loanType = ""; |
|
|
|
|
|
|
|
return brandShortName + vehicleTypeCodeNum + orgShortName + regionDivision + yearAndMonth + num + loanType; |
|
|
|
return brandShortName + vehicleTypeCodeNum + orgShortName + regionDivision + yearAndMonth + num + loanType; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 根据传入的交订金时间获取所属年份和月份 |
|
|
|
* |
|
|
|
* @param createDate |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private String getYearAndMonth(String createDate) { |
|
|
|
Date date = DateUtils.dateStrConvertDate(createDate, "yyyy-MM-dd"); |
|
|
|
return new SimpleDateFormat("yy", Locale.CHINESE).format(date) + new SimpleDateFormat("MM", Locale.CHINESE).format(date); |
|
|
|
return new SimpleDateFormat("yy", Locale.CHINESE).format(date) + new SimpleDateFormat("MM", Locale.CHINESE).format(date); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 提交新车买卖合同审核 |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
@ -935,4 +946,108 @@ public class CommonContractService extends MybatisBaseService<CommonContractMapp |
|
|
|
commonContractVo.setSceneSignUrlList(sceneSignUrlList); |
|
|
|
return rb.success().setData(commonContractVo); |
|
|
|
} |
|
|
|
//ToDo:
|
|
|
|
/** |
|
|
|
* 合同信息数据 |
|
|
|
* |
|
|
|
* @param map 封装数据 |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public Map<String, Object> getMap(Map<String, Object> map, PrintConfirmDto dto) { |
|
|
|
Map<String, Object> commonContractMap = map; |
|
|
|
/** |
|
|
|
* 车辆登记合同参数: |
|
|
|
* 甲方:${partyA} |
|
|
|
* 乙方:${partyB} |
|
|
|
* 签订时间:${createDate} |
|
|
|
* 车辆出售方:${partyA} |
|
|
|
* 车辆信息List: |
|
|
|
* { |
|
|
|
* 序号: |
|
|
|
* 品牌:${item.brandName} |
|
|
|
* 车架号:${item.VINNo} |
|
|
|
* 发动机号:${item.engineNo} |
|
|
|
* } |
|
|
|
*/ |
|
|
|
//甲方为卖方,即xxx公司,即根据销售订单的单位sid查询单位的名称
|
|
|
|
//乙方为受卖方,即销售订单的客户名称
|
|
|
|
ResultBean<BusOrderVo> busOrderVoResultBean = busOrderFeign.fetchSid(dto.getBusSid()); |
|
|
|
if (busOrderVoResultBean.getSuccess() && busOrderVoResultBean.getData() != null) { |
|
|
|
BusOrderVo orderVo = busOrderVoResultBean.getData(); |
|
|
|
//乙方
|
|
|
|
commonContractMap.put("partyB", orderVo.getCustomerName()); |
|
|
|
//客户名称
|
|
|
|
commonContractMap.put("customerName", orderVo.getCustomerName()); |
|
|
|
} |
|
|
|
return commonContractMap; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 涉及高低开票的,需要打印两套合同: |
|
|
|
* 1、一套按照成交价打印(记账) |
|
|
|
* 2、一套为价格空白的合同(开票用) |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @param map |
|
|
|
* @param vo |
|
|
|
* @return 按照成交价打印的合同地址 |
|
|
|
*/ |
|
|
|
/* public String getCarContract(PrintConfirmDto dto, Map<String, Object> map, BusOrderVo vo) { |
|
|
|
//下载地址
|
|
|
|
String url = ""; |
|
|
|
//模板名称
|
|
|
|
String typeName = ""; |
|
|
|
//生成的word名称
|
|
|
|
String docName = ""; |
|
|
|
//判断是现车还是订车
|
|
|
|
if ("01".equals(vo.getSaleTypeKey())) { |
|
|
|
//现车
|
|
|
|
//车辆含税总价为:主车单价*数量,大写
|
|
|
|
|
|
|
|
map.put("taxNum", vo.get); |
|
|
|
typeName = ContractTemplateEnum.CARSALECONTRACTNEW.getName(); |
|
|
|
|
|
|
|
} |
|
|
|
if ("02".equals(vo.getSaleTypeKey())) { |
|
|
|
//订车
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}*/ |
|
|
|
|
|
|
|
/** |
|
|
|
* 打印项-确认 |
|
|
|
* |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
/* public ResultBean<List<PrintConfirmVo>> printConfirm1(PrintConfirmDto dto) { |
|
|
|
Map<String, Object> map = new HashMap<>();*/ |
|
|
|
/** |
|
|
|
* 车辆登记合同参数: |
|
|
|
* 甲方:${partyA} |
|
|
|
* 乙方:${partyB} |
|
|
|
* 签订时间:${createDate} |
|
|
|
* 车辆出售方:${partyA} |
|
|
|
* 车辆信息List: |
|
|
|
* { |
|
|
|
* 序号: |
|
|
|
* 品牌:${item.brandName} |
|
|
|
* 车架号:${item.VINNo} |
|
|
|
* 发动机号:${item.engineNo} |
|
|
|
* } |
|
|
|
*/ |
|
|
|
//甲方为卖方,即xxx公司,即根据销售订单的单位sid查询单位的名称
|
|
|
|
//乙方为受卖方,即销售订单的客户名称
|
|
|
|
/* ResultBean<BusOrderVo> busOrderVoResultBean = busOrderFeign.fetchSid(dto.getBusSid()); |
|
|
|
if (busOrderVoResultBean.getSuccess() && busOrderVoResultBean.getData() != null) { |
|
|
|
BusOrderVo orderVo = busOrderVoResultBean.getData(); |
|
|
|
//乙方
|
|
|
|
map.put("partyB", orderVo.getCustomerName()); |
|
|
|
//客户名称
|
|
|
|
map.put("customerName", orderVo.getCustomerName()); |
|
|
|
map.put("mobile", orderVo.getMobile()); |
|
|
|
map.put("IDNumber", orderVo.getIDNumber()); |
|
|
|
}*/ |
|
|
|
// }
|
|
|
|
} |