From 956e426deb65f6a3edd524fcfb633cf35f82ca36 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期二, 12 九月 2023 11:56:02 +0800
Subject: [PATCH] 集成数据搜索-集成系统搜索组件

---
 Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue |  122 +++++++++++++++++++++++++++++-----------
 1 files changed, 88 insertions(+), 34 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue b/Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue
index 28df3b8..e34488d 100644
--- a/Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue
+++ b/Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue
@@ -1,26 +1,70 @@
 <template>
   <div style="display: flex" >
     <el-form :inline="true" :model="formInline" class="demo-form-inline">
-      <el-form-item label="绫诲瀷:" size="small">
-        <el-select v-model="formInline.type" placeholder="璇疯緭鍏ョ被鍨�" @change="SelectChange">
+<!--      闆嗘垚鏃ュ織 浠诲姟 鏁版嵁鍏ㄩ儴鍏敤-->
+      <el-form-item label="闆嗘垚鏌ヨ:" size="small">
+        <el-select v-model="formInline.type" placeholder="璇烽�夋嫨鍒嗙被" @change="SelectChange">
           <el-option :label="item.label" :value="item.value" v-for="item in SearchObject.searchData" ></el-option>
         </el-select>
       </el-form-item>
-      <el-form-item v-if="typeFlag" size="small">
-        <el-select v-model="formInline.check" placeholder="璇烽�夋嫨鍒嗙被">
-          <el-option label="1" value="0"></el-option>
-          <el-option label="2" value="1"></el-option>
+<!--      闆嗘垚鏃ュ織 鏄惁鎴愬姛-->
+      <el-form-item v-if="(status.type == 'loge' && status.stateFlag)" size="small">
+        <el-select v-model="formInline.state" placeholder="璇烽�夋嫨鐘舵��">
+          <el-option label="鏄�" value="true"></el-option>
+          <el-option label="鍚�" value="false"></el-option>
         </el-select>
       </el-form-item>
-      <el-form-item size="small" v-if="dateFlag">
+<!--      闆嗘垚鏃ュ織绫诲瀷-->
+      <el-form-item v-if="(status.type == 'loge' && status.typeFlag)" size="small">
+        <el-select v-model="formInline.cut" placeholder="璇烽�夋嫨绫诲瀷">
+          <el-option label="鏁版嵁鎺ㄩ��" value="pushData"></el-option>
+          <el-option label="鍒嗙被鎺ㄩ��" value="pushClassifyData"></el-option>
+          <el-option label="缂栫爜鐢宠" value="applyCode"></el-option>
+          <el-option label="缂栫爜缁存姢" value="syncEditData"></el-option>
+          <el-option label="鍒嗙被鏌ヨ" value="queryClassify"></el-option>
+          <el-option label="鍚紪鐮佽鍒欑殑鍒嗙被鏌ヨ" value="queryClassifyRule"></el-option>
+          <el-option label="鏁版嵁鏌ヨ" value="queryData"></el-option>
+        </el-select>
+      </el-form-item>
+<!--      闆嗘垚浠诲姟 鏄惁鎺ㄩ�佹垚鍔�  闆嗘垚鏁版嵁  鏄惁鍒嗚В浠诲姟-->
+      <el-form-item v-if="((status.type == 'task' || status.type == 'data')&& status.stateTaskDataFlag)" size="small">
+        <el-select v-model="formInline.stateTask" placeholder="璇烽�夋嫨鐘舵��">
+          <el-option label="鏄�" value="true"></el-option>
+          <el-option label="鍚�" value="false"></el-option>
+        </el-select>
+      </el-form-item>
+<!--      闆嗘垚浠诲姟 闆嗘垚鏁版嵁 鎺ㄩ�佺被鍨�-->
+      <el-form-item v-if="((status.type === 'task' || status.type === 'data') && status.sendTypeFlga)" size="small">
+        <el-select v-model="formInline.taskCut" placeholder="璇烽�夋嫨鎺ㄩ�佺被鍨�">
+          <el-option label="鍙戝竷" value="Enabled"></el-option>
+          <el-option label="鍥炴敹" value="TakeBack"></el-option>
+          <el-option label="鍋滅敤" value="Disabled"></el-option>
+        </el-select>
+      </el-form-item>
+<!--      闆嗘垚浠诲姟 鍒涘缓鏃ユ湡  闆嗘垚鏃ュ織 璁板綍鏃堕棿-->
+      <el-form-item size="small" v-if="((status.type == 'loge' ||status.type == 'task') && status.dateFlag)">
         <el-date-picker
           v-model="formInline.Date"
           type="date"
           placeholder="閫夋嫨鏃ユ湡鏃堕棿">
         </el-date-picker>
       </el-form-item>
-      <el-form-item size="small" >
+<!--      闆嗘垚浠诲姟 鏈�鍚庢帹閫佹椂闂�-->
+      <el-form-item size="small" v-if="status.type == 'task' && status.lastDateFlag">
+        <el-date-picker
+          v-model="formInline.lastDate"
+          type="date"
+          placeholder="閫夋嫨鏃ユ湡鏃堕棿">
+        </el-date-picker>
+      </el-form-item>
+<!--      鍏敤妯″潡-->
+<!--      杈撳叆鍐呭-->
+      <el-form-item size="small" v-if="shouldShowInput">
         <el-input v-model="formInline.text" placeholder="璇疯緭鍏ュ唴瀹�" @keyup.enter.native="SaveHandler"></el-input>
+      </el-form-item>
+<!--      鏌ヨ鎸夐挳-->
+      <el-form-item size="small" v-if="shouldShowButton">
+        <el-button type="success" size="small">鏌ヨ</el-button>
       </el-form-item>
     </el-form>
   </div>
@@ -30,35 +74,46 @@
 import {getList} from "@/api/docking/loge";
 export default {
   name: "VciDockingSearch",
-  props:['SearchObject','page'],
+  props:['SearchObject','page','formInline','status'],
   data() {
     return {
-      typeFlag:false,
-      dateFlag:false,
-      formInline:{
-        type:'',
-        check:'',
-        text:'',
-        Date:''
-      },
+    }
+  },
+  computed: {
+    //杈撳叆妗嗗垽鏂�
+    shouldShowInput() {
+      const isLogeType = this.status.type === 'loge';
+      const isTaskType = this.status.type === 'task';
+      const isDataType = this.status.type === 'data';
+      return (
+        (isLogeType && !this.status.stateFlag && !this.status.dateFlag && !this.status.typeFlag) ||
+        (isTaskType && !this.status.stateTaskDataFlag && !this.status.dateFlag && !this.status.lastDateFlag && !this.status.sendTypeFlga) ||
+        (isDataType && !this.status.stateTaskDataFlag && !this.status.sendTypeFlga)
+      );
+    },
+    //鎸夐挳鍒ゆ柇
+    shouldShowButton() {
+      const isLogeType = this.status.type === 'loge';
+      const isTaskType = this.status.type === 'task';
+      const isDataType = this.status.type === 'data';
+      return(
+        (isLogeType && (this.status.dateFlag || this.status.stateFlag || this.status.typeFlag)) ||
+        (isTaskType && (this.status.stateTaskDataFlag || this.status.dateFlag || this.status.lastDateFlag || this.status.sendTypeFlga)) ||
+        (isDataType && (this.status.stateTaskDataFlag || this.status.sendTypeFlga))
+      );
     }
   },
   methods:{
-    SelectChange(val){
-      this.typeFlag = (this.SearchObject.type === 'loge' && val === 5);
-      this.dateFlag = (this.SearchObject.type === 'loge' && val === 6);
-      // if(this.SearchObject.type === 'loge'){
-      //   if(val === 5){
-      //     this.typeFlag=true;
-      //   }else {
-      //     this.typeFlag=false;
-      //   }
-      //   if(val === 6){
-      //     this.dateFlag=true;
-      //   }else {
-      //     this.dateFlag=false;
-      //   }
-      // }
+    SelectChange(val) {
+      const logeType = this.status.type === 'loge';
+      const taskType = this.status.type === 'task';
+      const dataType = this.status.type === 'data';
+      this.status.typeFlag = logeType && val === 5;
+      this.status.dateFlag = (logeType && val === 6) || (taskType && val === 6);
+      this.status.stateFlag = logeType && val === 7;
+      this.status.lastDateFlag = taskType && val === 7;
+      this.status.stateTaskDataFlag = (taskType && val === 8) || (dataType && val === 4);
+      this.status.sendTypeFlga = (taskType && val === 5) || (dataType && val === 3);
     },
     SaveHandler(){
       let name = this.SearchObject.searchData[this.formInline.type].prop;
@@ -70,6 +125,5 @@
 }
 </script>
 
-<style scoped>
-
+<style lang="scss" scoped>
 </style>

--
Gitblit v1.9.3