Commit 8e749a65 authored by 姬鋆屾's avatar 姬鋆屾

parent 14ba689a
......@@ -20,6 +20,13 @@
>查看</el-button
>
<span>&nbsp;</span>
<el-switch
v-if="switchBtn"
@change="$emit('view', row)"
title="核查"
v-model="row.check"
></el-switch>
<span>&nbsp;</span>
<el-button
v-if="reCheck"
type="text"
......@@ -63,6 +70,10 @@ export default {
type: Boolean,
default: false,
},
switchBtn: {
type: Boolean,
default: false,
},
noView: {
type: Boolean,
default: false,
......
......@@ -218,6 +218,7 @@ export default {
async getKaoQin(categoryId) {
await this.$post("/perform/rules/list", {
categoryId,
type: this.activeName,
page: this.query.page,
orderColList: this.typeArr,
name: this.searchValue,
......
......@@ -15,16 +15,19 @@
>
<el-row>
<el-row style="width: 100%;margin-bottom: 10px;">
<el-col style="width: 100%;" :span="24">
<Field
label="选择部门:"
prop="deptId"
v-model="form.deptId"
placeholder="选择部门"
:enumData="deptGroup"
type="select"
/>
</el-col>
<el-form-item label="选择部门">
<el-col :span="23">
<el-select v-model="form.deptId" style="width: 100%;">
<el-option
v-for="item in deptArr"
:key="item.id"
:label="item.deptName"
:value="item.id"
>
</el-option
></el-select>
</el-col>
</el-form-item>
</el-row>
<el-row style="width: 96%;margin: 0 auto;">
<el-tabs v-model="activeName" type="card" @tab-click="handleClick">
......@@ -35,12 +38,16 @@
请选择自动考核指标:
</div>
<div class="search_box">
<el-select v-model="type" placeholder="请选择分类">
<el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
v-for="item in dataArr"
:key="item.id"
:label="item.name"
:value="item.id"
style="width: 200px;"
>
</el-option>
......@@ -54,29 +61,14 @@
</div>
</div>
<div class="mid_table">
<el-table :data="tableData" border style="width: 100%">
<el-table-column type="index" label="序号" width="50">
</el-table-column>
<el-table-column
prop="name"
label="考核内容简称"
width="180"
>
</el-table-column>
<el-table-column prop="simple" label="评分标准">
</el-table-column>
<el-table-column prop="core" label="扣分分值">
</el-table-column>
<el-table-column fixed="right" label="操作" width="120">
<template slot-scope="scope">
<el-switch
v-model="scope.row.check"
@change="handleChange(scope.row)"
>
</el-switch>
</template>
</el-table-column>
</el-table>
<LayoutTable
:data="tableData"
notAdd
notDel
notSearch
:config="tableConfig"
>
</LayoutTable>
</div>
</div>
</el-tab-pane>
......@@ -87,12 +79,16 @@
请选择自动考核指标:
</div>
<div class="search_box">
<el-select v-model="type" placeholder="请选择分类">
<el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
v-for="item in dataArr"
:key="item.id"
:label="item.name"
:value="item.id"
style="width: 200px;"
>
</el-option>
......@@ -106,29 +102,14 @@
</div>
</div>
<div class="mid_table">
<el-table :data="tableData" border style="width: 100%">
<el-table-column type="index" label="序号" width="50">
</el-table-column>
<el-table-column
prop="name"
label="考核内容简称"
width="180"
>
</el-table-column>
<el-table-column prop="simple" label="评分标准">
</el-table-column>
<el-table-column prop="core" label="扣分分值">
</el-table-column>
<el-table-column fixed="right" label="操作" width="120">
<template slot-scope="scope">
<el-switch
v-model="scope.row.check"
@change="handleChange(scope.row)"
>
</el-switch>
</template>
</el-table-column>
</el-table>
<LayoutTable
:data="tableData"
notAdd
notDel
notSearch
:config="tableConfig"
>
</LayoutTable>
</div>
</div>
</el-tab-pane>
......@@ -139,12 +120,16 @@
请选择自动考核指标:
</div>
<div class="search_box">
<el-select v-model="type" placeholder="请选择分类">
<el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
v-for="item in dataArr"
:key="item.id"
:label="item.name"
:value="item.id"
style="width: 200px;"
>
</el-option>
......@@ -158,34 +143,14 @@
</div>
</div>
<div class="mid_table">
<el-table
<LayoutTable
:data="tableData"
border
style="width: 100%"
height="520"
notAdd
notDel
notSearch
:config="tableConfig"
>
<el-table-column type="index" label="序号" width="50">
</el-table-column>
<el-table-column
prop="name"
label="考核内容简称"
width="180"
>
</el-table-column>
<el-table-column prop="simple" label="评分标准">
</el-table-column>
<el-table-column prop="core" label="扣分分值">
</el-table-column>
<el-table-column fixed="right" label="操作" width="120">
<template slot-scope="scope">
<el-switch
v-model="scope.row.check"
@change="handleChange(scope.row)"
>
</el-switch>
</template>
</el-table-column>
</el-table>
</LayoutTable>
</div>
</div>
</el-tab-pane>
......@@ -196,12 +161,16 @@
请选择自动考核指标:
</div>
<div class="search_box">
<el-select v-model="type" placeholder="请选择分类">
<el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
v-for="item in dataArr"
:key="item.id"
:label="item.name"
:value="item.id"
style="width: 200px;"
>
</el-option>
......@@ -215,29 +184,55 @@
</div>
</div>
<div class="mid_table">
<el-table :data="tableData" border style="width: 100%">
<el-table-column type="index" label="序号" width="50">
</el-table-column>
<el-table-column
prop="name"
label="考核内容简称"
width="180"
<LayoutTable
:data="tableData"
notAdd
notDel
notSearch
:config="tableConfig"
>
</LayoutTable>
</div>
</div>
</el-tab-pane>
<el-tab-pane label="其他绩效指标" name="5">
<div class="content">
<div class="top">
<div>
请选择自动考核指标:
</div>
<div class="search_box">
<el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
</el-table-column>
<el-table-column prop="simple" label="评分标准">
</el-table-column>
<el-table-column prop="core" label="扣分分值">
</el-table-column>
<el-table-column fixed="right" label="操作" width="120">
<template slot-scope="scope">
<el-switch
v-model="scope.row.check"
@change="handleChange(scope.row)"
>
</el-switch>
</template>
</el-table-column>
</el-table>
<el-option
v-for="item in dataArr"
:key="item.id"
:label="item.name"
:value="item.id"
style="width: 200px;"
>
</el-option>
</el-select>
<el-input
v-model="keywords"
placeholder="请输入评分标准关键字搜索"
style="width: 200px;margin: 0 10px;"
></el-input>
<el-button type="primary"> 搜索 </el-button>
</div>
</div>
<div class="mid_table">
<LayoutTable
:data="tableData"
notAdd
notDel
notSearch
:config="tableConfig"
>
</LayoutTable>
</div>
</div>
</el-tab-pane>
......@@ -308,12 +303,23 @@
<script>
import form from "@/assets/mixins/formdialog";
import table from "@/assets/mixins/table";
export default {
name: "PerformDeptConfDetail",
mixins: [form],
mixins: [form, table],
components: {},
created() {
this.changePath("perform/dept/conf");
// 获取部门列表
this.$post("/dept/list", { page: 1, size: -1 }).then((res) => {
if (res.code == 1) {
this.deptArr = res.data.data;
} else {
this.deptArr = [];
}
});
// this.getKaoQin();
},
data() {
return {
......@@ -350,28 +356,112 @@ export default {
],
type: "",
keywords: "",
deptArr: [],
config: {
isshowTabPane: false,
search: [],
columns: [
{ type: "index", label: "序号", width: 50 },
{ label: "考核内容简称", prop: "name" },
{ label: "评分标准", prop: "content" },
{ label: "分值", prop: "score" },
{
label: "操作",
width: 100,
formatter: (row) => {
return (
<table-buttons
noAdd
noView
noEdit
noDel
switchBtn
row={row}
onEdit={this.eddRules}
onDel={this.toDelRules}
onView={this.switchChange}
/>
);
},
},
],
},
cateObj: {},
dataArr: [],
};
},
// watch: {
// query: {
// deep,
// handler(val) {
// console.log(val);
// },
// },
// },
methods: {
handleChange(val) {
console.log(val);
typeSelect(val) {
this.getKaoQin(val);
},
async getData() {
await this.$post("/perform/rules/category/list", {
type: this.activeName,
}).then((res) => {
this.getKaoQin(this.cateObj ? this.cateObj.id : "");
if (res.code == 1) {
this.dataArr = res.data.data;
} else {
this.dataArr = [];
}
});
},
async getKaoQin(categoryId) {
await this.$post("/perform/rules/list", {
categoryId,
type: this.activeName,
page: this.query.page,
orderColList: this.typeArr,
name: this.searchValue,
}).then((res) => {
if (res.code == 1) {
this.tableData = res.data;
this.$forceUpdate(this.tableData);
} else {
this.tableData = {};
}
});
},
switchChange(val) {},
handleClick(val) {
this.getData();
},
handleClick() {},
/** 编辑 */
edit(row) {
this.reset();
this.query = { id: row.id };
this.urls.currUrl = "perform/dept/conf/edit";
// this.urls.currUrl = "perform/dept/conf/edit";
this.$get("/perform/dept/conf/info", { id: row.id }).then((res) => {
if (res.code == 1) {
this.form = res.data;
} else {
this.form = {};
}
this.open = true;
});
this.getData();
this.pageInfo.type = "edit";
this.title = "修改部门自动考核信息";
},
/** 新增 */
add(row) {
this.reset();
this.urls.currUrl = "perform/dept/conf/add";
// this.urls.currUrl = "perform/dept/conf/add";
this.getData();
this.open = true;
this.pageInfo.type = "add";
this.title = "新增部门自动考核信息";
},
......@@ -449,7 +539,7 @@ export default {
}
.content {
width: 100%;
height: 500px;
height: 720px;
border: 1px solid #e4e7ed;
border-top: 0;
padding: 20px;
......
......@@ -36,6 +36,9 @@
<el-tag style="margin: 0 5px 5px 0"
>效能绩效指标/工作纪律:{{ val.effectCount }}</el-tag
>
<el-tag style="margin: 0 5px 5px 0"
>其他绩效指标/工作纪律:{{ val.otherCount }}</el-tag
>
</p>
<p class="goal_txt">
<span>最近更新:</span><span>{{ val.createTime }}</span>
......@@ -85,6 +88,8 @@ import drawerShow from "./drawershow";
import deptdrawerShow from "./deptdrawershow.vue";
import windowdrawerShow from "./windowdrawershow.vue";
import table from "@/assets/mixins/table";
import { timestampToTime } from "@/assets/utils/dateFormat.js";
export default {
name: "PerformStaffConfList",
components: {
......@@ -146,9 +151,12 @@ export default {
await this.$post(
this.type == 1 ? "/perform/dept/conf/list" : "/perform/staff/conf/list"
).then((res) => {
console.log(res);
if (res.code == 1) {
this.dataList = res.data.data;
this.dataList.forEach((v) => {
v.createTime = v.createTime ? timestampToTime(v.createTime, 6) : "";
v.updateTime = v.updateTime ? timestampToTime(v.updateTime, 6) : "";
});
}
});
this.activeName == 2
......@@ -293,7 +301,7 @@ export default {
flex-wrap: wrap;
.goal_box {
width: 405px;
height: 270px;
height: 310px;
background: inherit;
background-color: rgba(255, 255, 255, 1);
border: none;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment