Commit 1bc9514d by fudahua

Merge remote-tracking branch 'origin/developer' into developer

parents 9da8cd9d 42f2530d
...@@ -28,6 +28,10 @@ public class YwWxEnterpriseDTO implements Serializable { ...@@ -28,6 +28,10 @@ public class YwWxEnterpriseDTO implements Serializable {
private String corpSquareLogoUrl; private String corpSquareLogoUrl;
//关联商户数量 //关联商户数量
private Integer relationCount=0; private Integer relationCount=0;
/**
* 是否开启标签同步标记 1 是 0 否
*/
private Integer tagOpenFlag;
public static long getSerialversionuid() { public static long getSerialversionuid() {
...@@ -133,4 +137,11 @@ public class YwWxEnterpriseDTO implements Serializable { ...@@ -133,4 +137,11 @@ public class YwWxEnterpriseDTO implements Serializable {
this.version = version; this.version = version;
} }
public Integer getTagOpenFlag() {
return tagOpenFlag;
}
public void setTagOpenFlag(Integer tagOpenFlag) {
this.tagOpenFlag = tagOpenFlag;
}
} }
...@@ -38,7 +38,7 @@ public interface ExternalClerkRelatedApiService { ...@@ -38,7 +38,7 @@ public interface ExternalClerkRelatedApiService {
List<ExternalClerkRelatedDTO> listByEnterpriseIdAndDate(String enterpriseId,Date date); List<ExternalClerkRelatedDTO> listByEnterpriseIdAndDate(String enterpriseId,Date date);
Page<ExternalClerkRelatedDTO> pageMemberUnionByParams(List<String> userIdList, List<String> sendMemberIds, Page<ExternalClerkRelatedDTO> pageMemberUnionByParams(List<String> userIdList, List<String> sendMemberIds,
String enterpriseId, BasePageInfo pageInfo); String enterpriseId, BasePageInfo pageInfo);
List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserId(String wxUserId, String wxEnterpriseId); List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserId(String wxUserId, String wxEnterpriseId);
...@@ -74,66 +74,78 @@ public interface ExternalClerkRelatedApiService { ...@@ -74,66 +74,78 @@ public interface ExternalClerkRelatedApiService {
*/ */
ServiceResponse<ExternalClerkRelatedDTO> bindMemberIdExternalByRelationKey(String relationKey, String enterpriseId, String memberId, String unionid); ServiceResponse<ExternalClerkRelatedDTO> bindMemberIdExternalByRelationKey(String relationKey, String enterpriseId, String memberId, String unionid);
/** /**
* 查询clerk与union好友关系 * 查询clerk与union好友关系
* *
* @param enterpriseId * @param enterpriseId
* @return * @return
*/ */
ExternalClerkRelatedDTO getClerkFriendByUnionid(String enterpriseId, String clerkId, String unionid); ExternalClerkRelatedDTO getClerkFriendByUnionid(String enterpriseId, String clerkId, String unionid);
/** /**
* 获取企业下的关联关系列表 * 获取企业下的关联关系列表
* *
* @return * @return
*/ */
List<ExternalClerkRelatedDTO> listExternalClerkByWxUserIdAncExternalUserId(String wxEnterpriseId, String wxUserId, String enterpriseId, String externalUserId); List<ExternalClerkRelatedDTO> listExternalClerkByWxUserIdAncExternalUserId(String wxEnterpriseId, String wxUserId, String enterpriseId, String externalUserId);
/** /**
* 根据id查询列表 * 根据id查询列表
* *
* @param wxEnterpriseId * @param wxEnterpriseId
* @param ids * @param ids
* @return * @return
*/ */
List<ExternalClerkRelatedDTO> listByIds(String wxEnterpriseId, List<String> ids); List<ExternalClerkRelatedDTO> listByIds(String wxEnterpriseId, List<String> ids);
/** /**
* 查询导购好友关联 * 查询导购好友关联
* *
* @param wxEnterpriseId : 微信企业id * @param wxEnterpriseId : 微信企业id
* @return : 返回好友关联 * @return : 返回好友关联
*/ */
Page<String> pageExternalByEnterpriseId(String wxEnterpriseId, String enterpriseId, BasePageInfo pageInfo); Page<String> pageExternalByEnterpriseId(String wxEnterpriseId, String enterpriseId, BasePageInfo pageInfo);
/** /**
* 查询导购好友关联 * 查询导购好友关联
* *
* @param wxEnterpriseId : 微信企业id * @param wxEnterpriseId : 微信企业id
* @return : 返回好友关联 * @return : 返回好友关联
*/ */
Page<String> pageExternalByEnterpriseId(String wxEnterpriseId, String enterpriseId, int pageNum, int pageSize); Page<String> pageExternalByEnterpriseId(String wxEnterpriseId, String enterpriseId, int pageNum, int pageSize);
/**
* 获取企业下的关联关系的 memberIds
*
* @return
*/
List<String> listExternalClerkMemberIdsByMemberIds(String wxEnterpriseId, List<String> memberIds);
/**
* 获取企业下的关联关系列表
*
* @return
*/
List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberIds(String wxEnterpriseId, List<String> memberIds);
/** /**
* 获取企业下的关联关系的 memberIds * 获取企业下的关联关系列表
* *
* @return * @return
*/ */
List<String> listExternalClerkMemberIdsByMemberIds(String wxEnterpriseId, List<String> memberIds); List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberId(String memberId);
/**
* 获取企业下的关联关系列表 /**
* * gic删除会员,解除好办与gic关联关系
* @return *
*/ * @param memberId 会员ID
List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberIds(String wxEnterpriseId, List<String> memberIds); * @param enterpriseId 企业标识
* @param mergeMemberId 合并后的会员ID 删除传null,
/** * @author mozhu
* 获取企业下的关联关系列表 * @date 2021-09-13 16:52:31
* */
* @return void delByMemberIdAndEnterpriseId(String memberId, String enterpriseId, String mergeMemberId);
*/
List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberId(String memberId);
} }
...@@ -225,7 +225,12 @@ ...@@ -225,7 +225,12 @@
<artifactId>sharing-core-api</artifactId> <artifactId>sharing-core-api</artifactId>
<version>${sharing-core-api}</version> <version>${sharing-core-api}</version>
</dependency> </dependency>
</dependencies> <dependency>
<groupId>com.gic</groupId>
<artifactId>haoban-app-customer-api</artifactId>
<version>${haoban-app-customer-api}</version>
</dependency>
</dependencies>
<build> <build>
<finalName>haoban-manage3-operation-web</finalName> <finalName>haoban-manage3-operation-web</finalName>
......
package com.gic.haoban.manage.web.controller; package com.gic.haoban.manage.web.controller;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.*;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.gic.haoban.app.customer.service.api.service.QywxTagSyncApiService;
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -20,8 +20,6 @@ import cn.hutool.core.collection.CollectionUtil; ...@@ -20,8 +20,6 @@ import cn.hutool.core.collection.CollectionUtil;
import com.gic.api.base.commons.Page; import com.gic.api.base.commons.Page;
import com.gic.commons.util.GlobalVar; import com.gic.commons.util.GlobalVar;
import com.gic.commons.util.Md5Util;
import com.gic.commons.util.RandomUtil;
import com.gic.enterprise.api.dto.EnterpriseDTO; import com.gic.enterprise.api.dto.EnterpriseDTO;
import com.gic.enterprise.api.dto.StoreDTO; import com.gic.enterprise.api.dto.StoreDTO;
import com.gic.enterprise.api.service.EnterpriseService; import com.gic.enterprise.api.service.EnterpriseService;
...@@ -39,90 +37,178 @@ import com.gic.haoban.manage.api.service.WxEnterpriseApiService; ...@@ -39,90 +37,178 @@ import com.gic.haoban.manage.api.service.WxEnterpriseApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService; import com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode; import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.haoban.manage.web.vo.EnterpriseDetailVo; import com.gic.haoban.manage.web.vo.EnterpriseDetailVo;
import com.gic.haoban.operation.api.service.EnterpriseRelationService;
import com.gic.redis.data.util.RedisUtil; import com.gic.redis.data.util.RedisUtil;
@RestController @RestController
public class EnterpriseController extends WebBaseController{ public class EnterpriseController extends WebBaseController {
private static final String LOGIN_URL = "/haoban-manage3-web/yw-login"; private static final String LOGIN_URL = "/haoban-manage3-web/yw-login";
private static Logger logger = LoggerFactory.getLogger(EnterpriseController.class); private static Logger logger = LoggerFactory.getLogger(EnterpriseController.class);
@Autowired @Autowired
private WxEnterpriseApiService wxEnterpriseApiService; private WxEnterpriseApiService wxEnterpriseApiService;
@Autowired @Autowired
private WxEnterpriseRelatedApiService wxEnterpriseRelatedApiService; private WxEnterpriseRelatedApiService wxEnterpriseRelatedApiService;
@Autowired @Autowired
private DepartmentApiService departmentApiService; private DepartmentApiService departmentApiService;
@Autowired @Autowired
private StoreService storeService; private StoreService storeService;
@Autowired @Autowired
private EnterpriseService enterpriseService; private EnterpriseService enterpriseService;
// @Autowired @Autowired
private QywxTagSyncApiService qywxTagSyncApiService;
// @Autowired
// private WxEnterpriseRelatedApiService wxEnterpriseRelllatedApiService; // private WxEnterpriseRelatedApiService wxEnterpriseRelllatedApiService;
//企业列表 //企业列表
@RequestMapping("wx-enterprise-list") // openTagFlag 0 未开启 1 开启 2 所有
public HaobanResponse wxEnterpriseList(BasePageInfo pageInfo,String keyword,String gicEnterpriseName,Integer gicContactHelper,String version) { @RequestMapping("wx-enterprise-list")
List<String> wxEnterpriseIds = new ArrayList<String>(); public HaobanResponse wxEnterpriseList(BasePageInfo pageInfo, String keyword, Integer openTagFlag, String gicEnterpriseName, Integer gicContactHelper, String version) {
if(!StringUtils.isEmpty(gicEnterpriseName)){ List<String> wxEnterpriseIds = new ArrayList<String>();
List<EnterpriseDTO> enterpriseNames = enterpriseService.getEnterpriseByName(gicEnterpriseName); if (!StringUtils.isEmpty(gicEnterpriseName)) {
if(CollectionUtil.isNotEmpty(enterpriseNames)){ List<EnterpriseDTO> enterpriseNames = enterpriseService.getEnterpriseByName(gicEnterpriseName);
List<String>enterpriseIds = enterpriseNames.stream().map(s->s.getEnterpriseId()).collect(Collectors.toList()); if (CollectionUtil.isNotEmpty(enterpriseNames)) {
List<EnterpriseDetailDTO> wxEnterpriseIdDTOs = wxEnterpriseRelatedApiService.listEnterpriseByEnterpriseIds(enterpriseIds); List<String> enterpriseIds = enterpriseNames.stream().map(s -> s.getEnterpriseId()).collect(Collectors.toList());
if(CollectionUtil.isNotEmpty(wxEnterpriseIdDTOs)){ List<EnterpriseDetailDTO> wxEnterpriseIdDTOs = wxEnterpriseRelatedApiService.listEnterpriseByEnterpriseIds(enterpriseIds);
wxEnterpriseIds = wxEnterpriseIdDTOs.stream().map(s->s.getWxEnterpriseId()).collect(Collectors.toList()); if (CollectionUtil.isNotEmpty(wxEnterpriseIdDTOs)) {
} wxEnterpriseIds = wxEnterpriseIdDTOs.stream().map(s -> s.getWxEnterpriseId()).collect(Collectors.toList());
} }
if(CollectionUtil.isEmpty(wxEnterpriseIds)){ }
wxEnterpriseIds = Arrays.asList("-9999"); if (CollectionUtil.isEmpty(wxEnterpriseIds)) {
} wxEnterpriseIds = Arrays.asList("-9999");
} }
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo,keyword,wxEnterpriseIds,gicContactHelper,version); }
PageResult<YwWxEnterpriseDTO> pageVo = new PageResult<>();
List<YwWxEnterpriseDTO> list = EntityUtil.changeEntityListByJSON(YwWxEnterpriseDTO.class, page.getResult()); // 查询开启标签同步缓存-详情在 /tag/open-tag 接口
for(YwWxEnterpriseDTO dto : list){ String wxEntIdStr = (String) RedisUtil.getCache("qywx-tag-open");
dto.setVersion("3.0"); Set<String> wxEntIdSet = Sets.newHashSet();
dto.setBuyDate(new Date());
dto.setBuyStatus("1"); if (StringUtils.isNotEmpty(wxEntIdStr)) {
List<EnterpriseDetailDTO> counts = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(dto.getWxEnterpriseId()); wxEntIdSet = Arrays.stream(wxEntIdStr.split(",")).collect(Collectors.toSet());
dto.setRelationCount(counts.size()); }
}
pageVo.setList(list); Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo, keyword, wxEnterpriseIds, gicContactHelper, version);
PageResult<YwWxEnterpriseDTO> pageVo = new PageResult<>();
List<YwWxEnterpriseDTO> list = EntityUtil.changeEntityListByJSON(YwWxEnterpriseDTO.class, page.getResult());
List<YwWxEnterpriseDTO> resList = Lists.newArrayListWithCapacity(list.size());
for (YwWxEnterpriseDTO dto : list) {
dto.setVersion("3.0");
dto.setBuyDate(new Date());
dto.setBuyStatus("1");
List<EnterpriseDetailDTO> counts = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(dto.getWxEnterpriseId());
dto.setRelationCount(counts.size());
if (openTagFlag == 0 && !wxEntIdSet.contains(dto.getWxEnterpriseId())) {
dto.setTagOpenFlag(0);
resList.add(dto);
} else if (openTagFlag == 1 && wxEntIdSet.contains(dto.getWxEnterpriseId())) {
dto.setTagOpenFlag(1);
resList.add(dto);
} else if (openTagFlag == 2) {
dto.setTagOpenFlag(wxEntIdSet.contains(dto.getWxEnterpriseId()) ? 1 : 0);
resList.add(dto);
}
}
pageVo.setList(resList);
pageVo.setPageNum(page.getCurrentPage()); pageVo.setPageNum(page.getCurrentPage());
pageVo.setPages(page.getPages()); pageVo.setPages(page.getPages());
pageVo.setPageSize(page.getPageSize()); // 因为过滤了此处取list长度
pageVo.setPageSize(resList.size());
pageVo.setTotal(page.getTotalCount()); pageVo.setTotal(page.getTotalCount());
return resultResponse(HaoBanErrCode.ERR_1,pageVo); return resultResponse(HaoBanErrCode.ERR_1, pageVo);
} }
//授权详情列表
@RequestMapping("authorize-detail") /**
public HaobanResponse authorizeDetail(String wxEnterpriseId) { * 开启关闭标签同步
List<EnterpriseDetailDTO> list = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(wxEnterpriseId); *
List<EnterpriseDetailVo> result = EntityUtil.changeEntityListByJSON(EnterpriseDetailVo.class, list); * @param wxEnterpriseId 微信企业id
for(EnterpriseDetailVo vo:result){ * @param flag 操作标记 1 开启 0 关闭
List<StoreDTO> stores = storeService.getStoreByEnterId(vo.getEnterpriseId(), null, null); * @return HaobanResponse
if(CollectionUtil.isEmpty(stores)){ */
continue; @RequestMapping("operate-tag-sync")
}else{ public HaobanResponse operateTagSync(String wxEnterpriseId, Integer flag) {
List<String> storeIds = stores.stream().map(s->s.getStoreId()).collect(Collectors.toList()); if (StringUtils.isEmpty(wxEnterpriseId)) {
List<DepartmentDTO> countList = departmentApiService.listByRelatedIds(storeIds); return resultResponse(HaoBanErrCode.ERR_2);
vo.setStoreCount(countList.size()); }
} if (Objects.isNull(flag)) {
EnterpriseDTO enterpriseDTO = enterpriseService.getEnterpriseById(vo.getEnterpriseId()); return resultResponse(HaoBanErrCode.ERR_2);
vo.setEnterpriseName(enterpriseDTO.getEnterpriseName()); }
vo.setEnterpriseLogo(enterpriseDTO.getQcloudImageUrl()); // 操作缓存
} String key = "qywx-tag-open";
return resultResponse(HaoBanErrCode.ERR_1,result); String lockKey = "qywx-tag-open-lock";
} try {
RedisUtil.lock(lockKey, 5L);
//登录
@RequestMapping("yw-login") String wxEntIdStr = (String) RedisUtil.getCache(key);
public void ywLogin(String wxEnterpriseId,HttpServletResponse httpServletResponse) throws IOException {
if (flag == 1) {
// 开启
if (StringUtils.isEmpty(wxEntIdStr)) {
wxEntIdStr = wxEnterpriseId;
} else {
wxEntIdStr = wxEntIdStr + "," + wxEnterpriseId;
}
logger.info("开启企业标签同步, wxEntIdStr:{}", wxEntIdStr);
RedisUtil.setCache(key, wxEntIdStr);
}
if (flag == 0) {
// 关闭标签检查是否有任务在进行
boolean tagSync = qywxTagSyncApiService.checkQywxTagSync(wxEnterpriseId);
if (!tagSync) {
// 有同步任务
return resultResponse(HaoBanErrCode.ERR_30001);
}
}
if (flag == 0 && StringUtils.isNotEmpty(wxEntIdStr)) {
// 关闭标签同步,只有在字符串不为空时才能关
List<String> filterList = Arrays.stream(wxEntIdStr.split(","))
.filter(one -> !one.equals(wxEnterpriseId))
.collect(Collectors.toList());
String closeStr = StringUtils.join(filterList, ",");
logger.info("关闭企业标签同步, closeStr:{}", closeStr);
RedisUtil.setCache(key, closeStr);
}
} finally {
RedisUtil.unlock(lockKey);
}
return resultResponse(HaoBanErrCode.ERR_1);
}
//授权详情列表
@RequestMapping("authorize-detail")
public HaobanResponse authorizeDetail(String wxEnterpriseId) {
List<EnterpriseDetailDTO> list = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(wxEnterpriseId);
List<EnterpriseDetailVo> result = EntityUtil.changeEntityListByJSON(EnterpriseDetailVo.class, list);
for (EnterpriseDetailVo vo : result) {
List<StoreDTO> stores = storeService.getStoreByEnterId(vo.getEnterpriseId(), null, null);
if (CollectionUtil.isEmpty(stores)) {
continue;
} else {
List<String> storeIds = stores.stream().map(s -> s.getStoreId()).collect(Collectors.toList());
List<DepartmentDTO> countList = departmentApiService.listByRelatedIds(storeIds);
vo.setStoreCount(countList.size());
}
EnterpriseDTO enterpriseDTO = enterpriseService.getEnterpriseById(vo.getEnterpriseId());
vo.setEnterpriseName(enterpriseDTO.getEnterpriseName());
vo.setEnterpriseLogo(enterpriseDTO.getQcloudImageUrl());
}
return resultResponse(HaoBanErrCode.ERR_1, result);
}
//登录
@RequestMapping("yw-login")
public void ywLogin(String wxEnterpriseId, HttpServletResponse httpServletResponse) throws IOException {
String host = GlobalVar.ctxPropertiesMap.get("haoban_service_host"); String host = GlobalVar.ctxPropertiesMap.get("haoban_service_host");
logger.info("host============================>{}",host); logger.info("host============================>{}", host);
String random = "ywLogin:"+UuidUtil.randomUUID(); String random = "ywLogin:" + UuidUtil.randomUUID();
RedisUtil.setCache(random, 1,1000L); RedisUtil.setCache(random, 1, 1000L);
String url=host+LOGIN_URL+"?wxEnterpriseId="+wxEnterpriseId+"&random="+random; String url = host + LOGIN_URL + "?wxEnterpriseId=" + wxEnterpriseId + "&random=" + random;
httpServletResponse.sendRedirect(url); httpServletResponse.sendRedirect(url);
} }
} }
...@@ -74,9 +74,12 @@ public enum HaoBanErrCode { ...@@ -74,9 +74,12 @@ public enum HaoBanErrCode {
ERR_10020(10020,"模板名称已存在"), ERR_10020(10020,"模板名称已存在"),
ERR_20001(20001,"企业微信商户不存在"), ERR_20001(20001,"企业微信商户不存在"),
ERR_20002(20002,"门店不存在"), ERR_20002(20002,"门店不存在"),
ERR_30001(30001,"已存在同步任务, 无法关闭"),
ERR_DEFINE(-888, "自定义错误"), ERR_DEFINE(-888, "自定义错误"),
ERR_OTHER(-999, "未知错误code"); ERR_OTHER(-999, "未知错误code");
private int code; private int code;
......
...@@ -57,4 +57,7 @@ ...@@ -57,4 +57,7 @@
<dubbo:reference interface="com.gic.sharing.core.service.api.service.MqApiService" <dubbo:reference interface="com.gic.sharing.core.service.api.service.MqApiService"
id="mqApiService"/> id="mqApiService"/>
<dubbo:reference interface="com.gic.haoban.app.customer.service.api.service.QywxTagSyncApiService"
id="qywxTagSyncApiService"/>
</beans> </beans>
package com.gic.haoban.manage.service.dao.mapper; package com.gic.haoban.manage.service.dao.mapper;
import com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated;
import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.Param;
import java.util.Collection; import java.util.Collection;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated;
import com.github.pagehelper.Page;
public interface TabHaobanExternalClerkRelatedMapper { public interface TabHaobanExternalClerkRelatedMapper {
int deleteByPrimaryKey(String externalClerkRelatedId); int deleteByPrimaryKey(String externalClerkRelatedId);
...@@ -20,8 +19,6 @@ public interface TabHaobanExternalClerkRelatedMapper { ...@@ -20,8 +19,6 @@ public interface TabHaobanExternalClerkRelatedMapper {
int updateByPrimaryKeySelective(TabHaobanExternalClerkRelated record); int updateByPrimaryKeySelective(TabHaobanExternalClerkRelated record);
int updateByPrimaryKey(TabHaobanExternalClerkRelated record);
TabHaobanExternalClerkRelated selectByClerkIdAndExternalUserId(@Param("clerkId")String clerkId, @Param("externalUserId")String externalUserId); TabHaobanExternalClerkRelated selectByClerkIdAndExternalUserId(@Param("clerkId")String clerkId, @Param("externalUserId")String externalUserId);
void delByUserIdAndExternalUserId(TabHaobanExternalClerkRelated record); void delByUserIdAndExternalUserId(TabHaobanExternalClerkRelated record);
...@@ -201,4 +198,15 @@ public interface TabHaobanExternalClerkRelatedMapper { ...@@ -201,4 +198,15 @@ public interface TabHaobanExternalClerkRelatedMapper {
* @return * @return
*/ */
int updateMemberIdByMemberId(@Param("memberId") String memberId, @Param("oldMemberId") String oldMemberId); int updateMemberIdByMemberId(@Param("memberId") String memberId, @Param("oldMemberId") String oldMemberId);
/**
* 更新状态通过会员id
*
* @param memberId 会员ID
* @param enterpriseId 企业id
* @return int
* @author mozhu
* @date 2021-09-13 16:59:49
*/
int updateStatusByMemberId(@Param("memberId") String memberId, @Param("enterpriseId") String enterpriseId);
} }
\ No newline at end of file
...@@ -5,8 +5,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -5,8 +5,6 @@ import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.Page; import com.gic.api.base.commons.Page;
import com.gic.commons.util.EntityUtil; import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.GICMQClientUtil; import com.gic.commons.util.GICMQClientUtil;
import com.gic.haoban.app.customer.dto.SearchComputeDTO;
import com.gic.haoban.app.customer.dto.SearchDataDTO;
import com.gic.haoban.app.customer.enums.GicQywxSyncTypeEnum; import com.gic.haoban.app.customer.enums.GicQywxSyncTypeEnum;
import com.gic.haoban.app.customer.enums.QywxSyncTaskTypeEnum; import com.gic.haoban.app.customer.enums.QywxSyncTaskTypeEnum;
import com.gic.haoban.base.api.common.BasePageInfo; import com.gic.haoban.base.api.common.BasePageInfo;
...@@ -20,130 +18,122 @@ import com.gic.haoban.manage.service.dao.mapper.TabHaobanExternalClerkRelatedMap ...@@ -20,130 +18,122 @@ import com.gic.haoban.manage.service.dao.mapper.TabHaobanExternalClerkRelatedMap
import com.gic.haoban.manage.service.entity.MemberUnionidRelated; import com.gic.haoban.manage.service.entity.MemberUnionidRelated;
import com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated; import com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated;
import com.gic.haoban.manage.service.pojo.QywxTagSyncInfoPojo; import com.gic.haoban.manage.service.pojo.QywxTagSyncInfoPojo;
import com.gic.member.api.dto.MemberDTO;
import com.gic.member.api.service.MemberApiService;
import com.gic.member.api.service.MemberService;
import com.gic.mq.sdk.GicMQClient; import com.gic.mq.sdk.GicMQClient;
import com.gic.search.engine.api.constant.MemberDataEnum;
import com.gic.search.engine.api.constant.OperateEnum;
import com.gic.search.engine.api.dto.ESResponseQueryBatch;
import com.gic.search.engine.api.dto.ESResponseQuerySingle;
import com.gic.search.engine.api.dto.dynamic.DynamicSearchDTO;
import com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@Service @Service
public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedApiService{ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedApiService {
private static final Logger log = LogManager.getLogger(ExternalClerkRelatedApiServiceImpl.class); private static final Logger log = LogManager.getLogger(ExternalClerkRelatedApiServiceImpl.class);
@Autowired @Autowired
private TabHaobanExternalClerkRelatedMapper tabHaobanExternalClerkRelatedMapper; private TabHaobanExternalClerkRelatedMapper tabHaobanExternalClerkRelatedMapper;
@Autowired @Autowired
private MemberUnionidRelatedMapper memberUnionidRelatedMapper; private MemberUnionidRelatedMapper memberUnionidRelatedMapper;
/** /**
* 查询导购好友关联 * 查询导购好友关联
* *
* @param wxUserId : 微信用户id * @param wxUserId : 微信用户id
* @param wxEnterpriseId : 微信企业id * @param wxEnterpriseId : 微信企业id
* @param enterpriseId : 企业id * @param enterpriseId : 企业id
* @return : 返回好友关联 * @return : 返回好友关联
*/ */
@Override @Override
public List<ExternalClerkRelatedDTO> listByWxUserIdAndWxEnterpriseId(String wxUserId, String wxEnterpriseId, String enterpriseId) { public List<ExternalClerkRelatedDTO> listByWxUserIdAndWxEnterpriseId(String wxUserId, String wxEnterpriseId, String enterpriseId) {
List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByWxUserIdAndWxEnterpriseId(wxUserId, wxEnterpriseId, enterpriseId); List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByWxUserIdAndWxEnterpriseId(wxUserId, wxEnterpriseId, enterpriseId);
return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, list); return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, list);
} }
/** /**
* 查询会员在企业下的好友关系 * 查询会员在企业下的好友关系
* *
* @param memberId : 会员id * @param memberId : 会员id
* @param wxEnterpriseId : 微信企业id * @param wxEnterpriseId : 微信企业id
* @param enterpriseId : 企业id * @param enterpriseId : 企业id
* @return : 返回会员导购关联关系 * @return : 返回会员导购关联关系
*/ */
@Override @Override
public List<ExternalClerkRelatedDTO> listByMemberIdAndWxEnterpriseId(String memberId, String wxEnterpriseId, String enterpriseId){ public List<ExternalClerkRelatedDTO> listByMemberIdAndWxEnterpriseId(String memberId, String wxEnterpriseId, String enterpriseId) {
List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByMemberIdAndWxEnterpriseId(memberId, wxEnterpriseId, enterpriseId); List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByMemberIdAndWxEnterpriseId(memberId, wxEnterpriseId, enterpriseId);
return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class,list); return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, list);
} }
@Override @Override
public List<ExternalClerkRelatedDTO> listByEnterpriseIdAndDate( public List<ExternalClerkRelatedDTO> listByEnterpriseIdAndDate(
String enterpriseId, Date date) { String enterpriseId, Date date) {
List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByEnterpriseIdAndDate(enterpriseId,date); List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByEnterpriseIdAndDate(enterpriseId, date);
return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class,list); return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, list);
} }
@Override
public Page<ExternalClerkRelatedDTO> pageMemberUnionByParams(List<String> userIdList, List<String> sendMemberIds, @Override
String enterpriseId, BasePageInfo pageInfo) { public Page<ExternalClerkRelatedDTO> pageMemberUnionByParams(List<String> userIdList, List<String> sendMemberIds,
PageHelper.startPage(pageInfo.getPageNum(), pageInfo.getPageSize()); String enterpriseId, BasePageInfo pageInfo) {
return PageUtil.changePageHelperToCurrentPage(tabHaobanExternalClerkRelatedMapper.pageMemberUnionByParams(userIdList,sendMemberIds,enterpriseId),ExternalClerkRelatedDTO.class); PageHelper.startPage(pageInfo.getPageNum(), pageInfo.getPageSize());
} return PageUtil.changePageHelperToCurrentPage(tabHaobanExternalClerkRelatedMapper.pageMemberUnionByParams(userIdList, sendMemberIds, enterpriseId), ExternalClerkRelatedDTO.class);
@Override }
public List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserId(String wxUserId, String wxEnterpriseId) {
@Override
return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserId(wxUserId,wxEnterpriseId)); public List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserId(String wxUserId, String wxEnterpriseId) {
}
@Override return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserId(wxUserId, wxEnterpriseId));
public List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserIds(List<String> userIdList, }
String wxEnterpriseId) {
if(userIdList == null || userIdList.isEmpty()){ @Override
return Collections.EMPTY_LIST; public List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserIds(List<String> userIdList,
} String wxEnterpriseId) {
return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserIds(userIdList,wxEnterpriseId)); if (userIdList == null || userIdList.isEmpty()) {
} return Collections.EMPTY_LIST;
}
@Override return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserIds(userIdList, wxEnterpriseId));
public ExternalClerkRelatedDTO getExternalClerkByRelationKeyAndPre(String relationKey) { }
TabHaobanExternalClerkRelated related = tabHaobanExternalClerkRelatedMapper.getByRelationKey(relationKey);
return EntityUtil.changeEntityNew(ExternalClerkRelatedDTO.class, related); @Override
} public ExternalClerkRelatedDTO getExternalClerkByRelationKeyAndPre(String relationKey) {
TabHaobanExternalClerkRelated related = tabHaobanExternalClerkRelatedMapper.getByRelationKey(relationKey);
@Override return EntityUtil.changeEntityNew(ExternalClerkRelatedDTO.class, related);
public Page<ExternalClerkRelatedDTO> pageExternalClerk(String wxEnterpriseId, String wxUserId, List<Integer> statusFlags, BasePageInfo pageInfo) { }
PageHelper.startPage(pageInfo);
List<TabHaobanExternalClerkRelated> ret = tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserIdAndStatus(wxEnterpriseId, wxUserId, statusFlags); @Override
Page<ExternalClerkRelatedDTO> retPage = PageUtil.changePageHelperToCurrentPage(new PageInfo<>(ret), ExternalClerkRelatedDTO.class); public Page<ExternalClerkRelatedDTO> pageExternalClerk(String wxEnterpriseId, String wxUserId, List<Integer> statusFlags, BasePageInfo pageInfo) {
PageHelper.startPage(pageInfo);
List<TabHaobanExternalClerkRelated> ret = tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserIdAndStatus(wxEnterpriseId, wxUserId, statusFlags);
Page<ExternalClerkRelatedDTO> retPage = PageUtil.changePageHelperToCurrentPage(new PageInfo<>(ret), ExternalClerkRelatedDTO.class);
return retPage; return retPage;
} }
@Override @Override
public boolean pushExternalByRelationKey(String relationKey) { public boolean pushExternalByRelationKey(String relationKey) {
tabHaobanExternalClerkRelatedMapper.pushExternalByRelationKey(relationKey); tabHaobanExternalClerkRelatedMapper.pushExternalByRelationKey(relationKey);
return true; return true;
} }
@Override @Override
public ServiceResponse<ExternalClerkRelatedDTO> bindMemberIdExternalByRelationKey(String relationKey, String enterpriseId, String memberId, String unionid) { public ServiceResponse<ExternalClerkRelatedDTO> bindMemberIdExternalByRelationKey(String relationKey, String enterpriseId, String memberId, String unionid) {
ServiceResponse<ExternalClerkRelatedDTO> resp = new ServiceResponse<>(); ServiceResponse<ExternalClerkRelatedDTO> resp = new ServiceResponse<>();
TabHaobanExternalClerkRelated externalClerkRelated = tabHaobanExternalClerkRelatedMapper.getByRelationKey(relationKey); TabHaobanExternalClerkRelated externalClerkRelated = tabHaobanExternalClerkRelatedMapper.getByRelationKey(relationKey);
if (null == externalClerkRelated) { if (null == externalClerkRelated) {
resp.setCode(0); resp.setCode(0);
resp.setMessage("relationKey对应的关联关系不存在或删除"); resp.setMessage("relationKey对应的关联关系不存在或删除");
return resp; return resp;
} }
if (!externalClerkRelated.getEnterpriseId().equals(enterpriseId)) { if (!externalClerkRelated.getEnterpriseId().equals(enterpriseId)) {
resp.setCode(0); resp.setCode(0);
resp.setMessage("relationKey对应的企业与所传会员企业不对应"); resp.setMessage("relationKey对应的企业与所传会员企业不对应");
return resp; return resp;
} }
externalClerkRelated.setMemberId(memberId); externalClerkRelated.setMemberId(memberId);
externalClerkRelated.setUnionid(unionid); externalClerkRelated.setUnionid(unionid);
externalClerkRelated.setUpdateTime(new Date()); externalClerkRelated.setUpdateTime(new Date());
externalClerkRelated.setStatusFlag(1); externalClerkRelated.setStatusFlag(1);
tabHaobanExternalClerkRelatedMapper.updateByPrimaryKeySelective(externalClerkRelated); tabHaobanExternalClerkRelatedMapper.updateByPrimaryKeySelective(externalClerkRelated);
//更新unionid //更新unionid
...@@ -152,48 +142,48 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA ...@@ -152,48 +142,48 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
memberUnionidRelated.setUpdateTime(new Date()); memberUnionidRelated.setUpdateTime(new Date());
memberUnionidRelatedMapper.updateByPrimaryKeySelective(memberUnionidRelated); memberUnionidRelatedMapper.updateByPrimaryKeySelective(memberUnionidRelated);
resp.setResult(EntityUtil.changeEntityNew(ExternalClerkRelatedDTO.class, externalClerkRelated)); resp.setResult(EntityUtil.changeEntityNew(ExternalClerkRelatedDTO.class, externalClerkRelated));
pushTagSync(memberId, externalClerkRelated.getWxEnterpriseId(), enterpriseId); pushTagSync(memberId, externalClerkRelated.getWxEnterpriseId(), enterpriseId);
return resp; return resp;
} }
/** /**
* 刷新标签信息 * 刷新标签信息
* *
* @param memberId * @param memberId
* @param wxEnterpriseId * @param wxEnterpriseId
* @param enterpriseId * @param enterpriseId
*/ */
private void pushTagSync(String memberId, String wxEnterpriseId, String enterpriseId) { private void pushTagSync(String memberId, String wxEnterpriseId, String enterpriseId) {
QywxTagSyncInfoPojo pojo = new QywxTagSyncInfoPojo(); QywxTagSyncInfoPojo pojo = new QywxTagSyncInfoPojo();
pojo.setDataId(memberId); pojo.setDataId(memberId);
pojo.setTaskId("-1"); pojo.setTaskId("-1");
pojo.setTaskType(QywxSyncTaskTypeEnum.MEMBER_SYNC.getType()); pojo.setTaskType(QywxSyncTaskTypeEnum.MEMBER_SYNC.getType());
//单个会员同步 //单个会员同步
pojo.setSyncType(GicQywxSyncTypeEnum.SINGLE_WXENT_MEMNER_SYNC.getType()); pojo.setSyncType(GicQywxSyncTypeEnum.SINGLE_WXENT_MEMNER_SYNC.getType());
pojo.setWxEnterpriseId(wxEnterpriseId); pojo.setWxEnterpriseId(wxEnterpriseId);
pojo.setEnterpriseId(enterpriseId); pojo.setEnterpriseId(enterpriseId);
GicMQClient clientInstance = GICMQClientUtil.getClientInstance(); GicMQClient clientInstance = GICMQClientUtil.getClientInstance();
try { try {
clientInstance.sendMessage("qywxTagSyncDeal", JSONObject.toJSONString(pojo)); clientInstance.sendMessage("qywxTagSyncDeal", JSONObject.toJSONString(pojo));
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
log.info("异常:{}", e); log.info("异常:{}", e);
} }
} }
@Override @Override
public ExternalClerkRelatedDTO getClerkFriendByUnionid(String enterpriseId, String clerkId, String unionid) { public ExternalClerkRelatedDTO getClerkFriendByUnionid(String enterpriseId, String clerkId, String unionid) {
TabHaobanExternalClerkRelated externalClerkRelated = tabHaobanExternalClerkRelatedMapper.getClerkExternalByUnionId(enterpriseId, clerkId, unionid); TabHaobanExternalClerkRelated externalClerkRelated = tabHaobanExternalClerkRelatedMapper.getClerkExternalByUnionId(enterpriseId, clerkId, unionid);
ExternalClerkRelatedDTO clerkRelatedDTO = EntityUtil.changeEntityNew(ExternalClerkRelatedDTO.class, externalClerkRelated); ExternalClerkRelatedDTO clerkRelatedDTO = EntityUtil.changeEntityNew(ExternalClerkRelatedDTO.class, externalClerkRelated);
return clerkRelatedDTO; return clerkRelatedDTO;
} }
@Override @Override
public List<ExternalClerkRelatedDTO> listExternalClerkByWxUserIdAncExternalUserId(String wxEnterpriseId, String wxUserId, String enterpriseId, String externalUserId) { public List<ExternalClerkRelatedDTO> listExternalClerkByWxUserIdAncExternalUserId(String wxEnterpriseId, String wxUserId, String enterpriseId, String externalUserId) {
List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listExternalClerkByWxUserIdAncExternalUserId(wxEnterpriseId, wxUserId, enterpriseId, externalUserId); List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listExternalClerkByWxUserIdAncExternalUserId(wxEnterpriseId, wxUserId, enterpriseId, externalUserId);
return EntityUtil.changeEntityListNew(ExternalClerkRelatedDTO.class, list); return EntityUtil.changeEntityListNew(ExternalClerkRelatedDTO.class, list);
} }
@Override @Override
public List<ExternalClerkRelatedDTO> listByIds(String wxEnterpriseId, List<String> ids) { public List<ExternalClerkRelatedDTO> listByIds(String wxEnterpriseId, List<String> ids) {
...@@ -208,28 +198,39 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA ...@@ -208,28 +198,39 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
return PageUtil.changePageHelperToCurrentPage(new PageInfo<>(memberIDs)); return PageUtil.changePageHelperToCurrentPage(new PageInfo<>(memberIDs));
} }
@Override @Override
public Page<String> pageExternalByEnterpriseId(String wxEnterpriseId, String enterpriseId, int pageNum, int pageSize) { public Page<String> pageExternalByEnterpriseId(String wxEnterpriseId, String enterpriseId, int pageNum, int pageSize) {
PageHelper.startPage(pageNum, pageSize); PageHelper.startPage(pageNum, pageSize);
List<String> memberIDs = tabHaobanExternalClerkRelatedMapper.listMemberIdByEnterpriseId(wxEnterpriseId, enterpriseId); List<String> memberIDs = tabHaobanExternalClerkRelatedMapper.listMemberIdByEnterpriseId(wxEnterpriseId, enterpriseId);
return PageUtil.changePageHelperToCurrentPage(new PageInfo<>(memberIDs)); return PageUtil.changePageHelperToCurrentPage(new PageInfo<>(memberIDs));
} }
@Override @Override
public List<String> listExternalClerkMemberIdsByMemberIds(String wxEnterpriseId, List<String> memberIds) { public List<String> listExternalClerkMemberIdsByMemberIds(String wxEnterpriseId, List<String> memberIds) {
return tabHaobanExternalClerkRelatedMapper.listMemberIdsByMemberIds(memberIds, wxEnterpriseId); return tabHaobanExternalClerkRelatedMapper.listMemberIdsByMemberIds(memberIds, wxEnterpriseId);
} }
@Override @Override
public List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberIds(String wxEnterpriseId, List<String> memberIds) { public List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberIds(String wxEnterpriseId, List<String> memberIds) {
List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByMemberIds(memberIds, wxEnterpriseId); List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByMemberIds(memberIds, wxEnterpriseId);
return EntityUtil.changeEntityListNew(ExternalClerkRelatedShortInfoDTO.class, list); return EntityUtil.changeEntityListNew(ExternalClerkRelatedShortInfoDTO.class, list);
} }
@Override @Override
public List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberId(String memberId) { public List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberId(String memberId) {
List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByMemberId(memberId); List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listByMemberId(memberId);
return EntityUtil.changeEntityListNew(ExternalClerkRelatedShortInfoDTO.class, list); return EntityUtil.changeEntityListNew(ExternalClerkRelatedShortInfoDTO.class, list);
} }
@Override
public void delByMemberIdAndEnterpriseId(String memberId, String enterpriseId, String mergeMemberId) {
if (StringUtils.isBlank(mergeMemberId)) {
//删除会员
tabHaobanExternalClerkRelatedMapper.updateStatusByMemberId(memberId, enterpriseId);
} else {
//合并会员
tabHaobanExternalClerkRelatedMapper.updateMemberIdByMemberId(mergeMemberId, memberId);
}
}
} }
...@@ -228,26 +228,7 @@ ...@@ -228,26 +228,7 @@
</set> </set>
where external_clerk_related_id = #{externalClerkRelatedId,jdbcType=VARCHAR} where external_clerk_related_id = #{externalClerkRelatedId,jdbcType=VARCHAR}
</update> </update>
<update id="updateByPrimaryKey" parameterType="com.gic.haoban.manage.service.entity.TabHaobanExternalClerkRelated" >
update tab_haoban_external_clerk_related
set wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR},
enterprise_id = #{enterpriseId,jdbcType=VARCHAR},
store_id = #{storeId,jdbcType=VARCHAR},
member_id = #{memberId,jdbcType=VARCHAR},
unionid = #{unionid,jdbcType=VARCHAR},
external_name = #{externalName,jdbcType=VARCHAR},
add_create_time = #{addCreateTime,jdbcType=VARCHAR},
member_unionid_related_id = #{memberUnionidRelatedId,jdbcType=VARCHAR},
clerk_id = #{clerkId,jdbcType=VARCHAR},
staff_id = #{staffId,jdbcType=VARCHAR},
wx_user_id = #{wxUserId,jdbcType=VARCHAR},
status_flag = #{statusFlag,jdbcType=INTEGER},
external_user_id = #{externalUserId},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_time = #{updateTime,jdbcType=TIMESTAMP}
where external_clerk_related_id = #{externalClerkRelatedId,jdbcType=VARCHAR}
</update>
<select id="selectByClerkIdAndExternalUserId" resultMap="BaseResultMap" parameterType="java.lang.String" > <select id="selectByClerkIdAndExternalUserId" resultMap="BaseResultMap" parameterType="java.lang.String" >
select select
<include refid="Base_Column_List" /> <include refid="Base_Column_List" />
...@@ -577,11 +558,18 @@ ...@@ -577,11 +558,18 @@
<update id="updateMemberIdByMemberId"> <update id="updateMemberIdByMemberId">
UPDATE UPDATE
tab_haoban_external_clerk_related tab_haoban_external_clerk_related
SET SET member_id=#{memberId},
member_id=#{memberId}, update_time = now()
update_time = now() where member_id = #{oldMemberId}
where and status_flag = 1
member_id = #{oldMemberId} </update>
and status_flag = 1
<update id="updateStatusByMemberId">
UPDATE
tab_haoban_external_clerk_related
SET status_flag = 0,
update_time = now()
where member_id = #{memberId}
and enterprise_id = #{enterpriseId}
</update> </update>
</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