Commit f1839b9f by 墨竹

Merge branch 'fixbug_0719' into developer

parents 44d025dd a19bf907
......@@ -97,9 +97,13 @@ public class WxEnterpriseDTO implements Serializable {
private Date agreeExternalUseridTime;
/**
* 转换状态:0:未转换;1:转换成功;2:转换中
* '转换外部联系人状态:0:未转换;1:转换成功;2:转换中;3:转换失败'
*/
private Integer externalFlag;
/**
* 转换wx_userid状态:0:未转换;1:转换成功;2:转换中;3:转换失败
*/
private Integer useridFlag;
public String getMemberSecret() {
return memberSecret;
......@@ -436,4 +440,12 @@ public class WxEnterpriseDTO implements Serializable {
public void setExternalFlag(Integer externalFlag) {
this.externalFlag = externalFlag;
}
public Integer getUseridFlag() {
return useridFlag;
}
public void setUseridFlag(Integer useridFlag) {
this.useridFlag = useridFlag;
}
}
......@@ -86,6 +86,7 @@ public class TabHaobanWxEnterprise implements Serializable {
* 转换状态:0:未转换;1:转换成功;2:转换中
*/
private Integer externalFlag;
private Integer useridFlag;
public String getMemberSecret() {
return memberSecret;
......@@ -382,4 +383,12 @@ public class TabHaobanWxEnterprise implements Serializable {
public void setExternalFlag(Integer externalFlag) {
this.externalFlag = externalFlag;
}
public Integer getUseridFlag() {
return useridFlag;
}
public void setUseridFlag(Integer useridFlag) {
this.useridFlag = useridFlag;
}
}
\ No newline at end of file
......@@ -426,6 +426,7 @@ public class WxEnterpriseApiServiceImpl implements WxEnterpriseApiService {
wxEnterpriseDTO.setAgreeExternalUseridFlag(openFlag);
wxEnterpriseDTO.setAgreeExternalUseridTime(new Date());
wxEnterpriseDTO.setExternalFlag(openFlag);
wxEnterpriseDTO.setUseridFlag(openFlag);
wxEnterpriseDTO.setUpdateTime(new Date());
wxEnterpriseService.update(wxEnterpriseDTO);
}
......
......@@ -137,8 +137,8 @@ public class QywxStaffSyncOperation implements BaseSyncOperation {
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseApiService.getOne(wxEnterpriseId);
String corpid = wxEnterpriseDTO.getCorpid();
Integer externalFlag = wxEnterpriseDTO.getExternalFlag();
logger.info("同步通讯录完成,批量处理wx_user_id,corpid:{}", corpid);
if (corpid.length() > 20 || externalFlag == 1) {
logger.info("同步通讯录完成,批量处理wx_open_user_id,corpid:{}", corpid);
// 限流器
RRateLimiter rateLimiter = RedisUtil.getRedisClient().getRateLimiter("haoban:manage3:updateWxOpenUserId:limit");
// 每1秒产生5个令牌
......@@ -152,7 +152,7 @@ public class QywxStaffSyncOperation implements BaseSyncOperation {
Page<StaffDTO> staffDTOPageInfo = staffApiService.listUserIdByWxEnterpriseId(wxEnterpriseId, pageNum, 1000);
List<StaffDTO> staffDTOS = staffDTOPageInfo.getResult();
if (CollectionUtils.isEmpty(staffDTOS)) {
logger.info("转换完成,为最后一个");
logger.info("useridToOpenuserid 转换完成,为最后一个");
break;
}
pageNum++;
......@@ -165,7 +165,9 @@ public class QywxStaffSyncOperation implements BaseSyncOperation {
}
}
}
if (corpid.length() > 20){
Integer useridFlag = wxEnterpriseDTO.getUseridFlag();
if (corpid.length() < 20 && useridFlag == 1) {
logger.info("同步通讯录完成,批量处理wx_user_id,corpid:{}", corpid);
// 限流器
RRateLimiter rateLimiter = RedisUtil.getRedisClient().getRateLimiter("haoban:manage3:updateWxUserId:limit");
// 每1秒产生5个令牌
......@@ -181,7 +183,7 @@ public class QywxStaffSyncOperation implements BaseSyncOperation {
Page<StaffDTO> staffDTOPageInfo = staffApiService.listUserIdByWxEnterpriseId(wxEnterpriseId, pageNum, 1000);
List<StaffDTO> staffDTOS = staffDTOPageInfo.getResult();
if (CollectionUtils.isEmpty(staffDTOS)) {
logger.info("转换完成,为最后一个");
logger.info("openuseridToUserid 转换完成,为最后一个");
break;
}
pageNum++;
......@@ -189,7 +191,7 @@ public class QywxStaffSyncOperation implements BaseSyncOperation {
List<QywxNewUseridDTO> qywxNewUseridDTOS = qywxUserApiService.getSelfOpenuseridToUserid(tabHaobanWxApplication.getCorpid(), secretSetting.getSecretVal(), tabHaobanWxApplication.getAgentId(), staffDTOS.stream().map(StaffDTO::getWxUserId).collect(Collectors.toList()));
if (CollectionUtils.isNotEmpty(qywxNewUseridDTOS)) {
for (QywxNewUseridDTO qywxNewUseridDTO : qywxNewUseridDTOS) {
staffApiService.updateWxUserIdsByWxOpenUserId(wxEnterpriseId, qywxNewUseridDTO.getOpen_userid(),qywxNewUseridDTO.getUserid());
staffApiService.updateWxUserIdsByWxOpenUserId(wxEnterpriseId, qywxNewUseridDTO.getOpen_userid(), qywxNewUseridDTO.getUserid());
}
}
}
......
......@@ -39,6 +39,7 @@
<result column="agree_external_userid_flag" property="agreeExternalUseridFlag" jdbcType="INTEGER"/>
<result column="agree_external_userid_time" property="agreeExternalUseridTime" jdbcType="TIMESTAMP"/>
<result column="external_flag" property="externalFlag" jdbcType="INTEGER"/>
<result column="userid_flag" property="useridFlag" jdbcType="INTEGER"/>
</resultMap>
<sql id="Base_Column_List">
......@@ -46,7 +47,7 @@
corp_user_max, corp_full_name, subject_type, verified_end_time, corp_wxqrcode, corp_scale,
corp_industry, corp_sub_industry, location, auth_info, agent, agentid, appid, name,
square_logo_url, round_logo_url, level, bind_flag, status_flag, create_time, update_time,contact_flag,wx_secret_key,wx_secret_key_last_time,member_secret_last_time,contact_secret_last_time
,member_secret,contact_secret,agree_external_userid_flag,agree_external_userid_time,external_flag
,member_secret,contact_secret,agree_external_userid_flag,agree_external_userid_time,external_flag,userid_flag
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String">
select
......@@ -162,6 +163,9 @@
<if test="externalFlag != null">
external_flag,
</if>
<if test="useridFlag != null">
userid_flag,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="wxEnterpriseId != null">
......@@ -263,6 +267,9 @@
<if test="externalFlag != null">
#{externalFlag,jdbcType=INTEGER},
</if>
<if test="useridFlag != null">
#{useridFlag}
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.haoban.manage.service.entity.TabHaobanWxEnterprise">
......@@ -376,6 +383,9 @@
<if test="externalFlag != null">
external_flag = #{externalFlag,jdbcType=INTEGER},
</if>
<if test="useridFlag != null">
userid_flag = #{useridFlag}
</if>
</set>
where wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR}
</update>
......
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