From a55bb6cf24c32ea89d00336ec2afc77af5c59661 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期四, 24 八月 2023 17:56:56 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.110.209:9001/r/lims-before

---
 src/api/inspection/commisioninspection.js                            |   24 +
 src/api/url.js                                                       |    1 
 src/views/login/index.vue                                            |    6 
 src/layout/components/Navbar.vue                                     |   26 +
 src/layout/components/Sidebar/Item.vue                               |    2 
 src/router/index.js                                                  |   21 
 src/views/inspectionManagement/commissionInspection/addCommision.vue |   51 ++
 .env.staging                                                         |    2 
 src/main.js                                                          |    5 
 package.json                                                         |    1 
 .env.production                                                      |    2 
 src/layout/components/Sidebar/index.vue                              |    1 
 src/views/experiment/checkTheReport/index.vue                        |   50 ++-
 src/layout/components/Sidebar/SidebarItem.vue                        |    1 
 src/views/inspectionManagement/commissionInspection/index.vue        |  708 ++++++++++++++++++++++++-------------------
 15 files changed, 539 insertions(+), 362 deletions(-)

diff --git a/.env.production b/.env.production
index 64b7d95..d5166db 100644
--- a/.env.production
+++ b/.env.production
@@ -3,5 +3,5 @@
 
 # base api
 # VUE_APP_BASE_API = '/prod-api'
-VUE_APP_BASE_API = 'http://192.168.110.254:1234/'
+VUE_APP_BASE_API = 'http://192.168.110.167:1234/'
 
diff --git a/.env.staging b/.env.staging
index d5bc70f..65e5ce8 100644
--- a/.env.staging
+++ b/.env.staging
@@ -5,6 +5,6 @@
 
 # base api
 # VUE_APP_BASE_API = '/stage-api'
-VUE_APP_BASE_API = 'http://192.168.110.87:1234/'
+VUE_APP_BASE_API = 'http://192.168.110.167:1234/'
 
 
diff --git a/package.json b/package.json
index 00e6b41..048f7b0 100644
--- a/package.json
+++ b/package.json
@@ -26,6 +26,7 @@
     "path-to-regexp": "2.4.0",
     "postcss-pxtorem": "^5.1.1",
     "vue": "2.6.10",
+    "vue-clipboard2": "^0.3.3",
     "vue-router": "3.0.6",
     "vuex": "3.1.0"
   },
diff --git a/src/api/inspection/commisioninspection.js b/src/api/inspection/commisioninspection.js
index ce4a93f..982a2f0 100644
--- a/src/api/inspection/commisioninspection.js
+++ b/src/api/inspection/commisioninspection.js
@@ -40,4 +40,28 @@
     method: 'post',
     data
   })
+}
+
+export function getViewUUID(params){
+  return request({
+    url: '/link-basic/getViewUUID',
+    method: 'get',
+		params
+  })
+}
+
+export function selectViewUUID(){
+  return request({
+    url: '/link-basic/selectViewUUID',
+    method: 'get'
+  })
+}
+
+
+export function isIfViewUUID(params){
+  return request({
+    url: '/link-basic/isIfViewUUID',
+    method: 'get',
+		params
+  })
 }
\ No newline at end of file
diff --git a/src/api/url.js b/src/api/url.js
index 8849e20..fbaa55b 100644
--- a/src/api/url.js
+++ b/src/api/url.js
@@ -5,6 +5,7 @@
 	"reported": "/plan/reported",//涓婃姤
 	"distribution": "/plan/distribution",//鍒嗛厤
 	"check": "/plan/check",//妫�楠�
+	"info": "/user/info",//鐧诲綍-->鑾峰彇鐢ㄦ埛淇℃伅
 }
 
 export default function(Vue) {
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
index 9f1ae3e..5d90276 100644
--- a/src/layout/components/Navbar.vue
+++ b/src/layout/components/Navbar.vue
@@ -13,7 +13,7 @@
       </div>
       <el-dropdown class="avatar-container" trigger="click">
         <div class="avatar-wrapper">
-          <a class="user-avatar">{{ '涓ぉ'.slice(0,1) }}</a>
+          <a class="user-avatar">{{ user.name.slice(0,1) }}</a>
         </div>
         <el-dropdown-menu slot="dropdown" class="user-dropdown">
             <el-dropdown-item >
@@ -49,6 +49,12 @@
 import { mapGetters } from 'vuex'
 // import Breadcrumb from '@/components/Breadcrumb'
 // import Hamburger from '@/components/Hamburger'
+	import {
+		get,
+		post,
+		wpost,
+		postFile
+	} from "@/api/util/requestUtil.js"
 
 export default {
   data(){
@@ -72,6 +78,17 @@
       'avatar'
     ])
   },
+	data() {
+		return {
+			user: {
+				id: null,
+				name: 'value'
+			}
+		}
+	},
+	mounted() {
+		this.getUser()
+	},
   methods: {
     reset(){
       this.dialogFormVisible = false;
@@ -91,7 +108,12 @@
     async logout() {
       // await this.$store.dispatch('user/logout')
       this.$router.push(`/login?redirect=${this.$route.fullPath}`)
-    }
+    },
+		getUser(){
+			get(this.$url.info).then(res=>{
+				this.user = res.data
+			})
+		}
   }
 }
 </script>
diff --git a/src/layout/components/Sidebar/Item.vue b/src/layout/components/Sidebar/Item.vue
index 7785af0..454e81b 100644
--- a/src/layout/components/Sidebar/Item.vue
+++ b/src/layout/components/Sidebar/Item.vue
@@ -19,9 +19,7 @@
   render(h, context) {
     const { icon, title } = context.props
     const vnodes = []
-    // console.log(show)
     // if (!show) return
-    // console.log(icon, title)
     if (icon) {
       if (icon.includes('el-icon')) {
         vnodes.push(<i class={[icon, 'sub-el-icon']} />)
diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue
index e5b588f..498db1c 100644
--- a/src/layout/components/Sidebar/SidebarItem.vue
+++ b/src/layout/components/Sidebar/SidebarItem.vue
@@ -63,7 +63,6 @@
     return {}
   },
   created() {
-    // console.log(this.item)
   },
   methods: {
     hasOneShowingChild(children = [], parent) {
diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue
index e093b2b..1187cbb 100644
--- a/src/layout/components/Sidebar/index.vue
+++ b/src/layout/components/Sidebar/index.vue
@@ -31,7 +31,6 @@
       'sidebar'
     ]),
     routes() {
-      console.log(this.$router.options.routes);
       return this.$router.options.routes
     },
     activeMenu() {
diff --git a/src/main.js b/src/main.js
index beb2705..1eda87c 100644
--- a/src/main.js
+++ b/src/main.js
@@ -7,6 +7,8 @@
 import ElementUI from 'element-ui'
 import 'element-ui/lib/theme-chalk/index.css'
 import locale from 'element-ui/lib/locale/lang/zh-CN' // lang i18n
+import VueClipboard from 'vue-clipboard2'
+Vue.use(VueClipboard)
 
 import '@/styles/index.scss' // global css
 
@@ -41,6 +43,8 @@
 	return JSON.parse(JSON.stringify(val))
 }
 
+Vue.prototype.vueIp = "http://localhost:8080/"
+
 // set ElementUI lang to EN
 Vue.use(ElementUI, { locale })
 // 濡傛灉鎯宠涓枃鐗� element-ui锛屾寜濡備笅鏂瑰紡澹版槑
@@ -50,6 +54,7 @@
 
 Vue.config.productionTip = false
 
+
 new Vue({
   el: '#app',
   router,
diff --git a/src/router/index.js b/src/router/index.js
index f843389..cc9b8b5 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -42,6 +42,11 @@
     hidden: true
   },
   {
+    path: '/addCommision',
+    component: () => import('@/views/inspectionManagement/commissionInspection/addCommision'),
+    hidden:true
+  },
+  {
     path: '/',
     component: Layout,
     redirect: '/home',
@@ -53,6 +58,11 @@
       meta: { title: '涓婚〉', icon: 'el-icon-s-home' }
     }]
   },
+	{
+	  path: '/addCommision/:viewId',
+	  hidden: true,
+	  component: () => import('@/views/inspectionManagement/commissionInspection/addCommision'),
+	},
   {
     path: '/standardLibrary',
     component: Layout,
@@ -164,16 +174,7 @@
         path: 'commissionInspection',
         name: 'CommissionInspection',
         component: () => import('@/views/inspectionManagement/commissionInspection/index'),
-        meta: { title: '濮旀墭妫�楠�', icon: 'table' },
-        children: [
-          {
-            path: 'addCommision',
-            name: 'AddCommision',
-            hidden: true,
-            component: () => import('@/views/inspectionManagement/commissionInspection/addCommision'),
-            meta: { title: '妫�娴嬩俊鎭�', icon: 'table' }
-          }
-        ]
+        meta: { title: '濮旀墭妫�楠�', icon: 'table' }
       },
       {
         path: 'reportForInspection',
diff --git a/src/views/experiment/checkTheReport/index.vue b/src/views/experiment/checkTheReport/index.vue
index 2a92de3..a127c10 100644
--- a/src/views/experiment/checkTheReport/index.vue
+++ b/src/views/experiment/checkTheReport/index.vue
@@ -1,27 +1,33 @@
 <template>
   <div class="content-main">
     <div class="top-bar">
-      <el-form ref="form" :inline="true">
-        <el-form-item class="sermargin">
+      <el-form ref="form" :inline="true" :model="searchData" label-position="left">
+        <el-form-item label="鏍峰搧缂栧彿:">
           <el-input
-            v-model="input"
+            v-model="searchData.sample_code"
             class="input-form"
-            placeholder="璇风洿鎺ヨ緭鍏ユ牱寮忕紪鍙�/鎶ュ憡鍗曞彿/鏍峰搧缂栧彿/杩涜鎼滅储鎴栦笅鎷夐�夋嫨杩涜缁勫悎鏌ヨ"
+            placeholder="璇疯緭鍏ユ牱鍝佺紪鍙�"
             @keyup.enter.native="getData"
+          />
+        </el-form-item>
+        <el-form-item label="鎶ュ憡鍗曞彿:">
+          <el-input
+            v-model="searchData.reportCode"
+            class="input-form"
+            placeholder="璇疯緭鍏ユ姤鍛婂崟鍙�"
+          />
+        </el-form-item>
+        <el-form-item label="鐢宠鍗曞彿:">
+          <el-input
+            v-model="searchData.application_code"
+            class="input-form"
+            placeholder="璇疯緭鍏ョ敵璇峰崟鍙�"
           />
         </el-form-item>
         <el-form-item>
           <el-button type="primary" @click="getData()">鏌ヨ</el-button>
           <el-button type="primary" plain @click="resetData()">閲嶇疆</el-button>
         </el-form-item>
-        <el-dropdown>
-          <span class="el-dropdown-link">
-            楂樼骇鎼滅储<i class="el-icon-arrow-down el-icon--right"></i>
-          </span>
-          <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item>楂樼骇鎼滅储</el-dropdown-item>
-          </el-dropdown-menu>
-        </el-dropdown>
       </el-form>
       <el-form>
         <el-button class="rightBtn" type="primary" icon="el-icon-document"
@@ -36,7 +42,8 @@
             <el-radio-button>鍏ㄩ儴</el-radio-button>
             <el-radio-button label="0">寰呮彁浜�</el-radio-button>
             <el-radio-button label="1">寰呭鏍�</el-radio-button>
-            <el-radio-button label="2">宸插鏍�</el-radio-button>
+            <el-radio-button label="2">寰呯瀛�</el-radio-button>
+            <el-radio-button label="3">宸插畬鎴�</el-radio-button>
           </el-radio-group>
 
           <el-checkbox v-model="checked" style="margin-left: 20px"
@@ -165,7 +172,11 @@
 export default {
   data() {
     return {
-      input: "",
+      searchData:{
+        sample_code:'',
+        reportCode:'',
+        application_code: ''
+      },
       checkStatus: undefined,
       reportTable: [],
       page: 1,
@@ -196,7 +207,11 @@
     },
     // 閲嶇疆鎸夐挳
     resetData() {
-      this.input = undefined;
+      this.searchData={
+        sample_code:'',
+        reportCode:'',
+        application_code: ''
+      },
       this.page = 1;
       this.pageSize = 10;
       this.checkStatus = undefined;
@@ -207,7 +222,7 @@
       const params = {
         page: this.page,
         pageSize: this.pageSize,
-        name: this.input ? this.input : undefined,
+        name: this.searchData.sample_code ? this.searchData.sample_code : undefined,
         status: this.checkStatus ? this.checkStatus : undefined,
       };
       const { data } = await selectAllReport(params);
@@ -226,7 +241,8 @@
   justify-content: space-between;
   padding: 5px 24px 0px 24px;
   .input-form {
-    width: 700px;
+    width: 250px;
+    margin-right: 30px;
   }
   .el-dropdown-link {
     cursor: pointer;
diff --git a/src/views/inspectionManagement/commissionInspection/addCommision.vue b/src/views/inspectionManagement/commissionInspection/addCommision.vue
index cd441b4..bebe006 100644
--- a/src/views/inspectionManagement/commissionInspection/addCommision.vue
+++ b/src/views/inspectionManagement/commissionInspection/addCommision.vue
@@ -1,19 +1,19 @@
 <template>
-  <div v-if="!showDetail">
+  <div class="add_commision">
   <div class="content-main">
     <div class="firstBox">
-      <div class="title">妫�娴嬩俊鎭�</div>
+      <div class="title">濮旀墭淇℃伅</div>
       <div class="tableBox">
         <div class="tableBox-header">
         <el-button class="split" @click="dialogueFormVisible = true" type="primary" size="small" style="background-color: rgb(1, 102, 226);">娣诲姞鏍峰搧</el-button>
-        <el-input
+<!--        <el-input
           v-model="searchData"
           class="input-form split"
           placeholder="鎵弿浜岀淮鐮佸綍鍏ユ牱鍝�..."
           prefix-icon="el-icon-search"
           style="width: 200px;"
         >
-        </el-input>
+        </el-input>-->
         <el-button type="primary" size="small" style="background-color: rgb(1, 102, 226);">閲嶇疆</el-button>
       </div>
         <el-table
@@ -107,7 +107,7 @@
             <el-col :span="12">鍩烘湰淇℃伅</el-col>
             <el-col :span="12" style="text-align: right;">
             <!-- 鐐瑰嚮杩斿洖锛屽綋鍓嶉〉闈㈠�间负false -->
-            <el-button type="primary" size="mini" style="background-color: rgb(1, 102, 226); ">鎵撳嵃濮旀墭鍗�</el-button>
+            <!-- <el-button type="primary" size="mini" style="background-color: rgb(1, 102, 226); ">鎵撳嵃濮旀墭鍗�</el-button> -->
             </el-col>
         </el-row>
             <el-form :model="infoForm" ref="infoForm" class="infoForm" label-position="right" label-width="100px" size="mini" >
@@ -115,7 +115,7 @@
                   <el-row :gutter="200">
                         <el-col :span="5">
                         <el-form-item label="濮旀墭缂栧彿锛�">
-                            <el-input style="width: 160px" type="text" :value="infoForm.commisioncode" readonly disabled="true" autocomplete="off" />  
+                            <el-input style="width: 160px" type="text" :value="infoForm.commisioncode" readonly disabled="true" autocomplete="off" />
                         </el-form-item>
                         </el-col>
                         <el-col :span="5">
@@ -193,6 +193,8 @@
                     </div>
                     <div class="submitBtn">
                       <el-button type="primary" size="small" @click="submitInspection" style="background-color: rgb(1, 102, 226);">鎻愪氦</el-button>
+                      <!-- 鐐瑰嚮杩斿洖锛屽綋鍓嶉〉闈㈠�间负false -->
+                      <el-button type="primary" size="mini" style="background-color: rgb(1, 102, 226); ">鎵撳嵃濮旀墭鍗�</el-button>
                     </div>
                 </el-form>
       </div>
@@ -230,19 +232,19 @@
             </el-col>
             <el-col :span="10">
               <el-form-item label="鏍峰搧鍗曚綅锛�">
-                <el-input style="width: 160px" type="text" v-model="addPointerForm.unit" placeholder="璇疯緭鍏ュ崟浣�" autocomplete="off" />  
+                <el-input style="width: 160px" type="text" v-model="addPointerForm.unit" placeholder="璇疯緭鍏ュ崟浣�" autocomplete="off" />
               </el-form-item>
             </el-col>
           </el-row>
           <el-row :gutter="50">
             <el-col :span="10">
               <el-form-item label="鏍峰搧鏁伴噺锛�">
-                <el-input style="width: 160px" type="text" v-model="addPointerForm.samplesNumber" placeholder="璇疯緭鍏ユ暟閲�" autocomplete="off" />  
+                <el-input style="width: 160px" type="text" v-model="addPointerForm.samplesNumber" placeholder="璇疯緭鍏ユ暟閲�" autocomplete="off" />
               </el-form-item>
             </el-col>
             <el-col :span="10">
               <el-form-item label="澶囨敞锛�">
-                <el-input style="width: 160px" type="text" v-model="addPointerForm.remarks" placeholder="璇疯緭鍏ュ娉�" autocomplete="off" />  
+                <el-input style="width: 160px" type="text" v-model="addPointerForm.remarks" placeholder="璇疯緭鍏ュ娉�" autocomplete="off" />
               </el-form-item>
             </el-col>
           </el-row>
@@ -263,9 +265,6 @@
       </el-dialog>
           </div>
   </div>
-</div>
-<div v-else>
-  <router-view></router-view>
 </div>
 </template>
 
@@ -478,9 +477,23 @@
 </script>
 
 <style lang="scss" scoped>
+.add_commision{
+  padding: 20px;
+}
+
+.content-main{
+  padding: 20px 40px;
+  background-color: #f0f2f5;
+  width: 100%;
+  height: 100vh;
+
 .firstBox{
-  .title{
-    padding:0px 10px 10px 10px;
+  .title {
+    padding: 15px 10px;
+    font-size: 18px;
+    background-color: #0166e2;
+    color: #fff;
+    border-radius: 4px;
   }
   .tableBox{
     background-color: #fff;
@@ -518,12 +531,20 @@
   .submitBtn{
     display: flex;
     justify-content: end;
-    margin-right: 156px;
+    margin-right: 40px;
     margin-top: 20px;
   }
 }
 .infoForm{
   background-color: #fff;
   padding: 20px 50px;
+  .formwrapper{
+    margin: 20px 0px;
+    padding-left: 30px;
+    .el-row{
+      margin: 10px 0px;
+    }
+  }
+}
 }
 </style>
diff --git a/src/views/inspectionManagement/commissionInspection/index.vue b/src/views/inspectionManagement/commissionInspection/index.vue
index 0cb885e..a07fdda 100644
--- a/src/views/inspectionManagement/commissionInspection/index.vue
+++ b/src/views/inspectionManagement/commissionInspection/index.vue
@@ -1,318 +1,345 @@
 <template>
-  <div>
-    <div v-if="!showDetail">
-      <div class="content-main">
-          <div class="top-bar">
-              <el-form ref="form" :inline="true" :model="searchData">
-              <el-form-item label="濮旀墭缂栧彿:" class="sermargin">
-                <el-input
-                  v-model="searchData.code"
-                  class="input-form"
-                  placeholder="璇疯緭鍏�"
-                >
-                </el-input>
-              </el-form-item>
-              <el-form-item label="鏍峰搧鍚嶇О:" class="sermargin">
-                <el-input
-                  v-model="searchData.name"
-                  class="input-form"
-                  placeholder="璇疯緭鍏�"
-                >
-                </el-input>
-              </el-form-item>
-              <el-form-item label="濮旀墭鍗曚綅:" style="margin-right: 20px;">
-                <el-select v-model="searchData.department" placeholder="鍏ㄩ儴">
-                  <el-option
-                    v-for="item in options"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value">
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item>
-                <el-button type="primary" @click="search">鏌ヨ</el-button>
-                <el-button type="primary" plain @click="reset">閲嶇疆</el-button>
-              </el-form-item>
-              </el-form>
-              <el-form>
-                <el-button class="rightBtn" type="primary" @click="goToaddCommision">鏂板濮旀墭</el-button>
-              </el-form>
-          </div>
-          <div class="library-table">
-            <div class="table-header">
-              <div class="search-bar">
-                <el-radio-group v-model="radioValue" @change="radioclick">
-                <el-radio-button v-for="item in conditionsOptions" :key="item.value" :label="item.value">
-                {{ item.label }}
-              </el-radio-button>
-              </el-radio-group>
-              </div>
-              <div class="generateInsp">
-                <el-button type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button>
-              </div>
-            </div>
-            <div class="table-box">
-              <el-table
-                ref="commisionTable"
-                :max-height="800"
-                :cell-style="{textAlign: 'center'}"
-                :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
-                :data="commisionTable"
-                style="width: 100%"
-              >
-                <el-table-column
-                  type="selection"
-                  min-width="10%"
-                />
-                <el-table-column
-                  type="index"
-                  label="搴忓彿"
-                  min-width="10%"
-                />
-                <el-table-column
-                  prop="entrust_coding"
-                  label="濮旀墭缂栧彿"
-                  min-width="10%"
-                />
-                <el-table-column
-                  prop="entrusted"
-                  label="濮旀墭鍗曚綅"
-                  min-width="12%"
-                />
-                <el-table-column
-                  prop="samples_number"
-                  label="鏍峰搧缂栧彿"
-                  min-width="8%"
-                />
-                <el-table-column
-                  prop="sample_name"
-                  label="鏍峰搧鍚嶇О"
-                  min-width="8%"
-                />
-                <el-table-column
-                  prop="specifications_models"
-                  label="瑙勬牸鍨嬪彿"
-                  min-width="12%"
-                />
-                <el-table-column
-                  prop="dateSurvey"
-                  label="閫佽揪鏃堕棿"
-                  min-width="8%"
-                />
-                <el-table-column
-                  prop="completionDeadline"
-                  label="瀹屾垚鏈熼檺"
-                  min-width="8%"
-                />
-                <el-table-column
-                  prop="contacts"
-                  label="濮旀墭缂栧埗浜�"
-                  min-width="8%"
-                />
-                <el-table-column
-                  prop="inspectionTime"
-                  label="妫�楠屾棩鏈�"
-                  min-width="8%"
-                />
-                <el-table-column
-                  prop="inspection_status"
-                  label="鐘舵��"
-                  min-width="8%">
-                  <template slot-scope="scope">
-                    <div v-if="scope.row.inspection_status === 1">
-                      <span style="color: green;">宸叉娴�</span>
-                    </div>
-                    <div v-else>
-                      <span style="color: red;">寰呮娴�</span>
-                    </div>
-                  </template>
-                </el-table-column>
-                <el-table-column
-                  label="鎿嶄綔"
-                  min-width="8%"
-                >
-                  <template slot-scope="scope">
-                    <el-button type="text" size="small" @click="handleClick(scope.row)">鍒犻櫎</el-button>
-                  </template>
-                </el-table-column>
-              </el-table>
-              <!-- 鍒嗛〉鍣� -->
-              <div>
-                <el-pagination
-                  @size-change="handleSizeChange"
-                  @current-change="handleCurrentChange"
-                  :current-page="currentPage"
-                  :page-sizes="[5, 10, 20]"
-                  :page-size="pageSize"
-                  layout="total, sizes, prev, pager, next, jumper"
-                  :total="total">
-                </el-pagination>
-              </div>
-            </div>
-          </div>
-      </div>
-  </div>
-    <div v-else>
-      <router-view />
-    </div>
-  </div>
+	<div>
+		<div v-if="!showDetail">
+			<div class="content-main">
+				<div class="top-bar">
+					<el-form ref="form" :inline="true" :model="searchData">
+						<el-form-item label="濮旀墭缂栧彿:" class="sermargin">
+							<el-input v-model="searchData.code" class="input-form" placeholder="璇疯緭鍏�">
+							</el-input>
+						</el-form-item>
+						<el-form-item label="鏍峰搧鍚嶇О:" class="sermargin">
+							<el-input v-model="searchData.name" class="input-form" placeholder="璇疯緭鍏�">
+							</el-input>
+						</el-form-item>
+						<el-form-item label="濮旀墭鍗曚綅:" style="margin-right: 20px;">
+							<el-select v-model="searchData.department" placeholder="鍏ㄩ儴">
+								<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
+								</el-option>
+							</el-select>
+						</el-form-item>
+						<el-form-item>
+							<el-button type="primary" @click="search">鏌ヨ</el-button>
+							<el-button type="primary" plain @click="reset">閲嶇疆</el-button>
+						</el-form-item>
+					</el-form>
+					<el-form>
+						<el-popover placement="left" width="350" trigger="click">
+							<div class="vue_qr_div">
+								<el-row>
+									<el-col>
+										<el-input v-model="view" readonly size="medium" style="width: 250px;margin-right: 10px;"></el-input>
+										<el-button size="small" type="primary" v-if="viewId==null" @click="viewDia=true">鐢熸垚</el-button>
+										<el-button size="small" type="primary" v-else-if="viewId!=null" @click="copy">澶嶅埗</el-button>
+									</el-col>
+								</el-row>
+								<el-row style="margin-top: 10px;">
+									<el-col v-if="viewId==null">褰撳墠閾炬帴宸茶繃鏈燂紝璇风偣鍑荤敓鎴愭寜閽噸鏂扮敓鎴�</el-col>
+									<el-col
+										v-else-if="viewId!=null">褰撳墠閾炬帴灏嗗湪{{(parseInt(viewTime)/60/60)>1?(parseInt(viewTime)/60/60).toFixed(1)+'灏忔椂':Math.round(parseInt(viewTime)/60)+'鍒嗛挓'}}鍚庤繃鏈�</el-col>
+								</el-row>
+							</div>
+							<el-button slot="reference" class="rightBtn" type="primary" @click="goToaddCommision">鏂板濮旀墭</el-button>
+						</el-popover>
+					</el-form>
+				</div>
+				<div class="library-table">
+					<div class="table-header">
+						<div class="search-bar">
+							<el-radio-group v-model="radioValue" @change="radioclick">
+								<el-radio-button v-for="item in conditionsOptions" :key="item.value" :label="item.value">
+									{{ item.label }}
+								</el-radio-button>
+							</el-radio-group>
+						</div>
+						<div class="generateInsp">
+							<el-button type="primary" size="mini" icon="el-icon-document"
+								style="background-color: rgb(1, 102, 226);">鐢熸垚鎶ユ鍗�</el-button>
+						</div>
+					</div>
+					<div class="table-box">
+						<el-table ref="commisionTable" :max-height="800" :cell-style="{textAlign: 'center'}"
+							:header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
+							:data="commisionTable" style="width: 100%">
+							<el-table-column type="selection" min-width="10%" />
+							<el-table-column type="index" label="搴忓彿" min-width="10%" />
+							<el-table-column prop="entrust_coding" label="濮旀墭缂栧彿" min-width="10%" />
+							<el-table-column prop="entrusted" label="濮旀墭鍗曚綅" min-width="12%" />
+							<el-table-column prop="samples_number" label="鏍峰搧缂栧彿" min-width="8%" />
+							<el-table-column prop="sample_name" label="鏍峰搧鍚嶇О" min-width="8%" />
+							<el-table-column prop="specifications_models" label="瑙勬牸鍨嬪彿" min-width="12%" />
+							<el-table-column prop="dateSurvey" label="閫佽揪鏃堕棿" min-width="8%" />
+							<el-table-column prop="completionDeadline" label="瀹屾垚鏈熼檺" min-width="8%" />
+							<el-table-column prop="contacts" label="濮旀墭缂栧埗浜�" min-width="8%" />
+							<el-table-column prop="inspectionTime" label="妫�楠屾棩鏈�" min-width="8%" />
+							<el-table-column prop="inspection_status" label="鐘舵��" min-width="8%">
+								<template slot-scope="scope">
+									<div v-if="scope.row.inspection_status === 1">
+										<span style="color: green;">宸叉娴�</span>
+									</div>
+									<div v-else>
+										<span style="color: red;">寰呮娴�</span>
+									</div>
+								</template>
+							</el-table-column>
+							<el-table-column label="鎿嶄綔" min-width="8%">
+								<template slot-scope="scope">
+									<el-button type="text" size="small" @click="handleClick(scope.row)">鍒犻櫎</el-button>
+								</template>
+							</el-table-column>
+						</el-table>
+						<!-- 鍒嗛〉鍣� -->
+						<div>
+							<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
+								:current-page="currentPage" :page-sizes="[5, 10, 20]" :page-size="pageSize"
+								layout="total, sizes, prev, pager, next, jumper" :total="total">
+							</el-pagination>
+						</div>
+					</div>
+				</div>
+			</div>
+		</div>
+		<div v-else>
+			<router-view />
+		</div>
+		<el-dialog title="閾炬帴鏃堕暱璁剧疆" :visible.sync="viewDia" width="30%">
+			<div>
+				<el-row style="line-height: 46px;">
+					<el-col :span="6" style="font-size: 14px;text-align: right;">鏃堕暱璁剧疆锛�</el-col>
+					<el-col :span="14" :offset="1">
+						<el-select v-model="viewTime" size="medium">
+							<el-option label="1 澶�" :value="1"></el-option>
+							<el-option label="2 澶�" :value="2"></el-option>
+							<el-option label="3 澶�" :value="3"></el-option>
+							<el-option label="4 澶�" :value="4"></el-option>
+							<el-option label="5 澶�" :value="5"></el-option>
+							<el-option label="6 澶�" :value="6"></el-option>
+							<el-option label="1 鍛�" :value="7"></el-option>
+						</el-select>
+					</el-col>
+				</el-row>
+			</div>
+			<span slot="footer" class="dialog-footer">
+				<el-button type="primary" @click="getViewId()">鎻� 浜�</el-button>
+				<el-button @click="viewDia = false">鍙� 娑�</el-button>
+			</span>
+		</el-dialog>
+		<!-- 闅愯棌鍩熻緭鍏ユ鐢ㄦ潵澶嶅埗 -->
+		<input id="copyContext" style="position: absolute;top: 0;left: 0;opacity: 0;z-index: -10;" />
+	</div>
 </template>
 
 <script>
-import { getCommisionList } from '@/api/inspection/commisioninspection'
-export default {
-  data() {
-    return {
-      form: [],
-      searchData: {
-        code: '',
-        name: '',
-        department: ''
-      },
-      options: [{
-        value: '1',
-        label: '閮ㄩ棬1'
-      }],
-      radioValue: 0,
-      commisionTable: [{
-        specifications_models: "GGXH-AAAAA",
-        inspectionTime: "2023-08-03",
-        id: 2,
-        samples_number: 0,
-        dateSurvey: "2023-08-03",
-        entrusted: "闃块噷宸村反",
-        completionDeadline: "2023-08-03",
-        contacts: "灏忛粦",
-        entrust_coding: "SL20230803000003",
-        sample_name: "鍙戝姩鏈�",
-        inspection_status: 1
-      }],
-      conditionsOptions: [
-        {
-          label: '鍏ㄩ儴',
-          value: 0
-        },
-        {
-          label: '宸叉楠�',
-          value: 1
-        },
-        {
-          label: '寰呮楠�',
-          value: 2
-        }
-      ],
-      currentPage: 1,
-      pageSize: 5,
-      total: 100,
-      showDetail: false
-    }
-  },
-  created() {
-    this.getCommisionList()
-  },
-  updated() {
-    if (this.$router.currentRoute.name === 'AddCommision') {
-      // console.log(this.$router.currentRoute.name)
-      this.showDetail = true
-    }
-  },
-  methods: {
-    async getCommisionList(){
-      const res = await getCommisionList({pageNo:this.currentPage, pageSize:this.pageSize})
-      this.commisionTable = res.data.row
-      this.total = res.data.total
-      // console.log(res)
-       // 鑾峰彇鎵�鏈夌殑濮旀墭鍗曚綅鍚嶇О
-      const allDepartmentNames = [...new Set(this.commisionTable.map(item => item.entrusted))]
-      // 灏哸llDepartmentNames杞崲涓簅ptions闇�瑕佺殑鏍煎紡
-      this.options = allDepartmentNames.map(name => ({ value: name, label: name }))
+	import {
+		getCommisionList,
+		getViewUUID,
+		selectViewUUID
+	} from '@/api/inspection/commisioninspection'
+	export default {
+		data() {
+			return {
+				form: [],
+				searchData: {
+					code: '',
+					name: '',
+					department: ''
+				},
+				options: [{
+					value: '1',
+					label: '閮ㄩ棬1'
+				}],
+				radioValue: 0,
+				commisionTable: [{
+					specifications_models: "GGXH-AAAAA",
+					inspectionTime: "2023-08-03",
+					id: 2,
+					samples_number: 0,
+					dateSurvey: "2023-08-03",
+					entrusted: "闃块噷宸村反",
+					completionDeadline: "2023-08-03",
+					contacts: "灏忛粦",
+					entrust_coding: "SL20230803000003",
+					sample_name: "鍙戝姩鏈�",
+					inspection_status: 1
+				}],
+				conditionsOptions: [{
+						label: '鍏ㄩ儴',
+						value: 0
+					},
+					{
+						label: '宸叉楠�',
+						value: 1
+					},
+					{
+						label: '寰呮楠�',
+						value: 2
+					}
+				],
+				currentPage: 1,
+				pageSize: 5,
+				total: 100,
+				showDetail: false,
+				day: 1,
+				view: null,
+				viewId: null,
+				viewTime: 1,
+				viewDia: false
+			}
+		},
+		created() {
+			this.getCommisionList()
+		},
+		updated() {
+			if (this.$router.currentRoute.name === 'AddCommision') {
+				// console.log(this.$router.currentRoute.name)
+				this.showDetail = true
+			}
+		},
+		methods: {
+			async getCommisionList() {
+				const res = await getCommisionList({
+					pageNo: this.currentPage,
+					pageSize: this.pageSize
+				})
+				this.commisionTable = res.data.row
+				this.total = res.data.total
+				// console.log(res)
+				// 鑾峰彇鎵�鏈夌殑濮旀墭鍗曚綅鍚嶇О
+				const allDepartmentNames = [...new Set(this.commisionTable.map(item => item.entrusted))]
+				// 灏哸llDepartmentNames杞崲涓簅ptions闇�瑕佺殑鏍煎紡
+				this.options = allDepartmentNames.map(name => ({
+					value: name,
+					label: name
+				}))
 
-    },
-    // 鏌ヨ鏂规硶
-    async search() {
-    // 灏嗘悳绱㈡潯浠朵綔涓哄弬鏁颁紶閫掔粰getCommisionList鏂规硶
-    let res
-    if(this.radioValue === 0){
-      res = await getCommisionList({
-        pageNo: this.currentPage,
-        pageSize: this.pageSize,
-        entrustCoding: this.searchData.code,
-        sampleName: this.searchData.name,
-        entrusted: this.searchData.department,
-      })
-    }else{
-      res = await getCommisionList({
-        pageNo: this.currentPage,
-        pageSize: this.pageSize,
-        entrustCoding: this.searchData.code,
-        sampleName: this.searchData.name,
-        entrusted: this.searchData.department,
-        inspectionStatus: this.radioValue
-      })
-    }
-      // console.log(res)
-      this.commisionTable = res.data.row
-      this.total = res.data.total
-    },
+			},
+			// 鏌ヨ鏂规硶
+			async search() {
+				// 灏嗘悳绱㈡潯浠朵綔涓哄弬鏁颁紶閫掔粰getCommisionList鏂规硶
+				let res
+				if (this.radioValue === 0) {
+					res = await getCommisionList({
+						pageNo: this.currentPage,
+						pageSize: this.pageSize,
+						entrustCoding: this.searchData.code,
+						sampleName: this.searchData.name,
+						entrusted: this.searchData.department,
+					})
+				} else {
+					res = await getCommisionList({
+						pageNo: this.currentPage,
+						pageSize: this.pageSize,
+						entrustCoding: this.searchData.code,
+						sampleName: this.searchData.name,
+						entrusted: this.searchData.department,
+						inspectionStatus: this.radioValue
+					})
+				}
+				// console.log(res)
+				this.commisionTable = res.data.row
+				this.total = res.data.total
+			},
 
-    // 閲嶇疆鏂规硶
-    reset() {
-      // 閲嶇疆鎼滅储鏉′欢
-      this.searchData.code = ''
-      this.searchData.name = ''
-      this.searchData.department = ''
-      this.radioValue = 0
-      // 閲嶆柊鑾峰彇鏁版嵁
-      this.getCommisionList()
-    },
-    async radioclick(){
-      // 澶勭悊鐐瑰嚮radio鐨勬椂闂�
-      console.log('radioValue',this.radioValue)
-      if(this.radioValue === 0){
-        this.getCommisionList() 
-      }else{
-        const res = await getCommisionList({pageNo:this.currentPage, pageSize:this.pageSize, inspectionStatus: this.radioValue})
-        // console.log(res)
-        this.commisionTable = res.data.row
-        this.total = res.data.total
-      }
-      
-    },
-    // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
-    async handleSizeChange(val) {
-      // console.log(`姣忛〉 ${val} 鏉)
-      this.currentPage = 1
-      this.pageSize = val
-      if(this.radioValue === 0){
-        this.getCommisionList()
-      }else{
-        const res = await getCommisionList({pageNo:this.currentPage, pageSize:this.pageSize, inspectionStatus: this.radioValue})
-        this.commisionTable = res.data.row
-        this.total = res.data.total
-      }
-    },
-    // 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
-    async handleCurrentChange(val) {
-      // console.log(`褰撳墠椤�: ${val}`)
-      this.currentPage = val
-      if(this.radioValue === 0){
-        this.getCommisionList()
-      }else{
-        const res = await getCommisionList({pageNo:this.currentPage, pageSize:this.pageSize, inspectionStatus: this.radioValue})
-        this.commisionTable = res.data.row
-        this.total = res.data.total
-      }
-    },
-    goToaddCommision() {
-      this.$router.push('/inspectionManagement/commissionInspection/addCommision')
-      this.showDetail = true
-    }
-  }
-}
+			// 閲嶇疆鏂规硶
+			reset() {
+				// 閲嶇疆鎼滅储鏉′欢
+				this.searchData.code = ''
+				this.searchData.name = ''
+				this.searchData.department = ''
+				this.radioValue = 0
+				// 閲嶆柊鑾峰彇鏁版嵁
+				this.getCommisionList()
+			},
+			async radioclick() {
+				// 澶勭悊鐐瑰嚮radio鐨勬椂闂�
+				console.log('radioValue', this.radioValue)
+				if (this.radioValue === 0) {
+					this.getCommisionList()
+				} else {
+					const res = await getCommisionList({
+						pageNo: this.currentPage,
+						pageSize: this.pageSize,
+						inspectionStatus: this.radioValue
+					})
+					// console.log(res)
+					this.commisionTable = res.data.row
+					this.total = res.data.total
+				}
+
+			},
+			// 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
+			async handleSizeChange(val) {
+				// console.log(`姣忛〉 ${val} 鏉)
+				this.currentPage = 1
+				this.pageSize = val
+				if (this.radioValue === 0) {
+					this.getCommisionList()
+				} else {
+					const res = await getCommisionList({
+						pageNo: this.currentPage,
+						pageSize: this.pageSize,
+						inspectionStatus: this.radioValue
+					})
+					this.commisionTable = res.data.row
+					this.total = res.data.total
+				}
+			},
+			// 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
+			async handleCurrentChange(val) {
+				// console.log(`褰撳墠椤�: ${val}`)
+				this.currentPage = val
+				if (this.radioValue === 0) {
+					this.getCommisionList()
+				} else {
+					const res = await getCommisionList({
+						pageNo: this.currentPage,
+						pageSize: this.pageSize,
+						inspectionStatus: this.radioValue
+					})
+					this.commisionTable = res.data.row
+					this.total = res.data.total
+				}
+			},
+			goToaddCommision() {
+				// this.showDetail = true
+				selectViewUUID({
+					day: this.day
+				}).then(res => {
+					this.view = `${this.vueIp}addCommision/${res.data.id}`
+					this.viewId = res.data.id
+					this.viewTime = res.data.time
+				})
+			},
+			getViewId() {
+				getViewUUID({
+					day: this.viewTime == null ? 1 : this.viewTime
+				}).then(res => {
+					this.viewId = res.data
+					this.view = `${this.vueIp}addCommision/${res.data.id}`
+					this.viewDia = false
+					this.$message.success('閾炬帴宸茬敓鎴愶紝鐐瑰嚮澶嶅埗鎸夐挳杩涜澶嶅埗')
+				})
+			},
+			copy() {
+				document.getElementById('copyContext').value = this.view
+				const input = document.querySelector('#copyContext');
+				input.select()
+				if (document.execCommand('copy')) {
+					this.$message.success('宸插鍒跺埌鍓创鏉�')
+				}
+			}
+		}
+	}
 </script>
 
 <style scoped>
+	.top-bar {
+		margin: -25px -15px;
+		background: #fff;
+		display: flex;
+		justify-content: space-between;
+		padding: 5px 24px 0px 24px;
+    }
 
 .top-bar{
     margin: -25px -15px;
@@ -323,10 +350,26 @@
     .sermargin{
       margin-right: 60px;
     }
+    .rightForm{
+      display: flex;
+      justify-content: space-between;
+      /* background-color: #bfa; */
+      height: 40px;
+      line-height: 40px;
+      >div{
+        padding: 0px 10px;
+        padding-bottom: 10px;
+        border:1px solid rgb(8, 156, 230);
+        margin-right: 10px;
+        /* height: 40px;
+        line-height: 40px; */
+      }
+      .rightBtn{
+        background-color: rgb(1, 102, 226);
+      }
+    }
   }
-.rightBtn{
-    background-color: rgb(1, 102, 226);
-}
+
 .library-table{
       background-color: #fff;
       flex: 1;
@@ -361,4 +404,51 @@
       }
     }
 
+	.rightBtn {
+		background-color: rgb(1, 102, 226);
+	}
+
+	.library-table {
+		background-color: #fff;
+		flex: 1;
+		margin: 0px -15px;
+		margin-top: 40px;
+		display: flex;
+		flex-direction: column;
+
+		.table-header {
+			padding: 20px;
+			display: flex;
+			justify-content: space-between;
+
+			.el-form-item {
+				margin-bottom: 30px !important;
+			}
+		}
+
+		.table-box {
+			padding: 0px 20px;
+			margin-top: 0px;
+			flex: 1;
+			background: #fff;
+			/* padding: 20px 20px 10px 20px; */
+			display: flex;
+			flex-direction: column;
+
+			.el-table {
+				flex: 1;
+			}
+
+			>div:nth-child(2) {
+				display: flex;
+				justify-content: end;
+				margin: 10px 0;
+			}
+		}
+	}
+
+	.vue_qr_div {
+		text-align: center;
+		color: #0166e2;
+	}
 </style>
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index 567f922..d753b3b 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -43,10 +43,10 @@
       </el-form-item>
 
       <el-button :loading="loading" type="primary" style="width:100%;margin-bottom:30px;" @click.native.prevent="handleLogin">Login</el-button>
-      <div class="tips">
+      <!-- <div class="tips">
         <span style="margin-right:20px;">username: admin</span>
         <span> password: any</span>
-      </div>
+      </div> -->
     </el-form>
   </div>
 </template>
@@ -115,7 +115,7 @@
             this.loading = false
           })
         } else {
-          console.log('error submit!!')
+          console.log('鐧诲綍澶辫触!')
           return false
         }
       })

--
Gitblit v1.9.3