From 80740c17e5c742d8de2d7b2c7493ebc7704ead4e Mon Sep 17 00:00:00 2001
From: yuyu <1981343953@qq.com>
Date: 星期二, 15 八月 2023 17:15:26 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.110.209:9001/r/lims-before
---
src/views/experiment/reportAuditing/index.vue | 26
src/api/CNAS/reviewAnnualPlan.js | 38
src/api/urlEnum/satisfactionSurveys.js | 11
src/views/laboratory/ledger/index.vue | 614 +++++----------
src/views/CNAS/satisfactionSurveys/index.vue | 696 +++++++++++++----
src/views/experiment/checkTheReport/index.vue | 35
src/views/laboratory/personnel/index.vue | 151 +--
src/views/CNAS/reviewAnnualPlan/index.vue | 632 ++++++++++++++++
src/views/experiment/planAssignments/index.vue | 87 +
src/api/urlEnum/personnel.js | 8
10 files changed, 1,596 insertions(+), 702 deletions(-)
diff --git a/src/api/CNAS/reviewAnnualPlan.js b/src/api/CNAS/reviewAnnualPlan.js
new file mode 100644
index 0000000..020809b
--- /dev/null
+++ b/src/api/CNAS/reviewAnnualPlan.js
@@ -0,0 +1,38 @@
+import request from '@/utils/request'
+
+//鏌ヨ瀹℃煡璁″垝
+export function selectAllList(params) {
+ return request({
+ url: '/cnasAnnualPlan/selectAllList',
+ method: 'get',
+ params
+ })
+}
+
+//鏂板瀹℃煡璁″垝
+export function addCnasAnnualPlan(data) {
+ return request({
+ url: '/cnasAnnualPlan/addCnasAnnualPlan',
+ method: 'post',
+ data
+ })
+ }
+
+
+ //涓婁紶闄勪欢
+export function addAccessory(data) {
+ return request({
+ url: '/cnasAnnualPlan/addAccessory',
+ method: 'post',
+ data
+ })
+}
+
+//鍒犻櫎瀹℃牳骞村害璁″垝
+export function deleteCnasAnnualPlan(params) {
+ return request({
+ url: '/cnasAnnualPlan/deleteCnasAnnualPlan',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/urlEnum/personnel.js b/src/api/urlEnum/personnel.js
new file mode 100644
index 0000000..acade93
--- /dev/null
+++ b/src/api/urlEnum/personnel.js
@@ -0,0 +1,8 @@
+const baseurl='/user'
+
+const url={
+ "list_new_personnel": baseurl+"/list_new_personnel",//鑾峰彇浜哄憳淇℃伅
+}
+export default{
+ url
+}
\ No newline at end of file
diff --git a/src/api/urlEnum/satisfactionSurveys.js b/src/api/urlEnum/satisfactionSurveys.js
new file mode 100644
index 0000000..8a4bcba
--- /dev/null
+++ b/src/api/urlEnum/satisfactionSurveys.js
@@ -0,0 +1,11 @@
+const baseurl='/cnasSatisfactionSurvey'
+
+const url={
+ "getCnasSatisfactionSurvey": baseurl+"/getCnasSatisfactionSurvey",//鑾峰彇涓嶅悎鏍煎搧鍙嶉
+ "getFillNameAndId": baseurl+"/getFillNameAndId",//褰撳墠褰曞叆浜�
+ "uploadFile": baseurl+"/uploadFile",//鏂囦欢涓婁紶
+ "addSurvey": baseurl+"/addSurvey",//婊℃剰搴︽柊澧�
+}
+export default{
+ url
+}
\ No newline at end of file
diff --git a/src/views/CNAS/reviewAnnualPlan/index.vue b/src/views/CNAS/reviewAnnualPlan/index.vue
index 183ba06..e99d7f6 100644
--- a/src/views/CNAS/reviewAnnualPlan/index.vue
+++ b/src/views/CNAS/reviewAnnualPlan/index.vue
@@ -1,5 +1,633 @@
<template>
- <div>
- 瀹℃牳骞村害璁″垝
+ <div class="content-main">
+ <div class="top-bar">
+ <el-form ref="form" :inline="true">
+ <el-form-item>
+ <el-date-picker
+ v-model="input"
+ class="input-form"
+ type="month"
+ placeholder="璇烽�夋嫨鏌ヨ鏃ユ湡"
+ >
+ </el-date-picker>
+ </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 class="rightBtn">
+ <!-- 涓婁紶闄勪欢 -->
+ <el-form-item class="createBtn">
+ <el-button
+ type="primary"
+ icon="el-icon-upload2"
+ @click="
+ dialogFormVisible1 = true;
+ uploading = {};
+ resetForm('uploading');
+ "
+ >涓婁紶闄勪欢</el-button
+ >
+ <el-dialog
+ title="涓婁紶闄勪欢"
+ :visible.sync="dialogFormVisible1"
+ width="30%"
+ >
+ <el-form :model="uploading" :rules="rules1" ref="uploading">
+ <el-form-item
+ label="瀹℃牳鏃ユ湡:"
+ :label-width="formLabelWidth1"
+ prop="auditTime"
+ style="margin-bottom: 20px"
+ >
+ <el-date-picker
+ class="uploading-form"
+ v-model="uploading.auditTime"
+ type="date"
+ placeholder="璇烽�夋嫨鏃ユ湡"
+ autocomplete="off"
+ >
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item
+ prop="accessoryFile"
+ label="涓婁紶闄勪欢:"
+ :label-width="formLabelWidth1"
+ >
+ <el-input
+ class="uploading-form"
+ v-model="uploading.accessoryFile"
+ autocomplete="off"
+ placeholder="璇烽�夋嫨鏂囦欢"
+ ></el-input>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="dialogFormVisible1 = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitUp('uploading')"
+ >纭� 瀹�</el-button
+ >
+ </div>
+ </el-dialog>
+ </el-form-item>
+ <!-- 鏂板璁″垝 -->
+ <el-form-item class="createBtn">
+ <el-button
+ type="primary"
+ icon="el-icon-document-add"
+ @click="
+ dialogFormVisible2 = true;
+ newly = {};
+ resetForm('newly');
+ "
+ >鏂板璁″垝</el-button
+ >
+
+ <el-dialog
+ title="鏂板璁″垝"
+ :visible.sync="dialogFormVisible2"
+ width="55%"
+ >
+ <el-form :model="newly" :rules="rules2" ref="newly">
+ <!-- 绗竴琛� -->
+ <el-row class="newly-margin-bottom">
+ <el-col :span="12">
+ <el-form-item
+ label="璁″垝鏃堕棿:"
+ :label-width="formLabelWidth2"
+ prop="planTime"
+ >
+ <el-date-picker
+ class="newly-form"
+ v-model="newly.planTime"
+ type="date"
+ placeholder="璇烽�夋嫨璁″垝鏃ユ湡"
+ autocomplete="off"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ label="閮ㄩ棬:"
+ :label-width="formLabelWidth2"
+ prop="department"
+ >
+ <el-input
+ class="newly-form"
+ v-model="newly.department"
+ placeholder="璇烽�夋嫨閮ㄩ棬"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <!-- 绗簩琛� -->
+ <el-row class="newly-margin-bottom">
+ <el-col :span="12">
+ <el-form-item
+ label="鎬ц川:"
+ :label-width="formLabelWidth2"
+ prop="auditType"
+ >
+ <el-select
+ class="newly-form"
+ v-model="newly.auditType"
+ placeholder="璇烽�夋嫨鎬ц川"
+ autocomplete="off"
+ >
+ <el-option label="鍐呭" value="0"></el-option>
+ <el-option label="绠$悊璇勫" value="1"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ label="瀹℃牳鐩殑:"
+ :label-width="formLabelWidth2"
+ prop="auditPurpose"
+ >
+ <el-input
+ class="newly-form"
+ v-model="newly.auditPurpose"
+ placeholder="璇疯緭鍏ュ鏍哥洰鐨�"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <!-- 绗笁琛� -->
+ <el-row class="newly-margin-bottom">
+ <el-col :span="12">
+ <el-form-item
+ label="瀹℃牳缁勯暱:"
+ :label-width="formLabelWidth2"
+ prop="auditLeader"
+ >
+ <el-input
+ class="newly-form"
+ v-model="newly.auditLeader"
+ placeholder="璇疯緭鍏ュ鏍哥粍闀�"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ label="瀹℃牳鑼冨洿:"
+ :label-width="formLabelWidth2"
+ prop="auditScope"
+ >
+ <el-input
+ class="newly-form"
+ v-model="newly.auditScope"
+ placeholder="璇疯緭鍏ュ鏍歌寖鍥�"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <!-- 绗洓琛� -->
+ <el-row class="newly-margin-bottom">
+ <el-col :span="12">
+ <el-form-item
+ label="缁勫憳:"
+ :label-width="formLabelWidth2"
+ prop="auditEmp"
+ >
+ <el-input
+ class="newly-form"
+ v-model="newly.auditEmp"
+ placeholder="璇疯緭鍏ョ粍鍛�"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ label="瀹℃牳渚濇嵁:"
+ :label-width="formLabelWidth2"
+ prop="auditPursuant"
+ >
+ <el-input
+ class="newly-form"
+ v-model="newly.auditPursuant"
+ placeholder="璇疯緭鍏ュ鏍镐緷鎹�"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <!-- 绗簲琛� -->
+ <el-row class="newly-margin-bottom">
+ <el-col :span="12">
+ <el-form-item
+ label="缂栧埗浜�:"
+ :label-width="formLabelWidth2"
+ prop="writeUser"
+ >
+ <el-input
+ class="newly-form"
+ v-model="newly.writeUser"
+ placeholder="璇疯緭鍏ョ紪鍒朵汉"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ label="瀹℃牳鏃ユ湡:"
+ :label-width="formLabelWidth2"
+ >
+ <el-date-picker
+ class="newly-form"
+ v-model="newly.auditTime"
+ type="date"
+ placeholder="璇烽�夋嫨瀹℃牳鏃ユ湡"
+ autocomplete="off"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="dialogFormVisible2 = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitAddData('newly')"
+ >纭� 瀹�</el-button
+ >
+ </div>
+ </el-dialog>
+ </el-form-item>
+ <!-- 瀵煎嚭骞村害璁″垝 -->
+ <el-form-item class="createBtn">
+ <el-button type="primary" icon="el-icon-document-checked"
+ >瀵煎嚭骞村害璁″垝</el-button
+ >
+ </el-form-item>
+ <el-form-item class="createBtn">
+ <el-button type="primary" icon="el-icon-document-checked"
+ >瀵煎嚭鍐呴儴瀹炴柦璁″垝</el-button
+ >
+ </el-form-item>
+ </el-form>
</div>
+ <div class="library-table">
+ <div class="table-box">
+ <el-table
+ ref="auditTable"
+ border
+ :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="auditTable"
+ style="width: 100%"
+ >
+ <el-table-column type="index" label="搴忓彿" min-width="30px">
+ <template>
+ <el-checkbox type="checkbox" />
+ </template>
+ </el-table-column>
+ <el-table-column prop="year" label="骞村害" min-width="60px" />
+ <el-table-column prop="month" label="鏈堝害" min-width="60px" />
+ <el-table-column prop="planTime" label="璁″垝鏃堕棿" min-width="100px" />
+ <el-table-column prop="auditType" label="鎬ц川" min-width="80px">
+ <template slot-scope="scope">
+ <span>
+ {{ scope.row.auditType == 0 ? "鍐呭" : "绠$悊璇勫" }}
+ </span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="department" label="閮ㄩ棬" min-width="80px" />
+ <el-table-column
+ prop="auditLeader"
+ label="瀹℃牳缁勯暱"
+ min-width="80px"
+ />
+ <el-table-column prop="auditEmp" label="缁勫憳" min-width="80px" />
+ <el-table-column
+ prop="auditPurpose"
+ label="瀹℃牳鐩殑"
+ min-width="100px"
+ />
+ <el-table-column
+ prop="auditScope"
+ label="瀹℃牳鑼冨洿"
+ min-width="100px"
+ />
+ <el-table-column
+ prop="auditPursuant"
+ label="瀹℃牳渚濇嵁"
+ min-width="100px"
+ />
+ <el-table-column prop="writeUser" label="缂栧埗浜�" min-width="80px" />
+ <el-table-column prop="createTime" label="缂栧埗鏃ユ湡" min-width="100px">
+ </el-table-column>
+ <el-table-column prop="keyboarder" label="褰曞叆浜�" min-width="80px" />
+ <el-table-column prop="checker" label="妫�楠屼汉" min-width="80px" />
+ <el-table-column
+ prop="auditTime"
+ label="瀹℃牳鏃ユ湡"
+ min-width="100px"
+ />
+ <el-table-column prop="count" label="涓嶇鍚堥」鐩暟" min-width="60px" />
+ <el-table-column prop="auditState" label="鐘舵��" min-width="100px">
+ <template slot-scope="scope">
+ <div v-if="scope.row.auditState === 0">
+ <el-tag class="tag-item" type="warning">鍗冲皢寮�濮�</el-tag>
+ </div>
+ <div v-else-if="scope.row.auditState === 1">
+ <el-tag class="tag-item" type="success">瀹屾垚</el-tag>
+ </div>
+ <div v-else>
+ <el-tag class="tag-item" type="danger">閫炬湡</el-tag>
+ </div>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" min-width="100" fixed="right">
+ <template slot-scope="scope">
+ <el-button type="text" size="small">鏌ョ湅</el-button>
+ <el-button
+ type="text"
+ size="small"
+ @click="deleteClick(scope.row.id)"
+ >鍒犻櫎</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 {
+ selectAllList,
+ addCnasAnnualPlan,
+ addAccessory,
+ deleteCnasAnnualPlan,
+} from "@/api/CNAS/reviewAnnualPlan";
+import { P } from "af-table-column";
+export default {
+ data() {
+ return {
+ input: "",
+ auditTable: [],
+ page: 1,
+ total: 0,
+ pageSize: 10,
+ dialogFormVisible1: false,
+ dialogFormVisible2: false,
+ formLabelWidth1: "80px",
+ formLabelWidth2: "80px",
+ //涓婁紶闄勪欢鍙傛暟
+ uploading: {
+ auditTime: "",
+ //====================鏂囦欢涓婁紶杩樻病鍋�,姝ゅ鏄簲鏄枃浠跺弬鏁�,鏆傛椂杩樻槸鏂囨湰
+ accessoryFile: "",
+ },
+ rules1: {
+ auditTime: [
+ {
+ type: "date",
+ required: true,
+ message: "璇烽�夋嫨鏃ユ湡",
+ trigger: "blur",
+ },
+ ],
+ accessoryFile: [
+ { required: true, message: "璇疯緭鍏ユ椿鍔ㄥ悕绉�", trigger: "blur" },
+ { min: 3, max: 5, message: "闀垮害鍦� 3 鍒� 5 涓瓧绗�", trigger: "blur" },
+ ],
+ },
+ //鏂板璁″垝瀵硅薄
+ newly: {
+ planTime: "",
+ auditType: "",
+ department: "",
+ auditPurpose: "",
+ auditLeader: "",
+ auditEmp: "",
+ auditPursuant: "",
+ auditScope: "",
+ writeUser: "",
+ auditTime: "",
+ },
+ rules2: {
+ planTime: [
+ {
+ type: "date",
+ required: true,
+ message: "璇烽�夋嫨鏃ユ湡",
+ trigger: "blur",
+ },
+ ],
+ auditType: [
+ { required: true, message: "璇烽�夋嫨鎬ц川", trigger: "change" },
+ ],
+ department: [
+ { required: true, message: "璇疯緭鍏ラ儴闂�", trigger: "blur" },
+ { min: 1, max: 25, message: "瀛楁暟杩囬暱", trigger: "blur" },
+ ],
+ auditPurpose: [
+ { required: true, message: "璇疯緭鍏ュ鏍哥洰鐨�", trigger: "blur" },
+ { min: 1, max: 25, message: "瀛楁暟杩囬暱", trigger: "blur" },
+ ],
+ auditLeader: [
+ { required: true, message: "璇疯緭鍏ュ鏍哥粍闀�", trigger: "blur" },
+ { min: 1, max: 25, message: "瀛楁暟杩囬暱", trigger: "blur" },
+ ],
+ auditEmp: [
+ { required: true, message: "璇疯緭鍏ョ粍鍛�", trigger: "blur" },
+ { min: 1, max: 25, message: "瀛楁暟杩囬暱", trigger: "blur" },
+ ],
+ auditPursuant: [
+ { required: true, message: "璇疯緭鍏ュ鏍镐緷鎹�", trigger: "blur" },
+ { min: 1, max: 25, message: "瀛楁暟杩囬暱", trigger: "blur" },
+ ],
+ auditScope: [
+ { required: true, message: "璇疯緭鍏ュ鏍歌寖鍥�", trigger: "blur" },
+ { min: 1, max: 5, message: "瀛楁暟杩囬暱", trigger: "blur" },
+ ],
+ writeUser: [
+ { required: true, message: "璇疯緭鍏ョ紪鍒朵汉", trigger: "blur" },
+ { min: 1, max: 25, message: "瀛楁暟杩囬暱", trigger: "blur" },
+ ],
+ },
+ };
+ },
+ created() {
+ this.getData();
+ },
+ methods: {
+ //====================================================涓婁紶闄勪欢
+ //涓婁紶闄勪欢瀛楁纭
+ submitUp(uploading) {
+ this.$refs[uploading].validate((valid) => {
+ if (!valid) {
+ return false;
+ } else {
+ // this.upData();
+ }
+ });
+ },
+ // //涓婁紶闄勪欢
+ // async upData() {
+ // try {
+ // const res = await addAccessory(this.uploading);
+ // console.log(res);
+ // } catch (error) {
+ // this.$message.error("娣诲姞澶辫触");
+ // }
+ // this.resetData();
+ // this.dialogFormVisible1 = false;
+ // },
+
+ //鏂板璁″垝瀛楁纭
+ submitAddData(newly) {
+ this.$refs[newly].validate((valid) => {
+ if (!valid) {
+ return false;
+ } else {
+ this.addData();
+ }
+ });
+ },
+ //鏂板璁″垝
+ async addData() {
+ try {
+ const res = await deleteCnasAnnualPlan(this.newly);
+ } catch (error) {
+ this.$message.error("娣诲姞澶辫触");
+ }
+ this.getData();
+ this.dialogFormVisible2 = false;
+ },
+ // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
+ 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.getData();
+ },
+ // 鏌ヨ鍒楄〃
+ async getData() {
+ const params = {
+ page: this.page,
+ pageSize: this.pageSize,
+ planTime: this.input ? this.input : undefined,
+ };
+ const { data } = await selectAllList(params);
+ this.auditTable = data.row;
+ this.total = data.total;
+ },
+ async deleteOneData(planId) {
+ await deleteCnasAnnualPlan({ planId: planId });
+ this.getData();
+ console.log(planId);
+ },
+
+ deleteClick(planId) {
+ this.$confirm("纭鍒犻櫎?", "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ }).then(() => {
+ this.deleteOneData(planId);
+ });
+ },
+ //閲嶇疆琛ㄥ崟
+ resetForm(formName) {
+ this.$refs[formName].resetFields();
+ },
+ },
+};
+</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: 400px;
+ }
+ .uploading-form {
+ // margin-bottom: 20px;
+ width: 400px;
+ }
+ .newly-form {
+ // margin-bottom: 20px;
+ width: 400px;
+ }
+ .newly-margin-bottom {
+ margin-bottom: 23px;
+ }
+}
+
+.library-table {
+ background-color: #fff;
+ flex: 1;
+ margin: 0px -15px;
+ margin-top: 40px;
+ display: flex;
+ flex-direction: column;
+
+ .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;
+ }
+ .tag-item {
+ width: 80px;
+ }
+ }
+}
+.rightBtn {
+ display: flex;
+ justify-content: flex-end;
+}
+.createBtn {
+ margin-left: 10px;
+}
+</style>
diff --git a/src/views/CNAS/satisfactionSurveys/index.vue b/src/views/CNAS/satisfactionSurveys/index.vue
index 571dd96..f1e2efb 100644
--- a/src/views/CNAS/satisfactionSurveys/index.vue
+++ b/src/views/CNAS/satisfactionSurveys/index.vue
@@ -1,191 +1,555 @@
<template>
- <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="璇风洿鎺ヨ緭鍏ユ牱寮忕紪鍙�/鏍峰搧鍚嶇О/鍨嬪彿瑙勬牸/杩涜鎼滅储鎴栦笅鎷夐�夋嫨杩涜缁勫悎鏌ヨ"
+ <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>
+ <el-form-item style="width: 800px;">
+ <el-col style="display: flex; justify-content: space-around;" :span="12">
+ <el-row>璋冩煡鏃ユ湡:</el-row>
+ <el-row style="width: 300px;">
+ <el-date-picker style="width: 270px;" class="newly-form" v-model="surveyDate" type="date"
+ placeholder="璇烽�夋嫨璋冩煡鏃ユ湡" autocomplete="off">
+ </el-date-picker>
+ </el-row>
+ </el-col>
+ <el-col style="display: flex; justify-content: space-around;" :span="12">
+ <el-row>褰曞叆鏃ユ湡:</el-row>
+ <el-row style="width: 300px;">
+ <el-date-picker style="width: 270px;" class="newly-form" v-model="entryDate" type="date"
+ placeholder="璇烽�夋嫨褰曞叆鏃ユ湡" autocomplete="off">
+ </el-date-picker>
+ </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" @click="getFillName()" 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 prop="id" type="index" label="搴忓彿" min-width="20%"/>
+ <el-table-column prop="surveyDate" label="璋冩煡鏃ユ湡" min-width="10%" />
+ <el-table-column prop="userUnit" label="瀹㈡埛鍗曚綅鍚嶇О" min-width="10%" />
+ <el-table-column prop="projectName" label="椤圭洰鍚嶇О" min-width="10%" />
+ <el-table-column prop="fillName" label="濉〃浜哄鍚�" min-width="10%" />
+ <el-table-column prop="post" label="鑱屼綅" min-width="10%" />
+ <el-table-column prop="telephone" label="鑱旂郴鐢佃瘽" min-width="10%" />
+ <el-table-column prop="userName" label="褰曞叆浜�" min-width="10%" />
+ <el-table-column label="闄勪欢" min-width="10%">
+ <template slot-scope="scope">
+ <a style="color: #3894d1;" @click="look(scope.row.id)">鏌ョ湅闄勪欢</a>
+ </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>
- </template>
+ <el-dialog title="婊℃剰搴﹁皟鏌�" :visible.sync="dialogVisible" width="50%">
+ <table class="table" style="width: 100%;">
+ <tr>
+ <td> </td>
+ <td>婊℃剰</td>
+ <td>涓�鑸�</td>
+ <td>涓嶆弧鎰�</td>
+ <td>寤鸿</td>
+ </tr>
+ <tr>
+ <td>鏈嶅姟鎬佸害</td>
+ <td><el-radio v-model="serviceAttitude" label="0"><span hidden>婊℃剰</span></el-radio></td>
+ <td><el-radio v-model="serviceAttitude" label="1"><span hidden>涓�鑸�</span> </el-radio></td>
+ <td><el-radio v-model="serviceAttitude" label="2"><span hidden>涓嶆弧鎰�</span></el-radio></td>
+ <td><el-input v-model="serviceAttitudeInput" placeholder="璇疯緭鍏ュ唴瀹�"></el-input></td>
+ </tr>
+ <tr>
+ <td>鎶�鏈兘鍔�</td>
+ <td><el-radio v-model="technicalPower" label="0"><span hidden>婊℃剰</span></el-radio></td>
+ <td><el-radio v-model="technicalPower" label="1"><span hidden>涓�鑸�</span> </el-radio></td>
+ <td><el-radio v-model="technicalPower" label="2"><span hidden>涓嶆弧鎰�</span></el-radio></td>
+ <td><el-input v-model="technicalPowerInput" placeholder="璇疯緭鍏ュ唴瀹�"></el-input></td>
+ </tr>
+ <tr>
+ <td>妫�娴嬪伐浣�</td>
+ <td><el-radio v-model="testJob" label="0"><span hidden>婊℃剰</span></el-radio></td>
+ <td><el-radio v-model="testJob" label="1"><span hidden>涓�鑸�</span> </el-radio></td>
+ <td><el-radio v-model="testJob" label="2"><span hidden>涓嶆弧鎰�</span></el-radio></td>
+ <td><el-input v-model="testJobInput" placeholder="璇疯緭鍏ュ唴瀹�"></el-input></td>
+ </tr>
+ <tr>
+ <td>鏀惰垂鍚堢悊鎬�</td>
+ <td><el-radio v-model="reasonableCharge" label="0"><span hidden>婊℃剰</span></el-radio></td>
+ <td><el-radio v-model="reasonableCharge" label="1"><span hidden>涓�鑸�</span> </el-radio></td>
+ <td><el-radio v-model="reasonableCharge" label="2"><span hidden>涓嶆弧鎰�</span></el-radio></td>
+ <td><el-input v-model="reasonableChargeInput" placeholder="璇疯緭鍏ュ唴瀹�"></el-input></td>
+ </tr>
+ <tr>
+ <td>鏀硅繘瑕佹眰</td>
+ <td colspan="4">
+ <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4 }" placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="improvementRequirements">
+ </el-input>
+ </td>
+ </tr>
+ <tr>
+ <td>鍏朵粬琛ュ厖</td>
+ <td colspan="4">
+ <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4 }" placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="otherSupplements">
+ </el-input>
+ </td>
+ </tr>
+ </table>
+ <!-- <span slot="footer" class="dialog-footer">
+ <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
+ </span> -->
+ </el-dialog>
+ <el-dialog title="鏂板婊℃剰搴﹁皟鏌ヨ褰�" :visible.sync="dialogVisible2" width="50%">
+ <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="璋冩煡鏃ユ湡锛�" prop="surveyDate">
+ <el-date-picker style="width: 200px;" class="newly-form" v-model="ruleForm.surveyDate" type="date"
+ placeholder="璇烽�夋嫨璋冩煡鏃ユ湡" autocomplete="off">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="瀹㈡埛鍗曚綅锛�" prop="userUnit">
+ <el-input style="width: 200px;" type="text" placeholder="璇疯緭鍏ュ鎴峰崟浣嶅悕绉�" v-model="ruleForm.userUnit"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="椤圭洰鍚嶇О锛�" prop="projectName">
+ <el-input style="width: 200px;" type="text" placeholder="璇疯緭鍏ラ」鐩悕绉�" v-model="ruleForm.projectName"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴鐢佃瘽锛�" prop="telephone">
+ <el-input style="width: 200px;" type="text" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" v-model="ruleForm.telephone"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <!-- 濉〃浜哄鍚� -->
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="濉〃浜哄鍚嶏細" prop="fillName">
+ <el-input style="width: 200px;" type="text" placeholder="璇疯緭鍏ュ~琛ㄤ汉濮撳悕" v-model="ruleForm.fillName"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱屼綅锛�" prop="post">
+ <el-input style="width: 200px;" type="text" placeholder="璇疯緭鍏ヨ亴浣�" v-model="ruleForm.post"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <!-- 鑱旂郴鐢佃瘽/褰曞叆鏃ユ湡 -->
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="褰曞叆浜猴細" prop="userName">
+ <el-input style="width: 200px;" type="text" placeholder="璇疯緭鍏ュ綍鍏ヤ汉濮撳悕" v-model="ruleForm.userName"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="褰曞叆鏃ユ湡锛�" prop="entryDate">
+ <el-date-picker style="width: 200px;" class="newly-form" v-model="ruleForm.entryDate" type="date"
+ placeholder="璇烽�夋嫨褰曞叆鏃ユ湡" autocomplete="off">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="闄勪欢涓婁紶锛�">
+ <el-upload class="upload-demo" :action="path" :on-preview="handlePreview" :on-remove="handleRemove" multiple
+ :limit="1" :on-exceed="handleExceed" :file-list="fileList" :on-success="handleSuccess"
+ :before-upload="beforeAvatarUpload">
+ <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <!-- 鎻愪氦 -->
+ <el-row>
+ <el-col :span="24" style="display: flex;justify-content: center;">
+ <el-form-item>
+ <el-button @click="resetForm('ruleForm')">鍙栨秷</el-button>
+ <el-button type="primary" @click="submitForm('ruleForm')">淇濆瓨</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-dialog>
+ </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
- }
+<script>
+import { get, post } from '@/api/util/requestUtil';
+import urlInfo from '../../../api/urlEnum/satisfactionSurveys.js'
+export default {
+ data() {
+ return {
+ input: '',
+ tableData: [],
+ page: 1,
+ total: 0,
+ pageSize: 10,
+ entryDate: null,
+ surveyDate: null,
+ id: 0,
+ dialogVisible: false,
+ serviceAttitude: 3,
+ serviceAttitudeInput: "鏃�",
+ technicalPower: 3,
+ technicalPowerInput: "鏃�",
+ testJob: 3,
+ testJobInput: "鏃�",
+ reasonableCharge: 3,
+ reasonableChargeInput: "鏃�",
+ otherSupplements: "鏃�",
+ improvementRequirements: "鏃�",
+ dialogVisible2: false,
+ path: 'http://192.168.110.254:1234/cnasSatisfactionSurvey/uploadFile',
+ ruleForm: {
+ surveyDate: '',
+ userUnit: '',
+ projectName: '',
+ fillName: '',
+ post: '',
+ userId: '',
+ telephone: '',
+ entryDate: '',
+ userName: '',
+ serviceAttitude: '',
+ technicalPower: '',
+ testJob: '',
+ reasonableCharge: '',
+ improvementRequirements: '',
+ otherSupplements: ''
+ },
+ rules: {
+ surveyDate: [
+ { type: 'date', required: true, message: '璇烽�夋嫨璋冩煡鏃ユ湡', trigger: 'change' }
+ ],
+ userUnit: [
+ { required: true, message: '璇疯緭鍏ュ鎴峰崟浣嶅悕绉�', trigger: 'blur' },
+ ],
+ projectName: [
+ { required: true, message: '璇疯緭鍏ラ」鐩悕绉�', trigger: 'blur' }
+ ],
+ entryDate: [
+ { type: 'date', required: true, message: '璇烽�夋嫨褰曞叆鏃ユ湡', trigger: 'change' }
+ ],
+ telephone: [
+ { required: true, message: '璇疯緭鍏ヨ仈绯荤數璇�', trigger: 'blur' }
+ ]
+ },
+ fileList: [],
+ }
+ },
+ created() {
+
+ },
+ mounted() {
+ this.getData()
+ },
+ methods: {
+ handleCurrentChange() {
+ this.getData();
},
- created() {
-
+ look(id) {
+ console.log(id);
+ let str = "/$";
+ this.dialogVisible = true
+ let data = this.tableData.filter(res => {
+ return res.id == id
+ })[0]
+ let serviceAttitudeInfo = data.serviceAttitude.split(str);
+ this.serviceAttitude = serviceAttitudeInfo[0]
+ this.serviceAttitudeInput = serviceAttitudeInfo[1]
+ let technicalPowerInfo = data.technicalPower.split(str)
+ this.technicalPower = technicalPowerInfo[0]
+ this.technicalPowerInput = technicalPowerInfo[1]
+ let testJobInfo = data.testJob.split(str)
+ this.testJob = testJobInfo[0]
+ this.testJobInput = testJobInfo[1]
+ let reasonableChargeInfo = data.reasonableCharge.split(str)
+ this.reasonableCharge = reasonableChargeInfo[0]
+ this.reasonableChargeInput = reasonableChargeInfo[1]
+ this.otherSupplements = data.otherSupplements
+ this.improvementRequirements = data.improvementRequirements
},
- mounted() {
+ handleSizeChange() {
+
+ },
+ exportData() {
+
+ },
+ // 閲嶇疆鎸夐挳
+ resetData() {
+ this.page = 1
+ this.pageSize = 10
+ this.surveyDate = null
+ this.entryDate = null
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
+ async getData() {
+ let param = {
+ "currentPage": this.page,
+ 'pageNum': this.pageSize,
+ "surveyDate": this.surveyDate,
+ "entryDate": this.entryDate
}
+ if (this.surveyDate != null) {
+ param.surveyDate = this.dateFormat(this.surveyDate);
+ }
+ if (this.entryDate !== null) {
+ param.entryDate = this.dateFormat(this.entryDate);
+ }
+ let res = await get(urlInfo.url.getCnasSatisfactionSurvey, param)
+ this.tableData = res.data.cnasSatisfactionSurveyList
+ this.total = res.data.total
+ },
+ async getFillName() {
+ this.dialogVisible2 = true
+ let res = await get(urlInfo.url.getFillNameAndId)
+ this.ruleForm.userName = res.data.name
+ this.ruleForm.userId = res.data.id
+ var now = new Date();
+ this.ruleForm.entryDate = now
+ },
+ async submitForm(formName) {
+ this.$refs[formName].validate((valid) => {
+ if (valid) {
+ this.add();
+ } else {
+ console.log('error submit!!');
+ return false;
+ }
+ });
+ },
+ async add() {
+ let data = JSON.parse(JSON.stringify(this.ruleForm))
+ let entryDate = this.format(this.ruleForm.entryDate);
+ let surveyDate = this.format(this.ruleForm.surveyDate);
+ data.entryDate = entryDate
+ data.surveyDate = surveyDate
+ // data.dateInfo = dateInfo
+ let add = await post(urlInfo.url.addSurvey, data);
+ if (add) {
+ this.$message({
+ message: '娣诲姞鎴愬姛',
+ type: 'success'
+ });
+ this.fileList = []
+ this.$refs["ruleForm"].resetFields();
+ let res = await get(urlInfo.url.getFillNameAndId)
+ this.ruleForm.userName = res.data.name
+ this.ruleForm.id = res.data.id
+ var now = new Date();
+ this.ruleForm.entryDate = now
+ this.getData()
+ } else {
+ this.$message.error('娣诲姞澶辫触锛佽妫�鏌ュ唴瀹�');
+ }
+ },
+ resetForm(formName) {
+ this.dialogVisible2 = false
+ this.fileList = []
+ this.$refs[formName].resetFields();
+ },
+ handleRemove(file, fileList) {
+ console.log(file, fileList);
+ },
+ handlePreview(file) {
+ console.log(file);
+ },
+ handleExceed(files, fileList) {
+ this.$message.warning(`褰撳墠闄愬埗閫夋嫨 1 涓枃浠讹紝鏈閫夋嫨浜� ${files.length} 涓枃浠讹紝鍏遍�夋嫨浜� ${files.length + fileList.length} 涓枃浠禶);
+ },
+ // beforeRemove(file, fileList) {
+ // return this.$confirm(`纭畾绉婚櫎 ${file.name}锛焋);
+ // },
+ handleSuccess(response, file, fileList) {
+ let data = response.data;
+ if (this.ruleForm.userUnit == '') {
+ this.ruleForm.userUnit = data.unitName
+ }
+ if (this.ruleForm.projectName == '') {
+ this.ruleForm.projectName = data.projectName
+ }
+ if (this.ruleForm.post === '') {
+ this.ruleForm.post = data.post
+ }
+ if (this.ruleForm.fillName == '') {
+ this.ruleForm.fillName = data.fillName.split("/")[0]
+ }
+ if (this.ruleForm.telephone == '') {
+ this.ruleForm.telephone = data.telephone
+ }
+ if(this.ruleForm.surveyDate==null||this.ruleForm.surveyDate==''){
+ let dates = new Date(data.fillName.split("/")[1]);
+ console.log(dates);
+ if(dates!=''&&dates!=''){
+ this.ruleForm.surveyDate=dates
+ }
+ }
+ this.ruleForm.serviceAttitude = data.serviceAttitude
+ this.ruleForm.technicalPower = data.technicalPower
+ this.ruleForm.testJob = data.testJob
+ this.ruleForm.improvementRequirements = data.improvementRequirements
+ this.ruleForm.otherSupplements = data.otherSupplements
+ this.ruleForm.reasonableCharge=data.reasonableCharge
+ },
+ beforeAvatarUpload(file) {
+ let split = file.name.split(".");
+ let fileName = split[split.length - 1];
+ const isWord = fileName == 'doc' || fileName == 'docx';
+ const isLt2M = file.size / 1024 / 1024 < 2;
+ if (!isWord) {
+ this.$message.error('涓婁紶word鏂囦欢鍙兘鏄� doc/docx 鏍煎紡!');
+ }
+ if (!isLt2M) {
+ this.$message.error('涓婁紶word鏂囦欢澶у皬涓嶈兘瓒呰繃 2MB!');
+ }
+ return isWord && isLt2M;
+ },
+ dateFormat(longTypeDate) {
+ var dateTypeDate = "";
+ var date = new Date();
+ date.setTime(longTypeDate);
+ dateTypeDate += date.getFullYear(); //骞�
+ dateTypeDate += "-" + this.getMonth(date); //鏈�
+ dateTypeDate += "-" + this.getDay(date); //鏃�
+ return dateTypeDate;
+ },
+ //杩斿洖 01-12 鐨勬湀浠藉��
+ getMonth(date) {
+ var month = "";
+ month = date.getMonth() + 1; //getMonth()寰楀埌鐨勬湀浠芥槸0-11
+ if (month < 10) {
+ month = "0" + month;
+ }
+ return month;
+ },
+ //杩斿洖01-30鐨勬棩鏈�
+ getDay(date) {
+ var day = "";
+ day = date.getDate();
+ if (day < 10) {
+ day = "0" + day;
+ }
+ return day;
+ },
+ datetimeFormat(longTypeDate) {
+ var dateTypeDate = "";
+ var date = new Date();
+ date.setTime(longTypeDate);
+ dateTypeDate += date.getFullYear(); //骞�
+ dateTypeDate += "-" + this.getMonth(date); //鏈�
+ dateTypeDate += "-" + this.getDay(date); //鏃�
+ return dateTypeDate;
+ },
+ format(d) {
+ var y = d.getFullYear();
+ var m = d.getMonth() + 1;
+ if (m < 10) {
+ m = "0" + m;
+ }
+ var day = d.getDate();
+ if (day < 10) {
+ day = "0" + day;
+ }
+ return y + "-" + m + "-" + day;
}
}
- </script>
+}
+</script>
- <style lang="scss" scoped>
- .top-bar {
- margin: -25px -15px;
- background: #fff;
+<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;
- padding: 5px 24px 0px 24px;
-
- .input-form {
- width: 800px;
+
+ .el-form-item {
+ margin-bottom: 30px !important;
}
-
- .el-dropdown-link {
- cursor: pointer;
- color: #409EFF !important;
- }
-
- .el-icon-arrow-down {
- font-size: 12px !important;
- }
-
-
}
-
- .library-table {
- background-color: #fff;
+
+ .table-box {
+ padding: 0px 20px;
+ margin-top: 20px;
flex: 1;
- margin: 0px -15px;
- margin-top: 40px;
+ background: #fff;
display: flex;
flex-direction: column;
-
- .table-header {
- padding: 20px;
+
+ >div:nth-child(2) {
display: flex;
- justify-content: space-between;
-
- .el-form-item {
- margin-bottom: 30px !important;
- }
+ justify-content: end;
+ margin: 10px 0;
}
-
- .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;
- }
+}
+
+.table,
+tr,
+td {
+ padding: 10px;
+}
+</style>
+<style >
+.content-main {
+ .el-form .el-form-item .el-form-item__content {
+ width: 100% !important;
}
- </style>
+}
+</style>
diff --git a/src/views/experiment/checkTheReport/index.vue b/src/views/experiment/checkTheReport/index.vue
index 4a58f59..a5057c4 100644
--- a/src/views/experiment/checkTheReport/index.vue
+++ b/src/views/experiment/checkTheReport/index.vue
@@ -24,11 +24,7 @@
</el-dropdown>
</el-form>
<el-form>
- <el-button
- class="rightBtn"
- type="primary"
- icon="el-icon-document"
- @click="exportData"
+ <el-button class="rightBtn" type="primary" icon="el-icon-document"
>瀵煎嚭鎶ュ憡</el-button
>
</el-form>
@@ -70,19 +66,37 @@
label="鏍峰搧缂栧彿"
sortable
min-width="10%"
- />
+ >
+ <template slot-scope="scope">
+ <span style="color: #409eff;">
+ {{ scope.row.materialCode }}
+ </span>
+ </template></el-table-column
+ >
<el-table-column
- prop="reportCode"
+ prop="materialCode"
label="鎶ュ憡鍗曞彿"
sortable
min-width="10%"
- />
+ >
+ <template slot-scope="scope">
+ <span style="color: #409eff;">
+ {{ scope.row.materialCode }}
+ </span>
+ </template></el-table-column
+ >
<el-table-column
prop="inspectionCode"
label="鐢宠鍗曞彿"
sortable
min-width="10%"
- />
+ >
+ <template slot-scope="scope">
+ <span style="color: #409eff;">
+ {{ scope.row.inspectionCode }}
+ </span>
+ </template></el-table-column
+ >
<el-table-column prop="approver" label="瀹℃壒浜�" min-width="8%">
<template slot-scope="scope">
<span>
@@ -216,7 +230,7 @@
}
.el-dropdown-link {
cursor: pointer;
- color: #409EFF;
+ color: #409eff;
}
.el-icon-arrow-down {
font-size: 12px;
@@ -250,6 +264,5 @@
margin: 10px 0;
}
}
-
}
</style>
diff --git a/src/views/experiment/planAssignments/index.vue b/src/views/experiment/planAssignments/index.vue
index f5bdf13..ad051ce 100644
--- a/src/views/experiment/planAssignments/index.vue
+++ b/src/views/experiment/planAssignments/index.vue
@@ -6,7 +6,7 @@
<el-select
v-model="searchData.devicename"
placeholder="鍏ㄩ儴"
- style="width: 100px"
+ style="width: 120px"
>
<el-option
v-for="item in options1"
@@ -21,6 +21,7 @@
<el-date-picker
v-model="searchData.time"
type="daterange"
+ value-format="yyyy-MM-dd"
range-separator="~"
start-placeholder="寮�濮嬫棩鏈�"
end-placeholder="缁撴潫鏃ユ湡"
@@ -31,7 +32,7 @@
<el-select
v-model="searchData.person"
placeholder="鍏ㄩ儴"
- style="width: 80px; margin-right: 100px"
+ style="width: 100px; margin-right: 100px"
>
<el-option
v-for="item in options2"
@@ -43,10 +44,14 @@
</el-select>
</el-form-item>
<el-form-item>
- <el-button type="primary" plain style="margin-right: 10px"
+ <el-button
+ type="primary"
+ plain
+ style="margin-right: 10px"
+ @click="resetData()"
>閲嶇疆</el-button
>
- <el-button type="primary">鏌ヨ</el-button>
+ <el-button type="primary" @click="getData()">鏌ヨ</el-button>
</el-form-item>
</el-form>
</div>
@@ -154,38 +159,76 @@
return {
searchData: {
devicename: "",
- time: "",
+ time: [],
person: "",
},
options1: [],
options2: [],
planTable: [],
+ planTableView: [],
};
},
created() {
this.getData();
},
+
methods: {
// 鏌ヨ鍒楄〃
async getData() {
- const params = {};
+ const params = {
+ device: this.searchData.devicename
+ ? this.searchData.devicename
+ : undefined,
+ user: this.searchData.person ? this.searchData.person : undefined,
+ beginTime:
+ this.searchData.time && this.searchData.time.length > 0
+ ? this.searchData.time[0]
+ : undefined,
+ endTime:
+ this.searchData.time && this.searchData.time.length > 0
+ ? this.searchData.time[1]
+ : undefined,
+ };
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);
+ if (this.options1.length === 0) {
+ //娣诲姞璁惧鍚嶇О
+ const deviceData = [];
+ this.planTable.forEach((res) => {
+ if (!deviceData.includes(res.device)) {
+ deviceData.push(res.device);
+ }
+ });
+ deviceData.forEach((item) => {
+ this.options1.push({
+ value: item,
+ label: item,
+ });
+ });
+ //娣诲姞鐢ㄦ埛
+ const userData = [];
+ this.planTable.forEach((res) => {
+ if (res.checker != undefined && !userData.includes(res.checker)) {
+ userData.push(res.checker);
+ }
+ });
+ userData.forEach((item) => {
+ this.options2.push({
+ value: item,
+ label: item,
+ });
+ });
+ console.log(this.options2);
+ }
+ },
+ // 閲嶇疆鎸夐挳
+ resetData() {
+ (this.searchData = {
+ devicename: "",
+ time: [],
+ person: "",
+ }),
+ this.getData();
},
},
};
@@ -216,7 +259,7 @@
height: 78vh;
.formwrapper {
padding: 0px 20px;
- margin-top: 0px;
+ margin-top: 20px;
flex: 1;
background: #fff;
/* padding: 20px 20px 10px 20px; */
diff --git a/src/views/experiment/reportAuditing/index.vue b/src/views/experiment/reportAuditing/index.vue
index 0e8bf65..ad3c04e 100644
--- a/src/views/experiment/reportAuditing/index.vue
+++ b/src/views/experiment/reportAuditing/index.vue
@@ -2,7 +2,7 @@
<div class="content-main">
<div class="top-bar">
<el-form ref="form" :inline="true">
- <el-form-item class="sermargin">
+ <el-form-item>
<el-input
v-model="input"
class="input-form"
@@ -24,9 +24,7 @@
</el-dropdown>
</el-form>
<el-form>
- <el-button class="rightBtn" type="primary" @click="exportData"
- >瀹℃牳</el-button
- >
+ <el-button class="rightBtn" type="primary">瀹℃牳</el-button>
</el-form>
</div>
<div class="library-table">
@@ -58,12 +56,20 @@
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="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-column
prop="materialName"
label="鏍峰搧鍚嶇О"
diff --git a/src/views/laboratory/ledger/index.vue b/src/views/laboratory/ledger/index.vue
index f092459..555d0b6 100644
--- a/src/views/laboratory/ledger/index.vue
+++ b/src/views/laboratory/ledger/index.vue
@@ -4,10 +4,7 @@
<div class="search-bar">
<el-form ref="form" :inline="true" :model="searchData">
<el-form-item>
- <el-input
- v-model="searchData.keyword"
- placeholder="璇疯緭鍏ョ紪鍙�/璁惧鍚嶇О/鍨嬪彿瑙勬牸"
- >
+ <el-input v-model="searchData.keyword" placeholder="璇疯緭鍏ョ紪鍙�/璁惧鍚嶇О/鍨嬪彿瑙勬牸">
<i slot="prefix" class="el-input__icon el-icon-search" />
</el-input>
</el-form-item>
@@ -27,24 +24,16 @@
<div class="bom-item-search">
<el-row>
<el-col :span="19">
- <el-input
- v-model="filterText"
- placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"
- />
+ <el-input v-model="filterText" placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" />
</el-col>
<el-col :span="5">
- <el-button type="primary" size="small" @click="addClassVisible = true"><i class="el-icon-plus" /></el-button>
+ <el-button type="primary" size="small" @click="addClassVisible = true"><i
+ class="el-icon-plus" /></el-button>
</el-col>
</el-row>
</div>
- <el-tree
- ref="classTree"
- :data="classTree"
- :props="defaultProps"
- :default-expand-all="true"
- :filter-node-method="filterNode"
- @node-click="nodeClickHandler"
- />
+ <el-tree ref="classTree" :data="classTree" :props="defaultProps" :default-expand-all="true"
+ :filter-node-method="filterNode" @node-click="nodeClickHandler" />
</div>
<div class="library-table">
<div class="table-header">
@@ -55,74 +44,31 @@
{{ item.label }}
</el-radio-button>
</el-radio-group>
- <el-checkbox v-model="isOut" @change="getExpireTable" :style="{'marginLeft':'12px'}">宸茶繃鏈�</el-checkbox>
+ <el-checkbox v-model="isOut" @change="getExpireTable" :style="{ 'marginLeft': '12px' }">宸茶繃鏈�</el-checkbox>
</div>
<div class="serve-btn">
<!-- <el-button type="primary" icon="el-icon-plus">鏂板浜哄憳</el-button> -->
</div>
</div>
<div class="table-box">
- <el-table
- ref="equipmentTable"
- node-key="father_name"
- :cell-style="{textAlign: 'center'}"
- :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
- :data="equipmentTable"
- style="width: 100%"
- >
- <el-table-column
- type="index"
- label="搴忓彿"
- min-width="90"
- />
- <el-table-column
- prop="equipment_code"
- label="浠櫒璁惧缂栧彿"
- min-width="200"
- />
- <el-table-column
- prop="equipment_name"
- label="浠櫒璁惧鍚嶇О"
- min-width="150"
- />
- <el-table-column
- prop="specifications_models"
- label="瑙勬牸鍨嬪彿"
- min-width="150"
- />
- <el-table-column
- prop="name"
- label="淇濈浜�"
- min-width="200"
- />
- <el-table-column
- prop="termValidity"
- label="璁¢噺鎴鏈夋晥鏈�"
- min-width="200"
- />
- <el-table-column
- prop="conditions"
- label="璁惧鐘舵��"
- min-width="120"
- >
+ <el-table ref="equipmentTable" node-key="father_name" :cell-style="{ textAlign: 'center' }"
+ :header-cell-style="{ border: '0px', background: '#f5f7fa', color: '#606266', boxShadow: 'inset 0 1px 0 #ebeef5', textAlign: 'center' }"
+ :data="equipmentTable" style="width: 100%">
+ <el-table-column type="index" label="搴忓彿" min-width="90" />
+ <el-table-column prop="equipment_code" label="浠櫒璁惧缂栧彿" min-width="200" />
+ <el-table-column prop="equipment_name" label="浠櫒璁惧鍚嶇О" min-width="150" />
+ <el-table-column prop="specifications_models" label="瑙勬牸鍨嬪彿" min-width="150" />
+ <el-table-column prop="name" label="淇濈浜�" min-width="200" />
+ <el-table-column prop="termValidity" label="璁¢噺鎴鏈夋晥鏈�" min-width="200" />
+ <el-table-column prop="conditions" label="璁惧鐘舵��" min-width="120">
<template slot-scope="scope">
- <el-tag
- :type="scope.row.conditions === 0 ? 'primary' : 'success'"
- disable-transitions
- >{{ scope.row.conditions | conditionsFilter }}</el-tag>
+ <el-tag :type="scope.row.conditions === 0 ? 'primary' : 'success'" disable-transitions>{{
+ scope.row.conditions | conditionsFilter }}</el-tag>
</template>
</el-table-column>
- <el-table-column
- prop="storage_place"
- label="瀛樻斁鍦�"
- min-width="200"
- />
+ <el-table-column prop="storage_place" label="瀛樻斁鍦�" min-width="200" />
- <el-table-column
- label="鎿嶄綔"
- min-width="120"
- fixed="right"
- >
+ <el-table-column label="鎿嶄綔" min-width="120" fixed="right">
<template slot-scope="scope">
<el-button type="text" size="small" @click="openDetail(scope.row)">缂栬緫</el-button>
<el-button type="text" size="small" @click="clickDelete(scope.row)">鍒犻櫎</el-button>
@@ -133,45 +79,36 @@
<div>
<!-- 娣诲姞鍒嗙被 -->
<el-dialog title="娣诲姞鍒嗙被" :visible.sync="addClassVisible" width="33%">
- <el-form :model="addTreeForm">
- <el-form-item label="鍒嗙被鍚嶇О" label-width="100px">
- <el-input v-model="addTreeForm.name" autocomplete="off" />
+ <el-form :model="addTreeForm" ref="addTreeForm">
+ <el-form-item prop="name" label="鍒嗙被鍚嶇О" label-width="100px" :rules="[
+ { required: true, message: '鍒嗙被鍚嶇О涓嶈兘涓虹┖' }
+ ]">
+ <el-input v-model="addTreeForm.name"
+ />
</el-form-item>
<el-form-item label="鐖剁骇鍒嗙被" label-width="100px">
- <el-select v-model="addTreeForm.type" placeholder="璇烽�夋嫨">
+ <el-select style="width: 100%;" v-model="addTreeForm.type" placeholder="璇烽�夋嫨">
<el-option label="鍘熸潗鏂�" value="0" />
<el-option label="鐢电嚎鐢电紗" value="1" />
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
- <el-button @click="addClassVisible = false">鍙� 娑�</el-button>
- <el-button type="primary">纭� 瀹�</el-button>
+ <el-button @click="resetTreeForm('addTreeForm')">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitTreeForm('addTreeForm')">纭� 瀹�</el-button>
</div>
</el-dialog>
</div>
<div>
- <el-pagination
- :current-page="currentPage"
- :page-sizes="[10, 15, 20, 25]"
- :page-size="pageSize"
- layout="total, sizes, prev, pager, next, jumper"
- :total="total"
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- />
+ <el-pagination :current-page="currentPage" :page-sizes="[10, 15, 20, 25]" :page-size="pageSize"
+ layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handleSizeChange"
+ @current-change="handleCurrentChange" />
</div>
</div>
</div>
</div>
<!-- 浠櫒璇︽儏-->
- <el-drawer
- title="浠櫒璁惧璇︽儏"
- :visible.sync="detailDrawer"
- size="80%"
- class="detailDrawer"
- @close="closeDetailDrawer"
- >
+ <el-drawer title="浠櫒璁惧璇︽儏" :visible.sync="detailDrawer" size="80%" class="detailDrawer" @close="closeDetailDrawer">
<div>
<div class="detail-info">
<div class="tips-main">
@@ -187,7 +124,7 @@
<div class="message-item"><span><i class="el-icon-edit" />鎵�灞炲垎绫伙細{{ equipmentDetail.classifyId }}</span></div>
<div class="message-item">
<span><i class="el-icon-edit" />鍒涘缓浜猴細{{ equipmentDetail.createUserId }}</span>
- <el-tag type="primary"><i class="el-icon-info" :style="{marginRight:'4px', color:'#409EFF'}" /></el-tag>
+ <el-tag type="primary"><i class="el-icon-info" :style="{ marginRight: '4px', color: '#409EFF' }" /></el-tag>
</div>
<div class="message-item">
<span><i class="el-icon-edit" />寤烘。鏃ユ湡锛歿{ equipmentDetail.acceptanceDate }}</span>
@@ -220,10 +157,11 @@
<span><i class="el-icon-edit" />淇濈浜猴細{{ equipmentDetail.userId }}</span>
</div>
<div class="message-item">
- <span><i class="el-icon-edit" />鏄惁鏀寔鏁伴噰锛歿{ equipmentDetail.whetherDataAcquisition==1 ? '鏀寔': '涓嶆敮鎸�' }}</span>
+ <span><i class="el-icon-edit" />鏄惁鏀寔鏁伴噰锛歿{ equipmentDetail.whetherDataAcquisition == 1 ? '鏀寔' : '涓嶆敮鎸�'
+ }}</span>
</div>
<div class="message-item">
- <span><i class="el-icon-edit" />浠櫒璁惧璁¢噺锛歿{ equipmentDetail.equipmentMeasurement==1 ? '闇�瑕�': '涓嶉渶瑕�' }}</span>
+ <span><i class="el-icon-edit" />浠櫒璁惧璁¢噺锛歿{ equipmentDetail.equipmentMeasurement == 1 ? '闇�瑕�' : '涓嶉渶瑕�' }}</span>
</div>
<div class="message-item">
<span><i class="el-icon-edit" />璁¢噺鍛ㄦ湡锛歿{ equipmentDetail.termValidity }}</span>
@@ -235,71 +173,40 @@
</div>
<el-tabs v-model="activeTabsName">
<el-tab-pane label="璁惧鐮佺偣" name="codePoints">
- <el-button v-show="!codePointesTableStatus" :style="{marginBottom: '18px'}" @click="addCodePoints">鏂板璁惧鐮佺偣</el-button>
- <div v-show="codePointesTableStatus" :style="{marginBottom: '18px'}" class="btns">
+ <el-button v-show="!codePointesTableStatus" :style="{ marginBottom: '18px' }"
+ @click="addCodePoints">鏂板璁惧鐮佺偣</el-button>
+ <div v-show="codePointesTableStatus" :style="{ marginBottom: '18px' }" class="btns">
<el-button @click="addNewCodePoints">娣诲姞</el-button>
<el-button @click="saveCodePoins">淇濆瓨</el-button>
<el-button @click="closeCodePoins">鍙栨秷</el-button>
</div>
- <el-table
- ref="codePointsTable"
- :cell-style="{textAlign: 'center'}"
- :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
- :data="codePointsTable"
- style="width: 100%"
- >
- <el-table-column
- type="index"
- label="搴忓彿"
- min-width="90"
- />
- <el-table-column
- prop="equipmentPoint"
- label="鐮佺偣缂栫爜"
- min-width="150"
- >
+ <el-table ref="codePointsTable" :cell-style="{ textAlign: 'center' }"
+ :header-cell-style="{ border: '0px', background: '#f5f7fa', color: '#606266', boxShadow: 'inset 0 1px 0 #ebeef5', textAlign: 'center' }"
+ :data="codePointsTable" style="width: 100%">
+ <el-table-column type="index" label="搴忓彿" min-width="90" />
+ <el-table-column prop="equipmentPoint" label="鐮佺偣缂栫爜" min-width="150">
<template slot-scope="scope">
<span v-show="!codePointesTableStatus">{{ scope.row.equipmentPoint }}</span>
<el-input v-show="codePointesTableStatus" v-model="scope.row.equipmentPoint" />
</template>
</el-table-column>
- <el-table-column
- prop="equipmentPointName"
- label="鐮佺偣鍚嶇О"
- min-width="150"
- >
+ <el-table-column prop="equipmentPointName" label="鐮佺偣鍚嶇О" min-width="150">
<template slot-scope="scope">
<span v-show="!codePointesTableStatus">{{ scope.row.equipmentPointName }}</span>
<el-input v-show="codePointesTableStatus" v-model="scope.row.equipmentPointName" />
</template>
</el-table-column>
- <el-table-column
- prop="unit"
- label="鍗曚綅"
- min-width="150"
- >
+ <el-table-column prop="unit" label="鍗曚綅" min-width="150">
<template slot-scope="scope">
<span v-show="!codePointesTableStatus">{{ scope.row.unit }}</span>
<el-input v-show="codePointesTableStatus" v-model="scope.row.unit" />
</template>
</el-table-column>
- <el-table-column
- prop="name"
- label="鏇存柊浜�"
- min-width="100"
- />
- <el-table-column
- prop="updateTime"
- label="鏇存柊鏃ユ湡"
- min-width="120"
- />
- <el-table-column
- prop="descriptiveness"
- label="鎻忚堪"
- min-width="200"
- >
+ <el-table-column prop="name" label="鏇存柊浜�" min-width="100" />
+ <el-table-column prop="updateTime" label="鏇存柊鏃ユ湡" min-width="120" />
+ <el-table-column prop="descriptiveness" label="鎻忚堪" min-width="200">
<template slot-scope="scope">
<span v-show="!codePointesTableStatus">{{ scope.row.descriptiveness }}</span>
<el-input v-show="codePointesTableStatus" v-model="scope.row.descriptiveness" />
@@ -309,54 +216,18 @@
</el-table>
</el-tab-pane>
<el-tab-pane label="璁¢噺淇℃伅" name="measure">
- <el-button :style="{marginBottom: '18px'}" @click="measureFormVisible = true">鏂板璁¢噺淇℃伅</el-button>
- <el-table
- ref="measureTable"
- :cell-style="{textAlign: 'center'}"
- :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
- :data="measureTable"
- style="width: 100%"
- >
- <el-table-column
- type="index"
- label="搴忓彿"
- min-width="90"
- />
- <el-table-column
- prop="name"
- label="璐熻矗浜�"
- min-width="200"
- />
- <el-table-column
- prop="measurement_unit"
- label="璁¢噺鍗曚綅"
- min-width="150"
- />
- <el-table-column
- prop="beginDate"
- label="寮�濮嬫棩鏈�"
- min-width="150"
- />
- <el-table-column
- prop="endDate"
- label="缁撴潫鏃ユ湡"
- min-width="150"
- />
- <el-table-column
- prop="performance_index"
- label="鎬ц兘鎸囨爣"
- min-width="200"
- />
- <el-table-column
- prop="uncertainty"
- label="涓嶇‘瀹氬害"
- min-width="200"
- />
- <el-table-column
- prop="conditions"
- label="缁撴灉"
- min-width="120"
- >
+ <el-button :style="{ marginBottom: '18px' }" @click="measureFormVisible = true">鏂板璁¢噺淇℃伅</el-button>
+ <el-table ref="measureTable" :cell-style="{ textAlign: 'center' }"
+ :header-cell-style="{ border: '0px', background: '#f5f7fa', color: '#606266', boxShadow: 'inset 0 1px 0 #ebeef5', textAlign: 'center' }"
+ :data="measureTable" style="width: 100%">
+ <el-table-column type="index" label="搴忓彿" min-width="90" />
+ <el-table-column prop="name" label="璐熻矗浜�" min-width="200" />
+ <el-table-column prop="measurement_unit" label="璁¢噺鍗曚綅" min-width="150" />
+ <el-table-column prop="beginDate" label="寮�濮嬫棩鏈�" min-width="150" />
+ <el-table-column prop="endDate" label="缁撴潫鏃ユ湡" min-width="150" />
+ <el-table-column prop="performance_index" label="鎬ц兘鎸囨爣" min-width="200" />
+ <el-table-column prop="uncertainty" label="涓嶇‘瀹氬害" min-width="200" />
+ <el-table-column prop="conditions" label="缁撴灉" min-width="120">
<template slot-scope="scope">
{{ scope.row.result }}
<!-- <el-tag
@@ -365,26 +236,15 @@
>{{ scope.row.result === 0 ? '鏈悓鎰�' : '宸插悓鎰�' }}</el-tag> -->
</template>
</el-table-column>
- <el-table-column
- prop="remarks"
- label="澶囨敞"
- min-width="200"
- />
+ <el-table-column prop="remarks" label="澶囨敞" min-width="200" />
</el-table>
</el-tab-pane>
</el-tabs>
</div>
</el-drawer>
<!-- 娣诲姞浠櫒/淇敼浠櫒淇℃伅 -->
- <el-drawer
- ref="addDrawer"
- :title="equipmentDetail.id?'淇敼浠櫒璁惧淇℃伅':'鏂板浠櫒璁惧'"
- :append-to-body="true"
- :visible.sync="addDrawerVisible"
- class="addDrawer"
- size="40%"
- @close="closeAddOrChangeDrawer"
- >
+ <el-drawer ref="addDrawer" :title="equipmentDetail.id ? '淇敼浠櫒璁惧淇℃伅' : '鏂板浠櫒璁惧'" :append-to-body="true"
+ :visible.sync="addDrawerVisible" class="addDrawer" size="40%" @close="closeAddOrChangeDrawer">
<div class="demo-drawer__content">
<el-form label-position="top" :model="equipmentform">
<el-row :gutter="50">
@@ -407,20 +267,10 @@
</el-col>
<el-col :span="11">
<el-form-item label="鐘舵�侊細" label-width="80">
- <el-select
- v-model="equipmentform.conditions"
- clearable
- filterable
- :allow-create="true"
- placeholder="璇烽�夋嫨浠櫒璁惧鐘舵��"
- style="width:100%"
- >
- <el-option
- v-for="item in conditionsOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- />
+ <el-select v-model="equipmentform.conditions" clearable filterable :allow-create="true"
+ placeholder="璇烽�夋嫨浠櫒璁惧鐘舵��" style="width:100%">
+ <el-option v-for="item in conditionsOptions" :key="item.value" :label="item.label"
+ :value="item.value" />
</el-select>
</el-form-item>
</el-col>
@@ -457,42 +307,23 @@
</el-col>
<el-col :span="11">
<el-form-item label="鍒拌揣鏃ユ湡锛�" label-width="80">
- <el-date-picker
- v-model="equipmentform.arrivalDate"
- type="date"
- placeholder="璇烽�夋嫨鍒拌揣鏃ユ湡"
- style="width:100%"
- />
+ <el-date-picker v-model="equipmentform.arrivalDate" type="date" placeholder="璇烽�夋嫨鍒拌揣鏃ユ湡"
+ style="width:100%" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="50">
<el-col :span="11">
<el-form-item label="楠屾敹鏃ユ湡锛�" label-width="80">
- <el-date-picker
- v-model="equipmentform.acceptanceDate"
- type="date"
- placeholder="璇烽�夋嫨楠屾敹鏃ユ湡"
- style="width:100%"
- />
+ <el-date-picker v-model="equipmentform.acceptanceDate" type="date" placeholder="璇烽�夋嫨楠屾敹鏃ユ湡"
+ style="width:100%" />
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item label="淇濈浜猴細" label-width="80">
- <el-select
- v-model="equipmentform.userId"
- clearable
- filterable
- :allow-create="true"
- placeholder="璇烽�夋嫨淇濈浜�"
- style="width:100%"
- >
- <el-option
- v-for="item in userOpetions"
- :key="item.id"
- :label="item.label"
- :value="item.value"
- />
+ <el-select v-model="equipmentform.userId" clearable filterable :allow-create="true" placeholder="璇烽�夋嫨淇濈浜�"
+ style="width:100%">
+ <el-option v-for="item in userOpetions" :key="item.id" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
</el-col>
@@ -511,7 +342,7 @@
</el-form-item>
</el-col>
</el-row>
- <el-row v-show="equipmentform.equipmentMeasurement===1" :gutter="50">
+ <el-row v-show="equipmentform.equipmentMeasurement === 1" :gutter="50">
<el-col :span="12">
<el-form-item label="璁¢噺鎴鏈夋晥鏈燂細" label-width="80">
<el-input v-model="equipmentform.termValidity" type="number" />
@@ -521,13 +352,8 @@
<el-row :gutter="50">
<el-col :span="11">
<el-form-item label="鎻忚堪锛�" label-width="80">
- <el-input
- v-model="equipmentform.descriptiveness"
- type="textarea"
- :rows="2"
- placeholder="璇疯緭鍏ュ唴瀹�"
- style="width:217%"
- />
+ <el-input v-model="equipmentform.descriptiveness" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�"
+ style="width:217%" />
</el-form-item>
</el-col>
</el-row>
@@ -544,20 +370,9 @@
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="璐熻矗浜�">
- <el-select
- v-model="measureForm.userId"
- clearable
- filterable
- :allow-create="true"
- placeholder="璐熻矗浜�"
- style="width:100%"
- >
- <el-option
- v-for="item in userOpetions"
- :key="item.id"
- :label="item.label"
- :value="item.value"
- />
+ <el-select v-model="measureForm.userId" clearable filterable :allow-create="true" placeholder="璐熻矗浜�"
+ style="width:100%">
+ <el-option v-for="item in userOpetions" :key="item.id" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
</el-col>
@@ -570,13 +385,8 @@
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="妫�瀹氭湁鏁堟湡">
- <el-date-picker
- v-model="measureForm.date"
- type="daterange"
- range-separator="鑷�"
- start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡"
- />
+ <el-date-picker v-model="measureForm.date" type="daterange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡" />
</el-form-item>
</el-col>
</el-row>
@@ -588,20 +398,9 @@
</el-col>
<el-col :span="12">
<el-form-item label="缁撴灉">
- <el-select
- v-model="measureForm.result"
- clearable
- filterable
- :allow-create="true"
- placeholder="璐熻矗浜�"
- style="width:100%"
- >
- <el-option
- v-for="item in resultOptions"
- :key="item.id"
- :label="item.label"
- :value="item.value"
- />
+ <el-select v-model="measureForm.result" clearable filterable :allow-create="true" placeholder="璐熻矗浜�"
+ style="width:100%">
+ <el-option v-for="item in resultOptions" :key="item.id" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
</el-col>
@@ -609,36 +408,21 @@
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="鎬ц兘鎸囨爣">
- <el-input
- v-model="measureForm.performanceIndex"
- type="textarea"
- :rows="2"
- placeholder="璇疯緭鍏ュ唴瀹�"
- />
+ <el-input v-model="measureForm.performanceIndex" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="澶囨敞">
- <el-input
- v-model="measureForm.remarks"
- type="textarea"
- :rows="2"
- placeholder="璇疯緭鍏ュ唴瀹�"
- />
+ <el-input v-model="measureForm.remarks" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="">
- <el-upload
- class="upload-demo"
- action="#"
- :on-change="handleUpload"
- :auto-upload="false"
- >
+ <el-upload class="upload-demo" action="#" :on-change="handleUpload" :auto-upload="false">
<el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
</el-upload>
</el-form-item>
@@ -652,11 +436,7 @@
</span>
</el-dialog>
<!-- 鍒犻櫎浠櫒寮瑰嚭妗� -->
- <el-dialog
- title="鎻愮ず"
- :visible.sync="deletedialogVisible"
- width="30%"
- :before-close="handleClose">
+ <el-dialog title="鎻愮ず" :visible.sync="deletedialogVisible" width="30%">
<span>纭畾鍒犻櫎璇ヤ华鍣ㄥ悧锛�</span>
<span slot="footer" class="dialog-footer">
<el-button @click="deletedialogVisible = false">鍙� 娑�</el-button>
@@ -667,10 +447,12 @@
</template>
<script>
-import { getClassifyList, getInstrumentList,
+import {
+ getClassifyList, getInstrumentList,
addInstrumentUser, addInstrument, getInstrumentDetail,
getEquipmentPointList, addEquipmentPoint,
- getMetricalInformationList, changeInstrument, addMetricalInformation, deleteInstrument } from '@/api/laboratory/ledger'
+ getMetricalInformationList, changeInstrument, addMetricalInformation, deleteInstrument
+} from '@/api/laboratory/ledger'
import { parseTime } from '@/utils/index'
export default {
filters: {
@@ -1115,15 +897,30 @@
// console.log(row.id)
await deleteInstrument({ instrumentId: this.instrumentId })
this.deletedialogVisible = false
+ },
+ submitTreeForm(formName) {
+ this.$refs[formName].validate((valid) => {
+ if (valid) {
+ alert('submit!');
+ } else {
+ console.log('error submit!!');
+ return false;
+ }
+ });
+ },
+ resetTreeForm(formName) {
+ this.$refs[formName].resetFields();
+ this.addClassVisible=false
}
}
}
</script>
<style lang="scss" scoped>
-.demo-drawer__content{
+.demo-drawer__content {
margin-left: 50px;
}
+
.demo-drawer__footer {
display: flex;
justify-content: space-between;
@@ -1143,148 +940,174 @@
margin-right: 60px;
margin-bottom: 24px;
}
-.ledger-main{
+
+.ledger-main {
width: 100%;
height: 100%;
- // 椤甸潰澶撮儴鏉′欢鎼滅储
- .page-header-search{
+
+ // 椤甸潰澶撮儴鏉′欢鎼滅储
+ .page-header-search {
background: #fff;
display: flex;
justify-content: space-between;
padding: 0 24px 12px 24px;
- .search-bar{
- .el-radio-button.is-active{
+
+ .search-bar {
+ .el-radio-button.is-active {
color: #409EFF !important;
background: #ecf5ff !important;
border-color: #b3d8ff !important;
}
- .el-form{
- .el-form-item{
- margin-bottom: 0px !important;
- .el-input{
- width: 360px;
- }
+
+ .el-form {
+ .el-form-item {
+ margin-bottom: 0px !important;
+
+ .el-input {
+ width: 360px;
+ }
}
}
}
}
-// 椤甸潰涓績鍐呭鍖哄煙
- .content-main{
+ // 椤甸潰涓績鍐呭鍖哄煙
+ .content-main {
display: flex;
height: 100%;
min-height: calc(100vh - 88px);
padding: 15px;
- >div{
+
+ >div {
padding: 20px;
background: #fff;
}
- .library-bom{
+
+ .library-bom {
flex: 2;
margin-right: 12px;
- .bom-item-search{
+
+ .bom-item-search {
margin-bottom: 12px;
- ::v-deep .el-input{
- input{
+
+ ::v-deep .el-input {
+ input {
height: 33px;
line-height: 33px;
}
}
}
- .bom-item-search .el-row{
- // display: flex;
- .el-col{
- text-align: right;
- }
- }
+
+ .bom-item-search .el-row {
+
+ // display: flex;
+ .el-col {
+ text-align: right;
+ }
+ }
+
.el-tree {
margin-top: 12px;
}
}
- .library-table{
+
+ .library-table {
flex: 8;
max-width: 80%;
margin-left: 12px;
display: flex;
flex-direction: column;
- .table-box{
- margin-top: 30px;
+
+ .table-box {
+ margin-top: 30px;
+ flex: 1;
+ background: #fff;
+ display: flex;
+ flex-direction: column;
+
+ .el-table {
flex: 1;
- background: #fff;
+ }
+
+ >div:nth-child(2) {
display: flex;
- flex-direction: column;
- .el-table {
- flex: 1;
- }
- >div:nth-child(2){
- display: flex;
- justify-content: end;
- margin: 10px 0;
- }
+ justify-content: end;
+ margin: 10px 0;
+ }
}
}
}
}
-.addDrawer{
- ::v-deep .el-drawer__body{
- // padding: 24px !important;
- overflow-y: scroll;
- overflow-x: hidden;
- }
+
+.addDrawer {
+ ::v-deep .el-drawer__body {
+ // padding: 24px !important;
+ overflow-y: scroll;
+ overflow-x: hidden;
+ }
}
-.detailDrawer{
- ::v-deep .el-drawer__body{
- padding: 24px !important;
- overflow-y: scroll;
- }
- .detail-info{
+
+.detailDrawer {
+ ::v-deep .el-drawer__body {
+ padding: 24px !important;
+ overflow-y: scroll;
+ }
+
+ .detail-info {
background: #fff;
box-shadow: rgba(100, 100, 111, 0.2) 0px 5px 15px;
margin: 0;
margin-bottom: 12px;
border-radius: 6px;
overflow: hidden;
- .tips-main{
+
+ .tips-main {
padding: 10px 20px 0 20px;
display: flex;
justify-content: space-between;
align-items: center;
height: 50px;
- .tips-btn{
+
+ .tips-btn {
margin-bottom: 10px;
}
- .tips{
- height: 100%;
- display: flex;
- height: 24px;
- align-items: center;
- font-size: 16px;
- >span{
- display: inline-block;
- margin-right: 10px;
- width: 4px;
- height: 16px;
- background: #0077DB;
- }
- >div{
+
+ .tips {
height: 100%;
- line-height: 26px;
- }
- .el-button{
- padding: 0;
- }
+ display: flex;
+ height: 24px;
+ align-items: center;
+ font-size: 16px;
+
+ >span {
+ display: inline-block;
+ margin-right: 10px;
+ width: 4px;
+ height: 16px;
+ background: #0077DB;
+ }
+
+ >div {
+ height: 100%;
+ line-height: 26px;
+ }
+
+ .el-button {
+ padding: 0;
+ }
}
}
// 鍩烘湰淇℃伅鍜屼紒涓氫俊鎭殑姣忎竴涓俊鎭」鏍峰紡
- .message{
+ .message {
padding: 0px 20px 8px 20px;
display: flex;
flex-wrap: wrap;
border-top: 1px solid #F2F6FC;
- >div{
+
+ >div {
flex: 30%;
max-width: 30%;
padding: 8px;
@@ -1294,22 +1117,27 @@
height: 40px;
display: flex;
align-items: center;
- >span{
+
+ >span {
color: #303133;
font-size: 14px;
- >i{
+
+ >i {
margin-right: 8px;
}
}
}
}
}
- }
-.measureForm{
+}
+
+.measureForm {
+
//
- .el-form-item{
+ .el-form-item {
+
//
- .el-date-editor{
+ .el-date-editor {
width: 100%;
}
}
diff --git a/src/views/laboratory/personnel/index.vue b/src/views/laboratory/personnel/index.vue
index 3312928..26998b3 100644
--- a/src/views/laboratory/personnel/index.vue
+++ b/src/views/laboratory/personnel/index.vue
@@ -2,17 +2,14 @@
<div class="personnel-main ">
<div class="page-header-search">
<div class="search-bar">
- <el-form ref="form" inline="true" :model="searchData">
+ <el-form ref="form" :inline="true">
<el-form-item>
- <el-input
- v-model="keyword"
- placeholder="璇疯緭鍏ヤ汉鍛樺悕绉�"
- >
+ <el-input v-model="keyword" placeholder="璇疯緭鍏ヤ汉鍛樺悕绉�">
<i slot="prefix" class="el-input__icon el-icon-search" />
</el-input>
</el-form-item>
<el-form-item>
- <el-button type="primary" @click="searchData()">鏌ヨ</el-button>
+ <el-button type="primary" @click="getData()">鏌ヨ</el-button>
<el-button type="primary" plain @click="resetData()">閲嶇疆</el-button>
<!-- <el-button type="text">楂樼骇鎼滅储<i class="el-icon-arrow-down el-icon--right" /></el-button> -->
</el-form-item>
@@ -52,64 +49,24 @@
</div>
<div class="content-main">
<div class="personner-table">
- <el-table
- ref="personnerlTable"
- :height="700"
- :max-height="700"
- :cell-style="{textAlign: 'center'}"
- :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
- :data="personnerlTable"
- style="width: 100%"
- >
- <el-table-column
- prop="username"
- label="瑙掕壊鍚嶇О"
- min-width="120"
- />
- <el-table-column
- prop="roleName"
- label="瑙掕壊鏉冮檺"
- min-width="120"
- />
- <el-table-column
- prop="age"
- label="骞撮緞"
- min-width="150"
- />
- <el-table-column
- prop="createTime"
- label="鍒涘缓鏃堕棿"
- min-width="180"
- />
- <el-table-column
- prop="phone"
- label="鐢佃瘽"
- min-width="200"
- />
- <el-table-column
- prop="email"
- label="閭"
- min-width="200"
- />
- <el-table-column
- prop="jobState"
- label="鍦ㄨ亴鐘舵��"
- min-width="120"
- :filters="[{ text: 0, value: 0 }, { text: 1, value: 1 }]"
- :filter-method="filterTag"
- filter-placement="bottom-end"
- >
+ <el-table ref="personnerlTable" :max-height="700" :cell-style="{ textAlign: 'center' }"
+ :header-cell-style="{ border: '0px', background: '#f5f7fa', color: '#606266', boxShadow: 'inset 0 1px 0 #ebeef5', textAlign: 'center' }"
+ :data="personnerlTable" style="width: 100%">
+ <el-table-column prop="username" label="瑙掕壊鍚嶇О" min-width="120" />
+ <el-table-column prop="roleName" label="瑙掕壊鏉冮檺" min-width="120" />
+ <el-table-column prop="age" label="骞撮緞" min-width="150" />
+ <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" min-width="180" />
+ <el-table-column prop="phone" label="鐢佃瘽" min-width="200" />
+ <el-table-column prop="email" label="閭" min-width="200" />
+ <el-table-column prop="jobState" label="鍦ㄨ亴鐘舵��" min-width="120"
+ :filters="[{ text: 0, value: 0 }, { text: 1, value: 1 }]" :filter-method="filterTag"
+ filter-placement="bottom-end">
<template slot-scope="scope">
- <el-tag
- :type="scope.row.businessStatus === 0 ? 'primary' : 'success'"
- disable-transitions
- >{{ scope.row.businessStatus === 0 ? '鏈悓鎰�' : '宸插悓鎰�' }}</el-tag>
+ <el-tag :type="scope.row.jobState === 0 ? 'danger' : 'success'" disable-transitions>{{
+ scope.row.jobState === 0 ? '绂诲矖' : '鍦ㄨ亴' }}</el-tag>
</template>
</el-table-column>
- <el-table-column
- label="鎿嶄綔"
- min-width="120"
- >
+ <el-table-column label="鎿嶄綔" min-width="120">
<template slot-scope="scope">
<el-button type="text" size="small" @click="handleClick(scope.row)">缂栬緫</el-button>
<!-- <el-button type="text" size="small">缂栬緫</el-button> -->
@@ -118,15 +75,9 @@
</el-table>
<div>
<!-- 鍒嗛〉鍣� -->
- <el-pagination
- :current-page="currentPage"
- :page-sizes="[100, 200, 300, 400]"
- :page-size="pageSize"
- layout="total, sizes, prev, pager, next, jumper"
- :total="this.personnerlTable.length"
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- />
+ <el-pagination :current-page="currentPage" :page-sizes="[100, 200, 300, 400]" :page-size="pageSize"
+ layout="total, sizes, prev, pager, next, jumper" :total="this.personnerlTable.length"
+ @size-change="handleSizeChange" @current-change="handleCurrentChange" />
</div>
</div>
</div>
@@ -134,8 +85,8 @@
</template>
<script>
-import axios from 'axios'
-axios.defaults.baseURL = 'http://192.168.110.167:1234'
+import { get, post } from '@/api/util/requestUtil';
+import urlInfo from '../../../api/urlEnum/personnel.js'
export default {
data() {
return {
@@ -146,7 +97,7 @@
filteredpersonnerlTable: [],
currentindex: 1,
currentPage: 1, // 褰撳墠椤电爜
- total: 20, // 鎬绘潯鏁�
+ total: 0, // 鎬绘潯鏁�
pageSize: 100, // 姣忛〉鐨勬暟鎹潯鏁�
personData: [], // 鐢ㄦ潵瀛樻斁鎺ュ彛浼犺繃鏉ョ殑浜哄憳鍒楄〃鏁版嵁
dialogFormVisible: false,
@@ -193,24 +144,23 @@
this.currentPage = 1
this.pageSize = val
},
+ filterTag() {
+ console.log(11);
+ },
// 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
handleCurrentChange(val) {
console.log(`褰撳墠椤�: ${val}`)
this.currentPage = val
},
- getData() {
- axios.get('/user/list_new_personnel', {
- params: {
- pageNo: 0,
- pageSize: 20
- }
- }).then(res => {
- // console.log(res)
- this.personData = res.data.data.row
- this.personnerlTable = this.personData
- }).catch(res => {
- console.log('error')
- })
+ async getData() {
+ let data = {
+ pageNo: 0,
+ pageSize: 20,
+ name: this.keyword
+ }
+ let res = await get(urlInfo.url.list_new_personnel, data);
+ this.personnerlTable=res.data.row
+ this.total=res.data.total
},
searchData() {
this.filteredpersonnerlTable = this.personnerlTable.filter((item) => {
@@ -245,36 +195,41 @@
return false
}
})
- }
+ },
}
}
</script>
<style lang="scss" scoped>
-.personnel-main{
+.personnel-main {
+
// width: 100%;
// height: 100%;
- .page-header-search{
+ .page-header-search {
background: #fff;
display: flex;
justify-content: space-between;
padding: 0 24px 12px 24px;
- .search-bar{
- .el-form{
- .el-form-item{
- margin-bottom: 0px !important;
- .el-input{
- width: 360px;
- }
+
+ .search-bar {
+ .el-form {
+ .el-form-item {
+ margin-bottom: 0px !important;
+
+ .el-input {
+ width: 360px;
+ }
}
}
}
}
- .personner-table{
+
+ .personner-table {
background: #fff;
padding: 20px 20px 10px 20px;
- >div:nth-child(2){
+
+ >div:nth-child(2) {
display: flex;
justify-content: end;
margin: 10px 0;
--
Gitblit v1.9.3