From e564beb607ed42a01513ff8482cce3b4b04378db Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期四, 07 九月 2023 17:54:38 +0800 Subject: [PATCH] modified: src/views/basicData/index.vue modified: src/views/experiment/reportAuditing/index.vue modified: src/views/laboratory/role/index.vue --- src/views/experiment/reportAuditing/index.vue | 266 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 262 insertions(+), 4 deletions(-) diff --git a/src/views/experiment/reportAuditing/index.vue b/src/views/experiment/reportAuditing/index.vue index f409c24..bfe06e0 100644 --- a/src/views/experiment/reportAuditing/index.vue +++ b/src/views/experiment/reportAuditing/index.vue @@ -1,13 +1,271 @@ <template> - <div>鎶ュ憡瀹℃牳</div> + <div class="content-main"> + <div class="top-bar"> + <el-form ref="form" :inline="true" style="margin-top: 10px;"> + <el-form-item> + <el-input + v-model="input" + class="input-form" + placeholder="璇风洿鎺ヨ緭鍏ユ牱寮忕紪鍙�/鎶ュ憡缂栧彿/鏍峰搧鍚嶇О/杩涜鎼滅储鎴栦笅鎷夐�夋嫨杩涜缁勫悎鏌ヨ" + @keyup.enter.native="getData" + /> + </el-form-item> + <el-form-item> + <el-button size="small" type="primary" @click="getData()">鏌ヨ</el-button> + <el-button size="small" type="primary" plain @click="resetData()">閲嶇疆</el-button> + </el-form-item> + </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: 'left' }" + :header-cell-style="{ + border: '0px', + background: '#f5f7fa', + color: '#606266', + boxShadow: 'inset 0 1px 0 #ebeef5', + textAlign: 'left', + }" + :data="reportTable" + style="width: 100%" + > + <el-table-column + type="index" + width="50"> + </el-table-column> + <!-- <el-table-column label="" min-width="5%" /> --> + <el-table-column prop="materialCode" label="鏍峰搧缂栧彿" min-width="10%"> + <template slot-scope="scope"> + <span style="color: #409eff"> + {{ scope.row.materialCode }} + </span> + </template></el-table-column + > + <el-table-column prop="reportCode" label="鎶ュ憡鍗曞彿" min-width="10%"> + <template slot-scope="scope"> + <span style="color: #409eff"> + {{ scope.row.reportCode }} + </span> + </template></el-table-column + > + <el-table-columne + prop="materialName" + label="鏍峰搧鍚嶇О" + min-width="10%" + /> + <el-table-column prop="status" label="瀹℃壒鐘舵��" min-width="8%" v-model="Auditconclusion"> + <template slot-scope="scope"> + <span> + <el-tag type="warning" v-if="scope.row.status === 0">寰呴�氳繃</el-tag> + <el-tag type="success" v-else-if="scope.row.status === 1">閫氳繃</el-tag> + <el-tag type="danger" v-else>涓嶉�氳繃</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> + <el-button type="text" size="small" v-if="scope.row.status === 0" @click="shenHE(scope)">瀹℃牳</el-button> + <el-dialog + title="鍘熷璁板綍瀹℃牳" + :visible.sync="checkskipvisible" + width="30%" + > + <el-form :model="form"> + <el-form-item label="璇烽�夋嫨瀹℃牳缁撴灉:" :label-width="formLabelWidth"> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button @click="checkskipvisible = false">鍙� 娑�</el-button> + <el-button style="background-color: rgb(206, 211, 216);" @click="nocheckskip(scope.row)" >涓嶉�氳繃</el-button> + <el-button type="primary" @click="checkskip(scope.row)">閫氳繃</el-button> + </div> + </el-dialog> + </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,checkApi } from "@/api/experiment/reportAuditing"; export default { - -} + data() { + return { + input: '', + checkStatus: undefined, + reportTable: [], + page: 1, + total: 0, + pageSize: 8, + checkskipvisible: false, + form:{}, + formLabelWidth: '120px', + checked:{}, + usertt:[], + Auditconclusion:{}, + tableRow: {}, + }; + }, + created() { + this.getData(); + }, + methods: { + shenHE(s){ + this.tableRow=s + this.checkskipvisible=true + }, + // 鐘舵�佹寜閽� + 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(); + }, + //閫氳繃 + checkskip(row) { + console.log(this.tableRow); + this.reportTable[this.tableRow.$index].status=1 + this.transmitData(this.tableRow.row.id,1) + this.checkskipvisible= false + this.$message({ + message: '閫氳繃鎴愬姛', + type: 'success' + }); + this.getData(); + }, + //涓嶉�氳繃 + nocheckskip(row) { + console.log(this.tableRow); + this.reportTable[this.tableRow.$index].status=0 + this.transmitData(this.tableRow.row.id,2) + this.checkskipvisible= false + this.$message({ + message: '寰呴�氳繃', + type: 'warning' + }); + this.getData(); + }, + //瀹℃牳 + async transmitData(id, result) { + let param={"id":id,"result":result} + let data = await checkApi(param) + }, + // 鏌ヨ鍒楄〃 + 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