YangJian0701 před 2 roky
rodič
revize
c96d54ac85
4 změnil soubory, kde provedl 346 přidání a 44 odebrání
  1. 1 0
      package.json
  2. 8 0
      src/main.js
  3. 116 38
      src/views/ManagingUsers/index.vue
  4. 221 6
      src/views/companyManagement/index.vue

+ 1 - 0
package.json

@@ -14,6 +14,7 @@
     "sass-loader": "^13.2.0",
     "style-loader": "^3.3.1",
     "vue": "^2.6.14",
+    "vue-elementui-skeleton": "^1.0.2",
     "vue-router": "^3.2.0",
     "vuex": "^3.6.2",
     "vuex-persistedstate": "^4.1.0"

+ 8 - 0
src/main.js

@@ -4,6 +4,14 @@ import router from './router/index.js';
 import store from "./store";
 import ElementUI from 'element-ui';
 import 'element-ui/lib/theme-chalk/index.css';
+import VueElementUISkeleton from 'vue-elementui-skeleton';
+
+Vue.use(VueElementUISkeleton, {
+    directiveName: 'skeleton',
+    rows: 10,
+    radius: 3,
+    // bg: 'red'
+});
 Vue.use(ElementUI);
 Vue.config.productionTip = false
 

+ 116 - 38
src/views/ManagingUsers/index.vue

@@ -1,45 +1,74 @@
 <template>
-	<div class="ManagingUsers" style="display: none;" :style="{display: block}">
+	<div class="ManagingUsers">
 		<div class="ManagingUsers1">
 			<!-- <el-button type="primary" icon="el-icon-search">搜索</el-button> -->
 			<div class="ManagingUsers1-L">
-				<el-button type="primary" icon="el-icon-plus">新增用户</el-button>
+				<el-button type="primary" icon="el-icon-plus" @click="dialog=true">新增用户</el-button>
 			</div>
 			<div class="ManagingUsers1-R">
 				<div class="ManagingUsers1-Rtx">
 					搜索:
 				</div>
-				<el-input v-model="page.name" placeholder="请输入内容" clearable></el-input>
+				<el-input v-model="page.name" placeholder="请输入内容" @keyup.enter.native="search" clearable></el-input>
 			</div>
 		</div>
 		<div class="ManagingUsers2">
-			<el-table :data="tableData" border>
-				<el-table-column label="日期" width="180">
+			<el-table :data="tableData" border size="small">
+				<el-table-column label="名称" width="180">
 					<template slot-scope="scope">
-						<i class="el-icon-time"></i>
-						<span style="margin-left: 10px">{{ scope.row.date }}</span>
+						<span>{{ scope.row.date }}</span>
 					</template>
 				</el-table-column>
-				<el-table-column label="姓名" width="180">
+				<el-table-column label="权限" width="180">
 					<template slot-scope="scope">
 						{{ scope.row.name }}
 					</template>
 				</el-table-column>
 				<el-table-column label="操作">
 					<template slot-scope="scope">
-						<el-button size="mini" @click="handleEdit(scope.row)">编辑</el-button>
-						<el-button size="mini" type="danger" @click="handleDelete(scope.row)">删除
-						</el-button>
+						<div style="display: flex;">
+							<el-button size="mini" @click="handleEdit(scope.row)">编辑</el-button>
+							<el-button slot="reference" size="mini" type="danger"
+								@click="handleDelete(scope.row)">删除
+							</el-button>
+						</div>
 					</template>
 				</el-table-column>
 			</el-table>
 		</div>
 		<div class="ManagingUsers3">
-			<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
+			<el-pagination @current-change="handleCurrentChange"
 				:current-page="page.pagez" :page-size="page.page_size" layout="total, prev, pager, next, jumper"
 				:total="total">
 			</el-pagination>
 		</div>
+		<el-drawer :title="title" :visible.sync="dialog" direction="rtl" :wrapperClosable="false" ref="drawer">
+			<div class="demo-drawers">
+				<el-form :model="form">
+					<el-form-item label="名称" :label-width="LabelWidth">
+						<el-input v-model="form.name" autocomplete="off"></el-input>
+					</el-form-item>
+					<el-form-item label="权限" :label-width="LabelWidth">
+						<el-select v-model="form.region" placeholder="请选择活动区域">
+							<el-option label="区域一" value="shanghai"></el-option>
+							<el-option label="区域二" value="beijing"></el-option>
+						</el-select>
+					</el-form-item>
+					<el-form-item label="用户" :label-width="LabelWidth">
+						<el-input v-model="form.name" autocomplete="off"></el-input>
+					</el-form-item>
+					<el-form-item label="密码" :label-width="LabelWidth">
+						<el-input v-model="form.paw" autocomplete="off"></el-input>
+					</el-form-item>
+					<el-form-item :label-width="LabelWidth">
+						<el-button type="primary" @click="$refs.drawer.closeDrawer()">
+							确 定
+						</el-button>
+						<el-button @click="dialog=false">取 消</el-button>
+					</el-form-item>
+				</el-form>
+			</div>
+		</el-drawer>
 	</div>
 </template>
 
@@ -48,6 +77,10 @@
 		name: 'ManagingUsers',
 		data() {
 			return {
+				title: '新增',
+				LabelWidth: "40px",
+				loading: false,
+				dialog: false,
 				total: 30,
 				page: {
 					pagez: 1,
@@ -55,36 +88,74 @@
 					name: ''
 				},
 				tableData: [{
-					date: '2016-05-02',
-					name: '王小虎',
-					address: '上海市普陀区金沙江路 1518 弄'
+					date: '张三1',
+					name: '数据采集工程师',
+				}, {
+					date: '张三2',
+					name: '冷链负责人',
+				}, {
+					date: '张三3',
+					name: '冷链负责人',
+				}, {
+					date: '张三4',
+					name: '冷链负责人',
+				}, {
+					date: '张三2',
+					name: '冷链负责人',
+				}, {
+					date: '张三3',
+					name: '冷链负责人',
+				}, {
+					date: '张三4',
+					name: '冷链负责人',
 				}, {
-					date: '2016-05-04',
-					name: '王小虎',
-					address: '上海市普陀区金沙江路 1517 弄'
+					date: '张三2',
+					name: '冷链负责人',
 				}, {
-					date: '2016-05-01',
-					name: '王小虎',
-					address: '上海市普陀区金沙江路 1519 弄'
+					date: '张三3',
+					name: '冷链负责人',
 				}, {
-					date: '2016-05-03',
-					name: '王小虎',
-					address: '上海市普陀区金沙江路 1516 弄'
-				}]
+					date: '张三4',
+					name: '冷链负责人',
+				}],
+				form: {
+					name: '',
+					region: '',
+					paw: '',
+				},
 			}
 		},
 		methods: {
-			handleSizeChange(val) {
-				console.log('每页',val,'条');
+			search() { //回车搜索
+				console.log('搜索', this.page.name);
 			},
 			handleCurrentChange(val) {
-				console.log('当前页',val);
+				this.page.pagez = val
+				console.log('当前页', this.page);
 			},
-			handleEdit(e){
-				console.log('编辑',e);
+			handleEdit(e) {
+				console.log('编辑', e);
+				this.dialog = true
+				this.title = '编辑'
 			},
-			handleDelete(e){
-				console.log('删除',e);
+			handleDelete(e) {
+				console.log('删除', e);
+				this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
+					confirmButtonText: '确定',
+					cancelButtonText: '取消',
+					type: 'warning',
+					center: true
+				}).then(() => {
+					this.$message({
+						type: 'success',
+						message: '删除成功!'
+					});
+				}).catch(() => {
+					this.$message({
+						type: 'info',
+				  message: '已取消删除'
+					});
+				});
 			}
 		}
 	}
@@ -93,21 +164,28 @@
 <style lang="scss" scoped>
 	// 在填充数据之前隐藏
 	[v-cloak] {
-	    display: none;
+		display: none;
+	}
+
+	.demo-drawers {
+		padding: 20px;
 	}
+
 	.ManagingUsers {
 		.ManagingUsers1 {
 			display: flex;
 			justify-content: space-between;
 			align-items: center;
-			.ManagingUsers1-L{
-			}
-			.ManagingUsers1-R{
+
+			.ManagingUsers1-L {}
+
+			.ManagingUsers1-R {
 				display: flex;
 				align-items: center;
 				justify-content: space-between;
-				.ManagingUsers1-Rtx{
-					min-width:45px;
+
+				.ManagingUsers1-Rtx {
+					min-width: 45px;
 					font-size: 14px;
 					color: #909399;
 					user-select: none;

+ 221 - 6
src/views/companyManagement/index.vue

@@ -1,19 +1,234 @@
 <template>
 	<div class="companyManagement">
-		公司管理
+		<div class="companyManagement1">
+			<!-- <el-button type="primary" icon="el-icon-search">搜索</el-button> -->
+			<div class="companyManagement1-L">
+				<el-button type="primary" icon="el-icon-plus" @click="dialog=true">新增公司</el-button>
+			</div>
+			<div class="companyManagement1-R">
+				<div class="companyManagement1-Rtx">
+					搜索:
+				</div>
+				<el-input v-model="page.name" placeholder="请输入公司名称" @keyup.enter.native="search" clearable></el-input>
+			</div>
+		</div>
+		<div class="companyManagement2">
+			<el-table :data="tableData" border size="small">
+				<el-table-column label="公司名称" width="180">
+					<template slot-scope="scope">
+						<span>{{ scope.row.date }}</span>
+					</template>
+				</el-table-column>
+				<el-table-column label="是否隐藏" width="180">
+					<template slot-scope="scope">
+						{{ scope.row.name }}
+					</template>
+				</el-table-column>
+				<el-table-column label="操作">
+					<template slot-scope="scope">
+						<el-button size="mini" @click="handleEdit(scope.row)">任务管理</el-button>
+					</template>
+				</el-table-column>
+			</el-table>
+		</div>
+		<div class="companyManagement3">
+			<el-pagination @current-change="handleCurrentChange" :current-page="page.pagez" :page-size="page.page_size"
+				layout="total, prev, pager, next, jumper" :total="total">
+			</el-pagination>
+		</div>
+		<el-drawer title="添加公司" :visible.sync="dialog" direction="rtl" :wrapperClosable="false" ref="drawer">
+			<div class="demo-drawers">
+				<el-form :model="form">
+					<el-form-item label="名称" :label-width="LabelWidth">
+						<el-input v-model="form.name" autocomplete="off"></el-input>
+					</el-form-item>
+					<el-form-item label="权限" :label-width="LabelWidth">
+						<el-select v-model="form.region" placeholder="请选择活动区域">
+							<el-option label="区域一" value="shanghai"></el-option>
+							<el-option label="区域二" value="beijing"></el-option>
+						</el-select>
+					</el-form-item>
+					<el-form-item label="用户" :label-width="LabelWidth">
+						<el-input v-model="form.name" autocomplete="off"></el-input>
+					</el-form-item>
+					<el-form-item label="密码" :label-width="LabelWidth">
+						<el-input v-model="form.paw" autocomplete="off"></el-input>
+					</el-form-item>
+					<el-form-item :label-width="LabelWidth">
+						<el-button type="primary" @click="$refs.drawer.closeDrawer()">
+							确 定
+						</el-button>
+						<el-button @click="dialog=false">取 消</el-button>
+					</el-form-item>
+				</el-form>
+			</div>
+		</el-drawer>
+		<el-drawer title="任务列表" :visible.sync="Drawer" direction="rtl" :wrapperClosable="false" ref="drawer"
+			size="100%">
+			<div class="demo-drawers">
+				<el-button type="primary" icon="el-icon-plus" @click="innerDrawer=true">添加任务</el-button>
+				<div style="margin-top: 10px;">
+					<el-table :data="tableData" border size="small">
+						<el-table-column label="任务名称" width="180">
+							<template slot-scope="scope">
+								<span>{{ scope.row.date }}</span>
+							</template>
+						</el-table-column>
+						<el-table-column label="流程" width="180">
+							<template slot-scope="scope">
+								{{ scope.row.name }}
+							</template>
+						</el-table-column>
+						<el-table-column label="截止时间" width="180">
+							<template slot-scope="scope">
+								{{ scope.row.time }}
+							</template>
+						</el-table-column>
+						<el-table-column label="操作">
+							<template slot-scope="scope">
+								<el-button size="mini" @click="handleEdit(scope.row)">任务管理</el-button>
+							</template>
+						</el-table-column>
+					</el-table>
+				</div>
+			</div>
+			<el-drawer :title="title" :append-to-body="true" :before-close="handleClose" :visible.sync="innerDrawer">
+				<div style="padding: 20px;">
+					<el-form :model="form">
+						<el-form-item label="任务名称" label-width="70px">
+							<el-input v-model="form.name" autocomplete="off"></el-input>
+						</el-form-item>
+						<el-form-item label="截至时间" label-width="70px">
+							<el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 100%;"></el-date-picker>
+						</el-form-item>
+						<el-form-item label="任务模板" label-width="70px">
+							<el-select v-model="form.region" placeholder="请选择活动区域">
+								<el-option label="区域一" value="shanghai"></el-option>
+								<el-option label="区域二" value="beijing"></el-option>
+							</el-select>
+						</el-form-item>
+						<el-form-item label="数据采集" label-width="70px">
+							<el-select v-model="form.region" placeholder="请选择活动区域">
+								<el-option label="区域一" value="shanghai"></el-option>
+								<el-option label="区域二" value="beijing"></el-option>
+							</el-select>
+						</el-form-item>
+						<el-form-item label="报告编辑" label-width="70px">
+							<el-select v-model="form.region" placeholder="请选择活动区域">
+								<el-option label="区域一" value="shanghai"></el-option>
+								<el-option label="区域二" value="beijing"></el-option>
+							</el-select>
+						</el-form-item>
+						<el-form-item label="交付审核" label-width="70px">
+							<el-select v-model="form.region" placeholder="请选择活动区域">
+								<el-option label="区域一" value="shanghai"></el-option>
+								<el-option label="区域二" value="beijing"></el-option>
+							</el-select>
+						</el-form-item>
+						<el-form-item label-width="70px">
+							<el-button type="primary" @click="innerDrawer=false">
+								确 定
+							</el-button>
+							<el-button @click="innerDrawer=false">取 消</el-button>
+						</el-form-item>
+					</el-form>
+				</div>
+			</el-drawer>
+		</el-drawer>
 	</div>
 </template>
 
 <script>
 	export default {
-		name:'companyManagement',
+		name: 'companyManagement',
 		data() {
-			return{
-				vlaue:''
+			return {
+				title: '添加任务',
+				LabelWidth: "40px",
+				loading: false,
+				dialog: false,
+				innerDrawer: false,
+				Drawer: false, //任务管理
+				total: 30,
+				page: {
+					pagez: 1,
+					page_size: 10,
+					name: ''
+				},
+				tableData: [{
+					date: '铜仁公司',
+					name: '数据采集工程师',
+					time:'2022-12-21 12:00:00'
+				}, {
+					date: '国控总部',
+					name: '冷链负责人',
+					time:'2022-12-21 12:00:00'
+				}, {
+					date: '国控毕节公司',
+					name: '冷链负责人',
+					time:'2022-12-21 12:00:00'
+				}],
+				form: {
+					name: '',
+					region: '',
+					paw: '',
+				},
 			}
+		},
+		methods: {
+			search() { //回车搜索
+				console.log('搜索', this.page.name);
+			},
+			handleCurrentChange(val) {
+				this.page.pagez = val
+				console.log('当前页', this.page);
+			},
+			handleEdit(e) {
+				console.log('任务管理', e);
+				this.Drawer = true
+			},
 		}
 	}
 </script>
 
-<style lang="scss">
-</style>
+<style lang="scss" scoped>
+	// 在填充数据之前隐藏
+	[v-cloak] {
+		display: none;
+	}
+
+	.demo-drawers {
+		padding: 20px;
+	}
+
+	.companyManagement {
+		.companyManagement1 {
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+
+			.companyManagement1-L {}
+
+			.companyManagement1-R {
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+
+				.companyManagement1-Rtx {
+					min-width: 45px;
+					font-size: 14px;
+					color: #909399;
+					user-select: none;
+				}
+			}
+		}
+
+		.companyManagement2 {
+			margin-top: 20px;
+		}
+
+		.companyManagement3 {
+			margin-top: 40px;
+		}
+	}
+</style>