From c8360c9c55f8d7e2d797534c40f209cc30e92f0c Mon Sep 17 00:00:00 2001
From: GuLiMmo <2820890765@qq.com>
Date: Thu, 07 Dec 2023 16:33:40 +0800
Subject: [PATCH] 考核权重设置页面搭建
---
src/views/assessmentTask/assessmentWeight.vue | 117 +++++++++++++++++++++++
src/views/assessmentTask/assessmentTaskSetting.vue | 131 ++++++++++++++++++++++++++
2 files changed, 248 insertions(+), 0 deletions(-)
diff --git a/src/views/assessmentTask/assessmentTaskSetting.vue b/src/views/assessmentTask/assessmentTaskSetting.vue
new file mode 100644
index 0000000..b6dcf73
--- /dev/null
+++ b/src/views/assessmentTask/assessmentTaskSetting.vue
@@ -0,0 +1,131 @@
+<template>
+ <basic-container>
+ <template v-if="isWeight">
+ <avue-crud ref="crud" v-model="form" v-model:search="search" :option="option" :data="data" v-model:page="page"
+ @search-change="searchChange" @search-reset="searchReset" @current-change="currentChange"
+ @size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad">
+ <template #menu="{ size, row, index }">
+ <el-button type="primary" size="small" @click="handleWeight(row)">
+ 考核权重
+ </el-button>
+ </template>
+ </avue-crud>
+ </template>
+ <template v-else>
+ <assessmentWeight :is="isWeight" @changeIs="changeIs" />
+ </template>
+ </basic-container>
+</template>
+
+<script>
+import assessmentWeight from './assessmentWeight.vue'
+export default {
+ components: {
+ assessmentWeight
+ },
+ data() {
+ return {
+ isWeight: true,
+ form: {},
+ search: {},
+ data: [
+ {
+ id: '1',
+ assessor: '张三',
+ jobNumber: '123456',
+ section: '研发部',
+ postion: '研发工程师',
+ personnelType: '普通员工',
+ partnerType: '',
+ contact: '123456789'
+ }
+ ],
+ option: {
+ height: 'auto',
+ calcHeight: 32,
+ tip: true,
+ searchMenuSpan: 6,
+ border: true,
+ index: true,
+ addBtn: false,
+ viewBtn: false,
+ editBtn: false,
+ delBtn: false,
+ menuWidth: 200,
+ column: [
+ {
+ label: "考核编号",
+ prop: "id",
+ type: "input",
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ hide: true,
+ search: true
+ },
+ {
+ label: "被考核人",
+ prop: "assessor",
+ type: "input",
+ search: true
+ },
+ {
+ label: "工号",
+ prop: 'jobNumber',
+ type: "input",
+ },
+ {
+ label: "部门",
+ prop: "section",
+ type: "input",
+ },
+ {
+ label: "职务",
+ prop: "position",
+ type: "input",
+ },
+ {
+ label: "人员类型",
+ prop: "personnelType",
+ type: "input",
+ },
+ {
+ label: "合伙类型",
+ prop: "partnerType",
+ type: "input",
+ },
+ {
+ label: "联系方式",
+ prop: "contact",
+ type: "input",
+ },
+ ]
+ },
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 1,
+ },
+ }
+ },
+ methods: {
+ handleWeight(value) {
+ this.isWeight = false
+ },
+ changeIs(is) {
+ this.isWeight = is
+ },
+ searchChange() { },
+ searchReset() { },
+ currentChange() { },
+ sizeChange() { },
+ refreshChange() { },
+ onLoad(page, params = {}) {
+
+ }
+ }
+}
+</script>
+
+<style></style>
+
\ No newline at end of file
diff --git a/src/views/assessmentTask/assessmentWeight.vue b/src/views/assessmentTask/assessmentWeight.vue
new file mode 100644
index 0000000..b0f75fc
--- /dev/null
+++ b/src/views/assessmentTask/assessmentWeight.vue
@@ -0,0 +1,117 @@
+<template>
+ <div class="container">
+ <el-page-header @back="back" class="header">
+ <template #content>
+ <span>考核权重</span>
+ </template>
+ </el-page-header>
+ <avue-crud ref="crud" v-model="form" v-model:search="search" :option="option" :data="data" v-model:page="page"
+ @current-change="currentChange" @size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad">
+ <template #menu="{ row, index, size }">
+ <el-button type="danger" text icon="el-icon-delete" @click="delRow(row, index)">
+ 删除
+ </el-button>
+ </template>
+ </avue-crud>
+ </div>
+</template>
+
+<script>
+import { ElMessageBox, ElMessage } from 'element-plus'
+
+export default {
+ props: {
+ is: {
+ type: Boolean,
+ default: false
+ }
+ },
+ data() {
+ return {
+ form: {},
+ search: {},
+ data: [
+ {
+ assessor: '张三',
+ position: '经理',
+ weight: 50,
+ ratingRange: 50,
+ }
+ ],
+ option: {
+ height: 'auto',
+ calcHeight: 32,
+ tip: true,
+ searchMenuSpan: 6,
+ border: true,
+ index: true,
+ addBtn: true,
+ viewBtn: false,
+ editBtn: false,
+ delBtn: false,
+ menuWidth: 200,
+ column: [
+ {
+ label: "考核人",
+ prop: "assessor",
+ type: "input",
+ },
+ {
+ label: "职务",
+ prop: "position",
+ type: "input",
+ },
+ {
+ label: "权值",
+ prop: "weight",
+ type: "input",
+ },
+ {
+ label: "评分范围",
+ prop: "ratingRange",
+ type: "input",
+ placeholder: '评分范围(100分制)±N'
+ }
+ ]
+ },
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 1,
+ },
+ }
+ },
+ methods: {
+ back() {
+ this.$emit('changeIs', true)
+ },
+ delRow(row, index) {
+ console.log(row,index);
+ ElMessageBox.confirm(
+ '是否删除当前记录?',
+ '警告',
+ {
+ confirmButtonText: '确定',
+ cancelButtonText: '关闭',
+ type: 'warning',
+ }
+ ).then(res => {
+ ElMessage.success('删除成功')
+ }, () => {
+ ElMessage.warning('取消删除')
+ })
+ },
+ sizeChange() { },
+ refreshChange() { },
+ onLoad(page, params = {}) {
+ }
+ }
+}
+</script>
+
+<style scoped>
+.header {
+ margin-bottom: 20px;
+}
+</style>
+
\ No newline at end of file
--
Gitblit v1.9.3