| | |
| | | return t || "—"; |
| | | } |
| | | |
| | | /** 只展示年月日 */ |
| | | export function formatDisplayDate(val) { |
| | | if (val == null || val === "") return "—"; |
| | | let d = null; |
| | | if (typeof val === "number") { |
| | | d = val > 1e12 ? dayjs(val) : dayjs.unix(val); |
| | | } else { |
| | | const s = String(val).trim(); |
| | | d = dayjs(s.includes("T") ? s : s.replace(/-/g, "/")); |
| | | } |
| | | return d.isValid() ? d.format("YYYY-MM-DD") : String(val); |
| | | } |
| | | |
| | | /** 详情接口 data 解包 */ |
| | | export function unwrapTemplateDetail(res) { |
| | | const data = res?.data ?? res; |
| | |
| | | |
| | | <el-descriptions-item label="创建人">{{ detailRow.createdUserName || "—" }}</el-descriptions-item> |
| | | |
| | | <el-descriptions-item label="创建时间">{{ formatDisplayTime(detailRow.createdTime) }}</el-descriptions-item> |
| | | |
| | | <el-descriptions-item label="更新时间">{{ formatDisplayTime(detailRow.updatedTime) }}</el-descriptions-item> |
| | | <el-descriptions-item label="创建时间">{{ formatDisplayDate(detailRow.createdTime) }}</el-descriptions-item> |
| | | |
| | | </el-descriptions> |
| | | |
| | |
| | | |
| | | import TemplateFlowEditor from "./components/TemplateFlowEditor.vue"; |
| | | |
| | | import { formatDisplayTime, mapAttachmentsFromApi } from "./approveTemplateConstants.js"; |
| | | import { formatDisplayDate, mapAttachmentsFromApi } from "./approveTemplateConstants.js"; |
| | | |
| | | import { formatDefaultValueDisplay, formFieldTypeLabel, parseFormConfigToData } from "./formConfigUtils.js"; |
| | | import { selectOptionSourceLabel } from "./selectOptionSource.js"; |
| | |
| | | mapTemplateFromApi, |
| | | mapTemplateToApi, |
| | | nodeSignModeLabel, |
| | | formatDisplayTime, |
| | | formatDisplayDate, |
| | | unwrapTemplateDetail, |
| | | validateTemplateForm, |
| | | } from "./approveTemplateConstants.js"; |
| | |
| | | prop: "createdTime", |
| | | width: 170, |
| | | showOverflowTooltip: true, |
| | | formatData: (v) => formatDisplayTime(v), |
| | | }, |
| | | { |
| | | label: "更新时间", |
| | | prop: "updatedTime", |
| | | width: 170, |
| | | showOverflowTooltip: true, |
| | | formatData: (v) => formatDisplayTime(v), |
| | | formatData: (v) => formatDisplayDate(v), |
| | | }, |
| | | { |
| | | dataType: "action", |