Commit e3253862 by 徐高华

Merge branch 'developer' of http://git.gicdev.com/haoban3.0/haoban-manage3.0.git into developer

parents 25400521 cb424cb1
......@@ -35,6 +35,8 @@ public class ExternalUserDTO implements Serializable{
*/
private Integer friendType;
private String state;
public Integer getFriendType() {
return friendType;
}
......@@ -146,8 +148,12 @@ public class ExternalUserDTO implements Serializable{
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
}
......@@ -204,6 +204,18 @@ public interface TabHaobanStaffClerkRelationMapper {
List<String> listWxUserIdByClerkIds(@Param("clerkIds") List<String> clerkIds,
@Param("wxEnterpriseId") String wxEnterpriseId);
/**
* 根据导购查询wxopenuserid
*
* @param clerkIds 职员id
* @param wxEnterpriseId wx企业标识
* @return {@link List }<{@link String }>
* @author mozhu
* @date 2022-08-09 00:42:31
*/
List<String> listWxOpenUserIdByClerkIds(@Param("clerkIds") List<String> clerkIds,
@Param("wxEnterpriseId") String wxEnterpriseId);
/**
* 通过userId 查询id
......
......@@ -22,6 +22,7 @@ public class ExternalUserPojo implements Serializable{
* 1表示该外部联系人是微信用户,2表示该外部联系人是企业微信用户
*/
private Integer friendType;
private String state;
public Integer getFriendType() {
return friendType;
......@@ -86,4 +87,12 @@ public class ExternalUserPojo implements Serializable{
public void setWxUserId(String wxUserId) {
this.wxUserId = wxUserId;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
}
......@@ -8,6 +8,7 @@ import com.gic.haoban.base.api.common.BasePageInfo;
import com.gic.haoban.common.utils.PageUtil;
import com.gic.haoban.common.utils.StringUtil;
import com.gic.haoban.manage.api.dto.StaffClerkRelationDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseDTO;
import com.gic.haoban.manage.api.dto.qdto.hm.HmQrcodeQDTO;
import com.gic.haoban.manage.api.enums.BindTypeEnum;
import com.gic.haoban.manage.api.enums.ChannelCodeEnum;
......@@ -57,6 +58,8 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService
private StaffService staffService;
@Autowired
private HmClerkRelationApiService hmClerkRelationApiService;
@Autowired
private WxEnterpriseService wxEnterpriseService;
@Override
public List<StaffClerkRelationDTO> listBindCode(String enterpriseId, Set<String> clerkCodeList) {
......@@ -322,6 +325,11 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService
if (CollectionUtils.isEmpty(clerkList)) {
return null;
}
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseService.selectById(wxEnterpriseId);
String corpid = wxEnterpriseDTO.getCorpid();
if (corpid.length() > 20) {
return mapper.listWxOpenUserIdByClerkIds(clerkList, wxEnterpriseId);
}
return mapper.listWxUserIdByClerkIds(clerkList, wxEnterpriseId);
}
......
......@@ -985,6 +985,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
String avatar = "";
String relaName = "";
String externalUserId = "";
String state = "";
if (StringUtils.isNotBlank(unionIdJson)) {
JSONObject jo = JSON.parseObject(unionIdJson);
String external_contact = jo.getString("external_contact");
......@@ -1006,6 +1007,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
String followJson = JSON.toJSONString(object);
JSONObject follow = JSON.parseObject(followJson);
userId = follow.getString("userid");
state = follow.getString("state");
if (userId.equals(userId1)) {
createTime = follow.getString("createtime");
}
......@@ -1018,6 +1020,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
pojo.setUnionId(unionId);
pojo.setExternalUserId(externalUserId);
pojo.setWxEnterpriseId(wxEnterpriseId);
pojo.setState(state);
return pojo;
}
......@@ -1704,6 +1707,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
String createTime = "";
String avatar = "";
Integer friendType = 1;
String state = "";
if (StringUtils.isNotBlank(uJ)) {
JSONObject jo = JSON.parseObject(uJ);
String external_contact = jo.getString("external_contact");
......@@ -1725,6 +1729,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
String followJson = JSON.toJSONString(object);
JSONObject follow = JSON.parseObject(followJson);
uj_userId = follow.getString("userid");
state = follow.getString("state");
//第三方返回的是加密的,多做一层判断
if (uj_userId.equals(wxUserId) || uj_userId.equals(wxOpenUseId)) {
if (jt != null) {
......@@ -1743,6 +1748,7 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
pojo.setWxEnterpriseId(wxEnterpriseId);
pojo.setAvatar(avatar);
pojo.setFriendType(friendType);
pojo.setState(state);
return EntityUtil.changeEntityByJSON(ExternalUserDTO.class, pojo);
}
......
......@@ -142,13 +142,14 @@ public class HmQrcodeApiServiceImpl implements HmQrcodeApiService {
qywxExternalcontactDTO.setRemark(hmQrcodeQDTO.getName());
qywxExternalcontactDTO.setSkipVerify(hmQrcodeQDTO.getPassFlag() == 1);
qywxExternalcontactDTO.setState("HM" + hmId);
String corpid = wxEnterpriseDTO.getCorpid();
List<String> userIds = staffClerkRelationService.listWxUserIdByClerkIds(clerkIdList, wxEnterpriseId);
if (CollectionUtils.isEmpty(userIds)) {
return ServiceResponse.failure(Convert.toStr(HaoBanErrCodeCommon.ERR_8.getCode()), "导购未关联好办");
}
qywxExternalcontactDTO.setUser(userIds);
logger.info("新增活码参数:{}", JSON.toJSONString(qywxExternalcontactDTO));
QywxExternalcontactResultDTO qywxExternalcontactResultDTO = qywxUserApiService.addContactWay(wxEnterpriseDTO.getCorpid(), config.getWxSuiteid(), qywxExternalcontactDTO);
QywxExternalcontactResultDTO qywxExternalcontactResultDTO = qywxUserApiService.addContactWay(corpid, config.getWxSuiteid(), qywxExternalcontactDTO);
if (qywxExternalcontactResultDTO.getErrcode() != 0) {
return ServiceResponse.failure(Convert.toStr(HaoBanErrCodeCommon.ERR_0.getCode()), "创建活码失败:" + qywxExternalcontactResultDTO.getErrmsg());
}
......
......@@ -253,7 +253,7 @@
wx_open_id = #{wxOpenId},
</if>
<if test="qrCode != null">
qr_code = #{qrCode}
qr_code = #{qrCode},
</if>
<if test="addNum != null">
add_num = #{addNum}
......
......@@ -466,8 +466,21 @@
<select id="listWxUserIdByClerkIds" resultType="string">
select
a.wx_user_id wxUserId
DISTINCT b.wx_user_id
from tab_haoban_staff_clerk_relation a
left join tab_haoban_staff b on a.staff_id = b.staff_id
where a.status_flag=1 and a.wx_enterprise_id = #{wxEnterpriseId}
and a.clerk_id in
<foreach collection="clerkIds" item="id" index="index" open="(" close=")" separator=",">
#{id,jdbcType=VARCHAR}
</foreach>
</select>
<select id="listWxOpenUserIdByClerkIds" resultType="string">
select
DISTINCT b.wx_open_user_id
from tab_haoban_staff_clerk_relation a
left join tab_haoban_staff b on a.staff_id = b.staff_id
where a.status_flag=1 and a.wx_enterprise_id = #{wxEnterpriseId}
and a.clerk_id in
<foreach collection="clerkIds" item="id" index="index" open="(" close=")" separator=",">
......
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