Browse Source

Merge remote-tracking branch 'origin/V0.0.2' into V0.0.2

jingyuanchao 1 năm trước cách đây
mục cha
commit
6a523ded5d
35 tập tin đã thay đổi với 486 bổ sung91 xóa
  1. 22 0
      project_data/sql/0.0.3/soc/soc.sql
  2. 2 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/access/service/impl/TMonitoringRetrievalPlanServiceImpl.java
  3. 90 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/controller/AppCockpitController.java
  4. 2 10
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/controller/WebCockpitController.java
  5. 18 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/dto/app/AppTaskRankingDto.java
  6. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/dto/web/TaskStatisticDto.java
  7. 3 4
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/mapper/CockpitMapper.java
  8. 22 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/service/AppCockpitService.java
  9. 5 8
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/service/CockpitService.java
  10. 85 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/service/impl/AppCockpitServiceImpl.java
  11. 4 10
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/service/impl/CockpitServiceImpl.java
  12. 24 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/app/AppBaseInfoVo.java
  13. 14 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/app/AppGa38Vo.java
  14. 16 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/app/AppTaskRankingVo.java
  15. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/web/OrgGA38StatisticVo.java
  16. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/web/QuestionStatisticVo.java
  17. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/web/TaskStatisticVo.java
  18. 2 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateTaskMapper.java
  19. 65 24
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/impl/CoreEvaluateTaskServiceImpl.java
  20. 5 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/monitor/service/impl/MonitorAccessReportServiceImpl.java
  21. 16 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/resumption/controller/ResumptionReportController.java
  22. 5 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/resumption/dto/ResumptionDTO.java
  23. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/resumption/mapper/ResumptionReportMapper.java
  24. 10 5
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/resumption/service/impl/ResumptionReportServiceImpl.java
  25. 2 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/domain/AppPlan.java
  26. 10 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/gx/service/ResumptionServiceImpl.java
  27. 7 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/AppPlanService.java
  28. 26 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/AppPlanServiceImpl.java
  29. 0 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/task/ResumptionTaskBusiness.java
  30. 1 1
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/ICoreSafecheckPlanService.java
  31. 7 7
      soc-modules/soc-modules-core/src/main/resources/mapper/board/CockpitMapper.xml
  32. 3 0
      soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluateTaskMapper.xml
  33. 13 6
      soc-modules/soc-modules-core/src/main/resources/mapper/reportForms/ResumptionReportMapper.xml
  34. 1 0
      soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysUserServiceImpl.java
  35. 1 1
      soc-modules/soc-modules-system/src/main/resources/mapper/system/SysUserMapper.xml

+ 22 - 0
project_data/sql/0.0.3/soc/soc.sql

@@ -581,6 +581,28 @@ END IF;
             add drill_category_name varchar(125) null comment '演练类型名称' after drill_category;
     END IF;
 
+    -- 履职计划增加是否有任务已经完成
+    IF NOT EXISTS(SELECT *
+                  FROM information_schema.columns
+                  WHERE table_schema = DATABASE()
+                    AND table_name = 'core_resumption_plan'
+                    AND column_name = 'task_has_completed') THEN
+		ALTER TABLE `core_resumption_plan` 
+			ADD COLUMN `task_has_completed` int NULL COMMENT '1:表示有已完成的任务';
+    END IF;
+	
+    -- 履职内容增加生效日期
+    IF NOT EXISTS(SELECT *
+                  FROM information_schema.columns
+                  WHERE table_schema = DATABASE()
+                    AND table_name = 'core_resumption_plan_to_point'
+                    AND column_name = 'validate_date') THEN
+		ALTER TABLE `soc`.`core_resumption_plan_to_point` 
+			ADD COLUMN `validate_date` date NULL COMMENT '生效日期。不为null';
+		UPDATE core_resumption_plan_to_point set validate_date='2000-01-01';
+    END IF;
+	
+
 
     END ??
 DELIMITER;

+ 2 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/access/service/impl/TMonitoringRetrievalPlanServiceImpl.java

@@ -519,7 +519,7 @@ public class TMonitoringRetrievalPlanServiceImpl extends ServiceImpl<TMonitoring
                         }
                         break;
                     default:
-                        startAndEnd = DateUtils.getStartAndEnd(new Date(), Integer.valueOf(plan.getPlanCycle()) + 1);
+                       // startAndEnd = DateUtils.getStartAndEnd(new Date(), Integer.valueOf(plan.getPlanCycle()) + 1);
                         if (isComplete){
                             iCoreMonitoringRetrievalTaskService.deleteDayTaskByTime(plan.getId(), plan.getPlanCycle(),null,null);
                         }
@@ -541,7 +541,7 @@ public class TMonitoringRetrievalPlanServiceImpl extends ServiceImpl<TMonitoring
         status.add("3");
         List<CoreMonitoringRetrievalTask> coreMonitoringRetrievalTasks1 = iCoreMonitoringRetrievalTaskService.selectAllTaskByPlanId(ids, status);
         if (!plan.getPlanCycle().equals("0")) {
-            startAndEnd = DateUtils.getStartAndEnd(new Date(), Integer.valueOf(plan.getPlanCycle()) + 1);
+           // startAndEnd = DateUtils.getStartAndEnd(new Date(), Integer.valueOf(plan.getPlanCycle()) + 1);
             if (coreMonitoringRetrievalTasks.size()==coreMonitoringRetrievalTasks1.size()){
                 iCoreMonitoringRetrievalTaskService.deleteDayTaskByTimeAndPlanId(id, plan.getPlanCycle(),null,null);
             }

+ 90 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/controller/AppCockpitController.java

@@ -0,0 +1,90 @@
+package com.xunmei.core.board.controller;
+
+
+import com.xunmei.common.core.web.controller.BaseController;
+import com.xunmei.common.core.web.domain.AjaxResult;
+import com.xunmei.core.board.dto.app.AppTaskRankingDto;
+import com.xunmei.core.board.dto.web.TaskStatisticDto;
+import com.xunmei.core.board.service.CockpitService;
+import com.xunmei.core.board.vo.app.AppBaseInfoVo;
+import com.xunmei.core.board.vo.app.AppGa38Vo;
+import com.xunmei.core.board.vo.app.AppTaskRankingVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+/**
+ * 驾驶舱
+ *
+ * @author xunmei
+ * @date 2023-09-06
+ */
+@Api(tags = {"驾驶舱"})
+@RestController
+@RequestMapping("/cockpit/app")
+//@RequiresPermissions("core:cockpit")
+public class AppCockpitController extends BaseController {
+    @Resource
+    CockpitService cockpitService;
+
+    /**
+     * 履职排名
+     */
+    @ApiOperation(value = "履职排名")
+    @GetMapping("/taskranking")
+    public AjaxResult taskRanking(AppTaskRankingDto dto) {
+        List<AppTaskRankingVo> vos = new ArrayList<>();
+        AppTaskRankingVo vo=  new AppTaskRankingVo();
+        vo.setOrgName("机构名称");
+        vo.setRate(0.456434354f);
+        vos.add(vo);
+        return success(vos);
+    }
+
+
+    /**
+     * 基础信息
+     */
+    @ApiOperation(value = "基础信息")
+    @GetMapping("/baseInfo")
+    public AjaxResult baseInfo() {
+        AppBaseInfoVo vo=new AppBaseInfoVo();
+        vo.setGa38Info(new HashMap<>());
+        vo.getGa38Info().put("GA38-2021",new AppGa38Vo());
+        vo.getGa38Info().put("GA38-2015",new AppGa38Vo());
+
+        vo.setBusinessStoreInfo(new HashMap<>());
+        vo.getBusinessStoreInfo().put("一类库",50);
+        vo.getBusinessStoreInfo().put("二类库",50);
+        vo.getBusinessStoreInfo().put("三类库",50);
+        vo.getBusinessStoreInfo().put("四类库",50);
+
+        vo.setBankPropertyRight(new HashMap<>());
+        vo.getBankPropertyRight().put("自有",100);
+        vo.getBankPropertyRight().put("租赁",100);
+        vo.getBankPropertyRight().put("部分自有+部分租赁",100);
+
+        vo.setSecurityPeopleInfo(new HashMap<>());
+        vo.getSecurityPeopleInfo().put("未配备",40);
+        vo.getSecurityPeopleInfo().put("已配备",40);
+        vo.getSecurityPeopleInfo().put("内部人员",40);
+        vo.getSecurityPeopleInfo().put("外部人员",40);
+        return success(vo);
+    }
+
+    /**
+     * 统计近期下级视频调阅情况
+     */
+    @ApiOperation(value = "统计近期下级视频调阅情况")
+    @GetMapping("/overview")
+    public AjaxResult overview() {
+        return success();
+    }
+}

+ 2 - 10
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/controller/CockpitController.java → soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/controller/WebCockpitController.java

@@ -1,23 +1,15 @@
 package com.xunmei.core.board.controller;
 
 
-import com.xunmei.common.core.domain.drill.dto.CoreDrillDictionaryPageDto;
-import com.xunmei.common.core.domain.drill.vo.CoreDrillDictionaryPageVo;
 import com.xunmei.common.core.web.controller.BaseController;
 import com.xunmei.common.core.web.domain.AjaxResult;
-import com.xunmei.common.core.web.page.TableDataInfo;
-import com.xunmei.common.security.annotation.RequiresPermissions;
-import com.xunmei.core.board.dto.TaskStatisticDto;
+import com.xunmei.core.board.dto.web.TaskStatisticDto;
 import com.xunmei.core.board.service.CockpitService;
-import com.xunmei.core.board.vo.OrgGA38StatisticVo;
-import com.xunmei.core.board.vo.TaskStatisticVo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.List;
 
 /**
  * 驾驶舱
@@ -29,7 +21,7 @@ import java.util.List;
 @RestController
 @RequestMapping("/cockpit")
 //@RequiresPermissions("core:cockpit")
-public class CockpitController extends BaseController {
+public class WebCockpitController extends BaseController {
     @Resource
     CockpitService cockpitService;
 

+ 18 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/dto/app/AppTaskRankingDto.java

@@ -0,0 +1,18 @@
+package com.xunmei.core.board.dto.app;
+
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 任务排名条件
+ */
+@Data
+public class AppTaskRankingDto {
+    @ApiModelProperty("0:升序,1:降序")
+    public  int desc;
+
+    @ApiModelProperty("月份")
+    public Date month;
+}

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/dto/TaskStatisticDto.java → soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/dto/web/TaskStatisticDto.java

@@ -1,4 +1,4 @@
-package com.xunmei.core.board.dto;
+package com.xunmei.core.board.dto.web;
 
 import jdk.nashorn.internal.runtime.arrays.IntElements;
 import lombok.Data;

+ 3 - 4
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/mapper/CockpitMapper.java

@@ -1,10 +1,9 @@
 package com.xunmei.core.board.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.xunmei.core.board.dto.TaskStatisticDto;
-import com.xunmei.core.board.vo.OrgGA38StatisticVo;
-import com.xunmei.core.board.vo.QuestionStatisticVo;
-import com.xunmei.core.board.vo.TaskStatisticVo;
+import com.xunmei.core.board.vo.web.OrgGA38StatisticVo;
+import com.xunmei.core.board.vo.web.QuestionStatisticVo;
+import com.xunmei.core.board.vo.web.TaskStatisticVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;

+ 22 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/service/AppCockpitService.java

@@ -0,0 +1,22 @@
+package com.xunmei.core.board.service;
+
+import com.xunmei.core.board.dto.app.AppTaskRankingDto;
+import com.xunmei.core.board.vo.app.AppBaseInfoVo;
+import com.xunmei.core.board.vo.app.AppTaskRankingVo;
+
+import java.util.List;
+
+public interface AppCockpitService {
+    /**
+     * 履职排名
+     * @param dto
+     * @return
+     */
+    List<AppTaskRankingVo> taskRanking(AppTaskRankingDto dto);
+
+    /**
+     * 基础信息
+     * @return
+     */
+    AppBaseInfoVo baseInfo() ;
+}

+ 5 - 8
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/service/CockpitService.java

@@ -1,13 +1,10 @@
 package com.xunmei.core.board.service;
 
-import com.xunmei.core.board.dto.TaskStatisticDto;
-import com.xunmei.core.board.vo.OrgGA38StatisticVo;
-import com.xunmei.core.board.vo.QuestionStatisticVo;
-import com.xunmei.core.board.vo.TaskStatisticVo;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.web.bind.annotation.GetMapping;
-
-import java.util.ArrayList;
+import com.xunmei.core.board.dto.web.TaskStatisticDto;
+import com.xunmei.core.board.vo.web.OrgGA38StatisticVo;
+import com.xunmei.core.board.vo.web.QuestionStatisticVo;
+import com.xunmei.core.board.vo.web.TaskStatisticVo;
+
 import java.util.List;
 
 public interface CockpitService {

+ 85 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/service/impl/AppCockpitServiceImpl.java

@@ -0,0 +1,85 @@
+package com.xunmei.core.board.service.impl;
+
+
+import cn.hutool.core.util.NumberUtil;
+import cn.hutool.core.util.ObjectUtil;
+import com.xunmei.common.core.constant.SecurityConstants;
+import com.xunmei.common.core.domain.DateRange;
+import com.xunmei.common.core.enums.CycleCommonEnum;
+import com.xunmei.common.core.utils.DateUtils;
+import com.xunmei.common.security.utils.SecurityUtils;
+import com.xunmei.core.board.dto.app.AppTaskRankingDto;
+import com.xunmei.core.board.mapper.CockpitMapper;
+import com.xunmei.core.board.service.AppCockpitService;
+import com.xunmei.core.board.vo.app.AppBaseInfoVo;
+import com.xunmei.core.board.vo.app.AppTaskRankingVo;
+import com.xunmei.core.board.vo.web.TaskStatisticVo;
+import com.xunmei.system.api.RemoteOrgService;
+import com.xunmei.system.api.domain.SysOrg;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class AppCockpitServiceImpl implements AppCockpitService {
+    @Resource
+    private CockpitMapper cockpitMapper;
+
+    @Resource
+    RemoteOrgService remoteOrgService;
+
+    @Override
+    public List<AppTaskRankingVo> taskRanking(AppTaskRankingDto dto) {
+        DateRange range = DateUtils.getStartAndEnd(dto.getMonth(), CycleCommonEnum.MONTHLY);
+        SysOrg org = remoteOrgService.selectOrgById(SecurityUtils.getLoginUser().getOrgId(), SecurityConstants.INNER);
+        String orgPath = org.getPath();
+        List<TaskStatisticVo> list = cockpitMapper.resumption(range.getStartTime(), range.getEndTime(), orgPath);
+
+        List<SysOrg> children = remoteOrgService.selectOrgTreeListByCurOrgId(org.getId(), SecurityConstants.INNER);
+
+        List<TaskStatisticVo> childrenStatistic = new ArrayList<>();
+        for (SysOrg child : children) {
+            TaskStatisticVo childVo = new TaskStatisticVo();
+            childrenStatistic.add(childVo);
+
+            for (TaskStatisticVo orgItem : list) {
+                if (orgItem.getOrgPath().startsWith(child.getPath())) {
+                    childVo.setTaskTotal(childVo.getTaskTotal() + orgItem.getTaskTotal());
+                    childVo.setCompletedCount(childVo.getCompletedCount() + orgItem.getCompletedCount());
+                }
+            }
+        }
+
+        List<AppTaskRankingVo> r = new ArrayList<>();
+        childrenStatistic.forEach(i -> {
+            AppTaskRankingVo vo = new AppTaskRankingVo();
+            vo.setOrgName(i.getOrgName());
+            if (ObjectUtil.equal(i.getTaskTotal(), 0F)) {
+                vo.setRate(1);
+            } else {
+                vo.setRate(i.getCompletedCount() / i.getTaskTotal());
+            }
+        });
+        r.sort(new Comparator<AppTaskRankingVo>() {
+            @Override
+            public int compare(AppTaskRankingVo o1, AppTaskRankingVo o2) {
+                if (ObjectUtil.equal(dto.getDesc(), 1)) {
+                    return (NumberUtil.compare(o1.getRate(), o2.getRate())) * -1;
+                } else {
+                    return (NumberUtil.compare(o1.getRate(), o2.getRate()));
+                }
+            }
+        });
+
+        return r;
+    }
+
+    @Override
+    public AppBaseInfoVo baseInfo() {
+        return null;
+    }
+}

+ 4 - 10
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/service/impl/CockpitServiceImpl.java

@@ -1,23 +1,19 @@
 package com.xunmei.core.board.service.impl;
 
-import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.NumberUtil;
 import cn.hutool.core.util.ObjectUtil;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.xunmei.common.core.constant.SecurityConstants;
-import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.common.core.exception.ServiceException;
-import com.xunmei.core.board.dto.TaskStatisticDto;
+import com.xunmei.core.board.dto.web.TaskStatisticDto;
 import com.xunmei.core.board.enums.PeriodEnum;
 import com.xunmei.core.board.mapper.CockpitMapper;
 import com.xunmei.core.board.service.CockpitService;
-import com.xunmei.core.board.vo.OrgGA38StatisticVo;
-import com.xunmei.core.board.vo.QuestionStatisticVo;
-import com.xunmei.core.board.vo.TaskStatisticVo;
+import com.xunmei.core.board.vo.web.OrgGA38StatisticVo;
+import com.xunmei.core.board.vo.web.QuestionStatisticVo;
+import com.xunmei.core.board.vo.web.TaskStatisticVo;
 import com.xunmei.system.api.RemoteOrgService;
 import com.xunmei.system.api.domain.SysOrg;
-import io.reactivex.rxjava3.core.Single;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -25,8 +21,6 @@ import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
 import java.util.Date;
-import java.util.function.Function;
-import java.util.stream.Collectors;
 
 @Service
 public class CockpitServiceImpl implements CockpitService {

+ 24 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/app/AppBaseInfoVo.java

@@ -0,0 +1,24 @@
+package com.xunmei.core.board.vo.app;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Map;
+
+/**
+ * 基础信息
+ */
+@Data
+public class AppBaseInfoVo {
+    @ApiModelProperty("GA38达标情况")
+    private Map<String,AppGa38Vo> ga38Info;
+
+    @ApiModelProperty("业务库")
+    private Map<String,Integer> businessStoreInfo;
+
+    @ApiModelProperty("营业网点产权信息")
+    private Map<String,Integer> bankPropertyRight;
+
+    @ApiModelProperty("安保人员配备情况")
+    private Map<String,Integer> securityPeopleInfo;
+}

+ 14 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/app/AppGa38Vo.java

@@ -0,0 +1,14 @@
+package com.xunmei.core.board.vo.app;
+
+
+import lombok.Data;
+
+/**
+ * app驾驶舱机构GA38达标情况
+ */
+@Data
+public class AppGa38Vo{
+    private  Integer total;
+
+    private double rate;
+}

+ 16 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/app/AppTaskRankingVo.java

@@ -0,0 +1,16 @@
+package com.xunmei.core.board.vo.app;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * APP驾驶舱履职排名条目
+ */
+@Data
+public class AppTaskRankingVo {
+    @ApiModelProperty("机构名称")
+    private String orgName;
+
+    @ApiModelProperty("百分比。小于1")
+    private float rate;
+}

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/OrgGA38StatisticVo.java → soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/web/OrgGA38StatisticVo.java

@@ -1,4 +1,4 @@
-package com.xunmei.core.board.vo;
+package com.xunmei.core.board.vo.web;
 
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import lombok.Data;

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/QuestionStatisticVo.java → soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/web/QuestionStatisticVo.java

@@ -1,4 +1,4 @@
-package com.xunmei.core.board.vo;
+package com.xunmei.core.board.vo.web;
 
 import lombok.Data;
 

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/TaskStatisticVo.java → soc-modules/soc-modules-core/src/main/java/com/xunmei/core/board/vo/web/TaskStatisticVo.java

@@ -1,4 +1,4 @@
-package com.xunmei.core.board.vo;
+package com.xunmei.core.board.vo.web;
 
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import lombok.Data;

+ 2 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/mapper/CoreEvaluateTaskMapper.java

@@ -76,7 +76,7 @@ public interface CoreEvaluateTaskMapper extends BaseMapper<CoreEvaluateTask> {
 
     Page<Map> statistics(@Param("page") Page<Map> page, @Param("request") EvaluateTaskStatisticsDTO request);
 
-    List<LinkedHashMap> statisticsAll(@Param("request") EvaluateTaskStatisticsDTO request);
-
+    //List<LinkedHashMap> statisticsAll(@Param("request") EvaluateTaskStatisticsDTO request);
+    LinkedHashMap statisticsAll(@Param("request") EvaluateTaskStatisticsDTO request);
     List<Map> getContentByTaskId(@Param("id") Long id);
 }

+ 65 - 24
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/evaluate/service/impl/CoreEvaluateTaskServiceImpl.java

@@ -106,31 +106,71 @@ public class CoreEvaluateTaskServiceImpl extends ServiceImpl<CoreEvaluateTaskMap
         return TableDataInfo.build(page);
     }
 
+    private Map beiyong(EvaluateTaskStatisticsDTO evaluateTaskStatisticsDTO) {
+/*    Map map = new HashMap();
+    Page<Map> page;
+    //分页
+    if (evaluateTaskStatisticsDTO.getPageNum() != null && evaluateTaskStatisticsDTO.getPageSize() != null) {
+        page = new Page<>(evaluateTaskStatisticsDTO.getPageNum(), evaluateTaskStatisticsDTO.getPageSize());
+    } else {
+        page = new Page<>();
+    }
+    SysOrg sysOrg = remoteOrgService.selectSysOrgById(evaluateTaskStatisticsDTO.getOrgId(), SecurityConstants.INNER);
+    evaluateTaskStatisticsDTO.setOrgPath(sysOrg.getPath());
+    if (sysOrg.getType().equals(1)) {
+        evaluateTaskStatisticsDTO.setType(3);
+    } else {
+        evaluateTaskStatisticsDTO.setType(4);
+    }
+    evaluateTaskStatisticsDTO.setOrgId(null);
+    evaluateTaskStatisticsDTO.setOrgPath(null);
+  //  List<LinkedHashMap> rows = baseMapper.statisticsAll(evaluateTaskStatisticsDTO);
+    Integer average = 0;
+    Integer all = 0;
+    for (int i = 0; i < rows.size(); i++) {
+        Object id = rows.get(i).get("id");
+        rows.get(i).remove("id");
+        List<Map> contentByTaskId = baseMapper.getContentByTaskId((Long) id);
+        if (CollectionUtils.isNotEmpty(contentByTaskId)) {
+            int total = 0;
+            for (int l = 0; l < contentByTaskId.size(); l++) {
+                Double score = Double.valueOf(contentByTaskId.get(l).get("score").toString());
+                total += score;
+            }
+            rows.get(i).put("评价得分", total);
+            all += total;
+        }
+    }
+    map.put("list", rows);
+    if (rows.size() > 0) {
+        average = all / rows.size();
+    }
+    map.put("average", average);
+    return map;*/
+        return null;
+    }
+
     @Override
     public Map statistics(EvaluateTaskStatisticsDTO evaluateTaskStatisticsDTO) {
         Map map = new HashMap();
-        Page<Map> page;
-        //分页
-        if (evaluateTaskStatisticsDTO.getPageNum() != null && evaluateTaskStatisticsDTO.getPageSize() != null) {
-            page = new Page<>(evaluateTaskStatisticsDTO.getPageNum(), evaluateTaskStatisticsDTO.getPageSize());
-        } else {
-            page = new Page<>();
-        }
-        SysOrg sysOrg = remoteOrgService.selectSysOrgById(evaluateTaskStatisticsDTO.getOrgId(), SecurityConstants.INNER);
-        evaluateTaskStatisticsDTO.setOrgPath(sysOrg.getPath());
-        if (sysOrg.getType().equals(1)) {
-            evaluateTaskStatisticsDTO.setType(3);
-        } else {
-            evaluateTaskStatisticsDTO.setType(4);
-        }
-        evaluateTaskStatisticsDTO.setOrgId(null);
-        evaluateTaskStatisticsDTO.setOrgPath(null);
-        List<LinkedHashMap> rows = baseMapper.statisticsAll(evaluateTaskStatisticsDTO);
-        Integer average = 0;
+        List<SysOrg> sysOrgs = remoteOrgService.selectSysOrgByParentId(evaluateTaskStatisticsDTO.getOrgId(), SecurityConstants.INNER);
+        List<LinkedHashMap> rows = new ArrayList<>();
+        Double average = null;
         Integer all = 0;
-        for (int i = 0; i < rows.size(); i++) {
-            Object id = rows.get(i).get("id");
-            rows.get(i).remove("id");
+        for (int i = 0; i < sysOrgs.size(); i++) {
+            evaluateTaskStatisticsDTO.setOrgId(sysOrgs.get(i).getId());
+            LinkedHashMap linkedHashMap = new LinkedHashMap();
+            linkedHashMap.put("评价机构", sysOrgs.get(i).getShortName());
+            LinkedHashMap linkedHashMap1 = baseMapper.statisticsAll(evaluateTaskStatisticsDTO);
+            if (null == linkedHashMap1) {
+                linkedHashMap.put("被评价机构名称", "");
+                linkedHashMap.put("评价得分", 0);
+            } else {
+                linkedHashMap.put("被评价机构名称", linkedHashMap1.get("被评价机构名称"));
+                linkedHashMap.put("id", linkedHashMap1.get("id"));
+            }
+            Object id = linkedHashMap.get("id");
+            linkedHashMap.remove("id");
             List<Map> contentByTaskId = baseMapper.getContentByTaskId((Long) id);
             if (CollectionUtils.isNotEmpty(contentByTaskId)) {
                 int total = 0;
@@ -138,15 +178,16 @@ public class CoreEvaluateTaskServiceImpl extends ServiceImpl<CoreEvaluateTaskMap
                     Double score = Double.valueOf(contentByTaskId.get(l).get("score").toString());
                     total += score;
                 }
-                rows.get(i).put("评价得分", total);
+                linkedHashMap.put("评价得分", total);
                 all += total;
             }
+            rows.add(linkedHashMap);
         }
         map.put("list", rows);
         if (rows.size() > 0) {
-            average = all / rows.size();
+            average = (double) all / rows.size();
         }
-        map.put("average", average);
+        map.put("average", String.format("%.2f", average));
         return map;
     }
 

+ 5 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/monitor/service/impl/MonitorAccessReportServiceImpl.java

@@ -13,6 +13,8 @@ import com.xunmei.core.reportForms.monitor.dto.MonitoringAccessDTO;
 import com.xunmei.core.reportForms.monitor.mapper.MonitorAccessReportMapper;
 import com.xunmei.core.reportForms.monitor.service.MonitorAccessReportService;
 import com.xunmei.core.reportForms.monitor.vo.MonitoringAccessVO;
+import com.xunmei.core.reportForms.resumption.dto.ResumptionDTO;
+import com.xunmei.core.reportForms.resumption.service.ResumptionReportService;
 import com.xunmei.system.api.RemoteOrgService;
 import com.xunmei.system.api.RemoteRoleService;
 import com.xunmei.system.api.domain.SysDictData;
@@ -41,7 +43,8 @@ public class MonitorAccessReportServiceImpl implements MonitorAccessReportServic
     private MonitorAccessReportMapper monitorAccessReportMapper;
     @Resource
     private RemoteOrgService remoteOrgService;
-
+    @Autowired
+    private ResumptionReportService resumptionReportService;
     @Override
     public TableDataInfo<MonitoringAccessVO> report(MonitoringAccessDTO monitoringAccessDTO) {
         Page<MonitoringAccessVO> page;
@@ -79,6 +82,7 @@ public class MonitorAccessReportServiceImpl implements MonitorAccessReportServic
 
     @Override
     public List<MonitoringAccessVO> selectAll(MonitoringAccessDTO monitoringAccessDTO) {
+        resumptionReportService.report(new ResumptionDTO());
         if (null == monitoringAccessDTO.getOrgId()) {
             monitoringAccessDTO.setOrgId(SecurityUtils.getLoginUser().getOrgId());
         }

+ 16 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/resumption/controller/ResumptionReportController.java

@@ -5,6 +5,7 @@ import com.xunmei.common.security.annotation.RequiresPermissions;
 import com.xunmei.core.reportForms.monitor.dto.MonitoringAccessDTO;
 import com.xunmei.core.reportForms.resumption.dto.ResumptionDTO;
 import com.xunmei.core.reportForms.resumption.service.ResumptionReportService;
+import com.xunmei.core.reportForms.resumption.vo.ResumptionDayVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -12,6 +13,12 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.sql.Date;
+import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.ZoneId;
+import java.util.List;
+
 /**
  * @author :LuoWei
  * @date : 2023/11/8
@@ -27,6 +34,14 @@ public class ResumptionReportController {
     @RequiresPermissions("core:resumptionReport:list")
     @GetMapping("/list")
     public AjaxResult list(ResumptionDTO resumptionDTO) {
-        return AjaxResult.success(resumptionReportService.report(resumptionDTO));
+        if (null == resumptionDTO.getSearchTime()) {
+            LocalDate currentDate = LocalDate.now();
+            resumptionDTO.setSearchTime(currentDate.toString());
+        }
+        AjaxResult ajaxResult = AjaxResult.success();
+        List<ResumptionDayVO> report = resumptionReportService.report(resumptionDTO);
+        ajaxResult.put(AjaxResult.DATA_TAG, report);
+        ajaxResult.put("title", "日报表-营业网点每日安全保卫履职(" + resumptionDTO.getSearchTime() + ")");
+        return ajaxResult;
     }
 }

+ 5 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/resumption/dto/ResumptionDTO.java

@@ -1,7 +1,11 @@
 package com.xunmei.core.reportForms.resumption.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.Date;
+
 /**
  * @author :LuoWei
  * @date : 2023/11/7
@@ -9,6 +13,6 @@ import lombok.Data;
 @Data
 public class ResumptionDTO {
     private Long orgId;
-    private String date;
+    private String searchTime;
     private Integer planType;
 }

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/resumption/mapper/ResumptionReportMapper.java

@@ -14,5 +14,5 @@ import java.util.List;
 @Mapper
 public interface ResumptionReportMapper {
 
-    ResumptionDayVO selectReport(@Param("planType") Integer planType, @Param("orgId") Long orgId, @Param("date") String date);
+    ResumptionDayVO selectReport(@Param("planType") Integer planType, @Param("orgId") Long orgId, @Param("date") String date,@Param("orgPath")String orgPath);
 }

+ 10 - 5
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reportForms/resumption/service/impl/ResumptionReportServiceImpl.java

@@ -12,6 +12,7 @@ import com.xunmei.system.api.domain.SysOrg;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -30,7 +31,8 @@ public class ResumptionReportServiceImpl implements ResumptionReportService {
 
     @Override
     public List<ResumptionDayVO> report(ResumptionDTO resumptionDTO) {
-        if (null==resumptionDTO.getOrgId()){
+
+        if (null == resumptionDTO.getOrgId()) {
             resumptionDTO.setOrgId(SecurityUtils.getLoginUser().getOrgId());
         }
         List<SysOrg> sysOrgs = orgService.selectSysOrgByParentId(resumptionDTO.getOrgId(), SecurityConstants.INNER);
@@ -41,19 +43,19 @@ public class ResumptionReportServiceImpl implements ResumptionReportService {
             Integer integer = monitorAccessReportMapper.selectNetworkNumberByPath(o.getPath());
             resumptionDayVO.setNetworkNumber(integer);
             //营业前
-            ResumptionDayVO resumptionDayVO1 = resumptionReportMapper.selectReport(1, o.getId(), resumptionDTO.getDate());
+            ResumptionDayVO resumptionDayVO1 = resumptionReportMapper.selectReport(1, null, resumptionDTO.getSearchTime(), o.getPath());
             resumptionDayVO.setFrontRate(resumptionDayVO1.getFrontRate());
             resumptionDayVO.setFrontAbnormalNumber(resumptionDayVO1.getFrontAbnormalNumber());
             resumptionDayVO.setFrontPlanNumber(resumptionDayVO1.getFrontPlanNumber());
             resumptionDayVO.setFrontRealityNumber(resumptionDayVO1.getFrontRealityNumber());
             //营业中
-            ResumptionDayVO resumptionDayVO2 = resumptionReportMapper.selectReport(2, o.getId(), resumptionDTO.getDate());
+            ResumptionDayVO resumptionDayVO2 = resumptionReportMapper.selectReport(2, null, resumptionDTO.getSearchTime(), o.getPath());
             resumptionDayVO.setCentreRate(resumptionDayVO2.getFrontRate());
             resumptionDayVO.setCentreAbnormalNumber(resumptionDayVO2.getFrontAbnormalNumber());
             resumptionDayVO.setCentrePlanNumber(resumptionDayVO2.getFrontPlanNumber());
             resumptionDayVO.setCentreRealityNumber(resumptionDayVO2.getFrontRealityNumber());
             //后
-            ResumptionDayVO resumptionDayVO3 = resumptionReportMapper.selectReport(3, o.getId(), resumptionDTO.getDate());
+            ResumptionDayVO resumptionDayVO3 = resumptionReportMapper.selectReport(3, null, resumptionDTO.getSearchTime(), o.getPath());
             resumptionDayVO.setAfterRate(resumptionDayVO3.getFrontRate());
             resumptionDayVO.setAfterAbnormalNumber(resumptionDayVO3.getFrontAbnormalNumber());
             resumptionDayVO.setAfterPlanNumber(resumptionDayVO3.getFrontPlanNumber());
@@ -63,7 +65,10 @@ public class ResumptionReportServiceImpl implements ResumptionReportService {
             Integer totalAbnormal = resumptionDayVO3.getFrontAbnormalNumber() + resumptionDayVO2.getFrontAbnormalNumber() + resumptionDayVO1.getFrontAbnormalNumber();
             resumptionDayVO.setTotalPlanNumber(totalPlan);
             resumptionDayVO.setTotalRealityNumber(totalReality);
-            int i = totalReality / totalPlan * 100;
+            int i = 0;
+            if (totalReality != 0 && totalPlan != 0) {
+                i = totalReality / totalPlan * 100;
+            }
             resumptionDayVO.setTotalRate(i + "%");
             resumptionDayVO.setTotalAbnormalNumber(totalAbnormal);
             resumptionDayVOS.add(resumptionDayVO);

+ 2 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/domain/AppPlan.java

@@ -168,6 +168,8 @@ public class AppPlan extends Model<AppPlan> implements Serializable {
     @TableLogic(value = "0", delval = "1")
     @ApiModelProperty(value = "是否删除 1是 0否")
     private int deleted;
+    @ApiModelProperty(value = "1:表示有已完成的任务")
+    private Integer taskHasCompleted;
 //    public static ObjectDataClass planTo(AppPlan appPlan) {
 //        ObjectDataClass objectDataClass = new ObjectDataClass();
 //        objectDataClass.setId(appPlan.getId());

+ 10 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/gx/service/ResumptionServiceImpl.java

@@ -14,13 +14,16 @@ import com.xunmei.core.question.service.IQuestionService;
 import com.xunmei.core.resumption.domain.*;
 import com.xunmei.core.resumption.gx.vo.*;
 import com.xunmei.core.resumption.mapper.*;
+import com.xunmei.core.resumption.service.AppPlanService;
 import com.xunmei.core.resumption.vo.ResumptionTaskNewDto;
 import com.xunmei.system.api.RemoteOrgService;
 import com.xunmei.system.api.domain.SysOrg;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.TransactionManager;
 import org.springframework.transaction.annotation.Transactional;
+import sun.nio.ch.ThreadPool;
 
 import java.util.*;
 import java.util.stream.Collectors;
@@ -49,6 +52,9 @@ public class ResumptionServiceImpl implements ResumptionService {
     @Autowired
     private IQuestionService questionService;
 
+    @Autowired
+    private AppPlanService appPlanService;
+
     @Override
     public Map<String, List<ResumptionTaskListVo>> getTaskList(ResumptionTaskNewDto dto) {
 
@@ -121,7 +127,9 @@ public class ResumptionServiceImpl implements ResumptionService {
         int quarter = dateTime.getQuarter();
         //获取履职任务
         Resumption sysResumption = resumptionMapper.findOneByTaskIdAndDate(taskId, year, quarter);
-        Long orgId = sysResumption.getOrgId();
+        if (ObjectUtil.equal(taskDetailVo.getSubType(), 2)) {
+            appPlanService.updatePlanCompletedState(sysResumption.getPlanId(),1);
+        }
 
         sysResumption.setUpdateBy(SecurityUtils.getUsername());
         sysResumption.setSubmitorId(SecurityUtils.getUserId());
@@ -308,7 +316,7 @@ public class ResumptionServiceImpl implements ResumptionService {
                 } else {
                     for (ResumptionNFCVo nfcVo : orgAllNFCs) {
                         if (nfcVo.getAreaId().equals(resumptionPlanVo.getAreaId()) &&
-                                (ObjectUtil.isNull(resumptionPlanVo.getCheckId()) || ObjectUtil.equal(nfcVo.getCheckId(),resumptionPlanVo.getCheckId()))) {
+                                (ObjectUtil.isNull(resumptionPlanVo.getCheckId()) || ObjectUtil.equal(nfcVo.getCheckId(), resumptionPlanVo.getCheckId()))) {
                             nfcVo.setPointScan(resumptionPlanVo.getPointScan());
                             usedNFCID.add(nfcVo.getNfcId());
                         }

+ 7 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/AppPlanService.java

@@ -90,4 +90,11 @@ public interface AppPlanService extends IService<AppPlan> {
 
     AjaxResult buildPdf();
     AjaxResult buildResumptionPdf(Long id);
+
+    /**
+     * 更新计划及父计划的任务是否有已完成标志。
+     * @param planId
+     * @param state
+     */
+    void updatePlanCompletedState(Long planId,Integer state);
 }

+ 26 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/AppPlanServiceImpl.java

@@ -17,6 +17,7 @@ import com.xunmei.common.core.domain.R;
 import com.xunmei.common.core.domain.edu.domain.CoreEduTrainingTask;
 import com.xunmei.common.core.domain.edu.domain.CoreEduTrainingTaskToUser;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingTaskDetailVo;
+import com.xunmei.common.core.exception.ServiceException;
 import com.xunmei.common.core.domain.registerbook.domain.CoreRegisterBookPdf;
 import com.xunmei.common.core.enums.RegisterBookType;
 import com.xunmei.common.core.exception.SystemException;
@@ -852,4 +853,29 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
         }
         return befs;
     }
+
+    /**
+     * 更新计划及父计划的任务是否有已完成标志。
+     *
+     * @param planId
+     * @param state
+     */
+    @Override
+    @Async
+    public void updatePlanCompletedState(Long planId, Integer state) {
+        if (ObjectUtil.notEqual(state, 1) && ObjectUtil.notEqual(state, 0) && ObjectUtil.isNotNull(state)) {
+            throw new ServiceException("state参数值无效");
+        }
+
+        LambdaUpdateWrapper<AppPlan> wrapper = new LambdaUpdateWrapper();
+        wrapper.eq(AppPlan::getId, planId)
+                .eq(AppPlan::getTaskHasCompleted, state)
+                .set(AppPlan::getTaskHasCompleted, state);
+        if (ObjectUtil.isNull(state)) {
+            wrapper.isNull(AppPlan::getTaskHasCompleted);
+        } else {
+            wrapper.eq(AppPlan::getTaskHasCompleted, state);
+        }
+        baseMapper.update(null, wrapper);
+    }
 }

+ 0 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/task/ResumptionTaskBusiness.java

@@ -195,7 +195,6 @@ public class ResumptionTaskBusiness extends TaskCreatingServiceImplBase<Resumpti
         }
 
         buildTask(null, appPlans, workDate);
-
     }
 
 

+ 1 - 1
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/ICoreSafecheckPlanService.java

@@ -46,7 +46,7 @@ public interface ICoreSafecheckPlanService extends IService<CoreSafecheckPlan> {
      * @return 结果
      */
     int updateCoreSafecheckPlan(CoreSafecheckPlan coreSafecheckPlan);
-    public void childrenPlan(Long id);
+    void childrenPlan(Long id);
     /**
      * 批量删除常规安全检查计划
      *

+ 7 - 7
soc-modules/soc-modules-core/src/main/resources/mapper/board/CockpitMapper.xml

@@ -1,7 +1,7 @@
 <?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.xunmei.core.board.mapper.CockpitMapper">
-    <select id="resumption" resultType="com.xunmei.core.board.vo.TaskStatisticVo">
+    <select id="resumption" resultType="com.xunmei.core.board.vo.web.TaskStatisticVo">
         SELECT
         org_id,
          org_path,
@@ -15,7 +15,7 @@
         and org_path like concat(#{orgPath},'%')
         GROUP BY org_id,org_path
     </select>
-    <select id="safetyCheck" resultType="com.xunmei.core.board.vo.TaskStatisticVo">
+    <select id="safetyCheck" resultType="com.xunmei.core.board.vo.web.TaskStatisticVo">
         SELECT
         org_id,
         org_path,
@@ -30,7 +30,7 @@
         GROUP BY
         org_id,org_path
     </select>
-    <select id="monitor" resultType="com.xunmei.core.board.vo.TaskStatisticVo">
+    <select id="monitor" resultType="com.xunmei.core.board.vo.web.TaskStatisticVo">
         SELECT
         org_id,
         org_path,
@@ -45,7 +45,7 @@
         GROUP BY
         org_id,org_path
     </select>
-    <select id="edu" resultType="com.xunmei.core.board.vo.TaskStatisticVo">
+    <select id="edu" resultType="com.xunmei.core.board.vo.web.TaskStatisticVo">
         SELECT
         org_id,
         org_path,
@@ -60,7 +60,7 @@
         GROUP BY
         org_id,org_path
     </select>
-    <select id="drill" resultType="com.xunmei.core.board.vo.TaskStatisticVo">
+    <select id="drill" resultType="com.xunmei.core.board.vo.web.TaskStatisticVo">
         SELECT
         org_id,
         org_path,
@@ -75,7 +75,7 @@
         GROUP BY
         org_id,org_path
     </select>
-    <select id="orgGA38" resultType="com.xunmei.core.board.vo.OrgGA38StatisticVo">
+    <select id="orgGA38" resultType="com.xunmei.core.board.vo.web.OrgGA38StatisticVo">
         SELECT o.id                                           as org_id,
                o.path                                         as org_path,
                o.short_name                                   as org_name,
@@ -86,7 +86,7 @@
           and o.deleted = 0
           and o.path like concat((select path from sys_org where id = #{orgId}), '%')
     </select>
-    <select id="question" resultType="com.xunmei.core.board.vo.QuestionStatisticVo">
+    <select id="question" resultType="com.xunmei.core.board.vo.web.QuestionStatisticVo">
         SELECT count(0) as total,
                sum(case confirm_status when 0 then 1 else 0 end) as unconfirm,
                sum(case confirm_status when 1 then 1 else 0 end) as auditing,

+ 3 - 0
soc-modules/soc-modules-core/src/main/resources/mapper/evaluate/CoreEvaluateTaskMapper.xml

@@ -200,6 +200,9 @@
         <if test="request.type != null">
             AND   e.type= #{request.type}
         </if>
+          <if test="request.orgId !=null">
+              AND   e.id=#{request.orgId}
+          </if>
             <if test="request.orgPath != null  and request.orgPath != ''">
                 AND a.org_path like concat(#{request.orgPath}, '%')
             </if>

+ 13 - 6
soc-modules/soc-modules-core/src/main/resources/mapper/reportForms/ResumptionReportMapper.xml

@@ -8,10 +8,10 @@
         SELECT
             COUNT( a.id ) AS frontPlanNumber,
             IFNULL( SUM( IF ( a.`status` = 3, 1, 0 )), 0 ) AS frontRealityNumber,
-            IFNULL(
-                    CONCAT( SUM( IF ( a.`status` = 3, 1, 0 ))/ COUNT( a.id )* 100, '%' ),
-                    '0%'
-                ) AS frontRate,
+        IF( SUM( IF ( a.`status` = 3, 1, 0 ))=0 OR COUNT( a.id )=0,'0%',IFNULL(
+        CONCAT( SUM( IF ( a.`status` = 3, 1, 0 ))/ COUNT( a.id )* 100, '%' ),
+        '0%'
+        )) AS frontRate,
             IFNULL( SUM( a.exception_count ), 0 ) AS frontAbnormalNumber
         FROM
             core_resumption a
@@ -19,7 +19,14 @@
         WHERE
             b.plan_type = #{planType}
           AND a.type = 2
-          AND a.org_id = #{orgId}
-          AND a.ymd_date = #{date}
+          <if test="orgId !=null">
+              AND a.org_id = #{orgId}
+          </if>
+          <if test="date !=null">
+              AND a.ymd_date = #{date}
+          </if>
+        <if test="orgPath !=null">
+            and a.org_path  like concat(#{orgPath},'%')
+        </if>
     </select>
 </mapper>

+ 1 - 0
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysUserServiceImpl.java

@@ -148,6 +148,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             user.setParentOrgIds(r.getOrgIdList());
         }
         user.setDeleted(0);
+        user.setIsLock("0");
         Page<SysUser> page;
         //分页
         if (user.getPageNum() != null && user.getPageSize() != null) {

+ 1 - 1
soc-modules/soc-modules-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -430,7 +430,7 @@
         u.deleted,
         u.last_ip,
         u.last_time,
-        o.NAME AS org_name,
+        o.short_NAME AS org_name,
         o.path AS org_path,
         u.image,
         u.card,