Commit 2582d12c authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents 7da271f3 75109fcd
...@@ -4,25 +4,90 @@ ...@@ -4,25 +4,90 @@
:title="title" :title="title"
:visible.sync="open" :visible.sync="open"
:direction="direction" :direction="direction"
size="60%"> 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>
<!-- <Field label="请假人" prop="leavePersonId" v-model="form.leavePersonId" placeholder="请输入请假人"/> --> <!-- <Field label="请假人" prop="leavePersonId" v-model="form.leavePersonId" placeholder="请输入请假人"/> -->
<Field label="请假人" prop="leavePerson" v-model="form.leavePerson" placeholder="请输入请假人" :maxLength="10"/> <Field
<Field label="所属部门" prop="deptId" v-model="form.deptId" type="select" placeholder="请选择所属部门" :enumData="dict.deptId" /> label="请假人"
prop="leavePerson"
v-model="form.leavePerson"
placeholder="请输入请假人"
:maxLength="10"
/>
<Field
label="所属部门"
prop="deptId"
v-model="form.deptId"
type="select"
placeholder="请选择所属部门"
:enumData="dict.deptId"
/>
<!-- <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
<Field label="请假类型" prop="leaveType" v-model="form.leaveType" type="select" :enumData="dict.leaveType" placeholder="请选择请假类型"/> label="电话号码"
<Field label="开始时间" prop="startTime" v-model="form.startTime" type="datetime" @change="changedate" /> prop="phoneNumber"
<Field label="结束时间" prop="endTime" v-model="form.endTime" type="datetime" @change="changedate" /> v-model="form.phoneNumber"
placeholder="请输入电话号码"
:maxLength="11"
/>
<Field
label="请假类型"
prop="leaveType"
v-model="form.leaveType"
type="select"
:enumData="dict.leaveType"
placeholder="请选择请假类型"
/>
<Field
label="开始时间"
prop="startTime"
v-model="form.startTime"
type="datetime"
@change="changedate"
/>
<Field
label="结束时间"
prop="endTime"
v-model="form.endTime"
type="datetime"
@change="changedate"
/>
<Field label="时长(单位:分钟)" disabled prop="duration" v-model="form.duration" placeholder="请输入时长(分钟)" :maxLength="4"/> <Field
<Field label="请假事由" prop="reason" v-model="form.reason" type="textarea" placeholder="请输入请假事由"/> label="时长(单位:分钟)"
<Field label="审批负责人" prop="approverId" type="select" v-model="form.approverId" placeholder="请选择审批负责人" :enumData="dict.approverId"/> disabled
prop="duration"
v-model="form.duration"
placeholder="请输入时长(分钟)"
:maxLength="4"
/>
<Field
label="请假事由"
prop="reason"
v-model="form.reason"
type="textarea"
placeholder="请输入请假事由"
/>
<Field
label="审批负责人"
prop="approverId"
type="select"
v-model="form.approverId"
placeholder="请选择审批负责人"
:enumData="dict.approverId"
/>
<!-- <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
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row> </el-row>
<el-form-item label="附件路径" prop="attachmentPath"> <el-form-item label="附件路径" prop="attachmentPath">
<FileUpload @input="uploadFn" :value="attachmentPath" /> <FileUpload @input="uploadFn" :value="attachmentPath" />
...@@ -34,99 +99,102 @@ ...@@ -34,99 +99,102 @@
</template> </template>
<script> <script>
import form from "@/assets/mixins/formdialog"; import form from "@/assets/mixins/formdialog";
import valid from '@/assets/utils/vaild.js' import valid from "@/assets/utils/vaild.js";
import {getMinu} from '@/assets/utils/dateFormat.js' import { getMinu } from "@/assets/utils/dateFormat.js";
export default { export default {
name: "AttendanceLeaveRecordDetail", name: "AttendanceLeaveRecordDetail",
mixins: [form], mixins: [form],
components: { components: {},
},
created() { created() {
this.changePath("attendance/leave/record") this.changePath("attendance/leave/record");
}, },
data() { data() {
return { return {
baseUrl:process.env.VUE_APP_API_BASE_URL+'/', baseUrl: process.env.VUE_APP_API_BASE_URL + "/",
// 遮罩层 // 遮罩层
loading: true, loading: true,
// 弹出层标题 // 弹出层标题
title: "请假记录信息", title: "请假记录信息",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
direction:"rtl", direction: "rtl",
toString:[ toString: ["leaveType"],
"leaveType", toDate: ["startTime", "endTime"],
],
toDate:[
"startTime",
"endTime",
],
// 表单校验 // 表单校验
rules: { rules: {
leavePerson:[{required: true,message: "请输入请假人", trigger: "blur" }], leavePerson: [
deptId:[{required: true,message: "请选择部门", trigger: "change" }], { required: true, message: "请输入请假人", trigger: "blur" },
phoneNumber:[ ],
{required: true,message: "请输入电话号码", trigger: "blur" }, deptId: [{ required: true, message: "请选择部门", trigger: "change" }],
phoneNumber: [
{ required: true, message: "请输入电话号码", trigger: "blur" },
{ {
validator: valid.phone, validator: valid.phone,
message: '电话号码格式不正确', message: "电话号码格式不正确",
trigger: ['change', 'blur'] trigger: ["change", "blur"],
} },
], ],
leaveType:[{required: true,message: "请选择请假类型", trigger: "change" }], leaveType: [
startTime:[{required: true,message: "请选择开始时间", trigger: "change" }], { required: true, message: "请选择请假类型", trigger: "change" },
endTime:[ ],
{required: true,message: "请选择结束时间", trigger: "change" }, startTime: [
{ required: true, message: "请选择开始时间", trigger: "change" },
],
endTime: [
{ required: true, message: "请选择结束时间", trigger: "change" },
],
duration: [{ required: true, message: "请输入时长", trigger: "blur" }],
reason: [
{ required: true, message: "请输入请假理由", trigger: "blur" },
],
approverId: [
{ required: true, message: "请选择审批人", trigger: "change" },
],
attachmentPath: [
{ required: true, message: "请上传附件文件", trigger: "change" },
], ],
duration:[{required: true,message: "请输入时长", trigger: "blur" }],
reason:[{required: true,message: "请输入请假理由", trigger: "blur" }],
approverId:[{required: true,message: "请选择审批人", trigger: "change" }],
attachmentPath:[{required: true,message: "请上传附件文件", trigger: "change" }],
}, },
attachmentPath:'' attachmentPath: "",
}; };
}, },
methods: { methods: {
beforeSubmit(){ beforeSubmit() {
if(this.form.endTime.valueOf() > this.form.startTime.valueOf()){ if (this.form.endTime.valueOf() > this.form.startTime.valueOf()) {
this.submitForm() this.submitForm();
}else{ } else {
this.$message.error('结束日期需大于请假日期') this.$message.error("结束日期需大于请假日期");
} }
}, },
uploadFn(e){ uploadFn(e) {
this.attachmentPath = e this.attachmentPath = e;
this.form.attachmentPath = this.attachmentPath[0].url this.form.attachmentPath = this.attachmentPath[0].url;
}, },
/** 编辑 */ /** 编辑 */
edit(row) { edit(row) {
this.reset() this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl ="attendance/leave/record/edit"; this.urls.currUrl = "attendance/leave/record/edit";
this.getData(); this.getData();
this.pageInfo.type="edit" this.pageInfo.type = "edit";
this.title = "修改请假记录信息"; this.title = "修改请假记录信息";
}, },
/** 新增 */ /** 新增 */
add(row) { add(row) {
this.reset() this.reset();
this.urls.currUrl = "attendance/leave/record/add"; this.urls.currUrl = "attendance/leave/record/add";
this.getData(); this.getData();
this.pageInfo.type="add" this.pageInfo.type = "add";
this.title = "新增请假记录信息"; this.title = "新增请假记录信息";
}, },
/** 查看*/ /** 查看*/
view(row) { view(row) {
this.reset() this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl ="attendance/leave/record/view"; this.urls.currUrl = "attendance/leave/record/view";
this.getData(); this.getData();
this.pageInfo.type="view" this.pageInfo.type = "view";
this.title = "请假记录信息详细"; this.title = "请假记录信息详细";
}, },
/**取消按钮 */ /**取消按钮 */
...@@ -136,43 +204,43 @@ ...@@ -136,43 +204,43 @@
/**获取数据后弹框 */ /**获取数据后弹框 */
afterRender(data) { afterRender(data) {
this.attachmentPath = [ this.attachmentPath = [
{ name:'请假附件', // { name:'请假附件',
url:this.form.attachmentPath // url:this.form.attachmentPath
} // }
] ];
this.open = true; this.open = true;
}, },
afterSubmit(data) { afterSubmit(data) {
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()) {
this.form.duration = getMinu(this.form.startTime,this.form.endTime) this.form.duration = getMinu(this.form.startTime, this.form.endTime);
}else{ } else {
this.$message.error('结束日期需大于请假日期'); this.$message.error("结束日期需大于请假日期");
} }
} }
}, },
// 表单重置 // 表单重置
reset() { reset() {
this.form = { this.form = {
leavePersonId : null, leavePersonId: null,
leavePerson : "", leavePerson: "",
deptId : null, deptId: null,
deptName : "", deptName: "",
phoneNumber : "", phoneNumber: "",
leaveType : null, leaveType: null,
startTime : null, startTime: null,
endTime : null, endTime: null,
duration : null, duration: null,
reason : "", reason: "",
approverId : null, approverId: null,
approver : "", approver: "",
attachment : "", attachment: "",
attachmentPath : "", attachmentPath: "",
remark : "", remark: "",
}; };
this.resetForm("form"); this.resetForm("form");
}, },
...@@ -182,5 +250,5 @@ ...@@ -182,5 +250,5 @@
} }
}, },
}, },
}; };
</script> </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