jiangqs
2023-05-06 43d9975c99cb947b4602f05bc2e513a20de92c38
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java
@@ -1,10 +1,27 @@
package com.ruoyi.shop.service.impl.task;
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.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.MerMemberTaskPageDto;
import com.ruoyi.shop.domain.pojo.task.MemberTask;
import com.ruoyi.shop.domain.pojo.task.MemberTaskRecord;
import com.ruoyi.shop.domain.pojo.task.TaskFile;
import com.ruoyi.shop.domain.vo.MerMemberTaskPageVo;
import com.ruoyi.shop.mapper.task.MemberTaskMapper;
import com.ruoyi.shop.service.task.MemberTaskRecordService;
import com.ruoyi.shop.service.task.MemberTaskService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.api.RemoteMemberService;
import com.ruoyi.system.api.domain.poji.member.Member;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
 * <p>
@@ -17,4 +34,119 @@
@Service
public class MemberTaskServiceImpl extends ServiceImpl<MemberTaskMapper, MemberTask> implements MemberTaskService {
    @Resource
    private MemberTaskMapper memberTaskMapper;
    @Resource
    private MemberTaskRecordService memberTaskRecordService;
    @Resource
    private RemoteMemberService remoteMemberService;
    /**
     *
     * @param page
     * @param merMemberTaskPageDto
     * @return
     */
    @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()){
            Date taskDate;
            for(MerMemberTaskPageVo merMemberTaskPageVo : merMemberTaskPageVoList){
                taskDate = merMemberTaskPageVo.getTaskDate();
                if(today.equals(DateUtils.parseDateToStr("YYYY-MM-DD",taskDate))){
                    merMemberTaskPageVo.setTodayFlag(1);
                }else{
                    merMemberTaskPageVo.setTodayFlag(0);
                }
            }
        }
        return merMemberTaskPageVoList;
    }
    /**
     *
     * @param merCreateMemberTaskDto
     */
    @Override
    public void createMemberTask(MerCreateMemberTaskDto merCreateMemberTaskDto){
        MemberTask memberTask = new MemberTask();
        String taskId = IdUtils.fastUUID();
        memberTask.setTaskId(taskId);
        memberTask.setDelFlag(0);
        memberTask.setShopId(merCreateMemberTaskDto.getShopId());
        memberTask.setUserId(merCreateMemberTaskDto.getMemberUserId());
        memberTask.setTaskDate(merCreateMemberTaskDto.getTaskDate());
        memberTask.setTaskContent(merCreateMemberTaskDto.getTaskContent());
        memberTask.setCreateTime(new Date());
        this.saveOrUpdate(memberTask);
    }
    /**
     *
     * @param merFollowMemberTaskDto
     */
    @Override
    public void followMemberTask(MerFollowMemberTaskDto merFollowMemberTaskDto){
        MemberTaskRecord memberTaskRecord = new MemberTaskRecord();
        MemberTask oldMemberTask = this.getById(merFollowMemberTaskDto.getTaskId());
        memberTaskRecord.setTaskId(merFollowMemberTaskDto.getTaskId());
        memberTaskRecord.setDelFlag(0);
        memberTaskRecord.setUserId(oldMemberTask.getUserId());
        memberTaskRecord.setFollowType(merFollowMemberTaskDto.getFollowType());
        memberTaskRecord.setCallPhone(merFollowMemberTaskDto.getCallPhone());
        memberTaskRecord.setCallTime(merFollowMemberTaskDto.getCallTime());
        memberTaskRecordService.saveOrUpdate(memberTaskRecord);
        String picture = merFollowMemberTaskDto.getPicture();
        String video = merFollowMemberTaskDto.getVideo();
        String audio = merFollowMemberTaskDto.getAudio();
        String[] strArr;
        TaskFile taskFile;
        if(StringUtils.isNotBlank(picture)){
            strArr = picture.split(",");
            for(String str : strArr){
                taskFile = new TaskFile();
                taskFile.setDelFlag(0);
                taskFile.setFollowId(memberTaskRecord.getId());
                taskFile.setFollowFrom(2);
                taskFile.setFileUrl(str);
                taskFile.setFileType(1);
            }
        }
        if(StringUtils.isNotBlank(video)){
            strArr = picture.split(",");
            for(String str : strArr){
                taskFile = new TaskFile();
                taskFile.setDelFlag(0);
                taskFile.setFollowId(memberTaskRecord.getId());
                taskFile.setFollowFrom(2);
                taskFile.setFileUrl(str);
                taskFile.setFileType(2);
            }
        }
        if(StringUtils.isNotBlank(audio)){
            strArr = picture.split(",");
            for(String str : strArr){
                taskFile = new TaskFile();
                taskFile.setDelFlag(0);
                taskFile.setFollowId(memberTaskRecord.getId());
                taskFile.setFollowFrom(2);
                taskFile.setFileUrl(str);
                taskFile.setFileType(3);
            }
        }
        MemberTask memberTask = new MemberTask();
        String taskId = IdUtils.fastUUID();
        memberTask.setTaskId(taskId);
        memberTask.setDelFlag(0);
        memberTask.setShopId(oldMemberTask.getShopId());
        memberTask.setUserId(oldMemberTask.getUserId());
        memberTask.setTaskDate(merFollowMemberTaskDto.getNextTaskDate());
        memberTask.setTaskContent(merFollowMemberTaskDto.getNextTaskContent());
        memberTask.setCreateTime(new Date());
        this.saveOrUpdate(memberTask);
    }
}