|
@@ -209,4 +209,103 @@ export function getAllAuditStatusValues() {
|
|
|
*/
|
|
|
export function getAllClaimSourceTypeValues() {
|
|
|
return Object.values(CLAIM_SOURCE_TYPE)
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 附件文件类型枚举
|
|
|
+ * @readonly
|
|
|
+ * @enum {string}
|
|
|
+ */
|
|
|
+export const ATTACHMENT_FILE_TYPE = {
|
|
|
+ /** JPEG图片 */
|
|
|
+ JPEG: 'jpeg',
|
|
|
+ /** JPG图片 */
|
|
|
+ JPG: 'jpg',
|
|
|
+ /** PNG图片 */
|
|
|
+ PNG: 'png',
|
|
|
+ /** MP4视频 */
|
|
|
+ MP4: 'mp4',
|
|
|
+ /** PDF文档 */
|
|
|
+ PDF: 'pdf'
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 附件文件类型配置映射
|
|
|
+ * @readonly
|
|
|
+ * @type {Record<string, {label: string, icon: string, accept: string}>}
|
|
|
+ */
|
|
|
+export const ATTACHMENT_FILE_TYPE_CONFIG = {
|
|
|
+ [ATTACHMENT_FILE_TYPE.JPEG]: {
|
|
|
+ label: 'JPEG图片',
|
|
|
+ icon: 'el-icon-picture',
|
|
|
+ accept: 'image/jpeg'
|
|
|
+ },
|
|
|
+ [ATTACHMENT_FILE_TYPE.JPG]: {
|
|
|
+ label: 'JPG图片',
|
|
|
+ icon: 'el-icon-picture',
|
|
|
+ accept: 'image/jpeg'
|
|
|
+ },
|
|
|
+ [ATTACHMENT_FILE_TYPE.PNG]: {
|
|
|
+ label: 'PNG图片',
|
|
|
+ icon: 'el-icon-picture',
|
|
|
+ accept: 'image/png'
|
|
|
+ },
|
|
|
+ [ATTACHMENT_FILE_TYPE.MP4]: {
|
|
|
+ label: 'MP4视频',
|
|
|
+ icon: 'el-icon-video-camera',
|
|
|
+ accept: 'video/mp4'
|
|
|
+ },
|
|
|
+ [ATTACHMENT_FILE_TYPE.PDF]: {
|
|
|
+ label: 'PDF文档',
|
|
|
+ icon: 'el-icon-document',
|
|
|
+ accept: 'application/pdf'
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 附件文件类型选项列表
|
|
|
+ * @readonly
|
|
|
+ * @type {Array<{label: string, value: string}>}
|
|
|
+ */
|
|
|
+export const ATTACHMENT_FILE_TYPE_OPTIONS = [
|
|
|
+ { label: 'JPEG图片', value: ATTACHMENT_FILE_TYPE.JPEG },
|
|
|
+ { label: 'JPG图片', value: ATTACHMENT_FILE_TYPE.JPG },
|
|
|
+ { label: 'PNG图片', value: ATTACHMENT_FILE_TYPE.PNG },
|
|
|
+ { label: 'MP4视频', value: ATTACHMENT_FILE_TYPE.MP4 },
|
|
|
+ { label: 'PDF文档', value: ATTACHMENT_FILE_TYPE.PDF }
|
|
|
+]
|
|
|
+
|
|
|
+/**
|
|
|
+ * 获取附件文件类型标签
|
|
|
+ * @param {string} fileType - 文件类型
|
|
|
+ * @returns {string} 文件类型标签
|
|
|
+ */
|
|
|
+export function getAttachmentFileTypeLabel(fileType) {
|
|
|
+ return ATTACHMENT_FILE_TYPE_CONFIG[fileType]?.label || '未知类型'
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 获取附件文件类型图标
|
|
|
+ * @param {string} fileType - 文件类型
|
|
|
+ * @returns {string} 文件类型图标
|
|
|
+ */
|
|
|
+export function getAttachmentFileTypeIcon(fileType) {
|
|
|
+ return ATTACHMENT_FILE_TYPE_CONFIG[fileType]?.icon || 'el-icon-document'
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 验证文件类型是否有效
|
|
|
+ * @param {string} fileType - 文件类型
|
|
|
+ * @returns {boolean} 是否有效
|
|
|
+ */
|
|
|
+export function isValidAttachmentFileType(fileType) {
|
|
|
+ return Object.values(ATTACHMENT_FILE_TYPE).includes(fileType)
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 获取所有支持的文件类型
|
|
|
+ * @returns {string[]} 文件类型数组
|
|
|
+ */
|
|
|
+export function getAllAttachmentFileTypes() {
|
|
|
+ return Object.values(ATTACHMENT_FILE_TYPE)
|
|
|
}
|