|
@@ -3,10 +3,7 @@ package com.caimei365.user.service.impl;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.caimei365.user.components.RedisService;
|
|
|
-import com.caimei365.user.mapper.BaseMapper;
|
|
|
-import com.caimei365.user.mapper.ClubMapper;
|
|
|
-import com.caimei365.user.mapper.RegisterMapper;
|
|
|
-import com.caimei365.user.mapper.SuperVipMapper;
|
|
|
+import com.caimei365.user.mapper.*;
|
|
|
import com.caimei365.user.model.ResponseJson;
|
|
|
import com.caimei365.user.model.dto.ClubUpdateDto;
|
|
|
import com.caimei365.user.model.dto.SuperVipDto;
|
|
@@ -24,8 +21,10 @@ import com.github.pagehelper.PageHelper;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.web.bind.annotation.RequestParam;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.text.SimpleDateFormat;
|
|
@@ -48,6 +47,8 @@ public class ClubServiceImpl implements ClubService {
|
|
|
@Resource
|
|
|
private ClubMapper clubMapper;
|
|
|
@Resource
|
|
|
+ private ClubReportMapper clubReportMapper;
|
|
|
+ @Resource
|
|
|
private BaseMapper baseMapper;
|
|
|
@Resource
|
|
|
private RegisterMapper registerMapper;
|
|
@@ -99,6 +100,48 @@ public class ClubServiceImpl implements ClubService {
|
|
|
return ResponseJson.success(map);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson<Map<String, Object>> recordLinkage(Integer clubId) {
|
|
|
+ // 机构信息
|
|
|
+ ClubVo club = clubMapper.recordClubage(clubId);
|
|
|
+ String saleName="";
|
|
|
+ if(!"".equals(club.getMainProduct()) && club.getMainProduct()!=null){
|
|
|
+ if (club.getMainProduct().contains("/")) {
|
|
|
+ List<String> list = Arrays.asList(club.getMainProduct().split("/"));
|
|
|
+ club.setMainProducts(list);
|
|
|
+ } else {
|
|
|
+ club.setMainProducts(Collections.singletonList(club.getMainProduct()));
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ if(club.getSpType()==1){
|
|
|
+ saleName= clubMapper.serviceProviderNameage(club.getServiceProviderId());
|
|
|
+ }
|
|
|
+
|
|
|
+ if (club == null) {
|
|
|
+ return ResponseJson.error("机构信息不存在", null);
|
|
|
+ }
|
|
|
+ if (null != club.getTownId()) {
|
|
|
+ TownVo town = baseMapper.getTown(club.getTownId());
|
|
|
+ CityVo city = baseMapper.getCity(town.getCityId());
|
|
|
+ ProvinceVo province = baseMapper.getProvince(city.getProvinceId());
|
|
|
+ club.setCityId(city.getCityId());
|
|
|
+ club.setProvinceId(province.getProvinceId());
|
|
|
+ club.setProvincialAddress(province.getName() + "" + city.getName() + "" + town.getName());
|
|
|
+ }
|
|
|
+ log.info("销售人名称"+saleName);
|
|
|
+ log.info("销售人id"+club.getServiceProviderId());
|
|
|
+ Map<String, Object> map = new HashMap(2);
|
|
|
+ map.put("club", club);
|
|
|
+ map.put("saleName",saleName);
|
|
|
+ return ResponseJson.success(map);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 修改机构资料
|
|
|
*
|
|
@@ -390,6 +433,8 @@ public class ClubServiceImpl implements ClubService {
|
|
|
Integer satisfied = jsonObject.getInteger("satisfied");
|
|
|
Integer followup = jsonObject.getInteger("followup");
|
|
|
String extra = jsonObject.getString("extra");
|
|
|
+ Integer productID = jsonObject.getInteger("productId");
|
|
|
+ Integer reportID = jsonObject.getInteger("reportId");
|
|
|
if (null == clubId) {
|
|
|
return ResponseJson.error("参数异常,机构id不能为空");
|
|
|
}
|
|
@@ -428,6 +473,8 @@ public class ClubServiceImpl implements ClubService {
|
|
|
clubRemarksPo.setSatisfied(satisfied);
|
|
|
clubRemarksPo.setFollowup(followup);
|
|
|
clubRemarksPo.setExtra(extra);
|
|
|
+ clubRemarksPo.setProductID(productID);
|
|
|
+ clubRemarksPo.setReportID(reportID);
|
|
|
if (newRemarks) {
|
|
|
// 新增备注
|
|
|
clubMapper.insertRemarks(clubRemarksPo);
|
|
@@ -466,6 +513,279 @@ public class ClubServiceImpl implements ClubService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public ResponseJson<PaginationVo<ProductItemVo>> getproductList(String keyWord,int pageNum, int pageSize){
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ List<ProductItemVo> productList=clubReportMapper.productList(keyWord);
|
|
|
+ return ResponseJson.success(new PaginationVo<>(productList));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson<PaginationVo<ReportVo>> ClubReportList(Integer serviceProviderId,Integer clubId,String keyWord, int pageNum, int pageSize) {
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ List<ReportVo>reportList=clubReportMapper.reportList(serviceProviderId,clubId,keyWord);
|
|
|
+ reportList.forEach(r ->{
|
|
|
+ r.setQuestionMan(clubReportMapper.questionManNameage(null,"",serviceProviderId));
|
|
|
+ });
|
|
|
+ return ResponseJson.success(new PaginationVo<>(reportList));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson<PaginationVo<ReportVo>> visitorReportList(String questionManId,String keyWord, int pageNum, int pageSize) {
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ List<ReportVo>reportList=clubReportMapper.visitorReportList(questionManId,keyWord);
|
|
|
+ reportList.forEach(r ->{
|
|
|
+ r.setQuestionMan(clubReportMapper.questionManNameage(null,questionManId,null));
|
|
|
+ });
|
|
|
+ return ResponseJson.success(new PaginationVo<>(reportList));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson<ReportVo> reportDetailsList(Integer reportId) {
|
|
|
+ ReportVo reportVo=clubReportMapper.reportDetailsList(reportId);
|
|
|
+ reportVo.setQuestionMan(clubReportMapper.questionManNameage(reportId,"",null));
|
|
|
+ return ResponseJson.success(reportVo);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson<ReportVo> visitorReportsList(Integer reportId) {
|
|
|
+ ReportVo reportVo=clubReportMapper.visitorReportsList(reportId);
|
|
|
+ reportVo.setQuestionMan(clubReportMapper.questionManNameage(reportId,"",null));
|
|
|
+ return ResponseJson.success(reportVo);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson saveClubReport(ReportVo reportVo) {
|
|
|
+ reportVo.setReportName(clubReportMapper.roeprtNa(reportVo.getServiceProviderId()));
|
|
|
+ reportVo.setServiceProviderId(reportVo.getServiceProviderId());
|
|
|
+ clubReportMapper.addClubReport(reportVo);
|
|
|
+ return ResponseJson.success("保存成功");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson addVisitorReport(ReportVo reportVo) {
|
|
|
+ Integer serviceProviderId= clubReportMapper.visitorMan(reportVo.getQuestionManId());
|
|
|
+ reportVo.setReportName(clubReportMapper.roeprtNa(serviceProviderId));
|
|
|
+ reportVo.setServiceProviderId(serviceProviderId);
|
|
|
+ clubReportMapper.addVisitorReport(reportVo);
|
|
|
+ return ResponseJson.success("保存成功");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson disassociation(Integer remarksId){
|
|
|
+ clubReportMapper.disassociation(remarksId);
|
|
|
+ return ResponseJson.success("取消成功");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson visitorDisassociation(Integer remarksId){
|
|
|
+ clubReportMapper.visitorDisassociation(remarksId);
|
|
|
+ return ResponseJson.success("取消成功");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson deleteReport(Integer reportId){
|
|
|
+ clubReportMapper.deleteReport(reportId);
|
|
|
+ return ResponseJson.success("删除成功");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson<PaginationVo<RemarkVo>>associated(Integer manager,Integer serviceProviderId,Integer reportId,String keyWord, String startAddTime,
|
|
|
+ String endAddTime,
|
|
|
+ String consult,
|
|
|
+ Integer leaderId,
|
|
|
+ String clubType,
|
|
|
+ Integer pinceSensitve,
|
|
|
+ Integer satisfied,
|
|
|
+ Integer followup,
|
|
|
+ String extra,
|
|
|
+ Integer groupId,Integer newDeal,Integer status, int pageNum, int pageSize) {
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ List<RemarksVo>reportList=null;
|
|
|
+ Integer teamId= clubReportMapper.reportLeaderId(serviceProviderId);
|
|
|
+ List<String> conss = new ArrayList<>();
|
|
|
+ if (StringUtils.isNotBlank(consult)) {
|
|
|
+ if (consult.contains(",")) {
|
|
|
+ conss = Arrays.asList(consult.split(","));
|
|
|
+ } else {
|
|
|
+ conss.add(consult);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (null != manager && 1 == manager) {
|
|
|
+ //主管查所有注册客户咨询记录
|
|
|
+ log.info("方法1 管理员");
|
|
|
+ List<String> finalConss = conss;
|
|
|
+ reportList = clubReportMapper.associated(teamId,serviceProviderId,reportId,keyWord,startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve,finalConss,newDeal,status);
|
|
|
+ } else if (null != teamId && teamId > 0) {
|
|
|
+ log.info("方法2 协销组长");
|
|
|
+ List<String> finalConss1 = conss;
|
|
|
+ reportList =clubReportMapper.associated(teamId,serviceProviderId,reportId,keyWord,startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve,finalConss1,newDeal,status);
|
|
|
+ } else {
|
|
|
+ log.info("方法3 协销");
|
|
|
+ List<String> finalConss2 = conss;
|
|
|
+ reportList = clubReportMapper.associated(teamId,serviceProviderId,reportId,keyWord,startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve,finalConss2,newDeal,status);
|
|
|
+ }
|
|
|
+ ArrayList<RemarkVo> remarkVos = new ArrayList<>();
|
|
|
+ RemarkVo remarkVo = new RemarkVo();
|
|
|
+ reportList.forEach(remarksVo->{
|
|
|
+ List<Map<String, String>> strings = new ArrayList<>();
|
|
|
+ String rk = null == remarksVo.getRemarks() ? "" : remarksVo.getRemarks();
|
|
|
+ if (rk.contains(",")) {
|
|
|
+ String[] split = rk.split(",");
|
|
|
+ for (String remark : split) {
|
|
|
+ HashMap<String, String> map = new HashMap<>();
|
|
|
+ map.put("label", remark);
|
|
|
+ strings.add(map);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ HashMap<String, String> map = new HashMap<>();
|
|
|
+ map.put("label", rk);
|
|
|
+ strings.add(map);
|
|
|
+ }
|
|
|
+
|
|
|
+ remarkVo.setLeaderName(remarksVo.getLeaderName());
|
|
|
+ remarkVo.setRecordName(remarksVo.getRecordName());
|
|
|
+ remarkVo.setServiceProviderId(remarksVo.getServiceProviderId());
|
|
|
+ remarkVo.setRemarks(strings);
|
|
|
+ remarkVo.setQuestionMan(remarksVo.getQuestionMan());
|
|
|
+ remarkVo.setRemarksId(remarksVo.getRemarksId());
|
|
|
+ remarkVo.setAddTime(remarksVo.getAddTime());
|
|
|
+ remarkVo.setClubName(clubMapper.findClubName(remarksVo.getClubId()));
|
|
|
+ remarkVo.setClubName(remarksVo.getClubName());
|
|
|
+ remarkVo.setConsult(remarksVo.getConsult());
|
|
|
+ remarkVo.setClubType(remarksVo.getClubType());
|
|
|
+ remarkVo.setExtra(remarksVo.getExtra());
|
|
|
+ remarkVo.setSatisfied(remarksVo.getSatisfied());
|
|
|
+ remarkVo.setPinceSensitve(remarksVo.getPinceSensitve());
|
|
|
+ remarkVo.setFollowup(remarksVo.getFollowup());
|
|
|
+ remarkVo.setStatus(remarksVo.getStatus());
|
|
|
+ remarkVo.setNewDeal(remarksVo.getNewDeal());
|
|
|
+ remarkVos.add(remarkVo);
|
|
|
+ });
|
|
|
+ PaginationVo<RemarkVo> pageVo = new PaginationVo<>(remarkVos);
|
|
|
+ if (null != remarkVos && remarkVos.size() > 0) {
|
|
|
+ pageVo.setTotalRecord(remarkVos.size());
|
|
|
+ if (remarkVos.size() > pageSize) {
|
|
|
+ pageVo.setTotalPage((int) Math.ceil(MathUtil.div(remarkVos.size(), pageSize).doubleValue()));
|
|
|
+ pageVo.setHasNextPage(true);
|
|
|
+ } else {
|
|
|
+ pageVo.setTotalPage(1);
|
|
|
+ pageVo.setHasNextPage(false);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ pageVo.setTotalPage(0);
|
|
|
+ pageVo.setHasNextPage(false);
|
|
|
+ pageVo.setTotalRecord(0);
|
|
|
+ }
|
|
|
+ return ResponseJson.success(pageVo);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson<PaginationVo<RemarkVo>>visitorAssociated(Integer manager,Integer serviceProviderId,Integer reportId,String keyWord, String startAddTime,
|
|
|
+ String endAddTime,
|
|
|
+ String consult,
|
|
|
+ Integer leaderId,
|
|
|
+ String clubType,
|
|
|
+ Integer pinceSensitve,
|
|
|
+ Integer satisfied,
|
|
|
+ Integer followup,
|
|
|
+ String extra,
|
|
|
+ Integer groupId,Integer status,int pageNum, int pageSize) {
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ List<RemarksVo>reportList=null;
|
|
|
+ Integer teamId= clubReportMapper.reportLeaderId(serviceProviderId);
|
|
|
+ List<String> conss = new ArrayList<>();
|
|
|
+ if (StringUtils.isNotBlank(consult)) {
|
|
|
+ if (consult.contains(",")) {
|
|
|
+ conss = Arrays.asList(consult.split(","));
|
|
|
+ } else {
|
|
|
+ conss.add(consult);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (null != manager && 1 == manager) {
|
|
|
+ //主管查所有注册客户咨询记录
|
|
|
+ log.info("方法1 管理员");
|
|
|
+ List<String> finalConss = conss;
|
|
|
+ reportList = clubReportMapper.visitorAssociated(teamId,serviceProviderId,reportId,keyWord,startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve,finalConss,status);
|
|
|
+ } else if (null != teamId && teamId > 0) {
|
|
|
+ log.info("方法2 协销组长");
|
|
|
+ List<String> finalConss1 = conss;
|
|
|
+ reportList = clubReportMapper.visitorAssociated(teamId,serviceProviderId,reportId,keyWord,startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve,finalConss1,status);
|
|
|
+ } else {
|
|
|
+ log.info("方法3 协销");
|
|
|
+ List<String> finalConss2 = conss;
|
|
|
+ reportList = clubReportMapper.visitorAssociated(teamId,serviceProviderId,reportId,keyWord,startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve,finalConss2,status);
|
|
|
+ }
|
|
|
+ ArrayList<RemarkVo> remarkVos = new ArrayList<>();
|
|
|
+ RemarkVo remarkVo = new RemarkVo();
|
|
|
+ reportList.forEach(remarksVo->{
|
|
|
+ List<Map<String, String>> strings = new ArrayList<>();
|
|
|
+ String rk = null == remarksVo.getRemarks() ? "" : remarksVo.getRemarks();
|
|
|
+ if (rk.contains(",")) {
|
|
|
+ String[] split = rk.split(",");
|
|
|
+ for (String remark : split) {
|
|
|
+ HashMap<String, String> map = new HashMap<>();
|
|
|
+ map.put("label", remark);
|
|
|
+ strings.add(map);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ HashMap<String, String> map = new HashMap<>();
|
|
|
+ map.put("label", rk);
|
|
|
+ strings.add(map);
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(remarksVo.getConsult())) {
|
|
|
+ if (remarksVo.getConsult().contains(",")) {
|
|
|
+ String[] split = remarksVo.getConsult().split(",");
|
|
|
+ String Cons = "";
|
|
|
+ for (String con : split) {
|
|
|
+ Cons += clubMapper.findConsultById(con).getClassName() + ",";
|
|
|
+ }
|
|
|
+ Cons = Cons.substring(0, Cons.length() - 1);
|
|
|
+ remarkVo.setConsultBack(Cons);
|
|
|
+ } else {
|
|
|
+ remarkVo.setConsultBack(clubMapper.findConsultById(remarksVo.getConsult()).getClassName());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ remarkVo.setLeaderName(remarksVo.getLeaderName());
|
|
|
+ remarkVo.setRecordName(remarksVo.getRecordName());
|
|
|
+ remarkVo.setServiceProviderId(remarksVo.getServiceProviderId());
|
|
|
+ remarkVo.setRemarks(strings);
|
|
|
+ remarkVo.setQuestionMan(remarksVo.getQuestionMan());
|
|
|
+ remarkVo.setRemarksId(remarksVo.getRemarksId());
|
|
|
+ remarkVo.setAddTime(remarksVo.getAddTime());
|
|
|
+ remarkVo.setClubName(clubMapper.findClubName(remarksVo.getClubId()));
|
|
|
+ remarkVo.setClubName(remarksVo.getClubName());
|
|
|
+ remarkVo.setConsult(remarksVo.getConsult());
|
|
|
+ remarkVo.setClubType(remarksVo.getClubType());
|
|
|
+ remarkVo.setExtra(remarksVo.getExtra());
|
|
|
+ remarkVo.setSatisfied(remarksVo.getSatisfied());
|
|
|
+ remarkVo.setPinceSensitve(remarksVo.getPinceSensitve());
|
|
|
+ remarkVo.setFollowup(remarksVo.getFollowup());
|
|
|
+ remarkVo.setStatus(remarksVo.getStatus());
|
|
|
+ remarkVo.setNewDeal(remarksVo.getNewDeal());
|
|
|
+ remarkVos.add(remarkVo);
|
|
|
+ });
|
|
|
+ PaginationVo<RemarkVo> pageVo = new PaginationVo<>(remarkVos);
|
|
|
+ if (null != remarkVos && remarkVos.size() > 0) {
|
|
|
+ pageVo.setTotalRecord(remarkVos.size());
|
|
|
+ if (remarkVos.size() > pageSize) {
|
|
|
+ pageVo.setTotalPage((int) Math.ceil(MathUtil.div(remarkVos.size(), pageSize).doubleValue()));
|
|
|
+ pageVo.setHasNextPage(true);
|
|
|
+ } else {
|
|
|
+ pageVo.setTotalPage(1);
|
|
|
+ pageVo.setHasNextPage(false);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ pageVo.setTotalPage(0);
|
|
|
+ pageVo.setHasNextPage(false);
|
|
|
+ pageVo.setTotalRecord(0);
|
|
|
+ }
|
|
|
+ return ResponseJson.success(pageVo);
|
|
|
+// return ResponseJson.success(new PaginationVo<>(reportList));
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public ResponseJson<PaginationVo<RemarkVo>> getRemarksList(Integer serviceProviderId,
|
|
|
String keyWord,
|
|
@@ -479,11 +799,12 @@ public class ClubServiceImpl implements ClubService {
|
|
|
Integer satisfied,
|
|
|
Integer followup,
|
|
|
String extra,
|
|
|
- Integer groupId,
|
|
|
+ Integer groupId,Integer status,Integer newDeal,
|
|
|
int pageNum, int pageSize) {
|
|
|
if (null == serviceProviderId) {
|
|
|
return ResponseJson.error("参数异常,协销id不能为空", null);
|
|
|
}
|
|
|
+// List<RemarksVo> pageInfo = null;
|
|
|
PageInfo<RemarksVo> pageInfo = null;
|
|
|
Integer findLeader = clubMapper.findLeaderId(serviceProviderId);
|
|
|
List<String> conss = new ArrayList<>();
|
|
@@ -494,20 +815,40 @@ public class ClubServiceImpl implements ClubService {
|
|
|
conss.add(consult);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
if (null != manager && 1 == manager) {
|
|
|
//主管查所有注册客户咨询记录
|
|
|
- log.info("方法1 所有");
|
|
|
+ log.info("方法1 管理员");
|
|
|
List<String> finalConss = conss;
|
|
|
- pageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.findAllRemarks(keyWord, startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve, finalConss));
|
|
|
+ pageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.findAllRemarks(keyWord, startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve, finalConss,status,newDeal));
|
|
|
} else if (null != findLeader && findLeader > 0) {
|
|
|
- log.info("方法2 小组");
|
|
|
+ log.info("方法2 协销组长");
|
|
|
List<String> finalConss1 = conss;
|
|
|
- pageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.findAllRemarks(keyWord, startAddTime, endAddTime, serviceProviderId, groupId, followup, satisfied, pinceSensitve, finalConss1));
|
|
|
+ pageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.findAllRemarks(keyWord, startAddTime, endAddTime, serviceProviderId, groupId, followup, satisfied, pinceSensitve, finalConss1,status,newDeal));
|
|
|
} else {
|
|
|
log.info("方法3 协销");
|
|
|
List<String> finalConss2 = conss;
|
|
|
- pageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.getRemarksListByKey(keyWord, serviceProviderId, startAddTime, endAddTime, pinceSensitve, leaderId, groupId, followup, satisfied, finalConss2));
|
|
|
+ pageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.getRemarksListByKey(keyWord, serviceProviderId, startAddTime, endAddTime, pinceSensitve, leaderId, groupId, followup, satisfied, finalConss2,status,newDeal));
|
|
|
}
|
|
|
+
|
|
|
+// if (null != manager && 1 == manager) {
|
|
|
+// //主管查所有注册客户咨询记录
|
|
|
+// log.info("方法1 管理员");
|
|
|
+// List<String> finalConss = conss;
|
|
|
+// PageHelper.startPage(pageNum, pageSize);
|
|
|
+// pageInfo = clubMapper.findAllRemarks(keyWord, startAddTime, endAddTime, leaderId, groupId, followup, satisfied, pinceSensitve, finalConss,status,newDeal);
|
|
|
+// } else if (null != findLeader && findLeader > 0) {
|
|
|
+// log.info("方法2 协销组长");
|
|
|
+// PageHelper.startPage(pageNum, pageSize);
|
|
|
+// List<String> finalConss1 = conss;
|
|
|
+// pageInfo = clubMapper.findAllRemarks(keyWord, startAddTime, endAddTime, serviceProviderId, groupId, followup, satisfied, pinceSensitve, finalConss1,status,newDeal);
|
|
|
+// } else {
|
|
|
+// log.info("方法3 协销");
|
|
|
+// PageHelper.startPage(pageNum, pageSize);
|
|
|
+// List<String> finalConss2 = conss;
|
|
|
+// pageInfo = clubMapper.getRemarksListByKey(keyWord, serviceProviderId, startAddTime, endAddTime, pinceSensitve, leaderId, groupId, followup, satisfied, finalConss2,status,newDeal);
|
|
|
+// }
|
|
|
+
|
|
|
ArrayList<RemarkVo> remarkVos = new ArrayList<>();
|
|
|
pageInfo.getList().forEach(r -> {
|
|
|
RemarkVo remarkVo = new RemarkVo();
|
|
@@ -562,13 +903,17 @@ public class ClubServiceImpl implements ClubService {
|
|
|
remarkVo.setPinceSensitve(r.getPinceSensitve());
|
|
|
remarkVo.setFollowup(r.getFollowup());
|
|
|
// remarkVo.setOldName(r.getOldName());
|
|
|
+ remarkVo.setStatus(r.getStatus());
|
|
|
+ remarkVo.setNewDeal(r.getNewDeal());
|
|
|
remarkVos.add(remarkVo);
|
|
|
});
|
|
|
+
|
|
|
PaginationVo<RemarkVo> pageVo = new PaginationVo<>(remarkVos);
|
|
|
if (null != remarkVos && remarkVos.size() > 0) {
|
|
|
- pageVo.setTotalRecord(remarkVos.size());
|
|
|
- if (remarkVos.size() > pageSize) {
|
|
|
- pageVo.setTotalPage((int) Math.ceil(MathUtil.div(remarkVos.size(), pageSize).doubleValue()));
|
|
|
+ pageVo.setTotalRecord((int)pageInfo.getTotal());
|
|
|
+ if (pageInfo.getSize() >= pageSize) {
|
|
|
+ pageVo.setTotalPage((int) Math.ceil(MathUtil.div(pageInfo.getTotal(), pageSize).doubleValue()));
|
|
|
+ log.info(">>>>>>>>>>>>>>>>>>>>"+MathUtil.div(pageInfo.getTotal(), pageSize).doubleValue());
|
|
|
pageVo.setHasNextPage(true);
|
|
|
} else {
|
|
|
pageVo.setTotalPage(1);
|
|
@@ -579,7 +924,7 @@ public class ClubServiceImpl implements ClubService {
|
|
|
pageVo.setHasNextPage(false);
|
|
|
pageVo.setTotalRecord(0);
|
|
|
}
|
|
|
- return ResponseJson.success(pageVo);
|
|
|
+ return ResponseJson.success(pageVo);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -592,6 +937,7 @@ public class ClubServiceImpl implements ClubService {
|
|
|
List<RemarksFileVo> fileList = clubMapper.getRemarksFileList(remarksId);
|
|
|
fileList.forEach(file -> file.setFileUrl(OssUtil.getOssUrl(file.getOssName())));
|
|
|
List<Map<String, String>> strings = new ArrayList<>();
|
|
|
+ if(remarksVo!=null){
|
|
|
String rk = null == remarksVo.getRemarks() ? "" : remarksVo.getRemarks();
|
|
|
if (rk.contains(",")) {
|
|
|
String[] split = rk.split(",");
|
|
@@ -605,6 +951,7 @@ public class ClubServiceImpl implements ClubService {
|
|
|
map.put("label", rk);
|
|
|
strings.add(map);
|
|
|
}
|
|
|
+
|
|
|
RemarkVo remarkVo = new RemarkVo();
|
|
|
remarkVo.setClubId(remarksVo.getClubId());
|
|
|
remarkVo.setUserId(remarksVo.getUserId());
|
|
@@ -620,6 +967,15 @@ public class ClubServiceImpl implements ClubService {
|
|
|
remarkVo.setSatisfied(remarksVo.getSatisfied());
|
|
|
remarkVo.setFollowup(remarksVo.getFollowup());
|
|
|
remarkVo.setExtra(remarksVo.getExtra());
|
|
|
+ remarkVo.setMainImage(remarksVo.getMainImage());
|
|
|
+ remarkVo.setReportText(remarksVo.getReportText());
|
|
|
+ remarkVo.setProductName(remarksVo.getProductName());
|
|
|
+ remarkVo.setShopName(remarksVo.getShopName());
|
|
|
+ remarkVo.setStatus(remarksVo.getStatus());
|
|
|
+ remarkVo.setAuditText(remarksVo.getAuditText());
|
|
|
+ remarkVo.setNewDeal(remarksVo.getNewDeal());
|
|
|
+ remarkVo.setProductId(remarksVo.getProductId());
|
|
|
+ remarkVo.setReportId(remarksVo.getReportId());
|
|
|
if (StringUtils.isNotBlank(remarksVo.getConsult())) {
|
|
|
if (remarkVo.getConsult().contains(",")) {
|
|
|
List<String> cons = Arrays.asList(remarkVo.getConsult().split(","));
|
|
@@ -634,8 +990,57 @@ public class ClubServiceImpl implements ClubService {
|
|
|
}
|
|
|
}
|
|
|
return ResponseJson.success(remarkVo);
|
|
|
+ }
|
|
|
+ return ResponseJson.error("remarksVo为空remarksId:"+remarksId);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public ResponseJson<PaginationVo<ReportVo>> visitorReportRemarks(Integer manager,Integer serviceProviderId,String keyWord,int pageNum, int pageSize){
|
|
|
+ Integer teamId= clubReportMapper.reportLeaderId(serviceProviderId);
|
|
|
+ List<ReportVo> pageInfo = null;
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ if (null != manager && 1 == manager) {
|
|
|
+ //主管查所有注册客户咨询记录
|
|
|
+ log.info("方法1 管理员");
|
|
|
+ pageInfo = clubReportMapper.visitoReportRemark(teamId,serviceProviderId,keyWord);
|
|
|
+ } else if (null != teamId && teamId > 0) {
|
|
|
+ log.info("方法2 协销组长");
|
|
|
+
|
|
|
+ pageInfo = clubReportMapper.visitorReportRemarks(teamId,serviceProviderId,keyWord);
|
|
|
+ } else {
|
|
|
+ log.info("方法3 协销");
|
|
|
+ pageInfo = clubReportMapper.visitorReportRemarks(teamId,serviceProviderId,keyWord);
|
|
|
+ }
|
|
|
+ pageInfo.forEach(r ->{
|
|
|
+ r.setQuestionMan(clubReportMapper.questionManNameage(r.getReportId(),"",null));
|
|
|
+ });
|
|
|
+ return ResponseJson.success(new PaginationVo<>(pageInfo));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseJson<PaginationVo<ReportVo>> reportRemarks(Integer manager,Integer serviceProviderId,String keyWord,int pageNum, int pageSize){
|
|
|
+ Integer teamId= clubReportMapper.reportLeaderId(serviceProviderId);
|
|
|
+ List<ReportVo> pageInfo = null;
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ if (null != manager && 1 == manager) {
|
|
|
+ //主管查所有注册客户咨询记录
|
|
|
+ log.info("方法1 管理员");
|
|
|
+ pageInfo = clubReportMapper.repotRemark(teamId,null,keyWord,manager);
|
|
|
+ } else if (null != teamId && teamId > 0) {
|
|
|
+ log.info("方法2 协销组长");
|
|
|
+
|
|
|
+ pageInfo = clubReportMapper.reportRemarks(teamId,serviceProviderId,keyWord,manager);
|
|
|
+ } else {
|
|
|
+ log.info("方法3 协销");
|
|
|
+ pageInfo = clubReportMapper.reportRemarks(teamId,serviceProviderId,keyWord,manager);
|
|
|
+ }
|
|
|
+ return ResponseJson.success(new PaginationVo<>(pageInfo));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
@Override
|
|
|
public ResponseJson deleteClubRemarks(Integer remarksId) {
|
|
|
if (null == remarksId) {
|
|
@@ -846,6 +1251,8 @@ public class ClubServiceImpl implements ClubService {
|
|
|
Integer satisfied = jsonObject.getInteger("satisfied");
|
|
|
Integer followup = jsonObject.getInteger("followup");
|
|
|
String extra = jsonObject.getString("extra");
|
|
|
+ Integer productID = jsonObject.getInteger("productId");
|
|
|
+ Integer reportID = jsonObject.getInteger("reportId");
|
|
|
|
|
|
if (null == questionManId) {
|
|
|
return ResponseJson.error("参数异常,咨询人id不能为空");
|
|
@@ -888,6 +1295,8 @@ public class ClubServiceImpl implements ClubService {
|
|
|
visitorRemarkVo.setSatisfied(satisfied);
|
|
|
visitorRemarkVo.setFollowup(followup);
|
|
|
visitorRemarkVo.setExtra(extra);
|
|
|
+ visitorRemarkVo.setReportId(reportID);
|
|
|
+ visitorRemarkVo.setProductId(productID);
|
|
|
if (newRemarks) {
|
|
|
// 新增备注
|
|
|
clubMapper.insertVisitorRemark(visitorRemarkVo);
|
|
@@ -936,6 +1345,7 @@ public class ClubServiceImpl implements ClubService {
|
|
|
List<RemarksFileVo> fileList = clubMapper.getVisitRemarksFileList(remarksId);
|
|
|
fileList.forEach(file -> file.setFileUrl(OssUtil.getOssUrl(file.getOssName())));
|
|
|
List<Map<String, String>> strings = new ArrayList<>();
|
|
|
+ if(visitRemarksVo!=null){
|
|
|
String rk = null == visitRemarksVo.getRemarks() ? "" : visitRemarksVo.getRemarks();
|
|
|
if (rk.contains(",")) {
|
|
|
String[] split = rk.split(",");
|
|
@@ -949,6 +1359,7 @@ public class ClubServiceImpl implements ClubService {
|
|
|
map.put("label", rk);
|
|
|
strings.add(map);
|
|
|
}
|
|
|
+
|
|
|
VisitRemarkVo visit = new VisitRemarkVo();
|
|
|
visit.setConsult(visitRemarksVo.getConsult());
|
|
|
visit.setQuestionMan(visitRemarksVo.getQuestionMan());
|
|
@@ -964,6 +1375,15 @@ public class ClubServiceImpl implements ClubService {
|
|
|
visit.setPinceSensitve(visitRemarksVo.getPinceSensitve());
|
|
|
visit.setExtra(visitRemarksVo.getExtra());
|
|
|
|
|
|
+ visit.setMainImage(visitRemarksVo.getMainImage());
|
|
|
+ visit.setReportText(visitRemarksVo.getReportText());
|
|
|
+ visit.setProductName(visitRemarksVo.getProductName());
|
|
|
+ visit.setShopName(visitRemarksVo.getShopName());
|
|
|
+ visit.setStatus(visitRemarksVo.getStatus());
|
|
|
+ visit.setAuditText(visitRemarksVo.getAuditText());
|
|
|
+ visit.setProductId(visitRemarksVo.getProductId());
|
|
|
+ visit.setReportId(visitRemarksVo.getReportId());
|
|
|
+
|
|
|
if (StringUtils.isNotBlank(visitRemarksVo.getConsult())) {
|
|
|
if (visitRemarksVo.getConsult().contains(",")) {
|
|
|
List<String> cons = Arrays.asList(visitRemarksVo.getConsult().split(","));
|
|
@@ -978,10 +1398,12 @@ public class ClubServiceImpl implements ClubService {
|
|
|
}
|
|
|
}
|
|
|
return ResponseJson.success(visit);
|
|
|
+ }
|
|
|
+ return ResponseJson.error("visitRemarksVo为空remarksId:"+remarksId);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public ResponseJson<PaginationVo<VisitRemarkVo>> getVisitorRecordList(String questionManId, String keyWord, Integer serviceProviderId, String startAddTime, String endAddTime, String consult, Integer leaderId, Integer groupId, Integer manager, String clubType, Integer pinceSensitve, Integer satisfied, Integer followup, String extra, int pageNum, int pageSize) {
|
|
|
+ public ResponseJson<PaginationVo<VisitRemarkVo>> getVisitorRecordList(String questionManId, String keyWord, Integer serviceProviderId, String startAddTime, String endAddTime, String consult, Integer leaderId, Integer groupId, Integer manager, String clubType, Integer pinceSensitve, Integer satisfied, Integer followup, String extra,Integer status, int pageNum, int pageSize) {
|
|
|
PageInfo<VisitorRemarkVo> remarksList = null;
|
|
|
List<String> conss = new ArrayList<>();
|
|
|
if (StringUtils.isNotBlank(consult)) {
|
|
@@ -995,13 +1417,13 @@ public class ClubServiceImpl implements ClubService {
|
|
|
if (null != manager && 1 == manager) {
|
|
|
//主管查所有注册客户咨询记录
|
|
|
List<String> finalConss = conss;
|
|
|
- remarksList = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.getAllVisitRemark(keyWord, startAddTime, endAddTime, leaderId, groupId, pinceSensitve, satisfied, followup, finalConss));
|
|
|
+ remarksList = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.getAllVisitRemark(keyWord, startAddTime, endAddTime, leaderId, groupId, pinceSensitve, satisfied, followup, finalConss,status));
|
|
|
} else if (null != findLeader && findLeader > 0) {
|
|
|
List<String> finalConss1 = conss;
|
|
|
- remarksList = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.getAllVisitRemark(keyWord, startAddTime, endAddTime, leaderId, groupId, pinceSensitve, satisfied, followup, finalConss1));
|
|
|
+ remarksList = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.getAllVisitRemark(keyWord, startAddTime, endAddTime, leaderId, groupId, pinceSensitve, satisfied, followup, finalConss1,status));
|
|
|
} else {
|
|
|
List<String> finalConss2 = conss;
|
|
|
- remarksList = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.getVisitorListByKey(serviceProviderId, keyWord, startAddTime, endAddTime, pinceSensitve, satisfied, followup, finalConss2));
|
|
|
+ remarksList = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> clubMapper.getVisitorListByKey(serviceProviderId, keyWord, startAddTime, endAddTime, pinceSensitve, satisfied, followup, finalConss2,status));
|
|
|
}
|
|
|
ArrayList<VisitRemarkVo> remarkVos = new ArrayList<>();
|
|
|
remarksList.getList().forEach(r -> {
|
|
@@ -1059,6 +1481,7 @@ public class ClubServiceImpl implements ClubService {
|
|
|
visit.setSatisfied(r.getSatisfied());
|
|
|
visit.setFollowup(r.getFollowup());
|
|
|
visit.setExtra(r.getExtra());
|
|
|
+ visit.setStatus(r.getStatus());
|
|
|
remarkVos.add(visit);
|
|
|
});
|
|
|
PaginationVo<VisitRemarkVo> pageVo = new PaginationVo<>(remarkVos);
|
|
@@ -1105,6 +1528,7 @@ public class ClubServiceImpl implements ClubService {
|
|
|
}
|
|
|
//根据咨询人查cm_visitor_remarks赋值clubid,concactTime
|
|
|
clubMapper.updateVisit(questionManId, clubId);
|
|
|
+ clubMapper.updateReport(questionManId,clubId);
|
|
|
//cm_visitor_remarks搬运到cm_club_remarks,cm_visitor_remarks_file搬运到cm_club_remarks_file
|
|
|
List<VisitorRemarkVo> visits = clubMapper.findConcactVisit(questionManId);
|
|
|
visits.forEach(v -> {
|
|
@@ -1123,6 +1547,9 @@ public class ClubServiceImpl implements ClubService {
|
|
|
remarksVo.setFollowup(v.getFollowup());
|
|
|
remarksVo.setExtra(v.getExtra());
|
|
|
remarksVo.setClubType(v.getClubType());
|
|
|
+ remarksVo.setStatus(v.getStatus());
|
|
|
+ remarksVo.setProductId(v.getProductId());
|
|
|
+ remarksVo.setReportId(v.getReportId());
|
|
|
clubMapper.concactVisit(remarksVo);
|
|
|
if (null != imageList && imageList.size() > 0) {
|
|
|
imageList.forEach(i -> clubMapper.insertRemarksImage(remarksVo.getRemarksId(), i));
|
|
@@ -1172,4 +1599,7 @@ public class ClubServiceImpl implements ClubService {
|
|
|
List<CmRemarksVo> remarklist = clubMapper.getCmRemarksList(remarks);
|
|
|
return ResponseJson.success(remarklist);
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|