浏览代码

驾驶舱修改-复位启机数量;月度工分汇总-考核得分去除最小值为0的限制

wanglt 5 月之前
父节点
当前提交
3132c4bf9a

+ 10 - 0
ygtx-gxt/src/main/java/com/ygtx/gxt/domain/GxtOrderData.java

@@ -169,6 +169,16 @@ public class GxtOrderData extends BaseEntity
 
     private String orderCode;
 
+    private Integer restartNum;
+
+    public Integer getRestartNum() {
+        return restartNum;
+    }
+
+    public void setRestartNum(Integer restartNum) {
+        this.restartNum = restartNum;
+    }
+
     public String getOrderCode() {
         return orderCode;
     }

+ 22 - 13
ygtx-gxt/src/main/resources/mapper/gxt/GxtWorkOrderMapper.xml

@@ -91,6 +91,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="workOrderNum"    column="workOrderNum" />
         <result property="repairOrderNum"    column="repairOrderNum" />
         <result property="orderCode"    column="order_code" />
+        <result property="restartNum"    column="restart_num" />
     </resultMap>
 
     <sql id="selectGxtWorkOrderVo">
@@ -490,19 +491,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <trim prefix="SELECT" suffixOverrides=",">
             <choose>
                 <when test="(xfsc != null and xfsc == 'true') or (xysc != null and xysc == 'true') or (zbsc != null and zbsc == 'true') or (tjsc != null and tjsc == 'true') or (qjbwsc != null and qjbwsc == 'true') or (clsc != null and clsc == 'true') or (gqsc != null and gqsc == 'true') or (score != null and score == 1)">
-            o.work_order_project_no AS order_code,
-            <if test="workOrderNum != null and workOrderNum == 1">
-                CASE
-                WHEN o.orderType='维保工单' THEN 1
-                ELSE NULL
-                END AS workOrderNum,
-            </if>
-            <if test="repairOrderNum != null and repairOrderNum == 1">
-                CASE
-                WHEN o.orderType='维修工单' THEN 1
-                ELSE NULL
-                END AS repairOrderNum,
-            </if>
+                    o.work_order_project_no AS order_code,
+                    <if test="workOrderNum != null and workOrderNum == 1">
+                        CASE
+                        WHEN o.orderType='维保工单' THEN 1
+                        ELSE NULL
+                        END AS workOrderNum,
+                    </if>
+                    <if test="repairOrderNum != null and repairOrderNum == 1">
+                        CASE
+                        WHEN o.orderType='维修工单' THEN 1
+                        ELSE NULL
+                        END AS repairOrderNum,
+                    </if>
+                    <if test="restartNum != null and restartNum == 1">
+                        o.restart_flag AS restart_num,
+                    </if>
                 </when>
                 <otherwise>
                     <if test="workOrderNum != null and workOrderNum == 1">
@@ -517,6 +521,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                         ELSE NULL
                         END AS repairOrderNum,
                     </if>
+                    <if test="restartNum != null and restartNum == 1">
+                        SUM(o.restart_flag) AS restart_num,
+                    </if>
                 </otherwise>
             </choose>
             <if test="(workOrder != null and workOrder == true) or (repairOrder != null and repairOrder==true)">o.orderType,</if>
@@ -544,6 +551,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 wo.pcs_device_name AS `code`,
                 wo.brand,
                 wo.model,
+                IF(wo.restart_time IS NOT NULL, 1, NULL) AS restart_flag,
                 wo.mis_no AS `system`,
                 d.dept_name AS pcs,
                 p.dept_name AS center,
@@ -602,6 +610,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 wo.pcs_device_name AS `code`,
                 wo.brand,
                 wo.model,
+                IF(wo.restart_time IS NOT NULL, 1, NULL) AS restart_flag,
                 NULL AS `system`,
                 d.dept_name AS pcs,
                 p.dept_name AS center,

+ 0 - 3
ygtx-ui/src/views/gxt/userScore/info.vue

@@ -204,7 +204,6 @@
             <template #default="scope">
               <el-input-number 
                 v-model="scope.row.maintenanceTotalScore" 
-                :min="0" 
                 controls-position="right" 
                 readonly
                 class="full-width-input"
@@ -215,7 +214,6 @@
             <template #default="scope">
               <el-input-number 
                 v-model="scope.row.repairTotalScore" 
-                :min="0" 
                 controls-position="right" 
                 readonly
                 class="full-width-input"
@@ -226,7 +224,6 @@
             <template #default="scope">
               <el-input-number 
                 v-model="scope.row.finalScore" 
-                :min="0" 
                 controls-position="right" 
                 readonly
                 class="full-width-input"

+ 8 - 4
ygtx-ui/src/views/gxt/userScore/scoreSummary.vue

@@ -4,7 +4,7 @@
   <div class="app-container">
     <!-- 页面标题 -->
     <div class="content-header">
-      <h1 class="page-title">月度工分汇总-{{ monthScore.deptName }}</h1>
+      <h1 class="page-title">月度工分汇总<span v-if="!isList" class="dept-name">-{{ monthScore.deptName }}</span></h1>
       <el-select v-if="!isList" style="width: 150px;" v-model="selectedMonth" placeholder="请选择月份" @change="handleMonthChange">
         <el-option
           v-for="item in monthOptions"
@@ -294,7 +294,6 @@
             <template #default="scope">
               <el-input-number 
                 v-model="scope.row.maintenanceTotalScore" 
-                :min="0" 
                 controls-position="right" 
                 readonly
                 class="full-width-input"
@@ -305,7 +304,6 @@
             <template #default="scope">
               <el-input-number 
                 v-model="scope.row.repairTotalScore" 
-                :min="0" 
                 controls-position="right" 
                 readonly
                 class="full-width-input"
@@ -316,7 +314,6 @@
             <template #default="scope">
               <el-input-number 
                 v-model="scope.row.finalScore" 
-                :min="0" 
                 controls-position="right" 
                 readonly
                 class="full-width-input"
@@ -935,6 +932,13 @@ export default {
   margin: 0;
 }
 
+.dept-name {
+  font-size: 1.4rem;
+  font-weight: 600;
+  color: #2d3748;
+  font-style: normal;
+}
+
 .card-form {
   border-radius: 10px; /* 统一圆角半径 */
   margin-top: 20px;

+ 14 - 4
ygtx-ui/src/views/index4.vue

@@ -147,7 +147,10 @@
             </div>
             <div id="workorder-content" class="tree-content" :class="{'show': treeExpanded.workorder}">
               <label class="checkbox-item ml-2">
-                <el-checkbox v-model="indicatorFilters.workorder.enabled" label="工单数量" @change="handleWorkorderSelect" />
+                <el-checkbox v-model="indicatorFilters.workorder.workorder" label="工单数量" @change="handleWorkorderSelect" />
+              </label>
+              <label class="checkbox-item ml-2">
+                <el-checkbox v-model="indicatorFilters.workorder.restartNum" label="复位启机数量" @change="handleWorkorderSelect" />
               </label>
             </div>
           </div>
@@ -355,6 +358,7 @@
             <el-table-column v-if="queryParams.chargePerson" prop="chargePerson" label="工作负责人" :width="changeWidth()" header-align="center" align="center"></el-table-column>
             <el-table-column v-if="queryParams.workOrderNum==1" prop="workOrderNum" label="维保工单数" :width="changeWidth()" header-align="center" align="center"></el-table-column>
             <el-table-column v-if="queryParams.repairOrderNum==1" prop="repairOrderNum" label="维修工单数" :width="changeWidth()" header-align="center" align="center"></el-table-column>
+            <el-table-column v-if="queryParams.restartNum==1" prop="restartNum" label="复位启机数量" :width="changeWidth()" header-align="center" align="center"></el-table-column>
             <el-table-column v-if="queryParams.score==1" prop="score" label="工分" :width="changeWidth()" header-align="center" align="center" :formatter="formatScore"></el-table-column>
             <el-table-column v-if="queryParams.tjsc" prop="tjsc" label="停机时长(h)" :width="changeWidth()*1.5" header-align="center" align="center" :formatter="formatScore"></el-table-column>
             <el-table-column v-if="queryParams.xfsc" prop="xfsc" label="下发时长(h)" :width="changeWidth()*1.5" header-align="center" align="center" :formatter="formatScore"></el-table-column>
@@ -416,7 +420,8 @@ export default {
       // 指标筛选数据
       indicatorFilters: {
         workorder: {
-          enabled: false
+          workorder: false,
+          restartNum: false,
         },
         workhour: {
           enabled: false,
@@ -471,6 +476,7 @@ export default {
         chargePerson: false,
         repairOrderNum: null,
         workOrderNum: null,
+        restartNum: null,
         tjsc: false,
         xfsc: false,
         xysc: false,
@@ -614,6 +620,9 @@ export default {
       if (this.queryParams.repairOrderNum==1) {
         num += 1;
       }
+      if (this.queryParams.restartNum==1) {
+        num += 1;
+      }
       if (this.queryParams.score==1) {
         num += 1;
       }
@@ -673,13 +682,14 @@ export default {
       this.queryParams.chargePerson = this.dimensionFilters.other.manager;
 
       // 指标筛选
-      if (this.indicatorFilters.workorder.enabled) {
+      if (this.indicatorFilters.workorder.workorder) {
         this.queryParams.repairOrderNum = 1;
         this.queryParams.workOrderNum = 1;
       }else{
         this.queryParams.repairOrderNum = null;
         this.queryParams.workOrderNum = null;
       }
+      this.queryParams.restartNum = this.indicatorFilters.workorder.restartNum ? 1 : null;
       this.queryParams.tjsc = this.indicatorFilters.workhour.items.tjsc;
       this.queryParams.xfsc = this.indicatorFilters.workhour.items.xfsc;
       this.queryParams.xysc = this.indicatorFilters.workhour.items.xysc;
@@ -793,7 +803,7 @@ export default {
     // 清空除指定类别外的其他指标选择
     clearOtherIndicators(currentCategory) {
       if (currentCategory !== 'workorder') {
-        this.indicatorFilters.workorder.enabled = false;
+        this.indicatorFilters.workorder.workorder = false;
       }
       if (currentCategory !== 'workhour') {
         this.indicatorFilters.workhour.enabled = false;