Browse Source

中介人员以及客户添加编码,姓名首字母加手机号规则

master
dimengzhe 3 years ago
parent
commit
cda4939092
  1. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemiddleman/BaseMiddleman.java
  2. 5
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemiddleman/BaseMiddlemanDto.java
  3. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemiddleman/BaseMiddlemanFeign.java
  4. 25
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseVehicleOutDto.java
  5. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemiddleman/BaseMiddlemanService.java
  6. 1
      anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/AppCrmCustomerTempDto.java
  7. 27
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java
  8. 12
      doc/databases/base_tables.sql

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemiddleman/BaseMiddleman.java

@ -64,5 +64,7 @@ public class BaseMiddleman extends BaseEntity {
private String createOrgSid;
@ApiModelProperty("使用组织sid")
private String useOrgSid;
@ApiModelProperty("编码")
private String middleCode;
}

5
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemiddleman/BaseMiddlemanDto.java

@ -32,6 +32,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* Project: anrui-base(基础) <br/>
* File: BaseMiddlemanDto.java <br/>
@ -53,8 +55,10 @@ public class BaseMiddlemanDto implements Dto {
private String sid;
@ApiModelProperty("姓名")
@NotBlank(message = "姓名不能为空")
private String name;
@ApiModelProperty("手机号")
@NotBlank(message = "手机号不能为空")
private String mobile;
@ApiModelProperty("所在单位")
private String company;
@ -63,6 +67,7 @@ public class BaseMiddlemanDto implements Dto {
@ApiModelProperty("银行账号")
private String bankAccount;
@ApiModelProperty(value = "用户sid")
@NotBlank(message = "参数错误:用户sid不能为空")
private String createBySid;
@ApiModelProperty(value = "备注")

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemiddleman/BaseMiddlemanFeign.java

@ -64,7 +64,7 @@ public interface BaseMiddlemanFeign {
@ApiOperation("新增或修改")
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody BaseMiddlemanDto dto);
public ResultBean save(@Valid @RequestBody BaseMiddlemanDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")

25
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseVehicleOutDto.java

@ -15,7 +15,9 @@ import java.util.List;
public class BaseVehicleOutDto implements Dto {
private static final long serialVersionUID = 7393182384733981516L;
private List<BaseVehicleOutQuery> queryList;
private String vinSid;
private String vinNo;
@ApiModelProperty("出库类型")
private String type;
private String typeKey;
@ -41,17 +43,26 @@ public class BaseVehicleOutDto implements Dto {
private String mobile;
@ApiModelProperty("赠品说明")
private String giftsDescription;
@ApiModelProperty("二次经销商")
private String distributorName;
@ApiModelProperty("二次经销商sid")
private String distributorSid;
@ApiModelProperty("返利金额")
private String rebateAmount;
@ApiModelProperty("实际购车人名称")
/* @ApiModelProperty("实际购车人名称")
private String actualCustomer;
@ApiModelProperty("实际购车人电话")
private String actualMobile;
@ApiModelProperty("实际购车人sid")
private String actualSid;
private String actualSid;*/
/* @ApiModelProperty("二次经销商")
private String distributorName;
@ApiModelProperty("二次经销商sid")
private String distributorSid;*/
private List<BaseVehicleOutQuery> queryList;
//销售折让
//中介人1
//返利金额1
//中介人2
//返利金额2
//备注
}

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemiddleman/BaseMiddlemanService.java

@ -32,6 +32,7 @@ import com.yxt.anrui.base.api.basemiddleman.*;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.HanZiConverterPinYin;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
@ -85,6 +86,8 @@ public class BaseMiddlemanService extends MybatisBaseService<BaseMiddlemanMapper
BeanUtil.copyProperties(dto, baseMiddleman, "sid");
baseMiddleman.setCreateOrgSid(resultBean.getData());
baseMiddleman.setUseOrgSid(resultBean.getData());
String middleCode = HanZiConverterPinYin.getPinYinFirst(baseMiddleman.getName()) + baseMiddleman.getMobile();
baseMiddleman.setMiddleCode(middleCode);
baseMapper.insert(baseMiddleman);
} else {
BaseMiddleman baseMiddleman = fetchBySid(dtoSid);
@ -92,6 +95,8 @@ public class BaseMiddlemanService extends MybatisBaseService<BaseMiddlemanMapper
return rb.setMsg("该数据不存在");
}
BeanUtil.copyProperties(dto, baseMiddleman);
String middleCode = HanZiConverterPinYin.getPinYinFirst(baseMiddleman.getName()) + baseMiddleman.getMobile();
baseMiddleman.setMiddleCode(middleCode);
baseMapper.updateById(baseMiddleman);
}
return rb.success();

1
anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/AppCrmCustomerTempDto.java

@ -47,6 +47,7 @@ public class AppCrmCustomerTempDto implements Dto {
private String name;
@ApiModelProperty("联系电话")
@NotBlank(message = "联系电话不能为空")
private String mobile;
@ApiModelProperty("微信号码")

27
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java

@ -31,6 +31,7 @@ import com.yxt.anrui.portal.api.sysuser.app.AppUserOrgInfoVo;
import com.yxt.anrui.portal.config.DictCommonType;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.HanZiConverterPinYin;
import com.yxt.common.base.utils.HttpStatusEnum;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
@ -217,11 +218,6 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
}
} else { // 修改
if (StringUtils.isNotBlank(dto.getMobile())) {
// map.put("mobile", dto.getMobile());
// CrmCustomerTempVo crmCustomerTempVo = baseMapper.selectByMobileOrWx(map);
// if (crmCustomerTempVo != null && !crmCustomerTempVo.getStaffSid().equals(userOrgInfoVo.getStaffSid())) {
// return new ResultBean().fail().setMsg("该手机号已绑定其它客户,请重新添加");
// }
AppCrmCustomerTempInfoVo appCrmCustomerTempInfoVo = baseMapper.selectBySid(dto.getSid());
String mobile = appCrmCustomerTempInfoVo.getMobile();
if (!mobile.equals(dto.getMobile())) {
@ -262,6 +258,9 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
customerTemp.setCustomerPhoto(customerTemp.getCustomerPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
}
customerTemp.setUpdateBySid(dto.getUserSid());
//客户编码
String customerNo = HanZiConverterPinYin.getPinYinFirst(customerTemp.getName()) + customerTemp.getMobile();
customerTemp.setCustomerNo(customerNo);
boolean updateBoolean = updateById(customerTemp);
if (updateBoolean) {
// 更新附件表
@ -568,11 +567,11 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
if (StringUtils.isNotBlank(customerTemp.getCustomerPhoto())) {
customerTemp.setCustomerPhoto(customerTemp.getCustomerPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
}
Map<String, String> map = genetrateCustomerNum(dto.getCustomerTypeKey(), userOrgInfoVo);
// Map<String, String> map = genetrateCustomerNum(dto.getCustomerTypeKey(), userOrgInfoVo);
customerTemp.setCreateBySid(dto.getUserSid());
customerTemp.setStaffSid(userOrgInfoVo.getStaffSid());
customerTemp.setCreateOrgSid(userOrgInfoVo.getOrgSid());
customerTemp.setCustomerNo(map.get("code"));
// customerTemp.setCustomerNo(map.get("code"));
customerTemp.setCertificateTypeKey(customerTemp.getCustomerTypeKey().equals("1") ? "01" : "02");
customerTemp.setCertificateType(customerTemp.getCustomerTypeKey().equals("1") ? "身份证" : "营业执照");
ResultBean resultBean = dictCommonFeign.getFirstDictKeyByType(DictCommonType.FOLLOW_STATE, "0");
@ -592,6 +591,9 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
} else if ("1".equals(dto.getIsOnRemindkey())) {
customerTemp.setRemind_day(dto.getRemind_day());
}
//客户编码
String customerNo = HanZiConverterPinYin.getPinYinFirst(customerTemp.getName()) + customerTemp.getMobile();
customerTemp.setCustomerNo(customerNo);
save(customerTemp);
// 增加跟进记录
Map<String, String> paramMap = new HashMap<>();
@ -756,14 +758,17 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
crmCustomerTemp.setCreateBySid(dto.getUserSid());
crmCustomerTemp.setStaffSid(sysUserInfoVo.getStaffSid());
crmCustomerTemp.setCreateOrgSid(sysUserInfoVo.getOrgSid());
Map<String, String> map = genetrateCustomerNumO(dto.getCustomerTypeKey(), sysUserInfoVo);
crmCustomerTemp.setCustomerNo(map.get("code"));
/*Map<String, String> map = genetrateCustomerNumO(dto.getCustomerTypeKey(), sysUserInfoVo);
crmCustomerTemp.setCustomerNo(map.get("code"));*/
ResultBean resultBean = dictCommonFeign.getFirstDictKeyByType(DictCommonType.FOLLOW_STATE, "0");
if (resultBean.getSuccess() && resultBean.getData() != null) {
String key = resultBean.getData().toString();
crmCustomerTemp.setFollow_state_key(key);
crmCustomerTemp.setFollow_state(dictCommonFeign.selectBykey(key, DictCommonType.FOLLOW_STATE).getData().getDictValue());
}
//客户编码
String customerNo = HanZiConverterPinYin.getPinYinFirst(crmCustomerTemp.getName()) + crmCustomerTemp.getMobile();
crmCustomerTemp.setCustomerNo(customerNo);
save(crmCustomerTemp);
// 增加跟进记录
String visitSid = crmVisitService.insertCrmVisitOne(dto.getUserSid(), crmCustomerTemp.getSid(), crmCustomerTemp.getIsOnRemindkey(), crmCustomerTemp.getIsOnRemind(), dto.getVisitWay(), dto.getVisitWayKey());
@ -839,8 +844,10 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
return rb.setMsg("该客户信息不存在");
}
BeanUtil.copyProperties(dto, customerTemp);
//客户编码
String customerNo = HanZiConverterPinYin.getPinYinFirst(customerTemp.getName()) + customerTemp.getMobile();
customerTemp.setCustomerNo(customerNo);
baseMapper.updateById(customerTemp);
// int count = updateBySid(dto, sid);
//更新运营信息
CrmBusinessDto crmBusinessDto = dto.getCrmBusinessDto();
crmBusinessService.updateByCusSid(crmBusinessDto, sid);

12
doc/databases/base_tables.sql

@ -917,19 +917,19 @@ CREATE TABLE `base_vehicle_out`
`orgName` varchar(255) DEFAULT NULL COMMENT '销售部门名称',
`staffSid` varchar(64) DEFAULT NULL COMMENT '销售专员sid',
`staffName` varchar(255) DEFAULT NULL COMMENT '销售专员',
`saleDate` varchar(255) DEFAULT NULL COMMENT '销售日期',
`concatNo` varchar(255) DEFAULT NULL COMMENT '合同编号',
`price` varchar(255) DEFAULT NULL COMMENT '成交价',
`isTerminal` varchar(64) DEFAULT NULL COMMENT '是否为终端客户',
`customerName` varchar(255) DEFAULT NULL COMMENT '客户名称',
`mobile` varchar(255) DEFAULT NULL COMMENT '手机号',
`customerSid` varchar(255) DEFAULT NULL COMMENT '客户sid',
`actualCustomer` varchar(255) DEFAULT NULL COMMENT '实际购车人名称',
`actualMobile` varchar(255) DEFAULT NULL COMMENT '实际购车人手机号',
`actualSid` varchar(255) DEFAULT NULL COMMENT '实际购车人sid',
`giftsDescription` varchar(255) DEFAULT NULL COMMENT '赠品说明',
`distributorName` varchar(255) DEFAULT NULL COMMENT '二次经销商',
`distributorSid` varchar(255) DEFAULT NULL COMMENT '二次经销商sid',
`rebateAmount` varchar(255) DEFAULT NULL COMMENT '返利金额',
`salesAllowance` varchar(255) DEFAULT NULL COMMENT '销售折让',
`middleOne` varchar(255) DEFAULT NULL COMMENT '中介人1',
`rebateMoneyOne` varchar(255) DEFAULT NULL COMMENT '返利金额1',
`middleTwo` varchar(255) DEFAULT NULL COMMENT '中介人2',
`rebateMoneyTwo` varchar(255) DEFAULT NULL COMMENT '返利金额2',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = INNODB

Loading…
Cancel
Save