|
|
@ -1,5 +1,5 @@ |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<Dialog :title="title" v-model="show" :width="formType == 'create' ? '700px' : '1000px'"> |
|
|
|
<Dialog :title="title" v-model="show" :width="formType == 'create' ? '750px' : '1100px'"> |
|
|
|
<div class="flex items-baseline"> |
|
|
|
<div class="flex items-baseline"> |
|
|
|
<el-form |
|
|
|
<el-form |
|
|
|
:model="form" |
|
|
|
:model="form" |
|
|
@ -7,7 +7,7 @@ |
|
|
|
:disabled="formType == 'do'" |
|
|
|
:disabled="formType == 'do'" |
|
|
|
:rules="rules" |
|
|
|
:rules="rules" |
|
|
|
label-width="80px" |
|
|
|
label-width="80px" |
|
|
|
class="flex-1" |
|
|
|
class="flex-1 wait-form" |
|
|
|
> |
|
|
|
> |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-col :span="24" :offset="0"> |
|
|
|
<el-col :span="24" :offset="0"> |
|
|
@ -83,6 +83,52 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</el-row> |
|
|
|
|
|
|
|
<el-row :gutter="0"> |
|
|
|
|
|
|
|
<el-col :span="8" :offset="0"> |
|
|
|
|
|
|
|
<el-form-item prop="remindFrequency"> |
|
|
|
|
|
|
|
<template #label> |
|
|
|
|
|
|
|
<el-tooltip |
|
|
|
|
|
|
|
content="新增待办时会立刻发送消息通知执行人,若后续无需再次提醒,频率可选择“不提醒”" |
|
|
|
|
|
|
|
placement="top" |
|
|
|
|
|
|
|
effect="dark" |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<Icon icon="ep:info-filled" :size="12" /> |
|
|
|
|
|
|
|
</el-tooltip> |
|
|
|
|
|
|
|
<span>提醒频率</span> |
|
|
|
|
|
|
|
</template> |
|
|
|
|
|
|
|
<el-select v-model="form.remindFrequency" placeholder="选择提醒频率"> |
|
|
|
|
|
|
|
<el-option label="不提醒" :value="0" /> |
|
|
|
|
|
|
|
<el-option label="单次提醒" :value="1" /> |
|
|
|
|
|
|
|
<el-option label="循环提醒" :value="2" /> |
|
|
|
|
|
|
|
</el-select> |
|
|
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="8" :offset="0" v-if="form.remindFrequency != 0"> |
|
|
|
|
|
|
|
<el-form-item label="提醒时间" prop="remindTime"> |
|
|
|
|
|
|
|
<el-input v-model="form.remindTime" placeholder="输入小时数" min="0" type="number"> |
|
|
|
|
|
|
|
<template #prepend> |
|
|
|
|
|
|
|
<span v-if="form.remindFrequency == 1">提前</span> |
|
|
|
|
|
|
|
<span v-else-if="form.remindFrequency == 2">每</span> |
|
|
|
|
|
|
|
</template> |
|
|
|
|
|
|
|
<template #append> 小时 </template> |
|
|
|
|
|
|
|
</el-input> |
|
|
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="8" :offset="0" v-if="form.remindFrequency == 2"> |
|
|
|
|
|
|
|
<el-form-item label="首次提醒" prop="firstTime"> |
|
|
|
|
|
|
|
<el-time-picker |
|
|
|
|
|
|
|
v-model="form.firstTime" |
|
|
|
|
|
|
|
format="HH:mm" |
|
|
|
|
|
|
|
value-format="HH:mm" |
|
|
|
|
|
|
|
style="width: 100%" |
|
|
|
|
|
|
|
:picker-options="{ |
|
|
|
|
|
|
|
selectableRange: '07:00 - 22:00' |
|
|
|
|
|
|
|
}" |
|
|
|
|
|
|
|
placeholder="选择时间点" |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
</el-col> |
|
|
|
|
|
|
|
</el-row> |
|
|
|
</el-form> |
|
|
|
</el-form> |
|
|
|
<div v-if="formType != 'create'" class="w-350px ml-10px h-full"> |
|
|
|
<div v-if="formType != 'create'" class="w-350px ml-10px h-full"> |
|
|
|
<div class="mb-10px" v-if="formType == 'do'"> |
|
|
|
<div class="mb-10px" v-if="formType == 'do'"> |
|
|
@ -182,7 +228,10 @@ async function open(type, id) { |
|
|
|
priority: 1, |
|
|
|
priority: 1, |
|
|
|
status: 1, |
|
|
|
status: 1, |
|
|
|
dueDate: '2025-01-20', |
|
|
|
dueDate: '2025-01-20', |
|
|
|
executorIds: [1, 2] |
|
|
|
executorIds: [1, 2], |
|
|
|
|
|
|
|
remindFrequency: 2, |
|
|
|
|
|
|
|
remindTime: 12, |
|
|
|
|
|
|
|
firstTime: '09:00' |
|
|
|
} |
|
|
|
} |
|
|
|
// form.value = await KpiApi.getKpiDetail(id) |
|
|
|
// form.value = await KpiApi.getKpiDetail(id) |
|
|
|
} finally { |
|
|
|
} finally { |
|
|
@ -207,7 +256,10 @@ function resetForm() { |
|
|
|
priority: 1, |
|
|
|
priority: 1, |
|
|
|
status: 1, |
|
|
|
status: 1, |
|
|
|
dueDate: undefined, |
|
|
|
dueDate: undefined, |
|
|
|
executorIds: [] |
|
|
|
executorIds: [], |
|
|
|
|
|
|
|
remindFrequency: 2, |
|
|
|
|
|
|
|
remindTime: 12, |
|
|
|
|
|
|
|
firstTime: '09:00' |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -243,4 +295,16 @@ async function handleSave() { |
|
|
|
const employeeOptions = ref([]) |
|
|
|
const employeeOptions = ref([]) |
|
|
|
</script> |
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped></style> |
|
|
|
<style lang="scss" scoped> |
|
|
|
|
|
|
|
.wait-form { |
|
|
|
|
|
|
|
:deep(.el-input-group__prepend) { |
|
|
|
|
|
|
|
padding: 0 10px; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
:deep(.el-input-group__append) { |
|
|
|
|
|
|
|
padding: 0 10px; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
:deep(.el-input__inner) { |
|
|
|
|
|
|
|
text-align: center; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
</style> |
|
|
|