浏览代码

Merge branch '20210223' of http://114.135.61.188:53000/UIMS/Code into 20210223

lihui007 4 年之前
父节点
当前提交
4eb76218e8

+ 15 - 2
operation_manager/src/main/java/com/huaxu/order/controller/WorkOrderManageController.java

@@ -389,16 +389,29 @@ public class WorkOrderManageController {
         AjaxMessage<List<UserEntity>> listAjaxMessage = userCenterClient.findUserListByType();
         for(UserEntity userEntity : listAjaxMessage.getData()){
             Map<String, Object> orderStatusMap = workOrderManageService.selectOrderUserStatus(userEntity.getId().toString());
+
+            String orderStatus =  "空闲";
             Map<String, Object> map = new HashMap<>();
             map.put("id", userEntity.getId());
             map.put("userName", userEntity.getUsername());
             map.put("phone", userEntity.getPhone());
             map.put("deptName", userEntity.getDeptOrgName());
             if (orderStatusMap != null) {
-                map.put("status", orderStatusMap.get("S").toString());
+                orderStatus = orderStatusMap.get("S").toString();
+                if(orderStatus.equals("空闲")){
+                    Map<String, Object> planStatusMap = workOrderManageService.selectPlanUserStatus(userEntity.getId().toString());
+                    if(planStatusMap != null){
+                        orderStatus =  planStatusMap.get("S").toString();
+                    }
+                }
+                map.put("status", orderStatus);
             }
             else {
-                map.put("status", "空闲");
+                Map<String, Object> planStatusMap = workOrderManageService.selectPlanUserStatus(userEntity.getId().toString());
+                if(planStatusMap != null){
+                    orderStatus =  planStatusMap.get("S").toString();
+                }
+                map.put("status",orderStatus);
             }
             Map<String, Object> onLineStatusMap = workOrderManageService.selectMaintainUserStatus(userEntity.getId().toString());
             if(onLineStatusMap != null) {

+ 6 - 0
operation_manager/src/main/java/com/huaxu/order/dao/WorkOrderManageMapper.java

@@ -49,8 +49,14 @@ public interface WorkOrderManageMapper {
 
     Map<String,Object> selectOrderUserStatus(@Param("userId") String userId);
 
+    Map<String,Object> selectPlanUserStatus(@Param("userId") String userId);
+
     Map<String,Object> selectMaintainUserStatus(@Param("userId") String userId);
 
+
+
+
+
     /**
      * 待处理权限
      */

+ 4 - 0
operation_manager/src/main/java/com/huaxu/order/service/WorkOrderManageService.java

@@ -77,6 +77,8 @@ public interface WorkOrderManageService {
      */
     Map<String,Object> selectOrderUserStatus(@Param("userId") String userId);
 
+    Map<String,Object> selectPlanUserStatus(@Param("userId") String userId);
+
     Map<String,Object> selectMaintainUserStatus(@Param("userId") String userId);
 
 
@@ -90,5 +92,7 @@ public interface WorkOrderManageService {
     List<WorkOrderManageDto> selectOrderStatus(WorkOrderManageDto workOrderManageDto);
 
 
+
+
     List<WorkOrderManageDto> selectMaintainOrder(WorkOrderManageDto workOrderManageDto);
 }

+ 5 - 0
operation_manager/src/main/java/com/huaxu/order/service/impl/WorkOrderManageServiceImpl.java

@@ -133,6 +133,11 @@ public class WorkOrderManageServiceImpl implements WorkOrderManageService {
         return workOrderManageMapper.selectOrderUserStatus(userId);
     }
 
+    @Override
+    public Map<String, Object> selectPlanUserStatus(String userId) {
+        return workOrderManageMapper.selectPlanUserStatus(userId);
+    }
+
     @Override
     public Map<String, Object> selectMaintainUserStatus(String userId) {
         return workOrderManageMapper.selectMaintainUserStatus(userId);

+ 3 - 3
operation_manager/src/main/resources/mapper/ProcessDefinitionMapper.xml

@@ -158,13 +158,13 @@
     <update id="update">
         update sc_process_definition
         <set>
-            <if test="processName != null and processName != ''">
+            <if test="processName != null  ">
                 process_name = #{processName},
             </if>
-            <if test="processKey != null and processKey != ''">
+            <if test="processKey != null  ">
                 process_key = #{processKey},
             </if>
-            <if test="processDesc != null and processDesc != ''">
+            <if test="processDesc != null  ">
                 process_desc = #{processDesc},
             </if>
             <if test="tenantId != null and tenantId != ''">

+ 31 - 16
operation_manager/src/main/resources/mapper/order/WorkOrderManageMapper.xml

@@ -665,25 +665,39 @@
     where order_pid =  #{orderPid,jdbcType=VARCHAR}
   </select>
 
-  <!--查询派单时的用户状态-->
+  <!--查询工单派单时的用户状态-->
    <select id="selectOrderUserStatus" parameterType="java.lang.String" resultType="map">
-    select X, Y, CASE WHEN S IS NULL THEN '空闲' WHEN S='0' THEN '空闲' ELSE '执行中' END S ,
-    case when offlinetime is null then '离线' when offlinetime>10 then '离线' when offlinetime &lt;= 10 THEN '在线' END L FROM
-    (
-        select order_user_id,longtitude X, latitude Y, TIMESTAMPDIFF(second,upload_date, now()) offlinetime from sc_work_order_manage t1 left join sc_gps_data t2
-        on t1.order_user_id = t2.user_id
-        group by order_user_id,longtitude, latitude,upload_date
-    ) a
-     left join
-    (
-      select count(*) S,order_user_id from sc_work_order_manage
-      where order_status = 1
-      group by order_user_id
-    ) b
-    on a.order_user_id=b.order_user_id
-      where a.order_user_id= #{userId,jdbcType=INTEGER}
+      SELECT X, Y,
+       CASE WHEN S IS NULL THEN '空闲' WHEN S='0' THEN '空闲' ELSE '执行中' END S ,
+       CASE WHEN offlinetime IS NULL THEN '离线' WHEN offlinetime>10 THEN '离线' WHEN offlinetime &lt;= 10 THEN '在线' END L
+       FROM
+        (
+       select order_user_id,longtitude X, latitude Y, TIMESTAMPDIFF(second,upload_date, now()) offlinetime from sc_work_order_manage t1 left join sc_gps_data t2
+       on t1.order_user_id = t2.user_id
+       group by order_user_id,longtitude, latitude,upload_date
+       ) a
+      left join
+      (
+       select count(*) S,order_user_id from sc_work_order_manage
+       where order_status = 1
+       group by order_user_id
+       ) b
+       on a.order_user_id=b.order_user_id
+       where a.order_user_id= #{userId,jdbcType=INTEGER}
+  </select>
+  <!--查询任务单派单时的用户状态-->
+  <select id="selectPlanUserStatus" parameterType="java.lang.String" resultType="map">
+     SELECT
+     CASE WHEN S IS NULL THEN '空闲' WHEN S='0' THEN '空闲' ELSE '执行中' END S
+     FROM (
+       select count(*) S,user_id from sc_plan_manage
+       where plan_status = 1
+       group by user_id
+     ) a
+     where a.user_id= #{userId,jdbcType=INTEGER}
   </select>
 
+
   <!--查询维修列表的用户状态-->
   <select id="selectMaintainUserStatus" parameterType="java.lang.String" resultType="map">
     select X, Y,
@@ -795,5 +809,6 @@
         </if>
       </if>
     </where>
+    order by t1.date_create desc
   </select>
 </mapper>