From ec3add985f600fe56a7232484bbe89a11b73c23b Mon Sep 17 00:00:00 2001
From: wanghong <309858992@qq.com>
Date: 星期四, 21 十二月 2023 12:25:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue |   84 +++++++++++++++++++++++++++++++++++-------
 1 files changed, 70 insertions(+), 14 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
index 51e6949..0b05661 100644
--- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
@@ -15,14 +15,23 @@
                   item.name
                 }}
               </el-button>
-              <span v-if="tableHeadFindData.length > 0">
-              <el-select slot="prepend" v-model="keyWordFind" placeholder="璇烽�夋嫨" size="small">
-                <el-option v-for="item in tableHeadFindData" :key="item.id" :label="item.label"
-                           :value="item.prop"></el-option>
+              <span v-if="tableHeadFindData.length > 0 ">
+              <el-select slot="prepend" v-model="keyWordFind" placeholder="璇烽�夋嫨" size="small" @change="searchChange">
+                <el-option v-for="item in tableHeadFindData" :key="item.id" :label="item.label" :value="item.prop" ></el-option>
               </el-select>
               <el-input v-model="WupinFindValue" placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�"
-                        size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"
+                        size="small" style="width: 180px; margin-left: 5px; margin-top: 10px" v-if="!isTimeStatus"
                         @keyup.enter.native="tableFindInp"></el-input>
+              </span>
+              <span class="block"  v-if="tableHeadFindData.length > 0  && isTimeStatus">
+                <el-date-picker
+                  v-model="dateValue"
+                  size="small"
+                  type="date"
+                  style="margin-left: 5px"
+                  @change="dateChange"
+                  placeholder="閫夋嫨鏃ユ湡">
+                </el-date-picker>
               </span>
               <span v-if="tableHeadFindData.length > 0" style="margin-left: 10px">
                <p style="font-size: 13px;display: inline-block;"> 鐘舵�侊細</p>
@@ -191,6 +200,7 @@
 import fileInHtml from "@/components/file/inHtml.vue";
 import {getUserInfo} from "@/api/system/user";
 import func from "@/util/func";
+import moment from "moment/moment";
 
 export default {
   components: {
@@ -255,6 +265,9 @@
   },
   data() {
     return {
+      isTimeStatus:false,
+      isTimeName:'',
+      dateValue:"",
       //鎵归噺缂栬緫瀵硅瘽妗�
       bulkeditvisible: false,
       LinkVisible: false,
@@ -283,7 +296,6 @@
         btmtype: '',
         code: "",
         type: '',
-        // this.visibleDeactivate ?'ENABLE':this.visibleEnable ? 'DISABLE' :this.visibleRecovery ? 'ROLLBACK' :'PUBLIC'
         processName: "",
         vars: {
           codeClassifyOid: "",
@@ -348,6 +360,7 @@
       fileOptions: {},
       result: '',
       elapsedTime: '',
+      conditionMap: [],
     };
   },
   computed: {
@@ -393,7 +406,6 @@
     },
     tableDataArray: {
       handler(newval, oldval) {
-        // console.log('tableData',newval)
         this.tableData = newval;
         this.searchResults = newval
         this.doLayout();
@@ -410,7 +422,6 @@
     },
     tableHeadFindData: {
       handler(newval, oldval) {
-        // console.log(newval)
         newval.forEach((record, _index) => {
           if (record.queryField == 'id' && validatenull(record.templet)) {
             //浼佷笟缂栫爜鐨勯粯璁ゆ坊鍔犺秴閾炬帴,鏆傛湭瀹炵幇
@@ -428,8 +439,12 @@
 
           if (_index == 0) {
             this.keyWordFind = record.queryField;
-            console.log(record)
-          }
+          };
+          // if(record.fieldType === "datetime"){
+          //       this.isTimeStatus = true;
+          //       console.log(this.isTimeStatus)
+          //       console.log(record)
+          // }
         })
         this.tableHeadFindDatas = newval;
         if (newval) {
@@ -480,11 +495,15 @@
     },
   },
   methods: {
+    // 缃┖鏌ヨ鏉′欢
+    resetConditionMap() {
+      this.conditionMap = {};
+    },
+
     CodeLinkHandler(row) {
       this.LinkObject = row;
       this.LinkVisible = true;
       this.LinkList = Object.keys(row).map(property => property)
-
     },
     //鐘舵�佹悳绱�
     cellSelectHandler(row) {
@@ -496,6 +515,7 @@
     },
     cellStatusFind(lcstatus) {
       this.isLoading = true;
+      this.conditionMap["conditionMap[lcstatus]"] = lcstatus;
       TableData({
         templateOid: this.templateOid,
         codeClassifyOid: this.codeClassifyOid,
@@ -855,6 +875,7 @@
         codeClassifyOid: this.codeClassifyOid,
         page: this.page.currentPage,
         limit: this.page.pageSize,
+        ...this.conditionMap, /**甯︿笂鍒嗛〉鏌ヨ鏉′欢 */
       });
       const endTime = performance.now();
       this.elapsedTime = Math.floor(endTime - startTime) * 1;
@@ -916,7 +937,7 @@
         });
       });
     },
-    // 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬�
+    //灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬�
     saveRow() {
       this.editingRow = null;
     },
@@ -940,6 +961,7 @@
           sort: val.prop,
           page: this.page.currentPage,
           limit: this.page.pageSize,
+          ...this.conditionMap
         });
         this.data = data.data;
       } finally {
@@ -949,7 +971,6 @@
     //鍒嗛〉鍒锋柊
     async onLoad(val) {
       this.isLoading = true;
-
       try {
         let conditionMap = {};
         if (this.statusSelect !== 'all') {
@@ -1002,11 +1023,14 @@
     },
     // 楂樼骇鏌ヨ
     async echoContion(val) {
+      this.conditionMap = val;
       try {
         const res = await FindData({
           templateOid: this.templateOid,
           codeClassifyOid: this.codeClassifyOid,
           ...val,
+          page: this.page.currentPage = 1,/** 姣忔鐐瑰嚮楂樼骇鏌ヨ閮藉簲璇ヤ粠绗竴椤靛紑濮�*/
+          limit: this.page.pageSize
         });
         this.tableData = res.data.data;
         this.page.total = res.data.total
@@ -1045,7 +1069,6 @@
     },
     //澧炲姞淇濆瓨
     AddSumbit(val) {
-      // console.log('val',val)
       if (func.notEmpty(val.ts)) {
         val.ts = func.formattedDateTime(val.ts);
         //console.log(val.ts);
@@ -1085,10 +1108,43 @@
       this.batchImportData.type = type
       this.batchImportData.codeClassifyOid = this.codeClassifyOid
     },
+    searchChange(val) {
+      this.isTimeName = val;
+      this.isTimeStatus = this.tableHeadFindData.some(item => {
+        if (item.fieldType === "datetime" && item.prop === val) {
+          return true;
+        }
+        return false;
+      });
+      // console.log(this.isTimeStatus)
+    },
+    dateChange(val){
+      if(val){
+        const momentDate = moment(this.dateValue);
+        const dateString = momentDate.format("yyyy-MM-DD");
+        this.isLoading = true;
+        try {
+          TableData({
+            templateOid: this.templateOid,
+            codeClassifyOid: this.codeClassifyOid,
+            page: this.page.currentPage,
+            limit: this.page.pageSize,
+            ['conditionMap[' + this.keyWordFind + ']']:  dateString
+          }).then(res => {
+            this.tableData = res.data.data;
+            this.page.total = res.data.total;
+          })
+        } finally {
+          this.isLoading = false;
+        }
+      }
+    },
     //杈撳叆鍥炶溅鎼滅储
     tableFindInp() {
       this.isLoading = true;
       try {
+        // 瀛樺偍鏌ヨ鏉′欢锛屼富瑕佹槸涓轰簡鐐瑰嚮椤电爜鏃跺甫涓婅繖涓潯浠�
+        this.conditionMap["conditionMap[" + this.keyWordFind + "]"] = '*' + this.WupinFindValue + '*';
         TableData({
           templateOid: this.templateOid,
           codeClassifyOid: this.codeClassifyOid,

--
Gitblit v1.9.3