|
|
|
@@ -1,7 +1,8 @@ |
|
|
|
|
|
|
|
import { formatDate } from 'element-ui/lib/utils/date-util'; |
|
|
|
import { SOURCE_TYPE, CONSUME_STATUS, POINT_ACTIONS, JOB_TYPE } from '~/const'; |
|
|
|
import { SOURCE_TYPE, CONSUME_STATUS, POINT_ACTIONS, JOB_TYPE, ACC_CARD_TYPE } from '~/const'; |
|
|
|
import { i18n } from '~/langs'; |
|
|
|
import { getListValueWithKey } from '~/utils'; |
|
|
|
|
|
|
|
const getSourceType = (key) => { |
|
|
|
const find = SOURCE_TYPE.filter(item => item.k === key); |
|
|
|
@@ -55,6 +56,15 @@ const getJobTypeLink = (record, type) => { |
|
|
|
return link; |
|
|
|
}; |
|
|
|
|
|
|
|
const renderSpecStr = (spec, showPoint) => { |
|
|
|
var ngpu = `${spec.ComputeResource}: ${spec.AccCardsNum + '*' + getListValueWithKey(ACC_CARD_TYPE, spec.AccCardType)}`; |
|
|
|
var gpuMemStr = spec.GPUMemGiB != 0 ? `${i18n.t('resourcesManagement.gpuMem')}: ${spec.GPUMemGiB}GB, ` : ''; |
|
|
|
var sharedMemStr = spec.ShareMemGiB != 0 ? `, ${i18n.t('resourcesManagement.shareMem')}: ${spec.ShareMemGiB}GB` : ''; |
|
|
|
var pointStr = showPoint ? `, ${spec.UnitPrice == 0 ? i18n.t('resourcesManagement.free') : spec.UnitPrice + i18n.t('resourcesManagement.point_hr')}` : ''; |
|
|
|
var specStr = `${ngpu}, CPU: ${spec.CpuCores}, ${gpuMemStr}${i18n.t('resourcesManagement.mem')}: ${spec.MemGiB}GB${sharedMemStr}${pointStr}`; |
|
|
|
return specStr; |
|
|
|
}; |
|
|
|
|
|
|
|
export const getRewardPointRecordInfo = (record) => { |
|
|
|
const out = { |
|
|
|
sn: record.SerialNo, |
|
|
|
@@ -136,11 +146,15 @@ export const getRewardPointRecordInfo = (record) => { |
|
|
|
// |
|
|
|
} else if (record.SourceType === 'RUN_CLOUDBRAIN_TASK') { |
|
|
|
out.taskName = `<a href="${getJobTypeLink(record, 'DECREASE')}" rel="nofollow">${record?.Cloudbrain?.DisplayJobName}</a>`; |
|
|
|
if (record?.Cloudbrain?.ComputeResource === 'CPU/GPU') { |
|
|
|
const resourceSpec = record?.Cloudbrain?.ResourceSpec?.ResourceSpec; |
|
|
|
out.remark = `【${getJobType(record?.Cloudbrain?.JobType)}】【${record?.Cloudbrain?.ComputeResource}】【GPU: ${resourceSpec?.gpu}, CPU: ${resourceSpec?.cpu}, ${i18n.t('memory')}: ${(resourceSpec?.memMiB / 1024).toFixed(2)}GB, ${i18n.t('sharedMemory')}: ${(resourceSpec?.shareMemMiB / 1024).toFixed(2)}GB】`; |
|
|
|
} else { |
|
|
|
out.remark = `【${getJobType(record?.Cloudbrain?.JobType)}】【${record?.Cloudbrain?.ComputeResource}】【${record?.Cloudbrain?.ResourceSpec.FlavorInfo.desc}】`; |
|
|
|
// if (record?.Cloudbrain?.ComputeResource === 'CPU/GPU') { |
|
|
|
// const resourceSpec = record?.Cloudbrain?.ResourceSpec?.ResourceSpec; |
|
|
|
// out.remark = `【${getJobType(record?.Cloudbrain?.JobType)}】【${record?.Cloudbrain?.ComputeResource}】【GPU: ${resourceSpec?.gpu}, CPU: ${resourceSpec?.cpu}, ${i18n.t('memory')}: ${(resourceSpec?.memMiB / 1024).toFixed(2)}GB, ${i18n.t('sharedMemory')}: ${(resourceSpec?.shareMemMiB / 1024).toFixed(2)}GB】`; |
|
|
|
// } else { |
|
|
|
// out.remark = `【${getJobType(record?.Cloudbrain?.JobType)}】【${record?.Cloudbrain?.ComputeResource}】【${record?.Cloudbrain?.ResourceSpec.FlavorInfo.desc}】`; |
|
|
|
// } |
|
|
|
const resourceSpec = record?.Cloudbrain?.ResourceSpec; |
|
|
|
if (resourceSpec) { |
|
|
|
out.remark = `【${getJobType(record?.Cloudbrain?.JobType)}】【${renderSpecStr(resourceSpec, true)}】`; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|