Commit cec6b998 by fudahua

企业微信好友获取key

parent ef2607e5
......@@ -46,4 +46,11 @@ public interface ExternalClerkRelatedApiService {
*/
boolean pushExternalByRelationKey(String relationKey);
/**
* 获取企业下的关联关系列表
*
* @return
*/
List<ExternalClerkRelatedDTO> listExternalClerkByWxUserIdAncExternalUserId(String wxEnterpriseId, String wxUserId, String enterpriseId, String externalUserId);
}
......@@ -81,4 +81,14 @@ public interface MemberUnionidRelatedApiService {
*/
ServiceResponse<List<FriendStoreInfoDTO>> listFriendClerkByMemberUnionid(String enterpriseId, String unionId);
/**
* 根据企业内部外部联系人id 获取关联关系
*
* @param wxEnterpriseId
* @param wxUserId
* @param selfExternalUserId
* @return
*/
MemberUnionidRelatedDTO getExternalUseridInfoBySelfExternalUserId(String wxEnterpriseId, String wxUserId, String selfExternalUserId);
}
......@@ -47,4 +47,14 @@ public interface MemberUnionidRelatedMapper {
List<MemberUnionidRelated> getByWxUserIdListAndWxEnterpriseId(@Param("userIdList")List<String> userIdList, @Param("wxEnterpriseId")String wxEnterpriseId);
void cleanStaffRelated(@Param("wxEnterpriseId")String wxEnterpriseId, @Param("staffIds")List<String> staffIds);
/**
* 根据应用内的外部联系人获取信息
*
* @param wxUserId
* @param wxEnterpriseId
* @param selfExternalUserId
* @return
*/
MemberUnionidRelated getBySelfExternalUserId(@Param("wxUserId") String wxUserId, @Param("wxEnterpriseId") String wxEnterpriseId, @Param("selfExternalUserId") String selfExternalUserId);
}
\ No newline at end of file
......@@ -79,6 +79,17 @@ public interface TabHaobanExternalClerkRelatedMapper {
*/
TabHaobanExternalClerkRelated pushExternalByRelationKey(@Param("relationKey") String relationKey);
/**
* 获取企业下的关联关系列表
*
* @param wxEnterpriseId
* @param wxUserId
* @param enterpriseId
* @param externalUserId
* @return
*/
List<TabHaobanExternalClerkRelated> listExternalClerkByWxUserIdAncExternalUserId(String wxEnterpriseId, String wxUserId, String enterpriseId, String externalUserId);
}
\ No newline at end of file
......@@ -36,4 +36,14 @@ public interface MemberUnionRelatedService {
String enterpriseId);
void cleanStaffRelated(String wxEnterpriseId, List<String> staffIds);
/**
* 根据应用内的外部联系人id 获取信息
*
* @param wxUserId
* @param wxEnterpriseId
* @param selfExternalUserId
* @return
*/
MemberUnionidRelatedDTO getBySelfExternalUserId(String wxUserId, String wxEnterpriseId, String selfExternalUserId);
}
......@@ -81,6 +81,12 @@ public class MemberUnionRelatedServiceImpl implements MemberUnionRelatedService
return;
}
mapper.cleanStaffRelated(wxEnterpriseId,staffIds);
}
@Override
public MemberUnionidRelatedDTO getBySelfExternalUserId(String wxUserId, String wxEnterpriseId, String selfExternalUserId) {
MemberUnionidRelated unionidRelated = mapper.getBySelfExternalUserId(wxUserId, wxEnterpriseId, selfExternalUserId);
return EntityUtil.changeEntityNew(MemberUnionidRelatedDTO.class, unionidRelated);
}
}
......@@ -72,4 +72,10 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
tabHaobanExternalClerkRelatedMapper.pushExternalByRelationKey(relationKey);
return true;
}
@Override
public List<ExternalClerkRelatedDTO> listExternalClerkByWxUserIdAncExternalUserId(String wxEnterpriseId, String wxUserId, String enterpriseId, String externalUserId) {
List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listExternalClerkByWxUserIdAncExternalUserId(wxEnterpriseId, wxUserId, enterpriseId, externalUserId);
return EntityUtil.changeEntityListNew(ExternalClerkRelatedDTO.class, list);
}
}
......@@ -1345,4 +1345,9 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
resp.setResult(ret);
return resp;
}
@Override
public MemberUnionidRelatedDTO getExternalUseridInfoBySelfExternalUserId(String wxEnterpriseId, String wxUserId, String selfExternalUserId) {
return memberUnionRelatedService.getBySelfExternalUserId(wxUserId, wxEnterpriseId, selfExternalUserId);
}
}
......@@ -315,4 +315,14 @@
)
and status_flag = 1
</update>
<select id="getBySelfExternalUserId" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_member_unionid_related
where wx_enterprise_id = #{wxEnterpriseId}
and status_flag = 1
and wx_user_id = #{wxUserId, jdbcType=CHAR}
and self_external_userid = #{selfExternalUserId}
</select>
</mapper>
\ No newline at end of file
......@@ -414,4 +414,16 @@
where relation_key = #{relationKey,jdbcType=VARCHAR}
and status_flag in(3,4)
</update>
<select id="listExternalClerkByWxUserIdAncExternalUserId" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_external_clerk_related
where wx_user_id = #{wxUserId,jdbcType=VARCHAR}
and wx_enterprise_id = #{wxEnterpriseId}
and enterprise_id = #{enterpriseId}
and external_user_id = #{externalUserId}
and status_flag in(3,4)
order by update_time desc
</select>
</mapper>
\ No newline at end of file
......@@ -80,7 +80,10 @@ public class InfoController extends WebBaseController{
@Autowired
private StaffClerkRelationApiService staffClerkRelationApiService;
@Autowired
private ExternalClerkRelatedApiService externalClerkRelatedApiService;
private static Logger logger= LoggerFactory.getLogger(InfoController.class);
@Autowired
......@@ -320,4 +323,33 @@ public class InfoController extends WebBaseController{
return resultResponse(HaoBanErrCode.ERR_1,new ArrayList<>());
}
/**
* 获取绑定信息
*
* @param externalUserid
* @param wxUserId
* @param wxEnterpriseId
* @return
*/
@RequestMapping("get-send-message-info")
public HaobanResponse getMessageMember(String externalUserid, String wxUserId, String wxEnterpriseId, String enterpriseId) {
if (StringUtils.isAnyBlank(externalUserid, wxUserId, wxEnterpriseId)) {
return resultResponse(HaoBanErrCode.ERR_2);
}
MemberUnionidRelatedDTO memberUnionidRelatedDTO = memberUnionidRelatedApiService.getExternalUseridInfoBySelfExternalUserId(wxEnterpriseId, wxUserId, externalUserid);
if (null == memberUnionidRelatedDTO) {
logger.info("请刷新好友");
//todo 后续新增自动创建好友记录
return resultResponse(HaoBanErrCode.ERR_11123);
}
List<ExternalClerkRelatedDTO> clerkRelatedDTOS = externalClerkRelatedApiService.listExternalClerkByWxUserIdAncExternalUserId(wxEnterpriseId, wxUserId, enterpriseId, externalUserid);
if (CollectionUtils.isEmpty(clerkRelatedDTOS)) {
logger.info("该企业没有对应需要发送的信息村子啊");
//todo 后续新增自动创建好友记录
return resultResponse(HaoBanErrCode.ERR_11123);
}
ExternalClerkRelatedDTO clerkRelatedDTO = clerkRelatedDTOS.get(0);
return resultResponse(HaoBanErrCode.ERR_1, clerkRelatedDTO.getRelationKey());
}
}
......@@ -219,6 +219,8 @@ public enum HaoBanErrCode {
ERR_11122(11122,"手机号已存在"),
ERR_11123(11123, "还不是好办好友,需要在好办端刷新企业微信好友"),
ERR_999(999, "操作失败"),
ERR_DEFINE(-888, "自定义错误"),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment