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

推请假记录id为空

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