From c13670bb28b8e0c2b68974aa446cd6e98691ef39 Mon Sep 17 00:00:00 2001
From: yuyu <1981343953@qq.com>
Date: 星期五, 04 八月 2023 13:42:37 +0800
Subject: [PATCH] 导航栏,报检管理
---
src/views/laboratory/personnel/index.vue | 173 ++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 144 insertions(+), 29 deletions(-)
diff --git a/src/views/laboratory/personnel/index.vue b/src/views/laboratory/personnel/index.vue
index 6405a16..3312928 100644
--- a/src/views/laboratory/personnel/index.vue
+++ b/src/views/laboratory/personnel/index.vue
@@ -5,21 +5,49 @@
<el-form ref="form" inline="true" :model="searchData">
<el-form-item>
<el-input
+ v-model="keyword"
placeholder="璇疯緭鍏ヤ汉鍛樺悕绉�"
- v-model="searchData.keyword"
>
<i slot="prefix" class="el-input__icon el-icon-search" />
</el-input>
</el-form-item>
<el-form-item>
- <el-button type="primary">鏌ヨ</el-button>
- <el-button type="primary" plain>閲嶇疆</el-button>
+ <el-button type="primary" @click="searchData()">鏌ヨ</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>
</el-form>
</div>
<div class="serve-btn">
- <el-button type="primary" icon="el-icon-plus">鏂板浜哄憳</el-button>
+ <el-button type="primary" icon="el-icon-plus" @click="dialogFormVisible = true">鏂板浜哄憳</el-button>
+
+ <el-dialog title="鏂板浜哄憳" :visible.sync="dialogFormVisible" width="30%">
+ <el-form :model="form" :rules="rules">
+ <el-form-item label="璐﹀彿" :label-width="formLabelWidth" prop="account">
+ <el-input v-model="form.account" autocomplete="off" />
+ </el-form-item>
+ <el-form-item label="骞撮緞" :label-width="formLabelWidth">
+ <el-input v-model="form.age" autocomplete="off" />
+ </el-form-item>
+ <el-form-item label="閭" :label-width="formLabelWidth" prop="email">
+ <el-input v-model="form.email" autocomplete="off" />
+ </el-form-item>
+ <el-form-item label="鍚嶅瓧" :label-width="formLabelWidth" prop="name">
+ <el-input v-model="form.name" autocomplete="off" />
+ </el-form-item>
+ <el-form-item label="鐢佃瘽" :label-width="formLabelWidth" prop="phone">
+ <el-input v-model="form.phone" autocomplete="off" />
+ </el-form-item>
+
+ <el-form-item label="鏉冮檺" :label-width="formLabelWidth" prop="role_id">
+ <el-input v-model="form.role_id" autocomplete="off" />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="dialogFormVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitForm()">纭� 瀹�</el-button>
+ </div>
+ </el-dialog>
</div>
</div>
<div class="content-main">
@@ -34,12 +62,12 @@
style="width: 100%"
>
<el-table-column
- prop="roleName"
+ prop="username"
label="瑙掕壊鍚嶇О"
min-width="120"
/>
<el-table-column
- prop="rolePermissions"
+ prop="roleName"
label="瑙掕壊鏉冮檺"
min-width="120"
/>
@@ -49,7 +77,7 @@
min-width="150"
/>
<el-table-column
- prop="creatTime"
+ prop="createTime"
label="鍒涘缓鏃堕棿"
min-width="180"
/>
@@ -59,12 +87,12 @@
min-width="200"
/>
<el-table-column
- prop="mailbox"
+ prop="email"
label="閭"
min-width="200"
/>
<el-table-column
- prop="incumbentStatus"
+ prop="jobState"
label="鍦ㄨ亴鐘舵��"
min-width="120"
:filters="[{ text: 0, value: 0 }, { text: 1, value: 1 }]"
@@ -83,21 +111,22 @@
min-width="120"
>
<template slot-scope="scope">
- <el-button @click="handleClick(scope.row)" type="text" size="small">缂栬緫</el-button>
+ <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
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[100, 200, 300, 400]"
- :page-size="100"
+ :page-size="pageSize"
layout="total, sizes, prev, pager, next, jumper"
- :total="400">
- </el-pagination>
+ :total="this.personnerlTable.length"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
</div>
</div>
</div>
@@ -105,34 +134,120 @@
</template>
<script>
+import axios from 'axios'
+axios.defaults.baseURL = 'http://192.168.110.167:1234'
export default {
data() {
return {
- currentPage: 1,
- searchData: {
- keyword: ''
- },
+ keyword: '',
personnerlTable: [
- {
- roleName: '寮犱笁',
- rolePermissions: '绠$悊鍛�',
- age: '18',
- creatTime: '2023-07-07',
- phone: '138888888',
- mailbox: '138888888@qq.com',
- incumbentStatus: '1'
- }
- ]
+
+ ],
+ filteredpersonnerlTable: [],
+ currentindex: 1,
+ currentPage: 1, // 褰撳墠椤电爜
+ total: 20, // 鎬绘潯鏁�
+ pageSize: 100, // 姣忛〉鐨勬暟鎹潯鏁�
+ personData: [], // 鐢ㄦ潵瀛樻斁鎺ュ彛浼犺繃鏉ョ殑浜哄憳鍒楄〃鏁版嵁
+ dialogFormVisible: false,
+ form: {
+ account: '',
+ age: '',
+ email: '',
+ name: '',
+ phone: '',
+ role_id: ''
+ },
+ formLabelWidth: '100px',
+ rules: {
+ account: [
+ {
+ required: true, message: '璇疯緭鍏ヨ处鍙�', trigger: 'blur'
+ }
+ ],
+ name: [{
+ required: true, message: '璇疯緭鍏ュ悕瀛�', trigger: 'blur'
+ }],
+ phone: [
+ // { required: true, message: '璇疯緭鍏�11浣嶇數璇濆彿鐮�', trigger: 'blur' },
+ { pattern: /^1[34578]\d{9}$/, message: '闈炴硶鎵嬫満鍙风爜', trigger: 'blur' }
+ ],
+ email: [
+ // { required: true, message: '璇疯緭鍏ラ偖绠卞湴鍧�', trigger: 'blur' },
+ { type: 'email', message: '闈炴硶閭鍦板潃', trigger: ['blur', 'change'] }
+ ],
+ role_id: [
+ { required: true, message: '璇疯緭鍏ユ潈闄�(0鎴�1)', trigger: 'blur' }
+
+ ]
+ }
}
},
+ mounted() {
+ this.getData()
+ },
methods: {
+ // 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
handleSizeChange(val) {
console.log(`姣忛〉 ${val} 鏉)
+ this.currentPage = 1
+ this.pageSize = val
},
+ // 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
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')
+ })
+ },
+ searchData() {
+ this.filteredpersonnerlTable = this.personnerlTable.filter((item) => {
+ return item.username === this.keyword
+ }
+ )
+ this.personnerlTable = this.filteredpersonnerlTable
+ },
+ resetData() {
+ // console.log("111111")
+ this.personnerlTable = this.personData
+ this.keyword = ''
+ },
+ // 鎻愪氦鏂板浜哄憳琛ㄥ崟
+ submitForm() {
+ // Handle form submission here
+ // console.log(this.form);
+ // POST璇锋眰
+ this.$refs.form.validate((valid) => {
+ if (valid) {
+ this.dialogFormVisible = false
+ axios.post('/user/add_new_personnel', this.form)
+ .then(response => {
+ console.log(response)
+ // this.dialogVisible = false;
+ })
+ .catch(error => {
+ console.error(error)
+ })
+ } else {
+ console.log('error submit!!')
+ return false
+ }
+ })
}
}
+
}
</script>
--
Gitblit v1.9.3