lz vor 3 Jahren
Ursprung
Commit
6eb5918c7d

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

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

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

@@ -2,91 +2,94 @@
 
 .el-breadcrumb__inner,
 .el-breadcrumb__inner a {
-  font-weight: 400 !important;
+	font-weight: 400 !important;
 }
 
 .el-upload {
-  input[type="file"] {
-    display: none !important;
-  }
+	input[type='file'] {
+		display: none !important;
+	}
 }
 
 .el-upload__input {
-  display: none;
+	display: none;
 }
 
 .cell {
-  .el-tag {
-    margin-right: 0px;
-  }
+	.el-tag {
+		margin-right: 0px;
+	}
 }
 
 .small-padding {
-  .cell {
-    padding-left: 5px;
-    padding-right: 5px;
-  }
+	.cell {
+		padding-left: 5px;
+		padding-right: 5px;
+	}
 }
 
 .fixed-width {
-  .el-button--mini {
-    padding: 7px 10px;
-    width: 60px;
-  }
+	.el-button--mini {
+		padding: 7px 10px;
+		width: 60px;
+	}
 }
 
 .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
 .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
 .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
 .el-dropdown-menu {
-  a {
-    display: block
-  }
+	a {
+		display: block;
+	}
 }
 
 // fix date-picker ui bug in filter-item
 .el-range-editor.el-input__inner {
-  display: inline-flex !important;
+	display: inline-flex !important;
 }
 
 // to fix el-date-picker css style
 .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">
 	.tree-choice {
 		background-color: #fff;
-		padding: 10px 15px;
+		padding: 10px 10px;
 		width: 280px;
 		margin-right: 7px;
 		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-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-edit" @click="editPower(scope.row)" v-hasPermi="['system:levelPosition:power']">责权</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
@@ -88,8 +89,8 @@
 						</el-form-item>
 					</el-form>
 					<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>
 				</el-dialog>
 				<!-- 添加修改职务弹窗 -->
@@ -115,8 +116,26 @@
 						</el-form-item>
 					</el-form>
 					<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>
 				</el-dialog>
 			</div>
@@ -125,7 +144,7 @@
 </template>
 
 <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 { checkPermi } from '@/utils/permission'
 	export default {
@@ -187,7 +206,18 @@
 				deptList: [],
 				//部门树型数据
 				deptTree: [],
-				deptIds: []
+				deptIds: [],
+				//责权弹窗显示
+				powerShow: false,
+				//责权表单
+				powerForm: {
+					//责任
+					responsibility: '',
+					//权力
+					right: '',
+					//职务名称
+					jobName: ''
+				}
 			}
 		},
 		created() {
@@ -336,6 +366,7 @@
 			},
 			//级别上升
 			levelUpOrder(row) {
+				console.log(row)
 				let prevList = this.levelList.filter((item) => item.levelSort > row.levelSort)
 				prevList.sort((a, b) => {
 					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>
 
-<style scoped lang="scss"></style>
+<style scoped lang="scss">
+	.power > div {
+		margin-bottom: 10px;
+	}
+</style>

+ 1 - 1
src/views/system/tableHead/index.vue

@@ -33,7 +33,7 @@
 					</el-table-column>
 				</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>
 		<el-dialog title="添加表头" :visible.sync="open" width="500px" append-to-body>

+ 1 - 1
src/views/system/user/index.vue

@@ -76,7 +76,7 @@
 					</el-table-column>
 				</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>
 		<!-- 添加或修改用户配置对话框 -->