From ecd015fd9320ced39a5dc1942f20997f294f3016 Mon Sep 17 00:00:00 2001
From: 姜友瑶 <935090232@qq.com>
Date: Wed, 04 May 2022 13:30:38 +0800
Subject: [PATCH] fix:添加跟进记录服务端查询接口

---
 zq-erp/src/main/java/com/matrix/system/hive/action/FollowuController.java       |   38 +++++++
 zq-erp/src/main/java/com/matrix/system/hive/dto/FollowuListDto.java             |   34 ++++++
 zq-erp/src/main/java/com/matrix/beauty/followup/dao/SysFollowupDao.java         |   12 +
 zq-erp/src/main/java/com/matrix/beauty/followup/service/SysFollowupService.java |   89 +++++++++++++++++
 zq-erp/src/main/java/com/matrix/beauty/followup/entry/SysFollowup.java          |    6 
 zq-erp/src/main/java/com/matrix/system/hive/dao/SysVipAlbumDao.java             |   11 +
 zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml                |   30 ++++-
 zq-erp/src/main/resources/config/application.properties                         |    2 
 zq-erp/src/main/java/com/matrix/system/app/action/ApiFollowupAction.java        |   62 +-----------
 9 files changed, 209 insertions(+), 75 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysFollowupDao.java b/zq-erp/src/main/java/com/matrix/beauty/followup/dao/SysFollowupDao.java
similarity index 84%
rename from zq-erp/src/main/java/com/matrix/system/hive/dao/SysFollowupDao.java
rename to zq-erp/src/main/java/com/matrix/beauty/followup/dao/SysFollowupDao.java
index 28fafcb..8da6244 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysFollowupDao.java
+++ b/zq-erp/src/main/java/com/matrix/beauty/followup/dao/SysFollowupDao.java
@@ -1,11 +1,13 @@
-package com.matrix.system.hive.dao;
+package com.matrix.beauty.followup.dao;
 
+import com.matrix.beauty.followup.entry.SysFollowup;
+import com.matrix.core.pojo.PaginationVO;
 import com.matrix.system.app.dto.FollowupListDto;
+import com.matrix.system.hive.dto.FollowuListDto;
 import org.apache.ibatis.annotations.Param;
+
 import java.util.List;
 import java.util.Map;
-import com.matrix.core.pojo.PaginationVO;
-import com.matrix.system.hive.bean.SysFollowup;
 
 /**
  * @description 跟进
@@ -15,7 +17,7 @@
 public interface SysFollowupDao{
 
 	public int insert(@Param("item") SysFollowup sysFollowup);
-   	
+
    	public int batchInsert(@Param("list") List<SysFollowup> sysFollowupList);
    	
 	public int updateByMap(Map<String, Object> modifyMap);
@@ -41,4 +43,6 @@
     void updateZan(@Param("id")Long id, @Param("zans")String zans);
 
 	List<SysFollowup> selectByAppDto(FollowupListDto followupListDto);
+
+    List<SysFollowup> findVipFollowuByPage(FollowuListDto followuListDto);
 }
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysFollowup.java b/zq-erp/src/main/java/com/matrix/beauty/followup/entry/SysFollowup.java
similarity index 96%
rename from zq-erp/src/main/java/com/matrix/system/hive/bean/SysFollowup.java
rename to zq-erp/src/main/java/com/matrix/beauty/followup/entry/SysFollowup.java
index 3085a5c..ffe568b 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysFollowup.java
+++ b/zq-erp/src/main/java/com/matrix/beauty/followup/entry/SysFollowup.java
@@ -1,13 +1,13 @@
-package com.matrix.system.hive.bean;
+package com.matrix.beauty.followup.entry;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
-import com.matrix.core.pojo.EntityDTO;
 import com.matrix.core.anotations.Extend;
 import com.matrix.core.tools.DateUtil;
 import com.matrix.system.common.bean.EntityDTOExt;
 import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.hive.bean.SysFollowupComment;
+import com.matrix.system.hive.bean.SysVipAlbum;
 import io.swagger.annotations.ApiModelProperty;
-import org.springframework.format.annotation.DateTimeFormat;
 
 import javax.validation.constraints.NotNull;
 import java.util.Date;
diff --git a/zq-erp/src/main/java/com/matrix/beauty/followup/service/SysFollowupService.java b/zq-erp/src/main/java/com/matrix/beauty/followup/service/SysFollowupService.java
new file mode 100644
index 0000000..118bea8
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/beauty/followup/service/SysFollowupService.java
@@ -0,0 +1,89 @@
+package com.matrix.beauty.followup.service;
+
+import com.matrix.beauty.followup.dao.SysFollowupDao;
+import com.matrix.beauty.followup.entry.SysFollowup;
+import com.matrix.core.constance.MatrixConstance;
+import com.matrix.core.tools.StringUtils;
+import com.matrix.core.tools.WebUtil;
+import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.hive.bean.SysBeauticianState;
+import com.matrix.system.hive.bean.SysOrderItem;
+import com.matrix.system.hive.bean.SysVipAlbum;
+import com.matrix.system.hive.dao.SysBeauticianStateDao;
+import com.matrix.system.hive.dao.SysOrderItemDao;
+import com.matrix.system.hive.dao.SysVipAlbumDao;
+import com.matrix.system.hive.dto.FollowuListDto;
+import com.matrix.system.hive.plugin.util.CollectionUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class SysFollowupService {
+    @Autowired
+    SysFollowupDao followupDao;
+
+    @Autowired
+    SysOrderItemDao orderItemDao;
+
+    @Autowired
+    private SysVipAlbumDao vipAlbumDao;
+
+    @Autowired
+    private SysBeauticianStateDao beauticianStateDao;
+
+    public void save(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);
+                }
+            }
+        }
+
+    }
+
+    public List<SysFollowup> findVipFollowuByPage(FollowuListDto followuListDto) {
+        //todo 等订单改造版本合并后用验证工具加参数校验
+
+      return   followupDao.findVipFollowuByPage(followuListDto);
+    }
+}
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
index 25fa419..ba2e8b8 100644
--- 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
@@ -1,5 +1,8 @@
 package com.matrix.system.app.action;
 
+import com.matrix.beauty.followup.dao.SysFollowupDao;
+import com.matrix.beauty.followup.entry.SysFollowup;
+import com.matrix.beauty.followup.service.SysFollowupService;
 import com.matrix.core.constance.MatrixConstance;
 import com.matrix.core.pojo.AjaxResult;
 import com.matrix.core.tools.StringUtils;
@@ -7,7 +10,6 @@
 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;
@@ -35,21 +37,11 @@
     private SysFollowupDao followupDao;
 
     @Autowired
-    private SysVipAlbumDao vipAlbumDao;
-
-    @Autowired
-    private SysVipInfoDao vipInfoDao;
-
-    @Autowired
     private SysFollowupCommentDao followupCommentDao;
 
 
-
     @Autowired
-    private SysOrderItemDao orderItemDao;
-
-    @Autowired
-    private SysBeauticianStateDao beauticianStateDao;
+    private SysFollowupService followupService;
 
 
     @ApiOperation(value = "新增跟进记录", notes = "新增跟进记录")
@@ -58,51 +50,7 @@
     })
     @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);
-                }
-            }
-        }
-
+        followupService.save(followup);
         return AjaxResult.buildSuccessInstance("保存成功");
     }
 
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/FollowuController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/FollowuController.java
new file mode 100644
index 0000000..2f9f7a0
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/hive/action/FollowuController.java
@@ -0,0 +1,38 @@
+package com.matrix.system.hive.action;
+
+import com.matrix.beauty.followup.entry.SysFollowup;
+import com.matrix.beauty.followup.service.SysFollowupService;
+import com.matrix.core.constance.MatrixConstance;
+import com.matrix.core.pojo.AjaxResult;
+import com.matrix.core.tools.WebUtil;
+import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.hive.dto.FollowuListDto;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @description 跟进记录
+ */
+@Controller
+@RequestMapping(value = "admin/followu")
+public class FollowuController extends BaseController{
+
+
+	@Resource
+	private SysFollowupService followupService;
+	
+	/**
+	 * 显示所有的会员卡等级信息
+	 */
+	@RequestMapping(value = "/showList")
+	public @ResponseBody AjaxResult showList(FollowuListDto followuListDto) {
+		SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+		followuListDto.setCompanyId(users.getCompanyId());
+		List<SysFollowup> list= followupService.findVipFollowuByPage(followuListDto);
+		return  AjaxResult.buildSuccessInstance(list);
+	}
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysVipAlbumDao.java b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysVipAlbumDao.java
index 70f2950..b59cb55 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/dao/SysVipAlbumDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/dao/SysVipAlbumDao.java
@@ -1,10 +1,13 @@
 package com.matrix.system.hive.dao;
 
-import org.apache.ibatis.annotations.Param;
-import java.util.List;
-import java.util.Map;
+import com.matrix.beauty.followup.entry.SysFollowup;
 import com.matrix.core.pojo.PaginationVO;
 import com.matrix.system.hive.bean.SysVipAlbum;
+import com.matrix.system.hive.dto.FollowuListDto;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * @description 客户相册
@@ -38,5 +41,5 @@
 	public SysVipAlbum  selectById(Long id);
 	
 	public SysVipAlbum  selectForUpdate(Long id);
-	
+
 }
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dto/FollowuListDto.java b/zq-erp/src/main/java/com/matrix/system/hive/dto/FollowuListDto.java
new file mode 100644
index 0000000..cb76a66
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/hive/dto/FollowuListDto.java
@@ -0,0 +1,34 @@
+package com.matrix.system.hive.dto;
+
+import com.matrix.core.pojo.PaginationDto;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/** 查询客户跟进记录
+ * @author jyy
+ * @date 2021-01-27
+ **/
+@Data
+public class FollowuListDto extends PaginationDto {
+
+    /**
+     * 客户id
+     */
+    @NotNull
+    private Long vipId;
+
+    /**
+     * 员工id
+     */
+    @NotNull
+    private Long staffId;
+
+    /**
+     * 公司id
+     */
+    @NotNull
+    private Long companyId;
+
+
+}
diff --git a/zq-erp/src/main/resources/config/application.properties b/zq-erp/src/main/resources/config/application.properties
index af40963..6b3f12e 100644
--- a/zq-erp/src/main/resources/config/application.properties
+++ b/zq-erp/src/main/resources/config/application.properties
@@ -1,5 +1,5 @@
 
-spring.profiles.active=local
+spring.profiles.active=alpha
 evn=dev
 server.port=8080
 
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml
index 408922a..51b8e0d 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml
@@ -2,9 +2,9 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 
-<mapper namespace="com.matrix.system.hive.dao.SysFollowupDao" >
+<mapper namespace="com.matrix.beauty.followup.dao.SysFollowupDao" >
 	<!-- 定义SysFollowup 的复杂关联map -->
-	<resultMap type="com.matrix.system.hive.bean.SysFollowup" id="SysFollowupMap">
+	<resultMap type="com.matrix.beauty.followup.entry.SysFollowup" id="SysFollowupMap">
 		<id property="id" column="id" />
 		<result property="createBy" column="create_by" />
 		<result property="createTime" column="create_time" />
@@ -40,7 +40,7 @@
 	</select>
 	
 	<!-- 定义SysFollowup 的简单map  ,本map不添加其他的关联属性 -->
-	<resultMap type="com.matrix.system.hive.bean.SysFollowup" id="SysFollowupSimpleMap">
+	<resultMap type="com.matrix.beauty.followup.entry.SysFollowup" id="SysFollowupSimpleMap">
 		<id property="id" column="id" />
 		<result property="createBy" column="create_by" />
 		<result property="createTime" column="create_time" />
@@ -142,9 +142,9 @@
 		</if>
 		 
 	</sql>
-	
+
 	<!--  插入方法   -->
-	<insert id="insert" parameterType="com.matrix.system.hive.bean.SysFollowup"
+	<insert id="insert" parameterType="com.matrix.beauty.followup.entry.SysFollowup"
 		useGeneratedKeys="true" keyProperty="item.id">
 		INSERT INTO sys_followup (
 			 <include refid="columns"></include>
@@ -275,7 +275,7 @@
 	</delete>
 	
 	<!-- 根据对象删除-->
-	<delete id="deleteByModel" parameterType="com.matrix.system.hive.bean.SysFollowup">
+	<delete id="deleteByModel" parameterType="com.matrix.beauty.followup.entry.SysFollowup">
 		DELETE FROM sys_followup
 		<where>
 		<include refid="where_sql" ></include>
@@ -401,5 +401,23 @@
 	  	limit ${offset},${limit}
 	</select>
 
+<select id="findVipFollowuByPage" resultMap="SysFollowupMap">
+		select a.*,
+		 b.su_photo as staffPhoto,
+		 b.su_name as staffName,
+		 c.vip_name as vipName
+		 from sys_followup  a
+		 left join  sys_users b on a.staff_id= b.su_id
+		 left join  sys_vip_info c on a.vip_id=c.id
+		<where>
+			and a.company_id=#{companyId}
+			and (visible=1 or ( visible!=1 and a.staff_id=#{selfStaff}))
+			<if test="vipId!=null">
+				and	a.vip_id = #{vipId}
+			</if>
+		</where>
+		order by a.create_time desc
+	  	limit ${offset},${limit}
+	</select>
 
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1