请假管理前端判断天数

This commit is contained in:
XaoLi717 2024-12-18 20:34:48 +08:00
parent 693a75dde6
commit 9c87a28c54
3 changed files with 40 additions and 24 deletions

View File

@ -9,6 +9,7 @@ export interface QjglVO {
startTime: Date // 开始时间 startTime: Date // 开始时间
endTime: Date // 结束时间 endTime: Date // 结束时间
day: number // 请假天数 day: number // 请假天数
remainingDays: number // 请假天数
filePath: string // 文件路径 filePath: string // 文件路径
userName: string // 作者 userName: string // 作者
deptId: number // 部门id deptId: number // 部门id

View File

@ -76,8 +76,8 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col v-if="formData.type==1" :span="12"> <el-col v-if="formData.type==1" :span="12">
<el-form-item v-if="njList" label="剩余年假天数"> <el-form-item label="剩余年假天数">
<el-input v-model="njList.remainingDays" placeholder="剩余年假天数" disabled /> <el-input v-model="formData.remainingDays" placeholder="剩余年假天数" disabled />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -139,6 +139,7 @@ const formData = ref({
startTime: undefined, startTime: undefined,
endTime: undefined, endTime: undefined,
day: 0, day: 0,
remainingDays: 0,
filePath: undefined, filePath: undefined,
userName: '', userName: '',
deptId: undefined, deptId: undefined,
@ -356,7 +357,9 @@ const getNjglData = async ()=> {
// //
if (njData.value.list[0]) { if (njData.value.list[0]) {
njList.value = njData.value.list[0] njList.value = njData.value.list[0]
formData.value.remainingDays = njList.value?.remainingDays
} }
} }
/** 重置表单 */ /** 重置表单 */
const resetForm = () => { const resetForm = () => {
@ -367,10 +370,11 @@ const resetForm = () => {
type: undefined, type: undefined,
startTime: undefined, startTime: undefined,
endTime: undefined, endTime: undefined,
day: undefined, day: 0,
remainingDays: 0,
filePath: undefined, filePath: undefined,
userName: '', userName: '',
deptId: '', deptId: undefined,
deptName: '', deptName: '',
processInstanceId: undefined, processInstanceId: undefined,
userId: undefined, userId: undefined,

View File

@ -8,12 +8,12 @@
label-width="100px" label-width="100px"
v-loading="formLoading" v-loading="formLoading"
> >
<el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="请假标题" prop="title"> <el-form-item label="请假标题" prop="title">
<el-input v-model="formData.title" placeholder="请输入请假标题" :disabled="!isEditable('title')" /> <el-input v-model="formData.title" placeholder="请输入请假标题" :disabled="!isEditable('title')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="起草人" prop="userName"> <el-form-item label="起草人" prop="userName">
<el-input v-model="formData.userName" placeholder="请输入起草人" :disabled="!isEditable('userName')" /> <el-input v-model="formData.userName" placeholder="请输入起草人" :disabled="!isEditable('userName')" />
@ -22,59 +22,68 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="部门" prop="deptId"> <el-form-item label="部门" prop="deptId">
<el-input v-model="formData.deptId" placeholder="请输入部门" v-show="false" /> <el-input v-model="formData.deptId" placeholder="请输入部门" v-show="false" />
<!-- <div class="pull-left" v-show="true" v-if="userInfo?.dept">{{ userInfo?.dept.name }} </div>--> <!-- <div class="pull-left" v-show="true" v-if="userInfo?.dept">{{ userInfo?.dept.name }} </div>-->
<!-- <div class="pull-left" v-show="true" v-if="deptInfo">{{ deptInfo }} </div>--> <!-- <div class="pull-left" v-show="true" v-if="deptInfo">{{ deptInfo }} </div>-->
<el-input v-model="formData.deptName" placeholder="请输入部门信息" :disabled="!isEditable('deptName')" /> <el-input v-model="formData.deptName" placeholder="请输入部门信息" :disabled="!isEditable('deptName')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="开始时间" prop="startTime" > <el-form-item label="开始时间" prop="startTime" >
<el-date-picker <el-date-picker
v-model="formData.startTime" v-model="formData.startTime"
type="datetime" type="datetime"
value-format="x" value-format="x"
placeholder="选择开始时间" placeholder="选择开始时间"
:disabled="!isEditable('startTime')" :disabled="!isEditable('startTime')"
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="结束时间" prop="endTime" > <el-form-item label="结束时间" prop="endTime" >
<el-date-picker <el-date-picker
v-model="formData.endTime" v-model="formData.endTime"
type="datetime" type="datetime"
value-format="x" value-format="x"
placeholder="选择结束时间" placeholder="选择结束时间"
:disabled="!isEditable('startTime')" :disabled="!isEditable('startTime')"
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="请假类型" prop="type" > <el-form-item label="请假类型" prop="type" >
<el-select v-model="formData.type" placeholder="请选择请假类型" :disabled="!isEditable('type')"> <el-select v-model="formData.type" placeholder="请选择请假类型" :disabled="!isEditable('type')">
<el-option <el-option
v-for="dict in getIntDictOptions(DICT_TYPE.BPM_OA_LEAVE_TYPE)" v-for="dict in getIntDictOptions(DICT_TYPE.BPM_OA_LEAVE_TYPE)"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="请假天数" prop="day" > <el-form-item label="请假天数" prop="day" >
<el-input v-model="formData.day" placeholder="请输入请假天数" :disabled="!isEditable('day')"/> <el-input v-model="formData.day" placeholder="请输入请假天数" :disabled="!isEditable('day')"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col v-if="formData.type==1" :span="12">
<el-form-item label="剩余年假天数">
<el-input v-model="formData.remainingDays" placeholder="剩余年假天数" disabled />
</el-form-item>
</el-col>
</el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="请假原因" prop="reason" > <el-form-item label="请假原因" prop="reason" >
<el-input v-model="formData.reason" placeholder="请输入请假原因" style="height: 100px;" :disabled="!isEditable('reason')"/> <el-input v-model="formData.reason" placeholder="请输入请假原因" style="height: 100px;" :disabled="!isEditable('reason')"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
</el-form> </el-form>
</ContentWrap> </ContentWrap>
</template> </template>
@ -108,6 +117,7 @@ const formData = ref({
startTime: undefined, startTime: undefined,
endTime: undefined, endTime: undefined,
day: undefined, day: undefined,
remainingDays: undefined,
filePath: undefined, filePath: undefined,
userName: undefined, userName: undefined,
deptId: undefined, deptId: undefined,
@ -186,6 +196,7 @@ const resetForm = () => {
startTime: undefined, startTime: undefined,
endTime: undefined, endTime: undefined,
day: undefined, day: undefined,
remainingDays: undefined,
filePath: undefined, filePath: undefined,
userName: undefined, userName: undefined,
deptId: undefined, deptId: undefined,