yusm 4 недель назад
Родитель
Сommit
6c03311df3

+ 8 - 8
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/TaskController.java

@@ -5,28 +5,22 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.management.platform.constant.Constant;
+import com.management.platform.config.LimitRequest;
 import com.management.platform.entity.*;
 import com.management.platform.entity.bo.QueryTaskChargePage;
 import com.management.platform.entity.vo.SysRichFunction;
-import com.management.platform.entity.vo.UserVO;
 import com.management.platform.mapper.*;
 import com.management.platform.service.*;
-import com.management.platform.service.impl.WxCorpInfoServiceImpl;
 import com.management.platform.util.HttpRespMsg;
 import com.management.platform.util.MessageUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.poi.hssf.usermodel.*;
-import org.assertj.core.util.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
@@ -1797,5 +1791,11 @@ public class TaskController {
     }
 
 
+    @LimitRequest(count = 60)
+    @RequestMapping("/getTaskListByToken")
+    public HttpRespMsg getTaskListByToken(@RequestBody String json){
+        return taskService.getTaskListByToken(json);
+    }
+
 }
 

+ 9 - 7
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/Task.java

@@ -1,20 +1,20 @@
 package com.management.platform.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.extension.activerecord.Model;
-import java.time.LocalDate;
-import com.baomidou.mybatisplus.annotation.TableId;
-import java.time.LocalDateTime;
 import com.baomidou.mybatisplus.annotation.TableField;
-import java.io.Serializable;
-import java.util.List;
-
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 import org.springframework.format.annotation.DateTimeFormat;
 
+import java.io.Serializable;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
 /**
  * <p>
  * 
@@ -128,6 +128,8 @@ public class Task extends Model<Task> {
      * 创建时间戳
      */
     @TableField("indate")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime indate;
 
     /**

+ 2 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/vo/TokenVo.java

@@ -11,5 +11,6 @@ public class TokenVo {
     public String token;
     public String startDate;
     public String endDate;
-    public Integer state;
+    public Integer state; //日报状态
+    public Integer taskType;//0-任务,1-里程碑,2-风险
 }

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

@@ -66,4 +66,6 @@ public interface TaskService extends IService<Task> {
     HttpRespMsg sendMsgToChargers(String ids, HttpServletRequest request);
 
     HttpRespMsg taskPlanPassOrReject(Integer taskId,boolean type, HttpServletRequest request);
+
+    HttpRespMsg getTaskListByToken(String json);
 }

+ 52 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/TaskServiceImpl.java

@@ -1,5 +1,6 @@
 package com.management.platform.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.aliyun.dingtalkcontact_1_0.models.SearchUserResponse;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
@@ -11,6 +12,7 @@ import com.management.platform.entity.*;
 import com.management.platform.entity.bo.QueryTaskChargePage;
 import com.management.platform.entity.vo.OtherTaskFileInfoVO;
 import com.management.platform.entity.vo.TaskFileChargePageVO;
+import com.management.platform.entity.vo.TokenVo;
 import com.management.platform.mapper.*;
 import com.management.platform.service.*;
 import com.management.platform.util.ExcelUtil;
@@ -38,6 +40,7 @@ import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.time.Period;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -104,6 +107,9 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
     @Autowired
     private InformationMapper informationMapper;
 
+    @Resource
+    private ThirdPartyInterfaceMapper thirdPartyInterfaceMapper;
+
     @Override
     public HttpRespMsg getExecutorPanel(Integer projectId) {
         HttpRespMsg msg = new HttpRespMsg();
@@ -1160,4 +1166,50 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
         }
         return list;
     }
+
+    @Override
+    public HttpRespMsg getTaskListByToken(String json) {
+        HttpRespMsg msg=new HttpRespMsg();
+        TokenVo tokenVo = JSON.parseObject(json, TokenVo.class);
+        String token = tokenVo.getToken();
+        List<ThirdPartyInterface> thirdPartyInterfaceList = thirdPartyInterfaceMapper.selectList(new QueryWrapper<ThirdPartyInterface>().eq("token", token));
+        if(thirdPartyInterfaceList.size()==0){
+            //msg.setError("token错误");
+            msg.setError(MessageUtils.message("other.tokenError"));
+            return msg;
+        }
+        ThirdPartyInterface thirdPartyInterface = thirdPartyInterfaceList.get(0);
+        if(LocalDateTime.now().isAfter(thirdPartyInterface.getExpireTime())){
+            //msg.setError("token过期失效");
+            msg.setError(MessageUtils.message("other.tokenOverdue"));
+            return msg;
+        }
+        if(null==tokenVo.getTaskType()){
+            msg.setError("taskType can not  be empty");
+            return msg;
+        }
+        if(null==tokenVo.getStartDate()||StringUtils.isEmpty(tokenVo.getStartDate())){
+            msg.setError("startDate can not be empty");
+            return msg;
+        }
+        if(null==tokenVo.getEndDate()||StringUtils.isEmpty(tokenVo.getEndDate())){
+            msg.setError("endDate can not be empty");
+            return msg;
+        }
+        DateTimeFormatter df=DateTimeFormatter.ofPattern("yyyy-MM-dd");
+        Period between = Period.between(LocalDate.parse(tokenVo.getStartDate(), df), LocalDate.parse(tokenVo.getEndDate(), df));
+        if(between.getDays()>31){
+            msg.setError("获取日期间隙不能超过一个月");
+            return msg;
+        }
+        if(token.equals(thirdPartyInterface.getToken())){
+            LambdaQueryWrapper<Task> queryWrapper = new LambdaQueryWrapper<Task>().between(Task::getCreateDate,LocalDate.parse(tokenVo.getStartDate(), df),LocalDate.parse(tokenVo.getEndDate(), df)).eq(Task::getCompanyId, thirdPartyInterface.getCompanyId());
+            if(null!=tokenVo.getTaskType()){
+                queryWrapper.eq(Task::getTaskType,tokenVo.getTaskType());
+            }
+            List<Task> taskList=taskMapper.selectList(queryWrapper);
+            msg.data=taskList;
+        }
+        return msg;
+    }
 }