瀏覽代碼

2024-09-06

codeMan 1 年之前
父節點
當前提交
3f0f8ea00a

+ 4 - 1
src/main.js

@@ -17,6 +17,7 @@ import upload from './api/upload'
 import './style/style.css'
 import './style/theme/index.css'
 import Steps from 'ant-design-vue/lib/steps'
+import Table from 'ant-design-vue/lib/table'
 import 'ant-design-vue/dist/antd.css'
 import tableLayout from './components/dynamic-table'
 import tableNewLayout from './components/dynamic-newTable'
@@ -33,6 +34,7 @@ import '@/style/theme/font-icon/iconfont.css'
 
 
 Vue.use(Steps)
+Vue.use(Table)
 // import {hiPrintPlugin} from './index'
 // Vue.use(hiPrintPlugin)
 Vue.prototype.$api = api
@@ -83,7 +85,8 @@ Vue.directive('tableLoad',{
   bind (el,binding) {
     let tableWarp = el.querySelector('.el-table__body-wrapper')
     function handleFun (e) {
-      if (tableWarp.scrollTop + tableWarp.clientHeight >= tableWarp.scrollHeight) {
+      if (store.state.loading) return
+      if (tableWarp.scrollTop + tableWarp.clientHeight == tableWarp.scrollHeight) {
         binding.value()
       }
     }

+ 25 - 2
src/optionSystem/FProductManage/index.vue

@@ -14,7 +14,14 @@
     :isExport="false"
   >
     <template #titleRight>
-    
+      <ImportFile
+        :templateParam="{ id: 2024072515520002, content: {} }"
+        title="成品"
+        @onSuccess="bindImport"
+        :errorUrl="errorUrl"
+        @clearUrl="errorUrl = null"
+        v-if="tool.checkAuth($route.name, 'importFile')"
+      ></ImportFile>
     </template>
     <template #custom>
       <div class="mt-10">
@@ -73,8 +80,9 @@
 </template>
 
 <script>
+import ImportFile from "../modules/importFile.vue";
 export default {
-  components: {  },
+  components: { ImportFile },
   data() {
     return {
       selectParam: {
@@ -94,6 +102,21 @@ export default {
     };
   },
   methods: {
+    async bindImport(id) {
+      const res = await this.$api.requested({
+        id: 2024072515525402,
+        content: {
+          attachmentid: id[0],
+        },
+      });
+      if (res.data !== "成功") {
+        this.errorUrl = res.data;
+      } else {
+        this.tool.showMessage(res, () => {
+          this.$refs.basicLayout.listData();
+        });
+      }
+    },
     selectStatusChange() {
       this.$refs["basicLayout"].param.content.where = this.selectParam;
       this.$refs["basicLayout"].param.content.pageNumber = 1;

+ 48 - 36
src/optionSystem/FProductManage/modules/diefa/diefaAdd.vue

@@ -77,7 +77,7 @@
                             <div class="option-line">
                                 <div class="item">
                                     <div class="label">驱动方式:</div>
-                                    <MySelect :isClear="false" @click="guangtouChange" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
+                                    <MySelect :isClear="false" @click="$event => {guangtouChange($event);Search('guangtouParam','drivetype')}" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
                                 </div>
                             </div>
                             <div class="option-line">
@@ -161,27 +161,49 @@
                             </div>
 
                             <div class="option-line" v-if="guangtouParam.content.where.drivetype=='气动'">
+                                                <div class="item">
+                                                    <div class="label">驱动方式:</div>
+                                                    <MySelect :isClear="false" :options="[{remarks:'气动调节',value:'气动调节'},{remarks:'气动开关',value:'气动开关'}]" v-model="excelParam.content.where.drivetype"></MySelect>
+                                                </div>
+                                            </div>
+
+                            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
                                 <div class="item">
                                     <div class="label">驱动方式:</div>
-                                    <MySelect :isClear="false" :options="[{remarks:'气动调节',value:'气动调节'},{remarks:'气动开关',value:'气动开关'}]" v-model="excelParam.content.where.drivetype"></MySelect>
+                                    <MySelect @click="Search('excelParam','actuatordrivetype');calcTableHieght('excelRef')" :options="[{remarks:'电动开关',value:'电动开关'},{remarks:'电动调节',value:'电动调节'}]" v-model="excelParam.content.where.actuatordrivetype"></MySelect>
                                 </div>
                             </div>
-
-                            <div class="option-line">
+                            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
                                 <div class="item">
                                     <div class="label">品牌:</div>
-                                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :disabled="!excelParam.content.where.actuatordrivetype" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
                                 </div>
                             </div>
-
-                            <!-- <div class="option-line">
+                            <div class="option-line" v-else>
                                 <div class="item">
-                                    <div class="label" style="width: 75px;">执行器类型:</div>
-                                    <el-select filterable @change="Search('excelParam','actuatorname')" :disabled="!excelParam.content.where.actuatorbrand" v-model="excelParam.content.where.actuatorname" placeholder="请选择执行器类型" size="small" style="width:100%" clearable>
-                                        <el-option v-for="item in actuatorname" :key="item.value" :value="item.value" :label="item.remarks"></el-option>
-                                    </el-select>
+                                    <div class="label">品牌:</div>
+                                    <MySelect @click="Search('excelParam','actuatorbrand')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                                </div>
+                            </div>
+                            <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
+                                <div class="option-line">
+                                    <div class="item">
+                                        <div class="label" style="width: 80px;">执行器类型:</div>
+                                        <span style="font-size: 14px;font-weight: bold;color:#3874F6">{{ excelParam.content.where.actuatorname || '--' }}</span>
+                                    </div>
                                 </div>
-                            </div> -->
+                                <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
+                            </div>
+                            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                                <div class="item">
+                                    <div class="label">电源电压:</div>
+                                    <MySelect @click="Search('excelParam','supplyvoltage')" :disabled="!excelParam.content.where.actuatorname" :options="supplyvoltage" v-model="excelParam.content.where.supplyvoltage"></MySelect>
+                                </div>
+                                <div class="item">
+                                    <div class="label">信号类型:</div>
+                                    <MySelect @click="Search('excelParam','actuatorsignal')" :disabled="!excelParam.content.where.supplyvoltage" :options="actuatorsignal" v-model="excelParam.content.where.actuatorsignal"></MySelect>
+                                </div>
+                            </div>
                             <div class="option-line" v-show="guangtouParam.content.where.drivetype=='气动'">
                                 <div class="item">
                                     <div class="label">功能:</div>
@@ -195,15 +217,6 @@
                                     <MySelect :disabled="!excelParam.content.where.func"  @click="Search('excelParam','bodystructure')" :options="bodystructure" v-model="excelParam.content.where.bodystructure"></MySelect>
                                 </div>
                             </div>
-                            <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
-                                <div class="option-line">
-                                    <div class="item">
-                                        <div class="label" style="width: 80px;">执行器类型:</div>
-                                        <span style="font-size: 14px;font-weight: bold;color:#3874F6">{{ excelParam.content.where.actuatorname || '--' }}</span>
-                                    </div>
-                                </div>
-                            <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
-                            </div>
                             <div class="tips" v-if="guangtouParam.content.where.drivetype=='电动'" style="color:#3874F6;margin-top: 10px;"><i class="el-icon-warning" style="margin-right: 5px;"></i>建议开关阀时间{{ caliber.filter(v=>v.value==guangtouParam.content.where.caliber).length ? caliber.filter(v=>v.value==guangtouParam.content.where.caliber)[0].remarks:'-' }}秒</div>
                             <!--执行器-->
                             <MyTable fixedName="operation" :height="tableHeight" :noQuery="true" ref="excelRef" :tableName="guangtouParam.content.where.drivetype=='电动'?'excelTable1':'excelTable2'" :layout="guangtouParam.content.where.drivetype=='电动'?tool.tabelCol($route.name)['excelTable1'].tablecols:tool.tabelCol($route.name)['excelTable2'].tablecols" :param="excelParam" :opwidth="200" :custom="true" style="margin-top: 14px">
@@ -359,6 +372,8 @@ export default {
             plinthmaterial:[],
             actuatorbrand:[],
             actuatorname:[],
+            actuatorsignal:[],
+            supplyvoltage:[],
             actuatordrivetype:[],
             drivetype:[],
             bodystructure:[],
@@ -400,7 +415,7 @@ export default {
                 "id": 2024071014420002,
                 "content": {
                     "pageNumber": 1,
-                    "pageSize": 9999999999,
+                    "pageSize": 30,
                     "where": {
                         "condition": "",
                         "caliber": "", //公称通径
@@ -419,15 +434,17 @@ export default {
                 "content": {
                     "itemid": "",//光头id
                     "pageNumber": 1,
-                    "pageSize": 9999999999,
+                    "pageSize": 30,
                     "where": {
+                        "actuatordrivetype": "电动开关", //驱动方式
                         "condition1": "",
                         "condition2": "",
                         "torque": "", //阀门扭矩
                         "flh": "", //法兰号
                         "actuatorbrand": "", //品牌
                         "actuatorname":'',
-                        "actuatordrivetype": "", //驱动方式
+                        "supplyvoltage":'',
+                        "actuatorsignal":'',
                         "maxsquarewidth": "", //方阀杆最大宽度
                         "maxrounddiameter": "" //圆阀杆最大直径
                     }
@@ -442,7 +459,7 @@ export default {
                     "othertypes": [
                     ],
                     "pageNumber": 1,
-                    "pageSize": 9999999999,
+                    "pageSize": 30,
                     "where": {
                         "actuatorbrand": "" //品牌
                     }
@@ -452,13 +469,6 @@ export default {
         }
     },
     watch: {
-        'excelParam.content.where.actuatorbrand': {
-            handler (val) {
-                setTimeout(() => {
-                    this.calcTableHieght('excelRef')
-                },500)
-            }
-        },
         active (val) {
             switch (val) {
                 case 1:
@@ -626,15 +636,17 @@ export default {
                         "content": {
                             "itemid": 0,//光头id
                             "pageNumber": 1,
-                            "pageSize": 9999999,
+                            "pageSize": 30,
                             "where": {
+                                "actuatordrivetype": "电动开关", //驱动方式
                                 "condition1": "",
                                 "condition2": "",
                                 "torque": "", //阀门扭矩
                                 "flh": "", //法兰号
                                 "actuatorbrand": "", //品牌
                                 "actuatorname":'',
-                                "actuatordrivetype": "", //驱动方式
+                                "supplyvoltage":'',
+                                "actuatorsignal":'',
                                 "maxsquarewidth": "", //方阀杆最大宽度
                                 "maxrounddiameter": "" //圆阀杆最大直径
                             }
@@ -647,7 +659,7 @@ export default {
                     "id": 20240718162302,
                     "content": {
                         "pageNumber": 1,
-                        "pageSize": 9999999,
+                        "pageSize": 30,
                         "where": {
                             "condition1": "",
                             "torque": "", //阀门扭矩
@@ -800,7 +812,7 @@ export default {
             });
             this.drivetype = [{remarks:'电动',value:'电动'},{remarks:'气动',value:'气动'}];
             console.log(this.drivetype, "驱动方式");
-            this.$store.dispatch("optiontypeselect", "actuatorbrand").then((res) => {
+            this.$store.dispatch("optiontypeselect", "lectotypebrand").then((res) => {
                 this.actuatorbrand = res.data;
                 console.log(this.actuatorbrand, "执行器品牌");
             });

+ 46 - 27
src/optionSystem/FProductManage/modules/diefa/edit.vue

@@ -77,7 +77,7 @@
                             <div class="option-line">
                                 <div class="item">
                                     <div class="label">驱动方式:</div>
-                                    <MySelect :isClear="false" @click="guangtouChange" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
+                                    <MySelect :isClear="false" @click="$event => {guangtouChange($event);Search('guangtouParam','drivetype')}" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
                                 </div>
                             </div>
                             <div class="option-line">
@@ -167,21 +167,43 @@
                                 </div>
                             </div>
 
-                            <div class="option-line">
+                            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                                <div class="item">
+                                    <div class="label">驱动方式:</div>
+                                    <MySelect @click="Search('excelParam','actuatordrivetype');calcTableHieght('excelRef')" :options="[{remarks:'电动开关',value:'电动开关'},{remarks:'电动调节',value:'电动调节'}]" v-model="excelParam.content.where.actuatordrivetype"></MySelect>
+                                </div>
+                            </div>
+                            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
                                 <div class="item">
                                     <div class="label">品牌:</div>
-                                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :disabled="!excelParam.content.where.actuatordrivetype" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
                                 </div>
                             </div>
-
-                            <!-- <div class="option-line">
+                            <div class="option-line" v-else>
                                 <div class="item">
-                                    <div class="label" style="width: 75px;">执行器类型:</div>
-                                    <el-select filterable @change="Search('excelParam','actuatorname')" :disabled="!excelParam.content.where.actuatorbrand" v-model="excelParam.content.where.actuatorname" placeholder="请选择执行器类型" size="small" style="width:100%" clearable>
-                                        <el-option v-for="item in actuatorname" :key="item.value" :value="item.value" :label="item.remarks"></el-option>
-                                    </el-select>
+                                    <div class="label">品牌:</div>
+                                    <MySelect @click="Search('excelParam','actuatorbrand')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                                </div>
+                            </div>
+                            <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
+                                <div class="option-line">
+                                    <div class="item">
+                                        <div class="label" style="width: 80px;">执行器类型:</div>
+                                        <span style="font-size: 14px;font-weight: bold;color:#3874F6">{{ excelParam.content.where.actuatorname || '--' }}</span>
+                                    </div>
+                                </div>
+                                <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
+                            </div>
+                            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                                <div class="item">
+                                    <div class="label">电源电压:</div>
+                                    <MySelect @click="Search('excelParam','supplyvoltage')" :disabled="!excelParam.content.where.actuatorname" :options="supplyvoltage" v-model="excelParam.content.where.supplyvoltage"></MySelect>
                                 </div>
-                            </div> -->
+                                <div class="item">
+                                    <div class="label">信号类型:</div>
+                                    <MySelect @click="Search('excelParam','actuatorsignal')" :disabled="!excelParam.content.where.supplyvoltage" :options="actuatorsignal" v-model="excelParam.content.where.actuatorsignal"></MySelect>
+                                </div>
+                            </div>
                             <div class="option-line" v-show="guangtouParam.content.where.drivetype=='气动'">
                                 <div class="item">
                                     <div class="label">功能:</div>
@@ -195,15 +217,6 @@
                                     <MySelect :disabled="!excelParam.content.where.func"  @click="Search('excelParam','bodystructure')" :options="bodystructure" v-model="excelParam.content.where.bodystructure"></MySelect>
                                 </div>
                             </div>
-                            <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
-                                <div class="option-line">
-                                    <div class="item">
-                                        <div class="label" style="width: 80px;">执行器类型:</div>
-                                        <span style="font-size: 14px;font-weight: bold;color:#3874F6">{{ excelParam.content.where.actuatorname || '--' }}</span>
-                                    </div>
-                                </div>
-                            <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
-                            </div>
                             <div class="tips" v-if="guangtouParam.content.where.drivetype=='电动'" style="color:#3874F6;margin-top: 10px;"><i class="el-icon-warning" style="margin-right: 5px;"></i>建议开关阀时间{{ caliber.filter(v=>v.value==guangtouParam.content.where.caliber).length ? caliber.filter(v=>v.value==guangtouParam.content.where.caliber)[0].remarks:'-' }}秒</div>
                             <!--执行器-->
                             <MyTable fixedName="operation" :height="tableHeight" :noQuery="true" ref="excelRef" :tableName="guangtouParam.content.where.drivetype=='电动'?'excelTable1':'excelTable2'" :layout="guangtouParam.content.where.drivetype=='电动'?tool.tabelCol($route.name)['excelTable1'].tablecols:tool.tabelCol($route.name)['excelTable2'].tablecols" :param="excelParam" :opwidth="200" :custom="true" style="margin-top: 14px">
@@ -359,6 +372,8 @@
               plinthmaterial:[],
               actuatorbrand:[],
               actuatorname:[],
+              actuatorsignal:[],
+              supplyvoltage:[],
               actuatordrivetype:[],
               drivetype:[],
               bodystructure:[],
@@ -400,7 +415,7 @@
                   "id": 2024071014420002,
                   "content": {
                       "pageNumber": 1,
-                      "pageSize": 9999999999,
+                      "pageSize": 30,
                       "where": {
                           "condition": "",
                           "caliber": "", //公称通径
@@ -419,15 +434,17 @@
                   "content": {
                       "itemid": "",//光头id
                       "pageNumber": 1,
-                      "pageSize": 9999999999,
+                      "pageSize": 30,
                       "where": {
+                          "actuatordrivetype": "电动开关", //驱动方式
                           "condition1": "",
                           "condition2": "",
                           "torque": "", //阀门扭矩
                           "flh": "", //法兰号
                           "actuatorbrand": "", //品牌
                           "actuatorname":'',
-                          "actuatordrivetype": "", //驱动方式
+                          "supplyvoltage":'',
+                          "actuatorsignal":'',
                           "maxsquarewidth": "", //方阀杆最大宽度
                           "maxrounddiameter": "" //圆阀杆最大直径
                       }
@@ -442,7 +459,7 @@
                       "othertypes": [
                       ],
                       "pageNumber": 1,
-                      "pageSize": 9999999999,
+                      "pageSize": 30,
                       "where": {
                           "actuatorbrand": "" //品牌
                       }
@@ -622,15 +639,17 @@
                         "content": {
                             "itemid": 0,//光头id
                             "pageNumber": 1,
-                            "pageSize": 9999999,
+                            "pageSize": 30,
                             "where": {
+                                "actuatordrivetype": "电动开关", //驱动方式
                                 "condition1": "",
                                 "condition2": "",
                                 "torque": "", //阀门扭矩
                                 "flh": "", //法兰号
                                 "actuatorbrand": "", //品牌
                                 "actuatorname":'',
-                                "actuatordrivetype": "", //驱动方式
+                                "supplyvoltage":'',
+                                "actuatorsignal":'',
                                 "maxsquarewidth": "", //方阀杆最大宽度
                                 "maxrounddiameter": "" //圆阀杆最大直径
                             }
@@ -643,7 +662,7 @@
                     "id": 20240718162302,
                     "content": {
                         "pageNumber": 1,
-                        "pageSize": 9999999,
+                        "pageSize": 30,
                         "where": {
                             "condition1": "",
                             "torque": "", //阀门扭矩
@@ -813,7 +832,7 @@
               });
               this.drivetype = [{remarks:'电动',value:'电动'},{remarks:'气动',value:'气动'}];
               console.log(this.drivetype, "驱动方式");
-              this.$store.dispatch("optiontypeselect", "actuatorbrand").then((res) => {
+              this.$store.dispatch("optiontypeselect", "lectotypebrand").then((res) => {
                   this.actuatorbrand = res.data;
                   console.log(this.actuatorbrand, "执行器品牌");
               });

+ 2 - 2
src/optionSystem/FProductManage/modules/selectBar.vue

@@ -158,8 +158,8 @@ export default {
    }
    .select-box .select-scroll .select-item .top img {
         width: 116px;
-        height: 100px;
-        object-fit: cover;
+        height: 60px;
+        object-fit: scale-down;
    } 
    .select-box .select-scroll .select-item .item-name.active {
         background: rgba(56, 116, 246, 1);

+ 44 - 7
src/optionSystem/FProductManage/modules/table.vue

@@ -1,5 +1,5 @@
 <template>
-    <div>
+    <div v-tableLoad="tableLoad">
       <!-- :header-cell-style="{background:'#EEEEEE',color:'#333'}" -->
       <el-table v-loading="loading" ref="table" :row-class-name="tableClassName" highlight-current-row :data="data != undefined ? data : list"  size="mini" :height="height ? height : list.length <= 4?'260px':list.length <= 20?'calc(100vh - 420px)':'calc(100vh - 420px)'"  @row-click="rowClick" style="width:100%;" :header-cell-style="{background:'#fafafafa',height:'40px',color:'#000000'}" @selection-change="selectionChange">
         <el-table-column
@@ -10,9 +10,9 @@
           <template v-slot:header="{ column,$index }">
             <div style="display: flex;align-items: center;align-content: center;">
               <span @click="setSort(col,0)">{{ col.title }}</span>
-              <div v-if="col.sortable == 1" style="margin-left: 2px;">
-                <i class="iconfont" v-if="!col.sort" @click="setSort(col,1)">&#xe6f5;</i>
-                <i class="iconfont" v-else @click="setSort(col,0)">&#xe6f4;</i>
+              <div v-if="col.sortable == 1" :style="{'margin-left': '2px','color':col.cur?'rgb(56, 116, 246) !important':''}">
+                <i class="iconfont" v-if="!col.sort" @click="setSort(col,1)">&#xe6f4;</i>
+                <i class="iconfont" v-else @click="setSort(col,0)">&#xe6f5;</i>
               </div>
             </div>
           </template>
@@ -58,7 +58,8 @@
       return {
         list:[],
         total:0,
-        currentPage:1
+        currentPage:1,
+        totalPage:0,
       }
     },
     computed:{
@@ -67,20 +68,56 @@
       })
     },
     methods:{
+      tableLoad () {
+      if (this.param.content.pageNumber == this.totalPage) return
+        this.param.content.pageNumber += 1
+        console.log(this.param.content.pageNumber);
+        
+        this.listData(()=>{},true)
+      },
       async listData (callback,init) {
         if (!init) this.param.content.pageNumber = 1
         if (this.tableName) this.param.content.tableid = this.tool.tabelCol(this.$route.name)[this.tableName].tableid
         let res = await this.$api.requested(this.param)
         this.total = res.total
         this.currentPage = res.pageNumber
-        this.list = res.data
+        this.list = this.param.content.pageNumber == 1 ? res.data : [...this.list,...res.data]
+        this.totalPage = res.pageTotal
+        this.param.content.sort = res.sort
         callback && callback()
       },
       setSort(column,sort) {
         this.param.content.simplesort = {}
-        column.sort = this.param.content.simplesort[column.columnname] = sort
+        column.cur = 1
+        if (column.columnname == 'matchratio') {
+          this.param.content.sort = this.param.content.sort.map(v => {
+            return {
+              reversed:v.sortname=='匹配度'?sort==1?0:1:v.reversed,
+              sorted:v.sortname=='匹配度'?1:0,
+              sortid:v.sortid,
+              sortname:v.sortname
+            }
+          })
+          delete this.param.content.simplesort
+          column.sort = sort
+        } else if (column.columnname == 'maxruntime') {
+          this.param.content.sort = this.param.content.sort.map(v => {
+            return {
+              reversed:v.sortname=='开关时间'?sort==1?0:1:v.reversed,
+              sorted:v.sortname=='开关时间'?1:0,
+              sortid:v.sortid,
+              sortname:v.sortname
+            }
+          })
+          column.sort = sort
+          delete this.param.content.simplesort
+        } else {
+          column.sort = this.param.content.simplesort[column.columnname] = sort
+          delete this.param.content.sort
+        }
         this.layout.forEach(e=>{
           if (e.columnname !== column.columnname) {
+            e.cur = 0
             e.sort = 0
           }
         })

+ 112 - 0
src/optionSystem/attriteManage/modules/Table.vue

@@ -0,0 +1,112 @@
+<template>
+    <a-table :columns="layout" :data-source="data" :pagination="false"  bordered class="ant-table-striped"
+    :scroll="{ y: 'calc(100vh - 400px)' }" :customRow="customRow" :customHeaderRow="customHeaderRow"
+    >
+      <div slot="operation" slot-scope="text,record">
+        <slot name="opreation" :data="record"></slot>
+      </div>
+    </a-table>
+</template>
+
+<script>
+export default {
+  props:['layout','data','custom','height','fixedName','width','checkbox','redirect','customHeader','requence','scrollY','rowKey','param'],
+  data () {
+    return {
+      sourceObj:{},
+      targetObj:{},
+    }
+  },
+  methods: {
+    customHeaderRow (column) {
+      console.log(column);
+      column.forEach((e,index) => {
+        column[index].className = 'customHeader'
+      })
+    },
+    customRow (record, index) {
+        return {
+          domProps: {
+          draggable: true
+        },
+        style: {
+          cursor: 'move'
+        },
+        on: {
+          // 鼠标移入
+          mouseenter: event => {
+            var ev = event || window.event // 兼容IE
+            ev.target.draggable = true
+          },
+          // 开始拖拽
+          dragstart: event => {
+            var ev = event || window.event
+            ev.stopPropagation() // 阻止冒泡
+            this.sourceObj = record // 得到源目标数据序号
+          },
+          // 拖动元素经过的元素
+          dragover: event => {
+            var ev = event || window.event
+            ev.preventDefault()
+          },
+            // 鼠标松开
+            drop: async event => {
+              // 兼容IE
+              var ev = event || window.event;
+              // 阻止冒泡
+              ev.stopPropagation();
+              // 得到目标数据
+              this.targetObj = record;
+              const tempDta = this.data;
+              let source
+              let target
+              tempDta.forEach((item, index) => {
+                item.weight = index;
+                if (this.sourceObj[this.rowKey] == item[this.rowKey]) source = item
+                if (this.targetObj[this.rowKey] == item[this.rowKey]) target = item
+              });
+              this.$set(tempDta,this.targetObj.weight,this.sourceObj)
+              this.$set(tempDta,this.sourceObj.weight,this.targetObj)
+              
+              let res = await this.$api.requested({
+                "id": "20221201134901",
+                "content": {
+                  "ownertable": 'sys_optiontypemx',
+                  "sequencesorts": [
+                    {
+                      "ownerid": source[this.rowKey],
+                      "sequence": this.param.content.pageSize * (this.param.content.pageNumber - 1) + target.weight
+                    },
+                    {
+                      "ownerid": target[this.rowKey],
+                      "sequence": this.param.content.pageSize * (this.param.content.pageNumber - 1) + source.weight
+                    }
+                  ]
+                }
+              })
+            },
+          }
+          
+        };
+  }
+  }
+}
+</script>
+
+<style scoped>
+/deep/.customHeader {
+  background: #ffffff !important;
+  padding: 10px 10px !important;
+}
+/deep/.customHeader span {
+  font-size: 14px !important;
+  color: rgb(96, 98, 102) !important;
+}
+/deep/.ant-table-row-cell-break-word{
+  font-size: 12px !important;
+  padding: 10px 10px !important;
+}
+/deep/.ant-table-tbody > tr.ant-table-row-hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > td,/deep/.ant-table-tbody > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > td {
+  background:#f5f7fa !important;
+}
+</style>

+ 20 - 14
src/optionSystem/attriteManage/modules/detailsList.vue

@@ -1,6 +1,12 @@
 <template>
   <div class="container normal-panel">
-    <tableLayout :layout="tablecols" :data="list" :opwidth="200" :custom="true" :height="tableHieght">
+    <MyTable :layout="tablecols" :data="list" rowKey="optiontypemxid" :param="param">
+      <template v-slot:opreation="scope">
+        <slot name="edit" :data="scope.data"></slot>
+        <slot name="del" :data="scope.data"></slot>
+      </template>
+    </MyTable>
+    <!-- <tableLayout :requence="true" :layout="tablecols" :data="list" :opwidth="200" :custom="true" :height="tableHieght">
       <template v-slot:customcol="scope">
         <p>{{scope.column.data[scope.column.columnname]}}</p>
       </template>
@@ -8,26 +14,16 @@
         <slot name="edit" :data="scope.data"></slot>
         <slot name="del" :data="scope.data"></slot>
       </template>
-    </tableLayout>
-    <!-- <div  style="margin-top:16px;text-align:right">
-      <el-pagination
-          background
-          small
-          @size-change="handleSizeChange"
-          @current-change="handleCurrentChange"
-          :current-page="currentPage"
-          :page-size="param.content.pageSize"
-          layout="total, prev, pager, next, jumper"
-          :total="total">
-      </el-pagination>
-    </div> -->
+    </tableLayout> -->
   </div>
 </template>
 
 <script>
+import MyTable from './Table.vue'
 export default {
   name: "detailsList",
   props:["id"],
+  components:{MyTable},
   data(){
     return {
       tableHieght:560,
@@ -92,6 +88,16 @@ export default {
   },
   created() {
     this.tablecols = this.tool.tabelCol(this.$route.name).optionDetailsTable.tablecols
+    this.tablecols.forEach(v=>{
+      v.dataIndex = v.columnname
+      v.scopedSlots = { customRender: v.dataIndex }
+      v.key = v.dataIndex
+      if (v.width == 0) {
+        v.width = 150
+      }
+    })
+    console.log(this.tablecols);
+    
   }
 }
 </script>

+ 1 - 1
src/optionSystem/attriteManage/modules/list.vue

@@ -22,7 +22,7 @@
       @rowClick="rowShow"
     >
       <template v-slot:customcol="scope">
-        <p>{{ scope.column.data[scope.column.columnname] }}</p>
+        <span>{{ scope.column.data[scope.column.columnname] }}</span>
       </template>
     </tableLayout>
     <!-- <div style="margin-top:16px;text-align:right">

+ 5 - 1
src/optionSystem/executeManage/detail/index.vue

@@ -233,6 +233,10 @@ export default {
               label: "牌价",
               value: this.tool.formatAmount(this.mainData.marketprice,2),
             },
+            {
+              label: "信号类型",
+              value: this.mainData.actuatorsignal.join(','),
+            },
             {
               label: "状态",
               value:this.mainData.status,
@@ -276,7 +280,7 @@ export default {
         this.func = res.data;
         console.log(this.func, "功能");
       });
-      this.$store.dispatch("optiontypeselect", "actuatortype").then((res) => {
+      this.$store.dispatch("optiontypeselect", "lectotypetype").then((res) => {
         this.actuatortype = res.data;
         console.log(this.actuatortype, "执行器类型");
       });

+ 1 - 1
src/optionSystem/executeManage/index.vue

@@ -155,7 +155,7 @@ export default {
         this.func = res.data;
         console.log(this.func, "功能");
       });
-      this.$store.dispatch("optiontypeselect", "actuatortype").then((res) => {
+      this.$store.dispatch("optiontypeselect", "lectotypetype").then((res) => {
         this.actuatortype = res.data;
         console.log(this.actuatortype, "执行器类型");
       });

+ 46 - 26
src/optionSystem/optionOrder/detail/modules/components/DieFa.vue

@@ -109,7 +109,7 @@
             <div class="option-line">
                 <div class="item">
                     <div class="label">驱动方式:</div>
-                    <MySelect :isClear="false" @click="guangtouChange" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
+                    <MySelect :isClear="false" @click="$event => {guangtouChange($event);Search('guangtouParam','drivetype')}" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
                 </div>
             </div>
             <div class="option-line">
@@ -198,24 +198,22 @@
                     <MySelect :isClear="false" :options="[{remarks:'气动调节',value:'气动调节'},{remarks:'气动开关',value:'气动开关'}]" v-model="excelParam.content.where.drivetype"></MySelect>
                 </div>
             </div>
-
-            <div class="option-line">
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
                 <div class="item">
-                    <div class="label">品牌:</div>
-                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                    <div class="label">驱动方式:</div>
+                    <MySelect @click="Search('excelParam','actuatordrivetype');calcTableHieght('excelRef')" :options="[{remarks:'电动开关',value:'电动开关'},{remarks:'电动调节',value:'电动调节'}]" v-model="excelParam.content.where.actuatordrivetype"></MySelect>
                 </div>
             </div>
-            <div class="option-line" v-show="guangtouParam.content.where.drivetype=='气动'">
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
                 <div class="item">
-                    <div class="label">功能:</div>
-                    <MySelect :disabled="!excelParam.content.where.actuatorname" @click="Search('excelParam','func')" :options="func" v-model="excelParam.content.where.func"></MySelect>
+                    <div class="label">品牌:</div>
+                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :disabled="!excelParam.content.where.actuatordrivetype" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
                 </div>
             </div>
-
-            <div class="option-line" v-show="guangtouParam.content.where.drivetype=='气动'">
+            <div class="option-line" v-else>
                 <div class="item">
-                    <div class="label">结构:</div>
-                    <MySelect :disabled="!excelParam.content.where.func"  @click="Search('excelParam','bodystructure')" :options="bodystructure" v-model="excelParam.content.where.bodystructure"></MySelect>
+                    <div class="label">品牌:</div>
+                    <MySelect @click="Search('excelParam','actuatorbrand')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
                 </div>
             </div>
             <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
@@ -227,6 +225,29 @@
                 </div>
                 <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
             </div>
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                <div class="item">
+                    <div class="label">电源电压:</div>
+                    <MySelect @click="Search('excelParam','supplyvoltage')" :disabled="!excelParam.content.where.actuatorname" :options="supplyvoltage" v-model="excelParam.content.where.supplyvoltage"></MySelect>
+                </div>
+                <div class="item">
+                    <div class="label">信号类型:</div>
+                    <MySelect @click="Search('excelParam','actuatorsignal')" :disabled="!excelParam.content.where.supplyvoltage" :options="actuatorsignal" v-model="excelParam.content.where.actuatorsignal"></MySelect>
+                </div>
+            </div>
+            <div class="option-line" v-show="guangtouParam.content.where.drivetype=='气动'">
+                <div class="item">
+                    <div class="label">功能:</div>
+                    <MySelect :disabled="!excelParam.content.where.actuatorname" @click="Search('excelParam','func')" :options="func" v-model="excelParam.content.where.func"></MySelect>
+                </div>
+            </div>
+
+            <div class="option-line" v-show="guangtouParam.content.where.drivetype=='气动'">
+                <div class="item">
+                    <div class="label">结构:</div>
+                    <MySelect :disabled="!excelParam.content.where.func"  @click="Search('excelParam','bodystructure')" :options="bodystructure" v-model="excelParam.content.where.bodystructure"></MySelect>
+                </div>
+            </div>
             <div class="tips" v-if="guangtouParam.content.where.drivetype=='电动'" style="color:#3874F6;margin-top: 10px;"><i class="el-icon-warning" style="margin-right: 5px;"></i>建议开关阀时间{{ caliber.filter(v=>v.value==guangtouParam.content.where.caliber).length ? caliber.filter(v=>v.value==guangtouParam.content.where.caliber)[0].remarks:'-' }}秒</div>
 
             <!--执行器-->
@@ -287,6 +308,8 @@ export default {
             plinthmaterial:[],
             actuatorbrand:[],
             actuatorname:[],
+            actuatorsignal:[],
+            supplyvoltage:[],
             actuatordrivetype:[],
             drivetype:[],
             bodystructure:[],
@@ -328,7 +351,7 @@ export default {
                 "id": 20240718162102,
                 "content": {
                     "pageNumber": 1,
-                    "pageSize": 9999999,
+                    "pageSize": 30,
                     "sa_lectotypecfgid":this.$route.query.id,
                     "where": {
                         "condition": "",
@@ -348,16 +371,18 @@ export default {
                 "content": {
                     "itemid": "",//光头id
                     "pageNumber": 1,
-                    "pageSize": 9999999,
+                    "pageSize": 30,
                     "sa_lectotypecfgid":this.$route.query.id,
                     "where": {
+                        "actuatordrivetype": "电动开关", //驱动方式
                         "condition1": "",
                         "condition2": "",
                         "torque": "", //阀门扭矩
                         "flh": "", //法兰号
                         "actuatorbrand": "", //品牌
                         "actuatorname":'',
-                        "actuatordrivetype": "", //驱动方式
+                        "supplyvoltage":'',
+                        "actuatorsignal":'',
                         "maxsquarewidth": "", //方阀杆最大宽度
                         "maxrounddiameter": "" //圆阀杆最大直径
                     }
@@ -383,13 +408,6 @@ export default {
         }
     },
     watch: {
-        'excelParam.content.where.actuatorbrand': {
-            handler (val) {
-                setTimeout(() => {
-                    this.calcTableHieght('excelRef')
-                },500)
-            }
-        },
         active (val) {
             switch (val) {
                 case 1:
@@ -432,7 +450,6 @@ export default {
                 this.bodymaterial = this.$refs.guangtouRef.list[0].option.bodymaterial
                 this.stemmaterial = this.$refs.guangtouRef.list[0].option.stemmaterial
                 this.plinthmaterial = this.$refs.guangtouRef.list[0].option.plinthmaterial
-                this.drivetype = this.$refs.guangtouRef.list[0].option.drivetype
             })
             this.resultArr = JSON.parse(JSON.stringify(this.resultArrs()))
             console.log(this.resultArr);
@@ -573,14 +590,17 @@ export default {
                         "content": {
                             "itemid": 0,//光头id
                             "pageNumber": 1,
-                            "pageSize": 9999999,
+                            "pageSize": 30,
                             "where": {
+                                "actuatordrivetype": "电动开关", //驱动方式
                                 "condition1": "",
                                 "condition2": "",
                                 "torque": "", //阀门扭矩
                                 "flh": "", //法兰号
                                 "actuatorbrand": "", //品牌
                                 "actuatorname":'',
+                                "supplyvoltage":'',
+                                "actuatorsignal":'',
                                 "actuatordrivetype": "", //驱动方式
                                 "maxsquarewidth": "", //方阀杆最大宽度
                                 "maxrounddiameter": "" //圆阀杆最大直径
@@ -594,7 +614,7 @@ export default {
                     "id": 20240718162302,
                     "content": {
                         "pageNumber": 1,
-                        "pageSize": 9999999,
+                        "pageSize": 30,
                         "where": {
                             "condition1": "",
                             "torque": "", //阀门扭矩
@@ -807,7 +827,7 @@ export default {
         font-family: Microsoft YaHei, Microsoft YaHei;
         width: 240px;
         border-right: 1px #999999 solid;
-        z-index: 99999991;
+        z-index: 301;
         flex-shrink: 0;
         word-wrap: break-word;
     }

+ 9 - 7
src/optionSystem/optionOrder/detail/modules/setOrder.vue

@@ -19,13 +19,15 @@
             <td>
                 <div class="text1" style="margin-bottom: 8px;">{{ resultArr[1] && resultArr[1].model }} {{resultArr.length <= 3 ? ` + 减速箱:${resultArr[2] && resultArr[2].itemname}` : '' }}</div>
                 <div class="descript">
-                    <div class="item" v-if="resultArr.length >= 2 && resultArr[1].torque"><span style="color: #888888;">输出扭矩:</span>{{resultArr[1].torque }}</div>
-                    <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}</div>
-                    <div class="item" v-if="resultArr.length >= 2 && resultArr[1].speed"><span style="color: #888888;">转速:</span>{{resultArr[1].speed }}</div>
-                    <div class="item" v-if="resultArr.length >= 2 && resultArr[1].handwheelratio"><span style="color: #888888;">减速比:</span>{{resultArr[1].ratio }}</div>
-                    <div class="item" v-if="resultArr.length >= 2 && resultArr[1].supplyvoltage"><span style="color: #888888;">电压:</span>{{resultArr[1].supplyvoltage }}</div>
-                    <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedcurrent"><span style="color: #888888;">电流:</span>{{resultArr[1].ratedcurrent }}</div>
-                    <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedpower"><span style="color: #888888;">功率:</span>{{resultArr[1].ratedpower }}</div>
+                    <div class="item" v-if="resultArr.length >= 2 && resultArr[1].torque"><span style="color: #888888;">输出扭矩:</span>{{resultArr[1].torque }}(Nm)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}(s)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].speed"><span style="color: #888888;">转速:</span>{{resultArr[1].speed }}(rpm)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].handwheelratio"><span style="color: #888888;">减速比:</span>{{resultArr[1].ratio }}</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].supplyvoltage"><span style="color: #888888;">电压:</span>{{resultArr[1].supplyvoltage }}(V)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedcurrent"><span style="color: #888888;">电流:</span>{{resultArr[1].ratedcurrent }}(A)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedpower"><span style="color: #888888;">功率:</span>{{resultArr[1].ratedpower }}(KW)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}(s)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].actuatorsignal"><span style="color: #888888;">信号类型:</span>{{resultArr[1].actuatorsignal.join(',') }}</div>
                 </div>
             </td>
         </tr>

+ 1 - 1
src/optionSystem/otherFileManage/index.vue

@@ -140,7 +140,7 @@ export default {
         this.othertype = res.data;
         console.log(this.othertype, "辅件类型");
       });
-      this.$store.dispatch("optiontypeselect", "actuatorbrand").then((res) => {
+      this.$store.dispatch("optiontypeselect", "lectotypebrand").then((res) => {
         this.actuatorbrand = res.data;
         console.log(this.actuatorbrand, "品牌");
       });

+ 1 - 1
src/optionSystem/priceRuleManage/index.vue

@@ -35,7 +35,7 @@
       <div v-else>{{ scope.data.column.data[[scope.data.column.columnname]] }}</div>
     </template>
     <template v-slot:tbOpreation="scope">
-      <Edit :id="scope.data.data.sa_lectotype_priceid" v-if="tool.checkAuth($route.name,'update')"></Edit>
+      <Edit :id="scope.data.data.sa_lectotype_priceid" @onSuccess="$refs.basicLayout.listData()" v-if="tool.checkAuth($route.name,'update')"></Edit>
       <customBtn
         class="inline-16"
         btnName="删除"

+ 56 - 41
src/optionSystem/selectOption/components/DieFa.vue

@@ -14,7 +14,7 @@
             <div class="option-line">
                 <div class="item">
                     <div class="label">驱动方式:</div>
-                    <MySelect :isClear="false" @click="guangtouChange" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
+                    <MySelect :isClear="false" @click="$event => {guangtouChange($event);Search('guangtouParam','drivetype')}" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
                 </div>
             </div>
             <div class="option-line">
@@ -77,21 +77,43 @@
                     <MySelect :isClear="false" :options="[{remarks:'气动调节',value:'气动调节'},{remarks:'气动开关',value:'气动开关'}]" v-model="excelParam.content.where.drivetype"></MySelect>
                 </div>
             </div>
-
-            <div class="option-line">
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                <div class="item">
+                    <div class="label">驱动方式:</div>
+                    <MySelect @click="Search('excelParam','actuatordrivetype');calcTableHieght('excelRef')" :options="[{remarks:'电动开关',value:'电动开关'},{remarks:'电动调节',value:'电动调节'}]" v-model="excelParam.content.where.actuatordrivetype"></MySelect>
+                </div>
+            </div>
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
                 <div class="item">
                     <div class="label">品牌:</div>
-                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :disabled="!excelParam.content.where.actuatordrivetype" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
                 </div>
             </div>
-            <!-- <div class="option-line">
+            <div class="option-line" v-else>
                 <div class="item">
-                    <div class="label" style="width: 75px;">执行器类型:</div>
-                    <el-select filterable @change="Search('excelParam','actuatorname')" :disabled="!excelParam.content.where.actuatorbrand" v-model="excelParam.content.where.actuatorname" placeholder="请选择执行器类型" size="small" style="width:100%" clearable>
-                        <el-option v-for="item in actuatorname" :key="item.value" :value="item.value" :label="item.remarks"></el-option>
-                    </el-select>
+                    <div class="label">品牌:</div>
+                    <MySelect @click="Search('excelParam','actuatorbrand')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                </div>
+            </div>
+            <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
+                <div class="option-line">
+                    <div class="item">
+                        <div class="label" style="width: 80px;">执行器类型:</div>
+                        <span style="font-size: 14px;font-weight: bold;color:#3874F6">{{ excelParam.content.where.actuatorname || '--' }}</span>
+                    </div>
                 </div>
-            </div> -->
+                <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
+            </div>
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                <div class="item">
+                    <div class="label">电源电压:</div>
+                    <MySelect @click="Search('excelParam','supplyvoltage')" :disabled="!excelParam.content.where.actuatorname" :options="supplyvoltage" v-model="excelParam.content.where.supplyvoltage"></MySelect>
+                </div>
+                <div class="item">
+                    <div class="label">信号类型:</div>
+                    <MySelect @click="Search('excelParam','actuatorsignal')" :disabled="!excelParam.content.where.supplyvoltage" :options="actuatorsignal" v-model="excelParam.content.where.actuatorsignal"></MySelect>
+                </div>
+            </div>
             <div class="option-line" v-show="guangtouParam.content.where.drivetype=='气动'">
                 <div class="item">
                     <div class="label">功能:</div>
@@ -105,15 +127,6 @@
                     <MySelect :disabled="!excelParam.content.where.func"  @click="Search('excelParam','bodystructure')" :options="bodystructure" v-model="excelParam.content.where.bodystructure"></MySelect>
                 </div>
             </div>
-            <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
-                <div class="option-line">
-                    <div class="item">
-                        <div class="label" style="width: 80px;">执行器类型:</div>
-                        <span style="font-size: 14px;font-weight: bold;color:#3874F6">{{ excelParam.content.where.actuatorname || '--' }}</span>
-                    </div>
-                </div>
-                <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
-            </div>
             <div class="tips" v-if="guangtouParam.content.where.drivetype=='电动' && resultArr.length" style="color:#3874F6;margin-top: 10px;"><i class="el-icon-warning" style="margin-right: 5px;"></i>建议开关阀时间{{ caliber.filter(v=>v.value==resultArr[0].caliber).length ? caliber.filter(v=>v.value==resultArr[0].caliber)[0].remarks:'-' }}秒</div>
             <!--执行器-->
             <MyTable fixedName="operation" :height="tableHeight" :noQuery="true" ref="excelRef" :tableName="guangtouParam.content.where.drivetype=='电动'?'excelTable1':'excelTable2'" :layout="guangtouParam.content.where.drivetype=='电动'?tool.tabelCol($route.name)['excelTable1'].tablecols:tool.tabelCol($route.name)['excelTable2'].tablecols" :param="excelParam" :opwidth="200" :custom="true" style="margin-top: 14px">
@@ -158,13 +171,16 @@
                     <td>
                         <div class="text1" style="margin-bottom: 8px;">{{ resultArr[1] && resultArr[1].actuatormodel }} {{guangtouParam.content.where.drivetype == '电动' ? ` + 减速箱:${resultArr[1] && resultArr[1].gearboxname}` : '' }}</div>
                         <div class="descript">
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].torque"><span style="color: #888888;">输出扭矩:</span>{{resultArr[1].torque }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].speed"><span style="color: #888888;">转速:</span>{{resultArr[1].speed }}</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].torque"><span style="color: #888888;">输出扭矩:</span>{{resultArr[1].torque }}(Nm)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}(s)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].speed"><span style="color: #888888;">转速:</span>{{resultArr[1].speed }}(rpm)</div>
                             <div class="item" v-if="resultArr.length >= 2 && resultArr[1].handwheelratio"><span style="color: #888888;">减速比:</span>{{resultArr[1].ratio }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].supplyvoltage"><span style="color: #888888;">电压:</span>{{resultArr[1].supplyvoltage }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedcurrent"><span style="color: #888888;">电流:</span>{{resultArr[1].ratedcurrent }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedpower"><span style="color: #888888;">功率:</span>{{resultArr[1].ratedpower }}</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].supplyvoltage"><span style="color: #888888;">电压:</span>{{resultArr[1].supplyvoltage }}(V)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedcurrent"><span style="color: #888888;">电流:</span>{{resultArr[1].ratedcurrent }}(A)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedpower"><span style="color: #888888;">功率:</span>{{resultArr[1].ratedpower }}(KW)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}(s)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].actuatorsignal"><span style="color: #888888;">信号类型:</span>{{resultArr[1].actuatorsignal.join(',') }}</div>
+                            
                         </div>
                     </td>
                 </tr>
@@ -199,7 +215,6 @@
         <div class="fixed__btn__panel">
             <el-button size="small" @click="close" class="normal-btn-width">取 消</el-button>
             <el-button size="small" @click="guangtouParam.content.where.drivetype == '电动' ? active = 2 : active = 3" type="primary" v-if="active == 4" class="normal-btn-width">上一步</el-button>
-            <el-button size="small" type="primary" @click="active=4" class="normal-btn-width" v-if="active == 3" :disabled="$refs.fujianRef.list.length!= 0">下一步</el-button>
             <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width" v-if="active == 4">确认添加</el-button>
         </div>
     </div>
@@ -235,6 +250,8 @@ export default {
             stemmaterial:[],
             plinthmaterial:[],
             actuatorbrand:[],
+            actuatorsignal:[],
+            supplyvoltage:[],
             actuatorname:[],
             actuatordrivetype:[],
             drivetype:[],
@@ -278,7 +295,7 @@ export default {
                 "id": 20240718162102,
                 "content": {
                     "pageNumber": 1,
-                    "pageSize": 9999999,
+                    "pageSize": 30,
                     "where": {
                         "condition": "",
                         "caliber": "", //公称通径
@@ -297,15 +314,17 @@ export default {
                 "content": {
                     "itemid": "",//光头id
                     "pageNumber": 1,
-                    "pageSize": 9999999,
+                    "pageSize": 30,
                     "where": {
+                        "actuatordrivetype": "电动开关", //驱动方式
                         "condition1": "",
                         "condition2": "",
                         "torque": "", //阀门扭矩
                         "flh": "", //法兰号
                         "actuatorbrand": "", //品牌
                         "actuatorname":'',
-                        "actuatordrivetype": "", //驱动方式
+                        "supplyvoltage":'',
+                        "actuatorsignal":'',
                         "maxsquarewidth": "", //方阀杆最大宽度
                         "maxrounddiameter": "" //圆阀杆最大直径
                     }
@@ -331,13 +350,6 @@ export default {
         }
     },
     watch: {
-        'excelParam.content.where.actuatorbrand': {
-            handler (val) {
-                setTimeout(() => {
-                    this.calcTableHieght('excelRef')
-                },500)
-            }
-        },
         active (val) {
             switch (val) {
                 case 1:
@@ -509,15 +521,17 @@ export default {
                         "content": {
                             "itemid": 0,//光头id
                             "pageNumber": 1,
-                            "pageSize": 9999999,
+                            "pageSize": 30,
                             "where": {
+                                "actuatordrivetype": "电动开关", //驱动方式
                                 "condition1": "",
                                 "condition2": "",
                                 "torque": "", //阀门扭矩
                                 "flh": "", //法兰号
                                 "actuatorbrand": "", //品牌
                                 "actuatorname":'',
-                                "actuatordrivetype": "", //驱动方式
+                                "supplyvoltage":'',
+                                "actuatorsignal":'',
                                 "maxsquarewidth": "", //方阀杆最大宽度
                                 "maxrounddiameter": "" //圆阀杆最大直径
                             }
@@ -530,7 +544,7 @@ export default {
                     "id": 20240718162302,
                     "content": {
                         "pageNumber": 1,
-                        "pageSize": 9999999,
+                        "pageSize": 30,
                         "where": {
                             "condition1": "",
                             "torque": "", //阀门扭矩
@@ -634,6 +648,7 @@ export default {
             } else {
                 if (this.fujianArr.filter(item=>item.itemid==data.itemid).length) return
                 this.fujianParam.content.othertypes.splice(this.fujianParam.content.othertypes.indexOf(data.itemname),1)
+                if (!this.fujianParam.content.othertypes.length) return this.active = 4
                 this.loading = true
                 this.$refs.fujianRef.listData(()=> {
                     this.fujianArr.push(data)
@@ -679,7 +694,7 @@ export default {
             });
             this.drivetype = [{remarks:'电动',value:'电动'},{remarks:'气动',value:'气动'}];
             console.log(this.drivetype, "驱动方式");
-            this.$store.dispatch("optiontypeselect", "actuatorbrand").then((res) => {
+            this.$store.dispatch("optiontypeselect", "lectotypebrand").then((res) => {
                 this.actuatorbrand = res.data;
                 console.log(this.actuatorbrand, "执行器品牌");
             });
@@ -739,7 +754,7 @@ export default {
         font-family: Microsoft YaHei, Microsoft YaHei;
         width: 240px;
         border-right: 1px #999999 solid;
-        z-index: 99999991;
+        z-index: 301;
         flex-shrink: 0;
         word-wrap: break-word;
     }

+ 10 - 8
src/optionSystem/selectOption/components/setOrder.vue

@@ -18,15 +18,17 @@
             <tr>
                 <td class="title">执行器</td>
                 <td>
-                    <div class="text1" style="margin-bottom: 8px;">{{ result.执行器.model }} {{result.减速箱 && Object.keys(result.减速箱).length ? ` + 减速箱:${result.减速箱.itemname}` : '' }}</div>
-                    <div class="descript">
-                        <div class="item" v-if="result.执行器.torque"><span style="color: #888888;">输出扭矩:</span>{{result.执行器.torque }}</div>
-                        <div class="item" v-if="result.执行器.maxruntime"><span style="color: #888888;">开关时间:</span>{{result.执行器.maxruntime }}</div>
-                        <div class="item" v-if="result.执行器.speed"><span style="color: #888888;">转速:</span>{{result.执行器.speed }}</div>
+                    <div v-if="result.执行器" class="text1" style="margin-bottom: 8px;">{{ result.执行器.model }} {{result.减速箱 && Object.keys(result.减速箱).length ? ` + 减速箱:${result.减速箱.itemname}` : '' }}</div>
+                    <div class="descript" v-if="result.执行器">
+                        <div class="item" v-if="result.执行器.torque"><span style="color: #888888;">输出扭矩:</span>{{result.执行器.torque }}(Nm)</div>
+                        <div class="item" v-if="result.执行器.maxruntime"><span style="color: #888888;">开关时间:</span>{{result.执行器.maxruntime }}(s)</div>
+                        <div class="item" v-if="result.执行器.speed"><span style="color: #888888;">转速:</span>{{result.执行器.speed }}(rpm)</div>
                         <div class="item" v-if="result.执行器.handwheelratio"><span style="color: #888888;">减速比:</span>{{result.执行器.ratio }}</div>
-                        <div class="item" v-if="result.执行器.supplyvoltage"><span style="color: #888888;">电压:</span>{{result.执行器.supplyvoltage }}</div>
-                        <div class="item" v-if="result.执行器.ratedcurrent"><span style="color: #888888;">电流:</span>{{result.执行器.ratedcurrent }}</div>
-                        <div class="item" v-if="result.执行器.ratedpower"><span style="color: #888888;">功率:</span>{{result.执行器.ratedpower }}</div>
+                        <div class="item" v-if="result.执行器.supplyvoltage"><span style="color: #888888;">电压:</span>{{result.执行器.supplyvoltage }}(V)</div>
+                        <div class="item" v-if="result.执行器.ratedcurrent"><span style="color: #888888;">电流:</span>{{result.执行器.ratedcurrent }}(A)</div>
+                        <div class="item" v-if="result.执行器.ratedpower"><span style="color: #888888;">功率:</span>{{result.执行器.ratedpower }}(KW)</div>
+                        <div class="item" v-if="result.执行器.maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}(s)</div>
+                        <div class="item" v-if="result.执行器.actuatorsignal"><span style="color: #888888;">信号类型:</span>{{resultArr[1].actuatorsignal.join(',') }}</div>
                     </div>
                 </td>
             </tr>

+ 1 - 21
src/optionSystem/throttleManage/detail/index.vue

@@ -65,16 +65,7 @@ export default {
       throttletype:[],
     };
   },
-  provide() {
-    return {
-      itemTypeList: () => {
-        return this.typeList;
-      },
-      throttletype: () => {
-        return this.throttletype
-      },
-    };
-  },
+
   methods: {
     async queryMainData(id) {
       const res = await this.$api.requested({
@@ -87,16 +78,6 @@ export default {
       console.log(this.mainData,'详情');
       this.changeDataStructure();
     },
-    optionList() {
-      this.$store.dispatch("optiontypeselect", "famentype").then((res) => {
-        this.typeList = res.data;
-        console.log(this.typeList, "阀门类型");
-      });
-      this.$store.dispatch('optiontypeselect','throttletype').then(res => {
-        this.throttletype = res.data
-        console.log(this.caliber,'节流件类型');
-      })
-    },
     changeDataStructure() {
         let that = this
       this.mainAreaData = [
@@ -243,7 +224,6 @@ export default {
     },
   },
   created() {
-    this.optionList()
     this.queryMainData(this.$route.query.id)
   },
 };

+ 2 - 2
src/optionSystem/throttleManage/index.vue

@@ -183,7 +183,7 @@ export default {
       this.$refs.basicLayout.listData();
     },
     optionList() {
-      this.$store.dispatch("optiontypeselect", "famentype").then((res) => {
+      this.$store.dispatch("optiontypeselect", "valvetype").then((res) => {
         this.typeList = res.data;
         console.log(this.typeList, "阀门类型");
       });
@@ -191,7 +191,7 @@ export default {
         this.throttletype = res.data;
         console.log(this.throttletype, "节流件类型");
       });
-      this.$store.dispatch("optiontypeselect", "actuatorbrand").then((res) => {
+      this.$store.dispatch("optiontypeselect", "lectotypebrand").then((res) => {
         this.actuatorbrand = res.data;
         console.log(this.actuatorbrand, "品牌");
       });

+ 76 - 37
src/optionSystem/valveOption/DieFa.vue

@@ -31,7 +31,7 @@
                 <div class="option-line">
                     <div class="item">
                         <div class="label">驱动方式:</div>
-                        <MySelect :isClear="false" @click="guangtouChange" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
+                        <MySelect :isClear="false" @click="$event => {guangtouChange($event);Search('guangtouParam','drivetype')}" :options="drivetype" v-model="guangtouParam.content.where.drivetype"></MySelect>
                     </div>
                 </div>
                 <div class="option-line">
@@ -143,11 +143,41 @@
                     <MySelect :isClear="false" :options="[{remarks:'气动调节',value:'气动调节'},{remarks:'气动开关',value:'气动开关'}]" v-model="excelParam.content.where.drivetype"></MySelect>
                 </div>
             </div>
-
-            <div class="option-line">
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                <div class="item">
+                    <div class="label">驱动方式:</div>
+                    <MySelect @click="Search('excelParam','actuatordrivetype');calcTableHieght('excelRef')" :options="[{remarks:'电动开关',value:'电动开关'},{remarks:'电动调节',value:'电动调节'}]" v-model="excelParam.content.where.actuatordrivetype"></MySelect>
+                </div>
+            </div>
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                <div class="item">
+                    <div class="label">品牌:</div>
+                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :disabled="!excelParam.content.where.actuatordrivetype" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                </div>
+            </div>
+            <div class="option-line" v-else>
                 <div class="item">
                     <div class="label">品牌:</div>
-                    <MySelect @click="Search('excelParam','actuatorbrand');calcTableHieght('excelRef')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                    <MySelect @click="Search('excelParam','actuatorbrand')" :options="actuatorbrand" v-model="excelParam.content.where.actuatorbrand"></MySelect>
+                </div>
+            </div>
+            <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
+                <div class="option-line">
+                    <div class="item">
+                        <div class="label" style="width: 80px;">执行器类型:</div>
+                        <span style="font-size: 14px;font-weight: bold;color:#3874F6">{{ excelParam.content.where.actuatorname || '--' }}</span>
+                    </div>
+                </div>
+                <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
+            </div>
+            <div class="option-line" v-if="guangtouParam.content.where.drivetype=='电动'">
+                <div class="item">
+                    <div class="label">电源电压:</div>
+                    <MySelect @click="Search('excelParam','supplyvoltage')" :disabled="!excelParam.content.where.actuatorname" :options="supplyvoltage" v-model="excelParam.content.where.supplyvoltage"></MySelect>
+                </div>
+                <div class="item">
+                    <div class="label">信号类型:</div>
+                    <MySelect @click="Search('excelParam','actuatorsignal')" :disabled="!excelParam.content.where.supplyvoltage" :options="actuatorsignal" v-model="excelParam.content.where.actuatorsignal"></MySelect>
                 </div>
             </div>
             <!-- <div class="option-line">
@@ -171,15 +201,6 @@
                     <MySelect :disabled="!excelParam.content.where.func"  @click="Search('excelParam','bodystructure')" :options="bodystructure" v-model="excelParam.content.where.bodystructure"></MySelect>
                 </div>
             </div>
-            <div v-if="guangtouParam.content.where.drivetype == '电动' && excelParam.content.where.actuatorbrand && actuatorname.length">
-                <div class="option-line">
-                    <div class="item">
-                        <div class="label" style="width: 80px;">执行器类型:</div>
-                        <span style="font-size: 14px;font-weight: bold;color:#3874F6">{{ excelParam.content.where.actuatorname || '--' }}</span>
-                    </div>
-                </div>
-                <SelectBar style="margin: 20px 0" v-model="excelParam.content.where.actuatorname" :options="actuatorname.map(v => {return {url:v.url,remarks:v.remarks.split('-').pop(),value:v.remarks}})" @change="Search('excelParam','actuatorname')"></SelectBar>
-            </div>
             <div class="tips" v-if="guangtouParam.content.where.drivetype=='电动' && resultArr.length" style="color:#3874F6;margin-top: 10px;"><i class="el-icon-warning" style="margin-right: 5px;"></i>建议开关阀时间{{ caliber.filter(v=>v.value==resultArr[0].caliber).length ? caliber.filter(v=>v.value==resultArr[0].caliber)[0].remarks:'-' }}秒</div>
             <!--执行器-->
             <MyTable fixedName="operation" :height="tableHeight" :noQuery="true" ref="excelRef" :tableName="guangtouParam.content.where.drivetype=='电动'?'excelTable1':'excelTable2'" :layout="guangtouParam.content.where.drivetype=='电动'?tool.tabelCol($route.name)['excelTable1'].tablecols:tool.tabelCol($route.name)['excelTable2'].tablecols" :param="excelParam" :opwidth="200" :custom="true" style="margin-top: 14px">
@@ -224,13 +245,15 @@
                     <td>
                         <div class="text1" style="margin-bottom: 8px;">{{ resultArr[1] && resultArr[1].actuatormodel }} {{guangtouParam.content.where.drivetype == '电动' ? ` + 减速箱:${resultArr[1] && resultArr[1].gearboxname}` : '' }}</div>
                         <div class="descript">
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].torque"><span style="color: #888888;">输出扭矩:</span>{{resultArr[1].torque }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].speed"><span style="color: #888888;">转速:</span>{{resultArr[1].speed }}</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].torque"><span style="color: #888888;">输出扭矩:</span>{{resultArr[1].torque }}(Nm)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}(s)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].speed"><span style="color: #888888;">转速:</span>{{resultArr[1].speed }}(rpm)</div>
                             <div class="item" v-if="resultArr.length >= 2 && resultArr[1].handwheelratio"><span style="color: #888888;">减速比:</span>{{resultArr[1].ratio }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].supplyvoltage"><span style="color: #888888;">电压:</span>{{resultArr[1].supplyvoltage }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedcurrent"><span style="color: #888888;">电流:</span>{{resultArr[1].ratedcurrent }}</div>
-                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedpower"><span style="color: #888888;">功率:</span>{{resultArr[1].ratedpower }}</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].supplyvoltage"><span style="color: #888888;">电压:</span>{{resultArr[1].supplyvoltage }}(V)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedcurrent"><span style="color: #888888;">电流:</span>{{resultArr[1].ratedcurrent }}(A)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].ratedpower"><span style="color: #888888;">功率:</span>{{resultArr[1].ratedpower }}(KW)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].maxruntime"><span style="color: #888888;">开关时间:</span>{{resultArr[1].maxruntime }}(s)</div>
+                            <div class="item" v-if="resultArr.length >= 2 && resultArr[1].actuatorsignal"><span style="color: #888888;">信号类型:</span>{{resultArr[1].actuatorsignal.join(',') }}</div>
                         </div>
                     </td>
                 </tr>
@@ -264,7 +287,6 @@
         </div>
         <div class="fixed__btn__panel" v-if="(active == 1 && mode == '手动输入') || active == 3 || active == 4">
             <el-button size="small" type="primary" @click="next" class="normal-btn-width" v-if="active == 1 && mode == '手动输入'">下一步</el-button>
-            <el-button size="small" type="primary" @click="active=4" class="normal-btn-width" v-if="active == 3" :disabled="$refs.fujianRef.list.length!= 0">下一步</el-button>
             <el-button size="small" type="primary" @click="close" class="normal-btn-width" v-if="active == 4">完成</el-button>
         </div>
     </div>
@@ -302,6 +324,8 @@ export default {
             actuatorbrand:[],
             actuatorname:[],
             actuatordrivetype:[],
+            actuatorsignal:[],
+            supplyvoltage:[],
             flh:[],
             drivetype:[],
             bodystructure:[],
@@ -344,7 +368,7 @@ export default {
                 "id": 20240718162102,
                 "content": {
                     "pageNumber": 1,
-                    "pageSize": 9999999,
+                    "pageSize": 30,
                     "where": {
                         "condition": "",
                         "caliber": "", //公称通径
@@ -363,15 +387,17 @@ export default {
                 "content": {
                     "itemid": "",//光头id
                     "pageNumber": 1,
-                    "pageSize": 9999999,
+                    "pageSize": 30,
                     "where": {
+                        "actuatordrivetype": "电动开关", //驱动方式
                         "condition1": "",
                         "condition2": "",
                         "torque": "", //阀门扭矩
                         "flh": "", //法兰号
                         "actuatorbrand": "", //品牌
                         "actuatorname":'',
-                        "actuatordrivetype": "", //驱动方式
+                        "supplyvoltage":'',
+                        "actuatorsignal":'',
                         "maxsquarewidth": "", //方阀杆最大宽度
                         "maxrounddiameter": "" //圆阀杆最大直径
                     }
@@ -397,13 +423,13 @@ export default {
         }
     },
     watch: {
-        'excelParam.content.where.actuatorbrand': {
-            handler (val) {
-                setTimeout(() => {
-                    this.calcTableHieght('excelRef')
-                },500)
-            }
-        },
+        // 'excelParam.content.where.actuatorbrand': {
+        //     handler (val) {
+        //         setTimeout(() => {
+        //             this.calcTableHieght('excelRef')
+        //         },500)
+        //     }
+        // },
         active (val) {
             switch (val) {
                 case 1:
@@ -573,8 +599,9 @@ export default {
             this.$nextTick(() => {
                 let target = this.$refs[id].$el.getBoundingClientRect()
                 let clientHeight = document.body.clientHeight
-                this.tableHeight = clientHeight - target.top - 85 + 'px'
+                this.tableHeight = clientHeight - target.top - 30 + 'px'
                 this.$refs[id].$refs.table.doLayout()
+                console.log('出发');
                 
             })
         },
@@ -586,17 +613,19 @@ export default {
                         "content": {
                             "itemid": 0,//光头id
                             "pageNumber": 1,
-                            "pageSize": 9999999,
+                            "pageSize": 30,
                             "where": {
+                                "actuatordrivetype": '电动开关', //驱动方式
                                 "condition1": "",
                                 "condition2": "",
                                 "torque": "", //阀门扭矩
                                 "flh": "", //法兰号
                                 "actuatorbrand": "", //品牌
                                 "actuatorname":'',
-                                "actuatordrivetype": "", //驱动方式
+                                "supplyvoltage":'',
+                                "actuatorsignal":'',
                                 "maxsquarewidth": "", //方阀杆最大宽度
-                                "maxrounddiameter": "" //圆阀杆最大直径
+                                "maxrounddiameter": "", //圆阀杆最大直径
                             }
                         },
                     }
@@ -607,7 +636,7 @@ export default {
                     "id": 20240718162302,
                     "content": {
                         "pageNumber": 1,
-                        "pageSize": 9999999,
+                        "pageSize": 30,
                         "where": {
                             "condition1": "",
                             "torque": "", //阀门扭矩
@@ -667,6 +696,7 @@ export default {
             } else {
                 if (this.fujianArr.filter(item=>item.itemid==data.itemid).length) return
                 this.fujianParam.content.othertypes.splice(this.fujianParam.content.othertypes.indexOf(data.itemname),1)
+                if (!this.fujianParam.content.othertypes.length) return this.active = 4
                 this.loading = true
                 this.$refs.fujianRef.listData(()=> {
                     this.fujianArr.push(data)
@@ -712,7 +742,7 @@ export default {
             });
             this.drivetype = [{remarks:'电动',value:'电动'},{remarks:'气动',value:'气动'}];
             console.log(this.drivetype, "驱动方式");
-            this.$store.dispatch("optiontypeselect", "actuatorbrand").then((res) => {
+            this.$store.dispatch("optiontypeselect", "lectotypebrand").then((res) => {
                 this.actuatorbrand = res.data;
                 console.log(this.actuatorbrand, "执行器品牌");
             });
@@ -732,6 +762,14 @@ export default {
                 this.flh = res.data;
                 console.log(this.func, "法兰号");
             });
+            this.$store.dispatch("optiontypeselect", "actuatorsignal").then((res) => {
+                this.actuatorsignal = res.data;
+                console.log(this.actuatorsignal, "信号");
+            });
+            this.$store.dispatch("optiontypeselect", "supplyvoltage").then((res) => {
+                this.supplyvoltage = res.data;
+                console.log(this.supplyvoltage, "电源电压");
+            });
         }
     },
     created () {
@@ -773,7 +811,7 @@ export default {
         font-family: Microsoft YaHei, Microsoft YaHei;
         width: 240px;
         border-right: 1px #999999 solid;
-        z-index: 99999991;
+        z-index: 301;
         flex-shrink: 0;
         word-wrap: break-word;
     }
@@ -860,6 +898,7 @@ export default {
         font-family: Source Han Sans SC, Source Han Sans SC;
         padding: 10px 40px !important;
         flex: 1;
+        margin-bottom: 0 !important;
         overflow: hidden;
     }
     .my-steps {