Commit 030eadf3 authored by 姬鋆屾's avatar 姬鋆屾

parent 0786c9be
<template>
<span>
<el-button v-if='!noEdit' type="text" icon="el-icon-edit" size='mini' @click='$emit("edit", row)' title="编辑">编辑</el-button>
<el-button
v-if="!noEdit"
type="text"
icon="el-icon-edit"
size="mini"
@click="$emit('edit', row)"
title="编辑"
>编辑</el-button
>
<span>&nbsp;</span>
<el-button v-if='!noView' type="text" icon="el-icon-view" size='mini' @click='$emit("view", row)' title="查看">查看</el-button>
<el-button
v-if="!noView"
type="text"
icon="el-icon-view"
size="mini"
@click="$emit('view', row)"
title="查看"
>查看</el-button
>
<span>&nbsp;</span>
<Confirm @confirm='$emit("del", row.id)' message='确定要删除该条记录吗?'>
<el-button v-if='!noDel' type="text" icon="el-icon-delete" size='mini' title="删除">删除</el-button>
<el-button
v-if="reCheck"
type="text"
icon="el-icon-edit"
size="mini"
@click="$emit('edit', row)"
title="核查"
>核查</el-button
>
<span>&nbsp;</span>
<Confirm @confirm="$emit('del', row.id)" message="确定要删除该条记录吗?">
<el-button
v-if="!noDel"
type="text"
icon="el-icon-delete"
size="mini"
title="删除"
>删除</el-button
>
</Confirm>
</span>
</template>
<script>
import Confirm from '@/components/Confirm.vue';
import Confirm from "@/components/Confirm.vue";
export default {
props: {
noEdit: {
type: Boolean,
default: false
default: false,
},
noDel: {
type: Boolean,
default: false
default: false,
},
noAdd: {
type: Boolean,
default: false
default: false,
},
reCheck: {
type: Boolean,
default: false,
},
noView: {
type: Boolean,
default: false
default: false,
},
row: {
type: Object,
required: true,
default: () => {}
default: () => {},
},
},
components: {
Confirm,
},
methods: {
},
methods: {},
data() {
return {
}
}
}
return {};
},
};
</script>
......@@ -4,50 +4,307 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<div class="dra_content">
<div class="dra_top box">
<div class="title">异常情况</div>
<div class="content">
<el-row>
<el-col :span="12"
>员工:{{ obj.staffName ? obj.staffName : "--" }}</el-col
>
<el-col :span="12"
>所属部门:{{ obj.deptName ? obj.deptName : "--" }}</el-col
>
</el-row>
<el-row>
<el-col :span="12"
>窗口编号:{{ obj.windowNum ? obj.windowNum : "--" }}</el-col
>
<el-col :span="12"
>考勤组:{{
obj.attendanceGroupName ? obj.attendanceGroupName : "--"
}}</el-col
>
</el-row>
<el-row>
<el-col :span="12"
>实际打卡时间:{{
obj.actualAttendTime ? obj.actualAttendTime : "--"
}}</el-col
>
<el-col :span="12"
>上下班时间:{{
obj.goOffTimeStr ? obj.goOffTimeStr : "--"
}}</el-col
>
</el-row>
<el-row>
<el-col :span="12"
>异常时间:{{ obj.errorTime ? obj.errorTime : "--" }}</el-col
>
<el-col :span="12"
>异常结果:{{ obj.errorTime ? obj.errorTime : "--" }}</el-col
>
</el-row>
<el-row>
<el-col :span="12"
>扣分方式:{{ obj.subMethod ? obj.subMethod : "--" }}</el-col
>
<el-col :span="12"
>扣分时间:{{ obj.deductTime ? obj.deductTime : "--" }}</el-col
>
</el-row>
<el-row>
<el-col :span="12"
>扣分人员:{{
obj.deductPerson ? obj.deductPerson : "--"
}}</el-col
>
<el-col :span="12"
>图片凭证:{{ obj.snapPath ? obj.snapPath : "--" }}</el-col
>
</el-row>
</div>
</div>
<div class="dra_down box">
<div class="title">核查情况</div>
<div class="content">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="记录ID" prop="recordId" v-model="form.recordId" placeholder="请输入记录ID"/>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="所属考勤组ID" prop="attendanceGroupId" v-model="form.attendanceGroupId" placeholder="请输入所属考勤组ID"/>
<Field label="所属考勤组名称" prop="attendanceGroupName" v-model="form.attendanceGroupName" placeholder="请输入所属考勤组名称"/>
<Field label="考勤时间" prop="attendanceDate" v-model="form.attendanceDate" type="date" />
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="增减类型" prop="subAddType" v-model="form.subAddType" type="select" :enumData="dict.subAddType" placeholder="请选择增减类型"/>
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="上下班时间" prop="goOffTimeStr" v-model="form.goOffTimeStr" placeholder="请输入上下班时间"/>
<Field label="异常时间" prop="errorTime" v-model="form.errorTime" type="date" />
<Field label="实际打卡时间" prop="actualAttendTime" v-model="form.actualAttendTime" type="date" />
<Field label="异常处理结果" prop="errorResult" v-model="form.errorResult" placeholder="请输入异常处理结果"/>
<Field label="核查人员" prop="checkPerson" v-model="form.checkPerson" placeholder="请输入核查人员"/>
<Field label="核查时间" prop="checkTime" v-model="form.checkTime" type="date" />
<Field label="核查说明" prop="checkDesc" v-model="form.checkDesc" type="textarea" placeholder="请输入核查说明"/>
<Field label="核查结果" prop="checkResult" v-model="form.checkResult" placeholder="请输入核查结果"/>
<Field label="处理状态" prop="checkStatus" v-model="form.checkStatus" type="select" :enumData="dict.checkStatus" placeholder="请选择处理状态"/>
<el-form-item label="核查结果:">
<p v-if="obj.view == '查看'">{{ obj.checkResult }}</p>
<el-radio-group v-model="form.checkResult" v-else>
<el-radio :label="1">扣分</el-radio>
<el-radio :label="2">不扣分</el-radio>
</el-radio-group>
</el-form-item>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<el-row>
<el-form-item label="绩效规则:">
<p v-if="obj.view == '查看'">{{ obj.ruleName }}</p>
<div v-else>
<el-col :span="22">
<el-select
v-model="form.attendanceGroupId"
style="width: 100%;"
>
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-col>
<el-col :span="22">
<el-select
v-model="form.attendanceGroupId"
style="width: 100%;margin-top: 10px;"
>
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option></el-select
></el-col>
</div>
</el-form-item>
</el-row>
<el-row>
<el-form-item label="扣除分值:">
<p v-if="obj.view == '查看'">{{ obj.score }}</p>
<p v-else>{{ form.score }}</p>
</el-form-item>
</el-row>
<el-row>
<el-form-item label="说明:">
<p v-if="obj.view == '查看'">{{ obj.checkDesc }}</p>
<el-input
v-else
v-model="form.checkDesc"
type="textarea"
></el-input>
</el-form-item>
</el-row>
<el-row v-if="obj.view == '查看'">
<el-col :span="24">核查人员:{{ obj.checkPerson }}</el-col>
</el-row>
<el-row v-if="obj.view == '查看'">
<el-col :span="24">核查时间:{{ obj.checkTime }}</el-col>
</el-row>
<form-buttons
v-show="obj.view == '核查'"
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
</div>
</div>
</div>
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field
label="记录ID"
prop="recordId"
v-model="form.recordId"
placeholder="请输入记录ID"
/>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="所属考勤组ID"
prop="attendanceGroupId"
v-model="form.attendanceGroupId"
placeholder="请输入所属考勤组ID"
/>
<Field
label="所属考勤组名称"
prop="attendanceGroupName"
v-model="form.attendanceGroupName"
placeholder="请输入所属考勤组名称"
/>
<Field
label="考勤时间"
prop="attendanceDate"
v-model="form.attendanceDate"
type="date"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="增减类型"
prop="subAddType"
v-model="form.subAddType"
type="select"
:enumData="dict.subAddType"
placeholder="请选择增减类型"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="上下班时间"
prop="goOffTimeStr"
v-model="form.goOffTimeStr"
placeholder="请输入上下班时间"
/>
<Field
label="异常时间"
prop="errorTime"
v-model="form.errorTime"
type="date"
/>
<Field
label="实际打卡时间"
prop="actualAttendTime"
v-model="form.actualAttendTime"
type="date"
/>
<Field
label="异常处理结果"
prop="errorResult"
v-model="form.errorResult"
placeholder="请输入异常处理结果"
/>
<Field
label="核查人员"
prop="checkPerson"
v-model="form.checkPerson"
placeholder="请输入核查人员"
/>
<Field
label="核查时间"
prop="checkTime"
v-model="form.checkTime"
type="date"
/>
<Field
label="核查说明"
prop="checkDesc"
v-model="form.checkDesc"
type="textarea"
placeholder="请输入核查说明"
/>
<Field
label="核查结果"
prop="checkResult"
v-model="form.checkResult"
placeholder="请输入核查结果"
/>
<Field
label="处理状态"
prop="checkStatus"
v-model="form.checkStatus"
type="select"
:enumData="dict.checkStatus"
placeholder="请选择处理状态"
/>
</el-row>
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form> -->
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "CheckAttendRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("check/attend/record")
this.changePath("check/attend/record");
},
data() {
return {
......@@ -57,55 +314,51 @@
title: "考勤绩效记录核查信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"subAddType",
"checkStatus",
],
toDate:[
"attendanceDate",
"errorTime",
"actualAttendTime",
"checkTime",
],
direction: "rtl",
toString: ["subAddType", "checkStatus"],
toDate: ["attendanceDate", "errorTime", "actualAttendTime", "checkTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
createTime: [{ required: true, message: "请选择创建时间" }],
},
obj: {},
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
console.log(this.form);
this.obj = row;
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/attend/record/edit";
this.urls.currUrl = "check/attend/record/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改考勤绩效记录核查信息";
this.pageInfo.type = "edit";
row.view == "核查"
? (this.title = "考勤绩效记录核查")
: (this.title = "修改考勤绩效记录核查信息");
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "check/attend/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增考勤绩效记录核查信息";
},
/** 查看*/
view(row) {
this.reset()
this.obj = row;
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/attend/record/view";
this.urls.currUrl = "check/attend/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "考勤绩效记录核查信息详细";
},
/**取消按钮 */
......@@ -125,28 +378,28 @@
// 表单重置
reset() {
this.form = {
recordId : null,
staffId : null,
staffName : "",
workNum : "",
deptId : null,
deptName : "",
attendanceGroupId : null,
attendanceGroupName : "",
attendanceDate : null,
ruleId : null,
ruleName : "",
subAddType : 1,
score : 0.00,
goOffTimeStr : "",
errorTime : null,
actualAttendTime : null,
errorResult : "",
checkPerson : "",
checkTime : null,
checkDesc : "",
checkResult : "",
checkStatus : 1,
recordId: null,
staffId: null,
staffName: "",
workNum: "",
deptId: null,
deptName: "",
attendanceGroupId: null,
attendanceGroupName: "",
attendanceDate: null,
ruleId: null,
ruleName: "",
subAddType: 1,
score: 0.0,
goOffTimeStr: "",
errorTime: null,
actualAttendTime: null,
errorResult: "",
checkPerson: "",
checkTime: null,
checkDesc: "",
checkResult: "",
checkStatus: 1,
};
this.resetForm("form");
},
......@@ -156,5 +409,45 @@
}
},
},
};
};
</script>
<style lang="less" scoped>
.dra_content {
width: 100%;
height: 100%;
padding: 20px;
.box {
width: 100%;
height: auto;
.title {
color: #1890ff;
font-size: 16px;
padding-left: 10px;
position: relative;
margin-bottom: 30px;
&::after {
content: "";
display: block;
border-left: 3px solid #1890ff;
left: 0;
top: 0;
bottom: 0;
position: absolute;
}
}
.content {
width: 100%;
padding: 10px;
font-family: "微软雅黑", sans-serif;
font-weight: 400;
font-style: normal;
font-size: 14px;
margin-left: 0 auto;
margin-bottom: 30px;
/deep/.el-row {
margin-bottom: 20px;
}
}
}
}
</style>
<template>
<div class="page">
<LayoutTable notAdd notDel :data="tableData" :config="tableConfig">
<el-button
slot="table-head-left2"
style="margin-left: 10px"
......@@ -9,7 +8,8 @@
size="mini"
@click="doExport"
:disabled="isExport"
>导出</el-button>
>导出</el-button
>
</LayoutTable>
<!-- 考勤绩效记录核查信息导入对话框 -->
......@@ -37,10 +37,11 @@
<em>点击上传</em>
</div>
<div class="el-upload__tip" slot="tip">
<el-checkbox
v-model="upload.updateSupport"
/>是否更新已经存在的数据
<el-link type="primary" style="font-size: 14px" @click="downloadTemplate"
<el-checkbox v-model="upload.updateSupport" />是否更新已经存在的数据
<el-link
type="primary"
style="font-size: 14px"
@click="downloadTemplate"
>下载模板</el-link
>
</div>
......@@ -59,17 +60,16 @@
</template>
<script>
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "CheckAttendRecordList",
components: {
drawerShow
},
mixins: [table],
created() {
drawerShow,
},
mixins: [table],
created() {},
methods: {
/** 导入 */
handleImport() {
......@@ -79,7 +79,11 @@
/** 下载模板操作 */
downloadTemplate() {
this.isExport = true;
this.$download("/check/attend/record/downloadTemplate", {}, { type: "excel" })
this.$download(
"/check/attend/record/downloadTemplate",
{},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
......@@ -105,9 +109,15 @@
/** 导出Excel */
doExport() {
this.isExport = true;
this.$download("/check/attend/record/exportExcel", {
"idList": this.selection,
}, { type: "excel" }).then(() => this.isExport = false).catch(error => {
this.$download(
"/check/attend/record/exportExcel",
{
idList: this.selection,
},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
this.$message.error(error.message);
});
......@@ -118,13 +128,14 @@
},
/** 重写编辑方法 */
toEdit(row) {
row.view = "核查";
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
row.view = "查看";
this.$refs.drawerform.view(row);
},
},
data() {
return {
......@@ -143,59 +154,104 @@
},
isExport: false,
config: {
isshowTabPane:true,
isshowTabPane: true,
search: [
{
name: "status",
type: "select",
label: "全部状态",
fuzzy: false,
},
{
name: "deptId",
type: "select",
label: "全部部门",
fuzzy: false,
},
{
name: "date",
type: "date",
label: "请选择日期",
fuzzy: false,
},
{
name: "staffName",
type: "text",
label: "请输入员工姓名搜索",
fuzzy: false,
},
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "员工姓名", prop: "staffName"},
{ type: "selection", width: 50 },
{ type: "index", label: "序号", width: 50 },
{label: "工号", prop: "workNum"},
{ label: "姓名", prop: "staffName" },
{label: "所属部门名称", prop: "deptName"},
{ label: "窗口编号", prop: "windowNum" },
{label: "所属考勤组名称", prop: "attendanceGroupName"},
{ label: "所属部门", prop: "deptName" },
{label: "考勤时间", prop: "attendanceDate", formatter: this.formatterDate},
{ label: "考勤组", prop: "attendanceGroupName" },
{label: "规则名称", prop: "ruleName"},
{
label: "异常时间",
prop: "errorTime",
formatter: this.formatterDate,
},
{label: "增减类型", prop: "subAddType",formatter: this.formatter},
{ label: "上下班时间", prop: "goOffTimeStr" },
{label: "扣分或增加分值",fixed:"right", prop: "score", formatter: this.formatter},
{
label: "实际打卡时间",
prop: "actualAttendTime",
formatter: this.formatterDate,
},
{label: "上下班时间", prop: "goOffTimeStr"},
{ label: "异常结果", prop: "errorResult" },
{label: "异常时间", prop: "errorTime", formatter: this.formatterDate},
{ label: "图片凭证", prop: "snapPath" },
{label: "实际打卡时间", prop: "actualAttendTime", formatter: this.formatterDate},
{ label: "绩效规则", prop: "ruleNme" },
{label: "异常处理结果", prop: "errorResult"},
{ label: "扣分方式", prop: "subMethod", formatter: this.formatter },
{label: "核查时间", prop: "checkTime", formatter: this.formatterDate},
{
label: "扣分时间",
prop: "deductTime",
formatter: this.formatterDate,
},
{label: "核查说明", prop: "checkDesc"},
{ label: "扣分人员", prop: "deductPerson" },
{label: "核查结果", prop: "checkResult"},
{ label: "扣分分值", prop: "score", formatter: this.formatter },
{label: "处理状态",fixed:"right", prop: "checkStatus",formatter: this.formatter},
{
label: "处理状态",
prop: "processStatus",
formatter: this.formatter,
},
{label: "创建用户", prop: "createUserId", formatter: this.formatter},
{
label: "操作",
fixed:"right",
width: 240,
formatter: row => {
width: 200,
formatter: (row) => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
<table-buttons
noAdd
noDel
noEdit
reCheck
row={row}
onEdit={this.toEdit}
onView={this.toView}
onDel={this.toDel}
/>
);
}
}
]
}
};
}
},
},
],
},
};
},
};
</script>
......@@ -4,54 +4,188 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="记录ID" prop="recordId" v-model="form.recordId" placeholder="请输入记录ID"/>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="窗口编号" prop="windowNum" v-model="form.windowNum" placeholder="请输入窗口编号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="投诉标题" prop="complainTitle" v-model="form.complainTitle" placeholder="请输入投诉标题"/>
<Field label="投诉内容"><editor v-model="form.complainContent" :min-height="256"/></Field>
<Field label="投诉人真实姓名" prop="complainRealName" v-model="form.complainRealName" placeholder="请输入投诉人真实姓名"/>
<Field label="联系电话" prop="contact" v-model="form.contact" placeholder="请输入联系电话"/>
<Field label="投诉时间" prop="complainTime" v-model="form.complainTime" type="date" />
<Field label="投诉来源" prop="complainSource" v-model="form.complainSource" placeholder="请输入投诉来源"/>
<Field label="投诉设备" prop="complainDevice" v-model="form.complainDevice" placeholder="请输入投诉设备"/>
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="扣分方式" prop="subMethod" v-model="form.subMethod" type="select" :enumData="dict.subMethod" placeholder="请选择扣分方式"/>
<Field label="扣分人员" prop="deductPerson" v-model="form.deductPerson" placeholder="请输入扣分人员"/>
<Field label="扣分时间" prop="deductTime" v-model="form.deductTime" type="date" />
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="核查人员" prop="checkPerson" v-model="form.checkPerson" placeholder="请输入核查人员"/>
<Field label="核查时间" prop="checkTime" v-model="form.checkTime" type="date" />
<Field label="核查说明" prop="checkDesc" v-model="form.checkDesc" type="textarea" placeholder="请输入核查说明"/>
<Field label="核查结果" prop="checkResult" v-model="form.checkResult" placeholder="请输入核查结果"/>
<Field label="处理状态" prop="checkStatus" v-model="form.checkStatus" type="select" :enumData="dict.checkStatus" placeholder="请选择处理状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<Field
label="记录ID"
prop="recordId"
v-model="form.recordId"
placeholder="请输入记录ID"
/>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="窗口编号"
prop="windowNum"
v-model="form.windowNum"
placeholder="请输入窗口编号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="投诉标题"
prop="complainTitle"
v-model="form.complainTitle"
placeholder="请输入投诉标题"
/>
<Field label="投诉内容"
><editor v-model="form.complainContent" :min-height="256"
/></Field>
<Field
label="投诉人真实姓名"
prop="complainRealName"
v-model="form.complainRealName"
placeholder="请输入投诉人真实姓名"
/>
<Field
label="联系电话"
prop="contact"
v-model="form.contact"
placeholder="请输入联系电话"
/>
<Field
label="投诉时间"
prop="complainTime"
v-model="form.complainTime"
type="date"
/>
<Field
label="投诉来源"
prop="complainSource"
v-model="form.complainSource"
placeholder="请输入投诉来源"
/>
<Field
label="投诉设备"
prop="complainDevice"
v-model="form.complainDevice"
placeholder="请输入投诉设备"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="扣分方式"
prop="subMethod"
v-model="form.subMethod"
type="select"
:enumData="dict.subMethod"
placeholder="请选择扣分方式"
/>
<Field
label="扣分人员"
prop="deductPerson"
v-model="form.deductPerson"
placeholder="请输入扣分人员"
/>
<Field
label="扣分时间"
prop="deductTime"
v-model="form.deductTime"
type="date"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="核查人员"
prop="checkPerson"
v-model="form.checkPerson"
placeholder="请输入核查人员"
/>
<Field
label="核查时间"
prop="checkTime"
v-model="form.checkTime"
type="date"
/>
<Field
label="核查说明"
prop="checkDesc"
v-model="form.checkDesc"
type="textarea"
placeholder="请输入核查说明"
/>
<Field
label="核查结果"
prop="checkResult"
v-model="form.checkResult"
placeholder="请输入核查结果"
/>
<Field
label="处理状态"
prop="checkStatus"
v-model="form.checkStatus"
type="select"
:enumData="dict.checkStatus"
placeholder="请选择处理状态"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "CheckComplainRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("check/complain/record")
this.changePath("check/complain/record");
},
data() {
return {
......@@ -61,54 +195,47 @@
title: "评价绩效投诉核查信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"subMethod",
"checkStatus",
],
toDate:[
"complainTime",
"deductTime",
"checkTime",
],
direction: "rtl",
toString: ["subMethod", "checkStatus"],
toDate: ["complainTime", "deductTime", "checkTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
}
createTime: [{ required: true, message: "请选择创建时间" }],
},
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/complain/record/edit";
this.urls.currUrl = "check/complain/record/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改评价绩效投诉核查信息";
this.pageInfo.type = "edit";
row.view == "核查"
? (this.title = "评价绩效投诉核查")
: (this.title = "修改评价绩效投诉核查信息");
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "check/complain/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增评价绩效投诉核查信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/complain/record/view";
this.urls.currUrl = "check/complain/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "评价绩效投诉核查信息详细";
},
/**取消按钮 */
......@@ -128,32 +255,32 @@
// 表单重置
reset() {
this.form = {
recordId : null,
staffId : null,
staffName : "",
workNum : "",
windowNum : "",
deptId : null,
deptName : "",
complainTitle : "",
complainContent : "",
complainRealName : "",
contact : "",
complainTime : null,
complainSource : "",
complainDevice : "",
ruleId : null,
ruleName : "",
subMethod : 1,
deductPerson : "",
deductTime : null,
score : 0.00,
checkPerson : "",
checkTime : null,
checkDesc : "",
checkResult : "",
checkStatus : 1,
remark : "",
recordId: null,
staffId: null,
staffName: "",
workNum: "",
windowNum: "",
deptId: null,
deptName: "",
complainTitle: "",
complainContent: "",
complainRealName: "",
contact: "",
complainTime: null,
complainSource: "",
complainDevice: "",
ruleId: null,
ruleName: "",
subMethod: 1,
deductPerson: "",
deductTime: null,
score: 0.0,
checkPerson: "",
checkTime: null,
checkDesc: "",
checkResult: "",
checkStatus: 1,
remark: "",
};
this.resetForm("form");
},
......@@ -163,5 +290,5 @@
}
},
},
};
};
</script>
<template>
<div class="page">
<LayoutTable notAdd notDel :data="tableData" :config="tableConfig">
<el-button
slot="table-head-left2"
style="margin-left: 10px"
......@@ -9,7 +8,8 @@
size="mini"
@click="doExport"
:disabled="isExport"
>导出</el-button>
>导出</el-button
>
</LayoutTable>
<!-- 评价绩效投诉核查信息导入对话框 -->
......@@ -37,10 +37,11 @@
<em>点击上传</em>
</div>
<div class="el-upload__tip" slot="tip">
<el-checkbox
v-model="upload.updateSupport"
/>是否更新已经存在的数据
<el-link type="primary" style="font-size: 14px" @click="downloadTemplate"
<el-checkbox v-model="upload.updateSupport" />是否更新已经存在的数据
<el-link
type="primary"
style="font-size: 14px"
@click="downloadTemplate"
>下载模板</el-link
>
</div>
......@@ -59,17 +60,16 @@
</template>
<script>
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "CheckComplainRecordList",
components: {
drawerShow
},
mixins: [table],
created() {
drawerShow,
},
mixins: [table],
created() {},
methods: {
/** 导入 */
handleImport() {
......@@ -79,7 +79,11 @@
/** 下载模板操作 */
downloadTemplate() {
this.isExport = true;
this.$download("/check/complain/record/downloadTemplate", {}, { type: "excel" })
this.$download(
"/check/complain/record/downloadTemplate",
{},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
......@@ -105,9 +109,15 @@
/** 导出Excel */
doExport() {
this.isExport = true;
this.$download("/check/complain/record/exportExcel", {
"idList": this.selection,
}, { type: "excel" }).then(() => this.isExport = false).catch(error => {
this.$download(
"/check/complain/record/exportExcel",
{
idList: this.selection,
},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
this.$message.error(error.message);
});
......@@ -118,13 +128,14 @@
},
/** 重写编辑方法 */
toEdit(row) {
row.view = "核查";
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
row.view = "查看";
this.$refs.drawerform.view(row);
},
},
data() {
return {
......@@ -144,42 +155,110 @@
isExport: false,
config: {
isshowTabPane:true,
isshowTabPane: true,
search: [
{
name: "status",
type: "select",
label: "全部状态",
fuzzy: false,
},
{
name: "deptId",
type: "select",
label: "全部部门",
fuzzy: false,
},
{
name: "source",
type: "select",
label: "全部来源",
fuzzy: false,
},
{
name: "date",
type: "date",
label: "请选择日期",
fuzzy: false,
},
{
name: "staffName",
type: "text",
label: "请输入员工姓名搜索",
fuzzy: false,
},
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{ type: "selection", width: 50 },
{ type: "index", label: "序号", width: 50 },
{ label: "姓名", prop: "staffName" },
{label: "员工姓名", prop: "staffName"},
{ label: "窗口编号", prop: "windowNum" },
{label: "所属部门名称", prop: "deptName"},
{ label: "所属部门", prop: "deptName" },
{label: "投诉时间", prop: "complainTime", formatter: this.formatterDate},
{ label: "投诉标题", prop: "complainTitle" },
{label: "扣分方式", prop: "subMethod",formatter: this.formatter},
{ label: "投诉内容", prop: "complainContent" },
{label: "扣分时间", prop: "deductTime", formatter: this.formatterDate},
{ label: "投诉人真实姓名", prop: "complainRealName" },
{label: "扣分或增加分值", prop: "score", formatter: this.formatter},
{ label: "联系电话", prop: "contact" },
{label: "核查时间", prop: "checkTime", formatter: this.formatterDate},
{
label: "投诉时间",
prop: "complainTime",
formatter: this.formatterDate,
},
{ label: "投诉来源", prop: "complainSource" },
{ label: "图片凭证", prop: "snapPath" },
{ label: "投诉设备", prop: "complainDevice" },
{ label: "绩效规则", prop: "ruleNme" },
{ label: "扣分方式", prop: "subMethod", formatter: this.formatter },
{
label: "扣分时间",
prop: "deductTime",
formatter: this.formatterDate,
},
{label: "处理状态", prop: "checkStatus",formatter: this.formatter},
{ label: "扣分人员", prop: "deductPerson" },
{ label: "扣分分值", prop: "score", formatter: this.formatter },
{
label: "处理状态",
prop: "processStatus",
formatter: this.formatter,
},
{label: "创建用户", prop: "createUserId", formatter: this.formatter},
{
label: "操作",
width: 240,
formatter: row => {
width: 200,
formatter: (row) => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
<table-buttons
noAdd
noDel
reCheck
noEdit
row={row}
onEdit={this.toEdit}
onView={this.toView}
onDel={this.toDel}
/>
);
}
}
]
}
};
}
},
},
],
},
};
},
};
</script>
......@@ -4,52 +4,182 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="记录ID" prop="recordId" v-model="form.recordId" placeholder="请输入记录ID"/>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="窗口编号" prop="windowNum" v-model="form.windowNum" placeholder="请输入窗口编号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="违规类型" prop="irregularType" v-model="form.irregularType" type="select" :enumData="dict.irregularType" placeholder="请选择违规类型"/>
<Field label="发生时间" prop="happenTime" v-model="form.happenTime" type="date" />
<Field label="持续时间,秒" prop="duration" v-model="form.duration" placeholder="请输入持续时间,秒"/>
<Field label="报警时间" prop="alarmTime" v-model="form.alarmTime" type="date" />
<Field label="图片凭证地址" prop="snapPath" v-model="form.snapPath" type="textarea" placeholder="请输入图片凭证地址"/>
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="扣分方式" prop="subMethod" v-model="form.subMethod" type="select" :enumData="dict.subMethod" placeholder="请选择扣分方式"/>
<Field label="扣分人员" prop="deductPerson" v-model="form.deductPerson" placeholder="请输入扣分人员"/>
<Field label="扣分时间" prop="deductTime" v-model="form.deductTime" type="date" />
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="核查人员" prop="checkPerson" v-model="form.checkPerson" placeholder="请输入核查人员"/>
<Field label="核查时间" prop="checkTime" v-model="form.checkTime" type="date" />
<Field label="核查说明" prop="checkDesc" v-model="form.checkDesc" type="textarea" placeholder="请输入核查说明"/>
<Field label="核查结果" prop="checkResult" v-model="form.checkResult" placeholder="请输入核查结果"/>
<Field label="处理状态" prop="checkStatus" v-model="form.checkStatus" type="select" :enumData="dict.checkStatus" placeholder="请选择处理状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<Field
label="记录ID"
prop="recordId"
v-model="form.recordId"
placeholder="请输入记录ID"
/>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="窗口编号"
prop="windowNum"
v-model="form.windowNum"
placeholder="请输入窗口编号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="违规类型"
prop="irregularType"
v-model="form.irregularType"
type="select"
:enumData="dict.irregularType"
placeholder="请选择违规类型"
/>
<Field
label="发生时间"
prop="happenTime"
v-model="form.happenTime"
type="date"
/>
<Field
label="持续时间,秒"
prop="duration"
v-model="form.duration"
placeholder="请输入持续时间,秒"
/>
<Field
label="报警时间"
prop="alarmTime"
v-model="form.alarmTime"
type="date"
/>
<Field
label="图片凭证地址"
prop="snapPath"
v-model="form.snapPath"
type="textarea"
placeholder="请输入图片凭证地址"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="扣分方式"
prop="subMethod"
v-model="form.subMethod"
type="select"
:enumData="dict.subMethod"
placeholder="请选择扣分方式"
/>
<Field
label="扣分人员"
prop="deductPerson"
v-model="form.deductPerson"
placeholder="请输入扣分人员"
/>
<Field
label="扣分时间"
prop="deductTime"
v-model="form.deductTime"
type="date"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="核查人员"
prop="checkPerson"
v-model="form.checkPerson"
placeholder="请输入核查人员"
/>
<Field
label="核查时间"
prop="checkTime"
v-model="form.checkTime"
type="date"
/>
<Field
label="核查说明"
prop="checkDesc"
v-model="form.checkDesc"
type="textarea"
placeholder="请输入核查说明"
/>
<Field
label="核查结果"
prop="checkResult"
v-model="form.checkResult"
placeholder="请输入核查结果"
/>
<Field
label="处理状态"
prop="checkStatus"
v-model="form.checkStatus"
type="select"
:enumData="dict.checkStatus"
placeholder="请选择处理状态"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "CheckEffectRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("check/effect/record")
this.changePath("check/effect/record");
},
data() {
return {
......@@ -59,56 +189,47 @@
title: "效能绩效核查信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"irregularType",
"subMethod",
"checkStatus",
],
toDate:[
"happenTime",
"alarmTime",
"deductTime",
"checkTime",
],
direction: "rtl",
toString: ["irregularType", "subMethod", "checkStatus"],
toDate: ["happenTime", "alarmTime", "deductTime", "checkTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
}
createTime: [{ required: true, message: "请选择创建时间" }],
},
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/effect/record/edit";
this.urls.currUrl = "check/effect/record/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改效能绩效核查信息";
this.pageInfo.type = "edit";
row.view == "核查"
? (this.title = "效能绩效核查")
: (this.title = "修改效能绩效核查信息");
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "check/effect/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增效能绩效核查信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/effect/record/view";
this.urls.currUrl = "check/effect/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "效能绩效核查信息详细";
},
/**取消按钮 */
......@@ -128,30 +249,30 @@
// 表单重置
reset() {
this.form = {
recordId : null,
staffId : null,
staffName : "",
workNum : "",
windowNum : "",
deptId : null,
deptName : "",
irregularType : null,
happenTime : null,
duration : 0,
alarmTime : null,
snapPath : "",
ruleId : null,
ruleName : "",
subMethod : 1,
deductPerson : "",
deductTime : null,
score : 0.00,
checkPerson : "",
checkTime : null,
checkDesc : "",
checkResult : "",
checkStatus : 1,
remark : "",
recordId: null,
staffId: null,
staffName: "",
workNum: "",
windowNum: "",
deptId: null,
deptName: "",
irregularType: null,
happenTime: null,
duration: 0,
alarmTime: null,
snapPath: "",
ruleId: null,
ruleName: "",
subMethod: 1,
deductPerson: "",
deductTime: null,
score: 0.0,
checkPerson: "",
checkTime: null,
checkDesc: "",
checkResult: "",
checkStatus: 1,
remark: "",
};
this.resetForm("form");
},
......@@ -161,5 +282,5 @@
}
},
},
};
};
</script>
<template>
<div class="page">
<LayoutTable notAdd notDel :data="tableData" :config="tableConfig">
<el-button
slot="table-head-left2"
style="margin-left: 10px"
......@@ -9,7 +8,8 @@
size="mini"
@click="doExport"
:disabled="isExport"
>导出</el-button>
>导出</el-button
>
</LayoutTable>
<!-- 效能绩效核查信息导入对话框 -->
......@@ -37,10 +37,11 @@
<em>点击上传</em>
</div>
<div class="el-upload__tip" slot="tip">
<el-checkbox
v-model="upload.updateSupport"
/>是否更新已经存在的数据
<el-link type="primary" style="font-size: 14px" @click="downloadTemplate"
<el-checkbox v-model="upload.updateSupport" />是否更新已经存在的数据
<el-link
type="primary"
style="font-size: 14px"
@click="downloadTemplate"
>下载模板</el-link
>
</div>
......@@ -59,17 +60,16 @@
</template>
<script>
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "CheckEffectRecordList",
components: {
drawerShow
},
mixins: [table],
created() {
drawerShow,
},
mixins: [table],
created() {},
methods: {
/** 导入 */
handleImport() {
......@@ -79,7 +79,11 @@
/** 下载模板操作 */
downloadTemplate() {
this.isExport = true;
this.$download("/check/effect/record/downloadTemplate", {}, { type: "excel" })
this.$download(
"/check/effect/record/downloadTemplate",
{},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
......@@ -105,9 +109,15 @@
/** 导出Excel */
doExport() {
this.isExport = true;
this.$download("/check/effect/record/exportExcel", {
"idList": this.selection,
}, { type: "excel" }).then(() => this.isExport = false).catch(error => {
this.$download(
"/check/effect/record/exportExcel",
{
idList: this.selection,
},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
this.$message.error(error.message);
});
......@@ -118,13 +128,14 @@
},
/** 重写编辑方法 */
toEdit(row) {
row.view = "核查";
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
row.view = "查看";
this.$refs.drawerform.view(row);
},
},
data() {
return {
......@@ -143,68 +154,111 @@
},
isExport: false,
config: {
isshowTabPane:true,
isshowTabPane: true,
search: [
{
name: "status",
type: "select",
label: "全部状态",
fuzzy: false,
},
{
name: "deptId",
type: "select",
label: "全部部门",
fuzzy: false,
},
{
name: "date",
type: "date",
label: "请选择日期",
fuzzy: false,
},
{
name: "staffName",
type: "text",
label: "请输入员工姓名搜索",
fuzzy: false,
},
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "员工姓名", prop: "staffName"},
{label: "工号", prop: "workNum"},
{label: "窗口编号", prop: "windowNum"},
{label: "所属部门", prop: "deptId", formatter: this.formatter},
{ type: "selection", width: 60 },
{ type: "index", label: "序号", width: 50 },
{label: "所属部门名称", prop: "deptName"},
{ label: "姓名", prop: "staffName" },
{label: "违规类型", prop: "irregularType",formatter: this.formatter},
{ label: "窗口编号", prop: "windowNum" },
{label: "发生时间", prop: "happenTime", formatter: this.formatterDate},
{ label: "所属部门", prop: "deptName" },
{label: "持续时间,秒", prop: "duration",formatter: this.formatter},
{label: "报警时间", prop: "alarmTime", formatter: this.formatterDate},
{label: "图片凭证地址", prop: "snapPath"},
{label: "绩效规则id", prop: "ruleId", formatter: this.formatter},
{
label: "违规类型",
prop: "irregularType",
formatter: this.formatter,
},
{label: "规则名称", prop: "ruleName"},
{
label: "发生时间",
prop: "happenTime",
formatter: this.formatterDate,
},
{label: "扣分方式", prop: "subMethod",formatter: this.formatter},
{
label: "时长",
prop: "duration",
formatter: this.formatter,
},
{label: "扣分人员", prop: "deductPerson"},
{
label: "报警时间",
prop: "alarmTime",
formatter: this.formatterDate,
},
{label: "扣分时间", prop: "deductTime", formatter: this.formatterDate},
{ label: "图片凭证", prop: "snapPath" },
{label: "扣分或增加分值", prop: "score", formatter: this.formatter},
{ label: "绩效规则", prop: "ruleName" },
{label: "核查人员", prop: "checkPerson"},
{ label: "扣分方式", prop: "subMethod", formatter: this.formatter },
{label: "核查时间", prop: "checkTime", formatter: this.formatterDate},
{
label: "扣分时间",
prop: "deductTime",
formatter: this.formatterDate,
},
{label: "核查说明", prop: "checkDesc"},
{ label: "扣分人员", prop: "deductPerson" },
{label: "核查结果", prop: "checkResult"},
{ label: "扣分分值", prop: "score", formatter: this.formatter },
{label: "处理状态", prop: "checkStatus",formatter: this.formatter},
{
label: "处理状态",
prop: "processStatus",
formatter: this.formatter,
},
{label: "创建用户", prop: "createUserId", formatter: this.formatter},
{
label: "操作",
width: 240,
formatter: row => {
formatter: (row) => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
<table-buttons
noAdd
noDel
noEdit
reCheck
row={row}
onEdit={this.toEdit}
onView={this.toView}
onDel={this.toDel}
/>
);
}
}
]
}
};
}
},
},
],
},
};
},
};
</script>
......@@ -4,51 +4,175 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="记录ID" prop="recordId" v-model="form.recordId" placeholder="请输入记录ID"/>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="窗口编号" prop="windowNum" v-model="form.windowNum" placeholder="请输入窗口编号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="办件编码" prop="goworkCode" v-model="form.goworkCode" placeholder="请输入办件编码"/>
<Field label="办件所属部门" prop="goworkDepts" v-model="form.goworkDepts" type="textarea" placeholder="请输入办件所属部门"/>
<Field label="事项名称" prop="matterlName" v-model="form.matterlName" type="textarea" placeholder="请输入事项名称"/>
<Field label="办理时间" prop="goworkTime" v-model="form.goworkTime" type="date" />
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="扣分方式" prop="subMethod" v-model="form.subMethod" type="select" :enumData="dict.subMethod" placeholder="请选择扣分方式"/>
<Field label="扣分人员" prop="deductPerson" v-model="form.deductPerson" placeholder="请输入扣分人员"/>
<Field label="扣分时间" prop="deductTime" v-model="form.deductTime" type="date" />
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="核查人员" prop="checkPerson" v-model="form.checkPerson" placeholder="请输入核查人员"/>
<Field label="核查时间" prop="checkTime" v-model="form.checkTime" type="date" />
<Field label="核查说明" prop="checkDesc" v-model="form.checkDesc" type="textarea" placeholder="请输入核查说明"/>
<Field label="核查结果" prop="checkResult" v-model="form.checkResult" placeholder="请输入核查结果"/>
<Field label="处理状态" prop="checkStatus" v-model="form.checkStatus" type="select" :enumData="dict.checkStatus" placeholder="请选择处理状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<Field
label="记录ID"
prop="recordId"
v-model="form.recordId"
placeholder="请输入记录ID"
/>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="窗口编号"
prop="windowNum"
v-model="form.windowNum"
placeholder="请输入窗口编号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="办件编码"
prop="goworkCode"
v-model="form.goworkCode"
placeholder="请输入办件编码"
/>
<Field
label="办件所属部门"
prop="goworkDepts"
v-model="form.goworkDepts"
type="textarea"
placeholder="请输入办件所属部门"
/>
<Field
label="事项名称"
prop="matterlName"
v-model="form.matterlName"
type="textarea"
placeholder="请输入事项名称"
/>
<Field
label="办理时间"
prop="goworkTime"
v-model="form.goworkTime"
type="date"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="扣分方式"
prop="subMethod"
v-model="form.subMethod"
type="select"
:enumData="dict.subMethod"
placeholder="请选择扣分方式"
/>
<Field
label="扣分人员"
prop="deductPerson"
v-model="form.deductPerson"
placeholder="请输入扣分人员"
/>
<Field
label="扣分时间"
prop="deductTime"
v-model="form.deductTime"
type="date"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="核查人员"
prop="checkPerson"
v-model="form.checkPerson"
placeholder="请输入核查人员"
/>
<Field
label="核查时间"
prop="checkTime"
v-model="form.checkTime"
type="date"
/>
<Field
label="核查说明"
prop="checkDesc"
v-model="form.checkDesc"
type="textarea"
placeholder="请输入核查说明"
/>
<Field
label="核查结果"
prop="checkResult"
v-model="form.checkResult"
placeholder="请输入核查结果"
/>
<Field
label="处理状态"
prop="checkStatus"
v-model="form.checkStatus"
type="select"
:enumData="dict.checkStatus"
placeholder="请选择处理状态"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "CheckGoworkRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("check/gowork/record")
this.changePath("check/gowork/record");
},
data() {
return {
......@@ -58,54 +182,47 @@
title: "办件绩效核查信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"subMethod",
"checkStatus",
],
toDate:[
"goworkTime",
"deductTime",
"checkTime",
],
direction: "rtl",
toString: ["subMethod", "checkStatus"],
toDate: ["goworkTime", "deductTime", "checkTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
}
createTime: [{ required: true, message: "请选择创建时间" }],
},
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/gowork/record/edit";
this.urls.currUrl = "check/gowork/record/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改办件绩效核查信息";
this.pageInfo.type = "edit";
row.view == "核查"
? (this.title = "办件绩效核查")
: (this.title = "修改办件绩效核查信息");
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "check/gowork/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增办件绩效核查信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/gowork/record/view";
this.urls.currUrl = "check/gowork/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "办件绩效核查信息详细";
},
/**取消按钮 */
......@@ -125,29 +242,29 @@
// 表单重置
reset() {
this.form = {
recordId : null,
staffId : null,
staffName : "",
workNum : "",
windowNum : "",
deptId : null,
deptName : "",
goworkCode : "",
goworkDepts : "",
matterlName : "",
goworkTime : null,
ruleId : null,
ruleName : "",
subMethod : 1,
deductPerson : "",
deductTime : null,
score : 0.00,
checkPerson : "",
checkTime : null,
checkDesc : "",
checkResult : "",
checkStatus : 1,
remark : "",
recordId: null,
staffId: null,
staffName: "",
workNum: "",
windowNum: "",
deptId: null,
deptName: "",
goworkCode: "",
goworkDepts: "",
matterlName: "",
goworkTime: null,
ruleId: null,
ruleName: "",
subMethod: 1,
deductPerson: "",
deductTime: null,
score: 0.0,
checkPerson: "",
checkTime: null,
checkDesc: "",
checkResult: "",
checkStatus: 1,
remark: "",
};
this.resetForm("form");
},
......@@ -157,5 +274,5 @@
}
},
},
};
};
</script>
......@@ -8,7 +8,8 @@
size="mini"
@click="doExport"
:disabled="isExport"
>导出</el-button>
>导出</el-button
>
</LayoutTable>
<!-- 办件绩效核查信息导入对话框 -->
......@@ -36,10 +37,11 @@
<em>点击上传</em>
</div>
<div class="el-upload__tip" slot="tip">
<el-checkbox
v-model="upload.updateSupport"
/>是否更新已经存在的数据
<el-link type="primary" style="font-size: 14px" @click="downloadTemplate"
<el-checkbox v-model="upload.updateSupport" />是否更新已经存在的数据
<el-link
type="primary"
style="font-size: 14px"
@click="downloadTemplate"
>下载模板</el-link
>
</div>
......@@ -58,17 +60,16 @@
</template>
<script>
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "CheckGoworkRecordList",
components: {
drawerShow
},
mixins: [table],
created() {
drawerShow,
},
mixins: [table],
created() {},
methods: {
/** 导入 */
handleImport() {
......@@ -78,7 +79,11 @@
/** 下载模板操作 */
downloadTemplate() {
this.isExport = true;
this.$download("/check/gowork/record/downloadTemplate", {}, { type: "excel" })
this.$download(
"/check/gowork/record/downloadTemplate",
{},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
......@@ -104,9 +109,15 @@
/** 导出Excel */
doExport() {
this.isExport = true;
this.$download("/check/gowork/record/exportExcel", {
"idList": this.selection,
}, { type: "excel" }).then(() => this.isExport = false).catch(error => {
this.$download(
"/check/gowork/record/exportExcel",
{
idList: this.selection,
},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
this.$message.error(error.message);
});
......@@ -117,13 +128,14 @@
},
/** 重写编辑方法 */
toEdit(row) {
row.view = "核查";
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
row.view = "查看";
this.$refs.drawerform.view(row);
},
},
data() {
return {
......@@ -143,66 +155,98 @@
isExport: false,
config: {
isshowTabPane:true,
isshowTabPane: true,
search: [
{
name: "status",
type: "select",
label: "全部状态",
fuzzy: false,
},
{
name: "deptId",
type: "select",
label: "全部部门",
fuzzy: false,
},
{
name: "date",
type: "date",
label: "请选择日期",
fuzzy: false,
},
{
name: "staffName",
type: "text",
label: "请输入员工姓名搜索",
fuzzy: false,
},
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "员工姓名", prop: "staffName"},
{ type: "selection", width: 50 },
{ type: "index", label: "序号", width: 50 },
{label: "工号", prop: "workNum"},
{ label: "姓名", prop: "staffName" },
{label: "窗口编号", prop: "windowNum"},
{ label: "窗口编号", prop: "windowNum" },
{label: "所属部门", prop: "deptId", formatter: this.formatter},
{ label: "所属部门", prop: "deptName" },
{label: "所属部门名称", prop: "deptName"},
{ label: "办件编码", prop: "goworkCode" },
{label: "办件编码", prop: "goworkCode"},
{ label: "办件所属部门", prop: "goworkDepts" },
{label: "办件所属部门", prop: "goworkDepts"},
{ label: "事项名称", prop: "matterlName" },
{label: "事项名称", prop: "matterlName"},
{label: "办理时间", prop: "goworkTime", formatter: this.formatterDate},
{label: "绩效规则id", prop: "ruleId", formatter: this.formatter},
{label: "规则名称", prop: "ruleName"},
{label: "扣分方式", prop: "subMethod",formatter: this.formatter},
{label: "扣分人员", prop: "deductPerson"},
{
label: "办理时间",
prop: "goworkTime",
formatter: this.formatterDate,
},
{label: "扣分时间", prop: "deductTime", formatter: this.formatterDate},
{ label: "图片凭证", prop: "snapPath" },
{label: "扣分或增加分值", prop: "score", formatter: this.formatter},
{ label: "绩效规则", prop: "ruleName" },
{label: "核查人员", prop: "checkPerson"},
{ label: "扣分方式", prop: "subMethod", formatter: this.formatter },
{label: "核查时间", prop: "checkTime", formatter: this.formatterDate},
{
label: "扣分时间",
prop: "deductTime",
formatter: this.formatterDate,
},
{label: "核查说明", prop: "checkDesc"},
{ label: "扣分人员", prop: "deductPerson" },
{label: "核查结果", prop: "checkResult"},
{ label: "扣分分值", prop: "score", formatter: this.formatter },
{label: "处理状态", prop: "checkStatus",formatter: this.formatter},
{
label: "处理状态",
prop: "processStatus",
formatter: this.formatter,
},
{label: "创建用户", prop: "createUserId", formatter: this.formatter},
{
label: "操作",
width: 240,
formatter: row => {
formatter: (row) => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
<table-buttons
noAdd
noDel
noEdit
reCheck
row={row}
onEdit={this.toEdit}
onView={this.toView}
onDel={this.toDel}
/>
);
}
}
]
}
};
}
},
},
],
},
};
},
};
</script>
......@@ -4,51 +4,176 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="记录ID" prop="recordId" v-model="form.recordId" placeholder="请输入记录ID"/>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="窗口编号" prop="windowNum" v-model="form.windowNum" placeholder="请输入窗口编号"/>
<Field label="违规类型" prop="irregularOtherType" v-model="form.irregularOtherType" type="select" :enumData="dict.irregularOtherType" placeholder="请选择违规类型"/>
<Field label="发生时间" prop="happenTime" v-model="form.happenTime" type="date" />
<Field label="持续时间,秒" prop="duration" v-model="form.duration" placeholder="请输入持续时间,秒"/>
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="评分标准" prop="ruleDesc" v-model="form.ruleDesc" type="textarea" placeholder="请输入评分标准"/>
<Field label="扣分方式" prop="subMethod" v-model="form.subMethod" type="select" :enumData="dict.subMethod" placeholder="请选择扣分方式"/>
<Field label="扣分人员" prop="deductPerson" v-model="form.deductPerson" placeholder="请输入扣分人员"/>
<Field label="扣分时间" prop="deductTime" v-model="form.deductTime" type="date" />
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="核查人员" prop="checkPerson" v-model="form.checkPerson" placeholder="请输入核查人员"/>
<Field label="核查时间" prop="checkTime" v-model="form.checkTime" type="date" />
<Field label="核查说明" prop="checkDesc" v-model="form.checkDesc" type="textarea" placeholder="请输入核查说明"/>
<Field label="核查结果" prop="checkResult" v-model="form.checkResult" placeholder="请输入核查结果"/>
<Field label="处理状态" prop="checkStatus" v-model="form.checkStatus" type="select" :enumData="dict.checkStatus" placeholder="请选择处理状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<Field
label="记录ID"
prop="recordId"
v-model="form.recordId"
placeholder="请输入记录ID"
/>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="窗口编号"
prop="windowNum"
v-model="form.windowNum"
placeholder="请输入窗口编号"
/>
<Field
label="违规类型"
prop="irregularOtherType"
v-model="form.irregularOtherType"
type="select"
:enumData="dict.irregularOtherType"
placeholder="请选择违规类型"
/>
<Field
label="发生时间"
prop="happenTime"
v-model="form.happenTime"
type="date"
/>
<Field
label="持续时间,秒"
prop="duration"
v-model="form.duration"
placeholder="请输入持续时间,秒"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="评分标准"
prop="ruleDesc"
v-model="form.ruleDesc"
type="textarea"
placeholder="请输入评分标准"
/>
<Field
label="扣分方式"
prop="subMethod"
v-model="form.subMethod"
type="select"
:enumData="dict.subMethod"
placeholder="请选择扣分方式"
/>
<Field
label="扣分人员"
prop="deductPerson"
v-model="form.deductPerson"
placeholder="请输入扣分人员"
/>
<Field
label="扣分时间"
prop="deductTime"
v-model="form.deductTime"
type="date"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="核查人员"
prop="checkPerson"
v-model="form.checkPerson"
placeholder="请输入核查人员"
/>
<Field
label="核查时间"
prop="checkTime"
v-model="form.checkTime"
type="date"
/>
<Field
label="核查说明"
prop="checkDesc"
v-model="form.checkDesc"
type="textarea"
placeholder="请输入核查说明"
/>
<Field
label="核查结果"
prop="checkResult"
v-model="form.checkResult"
placeholder="请输入核查结果"
/>
<Field
label="处理状态"
prop="checkStatus"
v-model="form.checkStatus"
type="select"
:enumData="dict.checkStatus"
placeholder="请选择处理状态"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "CheckOtherRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("check/other/record")
this.changePath("check/other/record");
},
data() {
return {
......@@ -58,55 +183,47 @@
title: "其它绩效核查信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"irregularOtherType",
"subMethod",
"checkStatus",
],
toDate:[
"happenTime",
"deductTime",
"checkTime",
],
direction: "rtl",
toString: ["irregularOtherType", "subMethod", "checkStatus"],
toDate: ["happenTime", "deductTime", "checkTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
}
createTime: [{ required: true, message: "请选择创建时间" }],
},
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/other/record/edit";
this.urls.currUrl = "check/other/record/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改其它绩效核查信息";
this.pageInfo.type = "edit";
row.view == "核查"
? (this.title = "其它绩效核查")
: (this.title = "修改其它绩效核查信息");
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "check/other/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增其它绩效核查信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/other/record/view";
this.urls.currUrl = "check/other/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "其它绩效核查信息详细";
},
/**取消按钮 */
......@@ -126,29 +243,29 @@
// 表单重置
reset() {
this.form = {
recordId : null,
staffId : null,
staffName : "",
workNum : "",
deptId : null,
deptName : "",
windowNum : "",
irregularOtherType : null,
happenTime : null,
duration : 0,
ruleId : null,
ruleName : "",
ruleDesc : "",
subMethod : 1,
deductPerson : "",
deductTime : null,
score : 0.00,
checkPerson : "",
checkTime : null,
checkDesc : "",
checkResult : "",
checkStatus : 1,
remark : "",
recordId: null,
staffId: null,
staffName: "",
workNum: "",
deptId: null,
deptName: "",
windowNum: "",
irregularOtherType: null,
happenTime: null,
duration: 0,
ruleId: null,
ruleName: "",
ruleDesc: "",
subMethod: 1,
deductPerson: "",
deductTime: null,
score: 0.0,
checkPerson: "",
checkTime: null,
checkDesc: "",
checkResult: "",
checkStatus: 1,
remark: "",
};
this.resetForm("form");
},
......@@ -158,5 +275,5 @@
}
},
},
};
};
</script>
<template>
<div class="page">
<LayoutTable notAdd notDel :data="tableData" :config="tableConfig">
<el-button
slot="table-head-left2"
style="margin-left: 10px"
......@@ -9,7 +8,8 @@
size="mini"
@click="doExport"
:disabled="isExport"
>导出</el-button>
>导出</el-button
>
</LayoutTable>
<!-- 其它绩效核查信息导入对话框 -->
......@@ -37,10 +37,11 @@
<em>点击上传</em>
</div>
<div class="el-upload__tip" slot="tip">
<el-checkbox
v-model="upload.updateSupport"
/>是否更新已经存在的数据
<el-link type="primary" style="font-size: 14px" @click="downloadTemplate"
<el-checkbox v-model="upload.updateSupport" />是否更新已经存在的数据
<el-link
type="primary"
style="font-size: 14px"
@click="downloadTemplate"
>下载模板</el-link
>
</div>
......@@ -59,17 +60,16 @@
</template>
<script>
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "CheckOtherRecordList",
components: {
drawerShow
},
mixins: [table],
created() {
drawerShow,
},
mixins: [table],
created() {},
methods: {
/** 导入 */
handleImport() {
......@@ -79,7 +79,11 @@
/** 下载模板操作 */
downloadTemplate() {
this.isExport = true;
this.$download("/check/other/record/downloadTemplate", {}, { type: "excel" })
this.$download(
"/check/other/record/downloadTemplate",
{},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
......@@ -105,9 +109,15 @@
/** 导出Excel */
doExport() {
this.isExport = true;
this.$download("/check/other/record/exportExcel", {
"idList": this.selection,
}, { type: "excel" }).then(() => this.isExport = false).catch(error => {
this.$download(
"/check/other/record/exportExcel",
{
idList: this.selection,
},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
this.$message.error(error.message);
});
......@@ -118,13 +128,14 @@
},
/** 重写编辑方法 */
toEdit(row) {
row.view = "核查";
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
row.view = "查看";
this.$refs.drawerform.view(row);
},
},
data() {
return {
......@@ -143,40 +154,107 @@
},
isExport: false,
config: {
isshowTabPane:true,
isshowTabPane: true,
search: [
{
name: "status",
type: "select",
label: "全部状态",
fuzzy: false,
},
{
name: "deptId",
type: "select",
label: "全部部门",
fuzzy: false,
},
{
name: "date",
type: "date",
label: "请选择日期",
fuzzy: false,
},
{
name: "staffName",
type: "text",
label: "请输入员工姓名搜索",
fuzzy: false,
},
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{ type: "selection", width: 60 },
{ type: "index", label: "序号", width: 50 },
{ label: "姓名", prop: "staffName" },
{ label: "窗口编号", prop: "windowNum" },
{label: "员工姓名", prop: "staffName"},
{ label: "所属部门", prop: "deptName" },
{label: "发生时间", prop: "happenTime", formatter: this.formatterDate},
{
label: "违规类型",
prop: "irregularOtherType",
formatter: this.formatter,
},
{
label: "发生时间",
prop: "happenTime",
formatter: this.formatterDate,
},
{label: "扣分方式", prop: "subMethod",formatter: this.formatter},
{ label: "评分标准", prop: "ruleDesc" },
{label: "扣分时间", prop: "deductTime", formatter: this.formatterDate},
// {
// label: "持续时间,秒",
// prop: "duration",
// formatter: this.formatter,
// },
{label: "扣分或增加分值", prop: "score", formatter: this.formatter},
// { label: "绩效规则id", prop: "ruleId", formatter: this.formatter },
{ label: "图片凭证", prop: "snapPath" },
{ label: "绩效规则", prop: "ruleName" },
{ label: "扣分方式", prop: "subMethod", formatter: this.formatter },
{
label: "扣分时间",
prop: "deductTime",
formatter: this.formatterDate,
},
{label: "核查时间", prop: "checkTime", formatter: this.formatterDate},
{ label: "扣分人员", prop: "deductPerson" },
{label: "处理状态", prop: "checkStatus",formatter: this.formatter},
{ label: "扣分分值", prop: "score", formatter: this.formatter },
{
label: "处理状态",
prop: "processStatus",
formatter: this.formatter,
},
{label: "创建用户", prop: "createUserId", formatter: this.formatter},
{
label: "操作",
width: 240,
formatter: row => {
formatter: (row) => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
<table-buttons
noAdd
noDel
noEdit
reCheck
row={row}
onEdit={this.toEdit}
onView={this.toView}
onDel={this.toDel}
/>
);
}
}
]
}
};
}
},
},
],
},
};
},
};
</script>
......@@ -4,51 +4,177 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="记录ID" prop="recordId" v-model="form.recordId" placeholder="请输入记录ID"/>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="窗口编号" prop="windowNum" v-model="form.windowNum" placeholder="请输入窗口编号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="评价结果" prop="reviewResult" v-model="form.reviewResult" type="select" :enumData="dict.reviewResult" placeholder="请选择评价结果"/>
<Field label="评价时间" prop="reviewTime" v-model="form.reviewTime" type="date" />
<Field label="评价来源" prop="reviewSource" v-model="form.reviewSource" type="select" :enumData="dict.reviewSource" placeholder="请选择评价来源"/>
<Field label="评价设备" prop="reviewDevice" v-model="form.reviewDevice" placeholder="请输入评价设备"/>
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="扣分方式" prop="subMethod" v-model="form.subMethod" type="select" :enumData="dict.subMethod" placeholder="请选择扣分方式"/>
<Field label="扣分人员" prop="deductPerson" v-model="form.deductPerson" placeholder="请输入扣分人员"/>
<Field label="扣分时间" prop="deductTime" v-model="form.deductTime" type="date" />
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="核查人员" prop="checkPerson" v-model="form.checkPerson" placeholder="请输入核查人员"/>
<Field label="核查时间" prop="checkTime" v-model="form.checkTime" type="date" />
<Field label="核查说明" prop="checkDesc" v-model="form.checkDesc" type="textarea" placeholder="请输入核查说明"/>
<Field label="核查结果" prop="checkResult" v-model="form.checkResult" placeholder="请输入核查结果"/>
<Field label="处理状态" prop="checkStatus" v-model="form.checkStatus" type="select" :enumData="dict.checkStatus" placeholder="请选择处理状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<Field
label="记录ID"
prop="recordId"
v-model="form.recordId"
placeholder="请输入记录ID"
/>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="窗口编号"
prop="windowNum"
v-model="form.windowNum"
placeholder="请输入窗口编号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="评价结果"
prop="reviewResult"
v-model="form.reviewResult"
type="select"
:enumData="dict.reviewResult"
placeholder="请选择评价结果"
/>
<Field
label="评价时间"
prop="reviewTime"
v-model="form.reviewTime"
type="date"
/>
<Field
label="评价来源"
prop="reviewSource"
v-model="form.reviewSource"
type="select"
:enumData="dict.reviewSource"
placeholder="请选择评价来源"
/>
<Field
label="评价设备"
prop="reviewDevice"
v-model="form.reviewDevice"
placeholder="请输入评价设备"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="扣分方式"
prop="subMethod"
v-model="form.subMethod"
type="select"
:enumData="dict.subMethod"
placeholder="请选择扣分方式"
/>
<Field
label="扣分人员"
prop="deductPerson"
v-model="form.deductPerson"
placeholder="请输入扣分人员"
/>
<Field
label="扣分时间"
prop="deductTime"
v-model="form.deductTime"
type="date"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="核查人员"
prop="checkPerson"
v-model="form.checkPerson"
placeholder="请输入核查人员"
/>
<Field
label="核查时间"
prop="checkTime"
v-model="form.checkTime"
type="date"
/>
<Field
label="核查说明"
prop="checkDesc"
v-model="form.checkDesc"
type="textarea"
placeholder="请输入核查说明"
/>
<Field
label="核查结果"
prop="checkResult"
v-model="form.checkResult"
placeholder="请输入核查结果"
/>
<Field
label="处理状态"
prop="checkStatus"
v-model="form.checkStatus"
type="select"
:enumData="dict.checkStatus"
placeholder="请选择处理状态"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "CheckReviewRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("check/review/record")
this.changePath("check/review/record");
},
data() {
return {
......@@ -58,55 +184,47 @@
title: "评价差评绩效核查信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"reviewResult",
"subMethod",
"checkStatus",
],
toDate:[
"reviewTime",
"deductTime",
"checkTime",
],
direction: "rtl",
toString: ["reviewResult", "subMethod", "checkStatus"],
toDate: ["reviewTime", "deductTime", "checkTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
],
createTime: [
{required: true,message: "请选择创建时间" },
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
}
createTime: [{ required: true, message: "请选择创建时间" }],
},
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/review/record/edit";
this.urls.currUrl = "check/review/record/edit";
this.getData();
this.pageInfo.type="edit"
this.title = "修改评价差评绩效核查信息";
this.pageInfo.type = "edit";
row.view == "核查"
? (this.title = "评价差评绩效核查")
: (this.title = "修改评价差评绩效核查信息");
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "check/review/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增评价差评绩效核查信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="check/review/record/view";
this.urls.currUrl = "check/review/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "评价差评绩效核查信息详细";
},
/**取消按钮 */
......@@ -126,29 +244,29 @@
// 表单重置
reset() {
this.form = {
recordId : null,
staffId : null,
staffName : "",
workNum : "",
windowNum : "",
deptId : null,
deptName : "",
reviewResult : null,
reviewTime : null,
reviewSource : "",
reviewDevice : "",
ruleId : null,
ruleName : "",
subMethod : 1,
deductPerson : "",
deductTime : null,
score : 0.00,
checkPerson : "",
checkTime : null,
checkDesc : "",
checkResult : "",
checkStatus : 1,
remark : "",
recordId: null,
staffId: null,
staffName: "",
workNum: "",
windowNum: "",
deptId: null,
deptName: "",
reviewResult: null,
reviewTime: null,
reviewSource: "",
reviewDevice: "",
ruleId: null,
ruleName: "",
subMethod: 1,
deductPerson: "",
deductTime: null,
score: 0.0,
checkPerson: "",
checkTime: null,
checkDesc: "",
checkResult: "",
checkStatus: 1,
remark: "",
};
this.resetForm("form");
},
......@@ -158,5 +276,5 @@
}
},
},
};
};
</script>
<template>
<div class="page">
<LayoutTable notAdd notDel :data="tableData" :config="tableConfig">
<el-button
slot="table-head-left2"
style="margin-left: 10px"
......@@ -9,7 +8,8 @@
size="mini"
@click="doExport"
:disabled="isExport"
>导出</el-button>
>导出</el-button
>
</LayoutTable>
<!-- 评价差评绩效核查信息导入对话框 -->
......@@ -37,10 +37,11 @@
<em>点击上传</em>
</div>
<div class="el-upload__tip" slot="tip">
<el-checkbox
v-model="upload.updateSupport"
/>是否更新已经存在的数据
<el-link type="primary" style="font-size: 14px" @click="downloadTemplate"
<el-checkbox v-model="upload.updateSupport" />是否更新已经存在的数据
<el-link
type="primary"
style="font-size: 14px"
@click="downloadTemplate"
>下载模板</el-link
>
</div>
......@@ -59,17 +60,16 @@
</template>
<script>
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "CheckReviewRecordList",
components: {
drawerShow
},
mixins: [table],
created() {
drawerShow,
},
mixins: [table],
created() {},
methods: {
/** 导入 */
handleImport() {
......@@ -79,7 +79,11 @@
/** 下载模板操作 */
downloadTemplate() {
this.isExport = true;
this.$download("/check/review/record/downloadTemplate", {}, { type: "excel" })
this.$download(
"/check/review/record/downloadTemplate",
{},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
......@@ -105,9 +109,15 @@
/** 导出Excel */
doExport() {
this.isExport = true;
this.$download("/check/review/record/exportExcel", {
"idList": this.selection,
}, { type: "excel" }).then(() => this.isExport = false).catch(error => {
this.$download(
"/check/review/record/exportExcel",
{
idList: this.selection,
},
{ type: "excel" }
)
.then(() => (this.isExport = false))
.catch((error) => {
this.isExport = false;
this.$message.error(error.message);
});
......@@ -118,13 +128,14 @@
},
/** 重写编辑方法 */
toEdit(row) {
row.view = "核查";
this.$refs.drawerform.edit(row);
},
/** 重写查看方法 */
toView(row) {
row.view = "查看";
this.$refs.drawerform.view(row);
},
},
data() {
return {
......@@ -143,66 +154,108 @@
},
isExport: false,
config: {
isshowTabPane:true,
isshowTabPane: true,
search: [
{
name: "status",
type: "select",
label: "全部状态",
fuzzy: false,
},
{
name: "deptId",
type: "select",
label: "全部部门",
fuzzy: false,
},
{
name: "source",
type: "select",
label: "全部来源",
fuzzy: false,
},
{
name: "date",
type: "date",
label: "请选择日期",
fuzzy: false,
},
{
name: "staffName",
type: "text",
label: "请输入员工姓名搜索",
fuzzy: false,
},
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "员工姓名", prop: "staffName"},
{ type: "selection", width: 50 },
{ type: "index", label: "序号", width: 50 },
{label: "工号", prop: "workNum"},
{ label: "姓名", prop: "staffName" },
{label: "窗口编号", prop: "windowNum"},
{ label: "窗口编号", prop: "windowNum" },
{label: "所属部门", prop: "deptId", formatter: this.formatter},
{ label: "所属部门", prop: "deptName" },
{label: "所属部门名称", prop: "deptName"},
{label: "评价结果", prop: "reviewResult",formatter: this.formatter},
{label: "评价时间", prop: "reviewTime", formatter: this.formatterDate},
{label: "评价来源", prop: "reviewSource"},
{label: "评价设备", prop: "reviewDevice"},
{label: "绩效规则id", prop: "ruleId", formatter: this.formatter},
{
label: "评价结果",
prop: "reviewResult",
formatter: this.formatter,
},
{label: "规则名称", prop: "ruleName"},
{ label: "评价来源", prop: "reviewSource" },
{label: "扣分方式", prop: "subMethod",formatter: this.formatter},
{ label: "评价设备", prop: "reviewDevice" },
{label: "扣分人员", prop: "deductPerson"},
{
label: "评价时间",
prop: "reviewTime",
formatter: this.formatterDate,
},
{label: "扣分时间", prop: "deductTime", formatter: this.formatterDate},
{ label: "图片凭证", prop: "snapPath" },
{label: "扣分或增加分值", prop: "score", formatter: this.formatter},
{ label: "绩效规则", prop: "ruleNme" },
{label: "核查人员", prop: "checkPerson"},
{ label: "扣分方式", prop: "subMethod", formatter: this.formatter },
{label: "核查时间", prop: "checkTime", formatter: this.formatterDate},
{
label: "扣分时间",
prop: "deductTime",
formatter: this.formatterDate,
},
{label: "核查说明", prop: "checkDesc"},
{ label: "扣分人员", prop: "deductPerson" },
{label: "核查结果", prop: "checkResult"},
{ label: "扣分分值", prop: "score", formatter: this.formatter },
{label: "处理状态", prop: "checkStatus",formatter: this.formatter},
{
label: "处理状态",
prop: "processStatus",
formatter: this.formatter,
},
{label: "创建用户", prop: "createUserId", formatter: this.formatter},
{
label: "操作",
width: 240,
formatter: row => {
width: 200,
formatter: (row) => {
return (
<table-buttons noAdd row={row} onEdit={this.toEdit} onView={this.toView} onDel={this.toDel} />
<table-buttons
noAdd
noDel
noEdit
reCheck
row={row}
onEdit={this.toEdit}
onView={this.toView}
onDel={this.toDel}
/>
);
}
}
]
}
};
}
},
},
],
},
};
},
};
</script>
......@@ -233,7 +233,7 @@ export default {
{
label: "处理状态",
prop: "processStatus",
prop: "checkStatus",
formatter: this.formatter,
},
......
......@@ -4,49 +4,369 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="窗口编号" prop="windowNum" v-model="form.windowNum" placeholder="请输入窗口编号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="投诉标题" prop="complainTitle" v-model="form.complainTitle" placeholder="请输入投诉标题"/>
<Field label="投诉内容"><editor v-model="form.complainContent" :min-height="256"/></Field>
<Field label="投诉人真实姓名" prop="complainRealName" v-model="form.complainRealName" placeholder="请输入投诉人真实姓名"/>
<Field label="联系电话" prop="contact" v-model="form.contact" placeholder="请输入联系电话"/>
<Field label="投诉时间" prop="complainTime" v-model="form.complainTime" type="date" />
<Field label="投诉来源" prop="complainSource" v-model="form.complainSource" placeholder="请输入投诉来源"/>
<Field label="投诉设备" prop="complainDevice" v-model="form.complainDevice" placeholder="请输入投诉设备"/>
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="扣分方式" prop="subMethod" v-model="form.subMethod" type="select" :enumData="dict.subMethod" placeholder="请选择扣分方式"/>
<Field label="扣分人员" prop="deductPerson" v-model="form.deductPerson" placeholder="请输入扣分人员"/>
<Field label="扣分时间" prop="deductTime" v-model="form.deductTime" type="date" />
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="处理状态" prop="processStatus" v-model="form.processStatus" type="select" :enumData="dict.processStatus" placeholder="请选择处理状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<el-col :span="22">
<el-form-item label="姓名:">
<el-select v-model="form.staffId" style="width: 100%;">
<el-option
v-for="item in staffArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="所属部门:">
<el-select v-model="form.deptId" style="width: 100%;">
<el-option
v-for="item in deptArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="窗口编号:">
<el-input
v-model="form.windowNum"
placeholder="请输入窗口编号"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="投诉来源:">
<el-select
v-model="form.deptId"
style="width: 100%;"
placeholder="请选择投诉来源"
>
<el-option
v-for="item in deptArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="投诉设备:">
<el-input
v-model="form.windowNum"
placeholder="请输入投诉设备"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="投诉标题:">
<el-input
v-model="form.windowNum"
placeholder="请输入投诉标题"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="投诉内容:">
<el-input
v-model="form.windowNum"
placeholder="请输入投诉内容"
type="textarea"
style="width: 100%;"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="真实姓名:">
<el-input
v-model="form.windowNum"
placeholder="请输入真实姓名"
type="textarea"
style="width: 100%;"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="联系电话:">
<el-input
v-model="form.windowNum"
placeholder="请输入联系电话"
type="textarea"
style="width: 100%;"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="投诉时间:">
<el-col :span="11">
<el-date-picker
v-model="dateValue"
type="date"
placeholder="选择日期"
style="width: 100%;"
>
</el-date-picker>
</el-col>
<el-col :span="11">
<el-time-select
v-model="timeValue"
:picker-options="{
start: '06:00',
step: '00:15',
end: '18:30',
}"
placeholder="选择时间"
style="width: 100%;margin-left: 10px;"
>
</el-time-select
></el-col>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="图片凭证:">
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:before-remove="beforeRemove"
multiple
:limit="3"
:on-exceed="handleExceed"
:file-list="fileList"
>
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">
只能上传jpg/png等图片文件
</div>
</el-upload>
</el-form-item>
</el-col>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<el-row>
<el-col :span="22">
<el-form-item label="绩效规则:">
<el-col :span="22">
<el-select v-model="form.attendanceGroupId" style="width: 100%;">
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-col>
<el-col :span="22">
<el-select
v-model="form.attendanceGroupId"
style="width: 100%;margin-top: 10px;"
>
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option></el-select
></el-col>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="扣分分值:">
<p>{{ form.score }}</p>
</el-form-item>
</el-col>
</el-row>
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="窗口编号"
prop="windowNum"
v-model="form.windowNum"
placeholder="请输入窗口编号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="投诉标题"
prop="complainTitle"
v-model="form.complainTitle"
placeholder="请输入投诉标题"
/>
<Field label="投诉内容"
><editor v-model="form.complainContent" :min-height="256"
/></Field>
<Field
label="投诉人真实姓名"
prop="complainRealName"
v-model="form.complainRealName"
placeholder="请输入投诉人真实姓名"
/>
<Field
label="联系电话"
prop="contact"
v-model="form.contact"
placeholder="请输入联系电话"
/>
<Field
label="投诉时间"
prop="complainTime"
v-model="form.complainTime"
type="date"
/>
<Field
label="投诉来源"
prop="complainSource"
v-model="form.complainSource"
placeholder="请输入投诉来源"
/>
<Field
label="投诉设备"
prop="complainDevice"
v-model="form.complainDevice"
placeholder="请输入投诉设备"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="扣分方式"
prop="subMethod"
v-model="form.subMethod"
type="select"
:enumData="dict.subMethod"
placeholder="请选择扣分方式"
/>
<Field
label="扣分人员"
prop="deductPerson"
v-model="form.deductPerson"
placeholder="请输入扣分人员"
/>
<Field
label="扣分时间"
prop="deductTime"
v-model="form.deductTime"
type="date"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="处理状态"
prop="processStatus"
v-model="form.processStatus"
type="select"
:enumData="dict.processStatus"
placeholder="请选择处理状态"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row>
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form> -->
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "PerformComplainRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("perform/complain/record")
this.changePath("perform/complain/record");
},
data() {
return {
......@@ -56,53 +376,45 @@
title: "评价绩效投诉记录信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"subMethod",
"processStatus",
],
toDate:[
"complainTime",
"deductTime",
],
direction: "rtl",
toString: ["subMethod", "processStatus"],
toDate: ["complainTime", "deductTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
createTime: [
{required: true,message: "请选择创建时间" },
],
}
createTime: [{ required: true, message: "请选择创建时间" }],
},
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="perform/complain/record/edit";
this.urls.currUrl = "perform/complain/record/edit";
this.getData();
this.pageInfo.type="edit"
this.pageInfo.type = "edit";
this.title = "修改评价绩效投诉记录信息";
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "perform/complain/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增评价绩效投诉记录信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="perform/complain/record/view";
this.urls.currUrl = "perform/complain/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "评价绩效投诉记录信息详细";
},
/**取消按钮 */
......@@ -122,27 +434,27 @@
// 表单重置
reset() {
this.form = {
staffId : null,
staffName : "",
workNum : "",
windowNum : "",
deptId : null,
deptName : "",
complainTitle : "",
complainContent : "",
complainRealName : "",
contact : "",
complainTime : null,
complainSource : "",
complainDevice : "",
ruleId : null,
ruleName : "",
subMethod : 1,
deductPerson : "",
deductTime : null,
score : 0.00,
processStatus : 1,
remark : "",
staffId: null,
staffName: "",
workNum: "",
windowNum: "",
deptId: null,
deptName: "",
complainTitle: "",
complainContent: "",
complainRealName: "",
contact: "",
complainTime: null,
complainSource: "",
complainDevice: "",
ruleId: null,
ruleName: "",
subMethod: 1,
deductPerson: "",
deductTime: null,
score: 0.0,
processStatus: 1,
remark: "",
};
this.resetForm("form");
},
......@@ -152,5 +464,5 @@
}
},
},
};
};
</script>
......@@ -4,47 +4,341 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="窗口编号" prop="windowNum" v-model="form.windowNum" placeholder="请输入窗口编号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="违规类型" prop="irregularType" v-model="form.irregularType" type="select" :enumData="dict.irregularType" placeholder="请选择违规类型"/>
<Field label="发生时间" prop="happenTime" v-model="form.happenTime" type="date" />
<Field label="持续时间,秒" prop="duration" v-model="form.duration" placeholder="请输入持续时间,秒"/>
<Field label="报警时间" prop="alarmTime" v-model="form.alarmTime" type="date" />
<Field label="图片凭证地址" prop="snapPath" v-model="form.snapPath" type="textarea" placeholder="请输入图片凭证地址"/>
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="扣分方式" prop="subMethod" v-model="form.subMethod" type="select" :enumData="dict.subMethod" placeholder="请选择扣分方式"/>
<Field label="扣分人员" prop="deductPerson" v-model="form.deductPerson" placeholder="请输入扣分人员"/>
<Field label="扣分时间" prop="deductTime" v-model="form.deductTime" type="date" />
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="处理状态" prop="processStatus" v-model="form.processStatus" type="select" :enumData="dict.processStatus" placeholder="请选择处理状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<el-col :span="22">
<el-form-item label="姓名:">
<el-select v-model="form.staffId" style="width: 100%;">
<el-option
v-for="item in staffArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="所属部门:">
<el-select v-model="form.deptId" style="width: 100%;">
<el-option
v-for="item in deptArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="窗口编号:">
<el-input
v-model="form.windowNum"
placeholder="请输入窗口编号"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="违规类型:">
<el-select v-model="form.goworkDepts" style="width: 100%;">
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="发生时间:">
<el-col :span="11">
<el-date-picker
v-model="dateValue"
type="date"
placeholder="选择日期"
style="width: 100%;"
>
</el-date-picker>
</el-col>
<el-col :span="11">
<el-time-select
v-model="timeValue"
:picker-options="{
start: '06:00',
step: '00:15',
end: '18:30',
}"
placeholder="选择时间"
style="width: 100%;margin-left: 10px;"
>
</el-time-select
></el-col>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="时长:">
<el-input
v-model="form.windowNum"
placeholder="请输入时长(xx分xx秒)"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="报警时间:">
<el-col :span="11">
<el-date-picker
v-model="dateValue1"
type="date"
placeholder="选择日期"
style="width: 100%;"
>
</el-date-picker>
</el-col>
<el-col :span="11">
<el-time-select
v-model="timeValue1"
:picker-options="{
start: '06:00',
step: '00:15',
end: '18:30',
}"
placeholder="选择时间"
style="width: 100%;margin-left: 10px;"
>
</el-time-select
></el-col>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="图片凭证:">
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:before-remove="beforeRemove"
multiple
:limit="3"
:on-exceed="handleExceed"
:file-list="fileList"
>
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">
只能上传jpg/png等图片文件
</div>
</el-upload>
</el-form-item>
</el-col>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<el-row>
<el-col :span="22">
<el-form-item label="绩效规则:">
<el-col :span="22">
<el-select v-model="form.attendanceGroupId" style="width: 100%;">
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-col>
<el-col :span="22">
<el-select
v-model="form.attendanceGroupId"
style="width: 100%;margin-top: 10px;"
>
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option></el-select
></el-col>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="扣分分值:">
<p>{{ form.score }}</p>
</el-form-item>
</el-col>
</el-row>
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="窗口编号"
prop="windowNum"
v-model="form.windowNum"
placeholder="请输入窗口编号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="违规类型"
prop="irregularType"
v-model="form.irregularType"
type="select"
:enumData="dict.irregularType"
placeholder="请选择违规类型"
/>
<Field
label="发生时间"
prop="happenTime"
v-model="form.happenTime"
type="date"
/>
<Field
label="持续时间,秒"
prop="duration"
v-model="form.duration"
placeholder="请输入持续时间,秒"
/>
<Field
label="报警时间"
prop="alarmTime"
v-model="form.alarmTime"
type="date"
/>
<Field
label="图片凭证地址"
prop="snapPath"
v-model="form.snapPath"
type="textarea"
placeholder="请输入图片凭证地址"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="扣分方式"
prop="subMethod"
v-model="form.subMethod"
type="select"
:enumData="dict.subMethod"
placeholder="请选择扣分方式"
/>
<Field
label="扣分人员"
prop="deductPerson"
v-model="form.deductPerson"
placeholder="请输入扣分人员"
/>
<Field
label="扣分时间"
prop="deductTime"
v-model="form.deductTime"
type="date"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="处理状态"
prop="processStatus"
v-model="form.processStatus"
type="select"
:enumData="dict.processStatus"
placeholder="请选择处理状态"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row>
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form> -->
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "PerformEffectRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("perform/effect/record")
this.changePath("perform/effect/record");
},
data() {
return {
......@@ -54,55 +348,58 @@
title: "效能绩效记录信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"irregularType",
"subMethod",
"processStatus",
],
toDate:[
"happenTime",
"alarmTime",
"deductTime",
],
direction: "rtl",
toString: ["irregularType", "subMethod", "processStatus"],
toDate: ["happenTime", "alarmTime", "deductTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
createTime: [
{required: true,message: "请选择创建时间" },
createTime: [{ required: true, message: "请选择创建时间" }],
},
staffArr: [
{
label: "员工1",
value: "1",
},
],
}
deptArr: [],
kaoqinArr: [],
fileList: [],
dateValue: "",
timeValue: "",
dateValue1: "",
timeValue1: "",
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="perform/effect/record/edit";
this.urls.currUrl = "perform/effect/record/edit";
this.getData();
this.pageInfo.type="edit"
this.pageInfo.type = "edit";
this.title = "修改效能绩效记录信息";
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "perform/effect/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增效能绩效记录信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="perform/effect/record/view";
this.urls.currUrl = "perform/effect/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "效能绩效记录信息详细";
},
/**取消按钮 */
......@@ -122,25 +419,25 @@
// 表单重置
reset() {
this.form = {
staffId : null,
staffName : "",
workNum : "",
windowNum : "",
deptId : null,
deptName : "",
irregularType : null,
happenTime : null,
duration : 0,
alarmTime : null,
snapPath : "",
ruleId : null,
ruleName : "",
subMethod : 1,
deductPerson : "",
deductTime : null,
score : 0.00,
processStatus : 1,
remark : "",
staffId: null,
staffName: "",
workNum: "",
windowNum: "",
deptId: null,
deptName: "",
irregularType: null,
happenTime: null,
duration: 0,
alarmTime: null,
snapPath: "",
ruleId: null,
ruleName: "",
subMethod: 1,
deductPerson: "",
deductTime: null,
score: 0.0,
processStatus: 1,
remark: "",
};
this.resetForm("form");
},
......@@ -150,5 +447,5 @@
}
},
},
};
};
</script>
......@@ -82,19 +82,6 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="异常时间:">
<el-date-picker
v-model="form.errorTime"
type="date"
placeholder="选择日期"
style="width: 100%;"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="办件时间:">
......
......@@ -4,46 +4,322 @@
:title="title"
:visible.sync="open"
:direction="direction"
size="50%">
size="50%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="员工ID" prop="staffId" v-model="form.staffId" placeholder="请输入员工ID"/>
<Field label="员工姓名" prop="staffName" v-model="form.staffName" placeholder="请输入员工姓名"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="窗口编号" prop="windowNum" v-model="form.windowNum" placeholder="请输入窗口编号"/>
<Field label="所属部门" prop="deptId" v-model="form.deptId" placeholder="请输入所属部门"/>
<Field label="所属部门名称" prop="deptName" v-model="form.deptName" placeholder="请输入所属部门名称"/>
<Field label="评价结果" prop="reviewResult" v-model="form.reviewResult" type="select" :enumData="dict.reviewResult" placeholder="请选择评价结果"/>
<Field label="评价时间" prop="reviewTime" v-model="form.reviewTime" type="date" />
<Field label="评价来源" prop="reviewSource" v-model="form.reviewSource" type="select" :enumData="dict.reviewSource" placeholder="请选择评价来源"/>
<Field label="评价设备" prop="reviewDevice" v-model="form.reviewDevice" placeholder="请输入评价设备"/>
<Field label="绩效规则id" prop="ruleId" v-model="form.ruleId" placeholder="请输入绩效规则id"/>
<Field label="规则名称" prop="ruleName" v-model="form.ruleName" placeholder="请输入规则名称"/>
<Field label="扣分方式" prop="subMethod" v-model="form.subMethod" type="select" :enumData="dict.subMethod" placeholder="请选择扣分方式"/>
<Field label="扣分人员" prop="deductPerson" v-model="form.deductPerson" placeholder="请输入扣分人员"/>
<Field label="扣分时间" prop="deductTime" v-model="form.deductTime" type="date" />
<Field label="扣分或增加分值" prop="score" v-model="form.score" placeholder="请输入扣分或增加分值"/>
<Field label="处理状态" prop="processStatus" v-model="form.processStatus" type="select" :enumData="dict.processStatus" placeholder="请选择处理状态"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<el-col :span="22">
<el-form-item label="姓名:">
<el-select v-model="form.staffId" style="width: 100%;">
<el-option
v-for="item in staffArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="所属部门:">
<el-select v-model="form.deptId" style="width: 100%;">
<el-option
v-for="item in deptArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="窗口编号:">
<el-input
v-model="form.windowNum"
placeholder="请输入窗口编号"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="评价结果:">
<el-radio-group v-model="form.reviewResult">
<el-radio :label="1">非常不满意</el-radio>
<el-radio :label="2">差评</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="评价来源:">
<el-select
v-model="form.deptId"
style="width: 100%;"
placeholder="请选择评价来源"
>
<el-option
v-for="item in deptArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="评价设备:">
<el-input
v-model="form.windowNum"
placeholder="请输入评价设备"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="评价时间">
<el-col :span="11">
<el-date-picker
v-model="dateValue"
type="date"
placeholder="选择日期"
style="width: 100%;"
>
</el-date-picker>
</el-col>
<el-col :span="11">
<el-time-select
v-model="timeValue"
:picker-options="{
start: '06:00',
step: '00:15',
end: '18:30',
}"
placeholder="选择时间"
style="width: 100%;margin-left: 10px;"
>
</el-time-select
></el-col>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="图片凭证:">
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:before-remove="beforeRemove"
multiple
:limit="3"
:on-exceed="handleExceed"
:file-list="fileList"
>
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">
只能上传jpg/png等图片文件
</div>
</el-upload>
</el-form-item>
</el-col>
</el-row>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn />
<el-row>
<el-col :span="22">
<el-form-item label="绩效规则:">
<el-col :span="22">
<el-select v-model="form.attendanceGroupId" style="width: 100%;">
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option
></el-select>
</el-col>
<el-col :span="22">
<el-select
v-model="form.attendanceGroupId"
style="width: 100%;margin-top: 10px;"
>
<el-option
v-for="item in kaoqinArr"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option></el-select
></el-col>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="22">
<el-form-item label="扣分分值:">
<p>{{ form.score }}</p>
</el-form-item>
</el-col>
</el-row>
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field
label="员工ID"
prop="staffId"
v-model="form.staffId"
placeholder="请输入员工ID"
/>
<Field
label="员工姓名"
prop="staffName"
v-model="form.staffName"
placeholder="请输入员工姓名"
/>
<Field
label="工号"
prop="workNum"
v-model="form.workNum"
placeholder="请输入工号"
/>
<Field
label="窗口编号"
prop="windowNum"
v-model="form.windowNum"
placeholder="请输入窗口编号"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
placeholder="请输入所属部门"
/>
<Field
label="所属部门名称"
prop="deptName"
v-model="form.deptName"
placeholder="请输入所属部门名称"
/>
<Field
label="评价结果"
prop="reviewResult"
v-model="form.reviewResult"
type="select"
:enumData="dict.reviewResult"
placeholder="请选择评价结果"
/>
<Field
label="评价时间"
prop="reviewTime"
v-model="form.reviewTime"
type="date"
/>
<Field
label="评价来源"
prop="reviewSource"
v-model="form.reviewSource"
type="select"
:enumData="dict.reviewSource"
placeholder="请选择评价来源"
/>
<Field
label="评价设备"
prop="reviewDevice"
v-model="form.reviewDevice"
placeholder="请输入评价设备"
/>
<Field
label="绩效规则id"
prop="ruleId"
v-model="form.ruleId"
placeholder="请输入绩效规则id"
/>
<Field
label="规则名称"
prop="ruleName"
v-model="form.ruleName"
placeholder="请输入规则名称"
/>
<Field
label="扣分方式"
prop="subMethod"
v-model="form.subMethod"
type="select"
:enumData="dict.subMethod"
placeholder="请选择扣分方式"
/>
<Field
label="扣分人员"
prop="deductPerson"
v-model="form.deductPerson"
placeholder="请输入扣分人员"
/>
<Field
label="扣分时间"
prop="deductTime"
v-model="form.deductTime"
type="date"
/>
<Field
label="扣分或增加分值"
prop="score"
v-model="form.score"
placeholder="请输入扣分或增加分值"
/>
<Field
label="处理状态"
prop="processStatus"
v-model="form.processStatus"
type="select"
:enumData="dict.processStatus"
placeholder="请选择处理状态"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row>
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form> -->
</el-drawer>
</template>
<script>
import form from "@/assets/mixins/formdialog";
export default {
import form from "@/assets/mixins/formdialog";
export default {
name: "PerformReviewRecordDetail",
mixins: [form],
components: {
},
components: {},
created() {
this.changePath("perform/review/record")
this.changePath("perform/review/record");
},
data() {
return {
......@@ -53,54 +329,56 @@
title: "评价差评绩效记录信息",
// 是否显示弹出层
open: false,
direction:"rtl",
toString:[
"reviewResult",
"subMethod",
"processStatus",
],
toDate:[
"reviewTime",
"deductTime",
],
direction: "rtl",
toString: ["reviewResult", "subMethod", "processStatus"],
toDate: ["reviewTime", "deductTime"],
// 表单校验
rules: {
staffName: [
{required: true,message: "请输入员工姓名", trigger: "blur" },
{max: 64,message: "最多只能录入64个字符",trigger: "blur",},
{ required: true, message: "请输入员工姓名", trigger: "blur" },
{ max: 64, message: "最多只能录入64个字符", trigger: "blur" },
],
createTime: [
{required: true,message: "请选择创建时间" },
createTime: [{ required: true, message: "请选择创建时间" }],
},
staffArr: [
{
label: "员工1",
value: "1",
},
],
}
deptArr: [],
kaoqinArr: [],
fileList: [],
dateValue: "",
timeValue: "",
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="perform/review/record/edit";
this.urls.currUrl = "perform/review/record/edit";
this.getData();
this.pageInfo.type="edit"
this.pageInfo.type = "edit";
this.title = "修改评价差评绩效记录信息";
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "perform/review/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增评价差评绩效记录信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="perform/review/record/view";
this.urls.currUrl = "perform/review/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "评价差评绩效记录信息详细";
},
/**取消按钮 */
......@@ -120,24 +398,24 @@
// 表单重置
reset() {
this.form = {
staffId : null,
staffName : "",
workNum : "",
windowNum : "",
deptId : null,
deptName : "",
reviewResult : null,
reviewTime : null,
reviewSource : "",
reviewDevice : "",
ruleId : null,
ruleName : "",
subMethod : 1,
deductPerson : "",
deductTime : null,
score : 0.00,
processStatus : 1,
remark : "",
staffId: null,
staffName: "",
workNum: "",
windowNum: "",
deptId: null,
deptName: "",
reviewResult: null,
reviewTime: null,
reviewSource: "",
reviewDevice: "",
ruleId: null,
ruleName: "",
subMethod: 1,
deductPerson: "",
deductTime: null,
score: 0.0,
processStatus: 1,
remark: "",
};
this.resetForm("form");
},
......@@ -146,6 +424,22 @@
this.$refs[refName].resetFields();
}
},
handleRemove(file, fileList) {
console.log(file, fileList);
},
};
handlePreview(file) {
console.log(file);
},
handleExceed(files, fileList) {
this.$message.warning(
`当前限制选择 3 个文件,本次选择了 ${
files.length
} 个文件,共选择了 ${files.length + fileList.length} 个文件`
);
},
beforeRemove(file, fileList) {
return this.$confirm(`确定移除 ${file.name}?`);
},
},
};
</script>
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