fix: 修复阿里云订阅流水线创建对话框无法获取阿里订单列表的bug

This commit is contained in:
xiaojunnuo
2026-05-11 23:47:48 +08:00
parent c966896522
commit a362860137
6 changed files with 138 additions and 125 deletions
+5 -5
View File
@@ -34,11 +34,11 @@
"@aws-sdk/s3-request-presigner": "^3.964.0",
"@certd/vue-js-cron-light": "^4.0.14",
"@ctrl/tinycolor": "^4.1.0",
"@fast-crud/editor-code": "^1.27.8",
"@fast-crud/fast-crud": "^1.27.8",
"@fast-crud/fast-extends": "^1.27.8",
"@fast-crud/ui-antdv4": "^1.27.8",
"@fast-crud/ui-interface": "^1.27.8",
"@fast-crud/editor-code": "^1.28.1",
"@fast-crud/fast-crud": "^1.28.1",
"@fast-crud/fast-extends": "^1.28.1",
"@fast-crud/ui-antdv4": "^1.28.1",
"@fast-crud/ui-interface": "^1.28.1",
"@iconify/tailwind": "^1.2.0",
"@iconify/vue": "^4.1.1",
"@manypkg/get-packages": "^2.2.2",
@@ -74,7 +74,6 @@ const props = defineProps<
uploadCert?: UploadCertProps;
} & ComponentPropsType
>();
debugger;
const emit = defineEmits<{
"update:value": any;
}>();
@@ -141,8 +140,7 @@ const getOptions = async () => {
}
}
}
message.value = "";
message.value = "获取中...";
hasError.value = false;
loading.value = true;
const pageNo = pagerRef.value.pageNo;
@@ -11,7 +11,17 @@ export type MergeScriptContext = {
export function useReference(formItem: any) {
if (formItem.mergeScript) {
const ctx = {
compute,
compute: (opts: any) => {
const func = (context: any) => {
let form = context.form || {};
form = form.input || form.body || form.access || form;
return opts({
...context,
form,
});
};
return compute(func);
},
asyncCompute,
computed,
};
@@ -94,9 +94,15 @@ export function setRunnableIds(pipeline: any) {
return JSON.parse(content);
}
export function useCertPipelineCreator() {
export function useCertPipelineCreator({ formWrapperRef }: { formWrapperRef: Ref<any> }) {
const { t } = useI18n();
const { openCrudFormDialog } = useFormWrapper();
function open(opts: any) {
return new Promise((resolve, reject) => {
formWrapperRef.value.open(opts);
});
}
const { openCrudFormDialog } = useFormWrapper({ open });
const pluginStore = usePluginStore();
const settingStore = useSettingStore();
@@ -111,10 +117,10 @@ export function useCertPipelineCreator() {
// inputs[inputKey].form.show = true;
const inputDefine = cloneDeep(certPlugin.input[inputKey]);
if (inputDefine.maybeNeed) {
moreParams.push(inputKey);
moreParams.push("input." + inputKey);
}
useReference(inputDefine);
inputs[inputKey] = {
inputs["input." + inputKey] = {
title: inputDefine.title,
form: {
...inputDefine,
@@ -135,17 +141,19 @@ export function useCertPipelineCreator() {
const DEFAULT_RENEW_DAYS = settingStore.sysPublic.defaultCertRenewDays || settingStore.sysPublic.defaultWillExpireDays || 20;
merge(inputs, {
renewDays: {
"input.renewDays": {
form: {
value: DEFAULT_RENEW_DAYS,
},
},
});
const initialForm = req.initialForm || {};
initialForm.type = certPlugin.name;
return {
crudOptions: {
form: {
initialForm: req.initialForm || {},
initialForm: initialForm,
doSubmit,
wrapper: {
wrapClassName: "cert_pipeline_create_form",
@@ -164,44 +172,6 @@ export function useCertPipelineCreator() {
},
},
columns: {
// certApplyPlugin: {
// title: t("certd.plugin.selectTitle"),
// type: "dict-select",
// dict: dict({
// data: [
// { value: "CertApply", label: "JS-ACME" },
// { value: "CertApplyLego", label: "Lego-ACME" },
// { value: "CertApplyGetFormAliyun", label: "Aliyun-Order" },
// ],
// }),
// form: {
// order: 0,
// value: "CertApply",
// helper: {
// render: () => {
// return (
// <ul>
// <li>{t("certd.plugin.jsAcme")}</li>
// <li>{t("certd.plugin.legoAcme")}</li>
// <li>{t("certd.plugin.aliyunOrder")}</li>
// </ul>
// );
// },
// },
// valueChange: {
// handle: async ({ form, value }) => {
// const config = await pluginStore.getPluginConfig({
// name: value,
// type: "builtIn",
// });
// if (config.sysSetting?.input) {
// merge(form, config.sysSetting.input);
// }
// },
// immediate: true,
// },
// },
// },
...inputs,
triggerCron: {
title: t("certd.pipelineForm.triggerCronTitle"),
@@ -346,20 +316,20 @@ export function useCertPipelineCreator() {
await checkPipelineLimit();
//设置系统初始值
const initialForm: any = {};
const initialForm: any = { input: {} };
const pluginSysConfig = await pluginStore.getPluginConfig({ name: req.pluginName, type: "builtIn" });
if (pluginSysConfig.sysSetting?.input) {
for (const key in pluginSysConfig.sysSetting?.input) {
initialForm[key] = pluginSysConfig.sysSetting?.input[key];
initialForm.input[key] = pluginSysConfig.sysSetting?.input[key];
}
}
async function doSubmit({ form }: any) {
// const certDetail = readCertDetail(form.cert.crt);
// 添加certd pipeline
const pluginInput = omit(form, ["triggerCron", "notification", "notificationTarget", "notificationWhen", "certApplyPlugin", "groupId"]);
const pluginInput = form.input;
let pipeline: any = {
title: form.domains[0] + "证书自动化",
title: pluginInput.domains[0] + "证书自动化",
runnableType: "pipeline",
stages: [
{
@@ -50,6 +50,7 @@
<div>{{ t("certd.applyCertificate") }}</div>
</template>
</fs-crud>
<fs-form-wrapper ref="formWrapperRef"></fs-form-wrapper>
</fs-page>
</template>
@@ -90,10 +91,9 @@ function onActionbarMoreItemClick(req: { key: string; item: any }) {
openCertApplyDialog({ key: req.key, title: req.item?.title });
}
const certdFormRef = ref<typeof CertdForm>();
const currentPluginRef = ref();
provide("getCurrentPluginDefine", () => {
return currentPluginRef.value;
return currentPluginRef;
});
const addMorePipelineBtns = computed(() => {
@@ -104,7 +104,9 @@ const addMorePipelineBtns = computed(() => {
{ key: "BatchAddPipeline", title: t("certd.pipelinePage.batchAddPipeline"), icon: "ion:duplicate" },
];
});
const { openAddCertdPipelineDialog } = useCertPipelineCreator();
const formWrapperRef = ref<any>();
const { openAddCertdPipelineDialog } = useCertPipelineCreator({ formWrapperRef });
function openCertApplyDialog(req: { key: string; title: string }) {
if (req.key === "AddPipeline") {
crudExpose.openAdd({});
+98 -65
View File
@@ -867,16 +867,16 @@ importers:
packages/pro/commercial-core:
dependencies:
'@certd/basic':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../../core/basic
'@certd/lib-server':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../../libs/lib-server
'@certd/pipeline':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../../core/pipeline
'@certd/plus-core':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../plus-core
'@midwayjs/core':
specifier: 3.20.11
@@ -912,6 +912,9 @@ importers:
'@types/chai':
specifier: ^4.3.3
version: 4.3.20
'@types/mocha':
specifier: ^10.0.1
version: 10.0.10
'@types/node':
specifier: ^18
version: 18.19.100
@@ -921,6 +924,9 @@ importers:
'@typescript-eslint/parser':
specifier: ^8.26.1
version: 8.32.1(eslint@8.57.0)(typescript@5.9.3)
cross-env:
specifier: ^7.0.3
version: 7.0.3
eslint:
specifier: ^8.24.0
version: 8.57.0
@@ -930,6 +936,12 @@ importers:
eslint-plugin-prettier:
specifier: ^4.2.1
version: 4.2.1(eslint-config-prettier@8.10.0(eslint@8.57.0))(eslint@8.57.0)(prettier@2.8.8)
esmock:
specifier: ^2.7.5
version: 2.7.5
mocha:
specifier: ^10.2.0
version: 10.8.2
prettier:
specifier: ^2.8.8
version: 2.8.8
@@ -942,6 +954,9 @@ importers:
rollup-plugin-visualizer:
specifier: ^5.8.2
version: 5.14.0(rollup@3.29.5)
ts-node:
specifier: ^10.9.2
version: 10.9.2(@types/node@18.19.100)(typescript@5.9.3)
tslib:
specifier: ^2.8.1
version: 2.8.1
@@ -952,16 +967,16 @@ importers:
packages/pro/plugin-plus:
dependencies:
'@certd/basic':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../../core/basic
'@certd/pipeline':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../../core/pipeline
'@certd/plugin-lib':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../../plugins/plugin-lib
'@certd/plus-core':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../plus-core
crypto-js:
specifier: ^4.2.0
@@ -1006,6 +1021,9 @@ importers:
chai:
specifier: 4.3.10
version: 4.3.10
cross-env:
specifier: ^7.0.3
version: 7.0.3
eslint:
specifier: ^8.41.0
version: 8.57.0
@@ -1015,6 +1033,9 @@ importers:
eslint-plugin-prettier:
specifier: ^4.2.1
version: 4.2.1(eslint-config-prettier@8.10.0(eslint@8.57.0))(eslint@8.57.0)(prettier@2.8.8)
esmock:
specifier: ^2.7.5
version: 2.7.5
mocha:
specifier: ^10.2.0
version: 10.8.2
@@ -1027,6 +1048,9 @@ importers:
rollup:
specifier: ^3.7.4
version: 3.29.5
ts-node:
specifier: ^10.9.2
version: 10.9.2(@types/node@18.19.100)(typescript@5.9.3)
tslib:
specifier: ^2.8.1
version: 2.8.1
@@ -1037,7 +1061,7 @@ importers:
packages/pro/plus-core:
dependencies:
'@certd/basic':
specifier: ^1.39.7
specifier: ^1.39.13
version: link:../../core/basic
dayjs:
specifier: ^1.11.7
@@ -1070,6 +1094,9 @@ importers:
chai:
specifier: 4.3.10
version: 4.3.10
cross-env:
specifier: ^7.0.3
version: 7.0.3
eslint:
specifier: ^8.41.0
version: 8.57.0
@@ -1079,6 +1106,9 @@ importers:
eslint-plugin-prettier:
specifier: ^4.2.1
version: 4.2.1(eslint-config-prettier@8.10.0(eslint@8.57.0))(eslint@8.57.0)(prettier@2.8.8)
esmock:
specifier: ^2.7.5
version: 2.7.5
mocha:
specifier: ^10.2.0
version: 10.8.2
@@ -1091,6 +1121,9 @@ importers:
rollup:
specifier: ^3.7.4
version: 3.29.5
ts-node:
specifier: ^10.9.2
version: 10.9.2(@types/node@18.19.100)(typescript@5.9.3)
tslib:
specifier: ^2.8.1
version: 2.8.1
@@ -1119,20 +1152,20 @@ importers:
specifier: ^4.1.0
version: 4.1.0
'@fast-crud/editor-code':
specifier: ^1.27.8
version: 1.27.8
specifier: ^1.28.1
version: 1.28.1
'@fast-crud/fast-crud':
specifier: ^1.27.8
version: 1.27.8(vue@3.5.14(typescript@5.9.3))
specifier: ^1.28.1
version: 1.28.1(vue@3.5.14(typescript@5.9.3))
'@fast-crud/fast-extends':
specifier: ^1.27.8
version: 1.27.8(aws-crt@1.26.2)(vue@3.5.14(typescript@5.9.3))
specifier: ^1.28.1
version: 1.28.1(aws-crt@1.26.2)(vue@3.5.14(typescript@5.9.3))
'@fast-crud/ui-antdv4':
specifier: ^1.27.8
version: 1.27.8
specifier: ^1.28.1
version: 1.28.1
'@fast-crud/ui-interface':
specifier: ^1.27.8
version: 1.27.8
specifier: ^1.28.1
version: 1.28.1
'@iconify/tailwind':
specifier: ^1.2.0
version: 1.2.0
@@ -3651,20 +3684,20 @@ packages:
resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
'@fast-crud/editor-code@1.27.8':
resolution: {integrity: sha512-NOIFFMNR+ZZ3dikp6U/V2zDcWcaT+bIq6hV9953keSjLMtbbOcn9PDw/oByac7TXy8l0jCI+4Ee89OepRGqa9Q==}
'@fast-crud/editor-code@1.28.1':
resolution: {integrity: sha512-5BCN916KQ3zn1TbAQJiTdhonBN4i8NWCCYKateuBWnaOM7B7zgULC3+Jncn1JlAnCaH7L+7iYwf8r/XNC0DT7w==}
'@fast-crud/fast-crud@1.27.8':
resolution: {integrity: sha512-yv1tg9qxNwFVnvmo882l2fdL0q6tghg5QQ7S5dsjm7wRf4IxFWqLHOnBor7GUbo+fGBxJK5H8DQsK/HB2De/nA==}
'@fast-crud/fast-crud@1.28.1':
resolution: {integrity: sha512-E9XwwQsNkP77kqLTJyqy/k1i7KD7cnw6FkJt3fTMl1OsBjp09TY3a4OXEfcsJsk+q/l8/9HzQRDBDhDIcWkROA==}
'@fast-crud/fast-extends@1.27.8':
resolution: {integrity: sha512-C9Lc4n/mZp8M5xT+8031rnTh518jfpHsww9PXXnV7XJM/Nleo04rP2rDH5e+J8MVSsZRC5j93TfIjhcLDc/JYg==}
'@fast-crud/fast-extends@1.28.1':
resolution: {integrity: sha512-HK2bktH+PYKJlPeTgO9MTIofdpe9g3s2eaBodGo6A7LgXp9U9aTHbfJJsRxzh8DTM8igi71gHg45bTL3DMLYuQ==}
'@fast-crud/ui-antdv4@1.27.8':
resolution: {integrity: sha512-nig8zAq6DbJNuQ6PkrDJjpNfH2B2R0LDE9foW1krtk1bM5nzn5bIAvJ5MHcVxFYiOwqgzke/m6h7RGquPLbLjg==}
'@fast-crud/ui-antdv4@1.28.1':
resolution: {integrity: sha512-qJinotmWmbd4WdZlkaVv/eRqzbTgIWWQyQgZMK7LlOmRe/83ZpXcq45hap0+pH5UD7ZJrKA5RIIgGFp5+ihvvg==}
'@fast-crud/ui-interface@1.27.8':
resolution: {integrity: sha512-qsTHI7QBmgxlO8ZOoTBKN7zZOUhaYyCtPIUQ5/VJiaBhsWDsQMQTn/7rhPXU5WNpjtfdR2cFW7MgTemVmiDvDQ==}
'@fast-crud/ui-interface@1.28.1':
resolution: {integrity: sha512-HUUO/SObmkAYnQdSETa4Z+M1YMJvzgQWBmy453iPKApTCxf2hEv4Alj/KuajZuP2sxFNzvsMdaUyAO6vWRBaDw==}
'@fidm/asn1@1.0.4':
resolution: {integrity: sha512-esd1jyNvRb2HVaQGq2Gg8Z0kbQPXzV9Tq5Z14KNIov6KfFD6PTaRIO8UpcsYiTNzOqJpmyzWgVTrUwFV3UF4TQ==}
@@ -13980,14 +14013,14 @@ snapshots:
'@aws-sdk/core@3.810.0':
dependencies:
'@aws-sdk/types': 3.804.0
'@smithy/core': 3.20.0
'@smithy/node-config-provider': 4.3.7
'@smithy/property-provider': 4.2.7
'@smithy/protocol-http': 5.3.7
'@smithy/signature-v4': 5.3.7
'@smithy/smithy-client': 4.10.2
'@smithy/types': 4.11.0
'@smithy/util-middleware': 4.2.7
'@smithy/core': 3.23.0
'@smithy/node-config-provider': 4.3.8
'@smithy/property-provider': 4.2.8
'@smithy/protocol-http': 5.3.8
'@smithy/signature-v4': 5.3.8
'@smithy/smithy-client': 4.11.3
'@smithy/types': 4.12.0
'@smithy/util-middleware': 4.2.8
fast-xml-parser: 4.4.1
tslib: 2.8.1
@@ -14340,15 +14373,15 @@ snapshots:
'@aws-sdk/core': 3.810.0
'@aws-sdk/types': 3.804.0
'@aws-sdk/util-arn-parser': 3.804.0
'@smithy/core': 3.20.0
'@smithy/node-config-provider': 4.3.7
'@smithy/protocol-http': 5.3.7
'@smithy/signature-v4': 5.3.7
'@smithy/smithy-client': 4.10.2
'@smithy/types': 4.11.0
'@smithy/core': 3.23.0
'@smithy/node-config-provider': 4.3.8
'@smithy/protocol-http': 5.3.8
'@smithy/signature-v4': 5.3.8
'@smithy/smithy-client': 4.11.3
'@smithy/types': 4.12.0
'@smithy/util-config-provider': 4.2.0
'@smithy/util-middleware': 4.2.7
'@smithy/util-stream': 4.5.8
'@smithy/util-middleware': 4.2.8
'@smithy/util-stream': 4.5.12
'@smithy/util-utf8': 4.2.0
tslib: 2.8.1
@@ -14380,9 +14413,9 @@ snapshots:
'@aws-sdk/core': 3.810.0
'@aws-sdk/types': 3.804.0
'@aws-sdk/util-endpoints': 3.808.0
'@smithy/core': 3.20.0
'@smithy/protocol-http': 5.3.7
'@smithy/types': 4.11.0
'@smithy/core': 3.23.0
'@smithy/protocol-http': 5.3.8
'@smithy/types': 4.12.0
tslib: 2.8.1
'@aws-sdk/middleware-user-agent@3.964.0':
@@ -14523,10 +14556,10 @@ snapshots:
'@aws-sdk/crt-loader': 3.810.0
'@aws-sdk/signature-v4-multi-region': 3.810.0
'@aws-sdk/types': 3.804.0
'@smithy/querystring-parser': 4.2.7
'@smithy/signature-v4': 5.3.7
'@smithy/types': 4.11.0
'@smithy/util-middleware': 4.2.7
'@smithy/querystring-parser': 4.2.8
'@smithy/signature-v4': 5.3.8
'@smithy/types': 4.12.0
'@smithy/util-middleware': 4.2.8
tslib: 2.8.1
transitivePeerDependencies:
- bufferutil
@@ -14538,9 +14571,9 @@ snapshots:
dependencies:
'@aws-sdk/middleware-sdk-s3': 3.810.0
'@aws-sdk/types': 3.804.0
'@smithy/protocol-http': 5.3.7
'@smithy/signature-v4': 5.3.7
'@smithy/types': 4.11.0
'@smithy/protocol-http': 5.3.8
'@smithy/signature-v4': 5.3.8
'@smithy/types': 4.12.0
tslib: 2.8.1
'@aws-sdk/signature-v4-multi-region@3.964.0':
@@ -14578,7 +14611,7 @@ snapshots:
'@aws-sdk/types@3.804.0':
dependencies:
'@smithy/types': 4.11.0
'@smithy/types': 4.12.0
tslib: 2.8.1
'@aws-sdk/types@3.957.0':
@@ -14602,8 +14635,8 @@ snapshots:
'@aws-sdk/util-endpoints@3.808.0':
dependencies:
'@aws-sdk/types': 3.804.0
'@smithy/types': 4.11.0
'@smithy/util-endpoints': 3.2.7
'@smithy/types': 4.12.0
'@smithy/util-endpoints': 3.2.8
tslib: 2.8.1
'@aws-sdk/util-endpoints@3.957.0':
@@ -14651,8 +14684,8 @@ snapshots:
dependencies:
'@aws-sdk/middleware-user-agent': 3.810.0
'@aws-sdk/types': 3.804.0
'@smithy/node-config-provider': 4.3.7
'@smithy/types': 4.11.0
'@smithy/node-config-provider': 4.3.8
'@smithy/types': 4.12.0
tslib: 2.8.1
optionalDependencies:
aws-crt: 1.26.2
@@ -16109,14 +16142,14 @@ snapshots:
'@eslint/js@8.57.0': {}
'@fast-crud/editor-code@1.27.8':
'@fast-crud/editor-code@1.28.1':
dependencies:
js-yaml: 4.1.0
lodash-es: 4.17.21
monaco-editor: 0.52.2
monaco-yaml: 5.4.0(monaco-editor@0.52.2)
'@fast-crud/fast-crud@1.27.8(vue@3.5.14(typescript@5.9.3))':
'@fast-crud/fast-crud@1.28.1(vue@3.5.14(typescript@5.9.3))':
dependencies:
'@iconify/types': 2.0.0
file-saver: 2.0.5
@@ -16126,7 +16159,7 @@ snapshots:
transitivePeerDependencies:
- vue
'@fast-crud/fast-extends@1.27.8(aws-crt@1.26.2)(vue@3.5.14(typescript@5.9.3))':
'@fast-crud/fast-extends@1.28.1(aws-crt@1.26.2)(vue@3.5.14(typescript@5.9.3))':
dependencies:
'@aws-sdk/client-s3': 3.964.0(aws-crt@1.26.2)
'@aws-sdk/s3-request-presigner': 3.964.0
@@ -16156,9 +16189,9 @@ snapshots:
- utf-8-validate
- vue
'@fast-crud/ui-antdv4@1.27.8': {}
'@fast-crud/ui-antdv4@1.28.1': {}
'@fast-crud/ui-interface@1.27.8':
'@fast-crud/ui-interface@1.28.1':
dependencies:
lodash-es: 4.17.21