chore: 小修改

pull/453/head
xiaojunnuo 2025-06-29 00:25:08 +08:00
parent acaa8b1731
commit a761989f3e
8 changed files with 205 additions and 200 deletions

View File

@ -189,6 +189,7 @@ watch(
const input = pluginType === "plugin" ? form.input : form;
const watches = {};
for (const key of props.watches) {
//@ts-ignore
watches[key] = input[key];
}
return {
@ -198,10 +199,11 @@ watch(
},
async (value, oldValue) => {
const { form } = value;
const oldForm = oldValue.form;
const oldForm = oldValue?.form;
let changed = oldForm == null || optionsRef.value.length == 0;
for (const key of props.watches) {
if (form[key] != oldForm[key]) {
//@ts-ignore
if (oldForm && form[key] != oldForm[key]) {
changed = true;
break;
}

View File

@ -89,7 +89,7 @@ function loadLocalesMapFromDir(regexp: RegExp, modules: Record<string, () => Pro
* @param locale
*/
function setI18nLanguage(locale: Locale) {
// setAntdvLocale(locale);
setAntdvLocale(locale);
//@ts-ignore
i18n.global.locale.value = locale;

View File

@ -5,140 +5,140 @@ import { AddReq, CreateCrudOptionsProps, CreateCrudOptionsRet, DelReq, dict, Edi
import { useI18n } from "vue-i18n";
export default function ({ crudExpose, context }: CreateCrudOptionsProps): CreateCrudOptionsRet {
const { t } = useI18n();
const { crudBinding } = crudExpose;
const { props, ctx, api } = context;
const lastResRef = ref();
const pageRequest = async (query: UserPageQuery): Promise<UserPageRes> => {
return await context.api.GetList(query);
};
const editRequest = async (req: EditReq) => {
const { form, row } = req;
form.id = row.id;
form.type = props.type;
const res = await context.api.UpdateObj(form);
lastResRef.value = res;
return res;
};
const delRequest = async (req: DelReq) => {
const { row } = req;
return await context.api.DelObj(row.id);
};
const { t } = useI18n();
const { crudBinding } = crudExpose;
const { props, ctx, api } = context;
const lastResRef = ref();
const pageRequest = async (query: UserPageQuery): Promise<UserPageRes> => {
return await context.api.GetList(query);
};
const editRequest = async (req: EditReq) => {
const { form, row } = req;
form.id = row.id;
form.type = props.type;
const res = await context.api.UpdateObj(form);
lastResRef.value = res;
return res;
};
const delRequest = async (req: DelReq) => {
const { row } = req;
return await context.api.DelObj(row.id);
};
const addRequest = async (req: AddReq) => {
const { form } = req;
form.type = props.type;
const res = await context.api.AddObj(form);
lastResRef.value = res;
return res;
};
const addRequest = async (req: AddReq) => {
const { form } = req;
form.type = props.type;
const res = await context.api.AddObj(form);
lastResRef.value = res;
return res;
};
const selectedRowKey = ref([props.modelValue]);
const selectedRowKey = ref([props.modelValue]);
const onSelectChange = (changed: any) => {
selectedRowKey.value = changed;
ctx.emit("update:modelValue", changed[0]);
};
const onSelectChange = (changed: any) => {
selectedRowKey.value = changed;
ctx.emit("update:modelValue", changed[0]);
};
const typeRef = ref("aliyun");
context.typeRef = typeRef;
const commonColumnsDefine = getCommonColumnDefine(crudExpose, typeRef, api);
commonColumnsDefine.type.form.component.disabled = true;
return {
typeRef,
crudOptions: {
request: {
pageRequest,
addRequest,
editRequest,
delRequest,
},
toolbar: {
show: false,
},
search: {
show: false,
},
form: {
wrapper: {
width: "1050px",
},
},
rowHandle: {
width: 200,
},
table: {
scroll: {
x: 800,
},
rowSelection: {
type: "radio",
selectedRowKeys: selectedRowKey,
onChange: onSelectChange,
},
customRow: (record: any) => {
return {
onClick: () => {
onSelectChange([record.id]);
}, // 点击行
};
},
},
columns: {
id: {
title: "ID",
key: "id",
type: "number",
column: {
width: 50,
},
form: {
show: false,
},
},
name: {
title: t("certd.name"),
search: {
show: true,
},
type: ["text"],
form: {
rules: [{ required: true, message: t("certd.pleaseEnterName") }],
helper: t("certd.nameHelper"),
},
column: {
width: 200,
},
},
from: {
title: t("certd.level"),
type: "dict-select",
dict: dict({
data: [
{ label: t("certd.system"), value: "sys" },
{ label: t("certd.usera"), value: "user" },
],
}),
search: {
show: false,
},
form: {
show: false,
},
column: {
width: 100,
align: "center",
component: {
color: "auto",
},
order: 10,
},
valueBuilder: ({ row, key, value }) => {
row[key] = row.userId > 0 ? "user" : "sys";
},
},
...commonColumnsDefine,
},
},
};
const typeRef = ref("aliyun");
context.typeRef = typeRef;
const commonColumnsDefine = getCommonColumnDefine(crudExpose, typeRef, api);
commonColumnsDefine.type.form.component.disabled = true;
return {
typeRef,
crudOptions: {
request: {
pageRequest,
addRequest,
editRequest,
delRequest,
},
toolbar: {
show: false,
},
search: {
show: false,
},
form: {
wrapper: {
width: "1050px",
},
},
rowHandle: {
width: 200,
},
table: {
scroll: {
x: 800,
},
rowSelection: {
type: "radio",
selectedRowKeys: selectedRowKey,
onChange: onSelectChange,
},
customRow: (record: any) => {
return {
onClick: () => {
onSelectChange([record.id]);
}, // 点击行
};
},
},
columns: {
id: {
title: "ID",
key: "id",
type: "number",
column: {
width: 50,
},
form: {
show: false,
},
},
name: {
title: t("certd.name"),
search: {
show: true,
},
type: ["text"],
form: {
rules: [{ required: true, message: t("certd.pleaseEnterName") }],
helper: t("certd.nameHelper"),
},
column: {
width: 200,
},
},
from: {
title: t("certd.level"),
type: "dict-select",
dict: dict({
data: [
{ label: t("certd.system"), value: "sys" },
{ label: t("certd.usera"), value: "user" },
],
}),
search: {
show: false,
},
form: {
show: false,
},
column: {
width: 100,
align: "center",
component: {
color: "auto",
},
order: 10,
},
valueBuilder: ({ row, key, value }) => {
row[key] = row.userId > 0 ? "user" : "sys";
},
},
...commonColumnsDefine,
},
},
};
}

View File

@ -15,13 +15,13 @@ export default defineComponent({
props: {
type: {
type: String,
default: "aliyun"
default: "aliyun",
},
from: {
type: String, //user | sys
default: "user"
default: "user",
},
modelValue: {}
modelValue: {},
},
emits: ["update:modelValue"],
setup(props, ctx) {
@ -39,7 +39,7 @@ export default defineComponent({
() => {
return props.type;
},
(value) => {
value => {
console.log("access type changed:", value);
onTypeChanged(value);
}
@ -51,9 +51,9 @@ export default defineComponent({
return {
crudBinding,
crudRef
crudRef,
};
}
},
});
</script>
<style lang="less">

View File

@ -6,7 +6,7 @@
<script lang="ts" setup>
import { computed, inject, ref } from "vue";
defineOptions({
name: "SecretPlainGetter"
name: "SecretPlainGetter",
});
const props = defineProps<{

View File

@ -28,28 +28,28 @@ export default defineComponent({
props: {
modelValue: {
type: [Number, String],
default: null
default: null,
},
type: {
type: String,
default: "aliyun"
default: "aliyun",
},
placeholder: {
type: String,
default: "请选择"
default: "请选择",
},
size: {
type: String,
default: "middle"
default: "middle",
},
from: {
type: String, //user | sys
default: "user"
default: "user",
},
disabled: {
type: Boolean,
default: false
}
default: false,
},
},
emits: ["update:modelValue", "change", "selectedChange"],
setup(props, ctx) {
@ -92,7 +92,7 @@ export default defineComponent({
() => {
return props.modelValue;
},
async (value) => {
async value => {
selectedId.value = null;
target.value = null;
if (value == null) {
@ -101,7 +101,7 @@ export default defineComponent({
await refreshTarget(value);
},
{
immediate: true
immediate: true,
}
);
@ -114,11 +114,11 @@ export default defineComponent({
() => {
return props.type;
},
async (value) => {
async value => {
await refreshProviderDefine(value);
},
{
immediate: true
immediate: true,
}
);
@ -134,7 +134,7 @@ export default defineComponent({
console.log("choose ok:", selectedId.value);
emitValue(selectedId.value);
chooseForm.show = false;
}
},
});
return {
@ -142,9 +142,9 @@ export default defineComponent({
target,
selectedId,
providerDefine,
chooseForm
chooseForm,
};
}
},
});
</script>
<style lang="less">

View File

@ -95,9 +95,12 @@ export function getCommonColumnDefine(crudExpose: any, typeRef: any, api: any) {
},
renderLabel(item: any) {
return (
<span class={"flex-o"}>
<fs-icon icon={item.icon} class={"mr-5 fs-16 color-blue"} />
{item.label}
<span class={"flex flex-between items-center"}>
<span class={"flex items-center"}>
<fs-icon icon={item.icon} class={"mr-5 fs-16 color-blue"} />
{item.label}
</span>
<span>{item.value}</span>
</span>
);
},

View File

@ -46,7 +46,7 @@ importers:
packages/core/acme-client:
dependencies:
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../basic
'@peculiar/x509':
specifier: ^1.11.0
@ -207,10 +207,10 @@ importers:
packages/core/pipeline:
dependencies:
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../basic
'@certd/plus-core':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../pro/plus-core
dayjs:
specifier: ^1.11.7
@ -415,7 +415,7 @@ importers:
packages/libs/lib-k8s:
dependencies:
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/basic
'@kubernetes/client-node':
specifier: 0.21.0
@ -455,16 +455,16 @@ importers:
packages/libs/lib-server:
dependencies:
'@certd/acme-client':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/acme-client
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/basic
'@certd/pipeline':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/pipeline
'@certd/plus-core':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../pro/plus-core
'@midwayjs/cache':
specifier: ~3.14.0
@ -607,16 +607,16 @@ importers:
packages/plugins/plugin-cert:
dependencies:
'@certd/acme-client':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/acme-client
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/basic
'@certd/pipeline':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/pipeline
'@certd/plugin-lib':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../plugin-lib
'@google-cloud/publicca':
specifier: ^1.3.0
@ -698,10 +698,10 @@ importers:
specifier: ^3.787.0
version: 3.810.0(aws-crt@1.26.2)
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/basic
'@certd/pipeline':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/pipeline
'@kubernetes/client-node':
specifier: 0.21.0
@ -789,19 +789,19 @@ importers:
packages/pro/commercial-core:
dependencies:
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/basic
'@certd/lib-server':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../libs/lib-server
'@certd/pipeline':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/pipeline
'@certd/plugin-plus':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../plugin-plus
'@certd/plus-core':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../plus-core
'@midwayjs/core':
specifier: ~3.20.3
@ -886,22 +886,22 @@ importers:
specifier: ^1.0.2
version: 1.0.3
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/basic
'@certd/lib-k8s':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../libs/lib-k8s
'@certd/pipeline':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/pipeline
'@certd/plugin-cert':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../plugins/plugin-cert
'@certd/plugin-lib':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../plugins/plugin-lib
'@certd/plus-core':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../plus-core
ali-oss:
specifier: ^6.21.0
@ -1004,7 +1004,7 @@ importers:
packages/pro/plus-core:
dependencies:
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/basic
dayjs:
specifier: ^1.11.7
@ -1294,10 +1294,10 @@ importers:
version: 0.1.3(zod@3.24.4)
devDependencies:
'@certd/lib-iframe':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../libs/lib-iframe
'@certd/pipeline':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/pipeline
'@rollup/plugin-commonjs':
specifier: ^25.0.7
@ -1480,46 +1480,46 @@ importers:
specifier: ^3.705.0
version: 3.810.0(aws-crt@1.26.2)
'@certd/acme-client':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/acme-client
'@certd/basic':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/basic
'@certd/commercial-core':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../pro/commercial-core
'@certd/cv4pve-api-javascript':
specifier: ^8.4.1
version: 8.4.1
'@certd/jdcloud':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../libs/lib-jdcloud
'@certd/lib-huawei':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../libs/lib-huawei
'@certd/lib-k8s':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../libs/lib-k8s
'@certd/lib-server':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../libs/lib-server
'@certd/midway-flyway-js':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../libs/midway-flyway-js
'@certd/pipeline':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../core/pipeline
'@certd/plugin-cert':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../plugins/plugin-cert
'@certd/plugin-lib':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../plugins/plugin-lib
'@certd/plugin-plus':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../pro/plugin-plus
'@certd/plus-core':
specifier: ^1.35.2
specifier: ^1.35.5
version: link:../../pro/plus-core
'@huaweicloud/huaweicloud-sdk-cdn':
specifier: ^3.1.120