Commit e62b15bc by 墨竹

fix:成员删除,好友关系解除,判断该会员是否有其他导购好友

parent 549a1f70
...@@ -370,5 +370,8 @@ public interface TabHaobanExternalClerkRelatedMapper { ...@@ -370,5 +370,8 @@ public interface TabHaobanExternalClerkRelatedMapper {
List<String> getByStoreIdAndStaffId(@Param("storeId") String storeId, List<String> getByStoreIdAndStaffId(@Param("storeId") String storeId,
@Param("staffId") String staffId); @Param("staffId") String staffId);
List<String> listMemberAndClerk(@Param("memberIdList")List<String> memberIdList, @Param("clerkIdList")List<String> clerkIdList, @Param("enterpriseId")String enterpriseId); List<String> listMemberAndClerk(@Param("memberIdList") List<String> memberIdList, @Param("clerkIdList") List<String> clerkIdList, @Param("enterpriseId") String enterpriseId);
int getCountByMemberId(@Param("memberId") String memberId);
} }
\ No newline at end of file
...@@ -80,4 +80,7 @@ public interface ExternalClerkRelatedService { ...@@ -80,4 +80,7 @@ public interface ExternalClerkRelatedService {
*/ */
List<String> getByStoreIdAndStaffId(String storeId,String staffId); List<String> getByStoreIdAndStaffId(String storeId,String staffId);
int getCountByMemberId(String memberId);
} }
...@@ -499,4 +499,9 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ ...@@ -499,4 +499,9 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
public List<String> getByStoreIdAndStaffId(String storeId, String staffId) { public List<String> getByStoreIdAndStaffId(String storeId, String staffId) {
return mapper.getByStoreIdAndStaffId(storeId, staffId); return mapper.getByStoreIdAndStaffId(storeId, staffId);
} }
@Override
public int getCountByMemberId(String memberId) {
return mapper.getCountByMemberId(memberId);
}
} }
...@@ -84,21 +84,32 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService ...@@ -84,21 +84,32 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService
int i = mapper.changeStatusByClerkId(clerkId, 0); int i = mapper.changeStatusByClerkId(clerkId, 0);
String enterpriseId = clerkRelation.getEnterpriseId(); String enterpriseId = clerkRelation.getEnterpriseId();
List<String> memberIds = externalClerkRelatedService.getByStoreIdAndStaffId(clerkRelation.getStoreId(), clerkRelation.getStaffId());
for (String memberId : memberIds) {
//解绑通知会员
memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 0);
memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 0, new Date());
}
//删除 并设置主门店 //删除 并设置主门店
clerkMainStoreRelatedService.delMainStore(clerkRelation.getStaffId(), clerkRelation.getStoreId(), clerkRelation.getWxEnterpriseId()); clerkMainStoreRelatedService.delMainStore(clerkRelation.getStaffId(), clerkRelation.getStoreId(), clerkRelation.getWxEnterpriseId());
//推入日志 //推入日志
staffClerkBindLogService.pushToMq(clerkRelation.getStaffId(), optStaffId, BindTypeEnum.UNBIND.getVal(), channelCode, clerkRelation.getStaffClerkRelationId()); staffClerkBindLogService.pushToMq(clerkRelation.getStaffId(), optStaffId, BindTypeEnum.UNBIND.getVal(), channelCode, clerkRelation.getStaffClerkRelationId());
//废弃活码 //废弃活码
hmClerkRelationApiService.delByClerkId(clerkId, enterpriseId, clerkRelation.getWxEnterpriseId(), channelCode); hmClerkRelationApiService.delByClerkId(clerkId, enterpriseId, clerkRelation.getWxEnterpriseId(), channelCode);
List<String> memberIds = externalClerkRelatedService.getByStoreIdAndStaffId(clerkRelation.getStoreId(), clerkRelation.getStaffId());
delMemberQywxFlag(enterpriseId, memberIds);
return i > 0; return i > 0;
} }
private void delMemberQywxFlag(String enterpriseId, List<String> memberIds) {
for (String memberId : memberIds) {
//解绑通知会员
int count = externalClerkRelatedService.getCountByMemberId(memberId);
if (count == 0) {
logger.info("通知会员 删除企微好友,该会员无任何好友关系,memberId:{}", memberId);
memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 0);
}
logger.info("通知会员 删除企微好友 memberId:{}", memberId);
memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 0, new Date());
}
}
@Override @Override
public boolean delBindByStoreIds(String wxEnterpriseId, Set<String> storeIds, String optStaffId, int channelCode) { public boolean delBindByStoreIds(String wxEnterpriseId, Set<String> storeIds, String optStaffId, int channelCode) {
if (CollectionUtils.isEmpty(storeIds)) { if (CollectionUtils.isEmpty(storeIds)) {
...@@ -124,11 +135,7 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService ...@@ -124,11 +135,7 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService
hmClerkRelationApiService.delByClerkId(clerkRelation.getClerkId(), enterpriseId, wxEnterpriseId, channelCode); hmClerkRelationApiService.delByClerkId(clerkRelation.getClerkId(), enterpriseId, wxEnterpriseId, channelCode);
//删除好友通知会员 //删除好友通知会员
List<String> memberIds = externalClerkRelatedService.getByStoreIdAndStaffId(clerkRelation.getStoreId(), clerkRelation.getStaffId()); List<String> memberIds = externalClerkRelatedService.getByStoreIdAndStaffId(clerkRelation.getStoreId(), clerkRelation.getStaffId());
for (String memberId : memberIds) { delMemberQywxFlag(enterpriseId, memberIds);
//解绑通知会员
memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 0);
memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 0, new Date());
}
} }
return true; return true;
} }
...@@ -138,7 +145,7 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService ...@@ -138,7 +145,7 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService
String staffId = dto.getStaffId(); String staffId = dto.getStaffId();
TabHaobanStaff tabHaobanStaff = staffService.selectById(staffId); TabHaobanStaff tabHaobanStaff = staffService.selectById(staffId);
if (tabHaobanStaff == null) { if (tabHaobanStaff == null) {
logger.error("员工不存在:{}",staffId); logger.error("员工不存在:{}", staffId);
return ""; return "";
} }
Date now = new Date(); Date now = new Date();
......
...@@ -692,4 +692,12 @@ ...@@ -692,4 +692,12 @@
AND status_flag = 1 AND status_flag = 1
</select> </select>
<select id="getCountByMemberId" resultType="java.lang.Integer" parameterType="java.lang.String">
select
count(*)
from tab_haoban_external_clerk_related
where
member_id = #{memberId} and status_flag = 1
</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