From 85f689b65f4fb915ffe6bb2e5e65d7a88dc22865 Mon Sep 17 00:00:00 2001
From: yuyu <1981343953@qq.com>
Date: 星期四, 10 八月 2023 16:59:25 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.110.209:9001/r/lims-before
---
src/views/experiment/reportAuditing/index.vue | 212 ++++++++
src/api/experiment/reportAuditing.js | 9
src/api/urlEnum/nonConformingFeedback.js | 8
src/views/experiment/nonConformanceReview/index.vue | 196 ++++++++
src/views/experiment/nonConformingFeedback/index.vue | 196 ++++++++
src/views/experiment/planAssignments/index.vue | 307 +++++-------
README.md | 4
src/api/urlEnum/nonConformanceReview.js | 8
src/api/util/requestUtil.js | 18
src/api/experiment/checkTheReport.js | 9
src/views/CNAS/satisfactionSurveys/index.vue | 192 +++++++
src/views/experiment/checkTheReport/index.vue | 250 ++++++++++
src/api/experiment/planAssignments.js | 9
src/api/rawMaterials/reportForInspection.js | 2
14 files changed, 1,238 insertions(+), 182 deletions(-)
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..2485b1d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,4 @@
+## lims-before
+
+lims鍓嶆
+
diff --git a/src/api/experiment/checkTheReport.js b/src/api/experiment/checkTheReport.js
new file mode 100644
index 0000000..940fb8a
--- /dev/null
+++ b/src/api/experiment/checkTheReport.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+export function selectAllReport(params) {
+ return request({
+ url: '/report/selectAllReport',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/experiment/planAssignments.js b/src/api/experiment/planAssignments.js
new file mode 100644
index 0000000..b373041
--- /dev/null
+++ b/src/api/experiment/planAssignments.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+export function selectAllPlan(params) {
+ return request({
+ url: '/plan/selectAllPlan',
+ method: 'get',
+ params
+ })
+}
\ No newline at end of file
diff --git a/src/api/experiment/reportAuditing.js b/src/api/experiment/reportAuditing.js
new file mode 100644
index 0000000..f6a7bae
--- /dev/null
+++ b/src/api/experiment/reportAuditing.js
@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+export function selectAllReportCheck(params) {
+ return request({
+ url: '/reportAuditing/selectAllReportAuditing',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/rawMaterials/reportForInspection.js b/src/api/rawMaterials/reportForInspection.js
index e110f2d..7b62c9e 100644
--- a/src/api/rawMaterials/reportForInspection.js
+++ b/src/api/rawMaterials/reportForInspection.js
@@ -3,7 +3,7 @@
// 鏌ヨ鎵�鏈夌敵璇峰崟鍒楄〃
export function getInspectionList(params) {
return request({
- url: '/inspection/selectAllInspection',
+ url: '/inspection/selectInspectsList',
method: 'get',
params
})
diff --git a/src/api/urlEnum/nonConformanceReview.js b/src/api/urlEnum/nonConformanceReview.js
new file mode 100644
index 0000000..1b61727
--- /dev/null
+++ b/src/api/urlEnum/nonConformanceReview.js
@@ -0,0 +1,8 @@
+const baseurl='/nonConformanceReview'
+
+const url={
+ "getNonConformanceReview": baseurl+"/getNonConformanceReview",//鑾峰彇涓嶅悎鏍煎搧璇勫
+}
+export default{
+ url
+}
\ No newline at end of file
diff --git a/src/api/urlEnum/nonConformingFeedback.js b/src/api/urlEnum/nonConformingFeedback.js
new file mode 100644
index 0000000..736e5d4
--- /dev/null
+++ b/src/api/urlEnum/nonConformingFeedback.js
@@ -0,0 +1,8 @@
+const baseurl='/non-conforming-feedback'
+
+const url={
+ "getNonConformingFeedback": baseurl+"/getNonConformingFeedback",//鑾峰彇涓嶅悎鏍煎搧鍙嶉
+}
+export default{
+ url
+}
\ No newline at end of file
diff --git a/src/api/util/requestUtil.js b/src/api/util/requestUtil.js
new file mode 100644
index 0000000..263da29
--- /dev/null
+++ b/src/api/util/requestUtil.js
@@ -0,0 +1,18 @@
+ import request from '@/utils/request'
+
+export function get(path, params) {
+ return request({
+ url: path,
+ method: 'get',
+ params
+ })
+}
+
+export function post(path, data) {
+ return request({
+ url: path,
+ method: 'post',
+ data
+ })
+}
+
diff --git a/src/views/CNAS/satisfactionSurveys/index.vue b/src/views/CNAS/satisfactionSurveys/index.vue
index 0888772..571dd96 100644
--- a/src/views/CNAS/satisfactionSurveys/index.vue
+++ b/src/views/CNAS/satisfactionSurveys/index.vue
@@ -1,5 +1,191 @@
<template>
- <div>
- 婊℃剰搴﹁皟鏌�
+ <div class="content-main survey">
+ <div class="top-bar">
+ <el-form ref="form" style="width: 1000px;" :inline="true">
+ <!-- <el-input v-model="input" class="input-form" placeholder="璇风洿鎺ヨ緭鍏ユ牱寮忕紪鍙�/鏍峰搧鍚嶇О/鍨嬪彿瑙勬牸/杩涜鎼滅储鎴栦笅鎷夐�夋嫨杩涜缁勫悎鏌ヨ"
+ @keyup.enter.native="getData" /> -->
+ <el-form-item style="width: 800px;">
+ <el-col style="display: flex; justify-content: space-around;" :span="8">
+ <el-row>璋冩煡鏃ユ湡:</el-row>
+ <el-row><el-input type="date" style="width: 130px;" v-model="materialCode" placeholder="璇烽�夋嫨璋冩煡鏃ユ湡"></el-input></el-row>
+ </el-col>
+ <el-col style="display: flex; justify-content: space-around;" :span="8">
+ <el-row>褰曞叆鏃ユ湡:</el-row>
+ <el-row><el-input style="width: 130px;" v-model="materialName" placeholder="璇烽�夋嫨褰曞叆鏃ユ湡"></el-input></el-row>
+ </el-col>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" size="small" @click="getData()">鏌ヨ</el-button>
+ <el-button type="primary" size="small" plain @click="resetData()">娓呯┖</el-button>
+ </el-form-item>
+ </el-form>
+ <el-form>
+ <el-button size="40" icon="el-icon-document-add" type="primary">鏂板璁板綍</el-button>
+ </el-form>
+ </div>
+ <div class="library-table">
+ <div class="table-box">
+ <el-table ref="tableData" :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="tableData" style="width: 100%">
+ <el-table-column type="selection" label="" min-width="5%" />
+ <el-table-column label="鏍峰搧缂栧彿" min-width="10%">
+ <template slot-scope="scope">
+ <a style="color: #3894d1;">{{ scope.row.materialCode }}</a>
+ </template>
+ </el-table-column>
+ <el-table-column prop="materialName" label="鏍峰搧鍚嶇О" min-width="10%" />
+ <el-table-column label="鐢宠鍗曞彿" min-width="10%" >
+ <template slot-scope="scope">
+ <a style="color: #3894d1;">{{ scope.row.inspectionCode }}</a>
+ </template>
+ </el-table-column>
+ <el-table-column prop="createTime" label="鐧昏鏃ユ湡" min-width="10%" />
+ <el-table-column prop="testManager" label="妫�楠岃礋璐d汉" min-width="10%" />
+ <el-table-column prop="specifications" label="瑙勬牸鍨嬪彿" min-width="10%" />
+ <el-table-column prop="inspectionStatus" label="缁撹" min-width="10%">
+ <template slot-scope="scope">
+ <el-tag type="danger">涓嶅悎鏍�</el-tag>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" min-width="8%">
+ <template slot-scope="scope">
+ <el-button type="text" size="small">鎿嶄綔</el-button>
+ <el-button type="text" size="small">浣滃簾</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <!-- 鍒嗛〉鍣� -->
+ <div>
+ <el-pagination :current-page="page" :page-sizes="[10, 20, 30, 40]" :page-size="pageSize"
+ layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handleSizeChange"
+ @current-change="handleCurrentChange" />
+ </div>
+ </div>
+ </div>
</div>
-</template>
+ </template>
+
+ <script>
+ import { get, post } from '@/api/util/requestUtil';
+ import urlInfo from '../../../api/urlEnum/nonConformanceReview.js'
+ export default {
+ data() {
+ return {
+ input: '',
+ tableData: [],
+ page: 1,
+ total: 0,
+ pageSize: 10,
+ materialCode: null,
+ materialName: null,
+ inspectionCode: null
+ }
+ },
+ created() {
+
+ },
+ mounted() {
+ this.getData()
+ },
+ methods: {
+ handleCurrentChange() {
+ this.getData();
+ },
+ handleSizeChange() {
+
+ },
+ exportData() {
+
+ },
+ // 閲嶇疆鎸夐挳
+ resetData() {
+ this.page = 1
+ this.pageSize = 10
+ this.materialCode=null
+ this.materialName=null
+ this.inspectionCode=null
+ this.getData()
+ },
+ async getData() {
+ let param = {
+ "currentPage": this.page,
+ 'pageNum': this.pageSize,
+ "inspectionCode": this.inspectionCode,
+ "materialCode": this.materialCode,
+ "materialName": this.materialName
+ }
+ let res = await get(urlInfo.url.getNonConformanceReview, param)
+ this.tableData = res.data.nonConformanceReviewList
+ this.total = res.data.total
+ }
+ }
+ }
+ </script>
+
+ <style lang="scss" scoped>
+ .top-bar {
+ margin: -25px -15px;
+ background: #fff;
+ display: flex;
+ justify-content: space-between;
+ padding: 5px 24px 0px 24px;
+
+ .input-form {
+ width: 800px;
+ }
+
+ .el-dropdown-link {
+ cursor: pointer;
+ color: #409EFF !important;
+ }
+
+ .el-icon-arrow-down {
+ font-size: 12px !important;
+ }
+
+
+ }
+
+ .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: 20px;
+ flex: 1;
+ background: #fff;
+ display: flex;
+ flex-direction: column;
+
+ >div:nth-child(2) {
+ display: flex;
+ justify-content: end;
+ margin: 10px 0;
+ }
+
+ }
+ }
+ </style>
+ <style >
+ .content-main {
+ .el-form .el-form-item .el-form-item__content {
+ width: 100% !important;
+ }
+ }
+ </style>
diff --git a/src/views/experiment/checkTheReport/index.vue b/src/views/experiment/checkTheReport/index.vue
index d08ff60..4a58f59 100644
--- a/src/views/experiment/checkTheReport/index.vue
+++ b/src/views/experiment/checkTheReport/index.vue
@@ -1,13 +1,255 @@
<template>
- <div>妫�娴嬫姤鍛�</div>
+ <div class="content-main">
+ <div class="top-bar">
+ <el-form ref="form" :inline="true">
+ <el-form-item class="sermargin">
+ <el-input
+ v-model="input"
+ class="input-form"
+ placeholder="璇风洿鎺ヨ緭鍏ユ牱寮忕紪鍙�/鎶ュ憡鍗曞彿/鏍峰搧缂栧彿/杩涜鎼滅储鎴栦笅鎷夐�夋嫨杩涜缁勫悎鏌ヨ"
+ @keyup.enter.native="getData"
+ />
+ </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"
+ @click="exportData"
+ >瀵煎嚭鎶ュ憡</el-button
+ >
+ </el-form>
+ </div>
+ <div class="library-table">
+ <div class="table-header">
+ <div class="search-bar">
+ <el-radio-group v-model="checkStatus" @change="handleRadioChange">
+ <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-group>
+
+ <el-checkbox v-model="checked" style="margin-left: 20px"
+ >浠呯湅鎴戠殑</el-checkbox
+ >
+ </div>
+ </div>
+ <div class="table-box">
+ <el-table
+ ref="reportTable"
+ :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="reportTable"
+ style="width: 100%"
+ >
+ <el-table-column type="selection" label="" min-width="5%" />
+
+ <el-table-column
+ prop="materialCode"
+ label="鏍峰搧缂栧彿"
+ sortable
+ min-width="10%"
+ />
+ <el-table-column
+ prop="reportCode"
+ label="鎶ュ憡鍗曞彿"
+ sortable
+ min-width="10%"
+ />
+ <el-table-column
+ prop="inspectionCode"
+ label="鐢宠鍗曞彿"
+ sortable
+ min-width="10%"
+ />
+ <el-table-column prop="approver" label="瀹℃壒浜�" min-width="8%">
+ <template slot-scope="scope">
+ <span>
+ <el-tag type="info" icon="el-icon-user">
+ <i class="el-icon-user">{{ scope.row.approver }}</i>
+ </el-tag>
+ </span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="status" label="瀹℃壒鐘舵��" min-width="8%">
+ <template slot-scope="scope">
+ <span>
+ <el-tag type="info">{{
+ scope.row.status == 0
+ ? "寰呮彁浜�"
+ : scope.row.status == 1
+ ? "寰呭鏍�"
+ : scope.row.status == 2
+ ? "浠g瀛�"
+ : "宸插畬鎴�"
+ }}</el-tag>
+ </span>
+ </template></el-table-column
+ >
+ <el-table-column prop="conclusion" label="妫�楠岀粨璁�" min-width="8%" />
+ <el-table-column prop="name" label="缂栧埗浜�" min-width="8%">
+ <template slot-scope="scope">
+ <span>
+ <el-tag type="info" icon="el-icon-user">
+ <i class="el-icon-user">{{ scope.row.name }}</i>
+ </el-tag>
+ </span>
+ </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
+ >
+ <el-button type="text" size="small">鎵撳嵃</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <!-- 鍒嗛〉鍣� -->
+ <div>
+ <el-pagination
+ :current-page="page"
+ :page-sizes="[10, 20, 30, 40]"
+ :page-size="pageSize"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="total"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ </div>
+ </div>
+ </div>
</template>
<script>
+import { selectAllReport } from "@/api/experiment/checkTheReport";
export default {
-
-}
+ data() {
+ return {
+ input: "",
+ checkStatus: undefined,
+ reportTable: [],
+ page: 1,
+ total: 0,
+ pageSize: 10,
+ checked: true,
+ };
+ },
+ created() {
+ this.getData();
+ },
+ methods: {
+ // 鐘舵�佹寜閽�
+ handleRadioChange() {
+ this.getData();
+ },
+ // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
+ handleSizeChange(val) {
+ console.log(`姣忛〉 ${val} 鏉);
+ this.pageSize = val;
+ this.getData();
+ },
+ // 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
+ handleCurrentChange(val) {
+ console.log(`褰撳墠椤�: ${val}`);
+ this.page = val;
+ this.getData();
+ },
+ // 閲嶇疆鎸夐挳
+ resetData() {
+ this.input = undefined;
+ this.page = 1;
+ this.pageSize = 10;
+ this.checkStatus = undefined;
+ this.getData();
+ },
+ // 鏌ヨ鍒楄〃
+ async getData() {
+ const params = {
+ page: this.page,
+ pageSize: this.pageSize,
+ name: this.input ? this.input : undefined,
+ status: this.checkStatus ? this.checkStatus : undefined,
+ };
+ const { data } = await selectAllReport(params);
+ this.reportTable = data.row;
+ this.total = data.total;
+ },
+ },
+};
</script>
<style lang="scss" scoped>
-
+.top-bar {
+ margin: -25px -15px;
+ background: #fff;
+ display: flex;
+ justify-content: space-between;
+ padding: 5px 24px 0px 24px;
+ .input-form {
+ width: 700px;
+ }
+ .el-dropdown-link {
+ cursor: pointer;
+ color: #409EFF;
+ }
+ .el-icon-arrow-down {
+ font-size: 12px;
+ }
+}
+.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;
+ display: flex;
+ flex-direction: column;
+ > div:nth-child(2) {
+ display: flex;
+ justify-content: end;
+ margin: 10px 0;
+ }
+ }
+
+}
</style>
diff --git a/src/views/experiment/nonConformanceReview/index.vue b/src/views/experiment/nonConformanceReview/index.vue
index 23f8a41..5eab166 100644
--- a/src/views/experiment/nonConformanceReview/index.vue
+++ b/src/views/experiment/nonConformanceReview/index.vue
@@ -1,13 +1,207 @@
<template>
- <div>涓嶅悎鏍艰瘎瀹�</div>
+ <div class="content-main">
+ <div class="top-bar">
+ <el-form ref="form" style="width: 1000px;" :inline="true">
+ <!-- <el-input v-model="input" class="input-form" placeholder="璇风洿鎺ヨ緭鍏ユ牱寮忕紪鍙�/鏍峰搧鍚嶇О/鍨嬪彿瑙勬牸/杩涜鎼滅储鎴栦笅鎷夐�夋嫨杩涜缁勫悎鏌ヨ"
+ @keyup.enter.native="getData" /> -->
+ <el-form-item style="width: 800px;">
+ <el-col style="display: flex; justify-content: space-around;" :span="8">
+ <el-row>鏍峰紡缂栧彿:</el-row>
+ <el-row><el-input size="small" v-model="materialCode" placeholder="璇疯緭鍏ユ牱寮忕紪鍙�"></el-input></el-row>
+ </el-col>
+ <el-col style="display: flex; justify-content: space-around;" :span="8">
+ <el-row>鏍峰紡鍚嶇О:</el-row>
+ <el-row><el-input size="small" v-model="materialName" placeholder="璇疯緭鍏ユ牱寮忓悕绉�"></el-input></el-row>
+ </el-col>
+ <el-col style="display: flex; justify-content: space-around;" :span="8">
+ <el-row>鐢宠鍗曞彿:</el-row>
+ <el-row><el-input size="small" v-model="inspectionCode" placeholder="璇疯緭鍏ョ敵璇峰崟鍙�"></el-input></el-row>
+ </el-col>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" size="small" @click="getData()">鏌ヨ</el-button>
+ <el-button type="primary" size="small" plain @click="resetData()">閲嶇疆</el-button>
+ <el-dropdown style="margin-left: 7px;">
+ <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-item>鐙瓙澶�</el-dropdown-item>
+ <el-dropdown-item>铻鸿洺绮�</el-dropdown-item>
+ <el-dropdown-item disabled>鍙岀毊濂�</el-dropdown-item>
+ <el-dropdown-item divided>铓典粩鐓�</el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
+ </el-form-item>
+ </el-form>
+ <el-form>
+ <el-button size="40" type="primary">鎵归噺鎻愪氦</el-button>
+ </el-form>
+ </div>
+ <div class="library-table">
+ <div class="table-box">
+ <el-table ref="tableData" :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="tableData" style="width: 100%">
+ <el-table-column type="selection" label="" min-width="5%" />
+ <el-table-column label="鏍峰搧缂栧彿" min-width="10%">
+ <template slot-scope="scope">
+ <a style="color: #3894d1;">{{ scope.row.materialCode }}</a>
+ </template>
+ </el-table-column>
+ <el-table-column prop="materialName" label="鏍峰搧鍚嶇О" min-width="10%" />
+ <el-table-column label="鐢宠鍗曞彿" min-width="10%" >
+ <template slot-scope="scope">
+ <a style="color: #3894d1;">{{ scope.row.inspectionCode }}</a>
+ </template>
+ </el-table-column>
+ <el-table-column prop="createTime" label="鐧昏鏃ユ湡" min-width="10%" />
+ <el-table-column prop="testManager" label="妫�楠岃礋璐d汉" min-width="10%" />
+ <el-table-column prop="specifications" label="瑙勬牸鍨嬪彿" min-width="10%" />
+ <el-table-column prop="inspectionStatus" label="缁撹" min-width="10%">
+ <template slot-scope="scope">
+ <el-tag type="danger">涓嶅悎鏍�</el-tag>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" min-width="8%">
+ <template slot-scope="scope">
+ <el-button type="text" size="small">鎻愪氦</el-button>
+ <el-button type="text" size="small">浣滃簾</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <!-- 鍒嗛〉鍣� -->
+ <div>
+ <el-pagination :current-page="page" :page-sizes="[10, 20, 30, 40]" :page-size="pageSize"
+ layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handleSizeChange"
+ @current-change="handleCurrentChange" />
+ </div>
+ </div>
+ </div>
+ </div>
</template>
<script>
+import { get, post } from '@/api/util/requestUtil';
+import urlInfo from '../../../api/urlEnum/nonConformingFeedback.js'
export default {
+ data() {
+ return {
+ input: '',
+ tableData: [],
+ page: 1,
+ total: 0,
+ pageSize: 10,
+ materialCode: null,
+ materialName: null,
+ inspectionCode: null
+ }
+ },
+ created() {
+ },
+ mounted() {
+ this.getData()
+ },
+ methods: {
+ handleCurrentChange() {
+ this.getData();
+ },
+ handleSizeChange() {
+
+ },
+ exportData() {
+
+ },
+ // 閲嶇疆鎸夐挳
+ resetData() {
+ this.page = 1
+ this.pageSize = 10
+ this.materialCode=null
+ this.materialName=null
+ this.inspectionCode=null
+ this.getData()
+ },
+ async getData() {
+ let param = {
+ "currentPage": this.page,
+ 'pageNum': this.pageSize,
+ "inspectionCode": this.inspectionCode,
+ "materialCode": this.materialCode,
+ "materialName": this.materialName
+ }
+ let res = await get(urlInfo.url.getNonConformingFeedback, param)
+ this.tableData = res.data.nonConformingFeedbackList
+ this.total = res.data.total
+ }
+ }
}
</script>
<style lang="scss" scoped>
+.top-bar {
+ margin: -25px -15px;
+ background: #fff;
+ display: flex;
+ justify-content: space-between;
+ padding: 5px 24px 0px 24px;
+ .input-form {
+ width: 800px;
+ }
+
+ .el-dropdown-link {
+ cursor: pointer;
+ color: #409EFF !important;
+ }
+
+ .el-icon-arrow-down {
+ font-size: 12px !important;
+ }
+
+
+}
+
+.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: 20px;
+ flex: 1;
+ background: #fff;
+ display: flex;
+ flex-direction: column;
+
+ >div:nth-child(2) {
+ display: flex;
+ justify-content: end;
+ margin: 10px 0;
+ }
+
+ }
+}
+</style>
+<style >
+.content-main {
+ .el-form .el-form-item .el-form-item__content {
+ width: 100% !important;
+ }
+}
</style>
diff --git a/src/views/experiment/nonConformingFeedback/index.vue b/src/views/experiment/nonConformingFeedback/index.vue
index 6733e19..2c58565 100644
--- a/src/views/experiment/nonConformingFeedback/index.vue
+++ b/src/views/experiment/nonConformingFeedback/index.vue
@@ -1,13 +1,207 @@
<template>
- <div>涓嶅悎鏍煎弽棣�</div>
+ <div class="content-main">
+ <div class="top-bar">
+ <el-form ref="form" style="width: 1000px;" :inline="true">
+ <!-- <el-input v-model="input" class="input-form" placeholder="璇风洿鎺ヨ緭鍏ユ牱寮忕紪鍙�/鏍峰搧鍚嶇О/鍨嬪彿瑙勬牸/杩涜鎼滅储鎴栦笅鎷夐�夋嫨杩涜缁勫悎鏌ヨ"
+ @keyup.enter.native="getData" /> -->
+ <el-form-item style="width: 800px;">
+ <el-col style="display: flex; justify-content: space-around;" :span="8">
+ <el-row>鏍峰紡缂栧彿:</el-row>
+ <el-row><el-input size="small" v-model="materialCode" placeholder="璇疯緭鍏ユ牱寮忕紪鍙�"></el-input></el-row>
+ </el-col>
+ <el-col style="display: flex; justify-content: space-around;" :span="8">
+ <el-row>鏍峰紡鍚嶇О:</el-row>
+ <el-row><el-input size="small" v-model="materialName" placeholder="璇疯緭鍏ユ牱寮忓悕绉�"></el-input></el-row>
+ </el-col>
+ <el-col style="display: flex; justify-content: space-around;" :span="8">
+ <el-row>鐢宠鍗曞彿:</el-row>
+ <el-row><el-input size="small" v-model="inspectionCode" placeholder="璇疯緭鍏ョ敵璇峰崟鍙�"></el-input></el-row>
+ </el-col>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" size="small" @click="getData()">鏌ヨ</el-button>
+ <el-button type="primary" size="small" plain @click="resetData()">閲嶇疆</el-button>
+ <el-dropdown style="margin-left: 7px;">
+ <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-item>鐙瓙澶�</el-dropdown-item>
+ <el-dropdown-item>铻鸿洺绮�</el-dropdown-item>
+ <el-dropdown-item disabled>鍙岀毊濂�</el-dropdown-item>
+ <el-dropdown-item divided>铓典粩鐓�</el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
+ </el-form-item>
+ </el-form>
+ <el-form>
+ <el-button size="40" type="primary">鎵归噺鎻愪氦</el-button>
+ </el-form>
+ </div>
+ <div class="library-table">
+ <div class="table-box">
+ <el-table ref="tableData" :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="tableData" style="width: 100%">
+ <el-table-column type="selection" label="" min-width="5%" />
+ <el-table-column label="鏍峰搧缂栧彿" min-width="10%">
+ <template slot-scope="scope">
+ <a style="color: #3894d1;">{{ scope.row.materialCode }}</a>
+ </template>
+ </el-table-column>
+ <el-table-column prop="materialName" label="鏍峰搧鍚嶇О" min-width="10%" />
+ <el-table-column label="鐢宠鍗曞彿" min-width="10%" >
+ <template slot-scope="scope">
+ <a style="color: #3894d1;">{{ scope.row.inspectionCode }}</a>
+ </template>
+ </el-table-column>
+ <el-table-column prop="createTime" label="鐧昏鏃ユ湡" min-width="10%" />
+ <el-table-column prop="testManager" label="妫�楠岃礋璐d汉" min-width="10%" />
+ <el-table-column prop="specifications" label="瑙勬牸鍨嬪彿" min-width="10%" />
+ <el-table-column prop="inspectionStatus" label="缁撹" min-width="10%">
+ <template slot-scope="scope">
+ <el-tag type="danger">涓嶅悎鏍�</el-tag>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" min-width="8%">
+ <template slot-scope="scope">
+ <el-button type="text" size="small">鎿嶄綔</el-button>
+ <el-button type="text" size="small">浣滃簾</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <!-- 鍒嗛〉鍣� -->
+ <div>
+ <el-pagination :current-page="page" :page-sizes="[10, 20, 30, 40]" :page-size="pageSize"
+ layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handleSizeChange"
+ @current-change="handleCurrentChange" />
+ </div>
+ </div>
+ </div>
+ </div>
</template>
<script>
+import { get, post } from '@/api/util/requestUtil';
+import urlInfo from '../../../api/urlEnum/nonConformanceReview.js'
export default {
+ data() {
+ return {
+ input: '',
+ tableData: [],
+ page: 1,
+ total: 0,
+ pageSize: 10,
+ materialCode: null,
+ materialName: null,
+ inspectionCode: null
+ }
+ },
+ created() {
+ },
+ mounted() {
+ this.getData()
+ },
+ methods: {
+ handleCurrentChange() {
+ this.getData();
+ },
+ handleSizeChange() {
+
+ },
+ exportData() {
+
+ },
+ // 閲嶇疆鎸夐挳
+ resetData() {
+ this.page = 1
+ this.pageSize = 10
+ this.materialCode=null
+ this.materialName=null
+ this.inspectionCode=null
+ this.getData()
+ },
+ async getData() {
+ let param = {
+ "currentPage": this.page,
+ 'pageNum': this.pageSize,
+ "inspectionCode": this.inspectionCode,
+ "materialCode": this.materialCode,
+ "materialName": this.materialName
+ }
+ let res = await get(urlInfo.url.getNonConformanceReview, param)
+ this.tableData = res.data.nonConformanceReviewList
+ this.total = res.data.total
+ }
+ }
}
</script>
<style lang="scss" scoped>
+.top-bar {
+ margin: -25px -15px;
+ background: #fff;
+ display: flex;
+ justify-content: space-between;
+ padding: 5px 24px 0px 24px;
+ .input-form {
+ width: 800px;
+ }
+
+ .el-dropdown-link {
+ cursor: pointer;
+ color: #409EFF !important;
+ }
+
+ .el-icon-arrow-down {
+ font-size: 12px !important;
+ }
+
+
+}
+
+.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: 20px;
+ flex: 1;
+ background: #fff;
+ display: flex;
+ flex-direction: column;
+
+ >div:nth-child(2) {
+ display: flex;
+ justify-content: end;
+ margin: 10px 0;
+ }
+
+ }
+}
+</style>
+<style >
+.content-main {
+ .el-form .el-form-item .el-form-item__content {
+ width: 100% !important;
+ }
+}
</style>
diff --git a/src/views/experiment/planAssignments/index.vue b/src/views/experiment/planAssignments/index.vue
index cffcc61..f5bdf13 100644
--- a/src/views/experiment/planAssignments/index.vue
+++ b/src/views/experiment/planAssignments/index.vue
@@ -3,12 +3,17 @@
<div class="top-bar">
<el-form ref="form" :inline="true" :model="searchData">
<el-form-item label="璁惧鍚嶇О:" class="sermargin">
- <el-select v-model="searchData.devicename" placeholder="鍏ㄩ儴" style="width: 100px;">
+ <el-select
+ v-model="searchData.devicename"
+ placeholder="鍏ㄩ儴"
+ style="width: 100px"
+ >
<el-option
- v-for="item in options"
+ v-for="item in options1"
:key="item.value"
:label="item.label"
- :value="item.value">
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
@@ -18,131 +23,132 @@
type="daterange"
range-separator="~"
start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡">
+ end-placeholder="缁撴潫鏃ユ湡"
+ >
</el-date-picker>
</el-form-item>
- <el-form-item label="妫�楠屼汉:" style="margin-right: 20px;">
- <el-select v-model="searchData.person" placeholder="鍏ㄩ儴" style="width: 80px;margin-right: 100px;">
+ <el-form-item label="妫�楠屼汉:" style="margin-right: 20px">
+ <el-select
+ v-model="searchData.person"
+ placeholder="鍏ㄩ儴"
+ style="width: 80px; margin-right: 100px"
+ >
<el-option
- v-for="item in options"
+ v-for="item in options2"
:key="item.value"
:label="item.label"
- :value="item.value">
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item>
- <el-button type="primary" plain style="margin-right: 10px;">閲嶇疆</el-button>
+ <el-button type="primary" plain style="margin-right: 10px"
+ >閲嶇疆</el-button
+ >
<el-button type="primary">鏌ヨ</el-button>
</el-form-item>
- </el-form>
+ </el-form>
</div>
<div class="table-box">
<div class="formwrapper">
<el-table
ref="planTable"
:max-height="800"
- :cell-style="{textAlign: 'center'}"
- :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
+ :cell-style="{ textAlign: 'center' }"
+ :header-cell-style="{
+ border: '0px',
+ background: '#f5f7fa',
+ color: '#606266',
+ boxShadow: 'inset 0 1px 0 #ebeef5',
+ textAlign: 'center',
+ }"
:data="planTable"
style="width: 100%"
>
- <el-table-column
- type="index"
- label="搴忓彿"
- min-width="10%"
- />
- <el-table-column
- prop="device"
- label="妫�楠岃澶�"
- min-width="8%"
- />
- <el-table-column
- prop="samplename"
- label="鏍峰搧鍚嶇О"
- min-width="8%"
- />
- <el-table-column
- prop="sampleid"
- label="鏍峰搧缂栧彿"
- min-width="10%"
- />
- <el-table-column
- prop="modelandspecification"
- label="瑙勬牸鍨嬪彿"
- min-width="12%"
- />
- <el-table-column
- prop="unit"
- label="鍗曚綅"
- min-width="5%"
- />
- <el-table-column
- prop="amount"
- label="鏁伴噺"
- min-width="5%"
- />
- <el-table-column
- prop="checkproject"
- label="妫�楠岄」鐩�"
- min-width="12%"
- />
- <el-table-column
- prop="checker"
- label="妫�楠屼汉"
- min-width="6%"
- />
- <el-table-column
- prop="duration"
- label="璁″垝宸ユ湡/h"
- min-width="8%"
- />
- <el-table-column
- prop="progress"
- label="妫�楠岃繘搴�"
- min-width="12%">
- <template slot-scope="scope">
- <div v-if="scope.row.progress === 100" style="display: flex;">
- <el-progress :text-inside="true" :stroke-width="15" :percentage="scope.row.progress" status="success" style="width: 70%;"></el-progress>
- <span style="color: rgb(103, 194, 58);">宸插畬鎴�</span>
- </div>
- <div v-if="scope.row.progress <100 && scope.row.progress >0" style="display: flex;">
- <el-progress :text-inside="true" :stroke-width="15" :percentage="scope.row.progress" status="warning" style="width: 70%;"></el-progress>
- <span style="color: rgb(230, 162, 60);">妫�楠屼腑</span>
- </div>
- <div v-if="scope.row.progress === 0" style="display: flex;">
- <el-progress :text-inside="true" :stroke-width="15" :percentage="scope.row.progress" style="width: 70%;"></el-progress>
- <span style="color: gray">鏈垎閰�</span>
- </div>
- <div v-else>
- </div>
- </template>
- </el-table-column>
- <el-table-column
- prop="starttime"
- label="璁″垝寮�濮嬫椂闂�"
- min-width="10%"
- />
- <el-table-column
- prop="finishtime"
- label="璁″垝缁撴潫鏃堕棿"
- min-width="10%"
- />
- <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-column type="index" label="搴忓彿" min-width="10%" />
+ <el-table-column prop="device" label="妫�楠岃澶�" min-width="8%" />
+ <el-table-column prop="samplename" label="鏍峰搧鍚嶇О" min-width="8%" />
+ <el-table-column prop="sampleid" label="鏍峰搧缂栧彿" min-width="10%" />
+ <el-table-column
+ prop="modelandspecification"
+ label="瑙勬牸鍨嬪彿"
+ min-width="12%"
+ />
+ <el-table-column prop="unit" label="鍗曚綅" min-width="5%" />
+ <el-table-column prop="amount" label="鏁伴噺" min-width="5%" />
+ <el-table-column
+ prop="checkproject"
+ label="妫�楠岄」鐩�"
+ min-width="12%"
+ />
+ <el-table-column prop="checker" label="妫�楠屼汉" min-width="6%" />
+ <el-table-column prop="duration" label="璁″垝宸ユ湡/h" min-width="8%" />
+ <el-table-column prop="progress" label="妫�楠岃繘搴�" min-width="12%">
+ <template slot-scope="scope">
+ <div v-if="scope.row.progress === 100" style="display: flex">
+ <el-progress
+ :text-inside="true"
+ :stroke-width="15"
+ :percentage="scope.row.progress"
+ status="success"
+ style="width: 70%"
+ ></el-progress>
+ <span style="color: rgb(103, 194, 58)">宸插畬鎴�</span>
+ </div>
+ <div
+ v-if="scope.row.progress < 100 && scope.row.progress > 0"
+ style="display: flex"
+ >
+ <el-progress
+ :text-inside="true"
+ :stroke-width="15"
+ :percentage="scope.row.progress"
+ status="warning"
+ style="width: 70%"
+ ></el-progress>
+ <span style="color: rgb(230, 162, 60)">妫�楠屼腑</span>
+ </div>
+ <div v-if="scope.row.progress === 0" style="display: flex">
+ <el-progress
+ :text-inside="true"
+ :stroke-width="15"
+ :percentage="scope.row.progress"
+ style="width: 70%"
+ ></el-progress>
+ <span style="color: gray">鏈垎閰�</span>
+ </div>
+ <div v-else></div>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="starttime"
+ label="璁″垝寮�濮嬫椂闂�"
+ min-width="10%"
+ />
+ <el-table-column
+ prop="finishtime"
+ label="璁″垝缁撴潫鏃堕棿"
+ min-width="10%"
+ />
+ <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>
- </div>
+ </div>
</div>
</template>
<script>
+import { selectAllPlan } from "@/api/experiment/planAssignments";
export default {
data() {
return {
@@ -151,71 +157,36 @@
time: "",
person: "",
},
- options: [
- {
- value: "閫夐」1",
- label: "閫夐」1",
- },
- {
- value: "閫夐」2",
- label: "閫夐」2",
- disabled: true,
- },
- ],
- planTable: [{
- device: '鎷夊姏鏈�',
- samplename: '闀�閿岄挗缁炵嚎',
- sampleid: 'SN1027401-12937',
- modelandspecification: 'JLHA/G1A-185/30-14/7',
- unit: 'm',
- amount: '200',
- checkproject: '鎶楀帇寮哄害锛堢粸鍓嶏級',
- checker: '榛勫皬鏄�',
- duration: '2',
- progress: 100,
- starttime: '2023-08-04 8:00',
- finishtime: '2023-08-04 10:00',
- },{
- device: '鎷夊姏鏈�',
- samplename: '闀�閿岄挗缁炵嚎',
- sampleid: 'SN1027401-12937',
- modelandspecification: 'JLHA/G1A-185/30-14/7',
- unit: 'm',
- amount: '200',
- checkproject: '鎶楀帇寮哄害锛堢粸鍓嶏級',
- checker: '榛勫皬鏄�',
- duration: '2',
- progress: 60,
- starttime: '2023-08-04 8:00',
- finishtime: '2023-08-04 10:00',
- },{
- device: '鎷夊姏鏈�',
- samplename: '闀�閿岄挗缁炵嚎',
- sampleid: 'SN1027401-12937',
- modelandspecification: 'JLHA/G1A-185/30-14/7',
- unit: 'm',
- amount: '200',
- checkproject: '鎶楀帇寮哄害锛堢粸鍓嶏級',
- checker: '榛勫皬鏄�',
- duration: '2',
- progress: 30,
- starttime: '2023-08-04 8:00',
- finishtime: '2023-08-04 10:00',
- },{
- device: '鎷夊姏鏈�',
- samplename: '闀�閿岄挗缁炵嚎',
- sampleid: 'SN1027401-12937',
- modelandspecification: 'JLHA/G1A-185/30-14/7',
- unit: 'm',
- amount: '200',
- checkproject: '鎶楀帇寮哄害锛堢粸鍓嶏級',
- checker: '榛勫皬鏄�',
- duration: '2',
- progress: 0,
- starttime: '2023-08-04 8:00',
- finishtime: '2023-08-04 10:00',
- }]
+ options1: [],
+ options2: [],
+ planTable: [],
};
+ },
+ created() {
+ this.getData();
+ },
+ methods: {
+ // 鏌ヨ鍒楄〃
+ async getData() {
+ const params = {};
+ const { data } = await selectAllPlan(params);
+ this.planTable = data;
+ this.planTable.forEach((res) => {
+ let o1 = {
+ value: res.device,
+ label: res.device,
+ };
+ this.options1.push(o1);
+
+ if(res.userId == undefined) {
+
+ }
+ });
+ let d=this.options1.filter((val,index,self)=>{
+ return self.indexOf(val)==index;
+ })
+ console.log(d);
+ },
},
};
</script>
@@ -236,14 +207,14 @@
margin-right: 60px;
}
}
-.table-box{
+.table-box {
background-color: #fff;
margin: 0px -15px;
margin-top: 35px;
display: flex;
flex-direction: column;
height: 78vh;
- .formwrapper{
+ .formwrapper {
padding: 0px 20px;
margin-top: 0px;
flex: 1;
diff --git a/src/views/experiment/reportAuditing/index.vue b/src/views/experiment/reportAuditing/index.vue
index f409c24..0e8bf65 100644
--- a/src/views/experiment/reportAuditing/index.vue
+++ b/src/views/experiment/reportAuditing/index.vue
@@ -1,13 +1,217 @@
<template>
- <div>鎶ュ憡瀹℃牳</div>
+ <div class="content-main">
+ <div class="top-bar">
+ <el-form ref="form" :inline="true">
+ <el-form-item class="sermargin">
+ <el-input
+ v-model="input"
+ class="input-form"
+ placeholder="璇风洿鎺ヨ緭鍏ユ牱寮忕紪鍙�/鎶ュ憡缂栧彿/鏍峰搧鍚嶇О/杩涜鎼滅储鎴栦笅鎷夐�夋嫨杩涜缁勫悎鏌ヨ"
+ @keyup.enter.native="getData"
+ />
+ </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" @click="exportData"
+ >瀹℃牳</el-button
+ >
+ </el-form>
+ </div>
+ <div class="library-table">
+ <div class="table-header">
+ <div class="search-bar">
+ <el-radio-group v-model="checkStatus" @change="handleRadioChange">
+ <el-radio-button>鍏ㄩ儴</el-radio-button>
+ <el-radio-button label="0">寰呮彁浜�</el-radio-button>
+ <el-radio-button label="2">寰呴�氳繃</el-radio-button>
+ </el-radio-group>
+ <el-checkbox v-model="checked" style="margin-left: 20px"
+ >浠呯湅鎴戠殑</el-checkbox
+ >
+ </div>
+ </div>
+ <div class="table-box">
+ <el-table
+ ref="reportTable"
+ :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="reportTable"
+ style="width: 100%"
+ >
+ <el-table-column type="selection" label="" min-width="5%" />
+ <el-table-column
+ prop="materialCode"
+ label="鏍峰搧缂栧彿"
+ min-width="10%"
+ />
+ <el-table-column prop="reportCode" label="鎶ュ憡鍗曞彿" min-width="10%" />
+ <el-table-column
+ prop="materialName"
+ label="鏍峰搧鍚嶇О"
+ min-width="10%"
+ />
+ <el-table-column prop="status" label="瀹℃壒鐘舵��" min-width="8%">
+ <template slot-scope="scope">
+ <span>
+ <el-tag type="warning">{{
+ scope.row.status == 0 ? "寰呮彁浜�" : "寰呴�氳繃"
+ }}</el-tag>
+ </span>
+ </template></el-table-column
+ >
+ <el-table-column prop="approver" label="瀹℃壒浜�" min-width="8%" />
+ <el-table-column prop="submitTime" label="鎻愪氦鏃ユ湡" min-width="8%" />
+ <el-table-column prop="checkTime" label="瀹℃牳鏃ユ湡" min-width="8%" />
+ <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
+ :current-page="page"
+ :page-sizes="[10, 20, 30, 40]"
+ :page-size="pageSize"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="total"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ </div>
+ </div>
+ </div>
</template>
<script>
+import { selectAllReportCheck } from "@/api/experiment/reportAuditing";
export default {
-
-}
+ data() {
+ return {
+ input: "",
+ checkStatus: undefined,
+ reportTable: [],
+ page: 1,
+ total: 0,
+ pageSize: 10,
+ checked: true,
+ };
+ },
+ created() {
+ this.getData();
+ },
+ methods: {
+ // 鐘舵�佹寜閽�
+ handleRadioChange() {
+ this.getData();
+ },
+ // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
+ handleSizeChange(val) {
+ console.log(`姣忛〉 ${val} 鏉);
+ this.pageSize = val;
+ this.getData();
+ },
+ // 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
+ handleCurrentChange(val) {
+ console.log(`褰撳墠椤�: ${val}`);
+ this.page = val;
+ this.getData();
+ },
+ // 閲嶇疆鎸夐挳
+ resetData() {
+ this.input = undefined;
+ this.page = 1;
+ this.pageSize = 10;
+ this.checkStatus = undefined;
+ this.getData();
+ },
+ // 鏌ヨ鍒楄〃
+ async getData() {
+ const params = {
+ page: this.page,
+ pageSize: this.pageSize,
+ name: this.input ? this.input : undefined,
+ status: this.checkStatus ? this.checkStatus : undefined,
+ };
+ const { data } = await selectAllReportCheck(params);
+ this.reportTable = data.row;
+ this.total = data.total;
+ },
+ },
+};
</script>
<style lang="scss" scoped>
-
+.top-bar {
+ margin: -25px -15px;
+ background: #fff;
+ display: flex;
+ justify-content: space-between;
+ padding: 5px 24px 0px 24px;
+ .input-form {
+ width: 700px;
+ }
+ .el-dropdown-link {
+ cursor: pointer;
+ color: #409eff;
+ }
+ .el-icon-arrow-down {
+ font-size: 12px;
+ }
+}
+.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;
+ display: flex;
+ flex-direction: column;
+ > div:nth-child(2) {
+ display: flex;
+ justify-content: end;
+ margin: 10px 0;
+ }
+ }
+}
</style>
--
Gitblit v1.9.3