From bd1467a09752fa7b838fd6c1a98d8e7d7687c5a7 Mon Sep 17 00:00:00 2001
From: jiangqs <343695869@qq.com>
Date: 星期日, 16 七月 2023 12:30:22 +0800
Subject: [PATCH] 员工端

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/StaffUserGetVo.java                    |   33 ++++
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/StaffUseSuggestDto.java               |   20 ++
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/StaffSuggestPageVo.java                |   29 +++
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffShopController.java            |    1 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffFollowShopTaskDto.java               |   50 ++++++
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/StaffSuggest.java             |    2 
 ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopSuggestMapper.xml                              |    2 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/ShopTaskService.java                    |   10 +
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/StaffSuggestMapper.xml                         |   10 +
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffTaskController.java            |    9 +
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/config/StaffSuggestMapper.java            |   11 +
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffAddTaskDto.java                      |    2 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/staff/StaffSysController.java         |   83 ++++++++++
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/ShopTaskServiceImpl.java           |  161 +++++++++++++++++--
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/StaffSuggestService.java          |   21 ++
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java |   32 ++++
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/task/ShopTask.java                       |    4 
 17 files changed, 456 insertions(+), 24 deletions(-)

diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffShopController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffShopController.java
index 3e9330d..71b97c5 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffShopController.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffShopController.java
@@ -84,6 +84,7 @@
         return R.ok(staffShopInfoGetVo);
     }
 
+
     @RequestMapping(value = "/editShopEstimate", method = RequestMethod.POST)
     @ApiOperation(value = "修改店铺评估")
     public R editShopEstimate(@RequestBody StaffShopEstimateEditDto staffShopEstimateEditDto) {
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffTaskController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffTaskController.java
index 295168d..c397024 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffTaskController.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffTaskController.java
@@ -5,6 +5,7 @@
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.shop.domain.dto.StaffAddTaskDto;
 import com.ruoyi.shop.domain.dto.StaffAgencyPageDto;
+import com.ruoyi.shop.domain.dto.StaffFollowShopTaskDto;
 import com.ruoyi.shop.domain.dto.StaffShopTaskPageDto;
 import com.ruoyi.shop.domain.vo.StaffAgencyTaskRecordPageVo;
 import com.ruoyi.shop.domain.vo.StaffMyShopTaskRecordPageVo;
@@ -103,4 +104,12 @@
         return R.ok();
     }
 
+    @RequestMapping(value = "/staffFollowShopTask", method = RequestMethod.POST)
+    @ApiOperation(value = "员工商户任务跟进")
+    public R staffFollowShopTask(@RequestBody StaffFollowShopTaskDto staffFollowShopTaskDto) {
+        Long userId = SecurityUtils.getUserId();
+        staffFollowShopTaskDto.setUserId(userId);
+        shopTaskService.staffFollowShopTask(staffFollowShopTaskDto);
+        return R.ok();
+    }
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffAddTaskDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffAddTaskDto.java
index d6cf932..f54b7f1 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffAddTaskDto.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffAddTaskDto.java
@@ -14,7 +14,7 @@
 @Data
 public class StaffAddTaskDto extends StaffBaseDto {
 
-    @ApiModelProperty(value="任务时间")
+    @ApiModelProperty(value="商户id")
     private Long shopId;
 
     @ApiModelProperty(value="任务时间")
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffFollowShopTaskDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffFollowShopTaskDto.java
new file mode 100644
index 0000000..a87dc25
--- /dev/null
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/StaffFollowShopTaskDto.java
@@ -0,0 +1,50 @@
+package com.ruoyi.shop.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MerBaseDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author jqs34
+ * @ClassName MerFollowMemberTask
+ * @description: TODO
+ * @date 2023年05月06日
+ * @version: 1.0
+ */
+@Data
+public class StaffFollowShopTaskDto extends MerBaseDto {
+
+    @ApiModelProperty(value = "任务id")
+    private String taskId;
+
+    @ApiModelProperty(value="跟踪类型1电话2手动")
+    private Integer followType;
+
+    @ApiModelProperty(value="拨打电话")
+    private String callPhone;
+
+    @ApiModelProperty(value="电话跟踪内容")
+    private List<MerFollowPhoneDto> followPhone;
+
+    @ApiModelProperty(value="手动跟踪内容")
+    private String followContent;
+
+    @ApiModelProperty(value="跟进图片地址 多个,号隔开")
+    private String picture;
+
+    @ApiModelProperty(value="跟进视频地址 多个,号隔开")
+    private String video;
+
+    @ApiModelProperty(value="跟进音频地址 多个,号隔开")
+    private String audio;
+
+    @ApiModelProperty(value="下次任务时间")
+    private String nextTaskDate;
+
+    @ApiModelProperty(value="下次任务内容")
+    private String nextTaskContent;
+
+
+}
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/task/ShopTask.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/task/ShopTask.java
index aff156a..d2cbef4 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/task/ShopTask.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/task/ShopTask.java
@@ -53,7 +53,7 @@
      * 下次跟进时间
      */
     @TableField("next_follow_date")
-    private Date nextFollowDate;
+    private String nextFollowDate;
     /**
      * 任务标题
      */
@@ -74,7 +74,7 @@
      * 任务时间
      */
     @TableField("task_date")
-    private Date taskDate;
+    private String taskDate;
 
     /**
      * 任务状态0未开始1待处理2已处理3已过期
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/ShopTaskServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/ShopTaskServiceImpl.java
index 86adad3..f535117 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/ShopTaskServiceImpl.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/ShopTaskServiceImpl.java
@@ -6,12 +6,8 @@
 import com.ruoyi.common.core.utils.DateUtils;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.utils.uuid.IdUtils;
-import com.ruoyi.shop.domain.dto.MgtFollowShopTaskDto;
-import com.ruoyi.shop.domain.dto.StaffAddTaskDto;
-import com.ruoyi.shop.domain.dto.StaffShopTaskPageDto;
-import com.ruoyi.shop.domain.pojo.task.ShopTask;
-import com.ruoyi.shop.domain.pojo.task.ShopTaskRecord;
-import com.ruoyi.shop.domain.pojo.task.TaskFile;
+import com.ruoyi.shop.domain.dto.*;
+import com.ruoyi.shop.domain.pojo.task.*;
 import com.ruoyi.shop.domain.vo.StaffShopTaskPageVo;
 import com.ruoyi.shop.mapper.task.ShopTaskMapper;
 import com.ruoyi.shop.service.task.ShopTaskRecordService;
@@ -23,8 +19,6 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
-import java.text.ParseException;
-import java.time.LocalDate;
 import java.util.Date;
 import java.util.List;
 
@@ -59,15 +53,16 @@
     public void followShopTask(MgtFollowShopTaskDto mgtFollowShopTaskDto){
         //创建本次任务
         ShopTask shopTask = new ShopTask();
+        Date nowTime = new Date();
+        String nowTimeStr = DateUtils.getDate();
         String taskId = IdUtils.simpleUUID();
         shopTask.setTaskId(taskId);
         shopTask.setDelFlag(0);
         shopTask.setShopId(mgtFollowShopTaskDto.getShopId());
-        shopTask.setNextFollowDate(DateUtils.toDate(LocalDate.now()));
         shopTask.setTaskTitle(mgtFollowShopTaskDto.getTaskTitle());
         shopTask.setEmergencyState(mgtFollowShopTaskDto.getEmergencyState());
-        shopTask.setCreateTime(new Date());
-        shopTask.setTaskDate(DateUtils.toDate(LocalDate.now()));
+        shopTask.setCreateTime(nowTime);
+        shopTask.setTaskDate(nowTimeStr);
         shopTask.setTaskStatus(2);
         this.saveOrUpdate(shopTask);
         //创建任务记录
@@ -78,7 +73,7 @@
         shopTaskRecord.setFollowType(2);
         shopTaskRecord.setCustomFollowType(mgtFollowShopTaskDto.getFollowType());
         shopTaskRecord.setFollowContent(mgtFollowShopTaskDto.getFollowContent());
-        shopTaskRecord.setCreateTime(new Date());
+        shopTaskRecord.setCreateTime(nowTime);
         shopTaskRecordService.saveOrUpdate(shopTaskRecord);
         //创建任务文件
         String picture = mgtFollowShopTaskDto.getPicture();
@@ -104,14 +99,16 @@
         shopNextTask.setShopId(mgtFollowShopTaskDto.getShopId());
         shopNextTask.setTaskTitle(mgtFollowShopTaskDto.getNextTaskTitle());
         shopNextTask.setEmergencyState(mgtFollowShopTaskDto.getEmergencyState());
-        shopNextTask.setCreateTime(new Date());
-        shopNextTask.setTaskStatus(0);
-        try {
-            shopNextTask.setNextFollowDate(DateUtils.parseDate(mgtFollowShopTaskDto.getNextTaskDate(),"yyyy-MM-dd"));
-            shopNextTask.setTaskDate(DateUtils.parseDate(mgtFollowShopTaskDto.getNextTaskDate(),"yyyy-MM-dd"));
-        } catch (ParseException e) {
-            throw new RuntimeException(e);
+        shopNextTask.setCreateTime(nowTime);
+        int i = mgtFollowShopTaskDto.getNextTaskDate().compareTo(nowTimeStr);
+        if(i>0){
+            shopNextTask.setTaskStatus(0);
+        }else if(i==0){
+            shopNextTask.setTaskStatus(1);
+        }else{
+            shopNextTask.setTaskStatus(3);
         }
+        shopNextTask.setTaskDate(mgtFollowShopTaskDto.getNextTaskDate());
         this.saveOrUpdate(shopNextTask);
     }
 
@@ -180,5 +177,131 @@
     @Override
     public void staffAddTask(StaffAddTaskDto staffAddTaskDto){
         ShopTask shopTask = new ShopTask();
+        String nowTimeStr = DateUtils.getDate();
+        String taskId = IdUtils.simpleUUID();
+        shopTask.setTaskId(taskId);
+        shopTask.setDelFlag(0);
+        shopTask.setShopId(staffAddTaskDto.getShopId());
+        shopTask.setTaskTitle(staffAddTaskDto.getTaskTitle());
+        shopTask.setEmergencyState(staffAddTaskDto.getEmergencyState());
+        shopTask.setCreateTime(new Date());
+        shopTask.setTaskDate(staffAddTaskDto.getTaskDate());
+        int i = staffAddTaskDto.getTaskDate().compareTo(nowTimeStr);
+        if(i>0){
+            shopTask.setTaskStatus(0);
+        }else if(i==0){
+            shopTask.setTaskStatus(1);
+        }else{
+            shopTask.setTaskStatus(3);
+        }
+        this.saveOrUpdate(shopTask);
+    }
+
+    /**
+     * @description 员工商户任务跟进
+     * @param staffFollowShopTaskDto
+     * @return void
+     * @author jqs34
+     * @date 2023/7/16 11:56
+     */
+    @Override
+    public void staffFollowShopTask(StaffFollowShopTaskDto staffFollowShopTaskDto){
+        // 创建会员任务记录对象
+        ShopTaskRecord shopTaskRecord;
+        // 获取旧的会员任务
+        ShopTask oldShopTask = this.getById(staffFollowShopTaskDto.getTaskId());
+        oldShopTask.setTaskStatus(2);
+        this.saveOrUpdate(oldShopTask);
+        // 判断跟进类型
+        if (staffFollowShopTaskDto.getFollowType() == 1) {
+            // 获取跟进电话列表
+            List<MerFollowPhoneDto> followPhone = staffFollowShopTaskDto.getFollowPhone();
+            // 判断跟进电话列表是否为空
+            if (followPhone != null && !followPhone.isEmpty()) {
+                // 遍历跟进电话列表
+                for (MerFollowPhoneDto followPhoneDto : followPhone) {
+                    // 创建新的会员任务记录
+                    shopTaskRecord = new ShopTaskRecord();
+                    shopTaskRecord.setTaskId(staffFollowShopTaskDto.getTaskId());
+                    shopTaskRecord.setDelFlag(0);
+                    shopTaskRecord.setUserId(staffFollowShopTaskDto.getUserId());
+                    shopTaskRecord.setFollowType(staffFollowShopTaskDto.getFollowType());
+                    shopTaskRecord.setCallPhone(staffFollowShopTaskDto.getCallPhone());
+                    shopTaskRecord.setFollowContent(followPhoneDto.getFollowContent());
+                    shopTaskRecord.setCallTime(followPhoneDto.getCallTime());
+                    // 保存或更新会员任务记录
+                    shopTaskRecordService.saveOrUpdate(shopTaskRecord);
+                }
+            }
+        } else {
+            // 创建新的会员任务记录
+            shopTaskRecord = new ShopTaskRecord();
+            shopTaskRecord.setTaskId(staffFollowShopTaskDto.getTaskId());
+            shopTaskRecord.setDelFlag(0);
+            shopTaskRecord.setUserId(staffFollowShopTaskDto.getUserId());
+            shopTaskRecord.setFollowType(staffFollowShopTaskDto.getFollowType());
+            shopTaskRecord.setFollowContent(staffFollowShopTaskDto.getFollowContent());
+            shopTaskRecord.setCreateTime(new Date());
+            // 保存或更新会员任务记录
+            shopTaskRecordService.saveOrUpdate(shopTaskRecord);
+            // 获取图片、视频和音频
+            String picture = staffFollowShopTaskDto.getPicture();
+            String video = staffFollowShopTaskDto.getVideo();
+            String audio = staffFollowShopTaskDto.getAudio();
+            String[] strArr;
+            TaskFile taskFile;
+            // 判断图片是否为空,并处理
+            if (StringUtils.isNotBlank(picture)) {
+                strArr = picture.split(",");
+                for (String str : strArr) {
+                    taskFile = new TaskFile();
+                    taskFile.setDelFlag(0);
+                    taskFile.setFollowId(shopTaskRecord.getId());
+                    taskFile.setFollowFrom(4);
+                    taskFile.setFileUrl(str);
+                    taskFile.setFileType(1);
+                    taskFileService.saveOrUpdate(taskFile);
+                }
+            }
+            // 判断视频是否为空,并处理
+            if (StringUtils.isNotBlank(video)) {
+                strArr = picture.split(",");
+                for (String str : strArr) {
+                    taskFile = new TaskFile();
+                    taskFile.setDelFlag(0);
+                    taskFile.setFollowId(shopTaskRecord.getId());
+                    taskFile.setFollowFrom(4);
+                    taskFile.setFileUrl(str);
+                    taskFile.setFileType(2);
+                    taskFileService.saveOrUpdate(taskFile);
+                }
+            }
+            // 判断音频是否为空,并处理
+            if (StringUtils.isNotBlank(audio)) {
+                strArr = picture.split(",");
+                for (String str : strArr) {
+                    taskFile = new TaskFile();
+                    taskFile.setDelFlag(0);
+                    taskFile.setFollowId(shopTaskRecord.getId());
+                    taskFile.setFollowFrom(4);
+                    taskFile.setFileUrl(str);
+                    taskFile.setFileType(3);
+                    taskFileService.saveOrUpdate(taskFile);
+                }
+            }
+        }
+        // 判断下一个任务日期是否为空,并处理
+        if (StringUtils.isNotBlank(staffFollowShopTaskDto.getNextTaskDate())) {
+            ShopTask shopTask = new ShopTask();
+            String taskId = IdUtils.simpleUUID();
+            shopTask.setTaskId(taskId);
+            shopTask.setDelFlag(0);
+            shopTask.setShopId(oldShopTask.getShopId());
+            shopTask.setTaskDate(staffFollowShopTaskDto.getNextTaskDate());
+            shopTask.setFollowContent(staffFollowShopTaskDto.getNextTaskContent());
+            shopTask.setTaskStatus(2);
+            shopTask.setCreateTime(new Date());
+            this.saveOrUpdate(shopTask);
+        }
     }
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/ShopTaskService.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/ShopTaskService.java
index 1789e67..ced42ac 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/ShopTaskService.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/ShopTaskService.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.shop.domain.dto.MgtFollowShopTaskDto;
 import com.ruoyi.shop.domain.dto.StaffAddTaskDto;
+import com.ruoyi.shop.domain.dto.StaffFollowShopTaskDto;
 import com.ruoyi.shop.domain.dto.StaffShopTaskPageDto;
 import com.ruoyi.shop.domain.pojo.task.ShopTask;
 import com.ruoyi.shop.domain.vo.StaffShopTaskPageVo;
@@ -63,4 +64,13 @@
      * @return  void
      */
     void staffAddTask(StaffAddTaskDto staffAddTaskDto);
+
+    /**
+    * @description 员工商户任务跟进
+    * @param staffFollowShopTaskDto
+    * @return void
+    * @author jqs34
+    * @date 2023/7/16 11:56
+    */
+    void staffFollowShopTask(StaffFollowShopTaskDto staffFollowShopTaskDto);
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopSuggestMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopSuggestMapper.xml
index b44b2f5..6182377 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopSuggestMapper.xml
+++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopSuggestMapper.xml
@@ -9,7 +9,7 @@
         create_time createTime
         FROM
         t_shop_suggest
-        WHERE del_flag = 0 AND shop_id = #{param.shopId}
+        WHERE del_flag = 0 AND shop_id = #{param.shopId} AND create_user_id =  #{param.userId}
     </select>
 
     <update id="deleteShopSuggestTag">
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/staff/StaffSysController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/staff/StaffSysController.java
new file mode 100644
index 0000000..f9df96f
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/staff/StaffSysController.java
@@ -0,0 +1,83 @@
+package com.ruoyi.system.controller.staff;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.system.api.domain.dto.MerPageDto;
+import com.ruoyi.system.api.domain.dto.StaffPageDto;
+import com.ruoyi.system.api.domain.poji.sys.SysUser;
+import com.ruoyi.system.domain.dto.StaffUseSuggestDto;
+import com.ruoyi.system.domain.pojo.staff.SysStaff;
+import com.ruoyi.system.domain.vo.StaffSuggestPageVo;
+import com.ruoyi.system.domain.vo.StaffUserGetVo;
+import com.ruoyi.system.service.config.StaffSuggestService;
+import com.ruoyi.system.service.staff.SysStaffService;
+import com.ruoyi.system.service.sys.ISysUserService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @author jqs34
+ * @version 1.0
+ * @classname StaffUserController
+ * @description: TODO
+ * @date 2023 2023/7/16 12:02
+ */
+@Api(value = "员工端商户接口", tags = "员工端商户接口", description = "员工端商户接口")
+@RestController
+@RequestMapping("/staff/sys")
+public class StaffSysController {
+
+    @Resource
+    private SysStaffService sysStaffService;
+
+    @Resource
+    private ISysUserService sysUserService;
+
+    @Resource
+    private StaffSuggestService staffSuggestService;
+
+    @RequestMapping(value = "/getStaffShopInfo", method = RequestMethod.POST)
+    @ApiOperation(value = "获取员工端商户信息")
+    public R<StaffUserGetVo> getStaffShopInfo() {
+        Long userId = SecurityUtils.getUserId();
+        SysStaff sysStaff = sysStaffService.getByUserId(userId);
+        SysUser sysUser = sysUserService.selectUserById(userId);
+        StaffUserGetVo staffUserGetVo = new StaffUserGetVo();
+        staffUserGetVo.setUserId(sysStaff.getUserId());
+        staffUserGetVo.setStaffName(sysStaff.getStaffName());
+        staffUserGetVo.setStaffMobile(sysStaff.getStaffMobile());
+        staffUserGetVo.setStaffAvatar(sysStaff.getStaffAvatar());
+        staffUserGetVo.setStaffDept(sysUser.getDept().getDeptName());
+        staffUserGetVo.setStaffPost(sysStaff.getStaffPost());
+        return R.ok(staffUserGetVo);
+    }
+
+    @RequestMapping(value = "/staffSuggest", method = RequestMethod.POST)
+    @ApiOperation(value = "员工发起建议")
+    public R userSuggest(@RequestBody StaffUseSuggestDto staffUseSuggestDto) {
+        Long userId = SecurityUtils.getUserId();
+        staffUseSuggestDto.setUserId(userId);
+        staffSuggestService.staffSuggest(staffUseSuggestDto);
+        return R.ok();
+    }
+
+    @RequestMapping(value = "/pageStaffShopSuggest", method = RequestMethod.POST)
+    @ApiOperation(value = "分页获取员工建议")
+    public R<Page<StaffSuggestPageVo>> pageStaffShopSuggest(@RequestBody StaffPageDto staffPageDto) {
+        Long userId = SecurityUtils.getUserId();
+        staffPageDto.setUserId(userId);
+        Page<StaffSuggestPageVo> page = new Page<>();
+        page.setSize(staffPageDto.getPageSize());
+        page.setCurrent(staffPageDto.getPageNum());
+        List<StaffSuggestPageVo> staffSuggestPageVoList = staffSuggestService.pageStaffShopSuggest(page,staffPageDto);
+        return R.ok(page.setRecords(staffSuggestPageVoList));
+    }
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/StaffUseSuggestDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/StaffUseSuggestDto.java
new file mode 100644
index 0000000..1857fd7
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/StaffUseSuggestDto.java
@@ -0,0 +1,20 @@
+package com.ruoyi.system.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.StaffBaseDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author jqs34
+ * @version 1.0
+ * @classname StaffUseSuggestDto
+ * @description: TODO
+ * @date 2023 2023/7/16 12:16
+ */
+@Data
+public class StaffUseSuggestDto extends StaffBaseDto {
+
+    @ApiModelProperty(value = "建议内容")
+    private String suggestContent;
+
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/StaffSuggest.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/StaffSuggest.java
index 0a802b5..2b2f842 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/StaffSuggest.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/config/StaffSuggest.java
@@ -52,7 +52,7 @@
      * 创建人id
      */
     @TableField("create_user_id")
-    private Integer createUserId;
+    private Long createUserId;
     /**
      * 回复内容
      */
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/StaffSuggestPageVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/StaffSuggestPageVo.java
new file mode 100644
index 0000000..18a875b
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/StaffSuggestPageVo.java
@@ -0,0 +1,29 @@
+package com.ruoyi.system.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author jqs34
+ * @version 1.0
+ * @classname StaffSuggestPageVo
+ * @description: TODO
+ * @date 2023 2023/7/16 12:20
+ */
+@Data
+public class StaffSuggestPageVo {
+
+    @ApiModelProperty(value = "建议内容")
+    private String suggestContent;
+
+    @ApiModelProperty(value = "回复内容")
+    private String replayContent;
+
+    @ApiModelProperty(value = "创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/StaffUserGetVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/StaffUserGetVo.java
new file mode 100644
index 0000000..6f4835c
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/StaffUserGetVo.java
@@ -0,0 +1,33 @@
+package com.ruoyi.system.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author jqs34
+ * @version 1.0
+ * @classname StaffUserGetVo
+ * @description: TODO
+ * @date 2023 2023/7/16 12:05
+ */
+@Data
+public class StaffUserGetVo {
+
+    @ApiModelProperty(value = "用户id")
+    private Long userId;
+
+    @ApiModelProperty(value = "员工名称")
+    private String staffName;
+
+    @ApiModelProperty(value = "员工手机号码")
+    private String staffMobile;
+
+    @ApiModelProperty(value="员工头像")
+    private String staffAvatar;
+
+    @ApiModelProperty(value="员工部门")
+    private String staffDept;
+
+    @ApiModelProperty(value="员工职位")
+    private String staffPost;
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/config/StaffSuggestMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/config/StaffSuggestMapper.java
index 2e8d01f..396b741 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/config/StaffSuggestMapper.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/config/StaffSuggestMapper.java
@@ -2,9 +2,11 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.system.api.domain.dto.StaffPageDto;
 import com.ruoyi.system.domain.dto.MgtStaffSuggestPageDto;
 import com.ruoyi.system.domain.pojo.config.StaffSuggest;
 import com.ruoyi.system.domain.vo.MgtStaffSuggestPageVo;
+import com.ruoyi.system.domain.vo.StaffSuggestPageVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -37,4 +39,13 @@
      * @date 2023/6/11 18:26
      */
     List<MgtStaffSuggestPageVo> pageMgtStaffSuggest(Page page, @Param("param")MgtStaffSuggestPageDto mgtStaffSuggestPageDto);
+
+    /**
+     * @description 分页获取员工建议
+     * @param page
+     * @return List<StaffSuggestPageVo>
+     * @author jqs34
+     * @date 2023/7/16 12:26
+     */
+    List<StaffSuggestPageVo> pageStaffShopSuggest(Page page, @Param("param")StaffPageDto staffPageDto);
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/StaffSuggestService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/StaffSuggestService.java
index f57c00b..8eba9ae 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/StaffSuggestService.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/StaffSuggestService.java
@@ -1,13 +1,16 @@
 package com.ruoyi.system.service.config;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.system.api.domain.dto.StaffPageDto;
 import com.ruoyi.system.domain.dto.MgtReplayStaffSuggestDto;
 import com.ruoyi.system.domain.dto.MgtStaffSuggestPageDto;
 import com.ruoyi.system.domain.dto.MgtTagStaffSuggestDto;
+import com.ruoyi.system.domain.dto.StaffUseSuggestDto;
 import com.ruoyi.system.domain.pojo.config.StaffSuggest;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.system.domain.vo.MgtStaffSuggestPageVo;
 import com.ruoyi.system.domain.vo.MgtStaffSuggestTagVo;
+import com.ruoyi.system.domain.vo.StaffSuggestPageVo;
 
 import java.util.List;
 
@@ -75,4 +78,22 @@
      * @return  Integer
      */
     Integer getUnReplaySuggestVo();
+
+    /**
+    * @description 员工发起建议
+    * @param staffUseSuggestDto
+    * @return void
+    * @author jqs34
+    * @date 2023/7/16 12:18
+    */
+    void staffSuggest(StaffUseSuggestDto staffUseSuggestDto);
+
+    /**
+    * @description 分页获取员工建议
+    * @param page
+    * @return List<StaffSuggestPageVo>
+    * @author jqs34
+    * @date 2023/7/16 12:26
+    */
+    List<StaffSuggestPageVo> pageStaffShopSuggest(Page page, StaffPageDto staffPageDto);
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java
index cda1230..a208a7a 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java
@@ -4,14 +4,17 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.utils.DateUtils;
 import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.system.api.domain.dto.StaffPageDto;
 import com.ruoyi.system.api.domain.poji.config.SysTag;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
 import com.ruoyi.system.domain.dto.MgtReplayStaffSuggestDto;
 import com.ruoyi.system.domain.dto.MgtStaffSuggestPageDto;
 import com.ruoyi.system.domain.dto.MgtTagStaffSuggestDto;
+import com.ruoyi.system.domain.dto.StaffUseSuggestDto;
 import com.ruoyi.system.domain.pojo.config.StaffSuggest;
 import com.ruoyi.system.domain.vo.MgtStaffSuggestPageVo;
 import com.ruoyi.system.domain.vo.MgtStaffSuggestTagVo;
+import com.ruoyi.system.domain.vo.StaffSuggestPageVo;
 import com.ruoyi.system.mapper.config.StaffSuggestMapper;
 import com.ruoyi.system.service.config.StaffSuggestService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -173,4 +176,33 @@
         queryWrapper.eq(StaffSuggest::getReplayFlag,0);
         return this.count(queryWrapper);
     }
+
+    /**
+     * @description 员工发起建议
+     * @param staffUseSuggestDto
+     * @return void
+     * @author jqs34
+     * @date 2023/7/16 12:18
+     */
+    @Override
+    public void staffSuggest(StaffUseSuggestDto staffUseSuggestDto){
+        StaffSuggest staffSuggest = new StaffSuggest();
+        staffSuggest.setDelFlag(0);
+        staffSuggest.setSuggestContent(staffUseSuggestDto.getSuggestContent());
+        staffSuggest.setCreateTime(new Date());
+        staffSuggest.setCreateUserId(staffUseSuggestDto.getUserId());
+        this.saveOrUpdate(staffSuggest);
+    }
+
+    /**
+     * @description 分页获取员工建议
+     * @param page
+     * @return List<StaffSuggestPageVo>
+     * @author jqs34
+     * @date 2023/7/16 12:26
+     */
+    @Override
+    public List<StaffSuggestPageVo> pageStaffShopSuggest(Page page, StaffPageDto staffPageDto){
+        return staffSuggestMapper.pageStaffShopSuggest(page, staffPageDto);
+    }
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/StaffSuggestMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/StaffSuggestMapper.xml
index bc68417..98735e3 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/StaffSuggestMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/StaffSuggestMapper.xml
@@ -52,4 +52,14 @@
             AND tss.replay_time &lt;= #{param.replayEndTime}
         </if>
     </select>
+
+    <select id="pageMerShopSuggest" resultType="com.ruoyi.shop.domain.vo.MerShopSuggestVo">
+        SELECT
+            suggest_content suggestContent,
+            replay_content replayContent,
+            create_time createTime
+        FROM
+            t_staff_suggest
+        WHERE del_flag = 0 AND create_user_id = #{param.userId}
+    </select>
 </mapper>

--
Gitblit v1.7.1