mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-10-31 10:18:42 +08:00 
			
		
		
		
	bpm:增加 OA 请假的详情
This commit is contained in:
		| @@ -135,7 +135,15 @@ VXETable.setup({ | |||||||
| }) | }) | ||||||
| // 自定义全局的格式化处理函数 | // 自定义全局的格式化处理函数 | ||||||
| VXETable.formats.mixin({ | VXETable.formats.mixin({ | ||||||
|   // 格式日期,默认 yyyy-MM-dd HH:mm:ss |   // 格式精简日期,默认 yyyy-MM-dd HH:mm:ss | ||||||
|  |   formatDay({ cellValue }, format) { | ||||||
|  |     if (cellValue != null) { | ||||||
|  |       return XEUtils.toDateString(cellValue, format || 'yyyy-MM-dd') | ||||||
|  |     } else { | ||||||
|  |       return '' | ||||||
|  |     } | ||||||
|  |   }, | ||||||
|  |   // 格式完整日期,默认 yyyy-MM-dd HH:mm:ss | ||||||
|   formatDate({ cellValue }, format) { |   formatDate({ cellValue }, format) { | ||||||
|     if (cellValue != null) { |     if (cellValue != null) { | ||||||
|       return XEUtils.toDateString(cellValue, format || 'yyyy-MM-dd HH:mm:ss') |       return XEUtils.toDateString(cellValue, format || 'yyyy-MM-dd HH:mm:ss') | ||||||
|   | |||||||
| @@ -1,54 +1,37 @@ | |||||||
| <template> | <template> | ||||||
|   <div class="app-container"> |   <ContentWrap> | ||||||
|     <!-- 对话框(添加 / 修改) --> |     <!-- 详情 --> | ||||||
|     <el-form ref="form" :model="form" label-width="100px"> |     <Descriptions :schema="allSchemas.detailSchema" :data="formData" /> | ||||||
|       <el-form-item label="开始时间:" prop="startTime"> |   </ContentWrap> | ||||||
|         {{ formatDate(form.startTime, '{y}-{m}-{d}') }} |  | ||||||
|       </el-form-item> |  | ||||||
|       <el-form-item label="结束时间:" prop="endTime"> |  | ||||||
|         {{ formatDate(form.endTime, '{y}-{m}-{d}') }} |  | ||||||
|       </el-form-item> |  | ||||||
|       <el-form-item label="请假类型:" prop="type"> |  | ||||||
|         <dict-tag :type="DICT_TYPE.BPM_OA_LEAVE_TYPE" :value="form.type" /> |  | ||||||
|       </el-form-item> |  | ||||||
|       <el-form-item label="原因:" prop="reason"> {{ form.reason }}</el-form-item> |  | ||||||
|     </el-form> |  | ||||||
|   </div> |  | ||||||
| </template> | </template> | ||||||
|  |  | ||||||
| <script lang="ts" setup> | <script lang="ts" setup> | ||||||
| import { onMounted, ref } from 'vue' | import { onMounted, ref } from 'vue' | ||||||
| import { ElMessage } from 'element-plus' | // 业务相关的 import | ||||||
|  | import * as LeaveApi from '@/api/bpm/leave' | ||||||
|  | import { allSchemas } from '@/views/bpm/oa/leave/leave.data' | ||||||
|  |  | ||||||
| import { getLeaveApi } from '@/api/bpm/leave' | const { query } = useRoute() // 查询参数 | ||||||
| import { DICT_TYPE } from '@/utils/dict' | const message = useMessage() // 消息弹窗 | ||||||
| import { formatDate } from '@/utils/formatTime' |  | ||||||
| import { useRouter } from 'vue-router' | const id = ref() // 请假编号 | ||||||
| const router = useRouter() |  | ||||||
| // 请假编号 |  | ||||||
| const id = ref() |  | ||||||
| // 表单参数 | // 表单参数 | ||||||
| const form = ref({ | const formData = ref({ | ||||||
|   startTime: undefined, |   startTime: undefined, | ||||||
|   endTime: undefined, |   endTime: undefined, | ||||||
|   type: undefined, |   type: undefined, | ||||||
|   reason: undefined |   reason: undefined | ||||||
| }) | }) | ||||||
| /** 获得请假信息 */ |  | ||||||
| const getDetail = () => { |  | ||||||
|   getLeaveApi(id.value).then((response) => { |  | ||||||
|     form.value = response.data |  | ||||||
|   }) |  | ||||||
| } |  | ||||||
| onMounted(() => { | onMounted(() => { | ||||||
|   id.value = router.currentRoute.value.query.id |   id.value = query.id | ||||||
|   if (!id.value) { |   if (!id.value) { | ||||||
|     ElMessage({ |     message.error('未传递 id 参数,无法查看 OA 请假信息') | ||||||
|       type: 'error', |  | ||||||
|       message: '未传递 id 参数,无法查看 OA 请假信息' |  | ||||||
|     }) |  | ||||||
|     return |     return | ||||||
|   } |   } | ||||||
|   getDetail() |   // 获得请假信息 | ||||||
|  |   LeaveApi.getLeaveApi(id.value).then((data) => { | ||||||
|  |     formData.value = data | ||||||
|  |   }) | ||||||
| }) | }) | ||||||
| </script> | </script> | ||||||
|   | |||||||
| @@ -1,4 +1,5 @@ | |||||||
| <template> | <template> | ||||||
|  |   <ContentWrap> | ||||||
|     <XTable @register="registerTable"> |     <XTable @register="registerTable"> | ||||||
|       <template #toolbar_buttons> |       <template #toolbar_buttons> | ||||||
|         <!-- 操作:发起请假 --> |         <!-- 操作:发起请假 --> | ||||||
| @@ -19,6 +20,7 @@ | |||||||
|         <XTextButton preIcon="ep:edit-pen" title="审批进度" @click="handleProcessDetail(row)" /> |         <XTextButton preIcon="ep:edit-pen" title="审批进度" @click="handleProcessDetail(row)" /> | ||||||
|       </template> |       </template> | ||||||
|     </XTable> |     </XTable> | ||||||
|  |   </ContentWrap> | ||||||
| </template> | </template> | ||||||
|  |  | ||||||
| <script setup lang="ts"> | <script setup lang="ts"> | ||||||
|   | |||||||
| @@ -29,17 +29,23 @@ const crudSchemas = reactive<VxeCrudSchema>({ | |||||||
|     { |     { | ||||||
|       title: t('common.startTimeText'), |       title: t('common.startTimeText'), | ||||||
|       field: 'startTime', |       field: 'startTime', | ||||||
|       formatter: 'formatDate', |       formatter: 'formatDay', | ||||||
|       table: { |       table: { | ||||||
|         width: 180 |         width: 180 | ||||||
|  |       }, | ||||||
|  |       detail: { | ||||||
|  |         dateFormat: 'YYYY-MM-DD' | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     { |     { | ||||||
|       title: t('common.endTimeText'), |       title: t('common.endTimeText'), | ||||||
|       field: 'endTime', |       field: 'endTime', | ||||||
|       formatter: 'formatDate', |       formatter: 'formatDay', | ||||||
|       table: { |       table: { | ||||||
|         width: 180 |         width: 180 | ||||||
|  |       }, | ||||||
|  |       detail: { | ||||||
|  |         dateFormat: 'YYYY-MM-DD' | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     { |     { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 YunaiV
					YunaiV