From cbb79d172c1b90a2c4f9f70841e39ed5ac743d25 Mon Sep 17 00:00:00 2001 From: zhangwenzan Date: Thu, 19 Jun 2025 09:15:48 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E6=B7=BB=E5=8A=A0=E4=BC=81?= =?UTF-8?q?=E4=B8=9A=E5=9F=BA=E6=9C=AC=E4=BF=A1=E6=81=AF=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kakarote/crm/constant/CrmPoolEnum.java | 22 +++++++ .../crm/controller/CrmCustomerController.java | 15 ++++- .../CrmGetV3SysRiskDataController.java | 11 +++- .../crm/controller/CrmOpenApiController.java | 12 +++- .../crm/controller/CrmQyjbxxController.java | 10 ++-- .../crm/entity/BO/CrmAddCustomerBo.java | 19 +++++++ .../com/kakarote/crm/entity/BO/QyjbxxBo.java | 9 +++ .../com/kakarote/crm/entity/PO/CrmQyjbxx.java | 5 ++ .../crm/mapper/xml/CrmQyjbxxMapper.xml | 1 + .../crm/service/ICrmCustomerService.java | 7 +++ .../crm/service/ICrmOpenApiService.java | 3 + .../crm/service/ICrmQyfxjcjgZbmxService.java | 3 + .../crm/service/ICrmQyjbxxService.java | 1 + .../service/impl/CrmActivityServiceImpl.java | 3 + .../service/impl/CrmCustomerServiceImpl.java | 25 +++++++- .../service/impl/CrmOpenApiServiceImpl.java | 48 ++++++++++++++++ .../impl/CrmQyfxjcjgZbmxServiceImpl.java | 8 +++ .../service/impl/CrmQyjbxxServiceImpl.java | 21 ++++++- .../kakarote/crm/util/CommentGenerator.java | 57 ------------------- .../service/impl/PermissionServiceImpl.java | 2 +- 20 files changed, 211 insertions(+), 71 deletions(-) create mode 100644 crm/src/main/java/com/kakarote/crm/constant/CrmPoolEnum.java create mode 100644 crm/src/main/java/com/kakarote/crm/entity/BO/CrmAddCustomerBo.java delete mode 100644 crm/src/main/java/com/kakarote/crm/util/CommentGenerator.java diff --git a/crm/src/main/java/com/kakarote/crm/constant/CrmPoolEnum.java b/crm/src/main/java/com/kakarote/crm/constant/CrmPoolEnum.java new file mode 100644 index 0000000..5d1055b --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/constant/CrmPoolEnum.java @@ -0,0 +1,22 @@ +package com.kakarote.crm.constant; + +public enum CrmPoolEnum { + FXQYMDPOOL("风险企业名单公海",34555), + ZDFDDWMDPOOL("重点辅导单位名单公海",34554), + PXQDMDPOOL("培训签到企业名单公海",34553), + XDMRPOOL("系统默认公海",34552), + ; + private final String name; + private final int id; + private CrmPoolEnum(String name, int id) { + this.name = name; + this.id = id; + } + public String getName() { + return name; + } + + public Integer getId() { + return id; + } +} diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmCustomerController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmCustomerController.java index 3194fdb..2b1a0a3 100644 --- a/crm/src/main/java/com/kakarote/crm/controller/CrmCustomerController.java +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmCustomerController.java @@ -31,6 +31,7 @@ import com.kakarote.crm.entity.VO.CrmMembersSelectVO; import com.kakarote.crm.entity.VO.CrmModelFiledVO; import com.kakarote.crm.service.CrmUploadExcelService; import com.kakarote.crm.service.ICrmCustomerService; +import com.kakarote.crm.service.ICrmOpenApiService; import com.kakarote.crm.service.ICrmTeamMembersService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -71,6 +72,9 @@ public class CrmCustomerController { @Autowired private ICrmTeamMembersService teamMembersService; + @Autowired + private ICrmOpenApiService crmOpenApiService; + @PostMapping("/queryPageList") @ApiOperation("查询列表页数据") public Result>> queryPageList(@RequestBody CrmSearchBO search) { @@ -83,8 +87,15 @@ public class CrmCustomerController { @ApiOperation("保存数据") @SysLogHandler(behavior = BehaviorEnum.SAVE, object = "#crmModel.entity[customerName]", detail = "'新增了客户:' + #crmModel.entity[customerName]") public Result> add(@RequestBody CrmBusinessSaveBO crmModel) { - Map map = crmCustomerService.addOrUpdate(crmModel, false, null); - return R.ok(map); +// Map map = crmCustomerService.addOrUpdate(crmModel, false, null); +// return R.ok(map); + CrmAddCustomerBo crmAddCustomerBo = new CrmAddCustomerBo(); + crmAddCustomerBo.setCrmModel(crmModel); +// !"101011".equals(appId) && !"crmopenapi". + crmAddCustomerBo.setAppId("101011"); + crmAddCustomerBo.setAppSecret("crmopenapi"); + crmOpenApiService.crmAddCustomer(crmAddCustomerBo); + return R.ok(); } @PostMapping("/update") diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmGetV3SysRiskDataController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmGetV3SysRiskDataController.java index 2407150..624eeaf 100644 --- a/crm/src/main/java/com/kakarote/crm/controller/CrmGetV3SysRiskDataController.java +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmGetV3SysRiskDataController.java @@ -2,21 +2,30 @@ package com.kakarote.crm.controller; import com.kakarote.core.common.Result; import com.kakarote.crm.entity.VO.CrmV3SysRiskDataExposedVo; import com.kakarote.crm.service.ICrmQyfxjcjgService; +import com.kakarote.crm.service.ICrmQyfxjcjgZbmxService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.io.IOException; @RestController -@RequestMapping("/crmGetData") +@RequestMapping("/crmGetV3Data") public class CrmGetV3SysRiskDataController { @Autowired private ICrmQyfxjcjgService iCrmQyfxjcjgService; + @Autowired + private ICrmQyfxjcjgZbmxService crmQyfxjcjgZbmxService; + @PostMapping(value = "/resp") public Result getV3SysRiskData(@RequestBody CrmV3SysRiskDataExposedVo crmV3SysRiskDataExposedVo) throws IOException { return Result.ok(iCrmQyfxjcjgService.getLocalRiskData(crmV3SysRiskDataExposedVo)); } + + @PostMapping("/riskJcmx/{jcId}") + public Result getRiskJcmc(@PathVariable String jcId){ + return Result.ok(crmQyfxjcjgZbmxService.getQyfxjcjgZbmxListByJcId(jcId)); + } } diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmOpenApiController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmOpenApiController.java index 084c65a..db86ffa 100644 --- a/crm/src/main/java/com/kakarote/crm/controller/CrmOpenApiController.java +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmOpenApiController.java @@ -3,21 +3,29 @@ package com.kakarote.crm.controller; import com.kakarote.core.common.ParamAspect; import com.kakarote.core.common.R; import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.BO.CrmAddCustomerBo; +import com.kakarote.crm.service.ICrmOpenApiService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController -@RequestMapping("/openApi") +@RequestMapping("/crmOpenApi") @Api(tags = "crm对外接口") public class CrmOpenApiController { + @Autowired + private ICrmOpenApiService crmOpenApiService; + @PostMapping("/crm/addCorporateSeas") @ApiOperation("接口新增公海数据") @ParamAspect - public Result addCorporateSeas(){ + public Result addCorporateSeas(@RequestBody CrmAddCustomerBo crmAddCustomerBo){ + crmOpenApiService.crmAddCustomer(crmAddCustomerBo); return R.ok(); } } diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmQyjbxxController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmQyjbxxController.java index 8255edb..3dee9d2 100644 --- a/crm/src/main/java/com/kakarote/crm/controller/CrmQyjbxxController.java +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmQyjbxxController.java @@ -17,7 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @RestController -@RequestMapping("/qyjbxx") +@RequestMapping("/crmQyjbxx") @Api(tags = "企业基本信息") public class CrmQyjbxxController { @Autowired @@ -38,11 +38,11 @@ public class CrmQyjbxxController { return R.ok(crmQyjbxxService.insertQyjbxx(crmQyjbxx)); } - @PostMapping("/queryByNsrxx") + @PostMapping("/queryByCustomerId") @ApiOperation("根据纳税人识别号查询企业基本信息") - public Result queryByNsrsbh(@RequestBody QyjbxxBo qyjbxxBo) { - CrmQyjbxx qyjbxxByNsrsbh = crmQyjbxxService.getQyjbxxByNsxx(qyjbxxBo); - return R.ok(qyjbxxByNsrsbh); + public Result queryByCustomerId(@RequestBody QyjbxxBo qyjbxxBo) { + CrmQyjbxx qyjbxxByCustomerId = crmQyjbxxService.getQyJbxxByCustomer(qyjbxxBo); + return R.ok(qyjbxxByCustomerId); } // @PostMapping("/queryByNsrmc/{nsrmc}") diff --git a/crm/src/main/java/com/kakarote/crm/entity/BO/CrmAddCustomerBo.java b/crm/src/main/java/com/kakarote/crm/entity/BO/CrmAddCustomerBo.java new file mode 100644 index 0000000..9d27866 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/entity/BO/CrmAddCustomerBo.java @@ -0,0 +1,19 @@ +package com.kakarote.crm.entity.BO; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; + +@ApiModel("签到crm添加企业OpenAPi") +@Data +public class CrmAddCustomerBo { + @NotEmpty(message = "appId不能为空!") + private String appId; + @NotEmpty(message = "appSecret不能为空!") + private String appSecret; + @ApiModelProperty("客户信息对象") + @NotEmpty(message = "客户信息不能为空!") + private CrmBusinessSaveBO crmModel; +} diff --git a/crm/src/main/java/com/kakarote/crm/entity/BO/QyjbxxBo.java b/crm/src/main/java/com/kakarote/crm/entity/BO/QyjbxxBo.java index 365cb16..7ff041b 100644 --- a/crm/src/main/java/com/kakarote/crm/entity/BO/QyjbxxBo.java +++ b/crm/src/main/java/com/kakarote/crm/entity/BO/QyjbxxBo.java @@ -10,6 +10,15 @@ public class QyjbxxBo { * 纳税人识别号 */ private String nsrsbh; + + /** + * 客户Id + */ + private Integer customerId; + /** + * 公海Id + */ + private Integer poolId; /** * 纳税人名称 */ diff --git a/crm/src/main/java/com/kakarote/crm/entity/PO/CrmQyjbxx.java b/crm/src/main/java/com/kakarote/crm/entity/PO/CrmQyjbxx.java index 68a94fb..199c774 100644 --- a/crm/src/main/java/com/kakarote/crm/entity/PO/CrmQyjbxx.java +++ b/crm/src/main/java/com/kakarote/crm/entity/PO/CrmQyjbxx.java @@ -116,6 +116,11 @@ public class CrmQyjbxx implements Serializable { */ private String zgswskfjDm; + /** + * shxydm + */ + private String shxydm; + /** * 税收管理员代码 */ diff --git a/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyjbxxMapper.xml b/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyjbxxMapper.xml index d7165b0..b2c7cd2 100644 --- a/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyjbxxMapper.xml +++ b/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyjbxxMapper.xml @@ -79,6 +79,7 @@ + diff --git a/crm/src/main/java/com/kakarote/crm/service/ICrmCustomerService.java b/crm/src/main/java/com/kakarote/crm/service/ICrmCustomerService.java index d1b357e..d612514 100644 --- a/crm/src/main/java/com/kakarote/crm/service/ICrmCustomerService.java +++ b/crm/src/main/java/com/kakarote/crm/service/ICrmCustomerService.java @@ -266,4 +266,11 @@ public interface ICrmCustomerService extends BaseService { List forgottenCustomer(Integer day, List userIds, String search); List unContactCustomer(String search, List userIds); + + /** + * 通过企业名称企业税号联系电话查询客户信息 + * @param crmModel + * @return + */ + Integer getCustomerByQyjbxx(CrmBusinessSaveBO crmModel); } diff --git a/crm/src/main/java/com/kakarote/crm/service/ICrmOpenApiService.java b/crm/src/main/java/com/kakarote/crm/service/ICrmOpenApiService.java index f95b2d9..fde2a03 100644 --- a/crm/src/main/java/com/kakarote/crm/service/ICrmOpenApiService.java +++ b/crm/src/main/java/com/kakarote/crm/service/ICrmOpenApiService.java @@ -1,4 +1,7 @@ package com.kakarote.crm.service; +import com.kakarote.crm.entity.BO.CrmAddCustomerBo; + public interface ICrmOpenApiService { + void crmAddCustomer(CrmAddCustomerBo crmAddCustomerBo); } diff --git a/crm/src/main/java/com/kakarote/crm/service/ICrmQyfxjcjgZbmxService.java b/crm/src/main/java/com/kakarote/crm/service/ICrmQyfxjcjgZbmxService.java index 45c6de1..183572f 100644 --- a/crm/src/main/java/com/kakarote/crm/service/ICrmQyfxjcjgZbmxService.java +++ b/crm/src/main/java/com/kakarote/crm/service/ICrmQyfxjcjgZbmxService.java @@ -39,4 +39,7 @@ public interface ICrmQyfxjcjgZbmxService extends BaseService { * @return */ List getQyfxjcjgZbmxList(CrmQyfxjcjgZbmx crmQyfxjcjgZbmx); + + List getQyfxjcjgZbmxListByJcId(String jcId); + } diff --git a/crm/src/main/java/com/kakarote/crm/service/ICrmQyjbxxService.java b/crm/src/main/java/com/kakarote/crm/service/ICrmQyjbxxService.java index a03a9a6..c28cfe5 100644 --- a/crm/src/main/java/com/kakarote/crm/service/ICrmQyjbxxService.java +++ b/crm/src/main/java/com/kakarote/crm/service/ICrmQyjbxxService.java @@ -20,6 +20,7 @@ public interface ICrmQyjbxxService extends BaseService { */ CrmQyjbxx getQyjbxxByNsxx(QyjbxxBo qyjbxxBo); + CrmQyjbxx getQyJbxxByCustomer(QyjbxxBo qyjbxxBo); /** * 通过纳税人名称获取企业基本信息 * @param nsrmc diff --git a/crm/src/main/java/com/kakarote/crm/service/impl/CrmActivityServiceImpl.java b/crm/src/main/java/com/kakarote/crm/service/impl/CrmActivityServiceImpl.java index cf31f8a..3106bc0 100644 --- a/crm/src/main/java/com/kakarote/crm/service/impl/CrmActivityServiceImpl.java +++ b/crm/src/main/java/com/kakarote/crm/service/impl/CrmActivityServiceImpl.java @@ -102,6 +102,9 @@ public class CrmActivityServiceImpl extends BaseServiceImpl ownerRecordList = new ArrayList<>(); List poolRelationList = new ArrayList<>(); for (Integer id : poolBO.getIds()) { @@ -1559,4 +1568,18 @@ public class CrmCustomerServiceImpl extends BaseServiceImpl unContactCustomer(String search, List userIds) { return getBaseMapper().unContactCustomer(search, userIds); } + + /** + * 通过企业名称企业税号联系电话查询客户信息 + * + * @param crmModel + * @return + */ + @Override + public Integer getCustomerByQyjbxx(CrmBusinessSaveBO crmModel) { + CrmCustomer crmCustomer = BeanUtil.copyProperties(crmModel.getEntity(), CrmCustomer.class); + LambdaQueryChainWrapper crmCustomerLambdaQueryChainWrapper = this.lambdaQuery() + .eq(CrmCustomer::getCustomerName,crmCustomer.getCustomerName()); + return crmCustomerLambdaQueryChainWrapper.count(); + } } diff --git a/crm/src/main/java/com/kakarote/crm/service/impl/CrmOpenApiServiceImpl.java b/crm/src/main/java/com/kakarote/crm/service/impl/CrmOpenApiServiceImpl.java index cba2436..64805e2 100644 --- a/crm/src/main/java/com/kakarote/crm/service/impl/CrmOpenApiServiceImpl.java +++ b/crm/src/main/java/com/kakarote/crm/service/impl/CrmOpenApiServiceImpl.java @@ -1,6 +1,54 @@ package com.kakarote.crm.service.impl; +import com.kakarote.core.exception.CrmException; +import com.kakarote.crm.entity.BO.CrmAddCustomerBo; +import com.kakarote.crm.entity.BO.CrmCustomerPoolBO; +import com.kakarote.crm.entity.PO.CrmCustomer; +import com.kakarote.crm.service.ICrmCustomerService; import com.kakarote.crm.service.ICrmOpenApiService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.Arrays; +import java.util.Map; + +import static com.kakarote.core.common.SystemCodeEnum.SYSTEM_NO_AUTH; +import static com.kakarote.crm.constant.CrmPoolEnum.PXQDMDPOOL; + +@Slf4j +@Service public class CrmOpenApiServiceImpl implements ICrmOpenApiService { + @Autowired + private ICrmCustomerService customerService; + + + public void crmAddCustomer(CrmAddCustomerBo crmAddCustomerBo){ + //权限校验 + verifyPermissions(crmAddCustomerBo.getAppId(),crmAddCustomerBo.getAppSecret()); + //判断企业是否存在 + Integer customerByQyjbxx = customerService.getCustomerByQyjbxx(crmAddCustomerBo.getCrmModel()); + //存在用户 + if (customerByQyjbxx >0){ + + }else { + //添加客户 + Map stringObjectMap = customerService.addOrUpdate(crmAddCustomerBo.getCrmModel(), false, null); +// CrmCustomer crmCustomer = (CrmCustomer) stringObjectMap.get("entity"); + Integer customerId = Integer.parseInt(stringObjectMap.get("customerId").toString()); + log.info("添加成功stringObjectMap:{}",stringObjectMap.toString()); + //转入公海 + CrmCustomerPoolBO poolBO = new CrmCustomerPoolBO(); + poolBO.setIds(Arrays.asList(customerId)); + poolBO.setPoolId(PXQDMDPOOL.getId()); + customerService.updateCustomerByIds(poolBO); + } + } + + + private void verifyPermissions(String appId,String appSecret){ + if (!"101011".equals(appId) && !"crmopenapi".equals(appSecret)){ + throw new CrmException(SYSTEM_NO_AUTH); + } + } } diff --git a/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgZbmxServiceImpl.java b/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgZbmxServiceImpl.java index 8678ffc..2964bbc 100644 --- a/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgZbmxServiceImpl.java +++ b/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgZbmxServiceImpl.java @@ -1,6 +1,7 @@ package com.kakarote.crm.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.kakarote.core.servlet.BaseServiceImpl; import com.kakarote.crm.entity.PO.CrmQyfxjcjgZbmx; import com.kakarote.crm.mapper.CrmQyfxjcjgZbmxMapper; @@ -41,4 +42,11 @@ public class CrmQyfxjcjgZbmxServiceImpl extends BaseServiceImpl getQyfxjcjgZbmxListByJcId(String jcId) { + return new LambdaQueryChainWrapper<>(crmQyfxjcjgZbmxMapper) + .eq(CrmQyfxjcjgZbmx::getJcpcUuid,jcId) + .list(); + } } diff --git a/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyjbxxServiceImpl.java b/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyjbxxServiceImpl.java index a3af5e4..70404fd 100644 --- a/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyjbxxServiceImpl.java +++ b/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyjbxxServiceImpl.java @@ -6,11 +6,15 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.kakarote.core.exception.CrmException; import com.kakarote.core.feign.crm.service.CrmService; +import com.kakarote.core.redis.RedisImpl; import com.kakarote.core.servlet.BaseServiceImpl; +import com.kakarote.crm.common.CrmModel; import com.kakarote.crm.entity.BO.QyjbxxBo; import com.kakarote.crm.entity.PO.CrmQyjbxx; import com.kakarote.crm.mapper.CrmQyjbxxMapper; +import com.kakarote.crm.service.ICrmCustomerService; import com.kakarote.crm.service.ICrmQyjbxxService; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -18,11 +22,17 @@ import java.util.List; import static com.kakarote.core.common.SystemCodeEnum.SYSTEM_NO_VALID; +@Slf4j @Service public class CrmQyjbxxServiceImpl extends BaseServiceImpl implements ICrmQyjbxxService { @Autowired private CrmQyjbxxMapper crmQyjbxxMapper; + @Autowired + private ICrmCustomerService crmCustomerService; + + private RedisImpl redis; + /** * 通过企业Id查询企业基本信息 @@ -47,9 +57,16 @@ public class CrmQyjbxxServiceImpl extends BaseServiceImpl NOT_AUTH_URLS = Lists.newArrayList("/crmMarketing/queryMarketingId", "/crmMarketing/queryAddField", "/crmMarketing/saveMarketingInfo", "/adminUser/queryLoginUser", "/crmCall/upload","/adminUser/querySystemStatus","/adminUser/initUser","/crmCustomer/queryPageList","/openApi/crm/addCorporateSeas"); + private static final List NOT_AUTH_URLS = Lists.newArrayList("/crmMarketing/queryMarketingId", "/crmMarketing/queryAddField", "/crmMarketing/saveMarketingInfo", "/adminUser/queryLoginUser", "/crmCall/upload","/adminUser/querySystemStatus","/adminUser/initUser","/crmCustomer/queryPageList","/crmOpenApi/crm/addCorporateSeas"); /**