|
@@ -3,10 +3,7 @@ package com.caimei365.user.service.impl;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.caimei365.user.components.RedisService;
|
|
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.ResponseJson;
|
|
import com.caimei365.user.model.dto.ClubUpdateDto;
|
|
import com.caimei365.user.model.dto.ClubUpdateDto;
|
|
import com.caimei365.user.model.dto.SuperVipDto;
|
|
import com.caimei365.user.model.dto.SuperVipDto;
|
|
@@ -17,6 +14,7 @@ import com.caimei365.user.model.po.UserBeansHistoryPo;
|
|
import com.caimei365.user.model.po.UserPo;
|
|
import com.caimei365.user.model.po.UserPo;
|
|
import com.caimei365.user.model.vo.*;
|
|
import com.caimei365.user.model.vo.*;
|
|
import com.caimei365.user.service.ClubService;
|
|
import com.caimei365.user.service.ClubService;
|
|
|
|
+import com.caimei365.user.service.SellerService;
|
|
import com.caimei365.user.utils.ImageUtils;
|
|
import com.caimei365.user.utils.ImageUtils;
|
|
import com.caimei365.user.utils.MathUtil;
|
|
import com.caimei365.user.utils.MathUtil;
|
|
import com.caimei365.user.utils.OssUtil;
|
|
import com.caimei365.user.utils.OssUtil;
|
|
@@ -24,8 +22,10 @@ import com.github.pagehelper.PageHelper;
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.github.pagehelper.PageInfo;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
+import org.springframework.web.bind.annotation.RequestParam;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
@@ -48,6 +48,8 @@ public class ClubServiceImpl implements ClubService {
|
|
@Resource
|
|
@Resource
|
|
private ClubMapper clubMapper;
|
|
private ClubMapper clubMapper;
|
|
@Resource
|
|
@Resource
|
|
|
|
+ private ClubReportMapper clubReportMapper;
|
|
|
|
+ @Resource
|
|
private BaseMapper baseMapper;
|
|
private BaseMapper baseMapper;
|
|
@Resource
|
|
@Resource
|
|
private RegisterMapper registerMapper;
|
|
private RegisterMapper registerMapper;
|
|
@@ -55,6 +57,10 @@ public class ClubServiceImpl implements ClubService {
|
|
private SuperVipMapper vipMapper;
|
|
private SuperVipMapper vipMapper;
|
|
@Resource
|
|
@Resource
|
|
private RedisService redisService;
|
|
private RedisService redisService;
|
|
|
|
+ @Resource
|
|
|
|
+ private SellerService sellerService;
|
|
|
|
+ @Resource
|
|
|
|
+ private AsyncService asyncService;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 根据用户Id查询机构资料
|
|
* 根据用户Id查询机构资料
|
|
@@ -99,6 +105,45 @@ public class ClubServiceImpl implements ClubService {
|
|
return ResponseJson.success(map);
|
|
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,14 +435,17 @@ public class ClubServiceImpl implements ClubService {
|
|
Integer satisfied = jsonObject.getInteger("satisfied");
|
|
Integer satisfied = jsonObject.getInteger("satisfied");
|
|
Integer followup = jsonObject.getInteger("followup");
|
|
Integer followup = jsonObject.getInteger("followup");
|
|
String extra = jsonObject.getString("extra");
|
|
String extra = jsonObject.getString("extra");
|
|
|
|
+ Integer productID = jsonObject.getInteger("productId");
|
|
|
|
+ Integer reportID = jsonObject.getInteger("reportId");
|
|
if (null == clubId) {
|
|
if (null == clubId) {
|
|
return ResponseJson.error("参数异常,机构id不能为空");
|
|
return ResponseJson.error("参数异常,机构id不能为空");
|
|
}
|
|
}
|
|
if (null == serviceProviderId) {
|
|
if (null == serviceProviderId) {
|
|
return ResponseJson.error("参数异常,协销id不能为空");
|
|
return ResponseJson.error("参数异常,协销id不能为空");
|
|
}
|
|
}
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+ List<ClubRemarksPo> remarksPos = clubMapper.findNewRemark(clubId, serviceProviderId);
|
|
|
|
+ //没有记录本次插入给组长推送消息,否则不推
|
|
|
|
+ boolean pushMessage = null == remarksPos || remarksPos.size() <= 0;
|
|
log.info("【保存机构资料备注解析关键词1】:", remarks);
|
|
log.info("【保存机构资料备注解析关键词1】:", remarks);
|
|
|
|
|
|
boolean newRemarks = null == remarksId;
|
|
boolean newRemarks = null == remarksId;
|
|
@@ -428,6 +476,8 @@ public class ClubServiceImpl implements ClubService {
|
|
clubRemarksPo.setSatisfied(satisfied);
|
|
clubRemarksPo.setSatisfied(satisfied);
|
|
clubRemarksPo.setFollowup(followup);
|
|
clubRemarksPo.setFollowup(followup);
|
|
clubRemarksPo.setExtra(extra);
|
|
clubRemarksPo.setExtra(extra);
|
|
|
|
+ clubRemarksPo.setProductID(productID);
|
|
|
|
+ clubRemarksPo.setReportID(reportID);
|
|
if (newRemarks) {
|
|
if (newRemarks) {
|
|
// 新增备注
|
|
// 新增备注
|
|
clubMapper.insertRemarks(clubRemarksPo);
|
|
clubMapper.insertRemarks(clubRemarksPo);
|
|
@@ -458,6 +508,10 @@ public class ClubServiceImpl implements ClubService {
|
|
clubMapper.insertRemarksFile(remarksId, fileName, ossName);
|
|
clubMapper.insertRemarksFile(remarksId, fileName, ossName);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ //新分配的机构并且是第一条记录
|
|
|
|
+ if (newRemarks && pushMessage) {
|
|
|
|
+ asyncService.sendChoseServiceMessage(2, clubId, serviceProviderId, clubRemarksPo.getRemarksId());
|
|
|
|
+ }
|
|
return ResponseJson.success("保存资料备注成功");
|
|
return ResponseJson.success("保存资料备注成功");
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
log.info("保存机构资料备注参数:" + jsonParamsDto.toString());
|
|
log.info("保存机构资料备注参数:" + jsonParamsDto.toString());
|
|
@@ -466,6 +520,312 @@ 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<List<ServiceProviderVo>> choseSales(Integer spId) {
|
|
|
|
+ return sellerService.getServiceTeam(spId, 2);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public ResponseJson changeSales(Integer clubId, Integer spId, Integer choseServiceId) {
|
|
|
|
+ //创建审核记录
|
|
|
|
+ Integer oldSpId = clubMapper.findOldSpId(clubId);
|
|
|
|
+ ClubChangeSpVo clubChangeSpVo = new ClubChangeSpVo();
|
|
|
|
+ clubChangeSpVo.setClubID(clubId);
|
|
|
|
+ clubChangeSpVo.setApplyTime(new Date());
|
|
|
|
+ clubChangeSpVo.setCheckTime(new Date());
|
|
|
|
+ clubChangeSpVo.setCheckStatus("1");
|
|
|
|
+ clubChangeSpVo.setNewSpID(spId);
|
|
|
|
+ clubChangeSpVo.setOldSpID(oldSpId);
|
|
|
|
+ clubChangeSpVo.setChoseServiceId(choseServiceId);
|
|
|
|
+ clubMapper.insertChangeRecord(clubChangeSpVo);
|
|
|
|
+ //更换club表协销Id
|
|
|
|
+ clubMapper.updateClubSpId(clubId, spId);
|
|
|
|
+ //后台更换协销逻辑移植
|
|
|
|
+ List<Integer> oldSpIds = clubMapper.findOldSpIds(clubId);
|
|
|
|
+ if (null != oldSpIds && oldSpIds.size() > 0) {
|
|
|
|
+ clubMapper.updateRemarksSp(clubId, oldSpId, spId, 0);
|
|
|
|
+ clubMapper.updateReportSp(clubId, oldSpId, spId);
|
|
|
|
+ } else {
|
|
|
|
+ clubMapper.updateRemarksSp(clubId, oldSpId, spId, 1);
|
|
|
|
+ }
|
|
|
|
+ if (!spId.equals(choseServiceId)) {
|
|
|
|
+ asyncService.sendChoseServiceMessage(1, clubId, spId, choseServiceId);
|
|
|
|
+ }
|
|
|
|
+ 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
|
|
@Override
|
|
public ResponseJson<PaginationVo<RemarkVo>> getRemarksList(Integer serviceProviderId,
|
|
public ResponseJson<PaginationVo<RemarkVo>> getRemarksList(Integer serviceProviderId,
|
|
String keyWord,
|
|
String keyWord,
|
|
@@ -479,11 +839,12 @@ public class ClubServiceImpl implements ClubService {
|
|
Integer satisfied,
|
|
Integer satisfied,
|
|
Integer followup,
|
|
Integer followup,
|
|
String extra,
|
|
String extra,
|
|
- Integer groupId,
|
|
|
|
|
|
+ Integer groupId, Integer status, Integer newDeal,
|
|
int pageNum, int pageSize) {
|
|
int pageNum, int pageSize) {
|
|
if (null == serviceProviderId) {
|
|
if (null == serviceProviderId) {
|
|
return ResponseJson.error("参数异常,协销id不能为空", null);
|
|
return ResponseJson.error("参数异常,协销id不能为空", null);
|
|
}
|
|
}
|
|
|
|
+// List<RemarksVo> pageInfo = null;
|
|
PageInfo<RemarksVo> pageInfo = null;
|
|
PageInfo<RemarksVo> pageInfo = null;
|
|
Integer findLeader = clubMapper.findLeaderId(serviceProviderId);
|
|
Integer findLeader = clubMapper.findLeaderId(serviceProviderId);
|
|
List<String> conss = new ArrayList<>();
|
|
List<String> conss = new ArrayList<>();
|
|
@@ -494,20 +855,40 @@ public class ClubServiceImpl implements ClubService {
|
|
conss.add(consult);
|
|
conss.add(consult);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
if (null != manager && 1 == manager) {
|
|
if (null != manager && 1 == manager) {
|
|
//主管查所有注册客户咨询记录
|
|
//主管查所有注册客户咨询记录
|
|
- log.info("方法1 所有");
|
|
|
|
|
|
+ log.info("方法1 管理员");
|
|
List<String> finalConss = conss;
|
|
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) {
|
|
} else if (null != findLeader && findLeader > 0) {
|
|
- log.info("方法2 小组");
|
|
|
|
|
|
+ log.info("方法2 协销组长");
|
|
List<String> finalConss1 = conss;
|
|
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 {
|
|
} else {
|
|
log.info("方法3 协销");
|
|
log.info("方法3 协销");
|
|
List<String> finalConss2 = conss;
|
|
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<>();
|
|
ArrayList<RemarkVo> remarkVos = new ArrayList<>();
|
|
pageInfo.getList().forEach(r -> {
|
|
pageInfo.getList().forEach(r -> {
|
|
RemarkVo remarkVo = new RemarkVo();
|
|
RemarkVo remarkVo = new RemarkVo();
|
|
@@ -562,13 +943,17 @@ public class ClubServiceImpl implements ClubService {
|
|
remarkVo.setPinceSensitve(r.getPinceSensitve());
|
|
remarkVo.setPinceSensitve(r.getPinceSensitve());
|
|
remarkVo.setFollowup(r.getFollowup());
|
|
remarkVo.setFollowup(r.getFollowup());
|
|
// remarkVo.setOldName(r.getOldName());
|
|
// remarkVo.setOldName(r.getOldName());
|
|
|
|
+ remarkVo.setStatus(r.getStatus());
|
|
|
|
+ remarkVo.setNewDeal(r.getNewDeal());
|
|
remarkVos.add(remarkVo);
|
|
remarkVos.add(remarkVo);
|
|
});
|
|
});
|
|
|
|
+
|
|
PaginationVo<RemarkVo> pageVo = new PaginationVo<>(remarkVos);
|
|
PaginationVo<RemarkVo> pageVo = new PaginationVo<>(remarkVos);
|
|
if (null != remarkVos && remarkVos.size() > 0) {
|
|
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);
|
|
pageVo.setHasNextPage(true);
|
|
} else {
|
|
} else {
|
|
pageVo.setTotalPage(1);
|
|
pageVo.setTotalPage(1);
|
|
@@ -592,50 +977,108 @@ public class ClubServiceImpl implements ClubService {
|
|
List<RemarksFileVo> fileList = clubMapper.getRemarksFileList(remarksId);
|
|
List<RemarksFileVo> fileList = clubMapper.getRemarksFileList(remarksId);
|
|
fileList.forEach(file -> file.setFileUrl(OssUtil.getOssUrl(file.getOssName())));
|
|
fileList.forEach(file -> file.setFileUrl(OssUtil.getOssUrl(file.getOssName())));
|
|
List<Map<String, String>> strings = new ArrayList<>();
|
|
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) {
|
|
|
|
|
|
+ if (remarksVo != null) {
|
|
|
|
+ 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<>();
|
|
HashMap<String, String> map = new HashMap<>();
|
|
- map.put("label", remark);
|
|
|
|
|
|
+ map.put("label", rk);
|
|
strings.add(map);
|
|
strings.add(map);
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
- HashMap<String, String> map = new HashMap<>();
|
|
|
|
- map.put("label", rk);
|
|
|
|
- strings.add(map);
|
|
|
|
- }
|
|
|
|
- RemarkVo remarkVo = new RemarkVo();
|
|
|
|
- remarkVo.setClubId(remarksVo.getClubId());
|
|
|
|
- remarkVo.setUserId(remarksVo.getUserId());
|
|
|
|
- remarkVo.setRemarksId(remarksVo.getRemarksId());
|
|
|
|
- remarkVo.setQuestionMan(remarksVo.getQuestionMan());
|
|
|
|
- remarkVo.setRemarks(strings);
|
|
|
|
- remarkVo.setFileList(fileList);
|
|
|
|
- remarkVo.setImageList(imageList);
|
|
|
|
- remarkVo.setAddTime(remarksVo.getAddTime());
|
|
|
|
- remarkVo.setConsult(remarksVo.getConsult());
|
|
|
|
- remarkVo.setClubType(remarksVo.getClubType());
|
|
|
|
- remarkVo.setPinceSensitve(remarksVo.getPinceSensitve());
|
|
|
|
- remarkVo.setSatisfied(remarksVo.getSatisfied());
|
|
|
|
- remarkVo.setFollowup(remarksVo.getFollowup());
|
|
|
|
- remarkVo.setExtra(remarksVo.getExtra());
|
|
|
|
- if (StringUtils.isNotBlank(remarksVo.getConsult())) {
|
|
|
|
- if (remarkVo.getConsult().contains(",")) {
|
|
|
|
- List<String> cons = Arrays.asList(remarkVo.getConsult().split(","));
|
|
|
|
- String Cons = "";
|
|
|
|
- for (String con : cons) {
|
|
|
|
- Cons += clubMapper.findConsultById(con).getClassName() + ",";
|
|
|
|
|
|
+
|
|
|
|
+ RemarkVo remarkVo = new RemarkVo();
|
|
|
|
+ remarkVo.setClubId(remarksVo.getClubId());
|
|
|
|
+ remarkVo.setUserId(remarksVo.getUserId());
|
|
|
|
+ remarkVo.setRemarksId(remarksVo.getRemarksId());
|
|
|
|
+ remarkVo.setQuestionMan(remarksVo.getQuestionMan());
|
|
|
|
+ remarkVo.setRemarks(strings);
|
|
|
|
+ remarkVo.setFileList(fileList);
|
|
|
|
+ remarkVo.setImageList(imageList);
|
|
|
|
+ remarkVo.setAddTime(remarksVo.getAddTime());
|
|
|
|
+ remarkVo.setConsult(remarksVo.getConsult());
|
|
|
|
+ remarkVo.setClubType(remarksVo.getClubType());
|
|
|
|
+ remarkVo.setPinceSensitve(remarksVo.getPinceSensitve());
|
|
|
|
+ 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(","));
|
|
|
|
+ String Cons = "";
|
|
|
|
+ for (String con : cons) {
|
|
|
|
+ Cons += clubMapper.findConsultById(con).getClassName() + ",";
|
|
|
|
+ }
|
|
|
|
+ Cons = Cons.substring(0, Cons.length() - 1);
|
|
|
|
+ remarkVo.setConsultBack(Cons);
|
|
|
|
+ } else {
|
|
|
|
+ remarkVo.setConsultBack(clubMapper.findConsultById(remarkVo.getConsult()).getClassName());
|
|
}
|
|
}
|
|
- Cons = Cons.substring(0, Cons.length() - 1);
|
|
|
|
- remarkVo.setConsultBack(Cons);
|
|
|
|
- } else {
|
|
|
|
- remarkVo.setConsultBack(clubMapper.findConsultById(remarkVo.getConsult()).getClassName());
|
|
|
|
}
|
|
}
|
|
|
|
+ return ResponseJson.success(remarkVo);
|
|
}
|
|
}
|
|
- 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
|
|
@Override
|
|
public ResponseJson deleteClubRemarks(Integer remarksId) {
|
|
public ResponseJson deleteClubRemarks(Integer remarksId) {
|
|
if (null == remarksId) {
|
|
if (null == remarksId) {
|
|
@@ -846,6 +1289,8 @@ public class ClubServiceImpl implements ClubService {
|
|
Integer satisfied = jsonObject.getInteger("satisfied");
|
|
Integer satisfied = jsonObject.getInteger("satisfied");
|
|
Integer followup = jsonObject.getInteger("followup");
|
|
Integer followup = jsonObject.getInteger("followup");
|
|
String extra = jsonObject.getString("extra");
|
|
String extra = jsonObject.getString("extra");
|
|
|
|
+ Integer productID = jsonObject.getInteger("productId");
|
|
|
|
+ Integer reportID = jsonObject.getInteger("reportId");
|
|
|
|
|
|
if (null == questionManId) {
|
|
if (null == questionManId) {
|
|
return ResponseJson.error("参数异常,咨询人id不能为空");
|
|
return ResponseJson.error("参数异常,咨询人id不能为空");
|
|
@@ -888,6 +1333,8 @@ public class ClubServiceImpl implements ClubService {
|
|
visitorRemarkVo.setSatisfied(satisfied);
|
|
visitorRemarkVo.setSatisfied(satisfied);
|
|
visitorRemarkVo.setFollowup(followup);
|
|
visitorRemarkVo.setFollowup(followup);
|
|
visitorRemarkVo.setExtra(extra);
|
|
visitorRemarkVo.setExtra(extra);
|
|
|
|
+ visitorRemarkVo.setReportId(reportID);
|
|
|
|
+ visitorRemarkVo.setProductId(productID);
|
|
if (newRemarks) {
|
|
if (newRemarks) {
|
|
// 新增备注
|
|
// 新增备注
|
|
clubMapper.insertVisitorRemark(visitorRemarkVo);
|
|
clubMapper.insertVisitorRemark(visitorRemarkVo);
|
|
@@ -936,52 +1383,65 @@ public class ClubServiceImpl implements ClubService {
|
|
List<RemarksFileVo> fileList = clubMapper.getVisitRemarksFileList(remarksId);
|
|
List<RemarksFileVo> fileList = clubMapper.getVisitRemarksFileList(remarksId);
|
|
fileList.forEach(file -> file.setFileUrl(OssUtil.getOssUrl(file.getOssName())));
|
|
fileList.forEach(file -> file.setFileUrl(OssUtil.getOssUrl(file.getOssName())));
|
|
List<Map<String, String>> strings = new ArrayList<>();
|
|
List<Map<String, String>> strings = new ArrayList<>();
|
|
- String rk = null == visitRemarksVo.getRemarks() ? "" : visitRemarksVo.getRemarks();
|
|
|
|
- if (rk.contains(",")) {
|
|
|
|
- String[] split = rk.split(",");
|
|
|
|
- for (String remark : split) {
|
|
|
|
|
|
+ if (visitRemarksVo != null) {
|
|
|
|
+ String rk = null == visitRemarksVo.getRemarks() ? "" : visitRemarksVo.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<>();
|
|
HashMap<String, String> map = new HashMap<>();
|
|
- map.put("label", remark);
|
|
|
|
|
|
+ map.put("label", rk);
|
|
strings.add(map);
|
|
strings.add(map);
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
- HashMap<String, String> map = new HashMap<>();
|
|
|
|
- map.put("label", rk);
|
|
|
|
- strings.add(map);
|
|
|
|
- }
|
|
|
|
- VisitRemarkVo visit = new VisitRemarkVo();
|
|
|
|
- visit.setConsult(visitRemarksVo.getConsult());
|
|
|
|
- visit.setQuestionMan(visitRemarksVo.getQuestionMan());
|
|
|
|
- visit.setQuestionManId(visitRemarksVo.getQuestionManId());
|
|
|
|
- visit.setRemarksId(visitRemarksVo.getRemarksId());
|
|
|
|
- visit.setRemarks(strings);
|
|
|
|
- visit.setAddDate(visitRemarksVo.getAddDate());
|
|
|
|
- visit.setImageList(imageList);
|
|
|
|
- visit.setFileList(fileList);
|
|
|
|
- visit.setClubType(visitRemarksVo.getClubType());
|
|
|
|
- visit.setFollowup(visitRemarksVo.getFollowup());
|
|
|
|
- visit.setSatisfied(visitRemarksVo.getSatisfied());
|
|
|
|
- visit.setPinceSensitve(visitRemarksVo.getPinceSensitve());
|
|
|
|
- visit.setExtra(visitRemarksVo.getExtra());
|
|
|
|
-
|
|
|
|
- if (StringUtils.isNotBlank(visitRemarksVo.getConsult())) {
|
|
|
|
- if (visitRemarksVo.getConsult().contains(",")) {
|
|
|
|
- List<String> cons = Arrays.asList(visitRemarksVo.getConsult().split(","));
|
|
|
|
- String Cons = "";
|
|
|
|
- for (String con : cons) {
|
|
|
|
- Cons += clubMapper.findConsultById(con).getClassName() + ",";
|
|
|
|
|
|
+
|
|
|
|
+ VisitRemarkVo visit = new VisitRemarkVo();
|
|
|
|
+ visit.setConsult(visitRemarksVo.getConsult());
|
|
|
|
+ visit.setQuestionMan(visitRemarksVo.getQuestionMan());
|
|
|
|
+ visit.setQuestionManId(visitRemarksVo.getQuestionManId());
|
|
|
|
+ visit.setRemarksId(visitRemarksVo.getRemarksId());
|
|
|
|
+ visit.setRemarks(strings);
|
|
|
|
+ visit.setAddDate(visitRemarksVo.getAddDate());
|
|
|
|
+ visit.setImageList(imageList);
|
|
|
|
+ visit.setFileList(fileList);
|
|
|
|
+ visit.setClubType(visitRemarksVo.getClubType());
|
|
|
|
+ visit.setFollowup(visitRemarksVo.getFollowup());
|
|
|
|
+ visit.setSatisfied(visitRemarksVo.getSatisfied());
|
|
|
|
+ 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(","));
|
|
|
|
+ String Cons = "";
|
|
|
|
+ for (String con : cons) {
|
|
|
|
+ Cons += clubMapper.findConsultById(con).getClassName() + ",";
|
|
|
|
+ }
|
|
|
|
+ Cons = Cons.substring(0, Cons.length() - 1);
|
|
|
|
+ visit.setConsultBack(Cons);
|
|
|
|
+ } else {
|
|
|
|
+ visit.setConsultBack(clubMapper.findConsultById(visitRemarksVo.getConsult()).getClassName());
|
|
}
|
|
}
|
|
- Cons = Cons.substring(0, Cons.length() - 1);
|
|
|
|
- visit.setConsultBack(Cons);
|
|
|
|
- } else {
|
|
|
|
- visit.setConsultBack(clubMapper.findConsultById(visitRemarksVo.getConsult()).getClassName());
|
|
|
|
}
|
|
}
|
|
|
|
+ return ResponseJson.success(visit);
|
|
}
|
|
}
|
|
- return ResponseJson.success(visit);
|
|
|
|
|
|
+ return ResponseJson.error("visitRemarksVo为空remarksId:" + remarksId);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@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;
|
|
PageInfo<VisitorRemarkVo> remarksList = null;
|
|
List<String> conss = new ArrayList<>();
|
|
List<String> conss = new ArrayList<>();
|
|
if (StringUtils.isNotBlank(consult)) {
|
|
if (StringUtils.isNotBlank(consult)) {
|
|
@@ -995,13 +1455,13 @@ public class ClubServiceImpl implements ClubService {
|
|
if (null != manager && 1 == manager) {
|
|
if (null != manager && 1 == manager) {
|
|
//主管查所有注册客户咨询记录
|
|
//主管查所有注册客户咨询记录
|
|
List<String> finalConss = conss;
|
|
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) {
|
|
} else if (null != findLeader && findLeader > 0) {
|
|
List<String> finalConss1 = conss;
|
|
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 {
|
|
} else {
|
|
List<String> finalConss2 = conss;
|
|
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<>();
|
|
ArrayList<VisitRemarkVo> remarkVos = new ArrayList<>();
|
|
remarksList.getList().forEach(r -> {
|
|
remarksList.getList().forEach(r -> {
|
|
@@ -1059,6 +1519,7 @@ public class ClubServiceImpl implements ClubService {
|
|
visit.setSatisfied(r.getSatisfied());
|
|
visit.setSatisfied(r.getSatisfied());
|
|
visit.setFollowup(r.getFollowup());
|
|
visit.setFollowup(r.getFollowup());
|
|
visit.setExtra(r.getExtra());
|
|
visit.setExtra(r.getExtra());
|
|
|
|
+ visit.setStatus(r.getStatus());
|
|
remarkVos.add(visit);
|
|
remarkVos.add(visit);
|
|
});
|
|
});
|
|
PaginationVo<VisitRemarkVo> pageVo = new PaginationVo<>(remarkVos);
|
|
PaginationVo<VisitRemarkVo> pageVo = new PaginationVo<>(remarkVos);
|
|
@@ -1105,6 +1566,7 @@ public class ClubServiceImpl implements ClubService {
|
|
}
|
|
}
|
|
//根据咨询人查cm_visitor_remarks赋值clubid,concactTime
|
|
//根据咨询人查cm_visitor_remarks赋值clubid,concactTime
|
|
clubMapper.updateVisit(questionManId, clubId);
|
|
clubMapper.updateVisit(questionManId, clubId);
|
|
|
|
+ clubMapper.updateReport(questionManId, clubId);
|
|
//cm_visitor_remarks搬运到cm_club_remarks,cm_visitor_remarks_file搬运到cm_club_remarks_file
|
|
//cm_visitor_remarks搬运到cm_club_remarks,cm_visitor_remarks_file搬运到cm_club_remarks_file
|
|
List<VisitorRemarkVo> visits = clubMapper.findConcactVisit(questionManId);
|
|
List<VisitorRemarkVo> visits = clubMapper.findConcactVisit(questionManId);
|
|
visits.forEach(v -> {
|
|
visits.forEach(v -> {
|
|
@@ -1123,6 +1585,9 @@ public class ClubServiceImpl implements ClubService {
|
|
remarksVo.setFollowup(v.getFollowup());
|
|
remarksVo.setFollowup(v.getFollowup());
|
|
remarksVo.setExtra(v.getExtra());
|
|
remarksVo.setExtra(v.getExtra());
|
|
remarksVo.setClubType(v.getClubType());
|
|
remarksVo.setClubType(v.getClubType());
|
|
|
|
+ remarksVo.setStatus(v.getStatus());
|
|
|
|
+ remarksVo.setProductId(v.getProductId());
|
|
|
|
+ remarksVo.setReportId(v.getReportId());
|
|
clubMapper.concactVisit(remarksVo);
|
|
clubMapper.concactVisit(remarksVo);
|
|
if (null != imageList && imageList.size() > 0) {
|
|
if (null != imageList && imageList.size() > 0) {
|
|
imageList.forEach(i -> clubMapper.insertRemarksImage(remarksVo.getRemarksId(), i));
|
|
imageList.forEach(i -> clubMapper.insertRemarksImage(remarksVo.getRemarksId(), i));
|
|
@@ -1172,4 +1637,6 @@ public class ClubServiceImpl implements ClubService {
|
|
List<CmRemarksVo> remarklist = clubMapper.getCmRemarksList(remarks);
|
|
List<CmRemarksVo> remarklist = clubMapper.getCmRemarksList(remarks);
|
|
return ResponseJson.success(remarklist);
|
|
return ResponseJson.success(remarklist);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|