From 9879e32bcfc01b8bb21daa1927148dc5e2317277 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期三, 09 八月 2023 09:46:04 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.110.209:9001/r/lims-before
---
src/views/experiment/reportAuditing/index.vue | 202 ++++++++++++++++++++++++
src/api/experiment/reportAuditing.js | 9 +
src/api/experiment/checkTheReport.js | 9 +
src/views/experiment/checkTheReport/index.vue | 210 +++++++++++++++++++++++++
4 files changed, 424 insertions(+), 6 deletions(-)
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/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/views/experiment/checkTheReport/index.vue b/src/views/experiment/checkTheReport/index.vue
index d08ff60..e14b79e 100644
--- a/src/views/experiment/checkTheReport/index.vue
+++ b/src/views/experiment/checkTheReport/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-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>
+ </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="5%"
+ />
+ <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="10%"
+ />
+ <el-table-column
+ prop="name"
+ 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>
+ <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
+ }
+ },
+ 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: 800px;
+ }
+}
+.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/reportAuditing/index.vue b/src/views/experiment/reportAuditing/index.vue
index f409c24..f016938 100644
--- a/src/views/experiment/reportAuditing/index.vue
+++ b/src/views/experiment/reportAuditing/index.vue
@@ -1,13 +1,209 @@
<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-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>
+ </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
+ }
+ },
+ 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: 800px;
+ }
+}
+.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