Commit 29e72320 by 徐高华

加好友整理

parent 1ec97747
......@@ -59,8 +59,6 @@ public interface MemberUnionidRelatedApiService {
*/
List<MemberStoreDTO> listByExTernalUseridAndWxUserId(String externalUserid, String staffId, String storeId);
void cleanByCid(String cid);
/**
* 群发助手发送企业微信消息
*
......@@ -231,28 +229,6 @@ public interface MemberUnionidRelatedApiService {
/**
* 根据id查询
*
* @param memberUnionidRelatedId 成员unionid相关id
* @return {@link MemberUnionidRelatedDTO }
* @author mozhu
* @date 2022-03-11 17:02:45
*/
MemberUnionidRelatedDTO getById(String memberUnionidRelatedId);
/**
* 更新对外联系人id
*
* @param selfExternalUserid 自外部用户标识
* @param memberUnionidRelatedId 成员unionid相关id
* @author mozhu
* @date 2022-03-11 16:59:24
*/
void updateSelfExternalUseridById(String selfExternalUserid, String memberUnionidRelatedId);
/**
* 事件订阅test
*
* @param param 参数
......
......@@ -11,12 +11,9 @@ public interface MemberUnionidRelatedMapper {
MemberUnionidRelated selectByPrimaryKey(String memberUnionidRelatedId);
int updateByPrimaryKeySelective(MemberUnionidRelated record);
int cleanByCid(@Param("cid") String cid);
MemberUnionidRelated getByUnionId(@Param("wxEnterpriseId") String wxEnterpriseId, @Param("staffId") String staffId, @Param("unionid") String unionid);
// 删除好友
void deleteByUnionidAndUserId(@Param("externalUserid") String externalUserid, @Param("staffId") String staffId);
void delMemberUnionidRelatedBatch(@Param("wxEnterpriseId") String wxEnterpriseId, @Param("externalUserids") List<String> externalUserid, @Param("staffId") String staffId);
......@@ -33,9 +30,6 @@ public interface MemberUnionidRelatedMapper {
*/
MemberUnionidRelated getBySelfExternalUserId(@Param("staffId") String staffId, @Param("wxEnterpriseId") String wxEnterpriseId, @Param("selfExternalUserId") String selfExternalUserId);
List<MemberUnionidRelated> listBySelfExternalUserId(@Param("staffId") String staffId, @Param("wxEnterpriseId") String wxEnterpriseId, @Param("selfExternalUserId") String selfExternalUserId);
List<MemberUnionidRelated> listByWxEnterpriseIdAndExternalUserId(@Param("wxEnterpriseId") String wxEnterpriseId , @Param("list")List<String> externalUserIdList);
}
\ No newline at end of file
......@@ -20,7 +20,7 @@ public interface TabHaobanExternalClerkRelatedMapper {
TabHaobanExternalClerkRelated selectByClerkIdAndExternalUserId(@Param("clerkId") String clerkId,
@Param("externalUserId") String externalUserId);
int delByUserIdAndExternalUserId(TabHaobanExternalClerkRelated record);
int delByUserIdAndExternalUserId(@Param("externalUserId") String externalUserId , @Param("staffId") String staffId);
void delByUserIdAndExternalUserIdBatch(@Param("staffId") String staffId,
@Param("wxEnterpriseId") String wxEnterpriseId,
......
......@@ -38,16 +38,6 @@ public interface WxEnterpriseMapper {
TabHaobanWxEnterprise getEnterpriseBycorpId(@Param("corpId") String corpId, @Param("statusFlag") Integer statusFlag);
/**
* 获取公司by企业名称
*
* @param corpName 公司名称
* @return {@link TabHaobanWxEnterprise }
* @author mozhu
* @date 2021-12-20 20:09:52
*/
TabHaobanWxEnterprise getEnterpriseByCorpName(@Param("corpName") String corpName);
/**
* 更新是否转化外部联系人
*
* @param externalFlag 外部标志
......
......@@ -15,7 +15,7 @@ public interface ExternalClerkRelatedService {
* 删除好友
* @param dto
*/
void delByUserIdAndExternalUserId(MemberUnionidRelatedDTO dto , String wxUserId);
void delByUserIdAndExternalUserId(MemberUnionidRelatedDTO dto);
/**
* 删除会员与导购的关联关系
......
package com.gic.haoban.manage.service.service;
import com.gic.api.base.commons.Page;
import com.gic.haoban.base.api.common.BasePageInfo;
import com.gic.haoban.manage.api.dto.MemberUnionidRelatedDTO;
import com.gic.haoban.manage.service.entity.MemberUnionidRelated;
import com.github.pagehelper.PageInfo;
import java.util.List;
import com.gic.haoban.manage.api.dto.MemberUnionidRelatedDTO;
public interface MemberUnionRelatedService {
MemberUnionidRelatedDTO getByWxUserIdAndUnionId(String wxEnterpriseId, String staffId, String unionid);
......@@ -25,11 +21,6 @@ public interface MemberUnionRelatedService {
*/
void delMemberUnionidRelatedBatch(String wxEnterpriseId, String staffId, List<String> externalUserids);
void update(MemberUnionidRelatedDTO exsitDTO);
void clean(String cid);
void cleanStaffRelated(String wxEnterpriseId, List<String> staffIds);
/**
......@@ -54,14 +45,4 @@ public interface MemberUnionRelatedService {
*/
MemberUnionidRelatedDTO getBySelfExternalUserId(String wxEnterpriseId, String selfExternalUserId);
/**
* 根据应用内的外部联系人id 获取信息
*
* @param wxUserId
* @param wxEnterpriseId
* @param selfExternalUserId
* @return
*/
List<MemberUnionidRelatedDTO> listBySelfExternalUserId(String staffId, String wxEnterpriseId, String selfExternalUserId);
}
......@@ -38,16 +38,6 @@ public interface WxEnterpriseService {
int unbind(String wxEnterpriseId);
/**
* 得到企业bycorp名称
*
* @param corpName 公司名称
* @return {@link TabHaobanWxEnterprise }
* @author mozhu
* @date 2021-12-20 20:09:21
*/
TabHaobanWxEnterprise getEnterpriseByCorpName(String corpName);
/**
* 所有企业微信
*
* @return
......
......@@ -65,10 +65,6 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
@Autowired
private MemberApiService memberApiService;
@Autowired
private StaffMapper staffMapper;
@Autowired
private TabHaobanStaffClerkRelationMapper staffClerkRelationMapper;
@Autowired
private WxUserAddLogService wxUserAddLogService;
@Autowired
private StoreService storeService;
......@@ -105,34 +101,22 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
}
@Override
public void delByUserIdAndExternalUserId(MemberUnionidRelatedDTO dto, String wxUserId) {
int count = mapper.delByUserIdAndExternalUserId(EntityUtil.changeEntityByJSON(TabHaobanExternalClerkRelated.class, dto));
if (count <= 0) {
logger.error("无需删除的好友数据:{}", JSON.toJSONString(dto));
return;
}
public void delByUserIdAndExternalUserId(MemberUnionidRelatedDTO dto) {
String staffId = dto.getStaffId();
String externalUserid = dto.getExternalUserid();
List<TabHaobanExternalClerkRelated> tabHaobanExternalClerkRelatedList = mapper.listByExTernalUseridAndWxUserId(externalUserid, staffId, 2);
if (CollectionUtils.isEmpty(tabHaobanExternalClerkRelatedList)) {
logger.info("无解除的好友关系:externalUserid:{},wxUserId:{}", externalUserid, wxUserId);
return;
}
TabHaobanExternalClerkRelated related = tabHaobanExternalClerkRelatedList.get(0);
String wxEnterpriseId = related.getWxEnterpriseId();
TabHaobanStaff tabHaobanStaff = staffMapper.selectByUserIdAndEnterpriseId(wxUserId, wxEnterpriseId);
if (null == tabHaobanStaff) {
logger.error("找不到员工:wxUserId:{}", wxUserId);
int count = mapper.delByUserIdAndExternalUserId(externalUserid,staffId);
if (count <= 0) {
logger.error("无需删除的好友数据:{}", JSON.toJSONString(dto));
return;
}
staffId = tabHaobanStaff.getStaffId();
List<TabHaobanStaffClerkRelation> tabHaobanStaffClerkRelations = staffClerkRelationMapper.lisByStaffId(wxEnterpriseId, staffId, null);
if (CollectionUtils.isEmpty(tabHaobanStaffClerkRelations)) {
logger.error("找不到员工导购关联关系:staffId:{},wxEnterpriseId:{}", staffId, wxEnterpriseId);
String wxEnterpriseId = dto.getWxEnterpriseId() ;
List<TabHaobanExternalClerkRelated> deleteRelatedList = mapper.listByExTernalUseridAndWxUserId(externalUserid, staffId, 2);
if (CollectionUtils.isEmpty(deleteRelatedList)) {
logger.info("无解除的好友关系:externalUserid:{},staffId:{}", externalUserid,staffId);
return;
}
String enterpriseId = tabHaobanStaffClerkRelations.get(0).getEnterpriseId();
TabHaobanExternalClerkRelated related = deleteRelatedList.get(0);
String enterpriseId = related.getEnterpriseId() ;
//该企微该会员所有关联关系解除后通知会员
List<TabHaobanExternalClerkRelated> list = mapper.listByExternalUseridAndWxEnterpriseId(dto.getExternalUserid(), wxEnterpriseId, Arrays.asList("1", "3", "4"));
if (CollectionUtils.isEmpty(list)) {
......@@ -146,14 +130,12 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
}
} else {
//删除后 每次回调会员
List<TabHaobanExternalClerkRelated> relatedList = mapper.listByExTernalUseridAndWxUserId(dto.getExternalUserid(), wxUserId, 2);
for (TabHaobanExternalClerkRelated externalClerkRelated : relatedList) {
for (TabHaobanExternalClerkRelated externalClerkRelated : deleteRelatedList) {
String memberId = externalClerkRelated.getMemberId();
logger.info("通知会员 删除会员后更新为非企微好友时间 memberId:{}", memberId);
memberApiService.updateMemberQywxEveryOccasion(enterpriseId, memberId, 1, new Date());
}
}
//添加日志
WxUserAddLogQDTO wxUserAddLogQDTO = new WxUserAddLogQDTO();
wxUserAddLogQDTO.setWxEnterpriseId(wxEnterpriseId);
......@@ -165,7 +147,6 @@ public class ExternalClerkRelatedServiceImpl implements ExternalClerkRelatedServ
wxUserAddLogQDTO.setStaffId(related.getStaffId());
wxUserAddLogQDTO.setClerkId(related.getClerkId());
wxUserAddLogService.save(wxUserAddLogQDTO);
//定制
addDelFriendEvent(related.getUnionid(), related.getClerkId(), wxEnterpriseId, enterpriseId, related.getMemberId(), related.getStoreId(), 0);
}
......
......@@ -7,14 +7,11 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.gic.commons.util.EntityUtil;
import com.gic.haoban.base.api.common.BasePageInfo;
import com.gic.haoban.common.utils.StringUtil;
import com.gic.haoban.manage.api.dto.MemberUnionidRelatedDTO;
import com.gic.haoban.manage.service.dao.mapper.MemberUnionidRelatedMapper;
import com.gic.haoban.manage.service.entity.MemberUnionidRelated;
import com.gic.haoban.manage.service.service.MemberUnionRelatedService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
@Service
public class MemberUnionRelatedServiceImpl implements MemberUnionRelatedService {
......@@ -48,17 +45,6 @@ public class MemberUnionRelatedServiceImpl implements MemberUnionRelatedService
}
@Override
public void update(MemberUnionidRelatedDTO exsitDTO) {
exsitDTO.setUpdateTime(new Date());
mapper.updateByPrimaryKeySelective(EntityUtil.changeEntityByJSON(MemberUnionidRelated.class, exsitDTO));
}
@Override
public void clean(String cid) {
mapper.cleanByCid(cid);
}
@Override
public void cleanStaffRelated(String wxEnterpriseId, List<String> staffIds) {
if(staffIds == null || staffIds.isEmpty()){
return;
......@@ -77,10 +63,4 @@ public class MemberUnionRelatedServiceImpl implements MemberUnionRelatedService
MemberUnionidRelated unionidRelated = mapper.getBySelfExternalUserId(null,wxEnterpriseId, selfExternalUserId);
return EntityUtil.changeEntityNew(MemberUnionidRelatedDTO.class, unionidRelated);
}
@Override
public List<MemberUnionidRelatedDTO> listBySelfExternalUserId(String staffId, String wxEnterpriseId, String selfExternalUserId) {
List<MemberUnionidRelated> retList = mapper.listBySelfExternalUserId(staffId, wxEnterpriseId, selfExternalUserId);
return EntityUtil.changeEntityListNew(MemberUnionidRelatedDTO.class, retList);
}
}
......@@ -65,6 +65,9 @@ public class WxEnterpriseServiceImpl implements WxEnterpriseService {
@Override
public WxEnterpriseQwDTO getQwInfo(String wxEnterpriseId) {
TabHaobanWxEnterprise wxEnterprise = this.mapper.selectByPrimaryKey(wxEnterpriseId) ;
if(null == wxEnterprise) {
return null ;
}
WxEnterpriseQwDTO qw = new WxEnterpriseQwDTO();
qw.setWxEnterpriseId(wxEnterpriseId);
if(null != wxEnterprise.getWxSecurityType()) {
......@@ -124,14 +127,6 @@ public class WxEnterpriseServiceImpl implements WxEnterpriseService {
}
@Override
public TabHaobanWxEnterprise getEnterpriseByCorpName(String corpName) {
if (StringUtils.isBlank(corpName)) {
return null;
}
return this.mapper.getEnterpriseByCorpName(corpName);
}
@Override
public List<TabHaobanWxEnterprise> listAll() {
return mapper.listAll();
}
......
......@@ -215,22 +215,12 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
externalClerkRelated.setStatusFlag(1);
tabHaobanExternalClerkRelatedMapper.updateByPrimaryKeySelective(externalClerkRelated);
//更新unionid
MemberUnionidRelated memberUnionidRelated = memberUnionidRelatedMapper.selectByPrimaryKey(externalClerkRelated.getMemberUnionidRelatedId());
if (memberUnionidRelated != null) {
memberUnionidRelated.setMemberId(memberId);
memberUnionidRelated.setUnionid(unionid);
memberUnionidRelated.setEnterpriseId(enterpriseId);
memberUnionidRelated.setUpdateTime(new Date());
memberUnionidRelatedMapper.updateByPrimaryKeySelective(memberUnionidRelated);
}
String wxEnterpriseId = externalClerkRelated.getWxEnterpriseId();
//同步标签
pushTagSync(memberId, wxEnterpriseId, enterpriseId);
//回调给会员,更新是否为企微好友
log.info("通知会员 合并会员后更新为企微好友,memberId:{}", memberId);
memberApiService.updateMemberQywxFlag(enterpriseId, memberId, 1);
//定制
addDelFriendEvent(unionid, externalClerkRelated.getClerkId(), wxEnterpriseId, enterpriseId, memberId, externalClerkRelated.getStoreId(), 1);
//日志
......
......@@ -170,23 +170,24 @@ public class QwFriendApiServiceImpl implements QwFriendApiService {
return ServiceResponse.failure("9999", "企微未查询到数据");
}
// 2010 不需要处理的
// 判断企业是否能用企微
private ServiceResponse<WxEnterpriseQwDTO> checkAndGetCorpid(String enterpriseId) {
WxEnterpriseRelationBO enterpriseRelation = this.wxEnterpriseRelatedService.getHeadEnterprise(enterpriseId);
if (null == enterpriseRelation) {
// 非总部或不存在
return ServiceResponse.failure("9999", "请确认商户是否有效且是总部");
return ServiceResponse.failure("2010", "请确认商户是否有效且是总部");
}
Integer code = this.enterpriseUseForbidService.selectPermissionStatus(enterpriseId,
EnterpriseServiceEnum.HAO_BAN.getRightMenuCode());
log.info("好办是否到期停用={},{}", enterpriseId, code);
if (code != 0 && code != 1) {
return ServiceResponse.failure("9999", "商户已停用");
return ServiceResponse.failure("2010", "商户已停用");
}
int memberOpenCardlag = enterpriseRelation.getMemberOpenCardFlag();
if (memberOpenCardlag != 0) {
// 不在同一开放平台
return ServiceResponse.failure("9999", "不在同一开放平台");
return ServiceResponse.failure("2010", "不在同一开放平台");
}
String wxEnterpriseId = enterpriseRelation.getWxEnterpriseId();
WxEnterpriseQwDTO qwDTO = this.wxEnterpriseService.getQwInfo(wxEnterpriseId);
......
......@@ -39,58 +39,6 @@
#{enterpriseId})
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.haoban.manage.service.entity.MemberUnionidRelated">
update tab_haoban_member_unionid_related
<set>
<if test="memberId != null">
member_id = #{memberId,jdbcType=VARCHAR},
</if>
<if test="unionid != null">
unionid = #{unionid,jdbcType=VARCHAR},
</if>
<if test="wxEnterpriseId != null">
wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR},
</if>
<if test="enterpriseId != null">
enterprise_id = #{enterpriseId,jdbcType=VARCHAR},
</if>
<if test="statusFlag != null">
status_flag = #{statusFlag,jdbcType=INTEGER},
</if>
<if test="externalUserid != null">
external_userid = #{externalUserid,jdbcType=VARCHAR},
</if>
<if test="staffId != null">
staff_id = #{staffId,jdbcType=VARCHAR},
</if>
<if test="addCreateTime != null">
add_create_time = #{addCreateTime,jdbcType=VARCHAR},
</if>
<if test="selfExternalUserid != null">
self_external_userid = #{selfExternalUserid,jdbcType=VARCHAR},
</if>
<if test="externalName != null">
external_name = #{externalName,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
update_time = now()
</set>
where member_unionid_related_id = #{memberUnionidRelatedId,jdbcType=VARCHAR}
</update>
<update id="cleanByCid">
update tab_haoban_member_unionid_related
set
status_flag = 0,
update_time=now()
where member_id is null
<if test="cid !=null">
and wx_enterprise_id = #{cid}
</if>
</update>
<select id="getByUnionId" resultMap="BaseResultMap" parameterType="java.lang.String">
select
<include refid="Base_Column_List"/>
......@@ -148,16 +96,6 @@
order by create_time desc limit 1
</select>
<select id="listBySelfExternalUserId" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_member_unionid_related
where wx_enterprise_id = #{wxEnterpriseId}
and status_flag = 1
and staff_id = #{staffId}
and self_external_userid = #{selfExternalUserId}
</select>
<select id="listByWxEnterpriseIdAndExternalUserId" resultMap="BaseResultMap">
select
external_userid, self_external_userid from tab_haoban_member_unionid_related
......
......@@ -211,11 +211,11 @@
and status_flag = 1
</select>
<update id="delByUserIdAndExternalUserId" parameterType="com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated" >
<update id="delByUserIdAndExternalUserId">
update tab_haoban_external_clerk_related
set status_flag = 2,
update_time = now()
where external_user_id = #{externalUserId,jdbcType=VARCHAR}
where external_user_id = #{externalUserId}
and staff_id = #{staffId}
and status_flag in (1, 3, 4)
</update>
......
......@@ -473,15 +473,6 @@
order by create_time desc limit 1
</select>
<select id="getEnterpriseByCorpName" resultMap="BaseResultMap" parameterType="java.lang.String">
select
<include refid="Base_Column_List"/>
from tab_haoban_wx_enterprise
where corp_name = #{corpName} and status_flag = 1
order by create_time desc limit 1
</select>
<update id="updateExternalFlagById">
update tab_haoban_wx_enterprise
set external_flag = #{externalFlag},
......
......@@ -96,11 +96,6 @@ public class TestController extends WebBaseController {
}
}
@RequestMapping("/clean-out")
public HaobanResponse cleanMessage(String cid) {
memberUnionidRelatedApiService.cleanByCid(cid);
return resultResponse(HaoBanErrCode.ERR_1);
}
@RequestMapping("/test-dubbo")
public HaobanResponse dubbo(@RequestParam(defaultValue = "2000") Integer n, @RequestParam(defaultValue = "100") String t) {
......
......@@ -611,18 +611,8 @@ public class WxEnterpriseInfoController extends WebBaseController {
if (externalUserDTO == null) {
logger.info("请先添加好友,企业微信未查询到该好友,externalUserid:{}", externalUserid);
return resultResponse(HaoBanErrCode.ERR_11126);
} else {
//是否需修复数据
String unionId = externalUserDTO.getUnionId();
ExternalClerkRelatedDTO externalClerkRelatedDTO = externalClerkRelatedApiService.getByWxEnterpriseIdAndUnionId(wxEnterpriseId, staffId, unionId);
if (externalClerkRelatedDTO != null) {
String memberUnionidRelatedId = externalClerkRelatedDTO.getMemberUnionidRelatedId();
MemberUnionidRelatedDTO memberUnionidRelatedDTO = memberUnionidRelatedApiService.getById(memberUnionidRelatedId);
if (memberUnionidRelatedDTO != null && StringUtils.isBlank(memberUnionidRelatedDTO.getSelfExternalUserid())) {
memberUnionidRelatedApiService.updateSelfExternalUseridById(externalUserid, memberUnionidRelatedId);
}
}
}
MemberUnionidRelatedDTO memberUnionidRelatedDTO = memberUnionidRelatedApiService.getBySelfExternalUserId(wxEnterpriseId, externalUserid);
if (null == memberUnionidRelatedDTO) {
logger.info("请刷新好友,wxEnterpriseId:{},传入的externalUserid:{},wxUserId:{}", wxEnterpriseId, externalUserid, wxUserId);
......
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