diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPhoneLocationDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPhoneLocationDAO.java new file mode 100644 index 000000000..1c77d282b --- /dev/null +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPhoneLocationDAO.java @@ -0,0 +1,33 @@ +package com.cool.store.dao; + +import com.cool.store.entity.HyPhoneLocationDO; +import com.cool.store.mapper.HyPhoneLocationMapper; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Repository; + +import javax.annotation.Resource; + +/** + * @Author suzhuhong + * @Date 2023/6/30 14:51 + * @Version 1.0 + */ +@Repository +public class HyPhoneLocationDAO { + + @Resource + HyPhoneLocationMapper hyPhoneLocationMapper; + + + + public int insertSelective(HyPhoneLocationDO record){ + return hyPhoneLocationMapper.insertSelective(record); + } + + + public HyPhoneLocationDO selectByPhoneNumber(String phoneNumber){ + return hyPhoneLocationMapper.selectByPhoneNumber(phoneNumber); + } + + +} diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPhoneLocationMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPhoneLocationMapper.java new file mode 100644 index 000000000..ddeefef06 --- /dev/null +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPhoneLocationMapper.java @@ -0,0 +1,32 @@ +package com.cool.store.mapper; + +import com.cool.store.entity.HyPhoneLocationDO; +import org.apache.ibatis.annotations.Param; + +/** + * @author zhangchenbiao + * @date 2023-06-30 02:47 + */ +public interface HyPhoneLocationMapper { + /** + * + * 默认插入方法,只会给有值的字段赋值 + * 会对传进来的字段做判空处理,如果字段为空,则使用数据库默认字段或者null + * dateTime:2023-06-30 02:47 + */ + int insertSelective(@Param("record") HyPhoneLocationDO record); + + /** + * + * 默认更新方法,根据主键更新,不会把null值更新到数据库,避免覆盖之前有值的 + * dateTime:2023-06-30 02:47 + */ + int updateByPrimaryKeySelective(@Param("record") HyPhoneLocationDO record); + + /** + * 查询手机号 + * @param phoneNumber + * @return + */ + HyPhoneLocationDO selectByPhoneNumber(@Param("phoneNumber") String phoneNumber); +} \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml index a407232ee..9b9a3f037 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml @@ -318,12 +318,14 @@ hpuinfo.mobile as partnerUserPhone, hpuinfo.username as partnerUserName, hpuc.channel_name as channelName, - hpii.education as education + hpii.education as education, + hpl.phone_address as phoneAddress from hy_partner_line_info a left join hy_partner_base_info b on a.id = b.partner_line_id LEFT JOIN hy_partner_intent_info hpii ON a.id = hpii.partner_line_id LEFT JOIN hy_partner_user_info hpuinfo ON a.partner_id = hpuinfo.partner_id LEFT JOIN hy_partner_user_channel hpuc ON a.user_channel_id = hpuc.channel_id + LEFT JOIN hy_phone_location hpl ON hpl.phone_number = hpuinfo.mobile and a.id = #{lineId} @@ -377,10 +379,12 @@ a.create_time as createTime, a.close_user_id as closeUserId, a.close_time as closeTime, - a.join_black_reason as joinBlackReason + a.join_black_reason as joinBlackReason, + hpl.phone_address as phoneAddress from hy_partner_line_info a inner join hy_partner_user_info b on a.partner_id = b.partner_id LEFT JOIN hy_open_area_info hoai ON hoai.id = b.want_shop_area + LEFT JOIN hy_phone_location hpl ON hpl.phone_number = b.mobile where a.deleted = 0 and a.line_status = 3 @@ -429,10 +433,12 @@ b.mobile as mobile, b.username as userName, b.want_shop_area as wantShopArea, - b.accept_adjust_type as acceptAdjustType + b.accept_adjust_type as acceptAdjustType, + hpl.phone_address as phoneAddress FROM hy_partner_line_info a inner JOIN hy_partner_user_info b on a.partner_id = b.partner_id LEFT JOIN hy_open_area_info hoai ON hoai.id = b.want_shop_area + LEFT JOIN hy_phone_location hpl ON hpl.phone_number = b.mobile where a.line_status = 0 and a.deleted = 0 and b.username like concat('%',#{userNameKeyword},'%') @@ -501,7 +507,7 @@ AND hpli.workflow_status = #{workflowStatus} - AND hpli.deadline BETWEEN #{deadlineStart} and #{deadlineStart} + AND hpli.deadline BETWEEN #{deadlineStart} and #{deadlineEnd} and hoai.area_path like concat('%/',#{intentAreaName},'/%') diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPhoneLocationMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPhoneLocationMapper.xml new file mode 100644 index 000000000..35c031d82 --- /dev/null +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPhoneLocationMapper.xml @@ -0,0 +1,69 @@ + + + + + + + + + + + + id, phone_number, phone_address, create_time, update_time + + + + insert into hy_phone_location + + + phone_number, + + + phone_address, + + + create_time, + + + update_time, + + + + + #{record.phoneNumber}, + + + #{record.phoneAddress}, + + + #{record.createTime}, + + + #{record.updateTime}, + + + + + update hy_phone_location + + + phone_number = #{phoneNumber}, + + + phone_address = #{phoneAddress}, + + + create_time = #{createTime}, + + + update_time = #{updateTime}, + + + where id = #{id} + + \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/SysRoleMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/SysRoleMapper.xml index e0b189d5a..b09a086ce 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/SysRoleMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/SysRoleMapper.xml @@ -126,7 +126,7 @@ from sys_role r inner join enterprise_user_role e on r.role_id = e.role_id where - e.user_id = #{userId} and r.deleted = 0 + e.user_id = #{userId} and r.deleted = 0 and e.deleted = 0 limit 1 diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/partner/PartnerBlackListDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/partner/PartnerBlackListDTO.java index 26bfab167..67ded3f27 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/dto/partner/PartnerBlackListDTO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/partner/PartnerBlackListDTO.java @@ -28,4 +28,6 @@ public class PartnerBlackListDTO { private String joinBlackReason; + private String phoneAddress; + } diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/partner/PublicSeaLineDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/partner/PublicSeaLineDTO.java index 42539c40e..53c0bf622 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/dto/partner/PublicSeaLineDTO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/partner/PublicSeaLineDTO.java @@ -27,4 +27,6 @@ public class PublicSeaLineDTO { private String acceptAdjustType; private Date updateTime; + + private String phoneAddress; } diff --git a/coolstore-partner-model/src/main/java/com/cool/store/entity/HyPhoneLocationDO.java b/coolstore-partner-model/src/main/java/com/cool/store/entity/HyPhoneLocationDO.java new file mode 100644 index 000000000..6c368f0b8 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/entity/HyPhoneLocationDO.java @@ -0,0 +1,35 @@ +package com.cool.store.entity; + +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.util.Date; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * + * @author zhangchenbiao + * @date 2023-06-30 02:47 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class HyPhoneLocationDO implements Serializable { + @ApiModelProperty("") + private Long id; + + @ApiModelProperty("手机号") + private String phoneNumber; + + @ApiModelProperty("手机号归属地") + private String phoneAddress; + + @ApiModelProperty("创建时间") + private Date createTime; + + @ApiModelProperty("更新时间") + private Date updateTime; +} \ No newline at end of file diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/HyPhoneLocationService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPhoneLocationService.java new file mode 100644 index 000000000..138e37ea1 --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPhoneLocationService.java @@ -0,0 +1,18 @@ +package com.cool.store.service; + +/** + * @Author suzhuhong + * @Date 2023/6/30 15:02 + * @Version 1.0 + */ +public interface HyPhoneLocationService { + + + /** + * 处理手机号归属地 + * @param phoneNumber + * @return + */ + String handleHyPhoneAddress(String phoneNumber); + +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AliyunServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AliyunServiceImpl.java index 87afd01f3..224bdc2a5 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AliyunServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AliyunServiceImpl.java @@ -42,18 +42,9 @@ import java.util.Random; @Service public class AliyunServiceImpl implements AliyunService { - @Resource - RedisUtilPool redisUtilPool; - @Resource - RedisConstantUtil redisConstantUtil; - @Override public DescribePhoneNumberDTO getPhoneNumberAttribute(String phoneNumber) { try { - String phone = redisUtilPool.getString(redisConstantUtil.getPhoneNumber(phoneNumber)); - if (StringUtils.isNotEmpty(phone)){ - return JSONObject.parseObject(phone, DescribePhoneNumberDTO.class); - } Config config = new Config(); //todo zcb ak sk替换 config.accessKeyId = "LTAI5t9RaXvABZbHvoXjDFJ1"; @@ -69,8 +60,6 @@ public class AliyunServiceImpl implements AliyunService { log.error("错误信息:" , response.body.message + ""); throw new ServiceException(ErrorCodeEnum.GET_PHONENUMBER_INFO_ERROR); } - //保存到redis - redisUtilPool.setString(redisConstantUtil.getPhoneNumber(phoneNumber),JSONObject.toJSONString(response.body.data)); return JSONObject.parseObject(JSONObject.toJSONString(response.body.data), DescribePhoneNumberDTO.class); } catch (Exception e) { log.error("获取手机号异常:", e); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/EnterpriseSyncServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/EnterpriseSyncServiceImpl.java index a5c7912e8..fdebd0e79 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/EnterpriseSyncServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/EnterpriseSyncServiceImpl.java @@ -199,6 +199,8 @@ public class EnterpriseSyncServiceImpl implements EnterpriseSyncService { List enterpriseUserRole = EnterpriseUserRoleDO.convertSyncDO(role.getRoleId(), new ArrayList<>(Arrays.asList(userDetail.getUserId()))); enterpriseUserRoleDAO.batchInsertOrUpdate(enterpriseUserRole); enterpriseUserRoleDAO.deleteUserInRole(userDetail.getUserId(), DataSourceEnum.SYNC, role.getRoleId()); + }else{ + enterpriseUserRoleDAO.deleteUserRole(userDetail.getUserId()); } EnterpriseUserDO enterpriseUser = EnterpriseUserDTO.transUserDtoToDo(userDetail, regionPathMap, leaderDeptMap); enterpriseUserDAO.batchInsertOrUpdate(new ArrayList<>(Arrays.asList(enterpriseUser))); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java index 6a03c3041..4d808ca8a 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java @@ -20,6 +20,7 @@ import com.cool.store.request.AddTagsRequest; import com.cool.store.request.PartnerBaseInfoRequest; import com.cool.store.service.HyPartnerBaseInfoService; import com.cool.store.service.HyPartnerLineInfoService; +import com.cool.store.service.HyPhoneLocationService; import com.cool.store.utils.RedisUtilPool; import com.cool.store.vo.PartnerBaseInfoVO; import com.cool.store.vo.PartnerUserInfoVO; @@ -59,6 +60,8 @@ public class HyPartnerBaseInfoServiceImpl implements HyPartnerBaseInfoService { @Resource HyPartnerTaskInfoLogDAO hyPartnerTaskInfoLogDAO; + @Resource + HyPhoneLocationService hyPhoneLocationService; @Override diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java index e59b539d2..cc4760fce 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java @@ -21,6 +21,7 @@ import com.cool.store.request.PartnerIntentInfoRequest; import com.cool.store.request.PartnerWantShopInfoRequest; import com.cool.store.service.HyPartnerIntentInfoService; import com.cool.store.service.HyPartnerLineInfoService; +import com.cool.store.service.HyPhoneLocationService; import com.cool.store.utils.RedisUtilPool; import com.cool.store.utils.StringUtil; import com.cool.store.vo.PartnerIntentApplyInfoVO; @@ -66,6 +67,8 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic HyOpenAreaInfoDAO hyOpenAreaInfoDAO; @Resource HyPartnerLineInfoService hyPartnerLineInfoService; + @Resource + HyPhoneLocationService hyPhoneLocationService; @Override public PageInfo getPartnerIntentApplyList(String userId, String type, Integer pageSize, Integer pageNumber) { @@ -92,9 +95,9 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic partnerIntentApplyInfo.setList(resultList); return partnerIntentApplyInfo; } - @Override public Boolean updatePartnerIntentInfo(BaseUserInfoRequest baseUserInfoRequest) { + HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(String.valueOf(baseUserInfoRequest.getPartnerId())); if (hyPartnerUserInfoDO==null){ throw new ServiceException(ErrorCodeEnum.PARTNER_USER_NOT_EXIST); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java index 46a100fa7..8628e8cc5 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java @@ -75,6 +75,8 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { WorkFlowService workFlowService; @Resource HyPartnerTaskInfoLogDAO hyPartnerTaskInfoLogDAO; + @Resource + HyPhoneLocationService hyPhoneLocationService; @Override @@ -101,10 +103,6 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { partnerLineInfoAndBaseInfoVO.setPassUserName(userInfo.getName()); partnerLineInfoAndBaseInfoVO.setPassUserMobile(userInfo.getMobile()); } - if (StringUtils.isNotEmpty(partnerLineInfoAndBaseInfoVO.getPartnerUserPhone())){ - DescribePhoneNumberDTO phoneNumberAttribute = aliyunService.getPhoneNumberAttribute(partnerLineInfoAndBaseInfoVO.getPartnerUserPhone()); - partnerLineInfoAndBaseInfoVO.setPhoneAddress(phoneNumberAttribute!=null? phoneNumberAttribute.getProvince() + " " + phoneNumberAttribute.getCity():""); - } if (StringUtils.isNotEmpty(partnerLineInfoAndBaseInfoDTO.getWantShopArea())){ HyOpenAreaInfoDO hyOpenAreaInfoDO = hyOpenAreaInfoDAO.selectById(Long.valueOf(partnerLineInfoAndBaseInfoDTO.getWantShopArea())); partnerLineInfoAndBaseInfoVO.setWantShopAreaName(hyOpenAreaInfoDO.getAreaPath().replace("/"," ")); @@ -235,9 +233,6 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { BlackListVO blackListVO = convertPartnerBlackListDTOToVo(x); blackListVO.setCloseUserPhone(userPhoneMap.get(x.getCloseUserId())); blackListVO.setCloseUserName(userPhoneMap.get(x.getCloseUserId())); - if (StringUtils.isNotEmpty(x.getMobile())){ - blackListVO.setPhoneAddress(aliyunService.getPhoneNumberAttribute(x.getMobile()).getCity()); - } result.add(blackListVO); }); blackListDTOPageInfo.setList(result); @@ -452,8 +447,11 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { publicSeaLineListVo.setCreateTime(DateUtil.format(x.getCreateTime(),CoolDateUtils.DATE_FORMAT_SEC_2)); publicSeaLineListVo.setPartnerUserName(x.getUserName()); publicSeaLineListVo.setPartnerUserPhone(x.getMobile()); - DescribePhoneNumberDTO phoneNumberAttribute = aliyunService.getPhoneNumberAttribute(x.getMobile()); - publicSeaLineListVo.setPhoneAddress(phoneNumberAttribute.getCity()); + String phoneAddress = x.getPhoneAddress(); + if (StringUtils.isEmpty(phoneAddress)){ + phoneAddress = hyPhoneLocationService.handleHyPhoneAddress(x.getMobile()); + } + publicSeaLineListVo.setPhoneAddress(phoneAddress); publicSeaLineListVo.setWantShopArea(x.getWantShopArea()); publicSeaLineListVo.setUpdateTime(DateUtil.format(x.getUpdateTime(),CoolDateUtils.DATE_FORMAT_SEC_2)); publicSeaLineListVo.setId(x.getLineId()); @@ -709,6 +707,12 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { blackListVO.setCloseTime(closeTime); blackListVO.setJoinBlackReason(partnerBlackListDTO.getJoinBlackReason()); blackListVO.setCloseUserId(partnerBlackListDTO.getCloseUserId()); + String phoneAddress = partnerBlackListDTO.getPhoneAddress(); + if (StringUtils.isEmpty(phoneAddress)){ + phoneAddress = hyPhoneLocationService.handleHyPhoneAddress(partnerBlackListDTO.getMobile()); + } + blackListVO.setPhoneAddress(phoneAddress); + blackListVO.setPhoneAddress(partnerBlackListDTO.getPhoneAddress()); blackListVO.setCloseUserPhone(partnerBlackListDTO.getCloseUserId()); return blackListVO; } @@ -733,6 +737,11 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { partnerLineInfoAndBaseInfoVO.setWorkflowStage(partnerLineInfoAndBaseInfoDTO.getWorkflowStage()); partnerLineInfoAndBaseInfoVO.setWorkflowStatus(partnerLineInfoAndBaseInfoDTO.getWorkflowStatus()); partnerLineInfoAndBaseInfoVO.setPassCause(partnerLineInfoAndBaseInfoDTO.getPassCause()); + String phoneAddress = partnerLineInfoAndBaseInfoDTO.getPhoneAddress(); + if (StringUtils.isEmpty(phoneAddress)){ + phoneAddress = hyPhoneLocationService.handleHyPhoneAddress(partnerLineInfoAndBaseInfoDTO.getPartnerUserPhone()); + } + partnerLineInfoAndBaseInfoVO.setPhoneAddress(phoneAddress); partnerLineInfoAndBaseInfoVO.setLineStatus(partnerLineInfoAndBaseInfoDTO.getLineStatus()); partnerLineInfoAndBaseInfoVO.setInvestmentManagerPhone(partnerLineInfoAndBaseInfoDTO.getInvestmentManagerPhone()); partnerLineInfoAndBaseInfoVO.setPartnerUserPhone(partnerLineInfoAndBaseInfoDTO.getPartnerUserPhone()); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPhoneLocationServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPhoneLocationServiceImpl.java new file mode 100644 index 000000000..ac2d3a4d4 --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPhoneLocationServiceImpl.java @@ -0,0 +1,59 @@ +package com.cool.store.service.impl; + +import com.alibaba.fastjson.JSONObject; +import com.cool.store.dao.HyPhoneLocationDAO; +import com.cool.store.dto.partner.DescribePhoneNumberDTO; +import com.cool.store.dto.wx.PhoneInfoDTO; +import com.cool.store.entity.HyPhoneLocationDO; +import com.cool.store.mapper.HyPhoneLocationMapper; +import com.cool.store.service.AliyunService; +import com.cool.store.service.HyPhoneLocationService; +import com.cool.store.utils.RedisConstantUtil; +import com.cool.store.utils.RedisUtilPool; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * @Author suzhuhong + * @Date 2023/6/30 15:04 + * @Version 1.0 + */ +@Service +@Slf4j +public class HyPhoneLocationServiceImpl implements HyPhoneLocationService { + @Resource + HyPhoneLocationDAO hyPhoneLocationDAO; + @Resource + AliyunService aliyunService; + @Resource + RedisUtilPool redisUtilPool; + @Resource + RedisConstantUtil redisConstantUtil; + + @Override + public String handleHyPhoneAddress(String phoneNumber) { + if (StringUtils.isEmpty(phoneNumber)){ + return ""; + } + String phone = redisUtilPool.getString(redisConstantUtil.getPhoneNumber(phoneNumber)); + if (StringUtils.isNotEmpty(phone)){ + DescribePhoneNumberDTO describePhoneNumberDTO = JSONObject.parseObject(phone, DescribePhoneNumberDTO.class); + return String.format("%s %s", describePhoneNumberDTO.getProvince(), describePhoneNumberDTO.getCity()); + } + HyPhoneLocationDO hyPhoneLocationDO = hyPhoneLocationDAO.selectByPhoneNumber(phoneNumber); + if (hyPhoneLocationDO==null){ + DescribePhoneNumberDTO phoneNumberAttribute = aliyunService.getPhoneNumberAttribute(phoneNumber); + HyPhoneLocationDO hy = new HyPhoneLocationDO(); + hy.setPhoneNumber(phoneNumber); + hy.setPhoneAddress(String.format("%s %s", phoneNumberAttribute.getProvince(), phoneNumberAttribute.getCity())); + hyPhoneLocationDAO.insertSelective(hy); + //redis一周时间 + redisUtilPool.setString(redisConstantUtil.getPhoneNumber(phoneNumber),JSONObject.toJSONString(phoneNumberAttribute),7*24*60*60); + return hy.getPhoneAddress(); + } + return hyPhoneLocationDO.getPhoneAddress(); + } +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LoginServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LoginServiceImpl.java index 81f3fed94..3b6f9dd38 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LoginServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LoginServiceImpl.java @@ -58,10 +58,6 @@ public class LoginServiceImpl implements LoginService { throw new ServiceException(ErrorCodeEnum.NOT_AUTH); } SysRoleDO sysRole = sysRoleDAO.getHighestPriorityRoleByUserId(userId); - if(Objects.isNull(sysRole)){ - log.info("当前用户没角色:{}", userId); - throw new ServiceException(ErrorCodeEnum.NOT_AUTH); - } if(UserStatusEnum.FREEZE.getCode().equals(enterpriseUser.getUserStatus())){ throw new ServiceException(ErrorCodeEnum.USER_FREEZE); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java index ae3f3f931..8b7fb78ac 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java @@ -15,10 +15,7 @@ import com.cool.store.enums.OperateTypeEnum; import com.cool.store.exception.ServiceException; import com.cool.store.request.PartnerIntentInfoRequest; import com.cool.store.request.PartnerUserInfoRequest; -import com.cool.store.service.HyPartnerBaseInfoService; -import com.cool.store.service.HyPartnerLineInfoService; -import com.cool.store.service.LogService; -import com.cool.store.service.PartnerUserInfoService; +import com.cool.store.service.*; import com.cool.store.utils.CoolDateUtils; import com.cool.store.utils.RedisUtilPool; import com.cool.store.vo.ApplyBaseInfoVO; @@ -55,6 +52,8 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService { private RedisUtilPool redisUtilPool; @Autowired private LogService logService; + @Resource + HyPhoneLocationService hyPhoneLocationService; @Override public HyPartnerUserInfoDO selectByPartnerId(String partnerId) { diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/WechatMiniAppServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/WechatMiniAppServiceImpl.java index f14ade503..a934431e9 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/WechatMiniAppServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/WechatMiniAppServiceImpl.java @@ -17,6 +17,7 @@ import com.cool.store.enums.UserPlatformTypeEnum; import com.cool.store.exception.ServiceException; import com.cool.store.http.WechatRest; import com.cool.store.request.MobileUpdateRequest; +import com.cool.store.service.HyPhoneLocationService; import com.cool.store.service.WechatMiniAppService; import com.cool.store.utils.AesUtil; import com.cool.store.utils.RedisUtilPool; @@ -55,6 +56,8 @@ public class WechatMiniAppServiceImpl implements WechatMiniAppService { HyOpenAreaInfoDAO hyOpenAreaInfoDAO; @Resource HyPartnerBaseInfoDAO hyPartnerBaseInfoDAO; + @Resource + HyPhoneLocationService hyPhoneLocationService; @Value("${weixin.appId}") private String wxAppId; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java b/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java index 65f8016e6..b3b821b9c 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java +++ b/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java @@ -48,6 +48,8 @@ public class DeskController { EnterpriseUserService enterpriseUserService; @Resource PartnerUserInfoService partnerUserInfoService; + @Resource + HyPhoneLocationService hyPhoneLocationService; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/controller/TestController.java b/coolstore-partner-webb/src/main/java/com/cool/store/controller/TestController.java index ed583acda..0b68f7583 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/controller/TestController.java +++ b/coolstore-partner-webb/src/main/java/com/cool/store/controller/TestController.java @@ -22,10 +22,7 @@ import com.cool.store.http.ISVHttpRequest; import com.cool.store.request.City; import com.cool.store.request.TestRequest; import com.cool.store.response.ResponseResult; -import com.cool.store.service.AliyunService; -import com.cool.store.service.EnterpriseSyncService; -import com.cool.store.service.EnterpriseUserService; -import com.cool.store.service.OpenAreaService; +import com.cool.store.service.*; import com.cool.store.vo.cuser.IdentityCardInfoVO; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; @@ -251,4 +248,12 @@ public class TestController { return ResponseResult.success(openAreaService.searchOpenArea(keyword, applyFlag, Boolean.FALSE)); } + @Resource + HyPhoneLocationService hyPhoneLocationService; + + @GetMapping("/handleHyPhoneAddress") + public ResponseResult test(@RequestParam(value = "phone",required = false)String phone){ + hyPhoneLocationService.handleHyPhoneAddress(phone); + return ResponseResult.success(Boolean.TRUE); + } }