Commit 4f7dbb50 by jinxin

外部联系人变更通知会员修改状态

parent ee4838ac
...@@ -420,4 +420,6 @@ public interface TabHaobanExternalClerkRelatedMapper { ...@@ -420,4 +420,6 @@ public interface TabHaobanExternalClerkRelatedMapper {
*/ */
void deleteByWxEnterpriseId(@Param("wxEnterpriseId")String wxEnterpriseId, @Param("enterpriseIdList") List<String> enterpriseIdList); void deleteByWxEnterpriseId(@Param("wxEnterpriseId")String wxEnterpriseId, @Param("enterpriseIdList") List<String> enterpriseIdList);
List<TabHaobanExternalClerkRelated> getAddTimeByMemberId(@Param("memberId") String memberId, @Param("enterpriseId") String enterpriseId);
} }
\ No newline at end of file
...@@ -112,5 +112,6 @@ public interface ExternalClerkRelatedService { ...@@ -112,5 +112,6 @@ public interface ExternalClerkRelatedService {
* @param enterpriseIdList * @param enterpriseIdList
*/ */
void deleteByWxEnterpriseId(String wxEnterpriseId,List<String> enterpriseIdList); void deleteByWxEnterpriseId(String wxEnterpriseId,List<String> enterpriseIdList);
List<TabHaobanExternalClerkRelated> getAddTimeByMemberId(String memberId, String enterpriseId);
} }
...@@ -176,7 +176,11 @@ public class WxUserAddLogServiceImpl implements WxUserAddLogService { ...@@ -176,7 +176,11 @@ public class WxUserAddLogServiceImpl implements WxUserAddLogService {
} }
MemberDataDTO memberDataDTO = memberObj.toJavaObject(MemberDataDTO.class); MemberDataDTO memberDataDTO = memberObj.toJavaObject(MemberDataDTO.class);
entity.setMemberId(memberId); entity.setMemberId(memberId);
entity.setMemberName(memberDataDTO.getName()); String name = memberDataDTO.getName();
if (name != null && name.length()>32){
name = name.substring(0, 32);
}
entity.setMemberName(name);
entity.setMemberNick(memberDataDTO.getNickName()); entity.setMemberNick(memberDataDTO.getNickName());
entity.setMemberImage(memberDataDTO.getPhotoUrl()); entity.setMemberImage(memberDataDTO.getPhotoUrl());
entity.setMemberPhone(memberDataDTO.getPhoneNumber()); entity.setMemberPhone(memberDataDTO.getPhoneNumber());
......
...@@ -126,8 +126,19 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ ...@@ -126,8 +126,19 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
String memberId = externalClerkRelated.getMemberId(); String memberId = externalClerkRelated.getMemberId();
logger.info("通知会员 删除会员后更新为非企微好友 memberId:{}", memberId); logger.info("通知会员 删除会员后更新为非企微好友 memberId:{}", memberId);
memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 0); memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 0);
// todo 查询好办外部联系人接口,获取最早的时间替换当前时间 // 查询好办外部联系人接口,获取最近删除的时间
memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 0, new Date()); List<TabHaobanExternalClerkRelated> memberList = this.getAddTimeByMemberId(memberId, enterpriseId);
Date date = new Date();
Date opTime = new Date(0);
if (CollectionUtils.isNotEmpty(memberList)){
for (TabHaobanExternalClerkRelated a : memberList){
if ((a.getStatusFlag() == 0 || a.getStatusFlag() == 2) && a.getUpdateTime().after(opTime)){
opTime= a.getUpdateTime();
date = opTime;
}
}
}
memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 0, date,null);
} }
} else { } else {
//删除后 每次回调会员 //删除后 每次回调会员
...@@ -531,4 +542,9 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ ...@@ -531,4 +542,9 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
public void deleteByWxEnterpriseId(String wxEnterpriseId, List<String> enterpriseIdList) { public void deleteByWxEnterpriseId(String wxEnterpriseId, List<String> enterpriseIdList) {
this.mapper.deleteByWxEnterpriseId(wxEnterpriseId,enterpriseIdList); this.mapper.deleteByWxEnterpriseId(wxEnterpriseId,enterpriseIdList);
} }
@Override
public List<TabHaobanExternalClerkRelated> getAddTimeByMemberId(String memberId, String enterpriseId) {
return this.mapper.getAddTimeByMemberId(memberId,enterpriseId);
}
} }
...@@ -10,6 +10,7 @@ import java.util.Map; ...@@ -10,6 +10,7 @@ import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.gic.haoban.manage.service.entity.*;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
...@@ -40,10 +41,6 @@ import com.gic.haoban.manage.api.service.hm.HmQrcodeApiService; ...@@ -40,10 +41,6 @@ import com.gic.haoban.manage.api.service.hm.HmQrcodeApiService;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanExternalClerkRelatedMapper; import com.gic.haoban.manage.service.dao.mapper.TabHaobanExternalClerkRelatedMapper;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanMemberClerkChatConfigMapper; import com.gic.haoban.manage.service.dao.mapper.TabHaobanMemberClerkChatConfigMapper;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanStaffClerkRelationMapper; import com.gic.haoban.manage.service.dao.mapper.TabHaobanStaffClerkRelationMapper;
import com.gic.haoban.manage.service.entity.MemberClerkChatConfig;
import com.gic.haoban.manage.service.entity.TabHaobanClerkMainStoreRelated;
import com.gic.haoban.manage.service.entity.TabHaobanStaff;
import com.gic.haoban.manage.service.entity.TabHaobanStaffClerkRelation;
import com.gic.haoban.manage.service.service.ClerkMainStoreRelatedService; import com.gic.haoban.manage.service.service.ClerkMainStoreRelatedService;
import com.gic.haoban.manage.service.service.ExternalClerkRelatedService; import com.gic.haoban.manage.service.service.ExternalClerkRelatedService;
import com.gic.haoban.manage.service.service.StaffClerkBindLogService; import com.gic.haoban.manage.service.service.StaffClerkBindLogService;
...@@ -224,7 +221,19 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService ...@@ -224,7 +221,19 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService
if (count == 0) { if (count == 0) {
logger.info("通知会员 删除企微好友,该会员无任何好友关系,memberId:{}", memberId); logger.info("通知会员 删除企微好友,该会员无任何好友关系,memberId:{}", memberId);
memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 0); memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 0);
memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 0, new Date()); // 查询好办外部联系人接口,获取最近删除的时间
List<TabHaobanExternalClerkRelated> memberList = externalClerkRelatedService.getAddTimeByMemberId(memberId, enterpriseId);
Date date = new Date();
Date opTime = new Date(0);
if (CollectionUtils.isNotEmpty(memberList)){
for (TabHaobanExternalClerkRelated a : memberList){
if ((a.getStatusFlag() == 0 || a.getStatusFlag() == 2) && a.getUpdateTime().after(opTime)){
opTime= a.getUpdateTime();
date = opTime;
}
}
}
memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 0, date,null);
continue; continue;
} }
//logger.info("通知会员 删除企微好友 每次调用更新为非企微好友时间 memberId:{}", memberId); //logger.info("通知会员 删除企微好友 每次调用更新为非企微好友时间 memberId:{}", memberId);
......
...@@ -735,7 +735,23 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA ...@@ -735,7 +735,23 @@ public class MemberUnionidRelatedApiServiceImpl implements MemberUnionidRelatedA
//回调给会员,更新是否为企微好友 //回调给会员,更新是否为企微好友
log.info("通知会员 合并会员后更新为企微好友,memberId:{}", memberId); log.info("通知会员 合并会员后更新为企微好友,memberId:{}", memberId);
this.memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 1); this.memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 1);
this.memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 1, new Date()); // 查询好办外部联系人接口,获取最早的时间替换当前时间
List<TabHaobanExternalClerkRelated> memberList = externalClerkRelatedService.getAddTimeByMemberId(memberId, enterpriseId);
Date date = new Date();
Date opTime = new Date(0);
Date firstTime = new Date();
if (CollectionUtils.isNotEmpty(memberList)){
for (TabHaobanExternalClerkRelated a : memberList){
if ((a.getStatusFlag() == 1 || a.getStatusFlag() == 3 || a.getStatusFlag() == 4) && opTime.before(new Date(a.getAddTime()))){
opTime= new Date(a.getAddTime());
date = opTime;
}
if (firstTime.after(new Date(a.getAddTime()))){
firstTime = new Date(a.getAddTime());
}
}
}
this.memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 1, date,firstTime);
//定制事件订阅 //定制事件订阅
addDelFriendEvent(unionId, clerkId, wxEnterpriseId, enterpriseId, memberId, storeId, 1); addDelFriendEvent(unionId, clerkId, wxEnterpriseId, enterpriseId, memberId, storeId, 1);
return memberId; return memberId;
......
...@@ -849,5 +849,14 @@ ...@@ -849,5 +849,14 @@
AND status_flag = 1 AND status_flag = 1
AND external_user_id IS NULL AND external_user_id IS NULL
</update> </update>
<select id="getAddTimeByMemberId" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List"/>
FROM
tab_haoban_external_clerk_related
WHERE
member_id = #{memberId}
AND enterprise_id = #{enterpriseId}
</select>
</mapper> </mapper>
\ No newline at end of file
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