Commit 9063eaa6 by 徐高华

人群查詢

parent 19b42b1f
......@@ -34,6 +34,15 @@ public class HmLinkChatDTO implements Serializable {
private String shortCode;
private String name;
private Integer linkCount ;
private String esId ;
public String getEsId() {
return esId;
}
public void setEsId(String esId) {
this.esId = esId;
}
public Integer getLinkCount() {
return linkCount;
......
......@@ -16,12 +16,14 @@ import com.gic.haoban.manage.api.dto.qdto.hm.HmLinkChatQDTO;
*/
public interface HmLinkChatService {
public static final String ES_ID = "linkChat";
public List<HmLinkChatDTO> listByLinkId(String wxEnterpriseId, String enterpriseId, Long linkId);
public int save(Long linkId, List<HmLinkChatDTO> list);
public Page<HmLinkChatDTO> listPage(HmLinkChatQDTO qdto, BasePageInfo basePageInfo);
/**
*
* @Title: getLinkCountForHm
......@@ -32,6 +34,6 @@ public interface HmLinkChatService {
* @return
* @throws
*/
public List<HmLinkChatDTO> getLinkCountForHm(String wxEnterpriseId, List<Long> chatHmIdList) ;
public List<HmLinkChatDTO> getLinkCountForHm(String wxEnterpriseId, List<Long> chatHmIdList);
}
......@@ -16,6 +16,7 @@ import com.gic.api.base.commons.Page;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.util.UniqueIdUtils;
import com.gic.enterprise.api.service.ScreeningDetailService;
import com.gic.haoban.manage.api.dto.hm.HmLinkChatDTO;
import com.gic.haoban.manage.api.dto.qdto.hm.HmLinkChatQDTO;
import com.gic.haoban.manage.service.dao.mapper.hm.HmLinkChatMapper;
......@@ -32,10 +33,16 @@ public class HmLinkChatServiceImpl implements HmLinkChatService {
private HmLinkChatMapper hmLinkChatMapper;
@Autowired
private GroupChatHmService groupChatHmService;
@Autowired
private ScreeningDetailService screeningDetailService;
@Override
public List<HmLinkChatDTO> listByLinkId(String wxEnterpriseId, String enterpriseId, Long linkId) {
return this.hmLinkChatMapper.listByLinkId(wxEnterpriseId, enterpriseId, linkId);
List<HmLinkChatDTO> list = this.hmLinkChatMapper.listByLinkId(wxEnterpriseId, enterpriseId, linkId) ;
list.forEach(dto->{
dto.setEsId(HmLinkChatService.ES_ID+dto.getLinkChatId());
});
return list ;
}
@Override
......@@ -50,6 +57,9 @@ public class HmLinkChatServiceImpl implements HmLinkChatService {
for (HmLinkChatDTO item : updateList) {
TabHmLinkChat entity = EntityUtil.changeEntityByJSON(TabHmLinkChat.class, item);
this.hmLinkChatMapper.update(entity);
if (item.getMemberType() == 0) {
screeningDetailService.save(HmLinkChatService.ES_ID + entity.getLinkChatId(), item.getFilterJson());
}
}
}
List<HmLinkChatDTO> addList = list.stream().filter(dto -> null == dto.getLinkChatId())
......@@ -60,6 +70,9 @@ public class HmLinkChatServiceImpl implements HmLinkChatService {
entity.setLinkChatId(UniqueIdUtils.uniqueLong());
entity.setLinkId(linkId);
this.hmLinkChatMapper.insert(entity);
if (dto.getMemberType() == 0) {
screeningDetailService.save(HmLinkChatService.ES_ID + entity.getLinkChatId(), dto.getFilterJson());
}
}
}
Set<Long> set = list.stream().map(dto -> dto.getChatHmId()).collect(Collectors.toSet());
......
......@@ -201,6 +201,11 @@
<artifactId>gic-member-api</artifactId>
<version>${gic-member-api}</version>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-search-engine-api</artifactId>
<version>${gic-search-engine-api}</version>
</dependency>
</dependencies>
<build>
......
package com.gic.haoban.manage.web.controller;
import java.util.Date;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.api.service.StoreService;
import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO;
import com.gic.haoban.common.utils.AuthWebRequestUtil;
import com.gic.haoban.manage.web.vo.MemberChatVO;
import com.gic.member.api.dto.MemberDTO;
import com.gic.member.api.service.MemberService;
import com.gic.search.engine.api.dto.ESResponseQueryCount;
import com.gic.search.engine.api.dto.dynamic.DynamicSearchDTO;
import com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService;
@RestController
@RequestMapping("/member")
public class MemberController {
private static final String ES_COLUMN_CATEGORY_CODE = "member";
@Autowired
private MemberService memberService;
@Autowired
private MemberService memberService ;
private StoreService storeService;
@Autowired
private ESDataDynamicOperationApiService esApiService;
@RequestMapping("member-info")
public RestResponse<Object> memberInfo(String memberId) {
MemberDTO member = this.memberService.getMember(memberId) ;
MemberChatVO vo = new MemberChatVO() ;
if(null != member) {
MemberDTO member = this.memberService.getMember(memberId);
MemberChatVO vo = new MemberChatVO();
if (null != member) {
vo.setMemberName(member.getThirdNickname());
vo.setMemberImage(member.getThirdImgUrl());
vo.setPhone(member.getPhoneNumber());
}
return RestResponse.successResult(vo) ;
return RestResponse.successResult(vo);
}
/**
* 预估人数
*/
@RequestMapping("member-count")
@ResponseBody
public RestResponse<Object> getMemberCount(String searchParams) {
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
String enterpriseId = loginUser.getEnterpriseId();
String clerkId = loginUser.getClerkId();
int count = 0;
try {
JSONObject searchJson = new JSONObject();
if (!StringUtils.isBlank(searchParams)) {
searchJson = JSON.parseObject(searchParams);
}
DynamicSearchDTO search = new DynamicSearchDTO();
searchJson = this.storeService.parseSelectData(searchJson, enterpriseId, clerkId, new Date());
search.setSearchJson(searchJson);
search.setEnterpriseId(enterpriseId);
search.setColumnCategoryCode(ES_COLUMN_CATEGORY_CODE);
ESResponseQueryCount esCount = esApiService.queryDataCount(search);
count = (int) esCount.getRes();
} catch (Exception e) {
e.printStackTrace();
}
return RestResponse.successResult(count);
}
}
......@@ -129,5 +129,6 @@
<dubbo:reference interface="com.gic.haoban.manage.api.service.role.HaobanMenuApiService" id="haobanMenuApiService"/>
<dubbo:reference interface="com.gic.haoban.manage.api.service.out.SecretSettingApiService" id="secretSettingApiService"/>
<dubbo:reference interface="com.gic.member.api.service.MemberService" id="memberService"/>
<dubbo:reference interface="com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService" id="esApiService"/>
</beans>
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