From 431dde90aa20f7652092fc0bfa9e6a1a28b06b9f Mon Sep 17 00:00:00 2001 From: jiangqs <343695869@qq.com> Date: 星期日, 06 八月 2023 12:41:23 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/HongRuiTang --- ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java | 217 ++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 155 insertions(+), 62 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 f8f5bc9..7bbb6ba 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 @@ -6,6 +6,7 @@ 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.pojo.task.MemberTask; import com.ruoyi.shop.domain.pojo.task.MemberTaskRecord; @@ -15,6 +16,9 @@ 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.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; @@ -41,6 +45,11 @@ @Resource private RemoteMemberService remoteMemberService; + + @Resource + private TaskFileService taskFileService; + + /** * * @param page @@ -49,19 +58,7 @@ */ @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; - for(MerMemberTaskPageVo merMemberTaskPageVo : merMemberTaskPageVoList){ - taskDate = merMemberTaskPageVo.getTaskDate(); - if(today.equals(taskDate)){ - merMemberTaskPageVo.setTodayFlag(1); - }else{ - merMemberTaskPageVo.setTodayFlag(0); - } - } - } return merMemberTaskPageVoList; } @@ -72,83 +69,179 @@ @Override public void createMemberTask(MerCreateMemberTaskDto merCreateMemberTaskDto){ MemberTask memberTask = new MemberTask(); - String taskId = IdUtils.fastUUID(); + 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.setNextTaskTime(merCreateMemberTaskDto.getTaskDate()); + remoteMemberService.changeMemberTotal(memberTotalChangeDto); } /** - * + * @description 会员任务跟进 + * @author jqs + * @date 2023/7/4 17:16 * @param merFollowMemberTaskDto + * @return void */ @Override - public void followMemberTask(MerFollowMemberTaskDto merFollowMemberTaskDto){ - MemberTaskRecord memberTaskRecord = new MemberTaskRecord(); + public void followMemberTask(MerFollowMemberTaskDto merFollowMemberTaskDto) { + // 创建会员任务记录对象 + MemberTaskRecord memberTaskRecord; + // 获取旧的会员任务 MemberTask oldMemberTask = this.getById(merFollowMemberTaskDto.getTaskId()); - memberTaskRecord.setTaskId(merFollowMemberTaskDto.getTaskId()); - memberTaskRecord.setDelFlag(0); - memberTaskRecord.setUserId(merFollowMemberTaskDto.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); + oldMemberTask.setTaskStatus(2); + this.saveOrUpdate(oldMemberTask); + // 判断跟进类型 + if (merFollowMemberTaskDto.getFollowType() == 1) { + // 获取跟进电话列表 + List<MerFollowPhoneDto> followPhone = merFollowMemberTaskDto.getFollowPhone(); + // 判断跟进电话列表是否为空 + if (followPhone != null && !followPhone.isEmpty()) { + // 遍历跟进电话列表 + for (MerFollowPhoneDto followPhoneDto : followPhone) { + // 创建新的会员任务记录 + memberTaskRecord = new MemberTaskRecord(); + memberTaskRecord.setTaskId(merFollowMemberTaskDto.getTaskId()); + 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()); + // 保存或更新会员任务记录 + memberTaskRecordService.saveOrUpdate(memberTaskRecord); + } + } + } else { + // 创建新的会员任务记录 + memberTaskRecord = new MemberTaskRecord(); + memberTaskRecord.setTaskId(merFollowMemberTaskDto.getTaskId()); + 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; + 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); + taskFileService.saveOrUpdate(taskFile); + } + } + // 判断视频是否为空,并处理 + if (StringUtils.isNotBlank(video)) { + strArr = video.split(","); + for (String str : strArr) { + taskFile = new TaskFile(); + taskFile.setDelFlag(0); + taskFile.setFollowId(memberTaskRecord.getId()); + taskFile.setFollowFrom(2); + taskFile.setFileUrl(str); + taskFile.setFileType(2); + taskFileService.saveOrUpdate(taskFile); + } + } + // 判断音频是否为空,并处理 + if (StringUtils.isNotBlank(audio)) { + strArr = audio.split(","); + for (String str : strArr) { + taskFile = new TaskFile(); + taskFile.setDelFlag(0); + taskFile.setFollowId(memberTaskRecord.getId()); + taskFile.setFollowFrom(2); + taskFile.setFileUrl(str); + taskFile.setFileType(3); + taskFileService.saveOrUpdate(taskFile); + } } } - 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); - } - } - if(StringUtils.isNotBlank(merFollowMemberTaskDto.getNextTaskDate())){ + // 判断下一个任务日期是否为空,并处理 + if (StringUtils.isNotBlank(merFollowMemberTaskDto.getNextTaskDate())) { + String nowTimeStr = DateUtils.getDate(); MemberTask memberTask = new MemberTask(); - String taskId = IdUtils.fastUUID(); + String taskId = IdUtils.simpleUUID(); memberTask.setTaskId(taskId); memberTask.setDelFlag(0); memberTask.setShopId(oldMemberTask.getShopId()); memberTask.setUserId(oldMemberTask.getUserId()); memberTask.setTaskDate(merFollowMemberTaskDto.getNextTaskDate()); memberTask.setTaskContent(merFollowMemberTaskDto.getNextTaskContent()); - memberTask.setTaskStatus(2); + memberTask.setEmergencyState(merFollowMemberTaskDto.getEmergencyState()); + 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.setNextTaskTime(merFollowMemberTaskDto.getNextTaskDate()); + remoteMemberService.changeMemberTotal(memberTotalChangeDto); } } + + /** + * @description 获取进行中任务数 + * @author jqs + * @date 2023/6/26 13:45 + * @param shopId + * @return Integer + */ + @Override + public Integer getMemberIngTotal(Long shopId) { + return memberTaskMapper.getMemberIngTotal(shopId); + } + + + + /** + * @description 获取最近任务 + * @author jqs + * @date 2023/6/29 18:25 + * @param + * @return MemberTaskSimpleVo + */ + @Override + public MemberTaskSimpleVo getLastMemberTask(Long userId){ + return memberTaskMapper.getLastMemberTask(userId); + } + + } -- Gitblit v1.7.1