From c253b555c7905c5136d47cd615ef545fa50cc6ad Mon Sep 17 00:00:00 2001
From: 935090232@qq.com <ak473600000>
Date: Sun, 20 Feb 2022 21:24:16 +0800
Subject: [PATCH] Merge branch 'api_score_meger'
---
zq-erp/src/main/java/com/matrix/system/app/action/ApiFollowupAction.java | 184 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 184 insertions(+), 0 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiFollowupAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiFollowupAction.java
new file mode 100644
index 0000000..25fa419
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiFollowupAction.java
@@ -0,0 +1,184 @@
+package com.matrix.system.app.action;
+
+import com.matrix.core.constance.MatrixConstance;
+import com.matrix.core.pojo.AjaxResult;
+import com.matrix.core.tools.StringUtils;
+import com.matrix.core.tools.WebUtil;
+import com.matrix.system.app.dto.*;
+import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.common.tools.DataAuthUtil;
+import com.matrix.system.hive.action.util.QueryUtil;
+import com.matrix.system.hive.bean.*;
+import com.matrix.system.hive.dao.*;
+import com.matrix.system.hive.plugin.util.CollectionUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * @author jyy
+ * @date 2020-12-21
+ **/
+@Api(value = "ApiFollowupAction", tags = "跟进记录接口类")
+@RestController
+@RequestMapping(value = "/api/followup")
+public class ApiFollowupAction {
+
+ @Autowired
+ private SysFollowupDao followupDao;
+
+ @Autowired
+ private SysVipAlbumDao vipAlbumDao;
+
+ @Autowired
+ private SysVipInfoDao vipInfoDao;
+
+ @Autowired
+ private SysFollowupCommentDao followupCommentDao;
+
+
+
+ @Autowired
+ private SysOrderItemDao orderItemDao;
+
+ @Autowired
+ private SysBeauticianStateDao beauticianStateDao;
+
+
+ @ApiOperation(value = "新增跟进记录", notes = "新增跟进记录")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = SysFollowup.class)
+ })
+ @PostMapping(value = "/addFollowup")
+ public AjaxResult addFollowup(@RequestBody @Validated SysFollowup followup) {
+ SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+ followup.setCreateBy(user.getSuName());
+ followup.setUpdateBy(user.getSuName());
+ followup.setStaffId(user.getSuId());
+ followup.setCompanyId(user.getCompanyId());
+ followup.setShopId(user.getShopId());
+ //处理订单摘要
+ if(followup.getOrderId()!=null){
+ List<SysOrderItem> sysOrderItems = orderItemDao.selectByOrderId(followup.getOrderId());
+ String abs="";
+ if(sysOrderItems.size()>1){
+ abs= sysOrderItems.get(0).getShoppingGoods().getName()+"等"+sysOrderItems.size()+"件商品";
+ }else{
+ abs= sysOrderItems.get(0).getShoppingGoods().getName();
+ }
+ followup.setOrderAbstract(abs);
+ }
+ //服务单摘要
+ if(followup.getServiceId()!=null){
+ List<SysBeauticianState> sysBeauticianStates = beauticianStateDao.selectBySerIds(followup.getServiceId());
+ String abs="";
+ if(sysBeauticianStates.size()>1){
+ abs= sysBeauticianStates.get(0).getProjInfo().getName()+"等"+sysBeauticianStates.size()+"项服务";
+ }else{
+ abs= sysBeauticianStates.get(0).getProjInfo().getName();
+ }
+ followup.setOrderAbstract(abs);
+ }
+
+ followupDao.insert(followup);
+ //插入图片
+ List<SysVipAlbum> albums=followup.getAlbums();
+ if(CollectionUtils.isNotEmpty(albums)){
+ for (SysVipAlbum vipAlbum:albums){
+ if(StringUtils.isNotBlank(vipAlbum.getImg())){
+ vipAlbum.setCreateBy(user.getSuName());
+ vipAlbum.setUpdateBy(user.getSuName());
+ vipAlbum.setSource(SysVipAlbum.SOURCE_FOLLOW);
+ vipAlbum.setVipId(followup.getVipId());
+ vipAlbum.setSourceId(followup.getId());
+ vipAlbumDao.insert(vipAlbum);
+ }
+ }
+ }
+
+ return AjaxResult.buildSuccessInstance("保存成功");
+ }
+
+ @ApiOperation(value = "跟进记录点赞或者取消点赞", notes = "跟进记录点赞或者取消点赞")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = AjaxResult.class)
+ })
+ @GetMapping(value = "/zanFollowup/{id}")
+ public AjaxResult zanFollowup(@PathVariable("id")Long id) {
+ SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+ SysFollowup followup = followupDao.selectById(id);
+ String zans=followup.getZans();
+ if(StringUtils.isNotBlank(zans)){
+ List<Long> zanIds = StringUtils.strToCollToLong(zans, ",");
+ List<Long> zaned = zanIds.stream().filter(zanid -> zanid.equals(user.getSuId())).collect(Collectors.toList());
+ if(CollectionUtils.isNotEmpty(zaned)){
+ //取消赞
+ List<Long> newZaned = zanIds.stream().filter(zanid -> !zanid.equals(user.getSuId())).collect(Collectors.toList());
+ zans=StringUtils.collToStr(newZaned,",");
+
+ }else{
+ //点赞
+ zanIds.add(user.getSuId());
+ zans=StringUtils.collToStr(zanIds,",");
+ }
+ }else{
+ //直接点赞
+ zans=user.getSuId()+"";
+ }
+ followupDao.updateZan(id,zans);
+ return AjaxResult.buildSuccessInstance("修改成功");
+ }
+
+
+ @ApiOperation(value = "评论跟进", notes = "评论跟进")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = AjaxResult.class)
+ })
+ @PostMapping(value = "/addFollowupComment")
+ public AjaxResult addFollowupComment(@RequestBody @Validated SysFollowupComment followupComment) {
+ SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+ followupComment.setCreateBy(user.getSuName());
+ followupComment.setUpdateBy(user.getSuName());
+ followupComment.setStaffId(user.getSuId());
+ followupCommentDao.insert(followupComment);
+ return AjaxResult.buildSuccessInstance("评论成功");
+ }
+
+
+ @ApiOperation(value = "查询跟进记录", notes = "查询跟进记录")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = SysFollowup.class)
+ })
+ @PostMapping(value = "/findFollowup")
+ public AjaxResult findFollowup(@RequestBody @Validated FollowupListDto followupListDto) {
+ SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+ if(!DataAuthUtil.hasAllShopAuth()){
+ followupListDto.setShopId(user.getShopId());
+ }
+ followupListDto.setCompanyId(user.getCompanyId());
+ followupListDto.setSelfStaff(user.getSuId());
+ //TODO 需要设置跨店数据权限
+ List<SysFollowup> rows= followupDao.selectByAppDto(followupListDto);
+ return AjaxResult.buildSuccessInstance(rows,"查询成功");
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+}
\ No newline at end of file
--
Gitblit v1.9.1