<template> <div class="app-container"> <!-- 对话框(添加 / 修改) --> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form-item :label="$t('开始时间')" prop="startTime"> <el-date-picker clearable size="small" v-model="form.startTime" type="date" value-format="timestamp" :placeholder="$t('选择开始时间')" /> </el-form-item> <el-form-item :label="$t('结束时间')" prop="endTime"> <el-date-picker clearable size="small" v-model="form.endTime" type="date" value-format="timestamp" :placeholder="$t('选择结束时间')" /> </el-form-item> <el-form-item :label="$t('请假类型')" prop="type"> <el-select v-model="form.type" :placeholder="$t('请选择')"> <el-option v-for="dict in typeDictData" :key="parseInt(dict.value)" :label="dict.label" :value="parseInt(dict.value)"/> </el-select> </el-form-item> <el-form-item :label="$t('原因')" prop="reason"> <el-col :span="10"> <el-input type="textarea" :rows="3" v-model="form.reason" :placeholder="$t('请输入原因')" /> </el-col> </el-form-item> <el-form-item> <el-button type="primary" @click="submitForm">{{ $t('提 交') }}</el-button> </el-form-item> </el-form> </div> </template> <script> import { createLeave} from "@/api/bpm/leave" import { getDictDatas, DICT_TYPE } from '@/utils/dict' export default { name: "LeaveCreate", components: { }, data() { return { // 表单参数 form: { startTime: undefined, endTime: undefined, type: undefined, reason: undefined, }, // 表单校验 rules: { startTime: [{ required: true, message: this.$t("开始时间不能为空"), trigger: "blur" }], endTime: [{ required: true, message: this.$t("结束时间不能为空"), trigger: "blur" }], type: [{ required: true, message: this.$t("请假类型不能为空"), trigger: "change" }], reason: [{ required: true, message: this.$t("请假原因不能为空"), trigger: "change" }], }, typeDictData: getDictDatas(DICT_TYPE.BPM_OA_LEAVE_TYPE), }; }, created() { }, methods: { /** 提交按钮 */ submitForm() { this.$refs["form"].validate(valid => { if (!valid) { return; } // 添加的提交 createLeave(this.form).then(response => { this.$modal.msgSuccess("发起成功"); this.$tab.closeOpenPage({ path: "/bpm/oa/leave" }); }); }); } } }; </script>