From 0bf7c269623e38cca7b77f95f74d2029273b5089 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Tue, 30 Jan 2024 14:33:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppCrmCustomerTempDto.java | 3 + .../api/crmcustomertemp/CrmCustomerTemp.java | 69 +++++++-------- .../crmcustomertemp/CrmCustomerTempFeign.java | 7 +- .../CrmCustomerTempFeignFallback.java | 5 ++ .../CustomerSecondSalesDto.java | 40 +++++++++ .../crmcustomertemp/CrmCustomerTempRest.java | 5 ++ .../CrmCustomerTempService.java | 22 ++++- .../LoanSecondarySalesCustomer.java | 35 ++++++++ .../LoanSecondarySalesCustomerDto.java | 38 +++++++++ .../LoanSecondarySalesCustomerFeign.java | 31 +++++++ ...anSecondarySalesCustomerFeignFallback.java | 12 +++ .../SalesInitVo.java | 48 +++++++++++ .../LoanSecondarySalesCustomerMapper.java | 15 ++++ .../LoanSecondarySalesCustomerMapper.xml | 10 +++ .../LoanSecondarySalesCustomerRest.java | 34 ++++++++ .../LoanSecondarySalesCustomerService.java | 83 +++++++++++++++++++ .../secondarysales/SecondarySalesAppVos.java | 3 - doc/databases/risk_center.sql | 31 +++++++ 18 files changed, 453 insertions(+), 38 deletions(-) create mode 100644 anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CustomerSecondSalesDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomer.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerDto.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerFeign.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerFeignFallback.java create mode 100644 anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/SalesInitVo.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerMapper.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerMapper.xml create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerRest.java create mode 100644 anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerService.java diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/AppCrmCustomerTempDto.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/AppCrmCustomerTempDto.java index c6b3f4eb71..46e09938e0 100644 --- a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/AppCrmCustomerTempDto.java +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/AppCrmCustomerTempDto.java @@ -163,4 +163,7 @@ public class AppCrmCustomerTempDto implements Dto { @ApiModelProperty("身份证正反面") private List filePaths = Collections.emptyList(); + @ApiModelProperty("证件地址") + private String certificateAddress; + } \ No newline at end of file diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTemp.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTemp.java index b75abec74a..b3d34767f0 100644 --- a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTemp.java +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTemp.java @@ -25,79 +25,79 @@ import lombok.Data; public class CrmCustomerTemp extends BaseEntity { private static final long serialVersionUID = 1L; - + @ApiModelProperty("客户编号(部门编码+客户类型(1位,0个人,1企业)+部门内部流水号(6位))") private String customerNo; - + @ApiModelProperty("客户类型(自然人/法人)") private String customerType; - + @ApiModelProperty("客户类型key") private String customerTypeKey; - + @ApiModelProperty("客户分类(个人:司机/个体老板/其他。企业:企业型客户/一级经销商/二级经销商/终端物流客户)") private String customerClass; - + @ApiModelProperty("客户分类key") private String customerClassKey; - + @ApiModelProperty("客户来源(公司资源/自主开发/交接客户/转介绍客户/集团内销)") private String source; - + @ApiModelProperty("客户来源key") private String sourceKey; - + @ApiModelProperty("客户级别(意向客户/准客户/成交客户/集团内销/黑名单客户)") private String level; - + @ApiModelProperty("客户级别key") private String levelKey; - + @ApiModelProperty("客户名称") private String name; @ApiModelProperty("证件类型key") private String certificateTypeKey; - + @ApiModelProperty("证件类型(个人为身份证/企业为营业执照)") private String certificateType; - + @ApiModelProperty("证件号码(个人为身份证号/企业为统一社会信用代码)") private String IDNumber; - + @ApiModelProperty("证件有效期") private String endDate; - + @ApiModelProperty("行政区划代码(省)") private String address_province; - + @ApiModelProperty("行政区划代码(市)") private String address_city; - + @ApiModelProperty("行政区划代码(县)") private String address_county; - + @ApiModelProperty("省") private String province; - + @ApiModelProperty("市") private String city; - + @ApiModelProperty("县") private String county; - + @ApiModelProperty("详细地址") private String address; - + @ApiModelProperty("邮编") private String zipCode; - + @ApiModelProperty("电子邮箱") private String e_mail; - + @ApiModelProperty("联系人") private String contacts; - + @ApiModelProperty("联系电话") private String mobile; @@ -106,16 +106,16 @@ public class CrmCustomerTemp extends BaseEntity { @ApiModelProperty("紧急联系电话") private String emergencyMobile; - + @ApiModelProperty("微信号码") private String weixin; - + @ApiModelProperty("业务人员sid") private String staffSid; - + @ApiModelProperty("创建组织sid") private String createOrgSid; - + @ApiModelProperty("性别") private String sex; @@ -124,13 +124,13 @@ public class CrmCustomerTemp extends BaseEntity { @ApiModelProperty("生日") private String birthday; - + @ApiModelProperty("所在公司名称") private String companyName; @ApiModelProperty("跟进状态key") private String follow_state_key; - + @ApiModelProperty("跟进状态") private String follow_state; @@ -139,13 +139,13 @@ public class CrmCustomerTemp extends BaseEntity { @ApiModelProperty("是否开启提醒(1开启,0不开启)") private String isOnRemind; - + @ApiModelProperty("提醒日期") private String remind_day; - + @ApiModelProperty("提醒备注") private String remind_remark; - + @ApiModelProperty("客户头像") private String customerPhoto; @@ -154,4 +154,7 @@ public class CrmCustomerTemp extends BaseEntity { @ApiModelProperty("见面方式(到店/电话/拜访)") private String visitWay; + + @ApiModelProperty("证件地址") + private String certificateAddress; } diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempFeign.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempFeign.java index ba5a25e3d3..0235793c84 100644 --- a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempFeign.java +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempFeign.java @@ -98,6 +98,7 @@ public interface CrmCustomerTempFeign { /** * 客户列表导出 + * * @param crmCustomerTempQuery */ @PostMapping("/exportExcel") @@ -221,5 +222,9 @@ public interface CrmCustomerTempFeign { @ApiOperation("根据客户sid修改身份证号码") @PostMapping("/updateIdBySid") - ResultBean updateIdBySid(@RequestParam("idCard") String idCard,@RequestParam("custSid") String custSid); + ResultBean updateIdBySid(@RequestParam("idCard") String idCard, @RequestParam("custSid") String custSid); + + @ApiOperation("新增或更新客户信息") + @PostMapping("/updateTemp") + ResultBean updateTemp(@RequestBody CustomerSecondSalesDto dto); } \ No newline at end of file diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempFeignFallback.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempFeignFallback.java index c5758d360c..363bdf02a1 100644 --- a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempFeignFallback.java +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempFeignFallback.java @@ -175,5 +175,10 @@ public class CrmCustomerTempFeignFallback implements CrmCustomerTempFeign { return null; } + @Override + public ResultBean updateTemp(CustomerSecondSalesDto dto) { + return null; + } + } \ No newline at end of file diff --git a/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CustomerSecondSalesDto.java b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CustomerSecondSalesDto.java new file mode 100644 index 0000000000..1dfa2be83f --- /dev/null +++ b/anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CustomerSecondSalesDto.java @@ -0,0 +1,40 @@ +package com.yxt.anrui.crm.api.crmcustomertemp; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@Data +public class CustomerSecondSalesDto implements Dto { + private static final long serialVersionUID = -1955772984622113809L; + + @ApiModelProperty("客户sid") + private String customerSid; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("客户类型") + private String customerType; + private String customerTypeKey; + @ApiModelProperty("联系电话") + private String mobile; + @ApiModelProperty("证件类型") + private String certificateTypeKey; + private String certificateType; + @ApiModelProperty("证件号码") + @JsonProperty("IDNumber") + private String IDNumber; + @ApiModelProperty("证件有效期") + private String endDate; + @ApiModelProperty("证件地址") + private String certificateAddress; + + private String userSid; + + private String orgPath; +} diff --git a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempRest.java b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempRest.java index c69318d535..1a34371902 100644 --- a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempRest.java +++ b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempRest.java @@ -352,5 +352,10 @@ public class CrmCustomerTempRest implements CrmCustomerTempFeign { return rb.success(); } + @Override + public ResultBean updateTemp(CustomerSecondSalesDto dto) { + return crmCustomerTempService.updateTemp(dto); + } + } diff --git a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java index dc3d261383..c96e6e2153 100644 --- a/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java +++ b/anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java @@ -1158,7 +1158,7 @@ public class CrmCustomerTempService extends MybatisBaseService updateTemp(CustomerSecondSalesDto dto) { + ResultBean rb = ResultBean.fireFail(); + AppCrmCustomerTempDto appCrmCustomerTempDto = new AppCrmCustomerTempDto(); + appCrmCustomerTempDto.setSid(dto.getCustomerSid()); + appCrmCustomerTempDto.setName(dto.getCustomerName()); + appCrmCustomerTempDto.setMobile(dto.getMobile()); + appCrmCustomerTempDto.setCertificateTypeKey(dto.getCertificateTypeKey()); + appCrmCustomerTempDto.setCertificateType(dto.getCertificateType()); + appCrmCustomerTempDto.setCustomerType(dto.getCustomerType()); + appCrmCustomerTempDto.setCustomerTypeKey(dto.getCustomerTypeKey()); + appCrmCustomerTempDto.setIDNumber(dto.getIDNumber()); + appCrmCustomerTempDto.setEndDate(dto.getEndDate()); + appCrmCustomerTempDto.setCertificateAddress(dto.getCertificateAddress()); + ResultBean resultBean = saveOrUpdateAppCustomerTemp(appCrmCustomerTempDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } } \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomer.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomer.java new file mode 100644 index 0000000000..e56790cedf --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomer.java @@ -0,0 +1,35 @@ +package com.yxt.anrui.riskcenter.api.loansecondarysalescustomer; + +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@Data +public class LoanSecondarySalesCustomer extends BaseEntity { + private static final long serialVersionUID = -4647743383421777867L; + + private String mainSid; + @ApiModelProperty("客户sid") + private String customerSid; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("客户类型") + private String customerType; + private String customerTypeKey; + @ApiModelProperty("联系电话") + private String mobile; + @ApiModelProperty("证件类型") + private String certificateTypeKey; + private String certificateType; + @ApiModelProperty("证件号码") + private String IDNumber; + @ApiModelProperty("证件有效期") + private String endDate; + @ApiModelProperty("证件地址") + private String certificateAddress; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerDto.java new file mode 100644 index 0000000000..9f6e5fef88 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerDto.java @@ -0,0 +1,38 @@ +package com.yxt.anrui.riskcenter.api.loansecondarysalescustomer; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@Data +public class LoanSecondarySalesCustomerDto implements Dto { + private static final long serialVersionUID = 4377892244342062357L; + + private String mainSid; + + @ApiModelProperty("客户sid") + private String customerSid; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("客户类型") + private String customerType; + private String customerTypeKey; + @ApiModelProperty("联系电话") + private String mobile; + @ApiModelProperty("证件类型") + private String certificateTypeKey; + private String certificateType; + @ApiModelProperty("证件号码") + @JsonProperty("IDNumber") + private String IDNumber; + @ApiModelProperty("证件有效期") + private String endDate; + @ApiModelProperty("证件地址") + private String certificateAddress; +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerFeign.java new file mode 100644 index 0000000000..8e3ca3b5cd --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerFeign.java @@ -0,0 +1,31 @@ +package com.yxt.anrui.riskcenter.api.loansecondarysalescustomer; + +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApplyFeignFallback; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@FeignClient( + contextId = "anrui-riskcenter-LoanSecondarySalesCustomer", + name = "anrui-riskcenter", + path = "v1/LoanSecondarySalesCustomer", + fallback = LoanSecondarySalesCustomerFeignFallback.class) +public interface LoanSecondarySalesCustomerFeign { + + @ApiOperation("新增或修改") + @PostMapping("/saveOrUpdate") + ResultBean saveOrUpdate(@RequestBody LoanSecondarySalesCustomerDto dto); + + @ApiOperation("初始化") + @GetMapping("/getDetails") + ResultBean getDetails(@RequestParam("sid") String sid); +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerFeignFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerFeignFallback.java new file mode 100644 index 0000000000..278fef9578 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/LoanSecondarySalesCustomerFeignFallback.java @@ -0,0 +1,12 @@ +package com.yxt.anrui.riskcenter.api.loansecondarysalescustomer; + +import org.springframework.stereotype.Component; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@Component +public class LoanSecondarySalesCustomerFeignFallback { +} diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/SalesInitVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/SalesInitVo.java new file mode 100644 index 0000000000..22472739e4 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalescustomer/SalesInitVo.java @@ -0,0 +1,48 @@ +package com.yxt.anrui.riskcenter.api.loansecondarysalescustomer; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.anrui.riskcenter.api.loansecondarysalesveh.LoanSecondarySalesVehVo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@Data +public class SalesInitVo { + + private String mainSid; + @ApiModelProperty("销售部门") + private String createDept; + @ApiModelProperty("销售日期") + private String saleDate; + @ApiModelProperty("销售价格") + private String salePrice; + + @ApiModelProperty("客户sid") + private String customerSid; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("客户类型") + private String customerType; + private String customerTypeKey; + @ApiModelProperty("联系电话") + private String mobile; + @ApiModelProperty("证件类型") + private String certificateTypeKey; + private String certificateType; + @ApiModelProperty("证件号码") + @JsonProperty("IDNumber") + private String IDNumber; + @ApiModelProperty("证件有效期") + private String endDate; + @ApiModelProperty("证件地址") + private String certificateAddress; + @ApiModelProperty("车辆列表") + private List loanSecondarySalesVehVoList = new ArrayList<>(); +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerMapper.java new file mode 100644 index 0000000000..0dc0a42570 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerMapper.java @@ -0,0 +1,15 @@ +package com.yxt.anrui.riskcenter.biz.loansecondarysalescustomer; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomer; +import org.apache.ibatis.annotations.Mapper; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@Mapper +public interface LoanSecondarySalesCustomerMapper extends BaseMapper { + LoanSecondarySalesCustomer selectByMainSid(String mainSid); +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerMapper.xml new file mode 100644 index 0000000000..ae87747598 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerMapper.xml @@ -0,0 +1,10 @@ + + + + + \ No newline at end of file diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerRest.java new file mode 100644 index 0000000000..836213d3c3 --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerRest.java @@ -0,0 +1,34 @@ +package com.yxt.anrui.riskcenter.biz.loansecondarysalescustomer; + +import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomerDto; +import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomerFeign; +import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.SalesInitVo; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@RestController +@RequestMapping("v1/LoanSecondarySalesCustomer") +@Api(tags = "二次销售补充客户信息") +public class LoanSecondarySalesCustomerRest implements LoanSecondarySalesCustomerFeign { + + @Autowired + private LoanSecondarySalesCustomerService loanSecondarySalesCustomerService; + + @Override + public ResultBean saveOrUpdate(LoanSecondarySalesCustomerDto dto) { + return loanSecondarySalesCustomerService.saveSalesCustomer(dto); + } + + @Override + public ResultBean getDetails(String sid) { + return loanSecondarySalesCustomerService.getDetails(sid); + } +} diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerService.java new file mode 100644 index 0000000000..3d5a4b9a3f --- /dev/null +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalescustomer/LoanSecondarySalesCustomerService.java @@ -0,0 +1,83 @@ +package com.yxt.anrui.riskcenter.biz.loansecondarysalescustomer; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.crm.api.crmcustomer.CrmCustomer; +import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp; +import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign; +import com.yxt.anrui.crm.api.crmcustomertemp.CustomerSecondSalesDto; +import com.yxt.anrui.riskcenter.api.loansecondarysalesapply.LoanSecondarySalesApply; +import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomer; +import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.LoanSecondarySalesCustomerDto; +import com.yxt.anrui.riskcenter.api.loansecondarysalescustomer.SalesInitVo; +import com.yxt.anrui.riskcenter.biz.loansecondarysalesapply.LoanSecondarySalesApplyService; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.StringUtils; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/1/30 + **/ +@Service +public class LoanSecondarySalesCustomerService extends MybatisBaseService { + + @Autowired + private CrmCustomerTempFeign crmCustomerTempFeign; + @Autowired + private LoanSecondarySalesApplyService loanSecondarySalesApplyService; + + public ResultBean saveSalesCustomer(LoanSecondarySalesCustomerDto dto) { + ResultBean rb = ResultBean.fireFail(); + LoanSecondarySalesCustomer loanSecondarySalesCustomer = baseMapper.selectByMainSid(dto.getMainSid()); + String customerSid = dto.getCustomerSid(); + LoanSecondarySalesApply loanSecondarySalesApply = loanSecondarySalesApplyService.fetchBySid(dto.getMainSid()); + String userSid = loanSecondarySalesApply.getCreateBySid(); + String orgPath = loanSecondarySalesApply.getOrgSidPath(); + if (loanSecondarySalesCustomer == null) { + //新增客户 + CustomerSecondSalesDto customerSecondSalesDto = new CustomerSecondSalesDto(); + BeanUtil.copyProperties(dto, customerSecondSalesDto); + customerSecondSalesDto.setUserSid(userSid); + customerSecondSalesDto.setOrgPath(orgPath); + ResultBean resultBean = crmCustomerTempFeign.updateTemp(customerSecondSalesDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + customerSid = resultBean.getData(); + loanSecondarySalesCustomer = new LoanSecondarySalesCustomer(); + BeanUtil.copyProperties(dto, loanSecondarySalesCustomer); + loanSecondarySalesCustomer.setCustomerSid(customerSid); + baseMapper.insert(loanSecondarySalesCustomer); + } else { + //新增客户 + CustomerSecondSalesDto customerSecondSalesDto = new CustomerSecondSalesDto(); + BeanUtil.copyProperties(dto, customerSecondSalesDto); + customerSecondSalesDto.setUserSid(userSid); + customerSecondSalesDto.setOrgPath(orgPath); + ResultBean resultBean = crmCustomerTempFeign.updateTemp(customerSecondSalesDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + customerSid = resultBean.getData(); + BeanUtil.copyProperties(dto, loanSecondarySalesCustomer); + loanSecondarySalesCustomer.setCustomerSid(customerSid); + baseMapper.updateById(loanSecondarySalesCustomer); + } + return rb.success(); + } + + public ResultBean getDetails(String sid) { + ResultBean rb = ResultBean.fireFail(); + SalesInitVo salesInitVo = new SalesInitVo(); + LoanSecondarySalesCustomer loanSecondarySalesCustomer = baseMapper.selectByMainSid(sid); + if (loanSecondarySalesCustomer != null) { + BeanUtil.copyProperties(loanSecondarySalesCustomer, salesInitVo); + } else { + salesInitVo.setMainSid(sid); + } + return rb.success().setData(salesInitVo); + } +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysales/SecondarySalesAppVos.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysales/SecondarySalesAppVos.java index 8a531dc48c..ef675725a9 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysales/SecondarySalesAppVos.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/secondarysales/SecondarySalesAppVos.java @@ -91,9 +91,6 @@ public class SecondarySalesAppVos { private String taskId; @ApiModelProperty(value = "流程实例id") private String procInstId; - - private String files; - @ApiModelProperty("销售订单sid") private String salesOrderSid; diff --git a/doc/databases/risk_center.sql b/doc/databases/risk_center.sql index 07050a74ef..a5407bef1b 100644 --- a/doc/databases/risk_center.sql +++ b/doc/databases/risk_center.sql @@ -1666,6 +1666,37 @@ CREATE TABLE `loan_secondary_sales_cost` DEFAULT CHARSET = utf8 COMMENT ='交回车辆二次销售申请费用说明'; +DROP TABLE IF EXISTS `loan_secondary_sales_customer`; +CREATE TABLE `loan_secondary_sales_customer` +( + `id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id', + `sid` varchar(64) NOT NULL COMMENT 'sid', + `lockVersion` int(32) DEFAULT '0' COMMENT '版本锁', + `createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', + `isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用', + `state` int(32) DEFAULT '1' COMMENT '状态', + `isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid', + `updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid', + `mainSid` varchar(64) DEFAULT NULL COMMENT '主表sid', + `customerSid` varchar(64) DEFAULT NULL COMMENT '客户sid', + `customerName` varchar(500) DEFAULT NULL COMMENT '新车主名称', + `customerType` varchar(64) DEFAULT NULL COMMENT '客户类型', + `customerTypeKey` varchar(64) DEFAULT NULL COMMENT '客户类型', + `mobile` varchar(64) DEFAULT NULL COMMENT '联系电话', + `certificateTypeKey` varchar(64) DEFAULT NULL COMMENT '证件类型', + `certificateType` varchar(64) DEFAULT NULL COMMENT '证件类型', + `IDNumber` varchar(64) DEFAULT NULL COMMENT '证件号码', + `endDate` varchar(64) DEFAULT NULL COMMENT '证件有效期', + `certificateAddress` text DEFAULT NULL COMMENT '证件地址', + PRIMARY KEY (`id`), + KEY `id` (`id`) +) ENGINE = INNODB + DEFAULT CHARSET = utf8 COMMENT ='交回车辆二次销售补充客户信息'; + +