Browse Source

客户洽谈金融需求

master
dimengzhe 2 years ago
parent
commit
8489a160f2
  1. 7
      anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicleDemandUpdateDto.java
  2. 9
      anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmVehicledemand.java
  3. 7
      anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmVehicledemandsDto.java
  4. 52
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandService.java

7
anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/AppCrmVehicleDemandUpdateDto.java

@ -1,5 +1,6 @@
package com.yxt.anrui.crm.api.crmvehicledemand; package com.yxt.anrui.crm.api.crmvehicledemand;
import com.baomidou.mybatisplus.annotation.TableField;
import com.yxt.common.core.dto.Dto; import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -34,8 +35,10 @@ public class AppCrmVehicleDemandUpdateDto implements Dto {
@ApiModelProperty("意向车型sid") @ApiModelProperty("意向车型sid")
private String intentionSid; private String intentionSid;
@ApiModelProperty(value = "金融方案key") @ApiModelProperty(value = "1自有资金,2三方金融")
private String financePlan; private String financePlan;
@ApiModelProperty(value = "金融方案value") @ApiModelProperty(value = "1自有资金,2三方金融")
private String financePlanValue; private String financePlanValue;
@ApiModelProperty("金融方案")
private CrmSolutions finNormal;
} }

9
anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmVehicledemand.java

@ -1,5 +1,7 @@
package com.yxt.anrui.crm.api.crmvehicledemand; package com.yxt.anrui.crm.api.crmvehicledemand;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity; import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
@ -59,6 +61,7 @@ public class CrmVehicledemand extends BaseEntity {
private String changeOptions; private String changeOptions;
@ApiModelProperty("车型报价") @ApiModelProperty("车型报价")
@TableField(updateStrategy = FieldStrategy.IGNORED)
private BigDecimal vehicleModelOffer; private BigDecimal vehicleModelOffer;
@ApiModelProperty("数量") @ApiModelProperty("数量")
@ -79,11 +82,11 @@ public class CrmVehicledemand extends BaseEntity {
@ApiModelProperty("常用配置sid") @ApiModelProperty("常用配置sid")
private String comonConfigSid; private String comonConfigSid;
@ApiModelProperty(value = "金融方案key") @ApiModelProperty("1自有资金,2三方金融,3非担保,4担保")
private String financePlan; private String financePlan;
@ApiModelProperty(value = "金融方案value") @ApiModelProperty("1自有资金,2三方金融,3非担保,4担保")
private String financePlanValue; private String financePlanValue;
@ApiModelProperty("01资方常规,02定制金融")
private String typeKey; private String typeKey;
private String type; private String type;
} }

7
anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmvehicledemand/CrmVehicledemandsDto.java

@ -23,9 +23,8 @@ public class CrmVehicledemandsDto implements Dto {
private String purchaseMethod; private String purchaseMethod;
@ApiModelProperty("购车方式Value") @ApiModelProperty("购车方式Value")
private String purchaseMethodValue; private String purchaseMethodValue;
@ApiModelProperty("资金来源、担保类型") @ApiModelProperty("01资方常规,02定制金融")
private String type; private String type;
@ApiModelProperty("资金来源、担保类型key")
private String typeKey; private String typeKey;
@ApiModelProperty("品牌名称") @ApiModelProperty("品牌名称")
private String brandName; private String brandName;
@ -56,9 +55,9 @@ public class CrmVehicledemandsDto implements Dto {
private String remarks; private String remarks;
private CrmSolutions crmSolutions; private CrmSolutions crmSolutions;
@ApiModelProperty("金融方案key") @ApiModelProperty("1自有资金,2三方金融,3非担保,4担保")
private String financePlan; private String financePlan;
@ApiModelProperty("金融方案value") @ApiModelProperty("资金来源、担保类型")
private String financePlanValue; private String financePlanValue;
} }

52
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandService.java

@ -364,24 +364,28 @@ public class CrmVehicledemandService extends MybatisBaseService<CrmVehicledemand
* @param appCrmVehicleDemandUpdateDto * @param appCrmVehicleDemandUpdateDto
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public ResultBean saveVisitDemands(AppCrmVehicleDemandUpdateDto appCrmVehicleDemandUpdateDto) { public ResultBean saveVisitDemands(AppCrmVehicleDemandUpdateDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
String sid = appCrmVehicleDemandUpdateDto.getIntentionSid(); String sid = dto.getIntentionSid();
CrmVehicledemand entity = fetchBySid(sid); CrmVehicledemand entity = fetchBySid(sid);
BeanUtil.copyProperties(appCrmVehicleDemandUpdateDto, entity); BeanUtil.copyProperties(dto, entity);
/*entity.setPurchaseMethod(appCrmVehicleDemandUpdateDto.getPurchaseMethod()); entity.setEstimatedPickupDate(dto.getDate());
entity.setPurchaseMethodValue(appCrmVehicleDemandUpdateDto.getPurchaseMethodValue()); if (StringUtils.isNotBlank(dto.getPrice())) {
entity.setRemarks(appCrmVehicleDemandUpdateDto.getRemarks()); entity.setVehicleModelOffer(new BigDecimal(dto.getPrice()));
entity.setNumber(appCrmVehicleDemandUpdateDto.getNumber());*/ } else {
entity.setEstimatedPickupDate(appCrmVehicleDemandUpdateDto.getDate()); entity.setVehicleModelOffer(null);
if (StringUtils.isNotBlank(appCrmVehicleDemandUpdateDto.getPrice())) {
BigDecimal bigDecimal = new BigDecimal(appCrmVehicleDemandUpdateDto.getPrice());
entity.setVehicleModelOffer(bigDecimal);
} }
baseMapper.updateById(entity); if (!"1".equals(dto.getFinancePlan())) {//金融方案
if (StringUtils.isBlank(appCrmVehicleDemandUpdateDto.getPrice())) { CrmSolutions finNormal = dto.getFinNormal();
baseMapper.updateByPrice(entity.getSid()); SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(finNormal, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(sid);
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
} }
baseMapper.updateById(entity);
return rb.success(); return rb.success();
} }
@ -530,17 +534,17 @@ public class CrmVehicledemandService extends MybatisBaseService<CrmVehicledemand
crmVehicledemand.setCustomerSid(crmCustomerTemp.getSid()); crmVehicledemand.setCustomerSid(crmCustomerTemp.getSid());
crmVehicledemand.setStates("1"); crmVehicledemand.setStates("1");
//新增客户的金融方案 //新增客户的金融方案
if ("01".equals(dto.getFinancePlan())) {//资方常规 if ("01".equals(dto.getTypeKey())) {//资方常规
CrmSolutions crmSolutions = dto.getCrmSolutions(); CrmSolutions crmSolutions = dto.getCrmSolutions();
if (crmSolutions != null) { if (crmSolutions != null) {
SolutionssDto solutionsDto = new SolutionssDto(); SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid"); BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(sid); solutionsDto.setSaleOrderSid(sid);
if ("2".equals(dto.getTypeKey())) { if ("2".equals(dto.getFinancePlan())) {
solutionsDto.setShowMore(false); solutionsDto.setShowMore(false);
} else if ("3".equals(dto.getTypeKey())) { } else if ("3".equals(dto.getFinancePlan())) {
solutionsDto.setShowMore(true); solutionsDto.setShowMore(true);
}else if("4".equals(dto.getTypeKey())){ } else if ("4".equals(dto.getFinancePlan())) {
solutionsDto.setShowMore(true); solutionsDto.setShowMore(true);
} }
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto); ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
@ -564,15 +568,15 @@ public class CrmVehicledemandService extends MybatisBaseService<CrmVehicledemand
loanSolutionsFeign.deleteByOrderSid(sid); loanSolutionsFeign.deleteByOrderSid(sid);
} else { } else {
//新增客户的金融方案 //新增客户的金融方案
if ("01".equals(dto.getFinancePlan())) {//资方常规 if ("01".equals(dto.getTypeKey())) {//资方常规
CrmSolutions crmSolutions = dto.getCrmSolutions(); CrmSolutions crmSolutions = dto.getCrmSolutions();
if (crmSolutions != null) { if (crmSolutions != null) {
SolutionssDto solutionsDto = new SolutionssDto(); SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid"); BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(sid); solutionsDto.setSaleOrderSid(sid);
if ("2".equals(dto.getTypeKey())) { if ("2".equals(dto.getFinancePlan())) {
solutionsDto.setShowMore(false); solutionsDto.setShowMore(false);
} else if ("3".equals(dto.getTypeKey()) || "4".equals(dto.getTypeKey())) { } else if ("3".equals(dto.getFinancePlan()) || "4".equals(dto.getFinancePlan())) {
solutionsDto.setShowMore(true); solutionsDto.setShowMore(true);
} }
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto); ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
@ -597,14 +601,14 @@ public class CrmVehicledemandService extends MybatisBaseService<CrmVehicledemand
return rb.setMsg("该车辆需求不存在"); return rb.setMsg("该车辆需求不存在");
} }
BeanUtil.copyProperties(crmVehicledemand, crmVehicledemandsVo); BeanUtil.copyProperties(crmVehicledemand, crmVehicledemandsVo);
if (!"1".equals(crmVehicledemand.getTypeKey())) { if (!"1".equals(crmVehicledemand.getFinancePlan())) {
ResultBean<SolutionsDetailsVo> solutionsDetailsVoResultBean = loanSolutionsFeign.selectDetailByApplySid(sid); ResultBean<SolutionsDetailsVo> solutionsDetailsVoResultBean = loanSolutionsFeign.selectDetailByApplySid(sid);
if (solutionsDetailsVoResultBean.getData() != null) { if (solutionsDetailsVoResultBean.getData() != null) {
CrmSolutions loanTemplateSolutionsVo = new CrmSolutions(); CrmSolutions loanTemplateSolutionsVo = new CrmSolutions();
BeanUtil.copyProperties(solutionsDetailsVoResultBean.getData(), loanTemplateSolutionsVo); BeanUtil.copyProperties(solutionsDetailsVoResultBean.getData(), loanTemplateSolutionsVo);
if ("2".equals(crmVehicledemandsVo.getTypeKey())) { if ("2".equals(crmVehicledemandsVo.getFinancePlan())) {
loanTemplateSolutionsVo.setShowMore(false); loanTemplateSolutionsVo.setShowMore(false);
} else if ("3".equals(crmVehicledemandsVo.getTypeKey()) || "4".equals(crmVehicledemandsVo.getTypeKey())) { } else if ("3".equals(crmVehicledemandsVo.getFinancePlan()) || "4".equals(crmVehicledemandsVo.getFinancePlan())) {
loanTemplateSolutionsVo.setShowMore(true); loanTemplateSolutionsVo.setShowMore(true);
} }
crmVehicledemandsVo.setCrmSolutions(loanTemplateSolutionsVo); crmVehicledemandsVo.setCrmSolutions(loanTemplateSolutionsVo);

Loading…
Cancel
Save