From f7ea5773570beb5ad8c6efb5c1cf743294ee079b Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Sun, 24 Jan 2021 14:16:04 +0800
Subject: [PATCH] modify

---
 zq-erp/src/main/java/com/matrix/system/app/action/ApiFollowupAction.java |  180 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 180 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..13455fa
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiFollowupAction.java
@@ -0,0 +1,180 @@
+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.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.isBlank(zans)){
+            List<Long> zanIds = StringUtils.strToCollToLong(zans, ",");
+            List<Long> zaned = zanIds.stream().filter(zanid -> zanid.equals(user.getSuId())).collect(Collectors.toList());
+            if(CollectionUtils.isEmpty(zaned)){
+                //取消赞
+                List<Long> newZaned = zanIds.stream().filter(zanid -> !zanid.equals(user.getSuId())).collect(Collectors.toList());
+                zans=StringUtils.collToStr(newZaned,",");
+
+            }else{
+                //点赞
+                zaned.add(user.getSuId());
+                zans=StringUtils.collToStr(zaned,",");
+            }
+        }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);
+        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