浏览代码

优化项目查询功能

qinzhipeng_v 5 年之前
父节点
当前提交
29f34bae14

+ 22 - 19
src/layout/components/Navbar.vue

@@ -5,8 +5,17 @@
       <breadcrumb class="breadcrumb-container" />
     </div>
     <div>
-      <div class="right-menu">
-        <span class="avatar-container" style="color: #FFFFFF; font-size: 16px;">{{ username }}</span>
+      <div class="right-menu" style="display: fiex; align-items: center; justify-content: space-between;">
+        <el-avatar style="vertical-align: middle;" size="small" src="https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png" />
+        <el-dropdown placement="bottom" trigger="click">
+          <span class="el-dropdown-link avatar-container" style="color: #FFFFFF; cursor: pointer;" @click="show2 = !show2">
+            {{ username }}
+            <i class="el-icon-arrow-right" :class="{rotateNone:show2,rotate:!show2}" />
+          </span>
+          <el-dropdown-menu slot="dropdown">
+            <el-dropdown-item @click.native="Logout">退出</el-dropdown-item>
+          </el-dropdown-menu>
+        </el-dropdown>
       </div>
     </div>
   </div>
@@ -16,10 +25,9 @@
 import { mapGetters } from 'vuex'
 import Breadcrumb from '@/components/Breadcrumb'
 import Hamburger from '@/components/Hamburger'
-// import navbarLogo from '@/icons/rabbit-logo.gif'
 import { settingQueryBizTypeList } from '@/api/settingQueryBizTypeList.js'
 import Utils from '../../util.js'
-// import { logoutUrl } from '@/apiConfig/requestIP.js'
+import { logoutUrl } from '@/apiConfig/requestIP.js'
 
 export default {
   components: {
@@ -29,13 +37,10 @@ export default {
   data() {
     return {
       bizOptions: [],
+      show2: false,
       bizShow: {
         id: ''
       }
-      // navbarLogo: {
-      //   name: 'navbarLogo',
-      //   src: navbarLogo
-      // }
     }
   },
   computed: {
@@ -59,13 +64,6 @@ export default {
     //   // this.$router.push(`/login?redirect=${this.$route.fullPath}`)
     //   location.href = logoutUrl
     // },
-    // handleCommand(command) {
-    //   switch (command) {
-    //     case 'b':
-    //       this.logout()
-    //       break
-    //   }
-    // },
     get_bizArr() {
       settingQueryBizTypeList({}).then(res => {
         this.bizOptions = res.data.list
@@ -78,12 +76,21 @@ export default {
       Utils.$emit('demo', ele)
       localStorage.setItem('key', ele)
       window.location.reload()
+    },
+    Logout() {
+      location.href = logoutUrl
     }
   }
 }
 </script>
 
 <style lang="scss" scoped>
+.navbar .rotateNone {
+  transform: rotate(270deg);
+}
+.navbar .rotate {
+  transform: rotate(90deg);
+}
 .navbar {
   display: flex;
   align-items: center;
@@ -115,10 +122,6 @@ export default {
   }
 
   .right-menu {
-    // float: right;
-    // height: 100%;
-    // line-height: 50px;
-
     &:focus {
       outline: none;
     }

文件差异内容过多而无法显示
+ 2 - 1
src/layout/components/Sidebar/index.vue


+ 0 - 119
src/views/projectManage/bugList/bugindex.vue

@@ -12,26 +12,6 @@
           <el-col :span="24">
             <el-divider style="color: #EEF0F5;" />
           </el-col>
-          <!-- <el-col :span="24" class="Layout" style="margin-left: 1.5%;">
-            <el-form :inline="true" label-position="left" :model="formInline" label-width="80px" class="flex_start" style="width: 80%">
-              <el-form-item label=" 业务线" class="Layout">
-                <el-select v-model="formInline.bizId" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
-                  <el-option v-for="item in bizIdEnumList" :key="item.id" :label="item.bizName" :value="item.id" />
-                </el-select>
-              </el-form-item>
-              <el-form-item label=" 状态" style="margin-left: 3.8%;">
-                <el-select v-model="formInline.status" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
-                  <el-option v-for="item in bugEnumList" :key="item.code" :label="item.name" :value="item.code" />
-                </el-select>
-              </el-form-item>
-              <el-form-item label=" 优先级" style="margin-left: 3.5%;">
-                <el-select v-model="formInline.priorityLevel" size="small" clearable filterable placeholder="请选择" @change="getBugList()">
-                  <el-option v-for="item in priorityLevelEnumList" :key="item.code" :label="item.name" :value="item.name" />
-                </el-select>
-              </el-form-item>
-            </el-form>
-            <div class="screen" @click="showSelect">{{ goodName }}</div>
-          </el-col> -->
           <el-col :span="24" class="Layout" style="padding: 1.5% 0.5% 1.5% 1.5%;">
             <el-form :model="formInline" class="flex_start" style="width: 100%;">
               <div class="Layout">
@@ -164,105 +144,6 @@
             </el-form>
           </el-col>
         </el-row>
-
-        <!-- <div v-if="DetailedScreening">
-          <el-form :inline="true" label-position="left" :model="formInline" label-width="80px">
-            <el-row class="headerBg" style="padding-top: 0;">
-              <el-col :span="24" class="DetailedScreening">
-                <div style="margin: 1.5% 0 0 1.5%;" class="flex_start">
-                  <el-form-item label="缺陷等级">
-                    <el-select v-model="formInline.priority" size="small" clearable filterable placeholder="请选择">
-                      <el-option v-for="item in priorityEnumList" :key="item.code" :label="item.name" :value="item.code" />
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="缺陷ID" class="marginLeft">
-                    <el-input v-model="formInline.bugId" size="small" clearable filterable placeholder="请输入" />
-                  </el-form-item>
-                  <el-form-item label="所属任务" class="marginLeft">
-                    <el-select v-model="formInline.taskId" size="small" clearable filterable placeholder="请选择">
-                      <el-option v-for="item in taskEnumList" :key="item.id" :label="item.name" :value="item.id" />
-                    </el-select>
-                  </el-form-item>
-                </div>
-                <div style="margin-left: 1.5%;" class="flex_start">
-                  <el-form-item label="提报人">
-                    <el-select v-model="formInline.creator" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
-                      <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
-                        <div style="display: flex;justify-content: start;">
-                          <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
-                          <div style="min-width:80px">{{ item.name }}</div>
-                          <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
-                        </div>
-                      </el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="责任人" class="marginLeft">
-                    <el-select v-model="formInline.assigner" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
-                      <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
-                        <div style="display: flex;justify-content: start;">
-                          <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
-                          <div style="min-width:80px">{{ item.name }}</div>
-                          <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
-                        </div>
-                      </el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="修复人" class="marginLeft">
-                    <el-select v-model="formInline.currentHandler" filterable clearable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" size="small" placeholder="请输入姓名或邮箱前缀">
-                      <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
-                        <div style="display: flex;justify-content: start;">
-                          <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
-                          <div style="min-width:80px">{{ item.name }}</div>
-                          <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
-                        </div>
-                      </el-option>
-                    </el-select>
-                  </el-form-item>
-                </div>
-                <div style="margin-left: 1.5%;" class="flex_start">
-                  <el-form-item label="发现方式">
-                    <el-select v-model="formInline.discoveryMeth" size="small" clearable filterable placeholder="请选择">
-                      <el-option v-for="item in discoveryMethEnumList" :key="item.code" :label="item.name" :value="item.code" />
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="发现阶段" class="marginLeft">
-                    <el-select v-model="formInline.discoveryStage" size="small" clearable filterable placeholder="请选择">
-                      <el-option v-for="item in bugStageEnumList" :key="item.code" :label="item.name" :value="item.code" />
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="修复结果" class="marginLeft">
-                    <el-select v-model="formInline.name" size="small" clearable filterable placeholder="请选择">
-                      <el-option v-for="item in repairResultEnumList" :key="item.code" :label="item.name" :value="item.code" />
-                    </el-select>
-                  </el-form-item>
-                </div>
-                <div style="margin-left: 1.5%;" class="flex_start">
-                  <el-form-item label="端类型">
-                    <el-select v-model="formInline.sysType" size="small" clearable filterable placeholder="请选择">
-                      <el-option v-for="item in sysTypeEnumList" :key="item.code" :label="item.name" :value="item.code" />
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="客户端" class="marginLeft">
-                    <el-select v-model="formInline.appId" size="small" clearable filterable placeholder="请选择" @change="getClient(formInline.appId)">
-                      <el-option v-for="item in appClient" :key="item.code" :label="item.msg" :value="item.code" />
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="版本" class="marginLeft">
-                    <el-select v-model="formInline.appVersion" size="small" clearable filterable placeholder="请选择">
-                      <el-option v-for="item in Editionlist" :key="item.code" :label="item.msg" :value="item.code" />
-                    </el-select>
-                  </el-form-item>
-                </div>
-                <div align="right">
-                  <el-form-item>
-                    <el-button type="primary" size="mini" @click="getBugList()">筛 选</el-button>
-                    <el-button size="mini" @click="resetQuery()">重 置</el-button>
-                  </el-form-item>
-                </div>
-              </el-col>
-            </el-row>
-          </el-form>
-        </div> -->
       </el-header>
       <el-main style="padding: 1%">
         <el-row class="headerBg table_v" style=" padding-top: 0px;">

+ 3 - 6
src/views/projectManage/bugList/file/createdBug.vue

@@ -2,16 +2,13 @@
   <div class="Parent">
     <el-dialog :visible.sync="modalShow" width="60%" top="8vh" :close-on-click-modal="false" @close="modalClose">
       <el-form ref="formInline" label-position="left" :model="formInline" :rules="rules" label-width="90px">
-        <el-row style="margin: 0 4%;">
+        <el-row style="margin: 0 4% 2% 4%;">
           <el-col :span="24">
             <div class="flex_start titFont">
               <div class="titIcon" />
               <span style="margin-left: 1%; width: 100px;">{{ titleName }}</span>
             </div>
           </el-col>
-          <el-col :span="24">
-            <el-divider style="color: #EEF0F5;" />
-          </el-col>
         </el-row>
         <div style="height: 500px; overflow:scroll; overflow-x: hidden">
           <div>
@@ -158,14 +155,14 @@
             </div>
           </div>
         </div>
-        <el-form-item style="text-align: right;margin: 1% 4%;">
+        <el-form-item style="text-align: right;margin: 0% 4%;">
           <el-button size="small" @click="modalShow = false">取 消</el-button>
           <el-button :disabled="dis" type="primary" size="small" @click="bug_created(formInline)">创 建</el-button>
         </el-form-item>
       </el-form>
     </el-dialog>
     <el-dialog title="附件预览" :visible.sync="dialogVisible">
-      <img width="100%" :src="dialogImageUrl" alt="">
+      <img width="100%" :src="dialogImageUrl" alt="图片加载失败">
     </el-dialog>
   </div>
 </template>

+ 1 - 1
src/views/projectManage/dialog_vue.vue

@@ -84,7 +84,7 @@
       </el-form>
       <div slot="footer" style="padding:0 27px">
         <el-button @click="dialogFormVisible = false">取 消</el-button>
-        <el-button type="primary" @click="tit_Name === '新建任务'?create_task(task_form):uptate_task(task_form)">保 存</el-button>
+        <el-button type="primary" @click="tit_Name === '新建任务'?create_task(task_form):uptate_task(task_form)">创 建</el-button>
       </div>
     </el-dialog>
   </div>

+ 1 - 0
src/views/projectManage/projectList/css/index.css

@@ -194,6 +194,7 @@
   word-break: break-all;
   white-space:pre-line;
   overflow-y: auto;
+  cursor: pointer;
 }
 .descr::-webkit-scrollbar{
   width:0;

+ 59 - 93
src/views/projectManage/projectList/projectIndex.vue

@@ -4,73 +4,56 @@
       <div class="stylus-title">
         <span style="font-size: 22px;letter-spacing: 1px;font-weight: 600;color: #333B4A;margin-left: 1%;">项目</span>
         <div>
-          <el-button
-            type="primary"
-            size="mini"
-            @click="home_created_project"
-          >新建项目</el-button>
+          <el-button type="primary" size="mini" @click="home_created_project">新建项目</el-button>
         </div>
       </div>
       <el-divider style="color: #EEF0F5;" />
-      <div style="display: flex;justify-content: space-between;">
+      <div class="Layout">
         <div style="margin-left:1%">
-          <el-form :inline="true" label-position="left" :model="form_all" label-width="70px" class="Layout">
-            <el-form-item label="业务线">
-              <el-select v-model="form_all.bizId" size="small" clearable filterable placeholder="请选择" @change="query_project()">
+          <el-form :model="form_all" class="Layout">
+            <div class="Layout">
+              <div class="queryName">业务线</div>
+              <el-select v-model="form_all.bizId" size="small" clearable filterable placeholder="请选择" @change="query_project(form_all)">
                 <el-option v-for="item in all_bizId" :key="item.id" :label="item.bizName" :value="item.id" />
               </el-select>
-            </el-form-item>
-            <el-form-item label="负责人">
-              <el-select
-                v-model="form_all.projectOwner"
-                filterable
-                clearable
-                remote
-                reserve-keyword
-                placeholder="请输入姓名或邮箱前缀"
-                :remote-method="remoteMethod"
-                :loading="loading"
-                size="small"
-                @change="query_project()"
-              >
-                <el-option
-                  v-for="item in options"
-                  :key="item.idap"
-                  style="min-width:300px"
-                  :label="item.name"
-                  :value="test2(item, 0)"
-                >
-                  <div style="display: flex;justify-content: start;">
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
+            </div>
+            <div class="Layout">
+              <div class="queryName marginLeft">负责人</div>
+              <el-select v-model="form_all.projectOwner" filterable clearable remote reserve-keyword placeholder="请输入姓名或邮箱前缀" :remote-method="remoteMethod" :loading="loading" size="small" @change="query_project(form_all)">
+                <el-option v-for="item in options" :key="item.idap" style="min-width:300px" :label="item.name" :value="test2(item, 0)">
+                  <div class="flex_start">
+                    <div class="deptName">{{ item.deptName }}</div>
                     <div style="min-width:80px">{{ item.name }}</div>
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
+                    <div class="deptName">{{ item.idap }}</div>
                   </div>
                 </el-option>
               </el-select>
-            </el-form-item>
-            <el-form-item label="优先级">
-              <el-select v-model="form_all.priority" size="small" clearable filterable placeholder="请选择" @change="query_project()">
+            </div>
+            <div class="Layout">
+              <div class="queryName marginLeft">优先级</div>
+              <el-select v-model="form_all.priority" size="small" clearable filterable placeholder="请选择" @change="query_project(form_all)">
                 <el-option v-for="item in arr_priority" :key="item.value" :label="item.name" :value="item.value" />
               </el-select>
-            </el-form-item>
+            </div>
           </el-form>
         </div>
-        <div style="margin: 10px 2px 0 0;width: 66px;">
-          <span style="color:rgba(0,160,255,1);width:200px;font-size:14px;height:19px;line-height:19px;font-weight: 500;cursor: pointer;" @click="showSelect">{{ goodName }}</span>
-        </div>
+        <div class="screen" @click="showSelect">{{ goodName }}</div>
       </div>
       <div v-show="DetailedScreening" class="stylus-more">
         <div>
-          <el-form :inline="true" label-position="left" :model="form_all" label-width="70px" style="display: flex;justify-content: start;">
-            <el-form-item label="项目ID">
-              <el-input v-model="form_all.id" size="small" clearable placeholder="" />
-            </el-form-item>
-            <el-form-item label="项目类型">
+          <el-form :model="form_all" class="flex_start">
+            <div class="Layout">
+              <div class="queryName">项目ID</div>
+              <el-input v-model="form_all.id" size="small" clearable style="width:72% !important;" />
+            </div>
+            <div class="Layout">
+              <div class="queryName marginLeft">项目类型</div>
               <el-select v-model="form_all.bizType" size="small" clearable filterable placeholder="请选择">
                 <el-option v-for="item in arr_prjectType" :key="item.value" :label="item.name" :value="item.value" />
               </el-select>
-            </el-form-item>
-            <el-form-item label="创建人">
+            </div>
+            <div class="Layout" label="创建人">
+              <div class="queryName marginLeft">创建人</div>
               <el-select
                 v-model="form_all.creater"
                 filterable
@@ -88,17 +71,17 @@
                   :label="item.name"
                   :value="test2(item, 0)"
                 >
-                  <div style="display: flex;justify-content: start;">
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
+                  <div class="flex_start">
+                    <div class="deptName">{{ item.deptName }}</div>
                     <div style="min-width:80px">{{ item.name }}</div>
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
+                    <div class="deptName">{{ item.idap }}</div>
                   </div>
                 </el-option>
               </el-select>
-            </el-form-item>
+            </div>
           </el-form>
         </div>
-        <div style="display: flex;justify-content: flex-end;padding-top: 10px;">
+        <div align="right" style="padding-top: 1%;">
           <el-button type="primary" size="mini" @click="query_project(form_all)">筛 选</el-button>
           <el-button size="mini" @click="query_Reset">重 置</el-button>
         </div>
@@ -124,10 +107,6 @@
           <template slot-scope="scope">
             <span style="font-size: 12px;color: rgba(167,174,188,1);">{{ scope.row.idZh }}</span><br>
             <span class="stylus-hover" @click="link_project(scope.row.id)">{{ scope.row.name }}</span>
-            <!-- <div @click="link_project(scope.row.id)">
-              <span style="display: block;font-size: 12px;color: rgba(167,174,188,1);">{{ scope.row.idZh }}</span>
-              <span class="stylus-hover">{{ scope.row.name }}</span>
-            </div> -->
           </template>
         </el-table-column>
         <el-table-column label="业务线" min-width="100" align="center">
@@ -230,10 +209,10 @@
                   :label="item.name"
                   :value="test2(item, 0)"
                 >
-                  <div style="display: flex;justify-content: start;">
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
+                  <div class="flex_start">
+                    <div class="deptName">{{ item.deptName }}</div>
                     <div style="min-width:80px">{{ item.name }}</div>
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
+                    <div class="deptName">{{ item.idap }}</div>
                   </div>
                 </el-option>
               </el-select>
@@ -256,10 +235,10 @@
                   :label="item.name"
                   :value="test2(item, 0)"
                 >
-                  <div style="display: flex;justify-content: start;">
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
+                  <div class="flex_start">
+                    <div class="deptName">{{ item.deptName }}</div>
                     <div style="min-width:80px">{{ item.name }}</div>
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
+                    <div class="deptName">{{ item.idap }}</div>
                   </div>
                 </el-option>
               </el-select>
@@ -293,10 +272,10 @@
                   :label="item.name"
                   :value="test2(item, 0)"
                 >
-                  <div style="display: flex;justify-content: start;">
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
+                  <div class="flex_start">
+                    <div class="deptName">{{ item.deptName }}</div>
                     <div style="min-width:80px">{{ item.name }}</div>
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
+                    <div class="deptName">{{ item.idap }}</div>
                   </div>
                 </el-option>
               </el-select>
@@ -319,10 +298,10 @@
                   :label="item.name"
                   :value="test2(item, 0)"
                 >
-                  <div style="display: flex;justify-content: start;">
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
+                  <div class="flex_start">
+                    <div class="deptName">{{ item.deptName }}</div>
                     <div style="min-width:80px">{{ item.name }}</div>
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
+                    <div class="deptName">{{ item.idap }}</div>
                   </div>
                 </el-option>
               </el-select>
@@ -348,6 +327,7 @@ import {
   projectBizList,
   projectCreate
 } from '@/api/projectIndex'
+import '@/views/projectManage/publicCss/index.css'
 export default {
   data() {
     return {
@@ -482,19 +462,10 @@ export default {
         this.currentPage = 1
       }
       this.table_loading = true
-      this.query_object.id = e.id
-      this.query_object.bizId = e.bizId
-      this.query_object.bizType = e.bizType
-      this.query_object.priority = e.priority
-      this.query_object.projectOwner = e.projectOwner
-      this.query_object.creater = e.creater
+      this.query_object = {}
+      this.query_object = e
       this.query_object.curIndex = this.curIndex
       this.query_object.pageSize = this.pageSize
-      for (const key in this.query_object) { // 接口不接受空值的处理
-        if (this.query_object[key] === '') {
-          delete this.query_object[key]
-        }
-      }
       projectList(this.query_object).then(res => {
         this.table_project = res.data
         this.total = res.total
@@ -504,12 +475,11 @@ export default {
     },
     query_Reset() {
       // 重置
-      this.query_object = {}
-      this.$set(this.form_all, 'id', '')
-      this.$set(this.form_all, 'bizId', '')
+      this.$set(this.form_all, 'priority', this.query_object.priority)
+      this.$set(this.form_all, 'bizId', this.query_object.bizId)
+      this.$set(this.form_all, 'projectOwner', this.query_object.projectOwner)
       this.$set(this.form_all, 'bizType', '')
-      this.$set(this.form_all, 'priority', '')
-      this.$set(this.form_all, 'projectOwner', '')
+      this.$set(this.form_all, 'id', '')
       this.$set(this.form_all, 'creater', '')
       this.$message({
         message: '已重置',
@@ -517,19 +487,20 @@ export default {
         duration: 1000,
         offset: 150
       })
+      this.query_project(this.form_all)
     },
     handleSizeChange(size) {
       //  分页
       this.pageSize = size
       this.isToOne = false
-      this.query_project(this.query_object)
+      this.query_project(this.form_all)
     },
     handleCurrentChange(curIndex) {
       //  分页
       this.curIndex = curIndex
       this.currentPage = curIndex
       this.isToOne = false
-      this.query_project(this.query_object)
+      this.query_project(this.form_all)
     }
   }
 }
@@ -591,11 +562,6 @@ export default {
     padding-right: 10px;
     margin: -6px 0 -2px 0 !important;
 }
-.Layout {
-    display: flex;
-    align-items: center;
-    justify-content: space-between;
-  }
 </style>
 
 <style lang="stylus" scoped>
@@ -622,8 +588,8 @@ export default {
     .stylus-more
       background rgba(252,252,252,1)
       border-radius 4px
-      padding 2% 1%
-      min-height 120px
+      padding 1%
+      min-height 100px
       margin-top 22px
       border 1px solid rgba(238,238,238,1)
       width 100%

+ 31 - 0
src/views/projectManage/publicCss/index.css

@@ -0,0 +1,31 @@
+.flex_start {
+  display: flex;
+  align-items: center;
+  justify-content: flex-start;
+}
+.Layout {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+}
+.deptName {
+  min-width: 100px;
+  color: #8492a6; 
+  font-size: 13px; 
+  overflow: hidden
+}
+.screen {
+  font-size: 14px;
+  color: #00A0FF;
+  cursor: pointer;
+  width: 62px;
+}
+/* 查询字段样式 */
+.queryName {
+  width: 80px; 
+  color: #333333; 
+  font-size: 14px;
+}
+.marginLeft {
+  margin-left: 4%;
+}

+ 45 - 85
src/views/projectManage/requirement/list/index.vue

@@ -3,99 +3,75 @@
     <div class="stylus-head">
       <div class="stylus-title">
         <span style="font-size: 22px;letter-spacing: 1px;font-weight: 600;color: #333B4A;margin-left: 1%;">需求</span>
-        <div>
-          <el-button
-            type="primary"
-            size="mini"
-            @click="createDialogVisible = true"
-          >新建需求</el-button>
-        </div>
+        <el-button type="primary" size="mini" @click="createDialogVisible = true">新建需求</el-button>
       </div>
       <el-divider style="color: #EEF0F5;" />
-      <div style="display: flex;justify-content: space-between;">
-        <div style="margin-left:1%">
-          <el-form :inline="true" label-position="left" :model="searchForm" label-width="70px">
-            <el-form-item label="业务线">
+      <div class="Layout">
+        <div style="margin: 0 1%; width: 100%;">
+          <el-form :model="searchForm" class="flex_start">
+            <div class="Layout">
+              <div class="queryName">业务线</div>
               <el-select v-model="searchForm.bizId" size="small" clearable filterable placeholder="请选择" @change="getTableData()">
                 <el-option v-for="item in searchInfo.bizType" :key="item.code" :label="item.msg" :value="item.code" />
               </el-select>
-            </el-form-item>
-            <el-form-item label="PM">
-              <el-select
-                v-model="searchForm.pm"
-                filterable
-                remote
-                clearable
-                reserve-keyword
-                placeholder="请输入姓名或邮箱前缀"
-                :remote-method="searchUser"
-                :loading="userLoading"
-                size="small"
-                @change="getTableData()"
-              >
+            </div>
+            <div class="Layout marginLeft">
+              <div class="queryName">PM</div>
+              <el-select v-model="searchForm.pm" filterable remote clearable reserve-keyword placeholder="请输入姓名或邮箱前缀" :remote-method="searchUser" :loading="userLoading" size="small" @change="getTableData()">
                 <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="item.idap">
-                  <div style="display: flex;justify-content: start;">
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
+                  <div class="flex_start">
+                    <div class="deptName">{{ item.deptName }}</div>
                     <div style="min-width:80px">{{ item.name }}</div>
-                    <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
+                    <div class="deptName">{{ item.idap }}</div>
                   </div>
                 </el-option>
               </el-select>
-            </el-form-item>
-            <el-form-item label="优先级">
+            </div>
+            <div class="Layout marginLeft">
+              <div class="queryName">优先级</div>
               <el-select v-model="searchForm.priority" size="small" clearable filterable placeholder="请选择" @change="getTableData()">
                 <el-option v-for="item in searchInfo.priority" :key="item.code" :label="item.msg" :value="item.code" />
               </el-select>
-            </el-form-item>
+            </div>
           </el-form>
         </div>
-        <div style="margin: 10px 12px 0 0;">
-          <span style="color:rgba(0,160,255,1);font-size:14px;height:19px;line-height:19px;font-weight: 500;cursor: pointer;" @click="showSelect">{{ goodName }}</span>
-        </div>
+        <span class="screen" @click="showSelect">{{ goodName }}</span>
       </div>
       <div v-show="DetailedScreening" class="stylus-more">
         <div>
-          <el-form :inline="true" label-position="left" :model="searchForm" label-width="70px">
-            <el-form-item label="需求ID">
-              <el-input v-model="pauId" size="small" clearable placeholder="" />
-            </el-form-item>
-            <el-form-item label="归属项目">
+          <el-form :model="searchForm" class="flex_start">
+            <div class="Layout">
+              <div class="queryName">需求ID</div>
+              <el-input v-model="pauId" size="small" clearable style="width: 72%" />
+            </div>
+            <div class="Layout marginLeft">
+              <div class="queryName">归属项目</div>
               <el-select v-model="searchForm.belongingProject" size="small" clearable filterable placeholder="请选择">
                 <el-option v-for="item in searchInfo.belongingProject" :key="item.code" :label="item.msg" :value="item.code" />
               </el-select>
-            </el-form-item>
-            <el-form-item label="需求来源">
+            </div>
+            <div class="Layout marginLeft">
+              <div class="queryName">需求来源</div>
               <el-select v-model="searchForm.sourceType" size="small" clearable filterable placeholder="请选择">
                 <el-option v-for="item in searchInfo.sourceType" :key="item.code" :label="item.msg" :value="item.code" />
               </el-select>
-            </el-form-item>
-          </el-form>
-          <div style="margin-top: 15px;display: flex;align-items: center;justify-content: space-between;">
-            <div>
-              <el-form :inline="true" label-position="left" :model="searchForm" label-width="70px">
-                <el-form-item label="创建人">
-                  <el-select
-                    v-model="searchForm.creator"
-                    clearable
-                    filterable
-                    remote
-                    reserve-keyword
-                    placeholder="请输入姓名或邮箱前缀"
-                    :remote-method="searchUser"
-                    :loading="userLoading"
-                    size="small"
-                  >
-                    <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="item.idap">
-                      <div style="display: flex;justify-content: start;">
-                        <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
-                        <div style="min-width:80px">{{ item.name }}</div>
-                        <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
-                      </div>
-                    </el-option>
-                  </el-select>
-                </el-form-item>
-              </el-form>
             </div>
+          </el-form>
+          <div class="Layout" style="margin-top: 15px;">
+            <el-form :model="searchForm">
+              <div class="Layout">
+                <div class="queryName">创建人</div>
+                <el-select v-model="searchForm.creator" clearable filterable remote reserve-keyword placeholder="请输入姓名或邮箱前缀" :remote-method="searchUser" :loading="userLoading" size="small">
+                  <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="item.idap">
+                    <div class="flex_start">
+                      <div class="deptName">{{ item.deptName }}</div>
+                      <div style="min-width:80px">{{ item.name }}</div>
+                      <div class="deptName">{{ item.idap }}</div>
+                    </div>
+                  </el-option>
+                </el-select>
+              </div>
+            </el-form>
             <div>
               <el-button type="primary" size="mini" @click="getTableData">筛 选</el-button>
               <el-button size="mini" @click="reset">重 置</el-button>
@@ -124,10 +100,6 @@
           <template v-slot="scope">
             <span style="font-size: 12px;color: rgba(167,174,188,1);">{{ scope.row.requirementDisplayId }}</span><br>
             <span class="stylus-hover" @click="getToRequirementDetails(scope.row.id)">{{ scope.row.name }}</span>
-            <!-- <div @click="getToRequirementDetails(scope.row.id)">
-              <span style="display: block;font-size: 12px;color: rgba(167,174,188,1);">{{ scope.row.requirementDisplayId }}</span>
-              <span class="stylus-hover">{{ scope.row.name }}</span>
-            </div> -->
           </template>
         </el-table-column>
         <el-table-column prop="bizId" label="业务线" min-width="100" show-overflow-tooltip align="center">
@@ -186,6 +158,7 @@ import {
   getMemberInfo
 } from '@/api/requirement.js'
 import RequirementCreate from './create'
+import '@/views/projectManage/publicCss/index.css'
 
 export default {
   components: {
@@ -219,12 +192,6 @@ export default {
         pageSize: 15,
         curIndex: 1
       },
-      // searchTitle: {
-      //   project: '归属的项目',
-      //   businessline: '业务线',
-      //   source: '需求来源',
-      //   priority: '优先级'
-      // },
       userLoading: false,
       loading: false,
       tableData: null,
@@ -246,13 +213,6 @@ export default {
     })
   },
   methods: {
-    // getTitle(str) {
-    //   if (str.length <= 6) {
-    //     return str
-    //   } else {
-    //     return str.substring(0, 6) + '...'
-    //   }
-    // },
     specialCoIdJudge(id) {
       let result
       if (id.indexOf('-') !== -1) {

+ 107 - 99
src/views/projectManage/taskList/taskIndex.vue

@@ -12,119 +12,126 @@
         </div>
       </div>
       <el-divider style="color: #EEF0F5;" />
-      <div style="display: flex;justify-content: space-between;">
+      <div class="Layout">
         <div style="margin-left:1%">
-          <el-form :inline="true" label-position="left" :model="form_task" label-width="70px" style="display: flex;justify-content: start;">
-            <el-form-item label="业务线">
+          <el-form :model="form_task" class="flex_start">
+            <div class="Layout">
+              <div class="queryName">业务线</div>
               <el-select v-model="form_task.bizId" size="small" clearable filterable placeholder="请选择" @change="get_taskList()">
                 <el-option v-for="item in BusinessLine" :key="item.code" :label="item.name" :value="item.code" />
               </el-select>
-            </el-form-item>
-            <el-form-item label="状态">
+            </div>
+            <div class="Layout marginLeft">
+              <div class="queryName">状态</div>
               <el-select v-model="form_task.status" size="small" clearable filterable placeholder="请选择" @change="get_taskList()">
                 <el-option v-for="item in daStatus" :key="item.code" :label="item.msg" :value="item.code" />
               </el-select>
-            </el-form-item>
-            <el-form-item label="健康状态">
+            </div>
+            <div class="Layout marginLeft">
+              <div class="queryName">健康状态</div>
               <el-select v-model="form_task.stage" size="small" clearable filterable placeholder="请选择" @change="get_taskList()">
                 <el-option v-for="item in healthStage" :key="item.code" :label="item.msg" :value="item.code" />
               </el-select>
-            </el-form-item>
+            </div>
           </el-form>
         </div>
-        <div style="margin: 10px 12px 0 0;">
-          <span style="color:rgba(0,160,255,1);font-size:14px;height:19px;line-height:19px;font-weight: 500;cursor: pointer;" @click="showSelect">{{ goodName }}</span>
-        </div>
+        <span class="screen" @click="showSelect">{{ goodName }}</span>
       </div>
       <div v-show="DetailedScreening" class="stylus-more">
         <div>
-          <el-form :inline="true" label-position="left" :model="form_task" label-width="70px" style="display: flex;justify-content: start;">
-            <el-form-item label="任务ID">
-              <el-input v-model="form_task.id" size="small" clearable placeholder="" />
-            </el-form-item>
-            <el-form-item label="归属项目">
-              <el-select v-model="form_task.projectId" size="small" clearable filterable placeholder="请选择">
-                <el-option v-for="item in projectList" :key="item.code" :label="item.msg" :value="item.code" />
-              </el-select>
-            </el-form-item>
-            <el-form-item label="归属需求">
-              <el-select v-model="form_task.requireId" size="small" clearable filterable placeholder="请选择">
-                <el-option v-for="item in demandList" :key="item.code" :label="item.msg" :value="item.code" />
-              </el-select>
-            </el-form-item>
-          </el-form>
-          <div style="margin-top: 15px;display: flex;align-items: center;justify-content: space-between;">
-            <div>
-              <el-form :inline="true" label-position="left" :model="form_task" label-width="70px" style="display: flex;justify-content: start;">
-                <el-form-item label="负责人">
-                  <el-select
-                    v-model="form_task.PersonInCharge"
-                    clearable
-                    filterable
-                    remote
-                    reserve-keyword
-                    placeholder="请输入姓名或邮箱前缀"
-                    :remote-method="remoteMethod"
-                    :loading="loading"
-                    size="small"
-                  >
-                    <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
-                      <div style="display: flex;justify-content: start;">
-                        <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
-                        <div style="min-width:80px">{{ item.name }}</div>
-                        <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
-                      </div>
-                    </el-option>
-                  </el-select>
-                </el-form-item>
-                <el-form-item label="参与人">
-                  <el-select
-                    v-model="form_task.Participant"
-                    clearable
-                    filterable
-                    remote
-                    reserve-keyword
-                    placeholder="请输入姓名或邮箱前缀"
-                    :remote-method="remoteMethod"
-                    :loading="loading"
-                    size="small"
-                  >
-                    <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
-                      <div style="display: flex;justify-content: start;">
-                        <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
-                        <div style="min-width:80px">{{ item.name }}</div>
-                        <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
-                      </div>
-                    </el-option>
-                  </el-select>
-                </el-form-item>
-                <el-form-item label="创建人">
-                  <el-select
-                    v-model="form_task.creater"
-                    clearable
-                    filterable
-                    remote
-                    reserve-keyword
-                    placeholder="请输入姓名或邮箱前缀"
-                    :remote-method="remoteMethod"
-                    :loading="loading"
-                    size="small"
-                  >
-                    <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
-                      <div style="display: flex;justify-content: start;">
-                        <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.deptName }}</div>
-                        <div style="min-width:80px">{{ item.name }}</div>
-                        <div style="min-width:100px;color: #8492a6; font-size: 13px; overflow:hidden">{{ item.idap }}</div>
-                      </div>
-                    </el-option>
-                  </el-select>
-                </el-form-item>
-              </el-form>
-            </div>
-            <div>
-              <el-button type="primary" size="mini" @click="get_taskList(form_task)">筛 选</el-button>
-              <el-button size="mini" @click="query_Reset">重 置</el-button>
-            </div>
+          <div class="Layout">
+            <el-form :model="form_task" class="flex_start">
+              <div class="Layout">
+                <div class="queryName">任务ID</div>
+                <el-input v-model="form_task.id" size="small" clearable style="width:77% !important;" />
+              </div>
+              <div class="Layout marginLeft">
+                <div class="queryName">归属项目</div>
+                <el-select v-model="form_task.projectId" size="small" clearable filterable placeholder="请选择">
+                  <el-option v-for="item in projectList" :key="item.code" :label="item.msg" :value="item.code" />
+                </el-select>
+              </div>
+              <div class="Layout marginLeft">
+                <div class="queryName">归属需求</div>
+                <el-select v-model="form_task.requireId" size="small" clearable filterable placeholder="请选择">
+                  <el-option v-for="item in demandList" :key="item.code" :label="item.msg" :value="item.code" />
+                </el-select>
+              </div>
+            </el-form>
+          </div>
+          <div class="Layout" style="margin: 15px 0;">
+            <el-form :model="form_task" class="flex_start">
+              <div class="Layout">
+                <div class="queryName">负责人</div>
+                <el-select
+                  v-model="form_task.PersonInCharge"
+                  clearable
+                  filterable
+                  remote
+                  reserve-keyword
+                  placeholder="请输入姓名或邮箱前缀"
+                  :remote-method="remoteMethod"
+                  :loading="loading"
+                  size="small"
+                >
+                  <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
+                    <div class="flex_start">
+                      <div class="deptName">{{ item.deptName }}</div>
+                      <div style="min-width:80px">{{ item.name }}</div>
+                      <div class="deptName">{{ item.idap }}</div>
+                    </div>
+                  </el-option>
+                </el-select>
+              </div>
+              <div class="Layout marginLeft">
+                <div class="queryName">参与人</div>
+                <el-select
+                  v-model="form_task.Participant"
+                  clearable
+                  filterable
+                  remote
+                  reserve-keyword
+                  placeholder="请输入姓名或邮箱前缀"
+                  :remote-method="remoteMethod"
+                  :loading="loading"
+                  size="small"
+                >
+                  <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
+                    <div class="flex_start">
+                      <div class="deptName">{{ item.deptName }}</div>
+                      <div style="min-width:80px">{{ item.name }}</div>
+                      <div class="deptName">{{ item.idap }}</div>
+                    </div>
+                  </el-option>
+                </el-select>
+              </div>
+              <div class="Layout marginLeft">
+                <div class="queryName">创建人</div>
+                <el-select
+                  v-model="form_task.creater"
+                  clearable
+                  filterable
+                  remote
+                  reserve-keyword
+                  placeholder="请输入姓名或邮箱前缀"
+                  :remote-method="remoteMethod"
+                  :loading="loading"
+                  size="small"
+                >
+                  <el-option v-for="item in options" :key="item.idap" :label="item.name" :value="test2(item, 0)">
+                    <div class="flex_start">
+                      <div class="deptName">{{ item.deptName }}</div>
+                      <div style="min-width:80px">{{ item.name }}</div>
+                      <div class="deptName">{{ item.idap }}</div>
+                    </div>
+                  </el-option>
+                </el-select>
+              </div>
+            </el-form>
+          </div>
+          <div align="right">
+            <el-button type="primary" size="mini" @click="get_taskList(form_task)">筛 选</el-button>
+            <el-button size="mini" @click="query_Reset">重 置</el-button>
           </div>
         </div>
       </div>
@@ -217,6 +224,7 @@ import {
   taskIdAndName
 } from '@/api/taskIndex' // ajax
 import openDialog from '@/views/projectManage/dialog_vue'
+import '@/views/projectManage/publicCss/index.css'
 export default {
   components: {
     openDialog
@@ -471,7 +479,7 @@ export default {
       background rgba(252,252,252,1)
       border-radius 4px
       padding 2% 1%
-      min-height 120px
+      min-height 100px
       margin-top 22px
       border 1px solid rgba(238,238,238,1)
       width 100%

部分文件因为文件数量过多而无法显示