Parcourir la source

Merge remote-tracking branch 'origin/master'

sunyadv il y a 5 ans
Parent
commit
ec6e1a5af3
19 fichiers modifiés avec 344 ajouts et 73 suppressions
  1. 43 0
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/constant/Parameter.java
  2. 2 2
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ImageProcessingController.java
  3. 33 1
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ProjectController.java
  4. 4 10
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ReportController.java
  5. 13 1
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ScreenshotController.java
  6. 3 6
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/Report.java
  7. 1 0
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/vo/ScreenshotVO.java
  8. 7 1
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/mapper/ReportMapper.java
  9. 5 1
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/mapper/ScreenshotMapper.java
  10. 6 1
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ProjectService.java
  11. 1 2
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ReportService.java
  12. 2 1
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ScreenshotService.java
  13. 49 1
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java
  14. 13 21
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java
  15. 27 13
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ScreenshotServiceImpl.java
  16. 2 2
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/util/AuthService.java
  17. 88 3
      fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/util/ProcessUtil.java
  18. 31 7
      fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ReportMapper.xml
  19. 14 0
      fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ScreenshotMapper.xml

+ 43 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/constant/Parameter.java

@@ -0,0 +1,43 @@
+package com.management.platform.constant;
+
+/**
+ * Author: 吴涛涛
+ * Date : 2020 - 01 - 06 11:19
+ * Description:<描述> 参数枚举
+ * Version: 1.0
+ */
+public enum Parameter {
+    //accessToken
+    ACCESS_TOKEN("accessToken", "accessToken"),
+    //accessToken 的有效时间 单位:s
+    EXPIRES_IN("expiresIn", "expiresIn");
+
+    private String code;
+    private String name;
+
+    private Parameter(String code, String name) {
+        this.code = code;
+        this.name = name();
+    }
+
+    public String getCode() {
+        return code;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+//    public static void main(String[] args) {
+//        System.out.println(Parameter.API_KEY.getName());
+//    }
+
+}

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ImageProcessingController.java

@@ -45,8 +45,8 @@ public class ImageProcessingController {
      * file 上传的图片文件
      */
     @RequestMapping("/saveAndProcessImage")
-    public HttpRespMsg pictureDetectionTask(ScreenshotVO screenshotvo, String processList) {
-        System.out.println(processList);
+    public HttpRespMsg pictureDetectionTask(ScreenshotVO screenshotvo) {
+        System.out.println(screenshotvo.getProcessList());
         return screenshotService.saveAndProcessImage(screenshotvo);
     }
 

+ 33 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ProjectController.java

@@ -1,13 +1,17 @@
 package com.management.platform.controller;
 
 
+import com.management.platform.service.ProjectService;
+import com.management.platform.util.HttpRespMsg;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestMapping;
 
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 /**
  * <p>
- *  前端控制器
+ * 前端控制器
  * </p>
  *
  * @author 吴涛涛
@@ -16,6 +20,34 @@ import org.springframework.web.bind.annotation.RestController;
 @RestController
 @RequestMapping("/project")
 public class ProjectController {
+    @Autowired
+    private ProjectService projectService;
 
+    /**
+     * 获取项目列表
+     */
+    @RequestMapping("/getProjectList")
+    public HttpRespMsg getProjectList() {
+        return projectService.getProjectList();
+    }
+
+    /**
+     * 添加或编辑项目
+     * id 要编辑项目的id 可填
+     * name 项目的名称
+     */
+    @RequestMapping("/editProject")
+    public HttpRespMsg editProject(Integer id, @RequestParam String name) {
+        return projectService.editProject(id, name);
+    }
+
+    /**
+     * 删除项目
+     * id 要删除的项目的id
+     */
+    @RequestMapping("/deleteProject")
+    public HttpRespMsg deleteProject(@RequestParam Integer id) {
+        return projectService.deleteProject(id);
+    }
 }
 

+ 4 - 10
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ReportController.java

@@ -25,18 +25,12 @@ public class ReportController {
     private ReportService reportService;
 
     /**
-     * 获取报告列表
-     * pageIndex 分页的页数
-     * pageSize 分页的大小
-     * userId 筛选的用户id 可传
-     * projectId 筛选的项目id 可传
-     * startDate 筛选时间段的开始时间 可传 yyyy-MM-dd
-     * endDate 筛选时间段的结束时间 可传 yyyy-MM-dd
+     * 根据时间 按照人分类 获取报告信息
+     * date 日期 格式yyyy-mm-dd
      */
     @RequestMapping("/getReportList")
-    public HttpRespMsg getReportList(@RequestParam Integer pageIndex, @RequestParam Integer pageSize,
-                                     Integer userId, Integer projectId, String startDate, String endDate) {
-        return reportService.getReportList(pageIndex, pageSize, userId, projectId, startDate, endDate);
+    public HttpRespMsg getReportList(@RequestParam String date) {
+        return reportService.getReportList(date);
     }
 
     /**

+ 13 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ScreenshotController.java

@@ -1,13 +1,16 @@
 package com.management.platform.controller;
 
 
+import com.management.platform.service.ScreenshotService;
+import com.management.platform.util.HttpRespMsg;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
 
 /**
  * <p>
- *  前端控制器
+ * 前端控制器
  * </p>
  *
  * @author 吴涛涛
@@ -16,6 +19,15 @@ import org.springframework.web.bind.annotation.RestController;
 @RestController
 @RequestMapping("/screenshot")
 public class ScreenshotController {
+    @Autowired
+    private ScreenshotService screenshotService;
 
+    /**
+     * 获取每个人最新的截图
+     */
+    @RequestMapping("/getLatestScreenshotList")
+    public HttpRespMsg getLatestScreenshotList() {
+        return screenshotService.getLatestScreenshotList();
+    }
 }
 

+ 3 - 6
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/Report.java

@@ -1,6 +1,5 @@
 package com.management.platform.entity;
 
-import com.baomidou.mybatisplus.annotation.FieldStrategy;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import java.time.LocalDate;
@@ -11,7 +10,6 @@ import java.io.Serializable;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
-import org.springframework.format.annotation.DateTimeFormat;
 
 /**
  * <p>
@@ -19,7 +17,7 @@ import org.springframework.format.annotation.DateTimeFormat;
  * </p>
  *
  * @author 吴涛涛
- * @since 2020-01-03
+ * @since 2020-01-06
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -49,7 +47,6 @@ public class Report extends Model<Report> {
     /**
      * 日期
      */
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
     @TableField("create_date")
     private LocalDate createDate;
 
@@ -57,12 +54,12 @@ public class Report extends Model<Report> {
      * 工作时间
      */
     @TableField("working_time")
-    private Integer workingTime;
+    private Double workingTime;
 
     /**
      * 报告内容
      */
-    @TableField(value = "content", insertStrategy = FieldStrategy.IGNORED)
+    @TableField("content")
     private String content;
 
     /**

+ 1 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/vo/ScreenshotVO.java

@@ -13,4 +13,5 @@ import org.springframework.web.multipart.MultipartFile;
 @Data
 public class ScreenshotVO extends Screenshot {
     private MultipartFile file;
+    private String processList;
 }

+ 7 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/mapper/ReportMapper.java

@@ -2,6 +2,11 @@ package com.management.platform.mapper;
 
 import com.management.platform.entity.Report;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.time.LocalDate;
+import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -12,5 +17,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @since 2019-12-31
  */
 public interface ReportMapper extends BaseMapper<Report> {
-
+    List<Map<String, Object>> getReportByDate(@Param("date")String date, @Param("id")Integer id);
+    List<Map<String, Object>> getReportNameByDate(@Param("date")String date);
 }

+ 5 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/mapper/ScreenshotMapper.java

@@ -5,15 +5,19 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.management.platform.entity.vo.ScreenshotVO;
 import com.management.platform.util.HttpRespMsg;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * <p>
- *  Mapper 接口
+ * Mapper 接口
  * </p>
  *
  * @author 吴涛涛
  * @since 2020-01-02
  */
 public interface ScreenshotMapper extends BaseMapper<Screenshot> {
+    List<Map<String, Object>> getLatestScreenshotList();
 
     HttpRespMsg saveAndProcessImage(ScreenshotVO screenshotvo);
 }

+ 6 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ProjectService.java

@@ -2,15 +2,20 @@ package com.management.platform.service;
 
 import com.management.platform.entity.Project;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.management.platform.util.HttpRespMsg;
 
 /**
  * <p>
- *  服务类
+ * 服务类
  * </p>
  *
  * @author 吴涛涛
  * @since 2020-01-03
  */
 public interface ProjectService extends IService<Project> {
+    HttpRespMsg getProjectList();
 
+    HttpRespMsg editProject(Integer id, String name);
+
+    HttpRespMsg deleteProject(Integer id);
 }

+ 1 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ReportService.java

@@ -13,8 +13,7 @@ import com.management.platform.util.HttpRespMsg;
  * @since 2019-12-31
  */
 public interface ReportService extends IService<Report> {
-    HttpRespMsg getReportList(Integer pageIndex, Integer pageSize, Integer creatorId, Integer projectId,
-                              String startDate, String endDate);
+    HttpRespMsg getReportList(String date);
 
     HttpRespMsg editReport(Report report);
 

+ 2 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ScreenshotService.java

@@ -7,13 +7,14 @@ import com.management.platform.util.HttpRespMsg;
 
 /**
  * <p>
- *  服务类
+ * 服务类
  * </p>
  *
  * @author 吴涛涛
  * @since 2020-01-02
  */
 public interface ScreenshotService extends IService<Screenshot> {
+    HttpRespMsg getLatestScreenshotList();
 
     HttpRespMsg saveAndProcessImage(ScreenshotVO screenshotvo);
 }

+ 49 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -1,14 +1,20 @@
 package com.management.platform.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.management.platform.entity.Project;
+import com.management.platform.entity.Report;
 import com.management.platform.mapper.ProjectMapper;
+import com.management.platform.mapper.ReportMapper;
 import com.management.platform.service.ProjectService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.management.platform.util.HttpRespMsg;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+
 /**
  * <p>
- *  服务实现类
+ * 服务实现类
  * </p>
  *
  * @author 吴涛涛
@@ -16,5 +22,47 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> implements ProjectService {
+    @Resource
+    private ProjectMapper projectMapper;
+    @Resource
+    private ReportMapper reportMapper;
+
+    @Override
+    public HttpRespMsg getProjectList() {
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+        httpRespMsg.data = projectMapper.selectList(new QueryWrapper<>());
+        return httpRespMsg;
+    }
+
+    @Override
+    public HttpRespMsg editProject(Integer id, String name) {
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+        if (id == null) {
+            //新增项目
+            if (name == null) {
+                httpRespMsg.setError("请填写项目名称");
+            } else {
+                if (projectMapper.insert(new Project().setProjectName(name)) == 0) {
+                    httpRespMsg.setError("操作失败");
+                }
+            }
+        } else {
+            //修改项目
+            if (projectMapper.updateById(new Project().setProjectName(name).setId(id)) == 0) {
+                httpRespMsg.setError("操作失败");
+            }
+        }
+        return httpRespMsg;
+    }
 
+    @Override
+    public HttpRespMsg deleteProject(Integer id) {
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+        if (reportMapper.selectCount(new QueryWrapper<Report>().eq("project_id", id)) > 0) {
+            httpRespMsg.setError("项目存在相关报告 无法删除");
+        } else if (projectMapper.deleteById(id) == 0) {
+            httpRespMsg.setError("操作失败");
+        }
+        return httpRespMsg;
+    }
 }

+ 13 - 21
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -10,7 +10,12 @@ import com.management.platform.util.HttpRespMsg;
 import org.springframework.stereotype.Service;
 
 import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 import javax.annotation.Resource;
 
@@ -30,23 +35,13 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
 
     //获取报告列表
     @Override
-    public HttpRespMsg getReportList(Integer pageIndex, Integer pageSize, Integer creatorId, Integer projectId,
-                                     String startDate, String endDate) {
+    public HttpRespMsg getReportList(String date) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
-        QueryWrapper<Report> queryWrapper = new QueryWrapper<>();
-        if (creatorId != null) {
-            queryWrapper.eq("creator_id", creatorId);
+        List<Map<String, Object>> nameList = reportMapper.getReportNameByDate(date);
+        for (Map<String, Object> map : nameList) {
+            map.put("data", reportMapper.getReportByDate(date, (Integer) map.get("id")));
         }
-        if (projectId != null) {
-            queryWrapper.eq("project_id", projectId);
-        }
-        if (startDate != null && endDate != null) {
-            queryWrapper.between("create_date",
-                    LocalDate.parse(startDate, DateTimeFormatter.ofPattern("yyyy-MM-dd")),
-                    LocalDate.parse(endDate, DateTimeFormatter.ofPattern("yyyy-MM-dd"))
-            );
-        }
-        httpRespMsg.data = reportMapper.selectPage(new Page<>(pageIndex, pageSize), new QueryWrapper<>());
+        httpRespMsg.data = nameList;
         return httpRespMsg;
     }
 
@@ -59,14 +54,12 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             if (report.getCreatorId() == null || report.getProjectId() == null) {
                 httpRespMsg.setError("请填写完整信息");
             } else {
-                Integer impactedRows = reportMapper.insert(report);
-                if (impactedRows == 0) {
+                if (reportMapper.insert(report) == 0) {
                     httpRespMsg.setError("操作失败");
                 }
             }
         } else {
-            Integer impactedRows = reportMapper.updateById(report);
-            if (impactedRows == 0) {
+            if (reportMapper.updateById(report) == 0) {
                 httpRespMsg.setError("操作失败");
             }
         }
@@ -77,8 +70,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
     @Override
     public HttpRespMsg deleteReport(Integer reportId) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
-        Integer impactedRows = reportMapper.deleteById(reportId);
-        if (impactedRows == 0) {
+        if (reportMapper.deleteById(reportId) == 0) {
             httpRespMsg.setError("操作失败");
         }
         return httpRespMsg;

+ 27 - 13
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ScreenshotServiceImpl.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.management.platform.constant.Constant;
+import com.management.platform.constant.Parameter;
 import com.management.platform.entity.PicContentKeywords;
 import com.management.platform.entity.Screenshot;
 import com.management.platform.entity.vo.ScreenshotVO;
@@ -11,6 +12,7 @@ import com.management.platform.mapper.ScreenshotMapper;
 import com.management.platform.service.ScreenshotService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.management.platform.util.*;
+import org.apache.log4j.Logger;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -37,6 +39,8 @@ import java.util.Set;
 @Transactional
 public class ScreenshotServiceImpl extends ServiceImpl<ScreenshotMapper, Screenshot> implements ScreenshotService {
 
+    public static Logger log = Logger.getLogger(ScreenshotServiceImpl.class);
+
     @Value(value = "${upload.path}")
     private String path;
 
@@ -46,6 +50,14 @@ public class ScreenshotServiceImpl extends ServiceImpl<ScreenshotMapper, Screens
     @Resource
     private ScreenshotMapper screenshotMapper;
 
+    //获取所有人最新的截图
+    @Override
+    public HttpRespMsg getLatestScreenshotList() {
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+        httpRespMsg.data = screenshotMapper.getLatestScreenshotList();
+        return httpRespMsg;
+    }
+
     @Override
     public HttpRespMsg saveAndProcessImage(ScreenshotVO screenshotvo) {
         String filePath = UploadFileToFileNameUtil.uploadFile(screenshotvo.getFile(), path);
@@ -54,13 +66,14 @@ public class ScreenshotServiceImpl extends ServiceImpl<ScreenshotMapper, Screens
         screenshot.setPicUrl(filePath);
         screenshot.setDateStr(DateTimeFormatter.ofPattern("yyyy-MM-dd").format(screenshotvo.getIndate()));
         String accessToken = "";
-        if (redisUtil.existsKey("accessToken")) {
-            accessToken = redisUtil.getKey("accessToken");
+        if (redisUtil.existsKey(Parameter.ACCESS_TOKEN.getName())) {
+            accessToken = redisUtil.getKey(Parameter.ACCESS_TOKEN.getName());
         } else {
             Map<String, Object> map = AuthService.getAuth(Constant.API_KEY, Constant.SECRET_KEY);
-            accessToken = (String) map.get("access_token");
-            redisUtil.setKeyWithExpireTime("accessToken", accessToken, (Long) map.get("expires_in"));
+            accessToken = (String) map.get(Parameter.ACCESS_TOKEN.getName());
+            redisUtil.setKeyWithExpireTime(Parameter.ACCESS_TOKEN.getName(), accessToken, (Long) map.get(Parameter.EXPIRES_IN.getName()));
         }
+        log.info("accessToken-->" + accessToken);
         //利用token去检测
 //        DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
 //        LocalDateTime l = LocalDateTime.parse("2019-02-03",dateTimeFormatter);
@@ -68,19 +81,20 @@ public class ScreenshotServiceImpl extends ServiceImpl<ScreenshotMapper, Screens
         List<String> textContents = (List<String>) picResultMap.get("wordsList");
         screenshot.setPicContext((String) picResultMap.get("picContent"));
         Set<Object> members = redisUtil.members(Constant.COMMON_SOFTWARE_KEYWORDS);
+        List<String> exeprocessList = ProcessUtil.getExeprocessListfromProcessStr(screenshotvo.getProcessList());
         for (String textContent : textContents) {
             for (Object member : members) {
                 //由于redis里存储的member是一个PicContentKeywords类型的json字符串,所以取出关键字内容比较
                 JSONObject jsonMember = JSON.parseObject((String) member);
-                System.out.println(jsonMember.getString("content"));
-                System.out.println("textContent----->"+textContent);
-                if (textContent.contains(jsonMember.getString("content"))) {
-                    System.out.println("进来了判断=====");
-                    System.out.println("content=====" + jsonMember.getString("content"));
-                    System.out.println("textContent=====" + textContent);
-                    //包含关键字们可以简单认为是在用常用开发软件
-                    //确定图片是哪个类型的图片
-                    screenshot.setPicType(jsonMember.getInteger("type"));
+                if (textContent.toLowerCase().contains(jsonMember.getString("content").toLowerCase())) {
+                    log.info("图片文字中包含了关键词--->" + jsonMember.getString("content"));
+                    log.info("图片文字识别出的类型--->" + jsonMember.getInteger("type"));
+                    //找到对应关键字,确定图片是哪个类型的图片
+                    //结合进程判断
+                    if (exeprocessList.contains(jsonMember.getString("processName").toLowerCase())) {
+                        log.info("图片中关键字对应的进程名--->" + jsonMember.getString("processName"));
+                        screenshot.setPicType(jsonMember.getInteger("type"));
+                    }
                 }
             }
         }

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/util/AuthService.java

@@ -79,8 +79,8 @@ public class AuthService {
             String access_token = jsonObject.getString("access_token");
             Long expires_in = jsonObject.getLong("expires_in");
             Map<String,Object> mapResult = new HashMap<>();
-            mapResult.put("access_token",access_token);
-            mapResult.put("expires_in",expires_in);
+            mapResult.put("accessToken",access_token);
+            mapResult.put("expiresIn",expires_in);
             return mapResult;
         } catch (Exception e) {
             System.err.printf("获取token失败!");

+ 88 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/util/ProcessUtil.java

@@ -14,6 +14,50 @@ public class ProcessUtil {
     private static BufferedReader out;
     private static BufferedReader err;
     public static Logger logger = Logger.getLogger(ProcessUtil.class);
+
+    public static List<String> getExeprocessListfromProcessStr(String processStr) {
+//以下为进程字符串示例
+//        String processStr =
+//                "ӳ������                       PID �Ự��              �Ự#       �ڴ�ʹ�� \n" +
+//                        "========================= ======== ================ =========== ============\n" +
+//                        "System Idle Process              0 Services                   0          8 K\n" +
+//                        "System                           4 Services                   0         20 K\n" +
+//                        "Registry                       144 Services                   0     39,108 K\n" +
+//                        "smss.exe                       568 Services                   0        352 K\n" +
+//                        "csrss.exe                      740 Services                   0      2,148 K\n" +
+//                        "wininit.exe                    948 Services                   0      2,420 K\n" +
+//                        "services.exe                  1020 Services                   0      6,776 K\n" +
+//                        "lsass.exe                      124 Services                   0     12,660 K\n" +
+//                        "svchost.exe                    708 Services                   0      1,140 K\n" +
+//                        "fontdrvhost.exe                732 Services                   0        532 K\n" +
+//                        "svchost.exe                    688 Services                   0     29,176 K\n" +
+//                        "WUDFHost.exe                  1028 Services                   0     10,032 K\n" +
+//                        "svchost.exe                   1096 Services                   0     15,176 K\n" +
+//                        "svchost.exe                   1144 Services                   0      5,140 K\n" +
+//                        "WUDFHost.exe                  1328 Services                   0      2,168 K\n" +
+//                        "svchost.exe                   1500 Services                   0      2,432 K\n" +
+//                        "svchost.exe                   1512 Services                   0      6,704 K\n" +
+//                        "svchost.exe                   1576 Services                   0      8,208 K\n" +
+//                        "svchost.exe                   1628 Services                   0      4,608 K\n" +
+//                        "svchost.exe                   1636 Services                   0      5,604 K\n" +
+//                        "svchost.exe                   1648 Services                   0      4,764 K\n" +
+//                        "svchost.exe                   1776 Services                   0      3,488 K\n" +
+//                        "svchost.exe                   1828 Services                   0      1,536 K\n" +
+//                        "svchost.exe                   1840 Services                   0      4,204 K\n" +
+//                        "svchost.exe                   1848 Services";
+        List<String> exeprocessList = new ArrayList<>();
+        String[] list = processStr.toLowerCase().split("k\n");
+        //从第三行开始才是系统的.exe进程
+        for (int i = 3; i < list.length; i++) {
+            // 必须写死,截取长度,因为是固定的
+            exeprocessList.add(list[i].substring(0, 25).trim()); // 进程名
+//            System.out.println(process);
+        }
+        return exeprocessList;
+
+    }
+
+
     public static void testProcess() {
         // 创建系统进程
         try {
@@ -27,7 +71,7 @@ public class ProcessUtil {
 //            System.out.println(err.readLine());
             // 创建集合 存放 进程+pid
             List<String> list = new ArrayList<>();
-            while (out.readLine()!= null) {
+            while (out.readLine() != null) {
                 System.out.println(out.readLine());
                 list.add(out.readLine());
             }
@@ -71,7 +115,48 @@ public class ProcessUtil {
     }
 
     public static void main(String[] args) {
+//        String processStr =
+//                "ӳ������                       PID �Ự��              �Ự#       �ڴ�ʹ�� \n" +
+//                "========================= ======== ================ =========== ============\n" +
+//                "System Idle Process              0 Services                   0          8 K\n" +
+//                "System                           4 Services                   0         20 K\n" +
+//                "Registry                       144 Services                   0     39,108 K\n" +
+//                "smss.exe                       568 Services                   0        352 K\n" +
+//                "csrss.exe                      740 Services                   0      2,148 K\n" +
+//                "wininit.exe                    948 Services                   0      2,420 K\n" +
+//                "services.exe                  1020 Services                   0      6,776 K\n" +
+//                "lsass.exe                      124 Services                   0     12,660 K\n" +
+//                "svchost.exe                    708 Services                   0      1,140 K\n" +
+//                "fontdrvhost.exe                732 Services                   0        532 K\n" +
+//                "svchost.exe                    688 Services                   0     29,176 K\n" +
+//                "WUDFHost.exe                  1028 Services                   0     10,032 K\n" +
+//                "svchost.exe                   1096 Services                   0     15,176 K\n" +
+//                "svchost.exe                   1144 Services                   0      5,140 K\n" +
+//                "WUDFHost.exe                  1328 Services                   0      2,168 K\n" +
+//                "svchost.exe                   1500 Services                   0      2,432 K\n" +
+//                "svchost.exe                   1512 Services                   0      6,704 K\n" +
+//                "svchost.exe                   1576 Services                   0      8,208 K\n" +
+//                "svchost.exe                   1628 Services                   0      4,608 K\n" +
+//                "svchost.exe                   1636 Services                   0      5,604 K\n" +
+//                "svchost.exe                   1648 Services                   0      4,764 K\n" +
+//                "svchost.exe                   1776 Services                   0      3,488 K\n" +
+//                "svchost.exe                   1828 Services                   0      1,536 K\n" +
+//                "svchost.exe                   1840 Services                   0      4,204 K\n" +
+//                "svchost.exe                   1848 Services";
+//        String[] list = processStr.split("K\n");
+//            for (int i = 3; i < list.length; i++) {
+//                // 必须写死,截取长度,因为是固定的
+//                String process = list[i].substring(0, 25).trim(); // 进程名
+//                System.out.println(process);
+//                String pid = list[i].substring(25, 35).trim();    // 进程号
+        // 匹配指定的进程名,若匹配到,则立即杀死
+//                if (process.startsWith("Thunder")) {
+//                    System.out.println("关闭迅雷");
+//                    Runtime.getRuntime().exec("taskkill /F /PID " + pid);
+//                }
+//            }
+
         testProcess();
-    }
 
-}
+    }
+}

+ 31 - 7
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ReportMapper.xml

@@ -4,13 +4,13 @@
 
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.management.platform.entity.Report">
-        <id column="id" property="id" />
-        <result column="creator_id" property="creatorId" />
-        <result column="project_id" property="projectId" />
-        <result column="create_date" property="createDate" />
-        <result column="working_time" property="workingTime" />
-        <result column="content" property="content" />
-        <result column="create_time" property="createTime" />
+        <id column="id" property="id"/>
+        <result column="creator_id" property="creatorId"/>
+        <result column="project_id" property="projectId"/>
+        <result column="create_date" property="createDate"/>
+        <result column="working_time" property="workingTime"/>
+        <result column="content" property="content"/>
+        <result column="create_time" property="createTime"/>
     </resultMap>
 
     <!-- 通用查询结果列 -->
@@ -18,4 +18,28 @@
         id, creator_id, project_id, create_date, working_time, content, create_time
     </sql>
 
+    <!--根据日期获取报告信息-->
+    <select id="getReportByDate" resultType="java.util.Map">
+        SELECT b.project_name AS project, a.working_time AS time, a.content
+        FROM report AS a
+        JOIN project AS b ON a.project_id=b.id
+        WHERE 1=1 AND
+        <if test="date != null and date != ''">
+            a.create_date=#{date}
+        </if>
+        AND a.creator_id=#{id}
+        ORDER BY a.project_id ASC
+    </select>
+
+    <!--根据日期获取报告上传人-->
+    <select id="getReportNameByDate" resultType="java.util.Map">
+        SELECT DISTINCT c.id, c.name
+        FROM report AS a
+        JOIN user AS c ON a.creator_id=c.id
+        WHERE 1=1 AND
+        <if test="date != null and date != ''">
+            a.create_date=#{date}
+        </if>
+    </select>
+
 </mapper>

+ 14 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ScreenshotMapper.xml

@@ -20,4 +20,18 @@
         id, uid, pic_url, indate, is_normal, is_handle, date_str, pic_type, pic_context
     </sql>
 
+    <!--获取每个人最新的桌面截图-->
+    <select id="getLatestScreenshotList" resultType="java.util.Map">
+        SELECT c.name, a.pic_url, a.indate
+        FROM screenshot AS a
+        JOIN(
+        SELECT uid, MAX(indate) AS max_indate
+        FROM screenshot
+        GROUP BY uid
+        ) AS b
+        ON a.uid = b.uid AND a.indate = b.max_indate
+        LEFT JOIN USER AS c
+        ON a.uid = c.id
+    </select>
+
 </mapper>