import { $t } from '@/locales'
|
|
export function createDictTypeSearchState() {
|
return {
|
condition: '',
|
code: '',
|
name: '',
|
status: ''
|
}
|
}
|
|
export function createDictTypeFormState() {
|
return {
|
id: null,
|
code: '',
|
name: '',
|
description: '',
|
status: 1,
|
memo: ''
|
}
|
}
|
|
export function getDictTypePaginationKey() {
|
return {
|
current: 'current',
|
size: 'pageSize'
|
}
|
}
|
|
export function getDictTypeStatusMeta(status, t = $t) {
|
return Number(status) === 1
|
? { text: t('common.status.normal'), type: 'success', bool: true }
|
: { text: t('common.status.frozen'), type: 'danger', bool: false }
|
}
|
|
export function buildDictTypeSearchParams(params = {}) {
|
return {
|
condition: String(params.condition || '').trim(),
|
code: String(params.code || '').trim(),
|
name: String(params.name || '').trim(),
|
...(params.status !== '' && params.status !== null && params.status !== undefined
|
? { status: Number(params.status) }
|
: {})
|
}
|
}
|
|
export function buildDictTypePageQueryParams(params = {}) {
|
return {
|
current: params.current || 1,
|
pageSize: params.pageSize || params.size || 20,
|
...buildDictTypeSearchParams(params)
|
}
|
}
|
|
export function buildDictTypeDialogModel(record = {}) {
|
return {
|
...createDictTypeFormState(),
|
...(record.id ? { id: Number(record.id) } : {}),
|
code: record.code || '',
|
name: record.name || '',
|
description: record.description || '',
|
status: record.status !== undefined && record.status !== null ? Number(record.status) : 1,
|
memo: record.memo || ''
|
}
|
}
|
|
export function buildDictTypeSavePayload(formData = {}) {
|
return {
|
...(formData.id ? { id: Number(formData.id) } : {}),
|
code: String(formData.code || '').trim(),
|
name: String(formData.name || '').trim(),
|
description: String(formData.description || '').trim(),
|
status: Number(formData.status ?? 1),
|
memo: String(formData.memo || '').trim()
|
}
|
}
|
|
export function normalizeDictTypeListRow(record = {}, t = $t) {
|
const statusMeta = getDictTypeStatusMeta(record.status, t)
|
return {
|
...record,
|
code: record.code || '',
|
name: record.name || '',
|
description: record.description || '',
|
memo: record.memo || '',
|
statusText: record['status$'] || statusMeta.text,
|
statusType: statusMeta.type,
|
statusBool: record.statusBool ?? statusMeta.bool,
|
updateByLabel: record['updateBy$'] || record.updateByLabel || '',
|
createByLabel: record['createBy$'] || record.createByLabel || '',
|
updateTimeText: record['updateTime$'] || record.updateTime || '',
|
createTimeText: record['createTime$'] || record.createTime || ''
|
}
|
}
|