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;
}
} }
...@@ -136,4 +136,16 @@ public interface ExternalClerkRelatedApiService { ...@@ -136,4 +136,16 @@ public interface ExternalClerkRelatedApiService {
*/ */
List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberId(String memberId); List<ExternalClerkRelatedShortInfoDTO> listExternalClerkByMemberId(String memberId);
/**
* gic删除会员,解除好办与gic关联关系
*
* @param memberId 会员ID
* @param enterpriseId 企业标识
* @param mergeMemberId 合并后的会员ID 删除传null,
* @author mozhu
* @date 2021-09-13 16:52:31
*/
void delByMemberIdAndEnterpriseId(String memberId, String enterpriseId, String mergeMemberId);
} }
...@@ -225,6 +225,11 @@ ...@@ -225,6 +225,11 @@
<artifactId>sharing-core-api</artifactId> <artifactId>sharing-core-api</artifactId>
<version>${sharing-core-api}</version> <version>${sharing-core-api}</version>
</dependency> </dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>haoban-app-customer-api</artifactId>
<version>${haoban-app-customer-api}</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
......
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,11 +37,10 @@ import com.gic.haoban.manage.api.service.WxEnterpriseApiService; ...@@ -39,11 +37,10 @@ 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);
...@@ -57,54 +54,143 @@ public class EnterpriseController extends WebBaseController{ ...@@ -57,54 +54,143 @@ public class EnterpriseController extends WebBaseController{
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;
//企业列表 //企业列表
// openTagFlag 0 未开启 1 开启 2 所有
@RequestMapping("wx-enterprise-list") @RequestMapping("wx-enterprise-list")
public HaobanResponse wxEnterpriseList(BasePageInfo pageInfo,String keyword,String gicEnterpriseName,Integer gicContactHelper,String version) { public HaobanResponse wxEnterpriseList(BasePageInfo pageInfo, String keyword, Integer openTagFlag, String gicEnterpriseName, Integer gicContactHelper, String version) {
List<String> wxEnterpriseIds = new ArrayList<String>(); List<String> wxEnterpriseIds = new ArrayList<String>();
if(!StringUtils.isEmpty(gicEnterpriseName)){ if (!StringUtils.isEmpty(gicEnterpriseName)) {
List<EnterpriseDTO> enterpriseNames = enterpriseService.getEnterpriseByName(gicEnterpriseName); List<EnterpriseDTO> enterpriseNames = enterpriseService.getEnterpriseByName(gicEnterpriseName);
if(CollectionUtil.isNotEmpty(enterpriseNames)){ if (CollectionUtil.isNotEmpty(enterpriseNames)) {
List<String>enterpriseIds = enterpriseNames.stream().map(s->s.getEnterpriseId()).collect(Collectors.toList()); List<String> enterpriseIds = enterpriseNames.stream().map(s -> s.getEnterpriseId()).collect(Collectors.toList());
List<EnterpriseDetailDTO> wxEnterpriseIdDTOs = wxEnterpriseRelatedApiService.listEnterpriseByEnterpriseIds(enterpriseIds); List<EnterpriseDetailDTO> wxEnterpriseIdDTOs = wxEnterpriseRelatedApiService.listEnterpriseByEnterpriseIds(enterpriseIds);
if(CollectionUtil.isNotEmpty(wxEnterpriseIdDTOs)){ if (CollectionUtil.isNotEmpty(wxEnterpriseIdDTOs)) {
wxEnterpriseIds = wxEnterpriseIdDTOs.stream().map(s->s.getWxEnterpriseId()).collect(Collectors.toList()); wxEnterpriseIds = wxEnterpriseIdDTOs.stream().map(s -> s.getWxEnterpriseId()).collect(Collectors.toList());
} }
} }
if(CollectionUtil.isEmpty(wxEnterpriseIds)){ if (CollectionUtil.isEmpty(wxEnterpriseIds)) {
wxEnterpriseIds = Arrays.asList("-9999"); wxEnterpriseIds = Arrays.asList("-9999");
} }
} }
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo,keyword,wxEnterpriseIds,gicContactHelper,version);
// 查询开启标签同步缓存-详情在 /tag/open-tag 接口
String wxEntIdStr = (String) RedisUtil.getCache("qywx-tag-open");
Set<String> wxEntIdSet = Sets.newHashSet();
if (StringUtils.isNotEmpty(wxEntIdStr)) {
wxEntIdSet = Arrays.stream(wxEntIdStr.split(",")).collect(Collectors.toSet());
}
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo, keyword, wxEnterpriseIds, gicContactHelper, version);
PageResult<YwWxEnterpriseDTO> pageVo = new PageResult<>(); PageResult<YwWxEnterpriseDTO> pageVo = new PageResult<>();
List<YwWxEnterpriseDTO> list = EntityUtil.changeEntityListByJSON(YwWxEnterpriseDTO.class, page.getResult()); List<YwWxEnterpriseDTO> list = EntityUtil.changeEntityListByJSON(YwWxEnterpriseDTO.class, page.getResult());
for(YwWxEnterpriseDTO dto : list){
List<YwWxEnterpriseDTO> resList = Lists.newArrayListWithCapacity(list.size());
for (YwWxEnterpriseDTO dto : list) {
dto.setVersion("3.0"); dto.setVersion("3.0");
dto.setBuyDate(new Date()); dto.setBuyDate(new Date());
dto.setBuyStatus("1"); dto.setBuyStatus("1");
List<EnterpriseDetailDTO> counts = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(dto.getWxEnterpriseId()); List<EnterpriseDetailDTO> counts = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(dto.getWxEnterpriseId());
dto.setRelationCount(counts.size()); 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(list);
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);
} }
/**
* 开启关闭标签同步
*
* @param wxEnterpriseId 微信企业id
* @param flag 操作标记 1 开启 0 关闭
* @return HaobanResponse
*/
@RequestMapping("operate-tag-sync")
public HaobanResponse operateTagSync(String wxEnterpriseId, Integer flag) {
if (StringUtils.isEmpty(wxEnterpriseId)) {
return resultResponse(HaoBanErrCode.ERR_2);
}
if (Objects.isNull(flag)) {
return resultResponse(HaoBanErrCode.ERR_2);
}
// 操作缓存
String key = "qywx-tag-open";
String lockKey = "qywx-tag-open-lock";
try {
RedisUtil.lock(lockKey, 5L);
String wxEntIdStr = (String) RedisUtil.getCache(key);
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") @RequestMapping("authorize-detail")
public HaobanResponse authorizeDetail(String wxEnterpriseId) { public HaobanResponse authorizeDetail(String wxEnterpriseId) {
List<EnterpriseDetailDTO> list = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(wxEnterpriseId); List<EnterpriseDetailDTO> list = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(wxEnterpriseId);
List<EnterpriseDetailVo> result = EntityUtil.changeEntityListByJSON(EnterpriseDetailVo.class, list); List<EnterpriseDetailVo> result = EntityUtil.changeEntityListByJSON(EnterpriseDetailVo.class, list);
for(EnterpriseDetailVo vo:result){ for (EnterpriseDetailVo vo : result) {
List<StoreDTO> stores = storeService.getStoreByEnterId(vo.getEnterpriseId(), null, null); List<StoreDTO> stores = storeService.getStoreByEnterId(vo.getEnterpriseId(), null, null);
if(CollectionUtil.isEmpty(stores)){ if (CollectionUtil.isEmpty(stores)) {
continue; continue;
}else{ } else {
List<String> storeIds = stores.stream().map(s->s.getStoreId()).collect(Collectors.toList()); List<String> storeIds = stores.stream().map(s -> s.getStoreId()).collect(Collectors.toList());
List<DepartmentDTO> countList = departmentApiService.listByRelatedIds(storeIds); List<DepartmentDTO> countList = departmentApiService.listByRelatedIds(storeIds);
vo.setStoreCount(countList.size()); vo.setStoreCount(countList.size());
} }
...@@ -112,17 +198,17 @@ public class EnterpriseController extends WebBaseController{ ...@@ -112,17 +198,17 @@ public class EnterpriseController extends WebBaseController{
vo.setEnterpriseName(enterpriseDTO.getEnterpriseName()); vo.setEnterpriseName(enterpriseDTO.getEnterpriseName());
vo.setEnterpriseLogo(enterpriseDTO.getQcloudImageUrl()); vo.setEnterpriseLogo(enterpriseDTO.getQcloudImageUrl());
} }
return resultResponse(HaoBanErrCode.ERR_1,result); return resultResponse(HaoBanErrCode.ERR_1, result);
} }
//登录 //登录
@RequestMapping("yw-login") @RequestMapping("yw-login")
public void ywLogin(String wxEnterpriseId,HttpServletResponse httpServletResponse) throws IOException { 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);
} }
} }
...@@ -77,6 +77,9 @@ public enum HaoBanErrCode { ...@@ -77,6 +77,9 @@ public enum HaoBanErrCode {
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,32 +18,21 @@ import com.gic.haoban.manage.service.dao.mapper.TabHaobanExternalClerkRelatedMap ...@@ -20,32 +18,21 @@ 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;
...@@ -76,35 +63,38 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA ...@@ -76,35 +63,38 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
* @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 @Override
public Page<ExternalClerkRelatedDTO> pageMemberUnionByParams(List<String> userIdList, List<String> sendMemberIds, public Page<ExternalClerkRelatedDTO> pageMemberUnionByParams(List<String> userIdList, List<String> sendMemberIds,
String enterpriseId, BasePageInfo pageInfo) { String enterpriseId, BasePageInfo pageInfo) {
PageHelper.startPage(pageInfo.getPageNum(), pageInfo.getPageSize()); PageHelper.startPage(pageInfo.getPageNum(), pageInfo.getPageSize());
return PageUtil.changePageHelperToCurrentPage(tabHaobanExternalClerkRelatedMapper.pageMemberUnionByParams(userIdList,sendMemberIds,enterpriseId),ExternalClerkRelatedDTO.class); return PageUtil.changePageHelperToCurrentPage(tabHaobanExternalClerkRelatedMapper.pageMemberUnionByParams(userIdList, sendMemberIds, enterpriseId), ExternalClerkRelatedDTO.class);
} }
@Override @Override
public List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserId(String wxUserId, String wxEnterpriseId) { public List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserId(String wxUserId, String wxEnterpriseId) {
return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserId(wxUserId,wxEnterpriseId)); return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserId(wxUserId, wxEnterpriseId));
} }
@Override @Override
public List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserIds(List<String> userIdList, public List<ExternalClerkRelatedDTO> listByWxEnterpriseIdAndWxUserIds(List<String> userIdList,
String wxEnterpriseId) { String wxEnterpriseId) {
if(userIdList == null || userIdList.isEmpty()){ if (userIdList == null || userIdList.isEmpty()) {
return Collections.EMPTY_LIST; return Collections.EMPTY_LIST;
} }
return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserIds(userIdList,wxEnterpriseId)); return EntityUtil.changeEntityListByJSON(ExternalClerkRelatedDTO.class, tabHaobanExternalClerkRelatedMapper.listByWxEnterpriseIdAndWxUserIds(userIdList, wxEnterpriseId));
} }
@Override @Override
...@@ -232,4 +222,15 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA ...@@ -232,4 +222,15 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
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,25 +228,6 @@ ...@@ -228,25 +228,6 @@
</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
...@@ -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 where member_id = #{oldMemberId}
member_id = #{oldMemberId}
and status_flag = 1 and status_flag = 1
</update> </update>
<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>
</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