Browse Source

任务新增

yusm 1 year ago
parent
commit
3b9480626c
15 changed files with 264 additions and 5 deletions
  1. 6 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/ContactsController.java
  2. 14 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/TaskController.java
  3. 21 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/TaskRepeatDesignController.java
  4. 1 1
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/Task.java
  5. 60 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/TaskRepeatDesign.java
  6. 14 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/dto/TaskDto.java
  7. 2 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/vo/ContactsVo.java
  8. 16 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/mapper/TaskRepeatDesignMapper.java
  9. 3 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/ContactsService.java
  10. 16 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/TaskRepeatDesignService.java
  11. 2 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/TaskService.java
  12. 12 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/ContactsServiceImpl.java
  13. 20 0
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/TaskRepeatDesignServiceImpl.java
  14. 58 4
      fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/TaskServiceImpl.java
  15. 19 0
      fhKeeper/formulahousekeeper/management-crm/src/main/resources/mapper/TaskRepeatDesignMapper.xml

+ 6 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/ContactsController.java

@@ -2,6 +2,7 @@ package com.management.platform.controller;
 
 
 import com.management.platform.entity.Contacts;
+import com.management.platform.entity.Custom;
 import com.management.platform.service.ContactsService;
 import com.management.platform.util.HttpRespMsg;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -42,5 +43,10 @@ public class ContactsController {
         return contactsService.pageContacts(pageIndex,pageSize,customName,name,phone,ownerName,request);
     }
 
+    @RequestMapping("selectContactsByCustomId")
+    public HttpRespMsg selectContactsByCustomId(@RequestBody Custom custom){
+        return contactsService.selectContactsByCustomId(custom);
+    }
+
 }
 

+ 14 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/TaskController.java

@@ -9,14 +9,17 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.IPage;
 import com.management.platform.entity.*;
+import com.management.platform.entity.dto.TaskDto;
 import com.management.platform.entity.vo.SysRichFunction;
 import com.management.platform.mapper.*;
 import com.management.platform.service.*;
 import com.management.platform.util.HttpRespMsg;
 import com.management.platform.util.MessageUtils;
+import com.taobao.api.internal.mapping.ApiField;
 import org.assertj.core.util.Lists;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
@@ -42,6 +45,17 @@ import java.util.stream.Collectors;
 @RestController
 @RequestMapping("/task")
 public class TaskController {
+    @Resource
+    private HttpServletRequest request;
+    @Resource
+    private TaskService taskService;
+
+
+
+    @RequestMapping("addTask")
+    public HttpRespMsg addTask(@RequestBody TaskDto taskDto){
+        return taskService.addTask(taskDto, request);
+    }
 
 }
 

+ 21 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/TaskRepeatDesignController.java

@@ -0,0 +1,21 @@
+package com.management.platform.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author Seyason
+ * @since 2024-03-06
+ */
+@RestController
+@RequestMapping("/task-repeat-design")
+public class TaskRepeatDesignController {
+
+}
+

+ 1 - 1
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/Task.java

@@ -107,7 +107,7 @@ public class Task extends Model<Task> {
     private Integer repeat;
 
     /**
-     * 重复类型 :每天:0、每周:1、每月:2、自定义周期:4、自定义日期:4五种
+     * 重复类型 :每天:0、每周:1、每月:2、自定义周期:3、自定义日期:4       五种
      */
     @TableField("repeat_type")
     private Integer repeatType;

+ 60 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/TaskRepeatDesign.java

@@ -0,0 +1,60 @@
+package com.management.platform.entity;
+
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author Seyason
+ * @since 2024-03-06
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class TaskRepeatDesign extends Model<TaskRepeatDesign> {
+
+    private static final long serialVersionUID=1L;
+
+    @TableId("id")
+    private Integer id;
+
+    /**
+     * 任务的id
+     */
+    @TableField("task_id")
+    private Integer taskId;
+
+    /**
+     * 第几次重复在 ? 天之后    : 保存x1,x2,x3,x4格式
+     */
+    @TableField("day_count")
+    private String dayCount;
+
+    /**
+     * 创建时间
+     */
+    @TableField("create_time")
+    private LocalDateTime createTime;
+
+    /**
+     * 修改时间
+     */
+    @TableField("uptade_time")
+    private LocalDateTime uptadeTime;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}

+ 14 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/dto/TaskDto.java

@@ -0,0 +1,14 @@
+package com.management.platform.entity.dto;
+
+import com.management.platform.entity.Task;
+import com.management.platform.entity.TaskRepeatDesign;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Accessors(chain = true)
+public class TaskDto extends Task {
+    private TaskRepeatDesign taskRepeatDesign;
+}

+ 2 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/vo/ContactsVo.java

@@ -2,8 +2,10 @@ package com.management.platform.entity.vo;
 
 import com.management.platform.entity.Contacts;
 import lombok.Data;
+import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 
+@EqualsAndHashCode(callSuper = true)
 @Data
 @Accessors(chain = true)
 public class ContactsVo extends Contacts {

+ 16 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/mapper/TaskRepeatDesignMapper.java

@@ -0,0 +1,16 @@
+package com.management.platform.mapper;
+
+import com.management.platform.entity.TaskRepeatDesign;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author Seyason
+ * @since 2024-03-06
+ */
+public interface TaskRepeatDesignMapper extends BaseMapper<TaskRepeatDesign> {
+
+}

+ 3 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/ContactsService.java

@@ -2,6 +2,7 @@ package com.management.platform.service;
 
 import com.management.platform.entity.Contacts;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.management.platform.entity.Custom;
 import com.management.platform.entity.vo.ContactsVo;
 import com.management.platform.util.HttpRespMsg;
 
@@ -20,4 +21,6 @@ public interface ContactsService extends IService<Contacts> {
     HttpRespMsg addContacts(Contacts contacts, HttpServletRequest request);
 
     HttpRespMsg pageContacts(Integer pageIndex, Integer pageSize, String customName, String name, String phone, String ownerName, HttpServletRequest request);
+
+    HttpRespMsg selectContactsByCustomId(Custom custom);
 }

+ 16 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/TaskRepeatDesignService.java

@@ -0,0 +1,16 @@
+package com.management.platform.service;
+
+import com.management.platform.entity.TaskRepeatDesign;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author Seyason
+ * @since 2024-03-06
+ */
+public interface TaskRepeatDesignService extends IService<TaskRepeatDesign> {
+
+}

+ 2 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/TaskService.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.management.platform.entity.Task;
 import com.management.platform.entity.TaskGroup;
+import com.management.platform.entity.dto.TaskDto;
 import com.management.platform.util.HttpRespMsg;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -21,4 +22,5 @@ import java.util.List;
  */
 public interface TaskService extends IService<Task> {
 
+    HttpRespMsg addTask(TaskDto taskDto, HttpServletRequest request);
 }

+ 12 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/ContactsServiceImpl.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.management.platform.entity.Contacts;
+import com.management.platform.entity.Custom;
 import com.management.platform.entity.User;
 import com.management.platform.entity.vo.ContactsVo;
 import com.management.platform.mapper.ContactsMapper;
@@ -56,6 +57,7 @@ public class ContactsServiceImpl extends ServiceImpl<ContactsMapper, Contacts> i
             httpRespMsg.setError("已存在该客户!");
         }
         contacts.setCompanyId(companyId)
+                //todo:联系人的所有人是可选择的
                 .setOwnerId(user.getId())//添加时默认
                 .setIsDelete(0)
                 .setCreateTime(LocalDateTime.now());
@@ -84,5 +86,15 @@ public class ContactsServiceImpl extends ServiceImpl<ContactsMapper, Contacts> i
         return msg;
     }
 
+    @Override
+    public HttpRespMsg selectContactsByCustomId(Custom custom) {
+        HttpRespMsg msg = new HttpRespMsg();
+        LambdaQueryWrapper<Contacts> contactsLambdaQueryWrapper = new LambdaQueryWrapper<>();
+        contactsLambdaQueryWrapper.eq(Contacts::getCustomId,custom.getId());
+        List<Contacts> contactsList = contactsMapper.selectList(contactsLambdaQueryWrapper);
+        msg.setData(contactsList);
+        return msg;
+    }
+
 
 }

+ 20 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/TaskRepeatDesignServiceImpl.java

@@ -0,0 +1,20 @@
+package com.management.platform.service.impl;
+
+import com.management.platform.entity.TaskRepeatDesign;
+import com.management.platform.mapper.TaskRepeatDesignMapper;
+import com.management.platform.service.TaskRepeatDesignService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author Seyason
+ * @since 2024-03-06
+ */
+@Service
+public class TaskRepeatDesignServiceImpl extends ServiceImpl<TaskRepeatDesignMapper, TaskRepeatDesign> implements TaskRepeatDesignService {
+
+}

+ 58 - 4
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/TaskServiceImpl.java

@@ -6,20 +6,20 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.github.pagehelper.util.StringUtil;
 import com.management.platform.entity.*;
+import com.management.platform.entity.dto.TaskDto;
 import com.management.platform.mapper.*;
-import com.management.platform.service.CompanyDingdingService;
-import com.management.platform.service.TaskExecutorService;
-import com.management.platform.service.TaskService;
-import com.management.platform.service.WxCorpInfoService;
+import com.management.platform.service.*;
 import com.management.platform.util.ExcelUtil;
 import com.management.platform.util.HttpRespMsg;
 import com.management.platform.util.MessageUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.hssf.usermodel.*;
 import org.apache.poi.ss.usermodel.CellType;
 import org.apache.poi.xssf.usermodel.XSSFCell;
 import org.apache.poi.xssf.usermodel.XSSFRow;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -30,6 +30,7 @@ import javax.servlet.http.HttpServletRequest;
 import java.io.*;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -46,5 +47,58 @@ import java.util.stream.Collectors;
 @Transactional
 public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements TaskService {
 
+    @Resource
+    private UserMapper userMapper;
+    @Resource
+    private TaskMapper taskMapper;
+    @Resource
+    private TaskLogMapper taskLogMapper;
 
+    @Resource
+    private TaskRepeatDesignMapper taskRepeatDesignMapper;
+
+
+    @Override
+    @Transactional
+    public HttpRespMsg addTask(TaskDto taskDto, HttpServletRequest request) {
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+
+        String userId = String.valueOf(request.getHeader("Token"));
+        User user = userMapper.selectById(userId);
+        if (user==null){
+            httpRespMsg.setError("无法获取创建人信息!");
+            return httpRespMsg;
+        }
+
+        if (StringUtils.isEmpty(taskDto.getName())||taskDto.getPriority()==null){
+            httpRespMsg.setError("缺少任务名称或任务优先级!");
+            return httpRespMsg;
+        }
+        Task task = new Task();
+        BeanUtils.copyProperties(taskDto,task);
+        task.setCreateDate(LocalDate.now());//任务的创建时间
+        task.setCreaterName(user.getName());
+        task.setCompanyId(user.getCompanyId());
+
+        taskMapper.insert(task);
+
+        //重复状态为 自定义日期:4
+        if (taskDto.getRepeatType()==4){
+            TaskRepeatDesign taskRepeatDesign = new TaskRepeatDesign();
+            taskRepeatDesign.setTaskId(task.getId());
+            taskRepeatDesign.setDayCount(taskDto.getTaskRepeatDesign().getDayCount());
+            taskRepeatDesign.setCreateTime(LocalDateTime.now());
+            taskRepeatDesignMapper.insert(taskRepeatDesign);
+        }
+        //添加任务编译记录
+        TaskLog taskLog = new TaskLog();
+        taskLog.setTaskId(task.getId());
+        taskLog.setContent("创建了任务");
+        taskLog.setUserId(userId);
+        taskLog.setUserName(user.getName());
+        taskLog.setModTime(LocalDateTime.now());
+        taskLogMapper.insert(taskLog);
+
+        return httpRespMsg;
+    }
 }

+ 19 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/resources/mapper/TaskRepeatDesignMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.management.platform.mapper.TaskRepeatDesignMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.management.platform.entity.TaskRepeatDesign">
+        <id column="id" property="id" />
+        <result column="task_id" property="taskId" />
+        <result column="day_count" property="dayCount" />
+        <result column="create_time" property="createTime" />
+        <result column="uptade_time" property="uptadeTime" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, task_id, day_count, create_time, uptade_time
+    </sql>
+
+</mapper>