From 82d08e2153fa9ed50f66ae64d642ec6f2f4d3ec7 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Wed, 4 Jun 2025 18:43:35 +0800 Subject: [PATCH] chore: --- .../src/views/sys/authority/user/crud.tsx | 32 ++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/packages/ui/certd-client/src/views/sys/authority/user/crud.tsx b/packages/ui/certd-client/src/views/sys/authority/user/crud.tsx index f851731f..7e8d23c2 100644 --- a/packages/ui/certd-client/src/views/sys/authority/user/crud.tsx +++ b/packages/ui/certd-client/src/views/sys/authority/user/crud.tsx @@ -1,7 +1,8 @@ import * as api from "./api"; -import { AddReq, CreateCrudOptionsProps, CreateCrudOptionsRet, DelReq, dict, EditReq, UserPageQuery, UserPageRes } from "@fast-crud/fast-crud"; +import { AddReq, compute, CreateCrudOptionsProps, CreateCrudOptionsRet, DelReq, dict, EditReq, UserPageQuery, UserPageRes } from "@fast-crud/fast-crud"; import { useUserStore } from "/@/store/user"; import { Modal, notification } from "ant-design-vue"; +import dayjs from "dayjs"; export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOptionsRet { const pageRequest = async (query: UserPageQuery): Promise => { @@ -210,6 +211,35 @@ export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOpti width: 100, }, }, + validTime: { + title: "有效期", + type: ["date", "time-humanize"], + column: { + align: "center", + sorter: true, + width: 100, + component: { + title: compute(({ row }) => { + return dayjs(row.validTime).format("YYYY-MM-DD"); + }), + useFormatGreater: 30000000000, + options: { + largest: 1, + units: ["y", "d", "h"], + }, + }, + }, + valueBuilder({ value, row, key }) { + if (value != null) { + row[key] = dayjs(value); + } + }, + valueResolve({ value, row, key }) { + if (value != null) { + row[key] = value.valueOf(); + } + }, + }, remark: { title: "备注", type: "text",