Commit 1b2583e2 authored by 姬鋆屾's avatar 姬鋆屾

推请假记录id为空

parent 5afce4fe
......@@ -25,6 +25,11 @@ export default {
data.attachmentPathList && data.attachmentPathList.length > 0
? (data.attachmentPath = data.attachmentPathList[0].url)
: (data.attachmentPath = "");
if (data.leavePerson == 0 || data.leavePerson) {
if (this.dict.staffList) {
data.leavePerson = this.dict.staffList[this.form.leavePerson];
}
}
return data;
},
......
<template>
<!-- 弹出框表单 -->
<el-drawer :title="title" :visible.sync="open" :direction="direction" size="60%">
<el-drawer
:title="title"
:visible.sync="open"
:direction="direction"
size="60%"
>
<div style="padding:15px">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
......@@ -13,44 +18,140 @@
:maxLength="10"
:disabled="pageInfo.type == 'view'"
/> -->
<Field label="请假人" prop="leavePerson" type="select" filterable remote v-model="form.leavePerson"
placeholder="请输入请假人" :remote-method="remoteMethod" :maxLength="10" :enumData="staffList"
:disabled="pageInfo.type == 'view'" />
<Field label="所属部门" prop="deptId" v-model="form.deptId" type="select" placeholder="请选择所属部门"
:enumData="dict.deptId" :disabled="pageInfo.type == 'view'" />
<Field
label="请假人"
prop="leavePerson"
type="select"
filterable
remote
v-model="form.leavePerson"
placeholder="请输入请假人"
:maxLength="10"
:enumData="staffList"
:disabled="pageInfo.type == 'view'"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
type="select"
placeholder="请选择所属部门"
:enumData="dict.deptId"
:disabled="pageInfo.type == 'view'"
/>
<!-- <Field label="所属部门" prop="deptName" v-model="form.deptName" type="textarea" placeholder="请输入所属部门"/> -->
<Field label="电话号码" prop="phoneNumber" v-model="form.phoneNumber" placeholder="请输入电话号码" :maxLength="11"
:disabled="pageInfo.type == 'view'" />
<Field label="请假类型" prop="leaveType" v-model="form.leaveType" type="select" :enumData="dict.leaveType"
placeholder="请选择请假类型" :disabled="pageInfo.type == 'view'" />
<Field
label="电话号码"
prop="phoneNumber"
v-model="form.phoneNumber"
placeholder="请输入电话号码"
:maxLength="11"
:disabled="pageInfo.type == 'view'"
/>
<Field
label="请假类型"
prop="leaveType"
v-model="form.leaveType"
type="select"
:enumData="dict.leaveType"
placeholder="请选择请假类型"
:disabled="pageInfo.type == 'view'"
/>
<Field label="开始时间" prop="startTime" v-model="form.startTime" type="datetime" @change="changedate"
:disabled="pageInfo.type == 'view'" />
<Field label="结束时间" prop="endTime" v-model="form.endTime" type="datetime" @change="changedate"
:disabled="pageInfo.type == 'view'" />
<Field
label="开始时间"
prop="startTime"
v-model="form.startTime"
type="datetime"
@change="changedate"
:disabled="pageInfo.type == 'view'"
/>
<Field
label="结束时间"
prop="endTime"
v-model="form.endTime"
type="datetime"
@change="changedate"
:disabled="pageInfo.type == 'view'"
/>
<Field label="时长(单位:小时)" disabled prop="duration" v-model="form.duration / 60 / 60" placeholder="请输入时长(秒)"
:maxLength="4" />
<Field label="请假事由" prop="reason" v-model="form.reason" type="textarea" placeholder="请输入请假事由"
:disabled="pageInfo.type == 'view'" />
<Field label="审核结果" prop="auditResult" v-model="form.auditResult" type="radioCol" :enumData="dict.auditResult"
placeholder="请选择审核结果" :disabled="pageInfo.type == 'view'" style="width: 100%;" />
<Field
label="时长(单位:小时)"
disabled
prop="duration"
v-model="form.duration / 60 / 60"
placeholder="请输入时长(秒)"
:maxLength="4"
/>
<Field
label="请假事由"
prop="reason"
v-model="form.reason"
type="textarea"
placeholder="请输入请假事由"
:disabled="pageInfo.type == 'view'"
/>
<Field
label="审核结果"
prop="auditResult"
v-model="form.auditResult"
type="radioCol"
:enumData="dict.auditResult"
placeholder="请选择审核结果"
:disabled="pageInfo.type == 'view'"
style="width: 100%;"
/>
<Field label="审批负责人" prop="approverId" type="select" v-model="form.approverId" placeholder="请选择审批负责人"
:enumData="dict.approverId" :disabled="pageInfo.type == 'view'" />
<Field label="申请时间" prop="createTime" v-model="form.createTime" type="datetime" disabled />
<Field label="审核说明" prop="auditDesc" type="textarea" v-model="form.auditDesc" placeholder="请输入审核说明"
:disabled="pageInfo.type == 'view'" style="width: 100%;" />
<Field
label="审批负责人"
prop="approverId"
type="select"
v-model="form.approverId"
placeholder="请选择审批负责人"
:enumData="dict.approverId"
:disabled="pageInfo.type == 'view'"
/>
<Field
label="申请时间"
prop="createTime"
v-model="form.createTime"
type="datetime"
disabled
/>
<Field
label="审核说明"
prop="auditDesc"
type="textarea"
v-model="form.auditDesc"
placeholder="请输入审核说明"
:disabled="pageInfo.type == 'view'"
style="width: 100%;"
/>
</el-row>
<!-- <Field label="审批负责人" prop="approver" v-model="form.approver" placeholder="请输入审批负责人"/> -->
<!-- <Field label="附件" prop="attachment" v-model="form.attachment" type="textarea" placeholder="请输入附件"/> -->
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"
:disabled="pageInfo.type == 'view'" style="width: 100%;" />
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
:disabled="pageInfo.type == 'view'"
style="width: 100%;"
/>
<el-form-item label="附件路径" prop="attachmentPathList">
<FileUpload @input="uploadFn" :value="form.attachmentPathList" :fileNumber="1"
:pageInfoType="pageInfo.type" />
<FileUpload
@input="uploadFn"
:value="form.attachmentPathList"
:fileNumber="1"
:pageInfoType="pageInfo.type"
/>
</el-form-item>
<form-buttons @submit="submitForm" noCancelBtn v-if="pageInfo.type !== 'view'" />
<form-buttons
@submit="submitForm"
noCancelBtn
v-if="pageInfo.type !== 'view'"
/>
</el-form>
</div>
</el-drawer>
......@@ -123,7 +224,7 @@ export default {
},
watch: {},
mounted() {
this.remoteMethod()
this.remoteMethod();
},
methods: {
async remoteMethod() {
......@@ -131,12 +232,13 @@ export default {
page: 1,
size: -1,
}).then((res) => {
let data = res.data.data
let obj = {}
let data = res.data.data;
let obj = {};
for (let key in data) {
obj[key] = data[key].name
obj[key] = data[key].name;
}
this.staffList = obj
this.staffList = obj;
this.dict.staffList = this.staffList;
});
},
// beforeSubmit() {
......@@ -211,6 +313,7 @@ export default {
this.open = false;
this.$emit("ok");
},
changedate(val) {
if (this.form.startTime && this.form.endTime) {
if (this.form.endTime.valueOf() > this.form.startTime.valueOf()) {
......
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