Bläddra i källkod

远程配置项初步分组

gz 3 år sedan
förälder
incheckning
9f12236468
2 ändrade filer med 263 tillägg och 179 borttagningar
  1. 247 173
      src/views/downlinktask/taskremotecfg/index.vue
  2. 16 6
      src/views/downlinktask/ttaskdown/index.vue

+ 247 - 173
src/views/downlinktask/taskremotecfg/index.vue

@@ -52,10 +52,12 @@
             <p m="t-0 b-2" v-if="props.row.ip3Port3 != null">通道3地址: {{ props.row.ip3Port3 }}</p>
             <p m="t-0 b-2" v-if="props.row.ip4Port4 != null">通道4地址: {{ props.row.ip4Port4 }}</p>
             <p m="t-0 b-2" v-if="props.row.domainNamePort != null">紧急域名及端口: {{ props.row.domainNamePort }}</p>
-            <p m="t-0 b-2" v-if="props.row.dnType != null">水表口径:DN {{ props.row.dnType }}</p>
+            <p m="t-0 b-2" v-if="props.row.dnType != null">水表口径:DN {{ props.row.dnType }} </p>
             <p m="t-0 b-2" v-if="props.row.digitNum != null">数字个数: {{ props.row.digitNum }}</p>
-            <p m="t-0 b-2" v-if="props.row.uintType != null">水表尾数单位: {{ props.row.uintType }} m³</p>
-            <p m="t-0 b-2" v-if="props.row.setupDir != null">安装方向: {{ props.row.setupDir == '0' ? '正向' : '反向' }}</p>
+            <p m="t-0 b-2" v-if="props.row.uintType != null">水表尾数单位: {{ unitTypeMap[Number(props.row.uintType)].label }}
+              m³</p>
+            <!-- <p m="t-0 b-2" v-if="props.row.setupDir != null">安装方向: {{ props.row.setupDir == '0' ? '正向' : '反向' }}</p> -->
+            <p m="t-0 b-2" v-if="props.row.setupDir != null">安装方向: {{ setupDirMap[props.row.setupDir].label }}</p>
             <p m="t-0 b-2" v-if="props.row.sampleInterval != null">采样间隔: {{ props.row.sampleInterval }} 分钟</p>
             <p m="t-0 b-2" v-if="props.row.upInterval != null">上传服务器间隔: {{ props.row.upInterval }} 分钟</p>
             <p m="t-0 b-2" v-if="props.row.ltSampleInterval != null">低温采样间隔: {{ props.row.ltSampleInterval }} 小时</p>
@@ -99,8 +101,7 @@
       <el-table-column label="执行状态" header-align="center" align="center" width="100">
         <template #default="scope">
           <span v-if="scope.row.finishedFlag === '0'">未执行</span>
-          <span v-if="scope.row.finishedFlag === '1'">已执行</span>
-          <span v-if="scope.row.finishedFlag === '2'">已完成</span>
+          <span v-if="scope.row.finishedFlag === '1'">已完成</span>
         </template>
       </el-table-column>
 
@@ -128,19 +129,17 @@
     <!-- 新增面板开始 -->
     <el-dialog :title="adddialog.title" v-model="adddialog.visible" width="1300px" draggable center
       @close="dialogClose">
-
       <el-form v-if="state.isAdd" v-model="aiCbqCfgQueryParams" ref="loadFormRef">
         <el-row>
           <el-col :span="7">
             <el-form-item label="设备SN:" label-width="150px" prop="deviceSn">
-              <el-input v-model="aiCbqCfgQueryParams.deviceSn" placeholder="设备SN" maxlength="11"
- />
+              <el-input v-model="aiCbqCfgQueryParams.deviceSn" placeholder="设备SN" maxlength="11" />
             </el-form-item>
           </el-col>
           <el-col :span="1" />
           <el-col :span="7">
             <el-form-item label="遥测站编码:" label-width="150px">
-              <el-input placeholder="核对遥测站编码" v-model="formAddData.stationCode"  disabled />
+              <el-input placeholder="核对遥测站编码" v-model="formAddData.stationCode" disabled />
             </el-form-item>
           </el-col>
           <el-col :span="1">
@@ -148,13 +147,12 @@
               <el-button type="primary" class="button" @click="loadConfig" style="margin-left:10px">加载配置</el-button>
             </el-form-item>
           </el-col>
-        </el-row>
-        <el-divider style="margin-top: 0;" />
+        </el-row>    
       </el-form>
-
+      <el-divider style="margin-top: 0;margin-bottom: 5;"/>
       <el-form ref="addFormRef" :model="formAddData" :rules="state.rules">
         <el-row>
-          <el-col :span="7">
+          <!-- <el-col :span="7">
             <el-form-item label="设备SN:" label-width="150px" prop="deviceSn">
               <el-input v-model="formAddData.deviceSn" placeholder="设备SN" disabled />
             </el-form-item>
@@ -163,7 +161,7 @@
             <el-form-item>
               <el-switch class="switch_style" />
             </el-form-item>
-          </el-col>
+          </el-col> -->
 
           <el-col :span="7">
             <el-form-item label="遥测站编码:" label-width="150px">
@@ -186,9 +184,7 @@
               <el-switch class="switch_style" v-model="ip1Port1" />
             </el-form-item>
           </el-col>
-        </el-row>
 
-        <el-row>
           <el-col :span="7">
             <el-form-item label="通道2地址:" label-width="150px">
               <el-input v-model="formAddData.ip2Port2" placeholder="IP址址:端口" :disabled="!ip2Port2" />
@@ -199,6 +195,8 @@
               <el-switch class="switch_style" v-model="ip2Port2" />
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
 
           <el-col :span="7">
             <el-form-item label="通道3地址:" label-width="150px">
@@ -221,84 +219,100 @@
               <el-switch class="switch_style" v-model="ip4Port4" />
             </el-form-item>
           </el-col>
+
+          <el-col :span="7">
+            <el-form-item label="紧急域名:" label-width="150px">
+              <el-input v-model="formAddData.domainNamePort" placeholder="紧急域名及端口" :disabled="!domainNamePort" />
+            </el-form-item>
+          </el-col>
+          <el-col :span="1" :offset="0">
+            <el-form-item>
+              <el-switch class="switch_style" />
+              <!-- v-model="domainPort"  -->
+            </el-form-item>
+          </el-col>
         </el-row>
+        <el-divider style="margin-top: 0;" />
 
         <el-row>
           <el-col :span="7">
-            <el-form-item label="紧急域名:" label-width="150px">
-              <el-input v-model="formAddData.domainNamePort" placeholder="紧急域名及端口" :disabled="!domainPort" />
+            <el-form-item label="采样间隔:" label-width="150px">
+              <el-input v-model.number="formAddData.sampleInterval" placeholder="采样时间间隔(分钟)"
+                :disabled="!sampleInterval" />
             </el-form-item>
           </el-col>
           <el-col :span="1" :offset="0">
             <el-form-item>
-              <el-switch class="switch_style" v-model="domainPort" />
+              <el-switch class="switch_style" v-model="sampleInterval" />
             </el-form-item>
           </el-col>
 
           <el-col :span="7">
-            <el-form-item label="数传类型:" label-width="150px">
-              <el-radio-group v-model="formAddData.tongxunWay" :disabled="!tongxunWay">
-                <el-radio label='0'>NB</el-radio>
-                <el-radio label="1">CAT1</el-radio>
-              </el-radio-group>
+            <el-form-item label="上报间隔:" label-width="150px">
+              <el-input v-model.number="formAddData.upInterval" placeholder="定时报时间间隔(分钟)" :disabled="!upInterval" />
             </el-form-item>
           </el-col>
           <el-col :span="1">
             <el-form-item>
-              <el-switch class="switch_style" v-model="tongxunWay" />
+              <el-switch class="switch_style" v-model="upInterval" />
             </el-form-item>
           </el-col>
 
           <el-col :span="7">
-            <el-form-item label="安装年份:" label-width="150px">
-              <el-input v-model.number="formAddData.setupYear" placeholder="设备安装年份" type="number" maxlength="4"
-                minlength="4" :disabled="!setupYear" />
+            <el-form-item label="低温采样间隔:" label-width="150px">
+              <el-input v-model.number="formAddData.ltSampleInterval" placeholder="低温采样时间间隔(小时)" type="number"
+                :disabled="!ltSampleInterval" />
             </el-form-item>
           </el-col>
           <el-col :span="1">
             <el-form-item>
-              <el-switch class="switch_style" v-model="setupYear" />
+              <el-switch class="switch_style" v-model="ltSampleInterval" />
             </el-form-item>
           </el-col>
         </el-row>
-
+        <el-divider style="margin-top: 0;" />
         <el-row>
           <el-col :span="7">
-            <el-form-item label="采样间隔:" label-width="150px">
-              <el-input v-model.number="formAddData.sampleInterval" placeholder="采样时间间隔(分钟)"
-                :disabled="!sampleInterval" />
+            <el-form-item label="水表数字个数:" label-width="150px">
+              <el-input v-model.number="formAddData.digitNum" placeholder="水表数字个数" type="number"
+                :disabled="!digitNum" />
             </el-form-item>
           </el-col>
           <el-col :span="1" :offset="0">
             <el-form-item>
-              <el-switch class="switch_style" v-model="sampleInterval" />
+              <el-switch class="switch_style" v-model="digitNum" />
             </el-form-item>
           </el-col>
 
           <el-col :span="7">
-            <el-form-item label="上报间隔:" label-width="150px">
-              <el-input v-model.number="formAddData.upInterval" placeholder="定时报时间间隔(分钟)" :disabled="!upInterval" />
+            <el-form-item label="水表字轮个数:" label-width="150px">
+              <el-input v-model.number="formAddData.wheelNum" placeholder="水表字轮个数" type="number"
+                :disabled="!wheelNum" />
             </el-form-item>
           </el-col>
           <el-col :span="1">
             <el-form-item>
-              <el-switch class="switch_style" v-model="upInterval" />
+              <el-switch class="switch_style" v-model="wheelNum" />
             </el-form-item>
           </el-col>
 
           <el-col :span="7">
-            <el-form-item label="低温采样间隔:" label-width="150px">
-              <el-input v-model.number="formAddData.ltSampleInterval" placeholder="低温采样时间间隔(小时)" type="number"
-                :disabled="!ltSampleInterval" />
+            <el-form-item label="水表尾数单位:" label-width="150px">
+              <el-select v-model="formAddData.uintType" class="filter-item" placeholder="水表尾数单位(m³)"
+                :disabled="!uintType">
+                <!-- <el-option v-for="(key, value) in unitTypeMap" :key="key" :label="key" :value="value" /> -->
+                <el-option v-for="item in unitTypeMap" :key="item.value" :label="item.label" :value="item.value" />
+                dnTypeMap
+              </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="1">
             <el-form-item>
-              <el-switch class="switch_style" v-model="ltSampleInterval" />
+              <el-switch class="switch_style" v-model="uintType" />
             </el-form-item>
           </el-col>
         </el-row>
-
+        <el-divider style="margin-top: 0;" />
         <el-row>
           <el-col :span="7">
             <el-form-item label="入网超时时间:" label-width="150px">
@@ -311,75 +325,81 @@
               <el-switch class="switch_style" v-model="networkRegTimeout" />
             </el-form-item>
           </el-col>
-
           <el-col :span="7">
-            <el-form-item label="水表口径:" label-width="150px">
-              <el-select v-model="formAddData.dnType" class="filter-item" placeholder="水表口径" :disabled="!dnType">
-                <el-option v-for="(key, value) in dnTypeMap" :key="key" :label="key" :value="value" />
-              </el-select>
-              <!-- <el-input v-model.number="formAddData.dnType" placeholder="水表口径" type="number" :disabled="!dnType" /> -->
+            <el-form-item label="数传类型:" label-width="150px">
+              <el-radio-group v-model="formAddData.tongxunWay" :disabled="!tongxunWay">
+                <el-radio label='0'>NB</el-radio>
+                <el-radio label="1">CAT1</el-radio>
+              </el-radio-group>
             </el-form-item>
           </el-col>
-          <el-col :span="1" :offset="0">
+          <el-col :span="1">
             <el-form-item>
-              <el-switch class="switch_style" v-model="dnType" />
+              <el-switch class="switch_style" v-model="tongxunWay" />
             </el-form-item>
           </el-col>
 
           <el-col :span="7">
-            <el-form-item label="安装方向:" label-width="150px">
-              <el-radio-group v-model="formAddData.setupDir" :disabled="!setupDir">
-                <el-radio label="0">正向</el-radio>
-                <el-radio label="1">反向</el-radio>
+            <el-form-item label="天线类型:" label-width="150px">
+              <el-radio-group v-model="formAddData.tianxianType" :disabled="!tianxianType">
+                <el-radio label="0">内置</el-radio>
+                <el-radio label="1">外置</el-radio>
               </el-radio-group>
             </el-form-item>
           </el-col>
           <el-col :span="1">
             <el-form-item>
-              <el-switch class="switch_style" v-model="setupDir" />
+              <el-switch class="switch_style" v-model="tianxianType" />
             </el-form-item>
           </el-col>
         </el-row>
 
         <el-row>
           <el-col :span="7">
-            <el-form-item label="水表数字个数:" label-width="150px">
-              <el-input v-model.number="formAddData.digitNum" placeholder="水表数字个数" type="number"
-                :disabled="!digitNum" />
+            <el-form-item label="水表口径:" label-width="150px">
+              <el-select v-model="formAddData.dnType" class="filter-item" placeholder="水表口径" :disabled="!dnType">
+                <!-- <el-option v-for="(key, value) in dnTypeMap" :key="key" :label="key" :value="value" /> -->
+                <el-option v-for="item in dnTypeMap" :key="item.value" :label="item.label" :value="item.value" />
+              </el-select>
+              <!-- <el-input v-model.number="formAddData.dnType" placeholder="水表口径" type="number" :disabled="!dnType" /> -->
             </el-form-item>
           </el-col>
           <el-col :span="1" :offset="0">
             <el-form-item>
-              <el-switch class="switch_style" v-model="digitNum" />
+              <el-switch class="switch_style" v-model="dnType" />
             </el-form-item>
           </el-col>
 
           <el-col :span="7">
-            <el-form-item label="水表字轮个数:" label-width="150px">
-              <el-input v-model.number="formAddData.wheelNum" placeholder="水表字轮个数" type="number"
-                :disabled="!wheelNum" />
+            <el-form-item label="安装方向:" label-width="150px">
+              <el-radio-group v-model="formAddData.setupDir" :disabled="!setupDir">
+                <el-radio label="0" style="height: 25px;">正向</el-radio>
+                <el-radio label="1">反向</el-radio>
+                <el-radio label="2">左90</el-radio>
+                <el-radio label="3">右90</el-radio>
+              </el-radio-group>
             </el-form-item>
           </el-col>
           <el-col :span="1">
             <el-form-item>
-              <el-switch class="switch_style" v-model="wheelNum" />
+              <el-switch class="switch_style" v-model="setupDir" />
             </el-form-item>
           </el-col>
 
           <el-col :span="7">
-            <el-form-item label="水表尾数单位:" label-width="150px">
-              <el-select v-model="formAddData.uintType" class="filter-item" placeholder="水表尾数单位(m³)"
-                :disabled="!uintType">
-                <el-option v-for="(key, value) in unitTypeMap" :key="key" :label="key" :value="value" />
-              </el-select>
+            <el-form-item label="安装年份:" label-width="150px">
+              <el-input v-model.number="formAddData.setupYear" placeholder="设备安装年份" type="number" maxlength="4"
+                minlength="4" :disabled="!setupYear" />
             </el-form-item>
           </el-col>
           <el-col :span="1">
             <el-form-item>
-              <el-switch class="switch_style" v-model="uintType" />
+              <el-switch class="switch_style" />
+              <!-- v-model="setupYear"  -->
             </el-form-item>
           </el-col>
         </el-row>
+        <el-divider style="margin-top: 0;" />
 
         <el-row>
           <el-col :span="5">
@@ -423,7 +443,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-
+        <el-divider style="margin-top: 0;" />
         <el-row>
           <el-col :span="7">
             <el-form-item label="强制拉回概率:" label-width="150px">
@@ -460,7 +480,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-
+        <el-divider style="margin-top: 0;" />
         <el-row>
           <el-col :span="7">
             <el-form-item label="背光频率:" label-width="150px">
@@ -503,7 +523,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-
+        <el-divider style="margin-top: 0;" />
         <el-row>
           <el-col :span="7">
             <el-form-item label="CPU版本号:" label-width="150px">
@@ -528,20 +548,6 @@
               <el-switch class="switch_style" v-model="tongxunVersion" />
             </el-form-item>
           </el-col>
-
-          <el-col :span="7">
-            <el-form-item label="天线类型:" label-width="150px">
-              <el-radio-group v-model="formAddData.tianxianType" :disabled="!tianxianType">
-                <el-radio label="0">内置</el-radio>
-                <el-radio label="1">外置</el-radio>
-              </el-radio-group>
-            </el-form-item>
-          </el-col>
-          <el-col :span="1">
-            <el-form-item>
-              <el-switch class="switch_style" v-model="tianxianType" />
-            </el-form-item>
-          </el-col>
         </el-row>
 
         <el-row>
@@ -553,7 +559,7 @@
               <el-checkbox label="星期四" size="small" v-model="week4" :disabled="!upWholeImgWeekRule" />
               <el-checkbox label="星期五" size="small" v-model="week5" :disabled="!upWholeImgWeekRule" />
               <el-checkbox label="星期六" size="small" v-model="week6" :disabled="!upWholeImgWeekRule" />
-              <el-checkbox label="星期" size="small" v-model="week7" :disabled="!upWholeImgWeekRule" />
+              <el-checkbox label="星期" size="small" v-model="week7" :disabled="!upWholeImgWeekRule" />
             </el-form-item>
           </el-col>
 
@@ -593,42 +599,72 @@ const loadFormRef = ref(ElForm);
 const finishedFlagMap = {
   9: "全部",
   0: "未执行",
-  1: "已执行",
-  2: "已完成",
+  1: "已完成",
 };
 
-const unitTypeMap = {
-  1: 0.001,
-  2: 0.01,
-  3: 0.1,
-  4: 1,
-  5: 10,
-  6: 100,
-  7: 1000,
-  8: 10000
-}
+//水表单位
+const unitTypeMap = [
+  {
+    value: 1,
+    label: 0.001,
+  },
+  {
+    value: 2,
+    label: 0.01,
+  },
+  {
+    value: 3,
+    label: 0.1,
+  },
+  {
+    value: 4,
+    label: 1,
+  },
+  {
+    value: 5,
+    label: 10,
+  },
+  {
+    value: 6,
+    label: 100,
+  },
+  {
+    value: 7,
+    label: 1000,
+  },
+  {
+    value: 8,
+    label: 10000,
+  }
+]
 
-const dnTypeMap = {
-  15: "DN15",
-  20: "DN20",
-  25: "DN25",
-  32: "DN32",
-  40: "DN40",
-  50: "DN50",
-  65: "DN65",
-  80: "DN80",
-  100: "DN100",
-  125: "DN125",
-  150: "DN150",
-  200: "DN200",
-  250: "DN250",
-  300: "DN300",
-  400: "DN400",
-  500: "DN500",
-  600: "DN600",
-  800: "DN800",
-};
+const dnTypeMap = [
+  { value: 15, label: "DN15", },
+  { value: 20, label: "DN20", },
+  { value: 25, label: "DN25", },
+  { value: 32, label: "DN32", },
+  { value: 40, label: "DN40", },
+  { value: 50, label: "DN50", },
+  { value: 65, label: "DN65", },
+  { value: 80, label: "DN80", },
+  { value: 100, label: "DN100", },
+  { value: 125, label: "DN125", },
+  { value: 150, label: "DN150", },
+  { value: 200, label: "DN200", },
+  { value: 250, label: "DN250", },
+  { value: 300, label: "DN300", },
+  { value: 400, label: "DN400", },
+  { value: 500, label: "DN500", },
+  { value: 600, label: "DN600", },
+  { value: 800, label: "DN800", },
+]
 
+const setupDirMap = [
+  { value: '0', label: "正向", },
+  { value: '1', label: "反向", },
+  { value: '2', label: "左90°", },
+  { value: '3', label: "右90°", },
+]
 
 const state = reactive({
   queryParams: { page: 1, rows: 10, deviceSn: '', stationCode: '', finishedFlag: '' } as TaskRemoteCfgQueryParam,
@@ -722,7 +758,7 @@ const handleCurrentChange = (val: number) => {
 };
 
 const submitDeleteForm = (row: any) => {
-  ElMessageBox.confirm(" 是否删除设备SN:[" + row.stationCode + "]的远程配置任务? ", "提示", {
+  ElMessageBox.confirm(" 是否删除设备SN:[" + row.deviceSn + "]的远程配置任务? ", "提示", {
     cancelButtonText: "取消",
     confirmButtonText: "确认",
     type: "warning",
@@ -747,41 +783,41 @@ const submitAddForm = () => {
     if (valid) {
       //根据勾选情况,给提交对象赋值     
       state.submitData.deviceSn = state.formAddData.deviceSn;
-      if (ip1Port1) { state.submitData.ip1Port1 = state.formAddData.ip1Port1 };
-      if (ip2Port2) { state.submitData.ip2Port2 = state.formAddData.ip2Port2 };
-      if (ip3Port3) { state.submitData.ip3Port3 = state.formAddData.ip3Port3 };
-      if (ip4Port4) { state.submitData.ip4Port4 = state.formAddData.ip4Port4 };
-      if (stationCode) { state.submitData.stationCode = state.formAddData.stationCode };
-      if (domainPort) { state.submitData.domainNamePort = state.formAddData.domainNamePort }
-      if (dnType) { state.submitData.dnType = state.formAddData.dnType }
-      if (digitNum) { state.submitData.digitNum = state.formAddData.digitNum }
-      if (uintType) { state.submitData.uintType = state.formAddData.uintType }
-      if (setupDir) { state.submitData.setupDir = state.formAddData.setupDir }
-      if (sampleInterval) { state.submitData.sampleInterval = state.formAddData.sampleInterval }
-      if (networkRegTimeout) { state.submitData.networkRegTimeout = state.formAddData.networkRegTimeout }
-      if (setupYear) { state.submitData.setupYear = state.formAddData.setupYear }
-      if (aiPullBack) { state.submitData.aiPullBack = state.formAddData.aiPullBack }
-      if (aiPass) { state.submitData.aiPass = state.formAddData.aiPass }
+      if (ip1Port1.value) { state.submitData.ip1Port1 = state.formAddData.ip1Port1 };
+      if (ip2Port2.value) { state.submitData.ip2Port2 = state.formAddData.ip2Port2 };
+      if (ip3Port3.value) { state.submitData.ip3Port3 = state.formAddData.ip3Port3 };
+      if (ip4Port4.value) { state.submitData.ip4Port4 = state.formAddData.ip4Port4 };
+      if (stationCode.value) { state.submitData.stationCode = state.formAddData.stationCode };
+      if (domainNamePort.value) { state.submitData.domainNamePort = state.formAddData.domainNamePort }
+      if (dnType.value) { state.submitData.dnType = state.formAddData.dnType }
+      if (digitNum.value) { state.submitData.digitNum = state.formAddData.digitNum }
+      if (uintType.value) { state.submitData.uintType = state.formAddData.uintType }
+      if (setupDir.value) { state.submitData.setupDir = state.formAddData.setupDir }
+      if (sampleInterval.value) { state.submitData.sampleInterval = state.formAddData.sampleInterval }
+      if (networkRegTimeout.value) { state.submitData.networkRegTimeout = state.formAddData.networkRegTimeout }
+      if (setupYear.value) { state.submitData.setupYear = state.formAddData.setupYear }
+      if (aiPullBack.value) { state.submitData.aiPullBack = state.formAddData.aiPullBack }
+      if (aiPass.value) { state.submitData.aiPass = state.formAddData.aiPass }
       if (aiSinglePass) { state.submitData.aiSinglePass = state.formAddData.aiSinglePass }
-      if (pwmHz) { state.submitData.pwmHz = state.formAddData.pwmHz }
-      if (pwmDuty) { state.submitData.pwmDuty = state.formAddData.pwmDuty }
-      if (flashBrightMin) {
+      if (pwmHz.value) { state.submitData.pwmHz = state.formAddData.pwmHz }
+      if (pwmDuty.value) { state.submitData.pwmDuty = state.formAddData.pwmDuty }
+      if (flashBrightMin.value) {
         state.submitData.flashBrightMin = state.formAddData.flashBrightMin;
         state.submitData.flashBrightMax = state.formAddData.flashBrightMax;
       }
-      if (upWholeImgWeekRule) { state.submitData.upWholeImgWeekRule = state.formAddData.upWholeImgWeekRule }
-      if (ip1ExpandOn) { state.submitData.ip1ExpandOn = state.formAddData.ip1ExpandOn }
-      if (upInterval) { state.submitData.upInterval = state.formAddData.upInterval }
-      if (ltSampleInterval) { state.submitData.ltSampleInterval = state.formAddData.ltSampleInterval }
-      if (workLt) { state.submitData.workLt = state.formAddData.workLt }
-      if (batAlarmSoc) { state.submitData.batAlarmVt = state.formAddData.batAlarmVt }
-      if (workHt) { state.submitData.workHt = state.formAddData.workHt }
-      if (batAlarmVt) { state.submitData.batAlarmSoc = state.formAddData.batAlarmSoc }
-      if (cpuVersion) { state.submitData.cpuVersion = state.formAddData.cpuVersion }
-      if (tongxunVersion) { state.submitData.tongxunVersion = state.formAddData.tongxunVersion }
-      if (tianxianType) { state.submitData.tianxianType = state.formAddData.tianxianType }
-      if (tongxunWay) { state.submitData.tongxunWay = state.formAddData.tongxunWay }
-      if (wheelNum) { state.submitData.wheelNum = state.formAddData.wheelNum }
+      if (upWholeImgWeekRule.value) { state.submitData.upWholeImgWeekRule = state.formAddData.upWholeImgWeekRule }
+      if (ip1ExpandOn.value) { state.submitData.ip1ExpandOn = state.formAddData.ip1ExpandOn }
+      if (upInterval.value) { state.submitData.upInterval = state.formAddData.upInterval }
+      if (ltSampleInterval.value) { state.submitData.ltSampleInterval = state.formAddData.ltSampleInterval }
+      if (workLt.value) { state.submitData.workLt = state.formAddData.workLt }
+      if (batAlarmSoc.value) { state.submitData.batAlarmVt = state.formAddData.batAlarmVt }
+      if (workHt.value) { state.submitData.workHt = state.formAddData.workHt }
+      if (batAlarmVt.value) { state.submitData.batAlarmSoc = state.formAddData.batAlarmSoc }
+      if (cpuVersion.value) { state.submitData.cpuVersion = state.formAddData.cpuVersion }
+      if (tongxunVersion.value) { state.submitData.tongxunVersion = state.formAddData.tongxunVersion }
+      if (tianxianType.value) { state.submitData.tianxianType = state.formAddData.tianxianType }
+      if (tongxunWay.value) { state.submitData.tongxunWay = state.formAddData.tongxunWay }
+      if (wheelNum.value) { state.submitData.wheelNum = state.formAddData.wheelNum }
       //处理周规则
       if (upWholeImgWeekRule.value) {
         let weeks = "";
@@ -844,7 +880,43 @@ const loadDateByEdit = () => {
     week5.value = state.formAddData.upWholeImgWeekRule[4] == "1";
     week6.value = state.formAddData.upWholeImgWeekRule[5] == "1";
     week7.value = state.formAddData.upWholeImgWeekRule[6] == "1";
+    upWholeImgWeekRule.value=true;
   }
+
+  stationCode.value = state.formAddData.stationCode != null;
+  ip1Port1.value = state.formAddData.ip1Port1 != null;
+  ip2Port2.value = state.formAddData.ip2Port2 != null;
+  ip3Port3.value = state.formAddData.ip3Port3 != null;
+  ip4Port4.value = state.formAddData.ip4Port4 != null;
+  domainNamePort.value = state.formAddData.domainNamePort != null;
+  dnType.value = state.formAddData.dnType != null;
+  digitNum.value = state.formAddData.digitNum != null;
+  uintType.value = state.formAddData.uintType != null;
+  setupDir.value = state.formAddData.setupDir != null;
+  sampleInterval.value = state.formAddData.sampleInterval != null;
+  networkRegTimeout.value = state.formAddData.networkRegTimeout != null;
+  setupYear.value = state.formAddData.setupYear != null;
+  aiPullBack.value = state.formAddData.aiPullBack != null;
+  aiPass.value = state.formAddData.aiPass != null;
+  aiSinglePass.value = state.formAddData.aiSinglePass != null;
+  pwmHz.value = state.formAddData.pwmHz != null;
+  pwmDuty.value = state.formAddData.pwmDuty != null;
+  flashBrightMin.value = state.formAddData.flashBrightMin != null;
+  ip1ExpandOn.value = state.formAddData.ip1ExpandOn != null;
+  upInterval.value = state.formAddData.upInterval != null;
+  ltSampleInterval.value = state.formAddData.ltSampleInterval != null;
+  workLt.value = state.formAddData.workLt != null;
+  batAlarmSoc.value = state.formAddData.batAlarmSoc != null;
+  workHt.value = state.formAddData.workHt != null;
+  batAlarmVt.value = state.formAddData.batAlarmVt != null;
+  cpuVersion.value = state.formAddData.cpuVersion != null;
+  tongxunVersion.value = state.formAddData.tongxunVersion != null;
+  tianxianType.value = state.formAddData.tianxianType != null;
+  tongxunWay.value = state.formAddData.tongxunWay != null;
+  wheelNum.value = state.formAddData.wheelNum != null;
+
+  state.aiCbqCfgQueryParams.deviceSn = state.formAddData.deviceSn;
+
 };
 
 const cancel = () => {
@@ -871,6 +943,11 @@ const jxweekString = (weeks: string) => {
   return reString;
 };
 
+// const convertToNumber=(parm:any)=>{
+//   const result=ref(0);
+//   parm as 
+// }
+
 /* 新增面板开始 */
 //根据遥测代码加载配置
 const loadConfig = () => {
@@ -899,15 +976,10 @@ const loadConfig = () => {
           if (state.formAddCfgData.serverIp4 != null && state.formAddCfgData.serverPort4 != null) {
             state.formAddData.ip4Port4 = state.formAddCfgData.serverIp4 + ':' + state.formAddCfgData.serverPort4;
           }
-          //state.formAddData.ip1Port1 = state.formAddCfgData.serverIp1 + ':' + state.formAddCfgData.serverPort1;
-          //state.formAddData.ip2Port2 = state.formAddCfgData.serverIp2 + ':' + state.formAddCfgData.serverPort2;
-          //state.formAddData.ip3Port3 = state.formAddCfgData.serverIp3 + ':' + state.formAddCfgData.serverPort3;
-          //state.formAddData.ip4Port4 = state.formAddCfgData.serverIp4 + ':' + state.formAddCfgData.serverPort4;
           state.formAddData.stationCode = state.formAddCfgData.stationCode;
           if (state.formAddCfgData.domainName != null && state.formAddCfgData.domainPort != null) {
             state.formAddData.domainNamePort = state.formAddCfgData.domainName + ':' + state.formAddCfgData.domainPort;
           }
-          //state.formAddData.domainNamePort=state.formAddCfgData.domainName + ':' + state.formAddCfgData.domainPort;
           state.formAddData.dnType = state.formAddCfgData.dnType;
           state.formAddData.digitNum = state.formAddCfgData.digitNum;
           state.formAddData.uintType = state.formAddCfgData.uintType;
@@ -947,21 +1019,23 @@ const loadConfig = () => {
         }
         else {
           //此处的情况是,数据库中没有该设备的有效配置
-          ElMessageBox.confirm("未查询到设备[" + state.aiCbqCfgQueryParams.deviceSn + "]的配置,是否继续添加? ", "提示", {
-            cancelButtonText: "取消",
-            confirmButtonText: "确认",
-            type: "warning",
-            center: true,
-          })
-            .then(() => {
-              state.formAddData.deviceSn = state.aiCbqCfgQueryParams.deviceSn;
+          if (isAdd) {
+            ElMessageBox.confirm("未查询到设备[" + state.aiCbqCfgQueryParams.deviceSn + "]的配置,是否继续添加? ", "提示", {
+              cancelButtonText: "取消",
+              confirmButtonText: "确认",
+              type: "warning",
+              center: true,
             })
-            .catch(() => {
-              ElMessage({
-                type: "info",
-                message: "取消添加设备[" + state.aiCbqCfgQueryParams.deviceSn + "]的远程配置任务!",
+              .then(() => {
+                state.formAddData.deviceSn = state.aiCbqCfgQueryParams.deviceSn;
+              })
+              .catch(() => {
+                ElMessage({
+                  type: "info",
+                  message: "取消添加设备[" + state.aiCbqCfgQueryParams.deviceSn + "]的远程配置任务!",
+                });
               });
-            });
+          }
         }
       }
     }
@@ -1009,10 +1083,11 @@ const dialogClose = () => {
 }
 /* 开始 ---- 记录打开了那一项的配置开关,简单写法,应该可优化 */
 const stationCode = ref(false);
-let ip1Port1 = ref(false);
+const ip1Port1 = ref(false);
 const ip2Port2 = ref(false);
 const ip3Port3 = ref(false);
-const domainPort = ref(false);
+const ip4Port4 = ref(false);
+const domainNamePort = ref(false);
 const dnType = ref(false);
 const digitNum = ref(false);
 const uintType = ref(false);
@@ -1028,7 +1103,6 @@ const pwmDuty = ref(false);
 const flashBrightMin = ref(false);
 const upWholeImgWeekRule = ref(false);
 const ip1ExpandOn = ref(false);
-const ip4Port4 = ref(false);
 const upInterval = ref(false);
 const ltSampleInterval = ref(false);
 const workLt = ref(false);
@@ -1048,7 +1122,7 @@ const initData = () => {
   ip2Port2.value = false;
   ip3Port3.value = false;
   ip4Port4.value = false;
-  domainPort.value = false;
+  domainNamePort.value = false;
   dnType.value = false;
   digitNum.value = false;
   uintType.value = false;

+ 16 - 6
src/views/downlinktask/ttaskdown/index.vue

@@ -76,8 +76,7 @@
     <el-table-column label="执行状态" header-align="center" align="center" width="100">
       <template #default="scope">
         <span v-if="scope.row.finishedFlag === '0'">未执行</span>
-        <span v-if="scope.row.finishedFlag === '1'">已执行</span>
-        <span v-if="scope.row.finishedFlag === '2'">已完成</span>
+        <span v-if="scope.row.finishedFlag === '1'">已完成</span>
       </template>
     </el-table-column>
 
@@ -100,18 +99,18 @@
       @current-change="handleCurrentChange" />
   </el-config-provider>
 
-  <el-dialog :title="adddialog.title" v-model="adddialog.visible" width="450px" draggable center>
+  <el-dialog :title="adddialog.title" v-model="adddialog.visible" width="450px" draggable center @close="dialogClose">
     <el-form ref="addFormRef" :model="formAddData" :rules="state.rules" label-width="120px">
       <el-form-item label="设备SN:" prop="deviceSn" style="width: 337px;">
         <el-input v-model="formAddData.deviceSn" placeholder="设备SN" width="120px" maxlength="11" show-word-limit />
       </el-form-item>
-      <el-form-item label="任务类型:">
+      <el-form-item label="任务类型:" prop="taskType">
         <el-select v-model="formAddData.taskType" class="filter-item" placeholder="任务类型">
           <el-option v-for="(key, value) in taskTypeMap" :key="key" :label="key" :value="value" />
         </el-select>
       </el-form-item>
-      <el-form-item label="任务等级:">
-        <el-select v-model="formAddData.taskLevel" class="filter-item" placeholder="任务等级">
+      <el-form-item label="任务等级:" prop="taskType">
+        <el-select v-model="formAddData.taskLevel" class="filter-item" placeholder="任务等级" prop="taskLevel">
           <el-option v-for="item in taskLevels" :key="item.value" :label="item.label" :value="item.value" />
         </el-select>
       </el-form-item>
@@ -179,6 +178,12 @@ const state = reactive({
       { required: true, message: "设备SN不能为空", trigger: "blur" },
       { min: 11, max: 11, message: "设备SN长度不合法", trigger: "blur" },
     ],
+    taskType: [
+      { required: true, message: "任务类型不能为空", trigger: "blur" },
+    ],
+    taskLevel: [
+      { required: true, message: "任务等级不能为空", trigger: "blur" },
+    ],
   },
 });
 
@@ -415,6 +420,11 @@ const shortcuts = [
   },
 ]
 /* 日期控件结束 */
+
+const dialogClose = () => {
+    state.formAddData = {} as TTaskDown;
+    state.formEditData= {} as TTaskDown;
+}
 </script>
 
 <style lang="scss" scoped>