Jelajahi Sumber

🦄 refactor: 日报

Zimo 2 jam lalu
induk
melakukan
22c22e8cec

+ 23 - 0
src/views/pms/iotrddailyreport/fillDailyReport.vue

@@ -120,9 +120,32 @@
               <dict-tag :type="DICT_TYPE.OPERATION_FILL_ORDER_STATUS" :value="scope.row.status" />
             </template>
           </el-table-column>
+          <el-table-column label="审批状态" align="center" prop="auditStatus" :min-width="84">
+            <template #default="scope">
+              <el-tag v-if="scope.row.auditStatus === 0" type="info">
+                {{ '待提交' }}
+              </el-tag>
+              <el-tag v-else-if="scope.row.auditStatus === 10">
+                {{ '待审批' }}
+              </el-tag>
+              <el-tag v-else-if="scope.row.auditStatus === 20" type="success">
+                {{ '审批通过' }}
+              </el-tag>
+              <el-tag v-else-if="scope.row.auditStatus === 30" type="danger">
+                {{ '审批拒绝' }}
+              </el-tag>
+            </template>
+          </el-table-column>
           <el-table-column label="施工队伍" align="center" prop="deptName" />
           <el-table-column label="项目" align="center" prop="contractName" />
           <el-table-column label="任务" align="center" prop="taskName" />
+          <el-table-column label="非生产时间" align="center" prop="nonProductFlag">
+            <template #default="scope">
+              <el-tag :type="scope.row.nonProductFlag ? 'success' : 'danger'">
+                {{ scope.row.nonProductFlag ? '已填写' : '未填写' }}
+              </el-tag>
+            </template>
+          </el-table-column>
           <el-table-column label="带班干部" align="center" prop="responsiblePersonNames" />
           <el-table-column label="填报人" align="center" prop="submitterNames" />
           <!--

+ 24 - 0
src/views/pms/iotrddailyreport/index.vue

@@ -223,6 +223,14 @@
             :min-width="columnWidths.faultDowntime.width"
             resizable
           />
+          <el-table-column label="非生产时间" align="center" prop="nonProductFlag" :min-width="80">
+            <template #default="scope">
+              <el-tag :type="scope.row.nonProductFlag ? 'success' : 'danger'">
+                {{ scope.row.nonProductFlag ? '已填写' : '未填写' }}
+              </el-tag>
+            </template>
+          </el-table-column>
+
           <el-table-column
             label="项目"
             align="center"
@@ -237,6 +245,22 @@
             :min-width="columnWidths.timeRange.width"
             resizable
           />
+          <el-table-column label="审批状态" align="center" prop="auditStatus" :min-width="84">
+            <template #default="scope">
+              <el-tag v-if="scope.row.auditStatus === 0" type="info">
+                {{ '待提交' }}
+              </el-tag>
+              <el-tag v-else-if="scope.row.auditStatus === 10">
+                {{ '待审批' }}
+              </el-tag>
+              <el-tag v-else-if="scope.row.auditStatus === 20" type="success">
+                {{ '审批通过' }}
+              </el-tag>
+              <el-tag v-else-if="scope.row.auditStatus === 30" type="danger">
+                {{ '审批拒绝' }}
+              </el-tag>
+            </template>
+          </el-table-column>
 
           <el-table-column label="操作" align="center" min-width="120px" fixed="right">
             <template #default="scope">

+ 19 - 0
src/views/pms/iotrhdailyreport/rh-form.vue

@@ -1,5 +1,6 @@
 <script lang="ts" setup generic="T">
 import { IotRhDailyReportApi } from '@/api/pms/iotrhdailyreport'
+import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
 import { FormInstance, FormRules } from 'element-plus'
 import { computed, reactive, ref, watch, nextTick } from 'vue'
 
@@ -43,6 +44,7 @@ interface FormOriginal {
   dailyWaterInjection: number
   dailyInjectGasTime: number
   dailyInjectWaterTime: number
+  constructionStatus: string
 
   // 11个非生产时间字段
   repairTime: number
@@ -84,6 +86,7 @@ const FORM_KEYS: (keyof FormOriginal)[] = [
   'dailyWaterInjection',
   'dailyInjectGasTime',
   'dailyInjectWaterTime',
+  'constructionStatus',
   'productionStatus',
   'remark',
   'relocationDays',
@@ -241,6 +244,7 @@ const rules = reactive<FormRules>({
   dailyWaterInjection: [
     { required: true, message: '请输入当日注水量', trigger: ['blur', 'change'] }
   ],
+  constructionStatus: [{ required: true, message: '请输入施工状态', trigger: ['blur', 'change'] }],
   productionStatus: [{ required: true, message: '请输入生产动态', trigger: ['blur', 'change'] }],
 
   // 生产时间绑定校验
@@ -408,6 +412,21 @@ const handleAudit = async (auditStatus: 20 | 30) => {
             :class="{ 'warning-input': transitTime.original > 1.2 }"
           />
         </el-form-item>
+        <el-form-item label="施工状态" prop="constructionStatus">
+          <el-select
+            v-model="form.constructionStatus"
+            placeholder="请选择施工状态"
+            :disabled="isMainFieldDisabled"
+            clearable
+          >
+            <el-option
+              v-for="(dict, index) in getStrDictOptions(DICT_TYPE.PMS_PROJECT_TASK_SCHEDULE)"
+              :key="index"
+              :label="dict.label"
+              :value="dict.value"
+            />
+          </el-select>
+        </el-form-item>
         <el-form-item label="当日注气量(方)" prop="dailyGasInjection">
           <el-input-number
             class="!w-full"