浏览代码

知识库/范本库,演练登记列表 优秀案例学习列表,工作台(培训/演练任务排序)

jingyuanchao 1 年之前
父节点
当前提交
c8ac3e189f

+ 2 - 1
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/drill/dto/CoreDrillTaskPageDto.java

@@ -35,5 +35,6 @@ public class CoreDrillTaskPageDto extends PageRequest {
     @ApiModelProperty(value = "是否是App端查询", notes = "App端查询传递此参数")
     private Integer isAppSelect;
 
-
+    @ApiModelProperty(value = "特殊查询处理")
+    private Integer isSpecial;
 }

+ 7 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillTaskServiceImpl.java

@@ -166,10 +166,15 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
                 request.setEndTime(DateUtil.endOfDay(request.getRange()[1]));
             }
         }
+        SysOrg org = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(request.getOrgId(), SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
         if (Boolean.TRUE.equals(request.getCheckSub())) {
-            SysOrg org = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(request.getOrgId(), SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
             request.setOrgPath(org.getPath());
         }
+        //如果行社以下的用户需要看已完成的任务.那么需要去查询待评价的数据,因为行方需求对于网点的用户来说签名完成(待评价)就相当于完成任务了
+        if (ObjectUtil.equal(request.getStatus(),DrillDoStatus.DONE.getCode())&&OrgTypeEnum.HANG_SHE.getCode()<org.getType()){
+            request.setStatus(null);
+            request.setIsSpecial(1);
+        }
 
     }
 
@@ -1149,7 +1154,7 @@ public class CoreDrillTaskServiceImpl extends ServiceImpl<CoreDrillTaskMapper, C
         list.forEach(item -> {
             item.setType(PanelTypeEnums.DRILL.getCode());
         });
-
+        list.sort(Comparator.comparing(PanelListVo::getStatus).reversed());
         return list;
     }
 

+ 0 - 3
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/panel/service/impl/PanelServiceImpl.java

@@ -64,9 +64,6 @@ public class PanelServiceImpl implements PanelService {
 private ICoreEvaluateTaskService iCoreEvaluateTaskService;
     @Override
     public List<PanelResultVo> selectPage() throws ExecutionException, InterruptedException, TimeoutException {
-
-        log.info("App工作台任务查询,当前时间:{}", DateUtil.format(DateUtil.date(), Constants.HMS_FORMAT));
-
         List<Long> roles = RemoteCallHandlerExecutor.executeRemoteCall(
                 () -> roleService.getUserRoleId(SecurityUtils.getUserId(), SecurityConstants.FROM_SOURCE),
                 ErrorMsgConstants.QUERY_USER_ROLE_ERROR);

+ 12 - 4
soc-modules/soc-modules-core/src/main/resources/mapper/drill/CoreDrillDictionaryMapper.xml

@@ -172,34 +172,42 @@
     </select>
     <select id="selectPageData1" resultType="com.xunmei.common.core.domain.drill.vo.CoreDrillDictionaryPageVo">
         select * from core_drill_dictionary d inner join sys_dict_data dd on d.drill_type=dd.dict_value and
-        dd.dict_type='core_drill_type' WHERE deleted=0
+        dd.dict_type='core_drill_type'  inner join sys_org o on d.org_id=o.id
+        WHERE d.deleted=0 and o.deleted=0
         <include refid="pageSql"/>
         and d.org_id=#{request.orgId}
+        order by ifnull(o.sort,0)
     </select>
     <select id="selectPageData2" resultType="com.xunmei.common.core.domain.drill.vo.CoreDrillDictionaryPageVo">
         select * from core_drill_dictionary d inner join sys_dict_data dd on d.drill_type=dd.dict_value and
-        dd.dict_type='core_drill_type' WHERE deleted=0
+        dd.dict_type='core_drill_type' inner join sys_org o on d.org_id=o.id
+        WHERE d.deleted=0 and o.deleted=0
         <include refid="pageSql"/>
         and d.org_path like concat(#{request.orgPath},'%')
+        order by ifnull(o.sort,0)
     </select>
     <select id="selectPageData3" resultType="com.xunmei.common.core.domain.drill.vo.CoreDrillDictionaryPageVo">
         select * from core_drill_dictionary d inner join sys_dict_data dd on d.drill_type=dd.dict_value and
-        dd.dict_type='core_drill_type' WHERE deleted=0
+        dd.dict_type='core_drill_type' inner join sys_org o on d.org_id=o.id
+        WHERE d.deleted=0 and o.deleted=0
         <include refid="pageSql"/>
         and d.org_id in
         <foreach item="item" collection="request.orgIdList" open="(" separator="," close=")">
             #{item}
         </foreach>
+        order by ifnull(o.sort,0)
     </select>
     <select id="selectPageData4" resultType="com.xunmei.common.core.domain.drill.vo.CoreDrillDictionaryPageVo">
         select * from core_drill_dictionary d inner join sys_dict_data dd on d.drill_type=dd.dict_value and
-        dd.dict_type='core_drill_type' WHERE deleted=0
+        dd.dict_type='core_drill_type' inner join sys_org o on d.org_id=o.id
+        WHERE d.deleted=0 and o.deleted=0
         <include refid="pageSql"/>
         and (d.org_id in
         <foreach item="item" collection="request.orgIdList" open="(" separator="," close=")">
             #{item}
         </foreach>
         or d.org_path like concat(#{request.orgPath},'%'))
+        order by ifnull(o.sort,0)
     </select>
 
 

+ 6 - 1
soc-modules/soc-modules-core/src/main/resources/mapper/drill/CoreDrillTaskMapper.xml

@@ -86,9 +86,12 @@
             <if test="request.status != null">
                 and t.status=#{request.status}
             </if>
+            <if test="request.isSpecial != null">
+                and t.status in(2,3)
+            </if>
             <include refid="timeRangeSql"/>
         </where>
-        order by field(t.status,0,5,1,2,3,4),t.update_time desc
+        order by field(t.status,5,0,1,2,3,4),t.title desc
     </select>
 
     <select id="selectReport" resultType="com.xunmei.common.core.domain.drill.vo.CoreDrillTaskReportVo">
@@ -214,6 +217,7 @@
 
             )
             )
+            order by t.drill_end_time desc
         </if>
     </select>
 
@@ -235,6 +239,7 @@
             #{status}
         </foreach>
         <include refid="timeRangeSql"/>
+        order by field(t.status,5,0,1,2,3,4),t.end_date desc
     </select>
     <sql id="timeRangeSql">
         <if test="request.startTime != null and request.endTime != null">