Merge branch 'master' into dev-1.1.2
| | |
| | | "EnumClientType": true, |
| | | "EnumClientTypeText": true, |
| | | "EnumCodeUrlScene": true, |
| | | "EnumConsoleLogAccess": true, |
| | | "EnumContractTemplateStatus": true, |
| | | "EnumContractTemplateStatusText": true, |
| | | "EnumContractTemplateStatusTextForEnterpriseFilter": true, |
| | |
| | | "EnumEnterpriseWalletSignStatusText": true, |
| | | "EnumEnterpriseWalletTransactionType": true, |
| | | "EnumGetEnterpriseEmployeesQuerySignContractStatus": true, |
| | | "EnumLogLevel": true, |
| | | "EnumMenuType": true, |
| | | "EnumMenuVisitLevel": true, |
| | | "EnumOcrAccess": true, |
| | |
| | | "EnumSettlementCycleText": true, |
| | | "EnumSmsAccess": true, |
| | | "EnumSmsAccessText": true, |
| | | "EnumSmsAccessTextUseInSms": true, |
| | | "EnumSmsStatus": true, |
| | | "EnumTaskCheckReceiveStatus": true, |
| | | "EnumTaskCheckReceiveStatusText": true, |
| | | "EnumTaskRecommendStatus": true, |
| | |
| | | const EnumClientType: typeof import('./src/constants/apiEnum')['EnumClientType'] |
| | | const EnumClientTypeText: typeof import('./src/constants/apiEnumText')['EnumClientTypeText'] |
| | | const EnumCodeUrlScene: typeof import('./src/constants/apiEnum')['EnumCodeUrlScene'] |
| | | const EnumConsoleLogAccess: typeof import('./src/constants/apiEnum')['EnumConsoleLogAccess'] |
| | | const EnumContractTemplateStatus: typeof import('./src/constants/apiEnum')['EnumContractTemplateStatus'] |
| | | const EnumContractTemplateStatusText: typeof import('./src/constants/electronSign')['EnumContractTemplateStatusText'] |
| | | const EnumContractTemplateStatusTextForEnterpriseFilter: typeof import('./src/constants/electronSign')['EnumContractTemplateStatusTextForEnterpriseFilter'] |
| | |
| | | const EnumEnterpriseWalletTransactionStatus: typeof import('./src/constants/apiEnum')['EnumEnterpriseWalletTransactionStatus'] |
| | | const EnumEnterpriseWalletTransactionType: typeof import('./src/constants/apiEnum')['EnumEnterpriseWalletTransactionType'] |
| | | const EnumGetEnterpriseEmployeesQuerySignContractStatus: typeof import('./src/constants/apiEnum')['EnumGetEnterpriseEmployeesQuerySignContractStatus'] |
| | | const EnumLogLevel: typeof import('./src/constants/apiEnum')['EnumLogLevel'] |
| | | const EnumMenuType: typeof import('./src/constants/apiEnum')['EnumMenuType'] |
| | | const EnumMenuVisitLevel: typeof import('./src/constants/apiEnum')['EnumMenuVisitLevel'] |
| | | const EnumOcrAccess: typeof import('./src/constants/apiEnum')['EnumOcrAccess'] |
| | |
| | | const EnumSettlementCycleText: typeof import('./src/constants/task')['EnumSettlementCycleText'] |
| | | const EnumSmsAccess: typeof import('./src/constants/apiEnum')['EnumSmsAccess'] |
| | | const EnumSmsAccessText: typeof import('./src/constants/enterprise')['EnumSmsAccessText'] |
| | | const EnumSmsAccessTextUseInSms: typeof import('./src/constants/enterprise')['EnumSmsAccessTextUseInSms'] |
| | | const EnumSmsStatus: typeof import('./src/constants/apiEnum')['EnumSmsStatus'] |
| | | const EnumTaskCheckReceiveStatus: typeof import('./src/constants/apiEnum')['EnumTaskCheckReceiveStatus'] |
| | | const EnumTaskCheckReceiveStatusText: typeof import('./src/constants/task')['EnumTaskCheckReceiveStatusText'] |
| | | const EnumTaskRecommendStatus: typeof import('./src/constants/apiEnum')['EnumTaskRecommendStatus'] |
| | |
| | | export type { Component, Slot, Slots, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue' |
| | | import('vue') |
| | | // @ts-ignore |
| | | export type { EnumBillingMethod, EnumClientType, EnumCodeUrlScene, EnumContractTemplateStatus, EnumContractTemplateValueRecorder, EnumContractTemplateValueType, EnumDataSource, EnumDbAuditOperate, EnumElectronSignAccess, EnumElectronSignVerifyType, EnumEnterpriseCostStatus, EnumEnterpriseCostType, EnumEnterpriseRealMethod, EnumEnterpriseWalletAccess, EnumEnterpriseWalletExpandindirectOrderFileType, EnumEnterpriseWalletExpandindirectOrderScene, EnumEnterpriseWalletExpandindirectOrderStatus, EnumEnterpriseWalletSignStatus, EnumEnterpriseWalletTransactionType, EnumGetEnterpriseEmployeesQuerySignContractStatus, EnumMenuType, EnumMenuVisitLevel, EnumOcrAccess, EnumPagedListOrder, EnumPayAccess, EnumPersonalFreeTime, EnumPersonalJobSeekingStatus, EnumPersonalRealMethod, EnumPersonalUserRealStatus, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementOrderStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumTaskUserArrangeStatus, EnumTaskUserHireStatus, EnumTaskUserSignContractStatus, EnumTaskUserSubmitCheckReceiveStatus, EnumUserBankCardAccess, EnumUserGender, EnumUserRealMethod, EnumUserStatus, EnumUserType, EnumUserWalletTransactionType, EnumWalletTransactionStatus, GetPersonalApplyTaskInfosQueryStatus, GetPersonalHireTaskInfosQueryStatus, GetTaskInfoQueryResultApplyButton, GetTaskInfoQueryResultHireButton, SettlementReceiveStatus, EnumBillingMethod, EnumClientType, EnumCodeUrlScene, EnumContractTemplateStatus, EnumContractTemplateValueRecorder, EnumContractTemplateValueType, EnumDataSource, EnumDbAuditOperate, EnumElectronSignAccess, EnumElectronSignVerifyType, EnumEnterpriseCostStatus, EnumEnterpriseCostType, EnumEnterpriseRealMethod, EnumEnterpriseWalletAccess, EnumEnterpriseWalletExpandindirectOrderFileType, EnumEnterpriseWalletExpandindirectOrderScene, EnumEnterpriseWalletExpandindirectOrderStatus, EnumEnterpriseWalletSignStatus, EnumEnterpriseWalletTransactionType, EnumGetEnterpriseEmployeesQuerySignContractStatus, EnumMenuType, EnumMenuVisitLevel, EnumOcrAccess, EnumPagedListOrder, EnumPayAccess, EnumPersonalFreeTime, EnumPersonalJobSeekingStatus, EnumPersonalRealMethod, EnumPersonalUserRealStatus, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementOrderStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumTaskUserArrangeStatus, EnumTaskUserHireStatus, EnumTaskUserSignContractStatus, EnumTaskUserSubmitCheckReceiveStatus, EnumUserBankCardAccess, EnumUserGender, EnumUserRealMethod, EnumUserStatus, EnumUserType, EnumUserWalletTransactionType, EnumWalletTransactionStatus, GetPersonalApplyTaskInfosQueryStatus, GetPersonalHireTaskInfosQueryStatus, GetTaskInfoQueryResultApplyButton, GetTaskInfoQueryResultHireButton, SettlementReceiveStatus } from './src/constants/apiEnum' |
| | | export type { EnumBillingMethod, EnumClientType, EnumCodeUrlScene, EnumConsoleLogAccess, EnumContractTemplateStatus, EnumContractTemplateValueRecorder, EnumContractTemplateValueType, EnumDataSource, EnumDbAuditOperate, EnumElectronSignAccess, EnumElectronSignVerifyType, EnumEnterpriseCostStatus, EnumEnterpriseCostType, EnumEnterpriseRealMethod, EnumEnterpriseWalletAccess, EnumEnterpriseWalletExpandindirectOrderFileType, EnumEnterpriseWalletExpandindirectOrderScene, EnumEnterpriseWalletExpandindirectOrderStatus, EnumEnterpriseWalletSignStatus, EnumEnterpriseWalletTransactionType, EnumGetEnterpriseEmployeesQuerySignContractStatus, EnumLogLevel, EnumMenuType, EnumMenuVisitLevel, EnumOcrAccess, EnumPagedListOrder, EnumPayAccess, EnumPersonalFreeTime, EnumPersonalJobSeekingStatus, EnumPersonalRealMethod, EnumPersonalUserRealStatus, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumSmsStatus, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementOrderStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumTaskUserArrangeStatus, EnumTaskUserHireStatus, EnumTaskUserSignContractStatus, EnumTaskUserSubmitCheckReceiveStatus, EnumUserBankCardAccess, EnumUserGender, EnumUserRealMethod, EnumUserStatus, EnumUserType, EnumUserWalletTransactionType, EnumWalletTransactionStatus, GetPersonalApplyTaskInfosQueryStatus, GetPersonalHireTaskInfosQueryStatus, GetTaskInfoQueryResultApplyButton, GetTaskInfoQueryResultHireButton, SettlementReceiveStatus, EnumBillingMethod, EnumClientType, EnumCodeUrlScene, EnumConsoleLogAccess, EnumContractTemplateStatus, EnumContractTemplateValueRecorder, EnumContractTemplateValueType, EnumDataSource, EnumDbAuditOperate, EnumElectronSignAccess, EnumElectronSignVerifyType, EnumEnterpriseCostStatus, EnumEnterpriseCostType, EnumEnterpriseRealMethod, EnumEnterpriseWalletAccess, EnumEnterpriseWalletExpandindirectOrderFileType, EnumEnterpriseWalletExpandindirectOrderScene, EnumEnterpriseWalletExpandindirectOrderStatus, EnumEnterpriseWalletSignStatus, EnumEnterpriseWalletTransactionType, EnumGetEnterpriseEmployeesQuerySignContractStatus, EnumLogLevel, EnumMenuType, EnumMenuVisitLevel, EnumOcrAccess, EnumPagedListOrder, EnumPayAccess, EnumPersonalFreeTime, EnumPersonalJobSeekingStatus, EnumPersonalRealMethod, EnumPersonalUserRealStatus, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumSmsStatus, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementOrderStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumTaskUserArrangeStatus, EnumTaskUserHireStatus, EnumTaskUserSignContractStatus, EnumTaskUserSubmitCheckReceiveStatus, EnumUserBankCardAccess, EnumUserGender, EnumUserRealMethod, EnumUserStatus, EnumUserType, EnumUserWalletTransactionType, EnumWalletTransactionStatus, GetPersonalApplyTaskInfosQueryStatus, GetPersonalHireTaskInfosQueryStatus, GetTaskInfoQueryResultApplyButton, GetTaskInfoQueryResultHireButton, SettlementReceiveStatus } from './src/constants/apiEnum' |
| | | import('./src/constants/apiEnum') |
| | | // @ts-ignore |
| | | export type { FlexWorkerEleSignEnum, FlexTaskWorkerHireEnum, FlexWorkerEleSignEnum, FlexTaskWorkerHireEnum } from './src/constants/cPerson' |
| | |
| | | readonly EnumClientType: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumClientType']> |
| | | readonly EnumClientTypeText: UnwrapRef<typeof import('./src/constants/apiEnumText')['EnumClientTypeText']> |
| | | readonly EnumCodeUrlScene: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumCodeUrlScene']> |
| | | readonly EnumConsoleLogAccess: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumConsoleLogAccess']> |
| | | readonly EnumContractTemplateStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumContractTemplateStatus']> |
| | | readonly EnumContractTemplateStatusText: UnwrapRef<typeof import('./src/constants/electronSign')['EnumContractTemplateStatusText']> |
| | | readonly EnumContractTemplateStatusTextForEnterpriseFilter: UnwrapRef<typeof import('./src/constants/electronSign')['EnumContractTemplateStatusTextForEnterpriseFilter']> |
| | |
| | | readonly EnumEnterpriseWalletSignStatusText: UnwrapRef<typeof import('./src/constants/enterprise')['EnumEnterpriseWalletSignStatusText']> |
| | | readonly EnumEnterpriseWalletTransactionType: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumEnterpriseWalletTransactionType']> |
| | | readonly EnumGetEnterpriseEmployeesQuerySignContractStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumGetEnterpriseEmployeesQuerySignContractStatus']> |
| | | readonly EnumLogLevel: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumLogLevel']> |
| | | readonly EnumMenuType: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumMenuType']> |
| | | readonly EnumMenuVisitLevel: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumMenuVisitLevel']> |
| | | readonly EnumOcrAccess: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumOcrAccess']> |
| | |
| | | readonly EnumSettlementCycleText: UnwrapRef<typeof import('./src/constants/task')['EnumSettlementCycleText']> |
| | | readonly EnumSmsAccess: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumSmsAccess']> |
| | | readonly EnumSmsAccessText: UnwrapRef<typeof import('./src/constants/enterprise')['EnumSmsAccessText']> |
| | | readonly EnumSmsAccessTextUseInSms: UnwrapRef<typeof import('./src/constants/enterprise')['EnumSmsAccessTextUseInSms']> |
| | | readonly EnumSmsStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumSmsStatus']> |
| | | readonly EnumTaskCheckReceiveStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskCheckReceiveStatus']> |
| | | readonly EnumTaskCheckReceiveStatusText: UnwrapRef<typeof import('./src/constants/task')['EnumTaskCheckReceiveStatusText']> |
| | | readonly EnumTaskRecommendStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskRecommendStatus']> |
| | |
| | | ElectronSignUrl = 10, |
| | | } |
| | | |
| | | /** 控制台日志通道 */ |
| | | export enum EnumConsoleLogAccess { |
| | | /**后端 */ |
| | | Back = 10, |
| | | /**前端 */ |
| | | Front = 20, |
| | | } |
| | | |
| | | /** 合同制版状态 */ |
| | | export enum EnumContractTemplateStatus { |
| | | /**待制版 */ |
| | |
| | | Pass = 30, |
| | | } |
| | | |
| | | /** 日志级别 */ |
| | | export enum EnumLogLevel { |
| | | /**跟踪 */ |
| | | Trace = 10, |
| | | /**调试 */ |
| | | Debug = 20, |
| | | /**信息 */ |
| | | Information = 30, |
| | | /**警告 */ |
| | | Warning = 40, |
| | | /**错误 */ |
| | | Error = 50, |
| | | /**严重 */ |
| | | Critical = 60, |
| | | } |
| | | |
| | | /** 菜单类型 */ |
| | | export enum EnumMenuType { |
| | | /**菜单 */ |
| | |
| | | CommonServerLogRecords = 7, |
| | | /**同步数据库 */ |
| | | CommonServerSyncDatabase = 8, |
| | | /**短信工具 */ |
| | | CommonServerSmsUtils = 9, |
| | | /**用户认证 */ |
| | | UserServerAuth = 9, |
| | | UserServerAuth = 10, |
| | | /**用户菜单 */ |
| | | UserServerMenu = 10, |
| | | UserServerMenu = 11, |
| | | /**用户资源 */ |
| | | UserServerResource = 11, |
| | | UserServerResource = 12, |
| | | /**用户角色 */ |
| | | UserServerRole = 12, |
| | | UserServerRole = 13, |
| | | /**用户信息 */ |
| | | UserServerUser = 13, |
| | | UserServerUser = 14, |
| | | /**电子签 */ |
| | | UserServerElectronSign = 14, |
| | | UserServerElectronSign = 15, |
| | | /**用户简历 */ |
| | | UserServerUserResume = 15, |
| | | UserServerUserResume = 16, |
| | | /**企业信息 */ |
| | | UserServerEnterprise = 16, |
| | | UserServerEnterprise = 17, |
| | | /**企业钱包 */ |
| | | UserServerEnterpriseWallet = 17, |
| | | UserServerEnterpriseWallet = 18, |
| | | /**灵工信息 */ |
| | | UserServerEnterpriseEmployee = 18, |
| | | UserServerEnterpriseEmployee = 19, |
| | | /**电子签 */ |
| | | ElectronSignServerElectronSign = 19, |
| | | ElectronSignServerElectronSign = 20, |
| | | } |
| | | |
| | | /** 资源请求方式 */ |
| | |
| | | |
| | | /** 短信通道 */ |
| | | export enum EnumSmsAccess { |
| | | /**无 */ |
| | | None = 0, |
| | | /**阿里云短信 */ |
| | | AliyunSms = 10, |
| | | /**诚立业 */ |
| | | ChengLiYe = 20, |
| | | } |
| | | |
| | | /** 短信状态 */ |
| | | export enum EnumSmsStatus { |
| | | /**待发送 */ |
| | | Wait = 0, |
| | | /**发送中 */ |
| | | InProcess = 10, |
| | | /**发送成功 */ |
| | | Success = 20, |
| | | /**发送失败 */ |
| | | Fail = 30, |
| | | } |
| | | |
| | | /** 任务结算状态 */ |
| | |
| | | * 短信通道配置 |
| | | */ |
| | | ShortMessage = 4, |
| | | // /** |
| | | // * 微信支付配置 |
| | | // */ |
| | | // Wechat = 5, |
| | | /** |
| | | * 微信支付配置 |
| | | */ |
| | | Wechat = 5, |
| | | } |
| | | |
| | | export const EnterpriseConfigureTypeText = { |
| | |
| | | [EnterpriseConfigureType.AliPay]: '支付宝配置', |
| | | [EnterpriseConfigureType.Electronic]: '电子签配置', |
| | | [EnterpriseConfigureType.ShortMessage]: '短信通道配置', |
| | | // [EnterpriseConfigureType.Wechat]: '微信支付配置', |
| | | [EnterpriseConfigureType.Wechat]: '微信支付配置', |
| | | }; |
| | | |
| | | export enum VerifyStatus { |
| | |
| | | [EnumSmsAccess.AliyunSms]: '阿里云', |
| | | }; |
| | | |
| | | export const EnumSmsAccessTextUseInSms = { |
| | | [EnumSmsAccess.AliyunSms]: '阿里云', |
| | | [EnumSmsAccess.ChengLiYe]: '诚立业', |
| | | }; |
| | | |
| | | export const EnumRealAccessText = { |
| | | [EnumRealAccess.BestSign]: '上上签', |
| | | [EnumRealAccess.AlipaySign]: '支付宝信任签', |
| | |
| | | import * as enterpriseEmployee from './enterpriseEmployee'; |
| | | import * as user from './user'; |
| | | import * as role from './role'; |
| | | import * as sms from './sms'; |
| | | import * as ocrUtils from './ocrUtils'; |
| | | import * as task from './task'; |
| | | import * as enterprise from './enterprise'; |
| | |
| | | enterpriseEmployee, |
| | | user, |
| | | role, |
| | | sms, |
| | | ocrUtils, |
| | | task, |
| | | enterprise, |
| | |
| | | // @ts-ignore |
| | | import { request } from '@/utils/request'; |
| | | |
| | | /** 控制台日志分页列表查询 POST /api/common/logRecords/getConsoleLogs */ |
| | | export async function getConsoleLogs(body: API.GetConsoleLogsQuery, options?: API.RequestConfig) { |
| | | return request<API.GetConsoleLogsQueryResult>('/api/common/logRecords/getConsoleLogs', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 查询数据库审计日志分页列表 POST /api/common/logRecords/getDbAuditLogs */ |
| | | export async function getDbAuditLogs(body: API.GetDbAuditLogsQuery, options?: API.RequestConfig) { |
| | | return request<API.GetDbAuditLogsQueryResult>('/api/common/logRecords/getDbAuditLogs', { |
| | |
| | | /** 资源日志分页列表查询 POST /api/common/logRecords/getResourceLogs */ |
| | | export async function getResourceLogs(body: API.GetResourceLogsQuery, options?: API.RequestConfig) { |
| | | return request<API.GetResourceLogsQueryResult>('/api/common/logRecords/getResourceLogs', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 查询短信日志 POST /api/common/logRecords/getSmsLogs */ |
| | | export async function getSmsLogs(body: API.GetSmsLogsQuery, options?: API.RequestConfig) { |
| | | return request<API.GetSmsLogsQueryResult>('/api/common/logRecords/getSmsLogs', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 保存前端日志 POST /api/common/logRecords/saveFrontConsoleLog */ |
| | | export async function saveFrontConsoleLog( |
| | | body: API.SaveFrontConsoleLogCommand, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<string>('/api/common/logRecords/saveFrontConsoleLog', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
New file |
| | |
| | | /* eslint-disable */ |
| | | // @ts-ignore |
| | | import { request } from '@/utils/request'; |
| | | |
| | | /** 查询短信配置 POST /api/common/sms/getSmsSetting */ |
| | | export async function getSmsSetting(body: API.GetSmsSettingQuery, options?: API.RequestConfig) { |
| | | return request<API.GetSmsSettingQueryResult>('/api/common/sms/getSmsSetting', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 保存短信配置 POST /api/common/sms/saveSmsSetting */ |
| | | export async function saveSmsSetting(body: API.SaveSmsSettingCommand, options?: API.RequestConfig) { |
| | | return request<string>('/api/common/sms/saveSmsSetting', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | | |
| | | /** 诚立业短信平台回传通知 POST /api/common/sms/smsChengLiYeNotify */ |
| | | export async function smsChengLiYeNotify( |
| | | body: API.SmsChengLiYeNotifyCommand, |
| | | options?: API.RequestConfig |
| | | ) { |
| | | return request<boolean>('/api/common/sms/smsChengLiYeNotify', { |
| | | method: 'POST', |
| | | headers: { |
| | | 'Content-Type': 'application/json-patch+json', |
| | | }, |
| | | data: body, |
| | | ...(options || {}), |
| | | }); |
| | | } |
| | |
| | | ElectronSignUrl = 10, |
| | | } |
| | | |
| | | enum EnumConsoleLogAccess { |
| | | /**后端 */ |
| | | Back = 10, |
| | | /**前端 */ |
| | | Front = 20, |
| | | } |
| | | |
| | | enum EnumContractTemplateStatus { |
| | | /**待制版 */ |
| | | Wait = 10, |
| | |
| | | Pass = 30, |
| | | } |
| | | |
| | | enum EnumLogLevel { |
| | | /**跟踪 */ |
| | | Trace = 10, |
| | | /**调试 */ |
| | | Debug = 20, |
| | | /**信息 */ |
| | | Information = 30, |
| | | /**警告 */ |
| | | Warning = 40, |
| | | /**错误 */ |
| | | Error = 50, |
| | | /**严重 */ |
| | | Critical = 60, |
| | | } |
| | | |
| | | enum EnumMenuType { |
| | | /**菜单 */ |
| | | Menu = 10, |
| | |
| | | CommonServerLogRecords = 7, |
| | | /**同步数据库 */ |
| | | CommonServerSyncDatabase = 8, |
| | | /**短信工具 */ |
| | | CommonServerSmsUtils = 9, |
| | | /**用户认证 */ |
| | | UserServerAuth = 9, |
| | | UserServerAuth = 10, |
| | | /**用户菜单 */ |
| | | UserServerMenu = 10, |
| | | UserServerMenu = 11, |
| | | /**用户资源 */ |
| | | UserServerResource = 11, |
| | | UserServerResource = 12, |
| | | /**用户角色 */ |
| | | UserServerRole = 12, |
| | | UserServerRole = 13, |
| | | /**用户信息 */ |
| | | UserServerUser = 13, |
| | | UserServerUser = 14, |
| | | /**电子签 */ |
| | | UserServerElectronSign = 14, |
| | | UserServerElectronSign = 15, |
| | | /**用户简历 */ |
| | | UserServerUserResume = 15, |
| | | UserServerUserResume = 16, |
| | | /**企业信息 */ |
| | | UserServerEnterprise = 16, |
| | | UserServerEnterprise = 17, |
| | | /**企业钱包 */ |
| | | UserServerEnterpriseWallet = 17, |
| | | UserServerEnterpriseWallet = 18, |
| | | /**灵工信息 */ |
| | | UserServerEnterpriseEmployee = 18, |
| | | UserServerEnterpriseEmployee = 19, |
| | | /**电子签 */ |
| | | ElectronSignServerElectronSign = 19, |
| | | ElectronSignServerElectronSign = 20, |
| | | } |
| | | |
| | | enum EnumResourceMethod { |
| | |
| | | } |
| | | |
| | | enum EnumSmsAccess { |
| | | /**无 */ |
| | | None = 0, |
| | | /**阿里云短信 */ |
| | | AliyunSms = 10, |
| | | /**诚立业 */ |
| | | ChengLiYe = 20, |
| | | } |
| | | |
| | | enum EnumSmsStatus { |
| | | /**待发送 */ |
| | | Wait = 0, |
| | | /**发送中 */ |
| | | InProcess = 10, |
| | | /**发送成功 */ |
| | | Success = 20, |
| | | /**发送失败 */ |
| | | Fail = 30, |
| | | } |
| | | |
| | | enum EnumTaskCheckReceiveStatus { |
| | |
| | | /** 错误码 */ |
| | | errorCode?: string; |
| | | data?: GetCodeUrlQueryResult; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | | msg?: any; |
| | | /** 附加数据 */ |
| | | extras?: any; |
| | | /** 时间戳 */ |
| | | timestamp?: number; |
| | | } |
| | | |
| | | interface FriendlyResultGetConsoleLogsQueryResult { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 状态码 */ |
| | | code?: number; |
| | | /** 错误码 */ |
| | | errorCode?: string; |
| | | data?: GetConsoleLogsQueryResult; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | |
| | | /** 错误码 */ |
| | | errorCode?: string; |
| | | data?: GetSettlementTaskUsersQueryResult; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | | msg?: any; |
| | | /** 附加数据 */ |
| | | extras?: any; |
| | | /** 时间戳 */ |
| | | timestamp?: number; |
| | | } |
| | | |
| | | interface FriendlyResultGetSmsLogsQueryResult { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 状态码 */ |
| | | code?: number; |
| | | /** 错误码 */ |
| | | errorCode?: string; |
| | | data?: GetSmsLogsQueryResult; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | | msg?: any; |
| | | /** 附加数据 */ |
| | | extras?: any; |
| | | /** 时间戳 */ |
| | | timestamp?: number; |
| | | } |
| | | |
| | | interface FriendlyResultGetSmsSettingQueryResult { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 状态码 */ |
| | | code?: number; |
| | | /** 错误码 */ |
| | | errorCode?: string; |
| | | data?: GetSmsSettingQueryResult; |
| | | /** 执行成功 */ |
| | | success?: boolean; |
| | | /** 错误信息 */ |
| | |
| | | paramValue5?: string; |
| | | } |
| | | |
| | | interface GetConsoleLogsQuery { |
| | | access?: EnumConsoleLogAccess; |
| | | level?: EnumLogLevel; |
| | | /** 创建时间-起始 */ |
| | | createdTimeBegin?: string; |
| | | /** 创建时间-截止 */ |
| | | createdTimeEnd?: string; |
| | | /** 操作人 */ |
| | | createdUser?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 内容 */ |
| | | content?: string; |
| | | /** 链接地址 */ |
| | | url?: string; |
| | | /** 传参 */ |
| | | request?: string; |
| | | /** 扩展 */ |
| | | ext?: string; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | | interface GetConsoleLogsQueryResult { |
| | | pageModel?: PagedListQueryResultPageModel; |
| | | /** 数据 */ |
| | | data?: GetConsoleLogsQueryResultItem[]; |
| | | } |
| | | |
| | | interface GetConsoleLogsQueryResultItem { |
| | | /** Id */ |
| | | id?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | access?: EnumConsoleLogAccess; |
| | | level?: EnumLogLevel; |
| | | /** 内容 */ |
| | | content: string; |
| | | /** 堆栈跟踪 */ |
| | | stackTrace?: string; |
| | | /** 链接地址 */ |
| | | url?: string; |
| | | /** 传参 */ |
| | | request?: string; |
| | | /** 扩展 */ |
| | | ext?: string; |
| | | /** 客户IP地址 */ |
| | | clientIpAddress?: string; |
| | | createdUser?: GetLogsQueryResultItemCreatedUser; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | } |
| | | |
| | | interface GetContractTemplateEnterprisesQuery { |
| | | /** 关键字 */ |
| | | keywords?: string; |
| | |
| | | type GetCurrentLogierMenusQuery = Record<string, any>; |
| | | |
| | | interface GetDbAuditLogsQuery { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 关键字 */ |
| | | keywords?: string; |
| | | /** 创建时间-起始 */ |
| | | createdTimeBegin?: string; |
| | | /** 创建时间-截止 */ |
| | | createdTimeEnd?: string; |
| | | /** 操作人 */ |
| | | createdUser?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 表名 */ |
| | | tableName?: string; |
| | | /** 主键 */ |
| | | primaryKey?: string; |
| | | operate?: EnumDbAuditOperate; |
| | | /** 旧值 */ |
| | | oldValues?: string; |
| | | /** 新值 */ |
| | | newValues?: string; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | interface GetDbAuditLogsQueryResultItem { |
| | | /** Id */ |
| | | id?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 表名 */ |
| | | tableName?: string; |
| | | /** 主键 */ |
| | |
| | | oldValues?: string; |
| | | /** 新值 */ |
| | | newValues?: string; |
| | | createdUser?: GetResourceLogsQueryResultItemCreatedUser; |
| | | createdUser?: GetLogsQueryResultItemCreatedUser; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | } |
| | |
| | | } |
| | | |
| | | interface GetExceptionLogsQuery { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 关键字 */ |
| | | keywords?: string; |
| | | /** 创建时间-起始 */ |
| | | createdTimeBegin?: string; |
| | | /** 创建时间-截止 */ |
| | | createdTimeEnd?: string; |
| | | /** 操作人 */ |
| | | createdUser?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 类型 */ |
| | | type?: string; |
| | | /** 代码 */ |
| | | code?: string; |
| | | /** 消息 */ |
| | | message?: string; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | interface GetExceptionLogsQueryResultItem { |
| | | /** Id */ |
| | | id?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 类型 */ |
| | | type?: string; |
| | | /** 代码 */ |
| | |
| | | message?: string; |
| | | /** 堆栈跟踪 */ |
| | | stackTrace?: string; |
| | | createdUser?: GetResourceLogsQueryResultItemCreatedUser; |
| | | createdUser?: GetLogsQueryResultItemCreatedUser; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | } |
| | |
| | | /** 地址 */ |
| | | url?: string; |
| | | model?: BaiduOcrBusinessLicenseResultModel; |
| | | } |
| | | |
| | | interface GetLogsQueryResultItemCreatedUser { |
| | | /** Id */ |
| | | id?: string; |
| | | type?: EnumUserType; |
| | | /** 姓名 */ |
| | | name?: string; |
| | | /** 用户名 */ |
| | | userName?: string; |
| | | /** 企业Id */ |
| | | enterpriseId?: string; |
| | | /** 企业全称 */ |
| | | enterpriseName?: string; |
| | | } |
| | | |
| | | interface GetMenuQueryResult { |
| | |
| | | } |
| | | |
| | | interface GetResourceLogsQuery { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 关键字 */ |
| | | keywords?: string; |
| | | /** 创建时间-起始 */ |
| | | createdTimeBegin?: string; |
| | | /** 创建时间-截止 */ |
| | | createdTimeEnd?: string; |
| | | /** 操作人 */ |
| | | createdUser?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | method?: EnumResourceMethod; |
| | | /** 域名 */ |
| | | domain?: string; |
| | | /** 地址 */ |
| | | path?: string; |
| | | /** 请求参数 */ |
| | | request?: string; |
| | | /** 响应结果 */ |
| | | response?: string; |
| | | /** 是否成功 */ |
| | | isSuccess?: boolean; |
| | | /** 客户端IP地址 */ |
| | | clientIpAddress?: string; |
| | | /** 最小耗时毫秒数 */ |
| | | elapsedMillisecondsMin?: number; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | |
| | | interface GetResourceLogsQueryResultItem { |
| | | /** Id */ |
| | | id?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | method?: EnumResourceMethod; |
| | | /** 域名 */ |
| | | domain?: string; |
| | |
| | | consoleLogs?: string; |
| | | /** 耗时毫秒数 */ |
| | | elapsedMilliseconds?: number; |
| | | createdUser?: GetResourceLogsQueryResultItemCreatedUser; |
| | | createdUser?: GetLogsQueryResultItemCreatedUser; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | } |
| | | |
| | | interface GetResourceLogsQueryResultItemCreatedUser { |
| | | /** Id */ |
| | | id?: string; |
| | | type?: EnumUserType; |
| | | /** 姓名 */ |
| | | name?: string; |
| | | /** 用户名 */ |
| | | userName?: string; |
| | | /** 企业Id */ |
| | | enterpriseId?: string; |
| | | /** 企业全称 */ |
| | | enterpriseName?: string; |
| | | } |
| | | |
| | | interface GetResourcesQueryResultItem { |
| | |
| | | createdTime?: string; |
| | | /** 电子收据下载链接 */ |
| | | ereceiptDownloadOssUrl?: string; |
| | | } |
| | | |
| | | interface GetSmsLogsQuery { |
| | | /** 创建时间-起始 */ |
| | | createdTimeBegin?: string; |
| | | /** 创建时间-截止 */ |
| | | createdTimeEnd?: string; |
| | | /** 操作人 */ |
| | | createdUser?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | access?: EnumSmsAccess; |
| | | /** 手机号码 */ |
| | | phoneNumber?: string; |
| | | /** 模板代码 */ |
| | | templateCode?: string; |
| | | /** 模板参数 */ |
| | | templateParam?: string; |
| | | /** 是否使用 */ |
| | | isUsed?: boolean; |
| | | status?: EnumSmsStatus; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | | interface GetSmsLogsQueryResult { |
| | | pageModel?: PagedListQueryResultPageModel; |
| | | /** 数据 */ |
| | | data?: GetSmsLogsQueryResultItem[]; |
| | | } |
| | | |
| | | interface GetSmsLogsQueryResultItem { |
| | | /** Id */ |
| | | id?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | access?: EnumSmsAccess; |
| | | /** 手机号码 */ |
| | | phoneNumber?: string; |
| | | /** 模板代码 */ |
| | | templateCode?: string; |
| | | /** 模板参数 */ |
| | | templateParam?: string; |
| | | /** 有效期 */ |
| | | expiry?: string; |
| | | /** 是否使用 */ |
| | | isUsed?: boolean; |
| | | status?: EnumSmsStatus; |
| | | /** 请求Id */ |
| | | requestId?: string; |
| | | /** 回传代码 */ |
| | | code?: string; |
| | | /** 回传消息 */ |
| | | message?: string; |
| | | /** 操作人Id */ |
| | | createdUserId?: string; |
| | | createdUser?: GetLogsQueryResultItemCreatedUser; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | } |
| | | |
| | | type GetSmsSettingQuery = Record<string, any>; |
| | | |
| | | interface GetSmsSettingQueryResult { |
| | | /** 是否禁用 */ |
| | | isDisabled?: boolean; |
| | | /** 带出参数 */ |
| | | withoutParams?: boolean; |
| | | /** 每分钟最大数量 */ |
| | | minutelyMaxCount?: number; |
| | | /** 每小时最大数量 */ |
| | | hourlyMaxCount?: number; |
| | | /** 每天最大数量 */ |
| | | dailyMaxCount?: number; |
| | | /** 通道配置 */ |
| | | accesses?: GetSmsSettingQueryResultAccess[]; |
| | | } |
| | | |
| | | interface GetSmsSettingQueryResultAccess { |
| | | access?: EnumSmsAccess; |
| | | /** 是否禁用 */ |
| | | isDisabled?: boolean; |
| | | /** 排序 */ |
| | | sort?: number; |
| | | } |
| | | |
| | | interface GetTaskEnterpriseQueryResult { |
| | |
| | | } |
| | | |
| | | interface GetThreeResourceLogsQuery { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | /** 关键字 */ |
| | | keywords?: string; |
| | | /** 创建时间-起始 */ |
| | | createdTimeBegin?: string; |
| | | /** 创建时间-截止 */ |
| | | createdTimeEnd?: string; |
| | | /** 操作人 */ |
| | | createdUser?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | method?: EnumResourceMethod; |
| | | /** 域名 */ |
| | | domain?: string; |
| | | /** 地址 */ |
| | | path?: string; |
| | | /** 请求参数 */ |
| | | request?: string; |
| | | /** 响应结果 */ |
| | | response?: string; |
| | | /** 是否成功 */ |
| | | isSuccess?: boolean; |
| | | /** 客户端IP地址 */ |
| | | clientIpAddress?: string; |
| | | /** 最小耗时毫秒数 */ |
| | | elapsedMillisecondsMin?: number; |
| | | pageModel?: PagedListQueryPageModel; |
| | | } |
| | | |
| | |
| | | interface GetThreeResourceLogsQueryResultItem { |
| | | /** Id */ |
| | | id?: string; |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | method?: EnumResourceMethod; |
| | | /** 域名 */ |
| | | domain?: string; |
| | |
| | | isSuccess?: boolean; |
| | | /** 耗时毫秒数 */ |
| | | elapsedMilliseconds?: number; |
| | | createdUser?: GetThreeResourceLogsQueryResultItemCreatedUser; |
| | | createdUser?: GetLogsQueryResultItemCreatedUser; |
| | | /** 创建时间 */ |
| | | createdTime?: string; |
| | | } |
| | | |
| | | interface GetThreeResourceLogsQueryResultItemCreatedUser { |
| | | /** Id */ |
| | | id?: string; |
| | | type?: EnumUserType; |
| | | /** 姓名 */ |
| | | name?: string; |
| | | /** 用户名 */ |
| | | userName?: string; |
| | | /** 企业Id */ |
| | | enterpriseId?: string; |
| | | /** 企业全称 */ |
| | | enterpriseName?: string; |
| | | } |
| | | |
| | | interface GetTraceIdLogQueryResult { |
| | |
| | | exceptionLogs?: GetExceptionLogsQueryResultItem[]; |
| | | /** 数据库审计日志 */ |
| | | dbAuditLogs?: GetDbAuditLogsQueryResultItem[]; |
| | | /** 控制台日志 */ |
| | | consoleLogs?: GetConsoleLogsQueryResultItem[]; |
| | | } |
| | | |
| | | interface GetUserInfoRolesQueryResultItem { |
| | |
| | | } |
| | | |
| | | interface PersonalUserElectronSignCommandResult { |
| | | userSignContractStatus?: EnumTaskUserSignContractStatus; |
| | | /** 签署合同短链接 */ |
| | | signContractShortUrl?: string; |
| | | /** 签署合同长链接 */ |
| | |
| | | isReal?: boolean; |
| | | realMethod?: EnumUserRealMethod; |
| | | realStatus?: EnumPersonalUserRealStatus; |
| | | /** 是否绑定银行卡 */ |
| | | isBindBankCard?: boolean; |
| | | /** 人脸识别地址 */ |
| | | faceUrl?: string; |
| | | } |
| | |
| | | status?: EnumEnterpriseCostStatus; |
| | | } |
| | | |
| | | interface SaveFrontConsoleLogCommand { |
| | | /** 跟踪Id */ |
| | | traceId?: string; |
| | | level?: EnumLogLevel; |
| | | /** 内容 */ |
| | | content: string; |
| | | /** 堆栈跟踪 */ |
| | | stackTrace?: string; |
| | | /** 链接地址 */ |
| | | url?: string; |
| | | /** 传参 */ |
| | | request?: string; |
| | | /** 扩展 */ |
| | | ext?: string; |
| | | } |
| | | |
| | | interface SaveMenuButtonCommand { |
| | | /** 菜单Id */ |
| | | parentId?: string; |
| | |
| | | menuIds?: string[]; |
| | | /** 资源 */ |
| | | resources?: GetRoleQueryResultResource[]; |
| | | } |
| | | |
| | | interface SaveSmsSettingCommand { |
| | | /** 是否禁用 */ |
| | | isDisabled?: boolean; |
| | | /** 带出参数 */ |
| | | withoutParams?: boolean; |
| | | /** 每分钟最大数量 */ |
| | | minutelyMaxCount?: number; |
| | | /** 每小时最大数量 */ |
| | | hourlyMaxCount?: number; |
| | | /** 每天最大数量 */ |
| | | dailyMaxCount?: number; |
| | | /** 通道配置 */ |
| | | accesses?: SaveSmsSettingCommandAccess[]; |
| | | } |
| | | |
| | | interface SaveSmsSettingCommandAccess { |
| | | access?: EnumSmsAccess; |
| | | /** 是否禁用 */ |
| | | isDisabled?: boolean; |
| | | /** 排序 */ |
| | | sort?: number; |
| | | } |
| | | |
| | | interface SaveTaskInfoCommand { |
| | |
| | | status?: EnumUserStatus; |
| | | } |
| | | |
| | | type SmsChengLiYeNotifyCommand = Record<string, any>; |
| | | |
| | | interface SmsLoginCommand { |
| | | /** 手机号码 */ |
| | | phoneNumber?: string; |
| | |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | <ProFormColItem :span="8"> |
| | | <ProFormItemV2 label="所属行业:" prop="industryTypeId"> |
| | | <ProFormItemV2 label="所属行业:" prop="industryTypeCode"> |
| | | <ProFormSelect |
| | | v-model="form.industryTypeCode" |
| | | placeholder="请选择所属行业" |
| | |
| | | password: '', |
| | | }); |
| | | |
| | | console.log('form: ', form); |
| | | |
| | | const { isLoading } = useQuery({ |
| | | queryKey: ['enterpriseServices/getEnterprise', id], |
| | | queryFn: async () => { |
| | |
| | | form.legalPerson = data.legalPerson; |
| | | form.legalIdentity = data.legalIdentity; |
| | | form.societyCreditCode = data.societyCreditCode; |
| | | form.industryTypeCode = data.industryTypeCode; |
| | | form.industryTypeCode = data.industryTypeCode ?? ''; |
| | | form.mainBusiness = data.mainBusiness; |
| | | form.contacts = data.contacts; |
| | | form.contactPhoneNumber = data.contactPhoneNumber; |
| | |
| | | <el-tab-pane lazy :name="EnterpriseConfigureType.AliPay"> |
| | | <AliPayConfigureView :id="form.id" ref="aliPayConfigureViewRef" /> |
| | | </el-tab-pane> |
| | | <!-- <el-tab-pane lazy :name="EnterpriseConfigureType.Wechat"> |
| | | <el-tab-pane lazy :name="EnterpriseConfigureType.Wechat"> |
| | | <WechatConfigureView :id="form.id" ref="wechatConfigureViewRef" /> |
| | | </el-tab-pane> --> |
| | | </el-tab-pane> |
| | | <el-tab-pane lazy :name="EnterpriseConfigureType.Electronic"> |
| | | <ElectronicConfigureView :id="form.id" ref="electronicConfigureViewRef" /> |
| | | </el-tab-pane> |
| | |
| | | res = await electronicConfigureViewRef.value?.onConfirm?.(); |
| | | } else if (form.value.enterpriseConfigureType === EnterpriseConfigureType.ShortMessage) { |
| | | res = await shortMessageConfigureViewRef.value?.onConfirm?.(); |
| | | } else if (form.value.enterpriseConfigureType === EnterpriseConfigureType.Wechat) { |
| | | res = await wechatConfigureViewRef.value?.onConfirm?.(); |
| | | } |
| | | // else if (form.value.enterpriseConfigureType === EnterpriseConfigureType.Wechat) { |
| | | // res = await wechatConfigureViewRef.value?.onConfirm?.(); |
| | | // } |
| | | if (res) { |
| | | emit('onConfirm'); |
| | | } |
| | |
| | | <template> |
| | | <LoadingLayout :loading="isLoading"> |
| | | <ProForm :model="form" ref="dialogForm" label-width="120px"> |
| | | <ProForm :model="form" ref="dialogForm" label-width="130px"> |
| | | <ProFormItemV2 |
| | | label="联系人姓名:" |
| | | prop="name" |
| | |
| | | :checkRules="[{ message: '请选择联系人类型' }]" |
| | | > |
| | | <ProFormRadio v-model.trim="form.name" :value-enum="[]" button-style /> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 |
| | | label="业务办理授权函:" |
| | | prop="url" |
| | | :check-rules="[{ type: 'upload', message: '请上传业务办理授权函' }]" |
| | | > |
| | | <div style="display: flex"> |
| | | <ProFormUpload |
| | | v-model:file-url="form.url" |
| | | :limit="1" |
| | | :limitFileSize="10" |
| | | accept="png,jpg,jpeg,pdf" |
| | | ></ProFormUpload> |
| | | <el-button style="margin-left: 10px" type="primary" link @click="downloadTemplate" |
| | | >模板下载</el-button |
| | | > |
| | | </div> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 |
| | | label="手机号:" |
| | |
| | | <ProFormSelect v-model="form.name" :valueEnum="[]" placeholder="请选择主体类型"> |
| | | </ProFormSelect> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 |
| | | label="商户简称:" |
| | | prop="name" |
| | | :checkRules="[{ type: 'phone', message: '请输入商户简称' }]" |
| | | > |
| | | <ProFormText :maxlength="64" v-model.trim="form.name" placeholder="请输入商户简称" /> |
| | | <ProFormItemV2 label="商户简称:" prop="name" :checkRules="[{ message: '请输入商户简称' }]"> |
| | | <ProFormText |
| | | :maxlength="64" |
| | | show-word-limit |
| | | v-model.trim="form.name" |
| | | placeholder="请输入商户简称" |
| | | /> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 |
| | | label="客服电话:" |
| | |
| | | <ProFormSelect v-model="form.name" :valueEnum="[]" placeholder="请选择结算账户"> |
| | | </ProFormSelect> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 |
| | | label="开户银行:" |
| | | prop="name" |
| | | :checkRules="[{ type: 'phone', message: '请输入开户银行' }]" |
| | | > |
| | | <ProFormText :maxlength="64" v-model.trim="form.name" placeholder="请输入开户银行" /> |
| | | <ProFormItemV2 label="开户银行:" prop="name" :checkRules="[{ message: '请输入开户银行' }]"> |
| | | <ProFormText v-model.trim="form.name" placeholder="请输入开户银行" /> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 |
| | | label="银行账号:" |
| | | prop="name" |
| | | :checkRules="[{ type: 'tel', message: '请输入银行账号' }]" |
| | | :checkRules="[{ message: '请输入银行账号', type: 'bankCard' }]" |
| | | > |
| | | <ProFormText v-model.trim="form.name" placeholder="请输入银行账号" /> |
| | | </ProFormItemV2> |
| | |
| | | } from '@bole-core/components'; |
| | | import * as enterpriseWalletServices from '@/services/api/enterpriseWallet'; |
| | | import { useQuery } from '@tanstack/vue-query'; |
| | | import { convertWalletApiToFiles, convertWalletFilesToApi } from '@/utils'; |
| | | import { convertWalletApiToFiles, convertWalletFilesToApi, downloadFileByUrl } from '@/utils'; |
| | | |
| | | defineOptions({ |
| | | name: 'WechatConfigureView', |
| | |
| | | } catch (error) {} |
| | | } |
| | | |
| | | function downloadTemplate() { |
| | | downloadFileByUrl( |
| | | 'https://parkmanagement.oss-cn-hangzhou.aliyuncs.com/FlexJob/temp/%E4%B8%9A%E5%8A%A1%E5%8A%9E%E7%90%86%E6%8E%88%E6%9D%83%E5%87%BD.png', |
| | | '业务办理授权函' |
| | | ); |
| | | } |
| | | |
| | | defineExpose({ |
| | | onConfirm: enterpriseWalletExpandindirectCreate, |
| | | }); |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="isLoading"> |
| | | <AppContainer> |
| | | <PageFormLayout> |
| | | <ProForm :model="form" ref="formRef" label-width="120px" :is-read="isRead"> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="12"> |
| | | <ProFormItemV2 label="是否禁用:" prop="isDisabled"> |
| | | <ProFormRadio |
| | | v-model="form.isDisabled" |
| | | :value-enum="BooleanOptions" |
| | | :button-style="false" |
| | | ></ProFormRadio> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="12"> |
| | | <ProFormItemV2 label="带出参数:" prop="withoutParams"> |
| | | <ProFormRadio |
| | | v-model="form.withoutParams" |
| | | :value-enum="BooleanOptions" |
| | | :button-style="false" |
| | | ></ProFormRadio> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="12"> |
| | | <ProFormItemV2 label="每分钟最大数量:" prop="minutelyMaxCount"> |
| | | <ProFormInputNumber |
| | | :controls="false" |
| | | :min="0" |
| | | v-model="form.minutelyMaxCount" |
| | | placeholder="请输入" |
| | | ></ProFormInputNumber> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="12"> |
| | | <ProFormItemV2 label="每小时最大数量:" prop="hourlyMaxCount"> |
| | | <ProFormInputNumber |
| | | :controls="false" |
| | | :min="0" |
| | | v-model="form.hourlyMaxCount" |
| | | placeholder="请输入" |
| | | ></ProFormInputNumber> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="12"> |
| | | <ProFormItemV2 label="每天最大数量:" prop="dailyMaxCount"> |
| | | <ProFormInputNumber |
| | | :controls="false" |
| | | :min="0" |
| | | v-model="form.dailyMaxCount" |
| | | placeholder="请输入" |
| | | ></ProFormInputNumber> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | <ProFormCol> |
| | | <ProFormColItem :span="12"> |
| | | <ProFormItemV2 label="通道配置:" prop="accesses"> |
| | | <div class="access-list"> |
| | | <div class="access-item" v-for="(item, index) in form.accesses" :key="index"> |
| | | <div class="access-item-label"> |
| | | {{ EnumSmsAccessTextUseInSms[item.access] }} |
| | | </div> |
| | | <ProFormRadio |
| | | v-model="item.isDisabled" |
| | | :value-enum="BooleanOptions" |
| | | :button-style="false" |
| | | ></ProFormRadio> |
| | | <ProFormInputNumber |
| | | :controls="false" |
| | | :min="0" |
| | | v-model="item.sort" |
| | | placeholder="请输入" |
| | | ></ProFormInputNumber> |
| | | </div> |
| | | </div> |
| | | </ProFormItemV2> |
| | | </ProFormColItem> |
| | | </ProFormCol> |
| | | </ProForm> |
| | | <template #footer> |
| | | <el-button type="primary" v-if="isRead" @click="isRead = false">编辑</el-button> |
| | | <el-button type="primary" v-else @click="handleConfirm">确认</el-button> |
| | | </template> |
| | | </PageFormLayout> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { |
| | | LoadingLayout, |
| | | AppContainer, |
| | | PageFormLayout, |
| | | ProForm, |
| | | ProFormCol, |
| | | ProFormColItem, |
| | | ProFormItemV2, |
| | | ProFormInputNumber, |
| | | ProFormRadio, |
| | | } from '@bole-core/components'; |
| | | import { useQuery } from '@tanstack/vue-query'; |
| | | import * as smsServices from '@/services/api/sms'; |
| | | import { BooleanOptions, EnumSmsAccessTextUseInSms } from '@/constants'; |
| | | import { FormInstance } from 'element-plus'; |
| | | import { Message } from '@bole-core/core'; |
| | | |
| | | defineOptions({ |
| | | name: 'SmsSettingManage', |
| | | }); |
| | | |
| | | const form = reactive({ |
| | | isDisabled: false, |
| | | withoutParams: false, |
| | | minutelyMaxCount: 0, |
| | | hourlyMaxCount: 0, |
| | | dailyMaxCount: 0, |
| | | accesses: [] as API.SaveSmsSettingCommandAccess[], |
| | | }); |
| | | |
| | | const isRead = ref(true); |
| | | |
| | | const { isLoading } = useQuery({ |
| | | queryKey: ['smsServices/getSmsSetting'], |
| | | queryFn: async () => { |
| | | return await smsServices.getSmsSetting( |
| | | {}, |
| | | { |
| | | showLoading: false, |
| | | } |
| | | ); |
| | | }, |
| | | placeholderData: () => ({} as API.GetSmsSettingQueryResult), |
| | | onSuccess(data) { |
| | | form.isDisabled = data.isDisabled; |
| | | form.withoutParams = data.withoutParams; |
| | | form.minutelyMaxCount = data.minutelyMaxCount; |
| | | form.hourlyMaxCount = data.hourlyMaxCount; |
| | | form.dailyMaxCount = data.dailyMaxCount; |
| | | form.accesses = data.accesses; |
| | | }, |
| | | }); |
| | | |
| | | const formRef = ref<FormInstance>(); |
| | | |
| | | function handleConfirm() { |
| | | if (!formRef.value) return; |
| | | formRef.value.validate((valid) => { |
| | | if (valid) { |
| | | submit(); |
| | | } else { |
| | | return; |
| | | } |
| | | }); |
| | | } |
| | | |
| | | async function submit() { |
| | | try { |
| | | let params: API.SaveSmsSettingCommand = { |
| | | isDisabled: form.isDisabled, |
| | | withoutParams: form.withoutParams, |
| | | minutelyMaxCount: form.minutelyMaxCount, |
| | | hourlyMaxCount: form.hourlyMaxCount, |
| | | dailyMaxCount: form.dailyMaxCount, |
| | | accesses: form.accesses, |
| | | }; |
| | | let res = await smsServices.saveSmsSetting(params); |
| | | if (res) { |
| | | Message.successMessage('操作成功'); |
| | | isRead.value = true; |
| | | } |
| | | } catch (error) {} |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | |
| | | .access-list { |
| | | flex: 1; |
| | | min-width: 0; |
| | | |
| | | :deep() { |
| | | .el-form-item__content { |
| | | flex-direction: column; |
| | | align-items: flex-start; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .access-item { |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 10px; |
| | | |
| | | .access-item-label { |
| | | margin-right: 20px; |
| | | word-break: keep-all; |
| | | } |
| | | |
| | | :deep() { |
| | | .el-radio-group { |
| | | margin-right: 20px; |
| | | } |
| | | } |
| | | } |
| | | </style> |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="state.loading"> |
| | | <AppContainer> |
| | | <ProTableQueryFilterBar @on-reset="reset"> |
| | | <template #query> |
| | | <QueryFilterItem tip-content="操作"> |
| | | <FieldRadio |
| | | v-model="extraParamState.operate" |
| | | :value-enum="EnumDbAuditOperateText" |
| | | buttonStyle |
| | | showAllBtn |
| | | :all-btn-value="null" |
| | | @change="getList()" |
| | | /> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem tip-content="创建时间"> |
| | | <FieldDatePicker |
| | | v-model="extraParamState.createdTime" |
| | | type="daterange" |
| | | range-separator="~" |
| | | start-placeholder="开始时间" |
| | | end-placeholder="结束时间" |
| | | clearable |
| | | @change="getList()" |
| | | ></FieldDatePicker> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.createdUser" |
| | | style="width: 260px" |
| | | placeholder="操作人createdUser" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.traceId" |
| | | style="width: 260px" |
| | | placeholder="跟踪Id(traceId)" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.tableName" |
| | | style="width: 260px" |
| | | placeholder="表名tableName" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.primaryKey" |
| | | style="width: 260px" |
| | | placeholder="主键primaryKey" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.oldValues" |
| | | style="width: 260px" |
| | | placeholder="旧值oldValues" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.newValues" |
| | | style="width: 260px" |
| | | placeholder="新值newValues" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | </template> |
| | | </ProTableQueryFilterBar> |
| | | <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> |
| | | <template #oldValues="{ row }"> |
| | | <el-button |
| | | v-if="row.oldValues" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { oldValues: JSON.parse(row.oldValues) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #newValues="{ row }"> |
| | | <el-button |
| | | v-if="row.newValues" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { newValues: JSON.parse(row.newValues) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #createdUser="{ row }"> |
| | | <el-button |
| | | v-if="row.createdUser" |
| | | type="primary" |
| | | link |
| | | @click=" |
| | | handleAdd({ json: { createdUser: JSON.parse(JSON.stringify(row.createdUser)) } }) |
| | | " |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | </ProTableV2> |
| | | <JsonViewerDialog v-bind="dialogProps" /> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { |
| | | ProTableQueryFilterBar, |
| | | SearchInput, |
| | | LoadingLayout, |
| | | AppContainer, |
| | | QueryFilterItem, |
| | | useTable, |
| | | ProTableV2, |
| | | FieldRadio, |
| | | FieldDatePicker, |
| | | useFormDialog, |
| | | } from '@bole-core/components'; |
| | | import { EnumDbAuditOperateText } from '@/constants'; |
| | | import * as logRecordsServices from '@/services/api/logRecords'; |
| | | import { ModelValueType } from 'element-plus'; |
| | | import { format } from '@/utils'; |
| | | import JsonViewerDialog from './components/JsonViewerDialog.vue'; |
| | | |
| | | defineOptions({ |
| | | name: 'DbAuditLogs', |
| | | }); |
| | | |
| | | const operationBtnMap: Record<string, OperationBtnType> = { |
| | | detailBtn: { emits: { onClick: (role) => openDialog(role) } }, |
| | | }; |
| | | |
| | | const { column, operationBtns } = useAccess({ |
| | | operationBtnMap, |
| | | }); |
| | | |
| | | const BaseState = { |
| | | loading: true, |
| | | }; |
| | | |
| | | const state = reactive({ ...BaseState }); |
| | | |
| | | onMounted(async () => { |
| | | await getList(); |
| | | state.loading = false; |
| | | }); |
| | | |
| | | const { |
| | | getDataSource: getList, |
| | | proTableProps, |
| | | paginationState, |
| | | extraParamState, |
| | | reset, |
| | | } = useTable( |
| | | async ({ pageIndex, pageSize }, extraParamState) => { |
| | | try { |
| | | let params: API.GetDbAuditLogsQuery = { |
| | | pageModel: { |
| | | rows: pageSize, |
| | | page: pageIndex, |
| | | // orderInput: extraParamState.orderInput, |
| | | }, |
| | | createdTimeBegin: format(extraParamState.createdTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), |
| | | createdTimeEnd: format(extraParamState.createdTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), |
| | | createdUser: extraParamState.createdUser, |
| | | traceId: extraParamState.traceId, |
| | | tableName: extraParamState.tableName, |
| | | primaryKey: extraParamState.primaryKey, |
| | | operate: extraParamState.operate, |
| | | oldValues: extraParamState.oldValues, |
| | | newValues: extraParamState.newValues, |
| | | }; |
| | | let res = await logRecordsServices.getDbAuditLogs(params, { |
| | | showLoading: !state.loading, |
| | | }); |
| | | return res; |
| | | } catch (error) {} |
| | | }, |
| | | { |
| | | defaultExtraParams: { |
| | | createdUser: '', |
| | | traceId: '', |
| | | operate: '' as any as EnumDbAuditOperate, |
| | | tableName: '', |
| | | primaryKey: '', |
| | | oldValues: '', |
| | | newValues: '', |
| | | createdTime: [] as unknown as ModelValueType, |
| | | orderInput: [{ property: 'createdTime', order: EnumPagedListOrder.Desc }], |
| | | }, |
| | | columnsRenderProps: { |
| | | createdTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' }, |
| | | operate: { type: 'enum', valueEnum: EnumDbAuditOperateText }, |
| | | }, |
| | | } |
| | | ); |
| | | |
| | | const { dialogProps, handleAdd } = useFormDialog({ |
| | | defaultFormParams: { |
| | | json: null, |
| | | }, |
| | | }); |
| | | |
| | | function openDialog(row: API.GetDbAuditLogsQueryResultItem) { |
| | | handleAdd({ |
| | | json: { |
| | | oldValues: JSON.parse(row.oldValues), |
| | | newValues: JSON.parse(row.newValues), |
| | | createdUser: JSON.parse(JSON.stringify(row.createdUser)), |
| | | }, |
| | | }); |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | </style> |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="state.loading"> |
| | | <AppContainer> |
| | | <ProTableQueryFilterBar @on-reset="reset"> |
| | | <template #query> |
| | | <QueryFilterItem tip-content="创建时间"> |
| | | <FieldDatePicker |
| | | v-model="extraParamState.createdTime" |
| | | type="daterange" |
| | | range-separator="~" |
| | | start-placeholder="开始时间" |
| | | end-placeholder="结束时间" |
| | | clearable |
| | | @change="getList()" |
| | | ></FieldDatePicker> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.createdUser" |
| | | style="width: 260px" |
| | | placeholder="操作人createdUser" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.traceId" |
| | | style="width: 260px" |
| | | placeholder="跟踪Id(traceId)" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.type" |
| | | style="width: 260px" |
| | | placeholder="类型type" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.code" |
| | | style="width: 260px" |
| | | placeholder="代码code" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.message" |
| | | style="width: 260px" |
| | | placeholder="消息message" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | </template> |
| | | </ProTableQueryFilterBar> |
| | | <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> |
| | | <template #createdUser="{ row }"> |
| | | <el-button |
| | | v-if="row.createdUser" |
| | | type="primary" |
| | | link |
| | | @click=" |
| | | handleAdd({ json: { createdUser: JSON.parse(JSON.stringify(row.createdUser)) } }) |
| | | " |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | </ProTableV2> |
| | | <JsonViewerDialog v-bind="dialogProps" /> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { |
| | | ProTableQueryFilterBar, |
| | | SearchInput, |
| | | LoadingLayout, |
| | | AppContainer, |
| | | QueryFilterItem, |
| | | useTable, |
| | | ProTableV2, |
| | | FieldRadio, |
| | | FieldDatePicker, |
| | | useFormDialog, |
| | | } from '@bole-core/components'; |
| | | import * as logRecordsServices from '@/services/api/logRecords'; |
| | | import { ModelValueType } from 'element-plus'; |
| | | import { format } from '@/utils'; |
| | | import JsonViewerDialog from './components/JsonViewerDialog.vue'; |
| | | |
| | | defineOptions({ |
| | | name: 'ExceptionLogs', |
| | | }); |
| | | |
| | | const operationBtnMap: Record<string, OperationBtnType> = { |
| | | detailBtn: { emits: { onClick: (role) => openDialog(role) } }, |
| | | }; |
| | | |
| | | const { column, operationBtns } = useAccess({ |
| | | operationBtnMap, |
| | | }); |
| | | |
| | | const BaseState = { |
| | | loading: true, |
| | | }; |
| | | |
| | | const state = reactive({ ...BaseState }); |
| | | |
| | | onMounted(async () => { |
| | | await getList(); |
| | | state.loading = false; |
| | | }); |
| | | |
| | | const { |
| | | getDataSource: getList, |
| | | proTableProps, |
| | | paginationState, |
| | | extraParamState, |
| | | reset, |
| | | } = useTable( |
| | | async ({ pageIndex, pageSize }, extraParamState) => { |
| | | try { |
| | | let params: API.GetExceptionLogsQuery = { |
| | | pageModel: { |
| | | rows: pageSize, |
| | | page: pageIndex, |
| | | // orderInput: extraParamState.orderInput, |
| | | }, |
| | | createdTimeBegin: format(extraParamState.createdTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), |
| | | createdTimeEnd: format(extraParamState.createdTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), |
| | | createdUser: extraParamState.createdUser, |
| | | traceId: extraParamState.traceId, |
| | | type: extraParamState.type, |
| | | code: extraParamState.code, |
| | | message: extraParamState.message, |
| | | }; |
| | | let res = await logRecordsServices.getExceptionLogs(params, { |
| | | showLoading: !state.loading, |
| | | }); |
| | | return res; |
| | | } catch (error) {} |
| | | }, |
| | | { |
| | | defaultExtraParams: { |
| | | createdUser: '', |
| | | traceId: '', |
| | | type: '', |
| | | code: '', |
| | | message: '', |
| | | createdTime: [] as unknown as ModelValueType, |
| | | orderInput: [{ property: 'createdTime', order: EnumPagedListOrder.Desc }], |
| | | }, |
| | | columnsRenderProps: { |
| | | createdTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' }, |
| | | }, |
| | | } |
| | | ); |
| | | |
| | | const { dialogProps, handleAdd } = useFormDialog({ |
| | | defaultFormParams: { |
| | | json: null, |
| | | }, |
| | | }); |
| | | |
| | | function openDialog(row: API.GetResourceLogsQueryResultItem) { |
| | | handleAdd({ |
| | | json: { |
| | | createdUser: JSON.parse(JSON.stringify(row.createdUser)), |
| | | }, |
| | | }); |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | </style> |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="state.loading"> |
| | | <AppContainer> |
| | | <ProTableQueryFilterBar @on-reset="reset"> |
| | | <template #query> |
| | | <QueryFilterItem tip-content="是否成功"> |
| | | <FieldRadio |
| | | v-model="extraParamState.isSuccess" |
| | | :value-enum="[ |
| | | { label: '成功', value: true }, |
| | | { label: '失败', value: false }, |
| | | ]" |
| | | buttonStyle |
| | | showAllBtn |
| | | :all-btn-value="null" |
| | | @change="getList()" |
| | | /> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem tip-content="创建时间"> |
| | | <FieldDatePicker |
| | | v-model="extraParamState.createdTime" |
| | | type="daterange" |
| | | range-separator="~" |
| | | start-placeholder="开始时间" |
| | | end-placeholder="结束时间" |
| | | clearable |
| | | @change="getList()" |
| | | ></FieldDatePicker> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.createdUser" |
| | | style="width: 260px" |
| | | placeholder="操作人createdUser" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.traceId" |
| | | style="width: 260px" |
| | | placeholder="跟踪Id(traceId)" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.domain" |
| | | style="width: 260px" |
| | | placeholder="域名domain" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.path" |
| | | style="width: 260px" |
| | | placeholder="地址path" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.request" |
| | | style="width: 260px" |
| | | placeholder="请求参数request" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.response" |
| | | style="width: 260px" |
| | | placeholder="响应结果response" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.clientIpAddress" |
| | | style="width: 260px" |
| | | placeholder="客户端IP地址clientIpAddress" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.elapsedMillisecondsMin" |
| | | style="width: 260px" |
| | | placeholder="最小耗时毫秒数elapsedMillisecondsMin" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | </template> |
| | | </ProTableQueryFilterBar> |
| | | <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> |
| | | <template #requestHeaders="{ row }"> |
| | | <el-button |
| | | v-if="row.requestHeaders" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { requestHeaders: JSON.parse(row.requestHeaders) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #request="{ row }"> |
| | | <el-button |
| | | v-if="row.request" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { request: JSON.parse(row.request) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #responseHeaders="{ row }"> |
| | | <el-button |
| | | v-if="row.responseHeaders" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { responseHeaders: JSON.parse(row.responseHeaders) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #response="{ row }"> |
| | | <el-button |
| | | v-if="row.response" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { response: JSON.parse(row.response) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #createdUser="{ row }"> |
| | | <el-button |
| | | v-if="row.createdUser" |
| | | type="primary" |
| | | link |
| | | @click=" |
| | | handleAdd({ json: { createdUser: JSON.parse(JSON.stringify(row.createdUser)) } }) |
| | | " |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | </ProTableV2> |
| | | <JsonViewerDialog v-bind="dialogProps" /> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { |
| | | ProTableQueryFilterBar, |
| | | SearchInput, |
| | | LoadingLayout, |
| | | AppContainer, |
| | | QueryFilterItem, |
| | | useTable, |
| | | ProTableV2, |
| | | FieldRadio, |
| | | FieldDatePicker, |
| | | useFormDialog, |
| | | } from '@bole-core/components'; |
| | | import * as logRecordsServices from '@/services/api/logRecords'; |
| | | import { ModelValueType } from 'element-plus'; |
| | | import { format } from '@/utils'; |
| | | import JsonViewerDialog from './components/JsonViewerDialog.vue'; |
| | | |
| | | defineOptions({ |
| | | name: 'ResourceLogs', |
| | | }); |
| | | |
| | | const operationBtnMap: Record<string, OperationBtnType> = { |
| | | detailBtn: { emits: { onClick: (role) => openDialog(role) } }, |
| | | }; |
| | | |
| | | const { column, operationBtns } = useAccess({ |
| | | operationBtnMap, |
| | | }); |
| | | |
| | | const BaseState = { |
| | | loading: true, |
| | | }; |
| | | |
| | | const state = reactive({ ...BaseState }); |
| | | |
| | | onMounted(async () => { |
| | | await getList(); |
| | | state.loading = false; |
| | | }); |
| | | |
| | | const { |
| | | getDataSource: getList, |
| | | proTableProps, |
| | | paginationState, |
| | | extraParamState, |
| | | reset, |
| | | } = useTable( |
| | | async ({ pageIndex, pageSize }, extraParamState) => { |
| | | try { |
| | | let params: API.GetResourceLogsQuery = { |
| | | pageModel: { |
| | | rows: pageSize, |
| | | page: pageIndex, |
| | | // orderInput: extraParamState.orderInput, |
| | | }, |
| | | createdUser: extraParamState.createdUser, |
| | | createdTimeBegin: format(extraParamState.createdTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), |
| | | createdTimeEnd: format(extraParamState.createdTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), |
| | | traceId: extraParamState.traceId, |
| | | method: extraParamState.method, |
| | | domain: extraParamState.domain, |
| | | path: extraParamState.path, |
| | | request: extraParamState.request, |
| | | response: extraParamState.response, |
| | | isSuccess: extraParamState.isSuccess, |
| | | clientIpAddress: extraParamState.clientIpAddress, |
| | | elapsedMillisecondsMin: extraParamState.elapsedMillisecondsMin, |
| | | }; |
| | | let res = await logRecordsServices.getResourceLogs(params, { |
| | | showLoading: !state.loading, |
| | | }); |
| | | return res; |
| | | } catch (error) {} |
| | | }, |
| | | { |
| | | defaultExtraParams: { |
| | | createdUser: '', |
| | | traceId: '', |
| | | method: '' as any as EnumResourceMethod, |
| | | domain: '', |
| | | path: '', |
| | | request: '', |
| | | response: '', |
| | | isSuccess: null as any as boolean, |
| | | clientIpAddress: '', |
| | | elapsedMillisecondsMin: null, |
| | | createdTime: [] as unknown as ModelValueType, |
| | | orderInput: [{ property: 'createdTime', order: EnumPagedListOrder.Desc }], |
| | | }, |
| | | columnsRenderProps: { |
| | | createdTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' }, |
| | | method: { type: 'enum', valueEnum: EnumResourceMethodText }, |
| | | isSuccess: { |
| | | formatter: (row: API.GetResourceLogsQueryResultItem) => { |
| | | return row.isSuccess ? '是' : '否'; |
| | | }, |
| | | }, |
| | | }, |
| | | } |
| | | ); |
| | | |
| | | const { dialogProps, handleAdd } = useFormDialog({ |
| | | defaultFormParams: { |
| | | json: null, |
| | | }, |
| | | }); |
| | | |
| | | function openDialog(row: API.GetResourceLogsQueryResultItem) { |
| | | handleAdd({ |
| | | json: { |
| | | requestHeaders: JSON.parse(row.requestHeaders), |
| | | request: JSON.parse(row.request), |
| | | responseHeaders: JSON.parse(row.responseHeaders), |
| | | response: JSON.parse(row.response), |
| | | createdUser: JSON.parse(JSON.stringify(row.createdUser)), |
| | | }, |
| | | }); |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | </style> |
New file |
| | |
| | | <template> |
| | | <LoadingLayout :loading="state.loading"> |
| | | <AppContainer> |
| | | <ProTableQueryFilterBar @on-reset="reset"> |
| | | <template #query> |
| | | <QueryFilterItem tip-content="是否成功"> |
| | | <FieldRadio |
| | | v-model="extraParamState.isSuccess" |
| | | :value-enum="[ |
| | | { label: '成功', value: true }, |
| | | { label: '失败', value: false }, |
| | | ]" |
| | | buttonStyle |
| | | showAllBtn |
| | | :all-btn-value="null" |
| | | @change="getList()" |
| | | /> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem tip-content="创建时间"> |
| | | <FieldDatePicker |
| | | v-model="extraParamState.createdTime" |
| | | type="daterange" |
| | | range-separator="~" |
| | | start-placeholder="开始时间" |
| | | end-placeholder="结束时间" |
| | | clearable |
| | | @change="getList()" |
| | | ></FieldDatePicker> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.createdUser" |
| | | style="width: 260px" |
| | | placeholder="操作人createdUser" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.traceId" |
| | | style="width: 260px" |
| | | placeholder="跟踪Id(traceId)" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.domain" |
| | | style="width: 260px" |
| | | placeholder="域名domain" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.path" |
| | | style="width: 260px" |
| | | placeholder="地址path" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.request" |
| | | style="width: 260px" |
| | | placeholder="请求参数request" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.response" |
| | | style="width: 260px" |
| | | placeholder="响应结果response" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.clientIpAddress" |
| | | style="width: 260px" |
| | | placeholder="客户端IP地址clientIpAddress" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | <QueryFilterItem> |
| | | <SearchInput |
| | | v-model="extraParamState.elapsedMillisecondsMin" |
| | | style="width: 260px" |
| | | placeholder="最小耗时毫秒数elapsedMillisecondsMin" |
| | | @on-click-search="getList()" |
| | | > |
| | | </SearchInput> |
| | | </QueryFilterItem> |
| | | </template> |
| | | </ProTableQueryFilterBar> |
| | | <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> |
| | | <template #requestHeaders="{ row }"> |
| | | <el-button |
| | | v-if="row.requestHeaders" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { requestHeaders: JSON.parse(row.requestHeaders) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #request="{ row }"> |
| | | <el-button |
| | | v-if="row.request" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { request: JSON.parse(row.request) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #responseHeaders="{ row }"> |
| | | <el-button |
| | | v-if="row.responseHeaders" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { responseHeaders: JSON.parse(row.responseHeaders) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #response="{ row }"> |
| | | <el-button |
| | | v-if="row.response" |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { response: JSON.parse(row.response) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #createdUser="{ row }"> |
| | | <el-button |
| | | v-if="row.createdUser" |
| | | type="primary" |
| | | link |
| | | @click=" |
| | | handleAdd({ json: { createdUser: JSON.parse(JSON.stringify(row.createdUser)) } }) |
| | | " |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | </ProTableV2> |
| | | <JsonViewerDialog v-bind="dialogProps" /> |
| | | </AppContainer> |
| | | </LoadingLayout> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { |
| | | ProTableQueryFilterBar, |
| | | SearchInput, |
| | | LoadingLayout, |
| | | AppContainer, |
| | | QueryFilterItem, |
| | | useTable, |
| | | ProTableV2, |
| | | FieldRadio, |
| | | FieldDatePicker, |
| | | useFormDialog, |
| | | } from '@bole-core/components'; |
| | | import * as logRecordsServices from '@/services/api/logRecords'; |
| | | import { ModelValueType } from 'element-plus'; |
| | | import { format } from '@/utils'; |
| | | import JsonViewerDialog from './components/JsonViewerDialog.vue'; |
| | | |
| | | defineOptions({ |
| | | name: 'ThreeResourceLogs', |
| | | }); |
| | | |
| | | const operationBtnMap: Record<string, OperationBtnType> = { |
| | | detailBtn: { emits: { onClick: (role) => openDialog(role) } }, |
| | | }; |
| | | |
| | | const { column, operationBtns } = useAccess({ |
| | | operationBtnMap, |
| | | }); |
| | | |
| | | const BaseState = { |
| | | loading: true, |
| | | }; |
| | | |
| | | const state = reactive({ ...BaseState }); |
| | | |
| | | onMounted(async () => { |
| | | await getList(); |
| | | state.loading = false; |
| | | }); |
| | | |
| | | const { |
| | | getDataSource: getList, |
| | | proTableProps, |
| | | paginationState, |
| | | extraParamState, |
| | | reset, |
| | | } = useTable( |
| | | async ({ pageIndex, pageSize }, extraParamState) => { |
| | | try { |
| | | let params: API.GetThreeResourceLogsQuery = { |
| | | pageModel: { |
| | | rows: pageSize, |
| | | page: pageIndex, |
| | | // orderInput: extraParamState.orderInput, |
| | | }, |
| | | createdTimeBegin: format(extraParamState.createdTime?.[0] ?? '', 'YYYY-MM-DD 00:00:00'), |
| | | createdTimeEnd: format(extraParamState.createdTime?.[1] ?? '', 'YYYY-MM-DD 23:59:59'), |
| | | createdUser: extraParamState.createdUser, |
| | | traceId: extraParamState.traceId, |
| | | method: extraParamState.method, |
| | | domain: extraParamState.domain, |
| | | path: extraParamState.path, |
| | | request: extraParamState.request, |
| | | response: extraParamState.response, |
| | | isSuccess: extraParamState.isSuccess, |
| | | clientIpAddress: extraParamState.clientIpAddress, |
| | | elapsedMillisecondsMin: extraParamState.elapsedMillisecondsMin, |
| | | }; |
| | | let res = await logRecordsServices.getThreeResourceLogs(params, { |
| | | showLoading: !state.loading, |
| | | }); |
| | | return res; |
| | | } catch (error) {} |
| | | }, |
| | | { |
| | | defaultExtraParams: { |
| | | createdUser: '', |
| | | traceId: '', |
| | | method: '' as any as EnumResourceMethod, |
| | | domain: '', |
| | | path: '', |
| | | request: '', |
| | | response: '', |
| | | isSuccess: null as any as boolean, |
| | | clientIpAddress: '', |
| | | elapsedMillisecondsMin: null, |
| | | createdTime: [] as unknown as ModelValueType, |
| | | orderInput: [{ property: 'createdTime', order: EnumPagedListOrder.Desc }], |
| | | }, |
| | | columnsRenderProps: { |
| | | createdTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' }, |
| | | method: { type: 'enum', valueEnum: EnumResourceMethodText }, |
| | | isSuccess: { |
| | | formatter: (row: API.GetResourceLogsQueryResultItem) => { |
| | | return row.isSuccess ? '是' : '否'; |
| | | }, |
| | | }, |
| | | }, |
| | | } |
| | | ); |
| | | |
| | | const { dialogProps, handleAdd } = useFormDialog({ |
| | | defaultFormParams: { |
| | | json: null, |
| | | }, |
| | | }); |
| | | |
| | | function openDialog(row: API.GetResourceLogsQueryResultItem) { |
| | | handleAdd({ |
| | | json: { |
| | | requestHeaders: JSON.parse(row.requestHeaders), |
| | | request: JSON.parse(row.request), |
| | | responseHeaders: JSON.parse(row.responseHeaders), |
| | | response: JSON.parse(row.response), |
| | | createdUser: JSON.parse(JSON.stringify(row.createdUser)), |
| | | }, |
| | | }); |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @use '@/style/common.scss' as *; |
| | | </style> |
| | |
| | | <template> |
| | | <!-- <el-collapse v-model="activeName" accordion> |
| | | <el-collapse-item |
| | | v-for="item in dbAuditLogs" |
| | | :key="item.createdTime" |
| | | name="1" |
| | | style="overflow: auto; max-height: 600px" |
| | | > |
| | | <ProForm :model="item" is-read> |
| | | <ProFormItemV2 label="tableName:"> |
| | | {{ item.tableName }} |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="primaryKey:">{{ item.primaryKey }} </ProFormItemV2> |
| | | <ProFormItemV2 label="operate:"> {{ EnumDbAuditOperateText[item.operate] }}</ProFormItemV2> |
| | | <ProFormItemV2 label="oldValues:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.oldValues)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="newValues:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.newValues)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="createdUser:"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(JSON.stringify(item.createdUser))" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="createdTime:"> |
| | | {{ format(item.createdTime, 'YYYY-MM-DD HH:mm:ss') }}</ProFormItemV2 |
| | | > |
| | | </ProForm> |
| | | </el-collapse-item> |
| | | </el-collapse> --> |
| | | <AppContainer> |
| | | <ProTableV2 |
| | | :columns="columns" |
| | |
| | | :column-render-map="columnsRenderProps" |
| | | > |
| | | <template #oldValues="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.stringify(row.oldValues) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { oldValues: JSON.parse(row.oldValues) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #newValues="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.stringify(row.newValues) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { newValues: JSON.parse(row.newValues) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: JSON.parse(JSON.stringify(row.createdUser)) })" |
| | | @click="handleAdd({ json: { createdUser: JSON.parse(JSON.stringify(row.createdUser)) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | |
| | | defineColumns, |
| | | ProTableV2Props, |
| | | useFormDialog, |
| | | defineOperationBtns, |
| | | } from '@bole-core/components'; |
| | | import JsonViewerDialog from './JsonViewerDialog.vue'; |
| | | |
| | |
| | | })) |
| | | ); |
| | | |
| | | const operationBtns = defineOperationBtns([ |
| | | { |
| | | data: { |
| | | enCode: 'detailBtn', |
| | | name: '查看', |
| | | }, |
| | | emits: { |
| | | onClick: (role) => openDialog(role), |
| | | }, |
| | | }, |
| | | ]); |
| | | |
| | | const columnsRenderProps: ProTableV2Props['columnRenderMap'] = { |
| | | operate: { type: 'enum', valueEnum: EnumDbAuditOperateText }, |
| | | createdTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' }, |
| | |
| | | json: null, |
| | | }, |
| | | }); |
| | | |
| | | function openDialog(row: API.GetDbAuditLogsQueryResultItem) { |
| | | handleAdd({ |
| | | json: { |
| | | oldValues: JSON.parse(row.oldValues), |
| | | newValues: JSON.parse(row.newValues), |
| | | createdUser: JSON.parse(JSON.stringify(row.createdUser)), |
| | | }, |
| | | }); |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | |
| | | <template> |
| | | <!-- <el-collapse v-model="activeName" accordion> |
| | | <el-collapse-item |
| | | v-for="item in exceptionLogs" |
| | | :key="item.createdTime" |
| | | name="1" |
| | | style="overflow: auto; max-height: 600px" |
| | | > |
| | | <ProForm :model="item" is-read> |
| | | <ProFormItemV2 label="type:"> |
| | | {{ item.type }} |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="code:">{{ item.code }} </ProFormItemV2> |
| | | <ProFormItemV2 label="message:"> {{ item.message }}</ProFormItemV2> |
| | | <ProFormItemV2 label="stackTrace:"> {{ item.stackTrace }}</ProFormItemV2> |
| | | <ProFormItemV2 label="createdUser:"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(JSON.stringify(item.createdUser))" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="createdTime:"> |
| | | {{ format(item.createdTime, 'YYYY-MM-DD HH:mm:ss') }}</ProFormItemV2 |
| | | > |
| | | </ProForm> |
| | | </el-collapse-item> |
| | | </el-collapse> --> |
| | | <AppContainer> |
| | | <ProTableV2 |
| | | :columns="columns" |
| | |
| | | <template> |
| | | <ProDialog title="查看" v-model="visible" destroy-on-close draggable> |
| | | <ProForm :model="form" ref="dialogForm" label-width="120px"> |
| | | <ProFormItemV2 |
| | | v-for="(item, index) in jsonList" |
| | | :label="`${item}:`" |
| | | :key="index" |
| | | prop="electronSignAccesses" |
| | | required |
| | | > |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :preview-mode="true" |
| | | :value="form.json" |
| | | :value="form.json?.[item]" |
| | | expanded |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | </ProForm> |
| | | |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="emit('onCancel')">取 消</el-button> |
| | |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { ProDialog } from '@bole-core/components'; |
| | | import { ProDialog, ProForm, ProFormItemV2 } from '@bole-core/components'; |
| | | import JsonViewer from 'vue-json-viewer'; |
| | | |
| | | defineOptions({ |
| | |
| | | |
| | | const form = defineModel<Form>('form'); |
| | | |
| | | const jsonList = computed(() => { |
| | | return Object.keys(form.value.json); |
| | | }); |
| | | |
| | | const emit = defineEmits<{ |
| | | (e: 'onConfirm'): void; |
| | | (e: 'onCancel'): void; |
| | |
| | | <template> |
| | | <!-- <el-collapse v-model="activeName" accordion> |
| | | <el-collapse-item |
| | | v-for="item in resourceLogs" |
| | | :key="item.id" |
| | | name="1" |
| | | style="overflow: auto; max-height: 600px" |
| | | > |
| | | <template #title> |
| | | <el-button type="primary" @click="resend(item.id)" link>重新发送</el-button> |
| | | </template> |
| | | <ProForm :model="item" is-read style="padding: 0 20px"> |
| | | <ProFormItemV2 label="method:"> |
| | | {{ EnumResourceMethodText[item.method] }} |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="domain:">{{ item.domain }} </ProFormItemV2> |
| | | <ProFormItemV2 label="path:"> {{ item.path }}</ProFormItemV2> |
| | | <ProFormItemV2 label="requestHeaders:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.requestHeaders)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="request:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.request)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="responseHeaders:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.responseHeaders)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="response:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.response)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="isSuccess:"> {{ item.isSuccess ? '是' : '否' }}</ProFormItemV2> |
| | | <ProFormItemV2 label="clientIpAddress:"> {{ item.clientIpAddress }}</ProFormItemV2> |
| | | <ProFormItemV2 label="refererUrl:"> {{ item.refererUrl }}</ProFormItemV2> |
| | | <ProFormItemV2 label="consoleLogs:"> {{ item.consoleLogs }}</ProFormItemV2> |
| | | <ProFormItemV2 label="elapsedMilliseconds:"> {{ item.elapsedMilliseconds }}</ProFormItemV2> |
| | | <ProFormItemV2 label="createdUser:"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(JSON.stringify(item.createdUser))" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="createdTime:"> |
| | | {{ format(item.createdTime, 'YYYY-MM-DD HH:mm:ss') }}</ProFormItemV2 |
| | | > |
| | | </ProForm> |
| | | </el-collapse-item> |
| | | </el-collapse> --> |
| | | <AppContainer> |
| | | <ProTableV2 |
| | | :columns="columns" |
| | |
| | | :column-render-map="columnsRenderProps" |
| | | > |
| | | <template #requestHeaders="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.requestHeaders) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { requestHeaders: JSON.parse(row.requestHeaders) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #request="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.request) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { request: JSON.parse(row.request) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #responseHeaders="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.responseHeaders) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { responseHeaders: JSON.parse(row.responseHeaders) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #response="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.response) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { response: JSON.parse(row.response) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: JSON.parse(JSON.stringify(row.createdUser)) })" |
| | | @click="handleAdd({ json: { createdUser: JSON.parse(JSON.stringify(row.createdUser)) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | |
| | | import * as logRecordsServices from '@/services/api/logRecords'; |
| | | import { Message } from '@bole-core/core'; |
| | | import JsonViewerDialog from './JsonViewerDialog.vue'; |
| | | import { request } from 'http'; |
| | | |
| | | defineOptions({ |
| | | name: 'ResourceLogsView', |
| | |
| | | const operationBtns = defineOperationBtns([ |
| | | { |
| | | data: { |
| | | enCode: 'detailBtn', |
| | | name: '查看', |
| | | }, |
| | | emits: { |
| | | onClick: (role) => openDialog(role), |
| | | }, |
| | | }, |
| | | { |
| | | data: { |
| | | enCode: 'reSendBtn', |
| | | name: '重新发送', |
| | | }, |
| | |
| | | } |
| | | } catch (error) {} |
| | | } |
| | | |
| | | function openDialog(row: API.GetResourceLogsQueryResultItem) { |
| | | handleAdd({ |
| | | json: { |
| | | requestHeaders: row.requestHeaders, |
| | | request: row.request, |
| | | responseHeaders: row.responseHeaders, |
| | | response: row.response, |
| | | createdUser: JSON.stringify(row.createdUser), |
| | | }, |
| | | }); |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | |
| | | <template> |
| | | <!-- <el-collapse v-model="activeName" accordion> |
| | | <el-collapse-item |
| | | v-for="item in threeResourceLogs" |
| | | :key="item.id" |
| | | name="1" |
| | | style="overflow: auto; max-height: 600px" |
| | | > |
| | | <ProForm :model="item" is-read> |
| | | <ProFormItemV2 label="method:"> |
| | | {{ EnumResourceMethodText[item.method] }} |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="domain:">{{ item.domain }} </ProFormItemV2> |
| | | <ProFormItemV2 label="path:"> {{ item.path }}</ProFormItemV2> |
| | | <ProFormItemV2 label="requestHeaders:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.requestHeaders)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="request:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.request)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="responseHeaders:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.responseHeaders)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="response:" label-position="top"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(item.response)" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="isSuccess:"> {{ item.isSuccess ? '是' : '否' }}</ProFormItemV2> |
| | | <ProFormItemV2 label="elapsedMilliseconds:"> {{ item.elapsedMilliseconds }}</ProFormItemV2> |
| | | <ProFormItemV2 label="createdUser:"> |
| | | <json-viewer |
| | | :copyable="true" |
| | | :boxed="true" |
| | | :value="JSON.parse(JSON.stringify(item.createdUser))" |
| | | ></json-viewer> |
| | | </ProFormItemV2> |
| | | <ProFormItemV2 label="createdTime:"> |
| | | {{ format(item.createdTime, 'YYYY-MM-DD HH:mm:ss') }}</ProFormItemV2 |
| | | > |
| | | </ProForm> |
| | | </el-collapse-item> |
| | | </el-collapse> --> |
| | | <AppContainer> |
| | | <ProTableV2 |
| | | :columns="columns" |
| | | :show-pagination="false" |
| | | :operationBtns="operationBtns" |
| | | :table-data="threeResourceLogs" |
| | | :column-render-map="columnsRenderProps" |
| | | > |
| | | <template #requestHeaders="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.requestHeaders) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { requestHeaders: JSON.parse(row.requestHeaders) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #request="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.request) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { request: JSON.parse(row.request) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #responseHeaders="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.responseHeaders) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { responseHeaders: JSON.parse(row.responseHeaders) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | | <template #response="{ row }"> |
| | | <el-button type="primary" link @click="handleAdd({ json: JSON.parse(row.response) })" |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: { response: JSON.parse(row.response) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | |
| | | <el-button |
| | | type="primary" |
| | | link |
| | | @click="handleAdd({ json: JSON.parse(JSON.stringify(row.createdUser)) })" |
| | | @click="handleAdd({ json: { createdUser: JSON.parse(JSON.stringify(row.createdUser)) } })" |
| | | >查看</el-button |
| | | > |
| | | </template> |
| | |
| | | defineColumns, |
| | | ProTableV2Props, |
| | | useFormDialog, |
| | | defineOperationBtns, |
| | | } from '@bole-core/components'; |
| | | import { EnumResourceMethodText } from '@/constants'; |
| | | import JsonViewerDialog from './JsonViewerDialog.vue'; |
| | |
| | | })) |
| | | ); |
| | | |
| | | const operationBtns = defineOperationBtns([ |
| | | { |
| | | data: { |
| | | enCode: 'detailBtn', |
| | | name: '查看', |
| | | }, |
| | | emits: { |
| | | onClick: (role) => openDialog(role), |
| | | }, |
| | | }, |
| | | ]); |
| | | |
| | | const columnsRenderProps: ProTableV2Props['columnRenderMap'] = { |
| | | method: { type: 'enum', valueEnum: EnumResourceMethodText }, |
| | | isSuccess: { |
| | |
| | | json: null, |
| | | }, |
| | | }); |
| | | |
| | | function openDialog(row: API.GetResourceLogsQueryResultItem) { |
| | | handleAdd({ |
| | | json: { |
| | | requestHeaders: JSON.parse(row.requestHeaders), |
| | | request: JSON.parse(row.request), |
| | | responseHeaders: JSON.parse(row.responseHeaders), |
| | | response: JSON.parse(row.response), |
| | | createdUser: JSON.parse(JSON.stringify(row.createdUser)), |
| | | }, |
| | | }); |
| | | } |
| | | </script> |