| | |
| | | }" |
| | | @selection-change="handleScheduledSelectionChange" |
| | | @pagination="changeScheduledPage"> |
| | | <template #frequencyDetailRef="{ row }"> |
| | | {{ formatFrequencyDetail(row) }} |
| | | </template> |
| | | <template #statusRef="{ row }"> |
| | | <el-tag v-if="row.status === 1" |
| | | type="success">启用</el-tag> |
| | |
| | | WEEKLY: "每周", |
| | | MONTHLY: "每月", |
| | | QUARTERLY: "季度", |
| | | YEARLY: "年度保养", |
| | | }[cell] || ""), |
| | | }, |
| | | { |
| | | prop: "frequencyDetail", |
| | | label: "开始日期与时间", |
| | | minWidth: 150, |
| | | // 同样改用 formatData,PIMTable 内部会把单元格值传进来 |
| | | formatData: cell => { |
| | | if (typeof cell !== "string") return ""; |
| | | let val = cell; |
| | | const replacements = { |
| | | MON: "周一", |
| | | TUE: "周二", |
| | | WED: "周三", |
| | | THU: "周四", |
| | | FRI: "周五", |
| | | SAT: "周六", |
| | | SUN: "周日", |
| | | }; |
| | | // 使用正则一次性替换所有匹配项 |
| | | return val.replace( |
| | | /MON|TUE|WED|THU|FRI|SAT|SUN/g, |
| | | match => replacements[match] |
| | | ); |
| | | }, |
| | | dataType: "slot", |
| | | slot: "frequencyDetailRef", |
| | | }, |
| | | { prop: "maintenancePerson", label: "保养人", minWidth: 100 }, |
| | | { prop: "registrant", label: "登记人", minWidth: 100 }, |
| | |
| | | ]); |
| | | |
| | | // 保养记录表格列配置(原设备保养表格列) |
| | | const formatFrequencyDetail = (row) => { |
| | | if (!row) return ""; |
| | | const val = String(row.frequencyDetail || ""); |
| | | if (row.frequencyType === "YEARLY") { |
| | | const parts = val.split(","); |
| | | if (parts.length === 3) { |
| | | return `每年${parts[0]}月${parts[1]}日 ${parts[2]}`; |
| | | } |
| | | return val; |
| | | } |
| | | const replacements = { |
| | | MON: "周一", |
| | | TUE: "周二", |
| | | WED: "周三", |
| | | THU: "周四", |
| | | FRI: "周五", |
| | | SAT: "周六", |
| | | SUN: "周日", |
| | | }; |
| | | return val.replace(/MON|TUE|WED|THU|FRI|SAT|SUN/g, (m) => replacements[m]); |
| | | }; |
| | | |
| | | const columns = ref([ |
| | | { |
| | | label: "设备名称", |