From ea1a62ba6484d6c6cb1ca67dcea938a95ba18fc6 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 26 五月 2025 18:26:26 +0800
Subject: [PATCH] 新增加用户端接口

---
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/AgencyTaskServiceImpl.java |  180 ++++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 120 insertions(+), 60 deletions(-)

diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/AgencyTaskServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/AgencyTaskServiceImpl.java
index fe6a4b8..af7a9e2 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/AgencyTaskServiceImpl.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/AgencyTaskServiceImpl.java
@@ -5,10 +5,9 @@
 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.MerAgencyTaskPageDto;
-import com.ruoyi.shop.domain.dto.MerCreateAgencyTaskDto;
-import com.ruoyi.shop.domain.dto.MerFollowAgencyTaskDto;
+import com.ruoyi.shop.domain.dto.*;
 import com.ruoyi.shop.domain.pojo.task.*;
+import com.ruoyi.shop.domain.vo.MerAgencySimpleTaskRecordPageVo;
 import com.ruoyi.shop.domain.vo.MerAgencyTaskPageVo;
 import com.ruoyi.shop.mapper.task.AgencyTaskMapper;
 import com.ruoyi.shop.service.task.AgencyTaskRecordService;
@@ -17,6 +16,7 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -47,10 +47,23 @@
      */
     @Override
     public List<MerAgencyTaskPageVo> pageMerAgencyTask(Page page, MerAgencyTaskPageDto merAgencyTaskPageDto){
-        String nowDay = DateUtils.parseDateToStr("YYYY-MM-dd",new Date());
-        merAgencyTaskPageDto.setNowDay(nowDay);
+        /*String nowDay = DateUtils.parseDateToStr("YYYY-MM-dd",new Date());
+        merAgencyTaskPageDto.setNowDay(nowDay);*/
         List<MerAgencyTaskPageVo> merAgencyTaskPageVoList = agencyTaskMapper.pageMerAgencyTask(page, merAgencyTaskPageDto);
         return merAgencyTaskPageVoList;
+    }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/8/1 18:16
+     * @param page
+     * @param merAgencyTaskPageDto
+     * @return  List<MerAgencySimpleTaskRecordPageVo>
+     */
+    @Override
+    public List<MerAgencySimpleTaskRecordPageVo>pageMerAgencySimpleTaskRecord(Page page, MerAgencyTaskPageDto merAgencyTaskPageDto){
+        return agencyTaskMapper.pageMerAgencySimpleTaskRecord(page, merAgencyTaskPageDto);
     }
 
     /**
@@ -62,13 +75,22 @@
 
         AgencyTask agencyTask = new AgencyTask();
         String taskId = IdUtils.simpleUUID();
+        String nowTimeStr = DateUtils.getDate();
         agencyTask.setTaskId(taskId);
         agencyTask.setDelFlag(0);
-        agencyTask.setTaskStatus(0);
+        int i = merCreateAgencyTaskDto.getTaskDate().compareTo(nowTimeStr);
+        if(i>0){
+            agencyTask.setTaskStatus(0);
+        }else if(i==0){
+            agencyTask.setTaskStatus(1);
+        }else{
+            agencyTask.setTaskStatus(3);
+        }
         agencyTask.setShopId(merCreateAgencyTaskDto.getShopId());
         agencyTask.setAgencyId(merCreateAgencyTaskDto.getAgencyId());
         agencyTask.setTaskDate(merCreateAgencyTaskDto.getTaskDate());
         agencyTask.setTaskContent(merCreateAgencyTaskDto.getTaskContent());
+        agencyTask.setEmergencyState(merCreateAgencyTaskDto.getEmergencyState());
         agencyTask.setCreateTime(new Date());
         this.saveOrUpdate(agencyTask);
     }
@@ -79,60 +101,91 @@
      */
     @Override
     public void followAgencyTask(MerFollowAgencyTaskDto merFollowAgencyTaskDto){
-        AgencyTaskRecord agencyTaskRecord = new AgencyTaskRecord();
+        AgencyTaskRecord agencyTaskRecord;
         AgencyTask oldAgencyTask = this.getById(merFollowAgencyTaskDto.getTaskId());
-        //更新任务
-        agencyTaskRecord.setTaskId(merFollowAgencyTaskDto.getTaskId());
-        agencyTaskRecord.setDelFlag(0);
-        agencyTaskRecord.setUserId(merFollowAgencyTaskDto.getUserId());
-        agencyTaskRecord.setFollowType(merFollowAgencyTaskDto.getFollowType());
-        agencyTaskRecord.setCallPhone(merFollowAgencyTaskDto.getCallPhone());
-        agencyTaskRecord.setCallTime(merFollowAgencyTaskDto.getCallTime());
-        agencyTaskRecord.setFollowContent(merFollowAgencyTaskDto.getFollowContent());
-        agencyTaskRecord.setCreateTime(new Date());
-        agencyTaskRecordService.saveOrUpdate(agencyTaskRecord);
-        //创建任务详情文件
-        String picture = merFollowAgencyTaskDto.getPicture();
-        String video = merFollowAgencyTaskDto.getVideo();
-        String audio = merFollowAgencyTaskDto.getAudio();
-        String[] strArr;
-        TaskFile taskFile;
-        if(StringUtils.isNotBlank(picture)){
-            strArr = picture.split(",");
-            for(String str : strArr){
-                taskFile = new TaskFile();
-                taskFile.setDelFlag(0);
-                taskFile.setFollowId(agencyTaskRecord.getId());
-                taskFile.setFollowFrom(2);
-                taskFile.setFileUrl(str);
-                taskFile.setFileType(1);
-                taskFileService.saveOrUpdate(taskFile);
+        oldAgencyTask.setTaskStatus(2);
+        this.saveOrUpdate(oldAgencyTask);
+        if(merFollowAgencyTaskDto.getFollowType()==1){
+            // 获取跟进电话列表
+            List<MerFollowPhoneDto> followPhone = merFollowAgencyTaskDto.getFollowPhone();
+            // 判断跟进电话列表是否为空
+            if (followPhone != null && !followPhone.isEmpty()) {
+                // 遍历跟进电话列表
+                for (MerFollowPhoneDto followPhoneDto : followPhone) {
+                    // 创建新的会员任务记录
+                    agencyTaskRecord = new AgencyTaskRecord();
+                    //更新任务
+                    agencyTaskRecord.setTaskId(merFollowAgencyTaskDto.getTaskId());
+                    agencyTaskRecord.setDelFlag(0);
+                    agencyTaskRecord.setUserId(merFollowAgencyTaskDto.getUserId());
+                    agencyTaskRecord.setFollowType(merFollowAgencyTaskDto.getFollowType());
+                    agencyTaskRecord.setCustomeFollowType(merFollowAgencyTaskDto.getCustomeFollowType());
+                    agencyTaskRecord.setCallPhone(merFollowAgencyTaskDto.getCallPhone());
+                    agencyTaskRecord.setCallTime(followPhoneDto.getCallTime());
+                    agencyTaskRecord.setFollowContent(followPhoneDto.getFollowContent());
+                    agencyTaskRecord.setCreateTime(new Date());
+                    agencyTaskRecordService.saveOrUpdate(agencyTaskRecord);
+                }
             }
-        }
-        if(StringUtils.isNotBlank(video)){
-            strArr = picture.split(",");
-            for(String str : strArr){
-                taskFile = new TaskFile();
-                taskFile.setDelFlag(0);
-                taskFile.setFollowId(agencyTaskRecord.getId());
-                taskFile.setFollowFrom(2);
-                taskFile.setFileUrl(str);
-                taskFile.setFileType(2);
-                taskFileService.saveOrUpdate(taskFile);
+        }else{
+            agencyTaskRecord = new AgencyTaskRecord();
+            agencyTaskRecord.setTaskId(merFollowAgencyTaskDto.getTaskId());
+            agencyTaskRecord.setDelFlag(0);
+            agencyTaskRecord.setUserId(merFollowAgencyTaskDto.getUserId());
+            agencyTaskRecord.setFollowType(merFollowAgencyTaskDto.getFollowType());
+            agencyTaskRecord.setCustomeFollowType(merFollowAgencyTaskDto.getCustomeFollowType());
+            agencyTaskRecord.setFollowContent(merFollowAgencyTaskDto.getFollowContent());
+            agencyTaskRecord.setCreateTime(new Date());
+            agencyTaskRecordService.saveOrUpdate(agencyTaskRecord);
+            //创建任务详情文件
+            List<FileDto> picture = merFollowAgencyTaskDto.getPicture();
+            List<FileDto> video = merFollowAgencyTaskDto.getVideo();
+            List<FileDto> audio = merFollowAgencyTaskDto.getAudio();
+            TaskFile taskFile;
+            List<TaskFile> taskFileList = new ArrayList<>();
+            // 判断图片是否为空,并处理
+            if (picture!=null&&!picture.isEmpty()) {
+                for (FileDto fileDto : picture) {
+                    taskFile = new TaskFile();
+                    taskFile.setDelFlag(0);
+                    taskFile.setFollowId(agencyTaskRecord.getId());
+                    taskFile.setFollowFrom(1);
+                    taskFile.setFileName(fileDto.getFileName());
+                    taskFile.setFileUrl(fileDto.getFileUrl());
+                    taskFile.setFileType(1);
+                    taskFileList.add(taskFile);
+                }
+            }
+            // 判断视频是否为空,并处理
+            if (video!=null&&!video.isEmpty()) {
+                for (FileDto fileDto : video) {
+                    taskFile = new TaskFile();
+                    taskFile.setDelFlag(0);
+                    taskFile.setFollowId(agencyTaskRecord.getId());
+                    taskFile.setFollowFrom(1);
+                    taskFile.setFileName(fileDto.getFileName());
+                    taskFile.setFileUrl(fileDto.getFileUrl());
+                    taskFile.setFileType(2);
+                    taskFileList.add(taskFile);
+                }
+            }
+            // 判断音频是否为空,并处理
+            if (audio!=null&&!audio.isEmpty()) {
+                for (FileDto fileDto : audio) {
+                    taskFile = new TaskFile();
+                    taskFile.setDelFlag(0);
+                    taskFile.setFollowId(agencyTaskRecord.getId());
+                    taskFile.setFollowFrom(1);
+                    taskFile.setFileName(fileDto.getFileName());
+                    taskFile.setFileUrl(fileDto.getFileUrl());
+                    taskFile.setFileType(3);
+                    taskFileList.add(taskFile);
+                }
+            }
+            if(taskFileList!=null&&!taskFileList.isEmpty()){
+                taskFileService.saveBatch(taskFileList);
+            }
 
-            }
-        }
-        if(StringUtils.isNotBlank(audio)){
-            strArr = picture.split(",");
-            for(String str : strArr){
-                taskFile = new TaskFile();
-                taskFile.setDelFlag(0);
-                taskFile.setFollowId(agencyTaskRecord.getId());
-                taskFile.setFollowFrom(2);
-                taskFile.setFileUrl(str);
-                taskFile.setFileType(3);
-                taskFileService.saveOrUpdate(taskFile);
-            }
         }
         //创建新任务
         if(StringUtils.isNotBlank(merFollowAgencyTaskDto.getNextTaskDate())){
@@ -144,11 +197,18 @@
             agencyTask.setAgencyId(oldAgencyTask.getAgencyId());
             agencyTask.setTaskDate(merFollowAgencyTaskDto.getNextTaskDate());
             agencyTask.setTaskContent(merFollowAgencyTaskDto.getNextTaskContent());
-            agencyTask.setTaskStatus(2);
+            agencyTask.setEmergencyState(merFollowAgencyTaskDto.getEmergencyState());
+            String nowTimeStr = DateUtils.getDate();
+            int i = merFollowAgencyTaskDto.getNextTaskDate().compareTo(nowTimeStr);
+            if(i>0){
+                agencyTask.setTaskStatus(0);
+            }else if(i==0){
+                agencyTask.setTaskStatus(1);
+            }else{
+                agencyTask.setTaskStatus(3);
+            }
             agencyTask.setCreateTime(new Date());
             this.saveOrUpdate(agencyTask);
         }
-
-
     }
 }

--
Gitblit v1.7.1