Переглянути джерело

Merge branch 'master' of http://182.92.174.150:3000/tiegu/czo

dukai 3 роки тому
батько
коміт
a56506c40b

+ 8 - 0
src/api/system/levelPosition.js

@@ -79,3 +79,11 @@ export function postOrder(data) {
 		data
 		data
 	})
 	})
 }
 }
+//保存责权
+export function powerUpd(data) {
+	return request({
+		url: '/system/job/updateRight',
+		method: 'put',
+		data
+	})
+}

+ 4 - 2
src/assets/styles/common.scss

@@ -10,7 +10,7 @@
 	.search-container {
 	.search-container {
 		width: 100%;
 		width: 100%;
 		background-color: #fff;
 		background-color: #fff;
-		padding: 10px 15px;
+		padding: 10px 10px;
 		box-sizing: border-box;
 		box-sizing: border-box;
 		margin-top: 7px;
 		margin-top: 7px;
 	}
 	}
@@ -23,7 +23,7 @@
 		.main {
 		.main {
 			width: calc(100% - 287px);
 			width: calc(100% - 287px);
 			height: 100%;
 			height: 100%;
-			padding: 10px 15px;
+			padding: 10px 10px;
 			box-sizing: border-box;
 			box-sizing: border-box;
 			background-color: #fff;
 			background-color: #fff;
 			.table-nav {
 			.table-nav {
@@ -61,6 +61,7 @@
 		height: calc(100vh - 86px);
 		height: calc(100vh - 86px);
 	}
 	}
 }
 }
+//消息提示框样式
 .message-style {
 .message-style {
 	&.success {
 	&.success {
 		background-color: #f0f9eb;
 		background-color: #f0f9eb;
@@ -86,6 +87,7 @@
 		}
 		}
 	}
 	}
 }
 }
+//a标签链接样式
 a.linked {
 a.linked {
 	color: #1890ff;
 	color: #1890ff;
 }
 }

+ 50 - 47
src/assets/styles/element-ui.scss

@@ -2,91 +2,94 @@
 
 
 .el-breadcrumb__inner,
 .el-breadcrumb__inner,
 .el-breadcrumb__inner a {
 .el-breadcrumb__inner a {
-  font-weight: 400 !important;
+	font-weight: 400 !important;
 }
 }
 
 
 .el-upload {
 .el-upload {
-  input[type="file"] {
-    display: none !important;
-  }
+	input[type='file'] {
+		display: none !important;
+	}
 }
 }
 
 
 .el-upload__input {
 .el-upload__input {
-  display: none;
+	display: none;
 }
 }
 
 
 .cell {
 .cell {
-  .el-tag {
-    margin-right: 0px;
-  }
+	.el-tag {
+		margin-right: 0px;
+	}
 }
 }
 
 
 .small-padding {
 .small-padding {
-  .cell {
-    padding-left: 5px;
-    padding-right: 5px;
-  }
+	.cell {
+		padding-left: 5px;
+		padding-right: 5px;
+	}
 }
 }
 
 
 .fixed-width {
 .fixed-width {
-  .el-button--mini {
-    padding: 7px 10px;
-    width: 60px;
-  }
+	.el-button--mini {
+		padding: 7px 10px;
+		width: 60px;
+	}
 }
 }
 
 
 .status-col {
 .status-col {
-  .cell {
-    padding: 0 10px;
-    text-align: center;
+	.cell {
+		padding: 0 10px;
+		text-align: center;
 
 
-    .el-tag {
-      margin-right: 0px;
-    }
-  }
+		.el-tag {
+			margin-right: 0px;
+		}
+	}
 }
 }
 
 
 // to fixed https://github.com/ElemeFE/element/issues/2461
 // to fixed https://github.com/ElemeFE/element/issues/2461
 .el-dialog {
 .el-dialog {
-  transform: none;
-  left: 0;
-  position: relative;
-  margin: 0 auto;
+	transform: none;
+	left: 0;
+	position: relative;
+	margin: 0 auto;
+}
+//弹窗样式
+.el-dialog__header {
+	border-bottom: 1px solid #d9d9d9;
+}
+.el-dialog__footer {
+	border-top: 1px solid #d9d9d9;
+	padding-bottom: 10px;
 }
 }
-
 // refine element ui upload
 // refine element ui upload
 .upload-container {
 .upload-container {
-  .el-upload {
-    width: 100%;
+	.el-upload {
+		width: 100%;
 
 
-    .el-upload-dragger {
-      width: 100%;
-      height: 200px;
-    }
-  }
+		.el-upload-dragger {
+			width: 100%;
+			height: 200px;
+		}
+	}
 }
 }
 
 
 // dropdown
 // dropdown
 .el-dropdown-menu {
 .el-dropdown-menu {
-  a {
-    display: block
-  }
+	a {
+		display: block;
+	}
 }
 }
 
 
 // fix date-picker ui bug in filter-item
 // fix date-picker ui bug in filter-item
 .el-range-editor.el-input__inner {
 .el-range-editor.el-input__inner {
-  display: inline-flex !important;
+	display: inline-flex !important;
 }
 }
 
 
 // to fix el-date-picker css style
 // to fix el-date-picker css style
 .el-range-separator {
 .el-range-separator {
-  box-sizing: content-box;
+	box-sizing: content-box;
 }
 }
 
 
-.el-menu--collapse
-  > div
-  > .el-submenu
-  > .el-submenu__title
-  .el-submenu__icon-arrow {
-  display: none;
-}
+.el-menu--collapse > div > .el-submenu > .el-submenu__title .el-submenu__icon-arrow {
+	display: none;
+}

+ 1 - 1
src/components/treeChoice/index.vue

@@ -49,7 +49,7 @@
 <style scoped lang="scss">
 <style scoped lang="scss">
 	.tree-choice {
 	.tree-choice {
 		background-color: #fff;
 		background-color: #fff;
-		padding: 10px 15px;
+		padding: 10px 10px;
 		width: 280px;
 		width: 280px;
 		margin-right: 7px;
 		margin-right: 7px;
 		flex-shrink: 0;
 		flex-shrink: 0;

+ 63 - 7
src/views/system/levelPosition/index.vue

@@ -68,6 +68,7 @@
 							<el-button size="mini" type="text" icon="el-icon-delete" @click="delPost(scope.row)" v-hasPermi="['system:levelPosition:delPost']">删除</el-button>
 							<el-button size="mini" type="text" icon="el-icon-delete" @click="delPost(scope.row)" v-hasPermi="['system:levelPosition:delPost']">删除</el-button>
 							<el-button size="mini" type="text" icon="el-icon-top" @click="postUpOrder(scope.row)" v-hasPermi="['system:levelPosition:upPost']">上升</el-button>
 							<el-button size="mini" type="text" icon="el-icon-top" @click="postUpOrder(scope.row)" v-hasPermi="['system:levelPosition:upPost']">上升</el-button>
 							<el-button size="mini" type="text" icon="el-icon-bottom" @click="postDownOrder(scope.row)" v-hasPermi="['system:levelPosition:downPost']">下降</el-button>
 							<el-button size="mini" type="text" icon="el-icon-bottom" @click="postDownOrder(scope.row)" v-hasPermi="['system:levelPosition:downPost']">下降</el-button>
+							<el-button size="mini" type="text" icon="el-icon-edit" @click="editPower(scope.row)" v-hasPermi="['system:levelPosition:power']">责权</el-button>
 						</template>
 						</template>
 					</el-table-column>
 					</el-table-column>
 				</el-table>
 				</el-table>
@@ -88,8 +89,8 @@
 						</el-form-item>
 						</el-form-item>
 					</el-form>
 					</el-form>
 					<div slot="footer" class="dialog-footer">
 					<div slot="footer" class="dialog-footer">
-						<el-button type="primary" @click="levelSub">确 定</el-button>
-						<el-button @click="levelCancel">取 消</el-button>
+						<el-button size="medium" @click="levelCancel">取 消</el-button>
+						<el-button type="primary" size="medium" @click="levelSub">保 存</el-button>
 					</div>
 					</div>
 				</el-dialog>
 				</el-dialog>
 				<!-- 添加修改职务弹窗 -->
 				<!-- 添加修改职务弹窗 -->
@@ -115,8 +116,26 @@
 						</el-form-item>
 						</el-form-item>
 					</el-form>
 					</el-form>
 					<div slot="footer" class="dialog-footer">
 					<div slot="footer" class="dialog-footer">
-						<el-button type="primary" @click="postSub">确 定</el-button>
-						<el-button @click="postCancel">取 消</el-button>
+						<el-button size="medium" @click="postCancel">取 消</el-button>
+						<el-button type="primary" size="medium" @click="postSub">保 存</el-button>
+					</div>
+				</el-dialog>
+				<!-- 责权弹窗 -->
+				<el-dialog title="责权信息" :visible.sync="powerShow" width="30%">
+					<div class="power">
+						<div>级别职务:{{ postForm.levelName }}\{{ powerForm.jobName }}</div>
+						<div><strong>责任</strong></div>
+						<div>
+							<el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4 }" placeholder="请输入责任" v-model="powerForm.responsibility"> </el-input>
+						</div>
+						<div><strong>权力</strong></div>
+						<div>
+							<el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4 }" placeholder="请输入权力" v-model="powerForm.right"> </el-input>
+						</div>
+					</div>
+					<div slot="footer" class="dialog-footer">
+						<el-button size="medium" @click="powerShow = false">取 消</el-button>
+						<el-button size="medium" type="primary" @click="powerSub">保 存</el-button>
 					</div>
 					</div>
 				</el-dialog>
 				</el-dialog>
 			</div>
 			</div>
@@ -125,7 +144,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
-	import { levelAdd, levelList, levelUpd, levelDel, levelOrder, postAdd, postList, postUpd, postDel, postOrder } from '@/api/system/levelPosition.js'
+	import { levelAdd, levelList, levelUpd, levelDel, levelOrder, postAdd, postList, postUpd, postDel, postOrder, powerUpd } from '@/api/system/levelPosition.js'
 	import { listDept } from '@/api/system/dept.js'
 	import { listDept } from '@/api/system/dept.js'
 	import { checkPermi } from '@/utils/permission'
 	import { checkPermi } from '@/utils/permission'
 	export default {
 	export default {
@@ -187,7 +206,18 @@
 				deptList: [],
 				deptList: [],
 				//部门树型数据
 				//部门树型数据
 				deptTree: [],
 				deptTree: [],
-				deptIds: []
+				deptIds: [],
+				//责权弹窗显示
+				powerShow: false,
+				//责权表单
+				powerForm: {
+					//责任
+					responsibility: '',
+					//权力
+					right: '',
+					//职务名称
+					jobName: ''
+				}
 			}
 			}
 		},
 		},
 		created() {
 		created() {
@@ -336,6 +366,7 @@
 			},
 			},
 			//级别上升
 			//级别上升
 			levelUpOrder(row) {
 			levelUpOrder(row) {
+				console.log(row)
 				let prevList = this.levelList.filter((item) => item.levelSort > row.levelSort)
 				let prevList = this.levelList.filter((item) => item.levelSort > row.levelSort)
 				prevList.sort((a, b) => {
 				prevList.sort((a, b) => {
 					return a.levelSort - b.levelSort
 					return a.levelSort - b.levelSort
@@ -570,9 +601,34 @@
 						}
 						}
 					})
 					})
 				}
 				}
+			},
+			//编辑责权
+			editPower(row) {
+				this.powerForm.responsibility = row.responsibility
+				this.powerForm.right = row.right
+				this.powerForm.jobName = row.jobName
+				this.powerForm.jobId = row.jobId
+				this.powerShow = true
+			},
+			//保存责权
+			powerSub() {
+				delete this.powerForm.jobName
+				powerUpd(this.powerForm).then((res) => {
+					if (res.code == 200) {
+						this.$msg({ message: '修改成功' })
+						let o = this.postList.find((item) => item.jobId == this.powerForm.jobId)
+						o.responsibility = this.powerForm.responsibility
+						o.right = this.powerForm.right
+						this.powerShow = false
+					}
+				})
 			}
 			}
 		}
 		}
 	}
 	}
 </script>
 </script>
 
 
-<style scoped lang="scss"></style>
+<style scoped lang="scss">
+	.power > div {
+		margin-bottom: 10px;
+	}
+</style>

+ 9 - 6
src/views/system/tableHead/index.vue

@@ -1,8 +1,9 @@
 <template>
 <template>
 	<div class="page-container">
 	<div class="page-container">
-		<div class="search-container">
+		<div class="search-container" v-show="menuId">
+			<span style="margin-right: 12px"><strong>表头名称</strong></span>
 			<el-input v-model="queryParams.columnName" placeholder="输入表头名称" clearable size="small" style="width: 150px" />
 			<el-input v-model="queryParams.columnName" placeholder="输入表头名称" clearable size="small" style="width: 150px" />
-			<el-button type="primary" icon="el-icon-search" size="small " style="margin-left: 3px" @click="getList" v-hasPermi="['system:tableHead:listTable']">搜索</el-button>
+			<el-button type="primary" icon="el-icon-search" size="small " style="margin-left: 20px" @click="getList" v-hasPermi="['system:tableHead:listTable']">搜索</el-button>
 		</div>
 		</div>
 		<div class="content-container">
 		<div class="content-container">
 			<TreeChoice :dataList="menuList" nodeKey="id" nodeVal="menuName" @itemClick="menuClick" />
 			<TreeChoice :dataList="menuList" nodeKey="id" nodeVal="menuName" @itemClick="menuClick" />
@@ -12,7 +13,9 @@
 						<div class="tag" :style="isActive(1)">表头管理</div>
 						<div class="tag" :style="isActive(1)">表头管理</div>
 					</div>
 					</div>
 					<div class="actions">
 					<div class="actions">
-						<el-button type="primary" icon="el-icon-plus" size="mini " style="margin: 0 0 10px 3px" @click="handleAdd" v-hasPermi="['system:tableHead:addTable']">添加</el-button>
+						<el-button type="primary" icon="el-icon-plus" size="mini " style="margin: 0 0 10px 3px" @click="handleAdd" v-hasPermi="['system:tableHead:addTable']" v-show="menuId"
+							>添加</el-button
+						>
 					</div>
 					</div>
 				</div>
 				</div>
 				<el-table v-loading="loading" :data="tableHeadList" border>
 				<el-table v-loading="loading" :data="tableHeadList" border>
@@ -33,7 +36,7 @@
 					</el-table-column>
 					</el-table-column>
 				</el-table>
 				</el-table>
 
 
-				<pagination v-show="total > queryParams.pageSize" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
+				<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
 			</div>
 			</div>
 		</div>
 		</div>
 		<el-dialog title="添加表头" :visible.sync="open" width="500px" append-to-body>
 		<el-dialog title="添加表头" :visible.sync="open" width="500px" append-to-body>
@@ -60,8 +63,8 @@
 				</el-form-item>
 				</el-form-item>
 			</el-form>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
 			<div slot="footer" class="dialog-footer">
-				<el-button type="primary" @click="submitForm">确 定</el-button>
-				<el-button @click="cancel">取 消</el-button>
+				<el-button size="medium" @click="cancel">取 消</el-button>
+				<el-button size="medium" type="primary" @click="submitForm">确 定</el-button>
 			</div>
 			</div>
 		</el-dialog>
 		</el-dialog>
 	</div>
 	</div>

+ 9 - 19
src/views/system/user/index.vue

@@ -42,21 +42,21 @@
 						<el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['system:user:add']">添加</el-button>
 						<el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['system:user:add']">添加</el-button>
 						<el-button type="info" plain icon="el-icon-upload2" size="mini" @click="handleImport" v-hasPermi="['system:user:import']">导入</el-button>
 						<el-button type="info" plain icon="el-icon-upload2" size="mini" @click="handleImport" v-hasPermi="['system:user:import']">导入</el-button>
 						<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['system:user:export']" style="margin-right: 10px">导出</el-button>
 						<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['system:user:export']" style="margin-right: 10px">导出</el-button>
-						<right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>
+						<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
 					</div>
 					</div>
 				</div>
 				</div>
 				<el-table v-loading="loading" border :data="userList">
 				<el-table v-loading="loading" border :data="userList">
-					<el-table-column label="用户编号" align="center" key="userId" prop="userId" v-if="columns[0].visible" />
-					<el-table-column label="用户名称" align="center" key="userName" prop="userName" v-if="columns[1].visible" :show-overflow-tooltip="true" />
-					<el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" v-if="columns[2].visible" :show-overflow-tooltip="true" />
-					<el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible" :show-overflow-tooltip="true" />
-					<el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" v-if="columns[4].visible" width="120" />
-					<el-table-column label="状态" align="center" key="status" v-if="columns[5].visible">
+					<el-table-column label="用户编号" align="center" key="userId" prop="userId" />
+					<el-table-column label="用户名称" align="center" key="userName" prop="userName" :show-overflow-tooltip="true" />
+					<el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" :show-overflow-tooltip="true" />
+					<el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" :show-overflow-tooltip="true" />
+					<el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" width="120" />
+					<el-table-column label="状态" align="center" key="status">
 						<template slot-scope="scope">
 						<template slot-scope="scope">
 							<el-switch v-model="scope.row.status" active-value="0" inactive-value="1" @change="handleStatusChange(scope.row)"></el-switch>
 							<el-switch v-model="scope.row.status" active-value="0" inactive-value="1" @change="handleStatusChange(scope.row)"></el-switch>
 						</template>
 						</template>
 					</el-table-column>
 					</el-table-column>
-					<el-table-column label="创建时间" align="center" prop="createTime" v-if="columns[6].visible" width="160">
+					<el-table-column label="创建时间" align="center" prop="createTime" width="160">
 						<template slot-scope="scope">
 						<template slot-scope="scope">
 							<span>{{ parseTime(scope.row.createTime) }}</span>
 							<span>{{ parseTime(scope.row.createTime) }}</span>
 						</template>
 						</template>
@@ -76,7 +76,7 @@
 					</el-table-column>
 					</el-table-column>
 				</el-table>
 				</el-table>
 
 
-				<pagination v-show="total > queryParams.pageSize" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
+				<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
 			</div>
 			</div>
 		</div>
 		</div>
 		<!-- 添加或修改用户配置对话框 -->
 		<!-- 添加或修改用户配置对话框 -->
@@ -262,16 +262,6 @@
 					status: undefined,
 					status: undefined,
 					deptId: undefined
 					deptId: undefined
 				},
 				},
-				// 列信息
-				columns: [
-					{ key: 0, label: `用户编号`, visible: true },
-					{ key: 1, label: `用户名称`, visible: true },
-					{ key: 2, label: `用户昵称`, visible: true },
-					{ key: 3, label: `部门`, visible: true },
-					{ key: 4, label: `手机号码`, visible: true },
-					{ key: 5, label: `状态`, visible: true },
-					{ key: 6, label: `创建时间`, visible: true }
-				],
 				// 表单校验
 				// 表单校验
 				rules: {
 				rules: {
 					userName: [
 					userName: [