Browse Source

选人加了搜索

Lijy 2 năm trước cách đây
mục cha
commit
b5c87aa218

+ 39 - 15
fhKeeper/formulahousekeeper/timesheet/src/components/select.vue

@@ -36,11 +36,9 @@
     <transition name="el-zoom-in-top">
       <div v-show="show" style="position: relative;z-index: 999;"> 
         <!-- 搜索框 -->
-        <!-- <div class="searchBox">
-            <el-input :placeholder="$t('peaseenterthe')" size="mini" v-model="searchTex" style="width: 150px" @focus="searchBox()">
-                <el-button slot="append" icon="el-icon-search" size="mini" @click="searchLick()"></el-button>
-            </el-input>
-        </div> -->
+        <div class="searchBox" v-if="filterable">
+            <el-input placeholder="请输入名称搜索" size="mini" v-model="searchTex" style="width: 100%" @input="searchLick()" @focus="selectCli()"></el-input>
+        </div>
         <div class="transitionBox" :style="filterable ? 'margin: 30px 0;' : ''">
             <ul class="transitionBoxUl">
                 <li :class="transitionBoxLiIdx == index ? 'liHover' : ''" v-for="(item, index) in options" :key="index" @mouseover="liMouseOver(index)" @click="liClick(item, index)"> 
@@ -178,6 +176,8 @@ export default {
             multiSelectList: [],
             searchTex: '', // 搜索文字
             cursor: '', // 搜索的标记(需传给后端)
+            time: null,//防抖
+            fistArrList: [], // 第一次进来的人员数组
         };
     },
     computed: {},
@@ -277,6 +277,13 @@ export default {
             }
         }
         console.log(this.subject, this.subjectId)
+
+        let phoneArr = []
+        for(var s in this.subject) {
+            phoneArr.push(this.subject[s].optionsOId || this.subject[s].auditorId || this.subject[s].id) 
+        }
+        this.fistArrList = phoneArr
+        console.log(this.fistArrList)
         this.dailyListIndex = this.idx
     },
     methods: {
@@ -462,24 +469,40 @@ export default {
             }
             this.$emit("selectCal", obj)
         },
-        searchBox() {
-            this.selectCli()
-        },
-        // 搜索
+        // searchBox() {
+        //     this.selectCli()
+        // },
+        // // 搜索
         searchLick() {
-            console.log('文字')
-            this.getSimpleActiveUserList()
+            if (this.time != null) {
+                clearTimeout(this.time)
+            }
+            var that = this
+            this.time = setTimeout(() => {
+                that.getSimpleActiveUserList()
+            }, 500)
+            
         },
         // 针对  getSimpleActiveUserList 获取所有人员接口
         getSimpleActiveUserList() {
-            this.http.post('/user/getSimpleActiveUserList', {
+            this.http.post('/user/getEmployeeList', {
+                departmentId: -1,
+                pageIndex: 1,
+                pageSize: 200,
                 keyword: this.searchTex,
-                cursor: this.cursor
+                status: 1,
+                roleId: '',
+                cursor: '',
+                onlyDirect: 0,
             },
             res => {
                 if (res.code == "ok") {
-                    console.log('数据')
-                    this.options = res.data.retUser
+                    var arr = res.data.records.filter((item) => {
+                        if (this.fistArrList.indexOf(item.id) != '-1') {
+                            return item;
+                        }
+                    })
+                    this.options = arr
                     this.cursor = res.data.nextCursor
                 } else {
                     this.$message({
@@ -570,6 +593,7 @@ export default {
     .searchBox {
         position: absolute; 
         width: 100%;
+        top: -9px;
     }
     .transitionBox {
         background: #FFF;

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/project/projectInside.vue

@@ -430,7 +430,7 @@
                             </el-option>
                         </el-select>
 
-                        <selectCat v-if="user.userNameNeedTranslate == 1" :size="'mini'" :subject="users" :subjectId="executorItem.executorId" :distinction="'1'" @selectCal="selectCal" :index="index" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)"></selectCat>
+                        <selectCat v-if="user.userNameNeedTranslate == 1" :size="'mini'" :filterable="true" :subject="users" :subjectId="executorItem.executorId" :distinction="'1'" @selectCal="selectCal" :index="index" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)"></selectCat>
                         <!-- <selectCat v-if="user.userNameNeedTranslate == '1'" :wxCope="true" :size="'size'" :subjectId="executorItem.executorId" :distinction="'1'" :subject="users"  @selectCal="selectCal" :index="index" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)"></selectCat> -->
 
 

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/task/list.vue

@@ -255,7 +255,7 @@
                             </el-option>
                         </el-select>
                         
-                        <selectCat :subject="users" :subjectId="executorItem.executorId" :index="index" @selectCal="selectCal" :size="'mini'" v-if="user.userNameNeedTranslate == '1'"></selectCat>
+                        <selectCat :subject="users" :subjectId="executorItem.executorId" :filterable="true" :index="index" @selectCal="selectCal" :size="'mini'" v-if="user.userNameNeedTranslate == '1'"></selectCat>
 
                         <span style="margin-left:30px;margin-right:10px;">{{ $t('plantime') }}</span>
                         <el-input-number size="small" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" v-model="executorItem.planHours" style="width:30%;" :min="1" :max="100"  :placeholder="$t('pleaseentertheplannedworking')" ></el-input-number ><span style="margin-left:10px;">{{ $t('time.hour') }}</span>