Commit 6791eaef by fudahua

绑定好友

parent d3ed19ce
......@@ -24,6 +24,15 @@ public class AgentEnterpriseDTO implements Serializable {
private String brandName;
private Integer wxEnterpriseType;
private Integer memberOpenCardFlag;
private Integer bindFlag;
public Integer getBindFlag() {
return bindFlag;
}
public void setBindFlag(Integer bindFlag) {
this.bindFlag = bindFlag;
}
public Integer getWxEnterpriseType() {
return wxEnterpriseType;
......
......@@ -45,4 +45,11 @@ public interface MaterialApiService {
*/
ServiceResponse<Void> shareMaterial(String wxEnterpriseId, String toWxEnterpriseId, String materialId);
/**
* 素材关联的已分配企业
*
* @param materialId
*/
List<MaterialDTO> listByFromMaterialId(String materialId);
}
......@@ -21,4 +21,12 @@ public interface MaterialService {
MaterialDTO getMaterialByFromMaterialId(String fromMaterialId, String wxEnterpriseId);
/**
* 素材列表
*
* @param fromMaterialId
* @return
*/
List<MaterialDTO> listMaterialByFromMateralId(String fromMaterialId);
}
......@@ -69,4 +69,10 @@ public class MaterialServiceImpl implements MaterialService {
TabHaobanMaterial tabHaobanMaterial = mapper.selectByfromMaterialId(fromMaterialId, wxEnterpriseId);
return EntityUtil.changeEntityByJSON(MaterialDTO.class, tabHaobanMaterial);
}
@Override
public List<MaterialDTO> listMaterialByFromMateralId(String fromMaterialId) {
List<TabHaobanMaterial> list = mapper.listByfromMaterialId(fromMaterialId);
return EntityUtil.changeEntityListByOrika(MaterialDTO.class, list);
}
}
......@@ -309,4 +309,10 @@ public class MaterialApiServiceImpl implements MaterialApiService {
materialService.insertMaterial(materialDTO);
return res;
}
@Override
public List<MaterialDTO> listByFromMaterialId(String materialId) {
List<MaterialDTO> materialDTOS = materialService.listMaterialByFromMateralId(materialId);
return materialDTOS;
}
}
......@@ -25,7 +25,6 @@ import com.gic.haoban.manage.web.config.Config;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.haoban.manage.web.qo.WxEnterpriseBindQo;
import com.gic.haoban.manage.web.vo.EnterpriseSearchVO;
import com.gic.haoban.manage.web.vo.SecretSettingVO;
import com.gic.haoban.manage.web.vo.StoreVo;
import com.gic.quartz.api.dto.QuartzTaskDTO;
......@@ -73,6 +72,9 @@ public class WxEnterpriseController extends WebBaseController{
@Autowired
private QuartzService quartzService;
@Autowired
private MaterialApiService materialApiService;
//授权企业列表
@IgnoreLogin
......@@ -704,7 +706,7 @@ public class WxEnterpriseController extends WebBaseController{
* @return
*/
@RequestMapping("/agent-wx-enterprise-list")
public HaobanResponse materialShare() {
public HaobanResponse materialShare(String materialId) {
LoginDTO loginUser = this.getLoginUser();
String wxEnterpriseId = loginUser.getWxEnterpriseId();
List<EnterpriseDetailDTO> detailDTOS = wxEnterpriseRelatedApiService.listEnterpriseByWxEnterpriseId(wxEnterpriseId);
......@@ -714,13 +716,25 @@ public class WxEnterpriseController extends WebBaseController{
Map<String, EnterpriseDetailDTO> detailDTOMap = retList.stream().filter(dto -> dto.getWxEnterpriseType() == 1).collect(Collectors.toMap(dto -> dto.getWxEnterpriseId(), dto -> dto, (ne, ol) -> ol));
Collection<EnterpriseDetailDTO> values = detailDTOMap.values();
List<AgentEnterpriseDTO> enterpriseList = EntityUtil.changeEntityListByOrika(AgentEnterpriseDTO.class, values);
if (CollectionUtils.isNotEmpty(values)) {
List<MaterialDTO> materialDTOS = materialApiService.listByFromMaterialId(materialId);
List<String> wxEids = new ArrayList<>();
if (CollectionUtils.isNotEmpty(materialDTOS)) {
wxEids = materialDTOS.stream().map(dto -> dto.getWxEnterpriseId()).collect(Collectors.toList());
}
List<String> finalWxEids = wxEids;
enterpriseList.forEach(dto -> {
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseApiService.getOne(dto.getWxEnterpriseId());
dto.setEnterpriseName(wxEnterpriseDTO.getCorpName());
if (finalWxEids.contains(dto.getWxEnterpriseId())) {
dto.setBindFlag(1);
} else {
dto.setBindFlag(0);
}
});
}
return resultResponse(HaoBanErrCode.ERR_1, enterpriseList);
}
......
......@@ -21,6 +21,7 @@ import com.gic.haoban.manage.web.qo.GetUserByMemberCodeQo;
import com.gic.haoban.manage.web.qo.MemberLoginQo;
import com.gic.haoban.manage.web.vo.AppStaffVo;
import com.gic.haoban.manage.web.vo.InfoVo;
import com.gic.haoban.manage.web.vo.MemberSendMessageVo;
import com.gic.haoban.manage.web.vo.StoreMemberVO;
import com.gic.member.api.service.MemberOpenCardBusinessService;
import com.gic.wechat.api.dto.qywx.UserDTO;
......@@ -353,8 +354,20 @@ public class InfoController extends WebBaseController{
//todo 后续新增自动创建好友记录
return resultResponse(HaoBanErrCode.ERR_11123);
}
MiniprogramSettingDTO settingDTO = wxEnterpriseApiService.getMiniprogramSettingByEid(wxEnterpriseId, enterpriseId);
if (null == settingDTO) {
logger.info("该企业没有对应需要发送的信息村子啊");
//todo 后续新增自动创建好友记录
return resultResponse(HaoBanErrCode.ERR_11124);
}
ExternalClerkRelatedDTO clerkRelatedDTO = clerkRelatedDTOS.get(0);
return resultResponse(HaoBanErrCode.ERR_1, clerkRelatedDTO.getRelationKey());
MemberSendMessageVo memberSendMessageVo = new MemberSendMessageVo();
memberSendMessageVo.setRelationKey(clerkRelatedDTO.getRelationKey());
memberSendMessageVo.setImageUrl(memberSendMessageVo.getMediaId());
memberSendMessageVo.setMediaId(settingDTO.getMediaId());
memberSendMessageVo.setSelfExteralUserId(externalUserid);
return resultResponse(HaoBanErrCode.ERR_1, memberSendMessageVo);
}
/**
......@@ -374,20 +387,4 @@ public class InfoController extends WebBaseController{
return resultResponse(HaoBanErrCode.ERR_1);
}
// /**
// * 绑定好友
// * @param memberId
// * @param enterpriseId
// * @param unionid
// * @param relationKey
// * @return
// */
// @RequestMapping("get-minipram-friend")
// public HaobanResponse memberBindFriend(String memberId, String enterpriseId, String unionid, String relationKey) {
// if (StringUtils.isAnyBlank(memberId, enterpriseId, relationKey)) {
// return resultResponse(HaoBanErrCode.ERR_2);
// }
// memberOpenCardBusinessService.memberClerkProcessByQywxFriend(enterpriseId, memberId, unionid, relationKey);
// return resultResponse(HaoBanErrCode.ERR_1);
// }
}
......@@ -221,6 +221,8 @@ public enum HaoBanErrCode {
ERR_11123(11123, "还不是好办好友,需要在好办端刷新企业微信好友"),
ERR_11124(11124, "好办小程序配置没有配置对应的小程序"),
ERR_999(999, "操作失败"),
ERR_DEFINE(-888, "自定义错误"),
......
package com.gic.haoban.manage.web.vo;
import java.io.Serializable;
/**
* Created 2021/4/20.
*
* @author hua
*/
public class MemberSendMessageVo implements Serializable {
private String relationKey;
private String selfExteralUserId;
private String imageUrl;
private String title;
/**
*
*/
private String mediaId;
public String getMediaId() {
return mediaId;
}
public void setMediaId(String mediaId) {
this.mediaId = mediaId;
}
public String getRelationKey() {
return relationKey;
}
public void setRelationKey(String relationKey) {
this.relationKey = relationKey;
}
public String getSelfExteralUserId() {
return selfExteralUserId;
}
public void setSelfExteralUserId(String selfExteralUserId) {
this.selfExteralUserId = selfExteralUserId;
}
public String getImageUrl() {
return imageUrl;
}
public void setImageUrl(String imageUrl) {
this.imageUrl = imageUrl;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
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