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/MemberTaskServiceImpl.java |   92 ++++++++++++++++++++++++++++++----------------
 1 files changed, 60 insertions(+), 32 deletions(-)

diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java
index 5d26bdc..41b8142 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java
@@ -4,10 +4,7 @@
 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.MerCreateMemberTaskDto;
-import com.ruoyi.shop.domain.dto.MerFollowMemberTaskDto;
-import com.ruoyi.shop.domain.dto.MerFollowPhoneDto;
-import com.ruoyi.shop.domain.dto.MerMemberTaskPageDto;
+import com.ruoyi.shop.domain.dto.*;
 import com.ruoyi.shop.domain.pojo.task.MemberTask;
 import com.ruoyi.shop.domain.pojo.task.MemberTaskRecord;
 import com.ruoyi.shop.domain.pojo.task.TaskFile;
@@ -17,11 +14,13 @@
 import com.ruoyi.shop.service.task.MemberTaskService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.shop.service.task.TaskFileService;
+import com.ruoyi.system.api.domain.dto.MemberTotalChangeDto;
 import com.ruoyi.system.api.domain.vo.MemberTaskSimpleVo;
 import com.ruoyi.system.api.service.RemoteMemberService;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -57,16 +56,13 @@
      */
     @Override
     public List<MerMemberTaskPageVo> pageMerMemberTask(Page page, MerMemberTaskPageDto merMemberTaskPageDto){
-        String today = DateUtils.parseDateToStr("YYYY-MM-DD",new Date());
         List<MerMemberTaskPageVo> merMemberTaskPageVoList = memberTaskMapper.pageMerMemberTask(page, merMemberTaskPageDto);
-        if(merMemberTaskPageVoList!=null&&!merMemberTaskPageVoList.isEmpty()){
-            String taskDate;
+        List<String> dealContent = new ArrayList<>();
+        if(merMemberTaskPageVoList!=null&&!merMemberTaskPageVoList.isEmpty() ){
             for(MerMemberTaskPageVo merMemberTaskPageVo : merMemberTaskPageVoList){
-                taskDate = merMemberTaskPageVo.getTaskDate();
-                if(today.equals(taskDate)){
-                    merMemberTaskPageVo.setTodayFlag(1);
-                }else{
-                    merMemberTaskPageVo.setTodayFlag(0);
+                dealContent = memberTaskMapper.listDealContent(merMemberTaskPageVo.getTaskId());
+                if(dealContent!=null&&!dealContent.isEmpty()){
+                    merMemberTaskPageVo.setDealContent(dealContent);
                 }
             }
         }
@@ -81,15 +77,29 @@
     public void createMemberTask(MerCreateMemberTaskDto merCreateMemberTaskDto){
         MemberTask memberTask = new MemberTask();
         String taskId = IdUtils.simpleUUID();
+        String nowTimeStr = DateUtils.getDate();
         memberTask.setTaskId(taskId);
         memberTask.setDelFlag(0);
         memberTask.setTaskStatus(0);
+        int i = merCreateMemberTaskDto.getTaskDate().compareTo(nowTimeStr);
+        if(i>0){
+            memberTask.setTaskStatus(0);
+        }else if(i==0){
+            memberTask.setTaskStatus(1);
+        }else{
+            memberTask.setTaskStatus(3);
+        }
+        memberTask.setEmergencyState(merCreateMemberTaskDto.getEmergencyState());
         memberTask.setShopId(merCreateMemberTaskDto.getShopId());
         memberTask.setUserId(merCreateMemberTaskDto.getMemberUserId());
         memberTask.setTaskDate(merCreateMemberTaskDto.getTaskDate());
         memberTask.setTaskContent(merCreateMemberTaskDto.getTaskContent());
         memberTask.setCreateTime(new Date());
         this.saveOrUpdate(memberTask);
+        MemberTotalChangeDto memberTotalChangeDto = new MemberTotalChangeDto();
+        memberTotalChangeDto.setUserId(merCreateMemberTaskDto.getMemberUserId());
+        memberTotalChangeDto.setNextTaskTime(merCreateMemberTaskDto.getTaskDate());
+        remoteMemberService.changeMemberTotal(memberTotalChangeDto);
     }
 
     /**
@@ -121,6 +131,7 @@
                     memberTaskRecord.setDelFlag(0);
                     memberTaskRecord.setUserId(merFollowMemberTaskDto.getUserId());
                     memberTaskRecord.setFollowType(merFollowMemberTaskDto.getFollowType());
+                    memberTaskRecord.setCustomeFollowType(merFollowMemberTaskDto.getCustomeFollowType());
                     memberTaskRecord.setCallPhone(merFollowMemberTaskDto.getCallPhone());
                     memberTaskRecord.setFollowContent(followPhoneDto.getFollowContent());
                     memberTaskRecord.setCallTime(followPhoneDto.getCallTime());
@@ -135,58 +146,64 @@
             memberTaskRecord.setDelFlag(0);
             memberTaskRecord.setUserId(merFollowMemberTaskDto.getUserId());
             memberTaskRecord.setFollowType(merFollowMemberTaskDto.getFollowType());
+            memberTaskRecord.setCustomeFollowType(merFollowMemberTaskDto.getCustomeFollowType());
             memberTaskRecord.setFollowContent(merFollowMemberTaskDto.getFollowContent());
             memberTaskRecord.setCreateTime(new Date());
             // 保存或更新会员任务记录
             memberTaskRecordService.saveOrUpdate(memberTaskRecord);
             // 获取图片、视频和音频
-            String picture = merFollowMemberTaskDto.getPicture();
-            String video = merFollowMemberTaskDto.getVideo();
-            String audio = merFollowMemberTaskDto.getAudio();
-            String[] strArr;
+            List<FileDto> picture = merFollowMemberTaskDto.getPicture();
+            List<FileDto> video = merFollowMemberTaskDto.getVideo();
+            List<FileDto> audio = merFollowMemberTaskDto.getAudio();
             TaskFile taskFile;
+            List<TaskFile> taskFileList = new ArrayList<>();
             // 判断图片是否为空,并处理
-            if (StringUtils.isNotBlank(picture)) {
-                strArr = picture.split(",");
-                for (String str : strArr) {
+            if (picture!=null&&!picture.isEmpty()) {
+                for (FileDto fileDto : picture) {
                     taskFile = new TaskFile();
                     taskFile.setDelFlag(0);
                     taskFile.setFollowId(memberTaskRecord.getId());
                     taskFile.setFollowFrom(2);
-                    taskFile.setFileUrl(str);
+                    taskFile.setFileName(fileDto.getFileName());
+                    taskFile.setFileUrl(fileDto.getFileUrl());
                     taskFile.setFileType(1);
-                    taskFileService.saveOrUpdate(taskFile);
+                    taskFileList.add(taskFile);
                 }
             }
             // 判断视频是否为空,并处理
-            if (StringUtils.isNotBlank(video)) {
-                strArr = picture.split(",");
-                for (String str : strArr) {
+            if (video!=null&&!video.isEmpty()) {
+                for (FileDto fileDto : video) {
                     taskFile = new TaskFile();
                     taskFile.setDelFlag(0);
                     taskFile.setFollowId(memberTaskRecord.getId());
                     taskFile.setFollowFrom(2);
-                    taskFile.setFileUrl(str);
+                    taskFile.setFileName(fileDto.getFileName());
+                    taskFile.setFileUrl(fileDto.getFileUrl());
                     taskFile.setFileType(2);
-                    taskFileService.saveOrUpdate(taskFile);
+                    taskFileList.add(taskFile);
                 }
             }
             // 判断音频是否为空,并处理
-            if (StringUtils.isNotBlank(audio)) {
-                strArr = picture.split(",");
-                for (String str : strArr) {
+            if (audio!=null&&!audio.isEmpty()) {
+                for (FileDto fileDto : audio) {
                     taskFile = new TaskFile();
                     taskFile.setDelFlag(0);
                     taskFile.setFollowId(memberTaskRecord.getId());
                     taskFile.setFollowFrom(2);
-                    taskFile.setFileUrl(str);
+                    taskFile.setFileName(fileDto.getFileName());
+                    taskFile.setFileUrl(fileDto.getFileUrl());
                     taskFile.setFileType(3);
-                    taskFileService.saveOrUpdate(taskFile);
+                    taskFileList.add(taskFile);
                 }
             }
+            if(taskFileList!=null&&!taskFileList.isEmpty()){
+                taskFileService.saveBatch(taskFileList);
+            }
+
         }
         // 判断下一个任务日期是否为空,并处理
         if (StringUtils.isNotBlank(merFollowMemberTaskDto.getNextTaskDate())) {
+            String nowTimeStr = DateUtils.getDate();
             MemberTask memberTask = new MemberTask();
             String taskId = IdUtils.simpleUUID();
             memberTask.setTaskId(taskId);
@@ -195,9 +212,20 @@
             memberTask.setUserId(oldMemberTask.getUserId());
             memberTask.setTaskDate(merFollowMemberTaskDto.getNextTaskDate());
             memberTask.setTaskContent(merFollowMemberTaskDto.getNextTaskContent());
-            memberTask.setTaskStatus(2);
+            int i = merFollowMemberTaskDto.getNextTaskDate().compareTo(nowTimeStr);
+            if(i>0){
+                memberTask.setTaskStatus(0);
+            }else if(i==0){
+                memberTask.setTaskStatus(1);
+            }else{
+                memberTask.setTaskStatus(3);
+            }
             memberTask.setCreateTime(new Date());
             this.saveOrUpdate(memberTask);
+            MemberTotalChangeDto memberTotalChangeDto = new MemberTotalChangeDto();
+            memberTotalChangeDto.setUserId(oldMemberTask.getUserId());
+            memberTotalChangeDto.setNextTaskTime(merFollowMemberTaskDto.getNextTaskDate());
+            remoteMemberService.changeMemberTotal(memberTotalChangeDto);
         }
     }
 

--
Gitblit v1.7.1