Commit 90f12efc by 徐高华

朋友圈

parent ee5f8a18
...@@ -2,6 +2,7 @@ package com.gic.haoban.manage.web.controller.moment; ...@@ -2,6 +2,7 @@ package com.gic.haoban.manage.web.controller.moment;
import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DatePattern;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.BasePageInfo; import com.gic.api.base.commons.BasePageInfo;
import com.gic.api.base.commons.JSONResponse; import com.gic.api.base.commons.JSONResponse;
...@@ -37,7 +38,13 @@ import com.gic.log.record.anno.GicLogRecord; ...@@ -37,7 +38,13 @@ import com.gic.log.record.anno.GicLogRecord;
import com.gic.log.record.util.GicLogRecordCategoryEnum; import com.gic.log.record.util.GicLogRecordCategoryEnum;
import com.gic.log.record.util.GicLogRecordEvaluationContext; import com.gic.log.record.util.GicLogRecordEvaluationContext;
import com.gic.log.record.util.GicLogRecordOptTypeEnum; import com.gic.log.record.util.GicLogRecordOptTypeEnum;
import com.gic.member.api.dto.es.MemberDataDTO;
import com.gic.qcloud.BucketNameEnum; import com.gic.qcloud.BucketNameEnum;
import com.gic.search.engine.api.constant.OperateEnum;
import com.gic.search.engine.api.dto.ESResponseQueryBatch;
import com.gic.search.engine.api.dto.dynamic.DynamicSearchDTO;
import com.gic.search.engine.api.filter.NewNodeAddUtil;
import com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService;
import com.gic.web.common.download.DownloadTask; import com.gic.web.common.download.DownloadTask;
import com.gic.web.common.download.DownloadTaskUtil; import com.gic.web.common.download.DownloadTaskUtil;
import com.gic.web.common.download.constants.TaskTypeEnum; import com.gic.web.common.download.constants.TaskTypeEnum;
...@@ -54,10 +61,7 @@ import org.springframework.web.bind.annotation.ResponseBody; ...@@ -54,10 +61,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.*;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
...@@ -79,6 +83,8 @@ public class QwMomentController { ...@@ -79,6 +83,8 @@ public class QwMomentController {
private MomentDataExcelHandler momentDataExcelHandler ; private MomentDataExcelHandler momentDataExcelHandler ;
@Autowired @Autowired
private StoreService storeService ; private StoreService storeService ;
@Autowired
private ESDataDynamicOperationApiService esDataDynamicOperationApiService ;
/** /**
* 新建任务 * 新建任务
...@@ -380,6 +386,7 @@ public class QwMomentController { ...@@ -380,6 +386,7 @@ public class QwMomentController {
*/ */
@RequestMapping("data-list") @RequestMapping("data-list")
public RestResponse<Page<QwMomentPlanDataVO>> dataList(@RequestBody PlanDataListQO qo) { public RestResponse<Page<QwMomentPlanDataVO>> dataList(@RequestBody PlanDataListQO qo) {
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
PlanDataListQDTO qdto = EntityUtil.changeEntityByJSON(PlanDataListQDTO.class,qo) ; PlanDataListQDTO qdto = EntityUtil.changeEntityByJSON(PlanDataListQDTO.class,qo) ;
ServiceResponse<Page<QwMomentPlanDataDTO>> resp = this.qwMomentApiService.dataList(qdto) ; ServiceResponse<Page<QwMomentPlanDataDTO>> resp = this.qwMomentApiService.dataList(qdto) ;
Page<QwMomentPlanDataVO> retPage = PageHelperUtils.changePageToCurrentPage(resp.getResult(), QwMomentPlanDataVO.class); Page<QwMomentPlanDataVO> retPage = PageHelperUtils.changePageToCurrentPage(resp.getResult(), QwMomentPlanDataVO.class);
...@@ -394,6 +401,22 @@ public class QwMomentController { ...@@ -394,6 +401,22 @@ public class QwMomentController {
vo.setStoreCode(store.getStoreCode()); vo.setStoreCode(store.getStoreCode());
} }
} }
List<String> memberIdList = list.stream().map(o->o.getMemberId()).collect(Collectors.toList());
Map<String,MemberDataDTO> map = this.getMemberMap(loginUser.getEnterpriseId(),memberIdList) ;
for (QwMomentPlanDataVO vo : list) {
String memberId = vo.getMemberId() ;
if(null == map.get(memberId)) {
vo.setMemberScene(2);
}else {
MemberDataDTO data = map.get(memberId) ;
vo.setMemberName(data.getName());
vo.setMemberNick(data.getNickName());
vo.setMemberCard(data.getCardNo());
vo.setMemberImage(data.getDefineHeadImg());
vo.setMemberPhone(data.getPhoneNumber());
vo.setMemberScene(3);
}
}
} }
return RestResponse.successResult(retPage); return RestResponse.successResult(retPage);
} }
...@@ -563,4 +586,38 @@ public class QwMomentController { ...@@ -563,4 +586,38 @@ public class QwMomentController {
return RestResponse.successResult(reportId); return RestResponse.successResult(reportId);
} }
public Map<String,MemberDataDTO> getMemberMap(String enterpriseId, List<String> memberIdList) {
String returnFields = "memberId,mainStoreId,mainClerkId,openStoreId,openClerkId,name,nickName,phoneNumber,photoUrl,cardNo";
List<JSONObject> esList = this.queryDataBatch(enterpriseId, memberIdList, returnFields);
if(CollectionUtils.isEmpty(esList)) {
logger.info("会员查询无");
return null ;
}
logger.info("会员信息={}",JSONObject.toJSONString(esList));
List<MemberDataDTO> list = JSONArray.parseArray(JSONArray.toJSONString(esList),MemberDataDTO.class);
Map<String,MemberDataDTO> map = list.stream().collect(Collectors.toMap(o->o.getMemberId(),o->o,(k1,k2)->k1));
if(null == map) {
map = new HashMap<>() ;
}
return map;
}
public List<JSONObject> queryDataBatch(String enterpriseId, List<String> memberIdList, String returnFields) {
DynamicSearchDTO search = new DynamicSearchDTO();
search.setEnterpriseId(enterpriseId);
search.setColumnCategoryCode("member");
String memberIds = String.join(" ", memberIdList);
JSONObject searchObj = new JSONObject();
searchObj = NewNodeAddUtil.addNewNodeForAnd("memberId", OperateEnum.OPERATE_CONTAIN.getValue(), memberIds,
searchObj);
search.setSearchJson(searchObj);
search.setReturnFileds(returnFields);
search.setSortJson(NewNodeAddUtil.createSortNode("memberId", NewNodeAddUtil.SORT_RULE_ASC));
search.setBegin(0);
search.setRecordNumber(memberIdList.size());
ESResponseQueryBatch response = this.esDataDynamicOperationApiService.queryDataBatch(search, Boolean.FALSE,
null);
return response.getRes();
}
} }
...@@ -24,6 +24,7 @@ import com.gic.haoban.manage.web.vo.moment.PlanClerkListVO; ...@@ -24,6 +24,7 @@ import com.gic.haoban.manage.web.vo.moment.PlanClerkListVO;
import com.gic.haoban.manage.web.vo.moment.PlanListVO; import com.gic.haoban.manage.web.vo.moment.PlanListVO;
import com.gic.haoban.manage.web.vo.moment.TaskDetailVO; import com.gic.haoban.manage.web.vo.moment.TaskDetailVO;
import com.gic.haoban.manage.web.vo.moment.TaskMaterialVO; import com.gic.haoban.manage.web.vo.moment.TaskMaterialVO;
import com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService;
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;
...@@ -147,4 +148,5 @@ public class QwMomentController { ...@@ -147,4 +148,5 @@ public class QwMomentController {
this.qwMomentApiService.finishTask(qdto) ; this.qwMomentApiService.finishTask(qdto) ;
return RestResponse.successResult(); return RestResponse.successResult();
} }
} }
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