docs: explain common, dcim and kky resource upgrades
This commit is contained in:
1 parent
5ba081550c
commit
1e9f2d786b
3 files changed
+28
No files matched your search
@@ -1,4 +1,5 @@
|
||||
<script>
|
||||
// 通用模块升级及展示适配:归一化按钮、镜像、图表和配置项,并管理配置/商品升级流程。
|
||||
import "~/assets/styles/CommonUpgrade.C8sZ-ExM.css";
|
||||
import { toDisplayString } from "vue";
|
||||
import { renderList } from "vue";
|
||||
@@ -46,6 +47,7 @@ var j = (e) => (e && typeof e == `object` && !Array.isArray(e) ? e : {}),
|
||||
`rescue_system`,
|
||||
]),
|
||||
F = new Set([`on`, `off`, `reboot`, `hard_off`, `hard_reboot`, `vnc`]);
|
||||
// 兼容单项或 console/control 分组按钮;仅开放已适配动作,重复项有禁用标记时从严合并。
|
||||
function I(e, t) {
|
||||
let n = (Array.isArray(e) ? e : [e])
|
||||
.flatMap((e) => {
|
||||
@@ -89,6 +91,7 @@ function I(e, t) {
|
||||
: e,
|
||||
);
|
||||
}
|
||||
// 将配置项→系统→版本的嵌套镜像结构展开,保留版本所属 optionId 供重装接口使用。
|
||||
function L(e) {
|
||||
return (Array.isArray(e) ? e : [e]).flatMap((e) => {
|
||||
let t = j(e);
|
||||
@@ -113,6 +116,7 @@ function L(e) {
|
||||
});
|
||||
});
|
||||
}
|
||||
// 将模块提供的图表类型及下拉选项转换为统一展示结构。
|
||||
function R(e) {
|
||||
return (Array.isArray(e) ? e : []).flatMap((e) => {
|
||||
let t = j(e);
|
||||
@@ -133,6 +137,7 @@ function R(e) {
|
||||
];
|
||||
});
|
||||
}
|
||||
// 兼容多序列 value 列表与 in_bw/out_bw 列表;按首序列时间对齐,缺失采样保留 null。
|
||||
function z(e) {
|
||||
let t = j(e);
|
||||
if (!Array.isArray(t.list)) throw Error(`图表数据格式暂未适配`);
|
||||
@@ -191,6 +196,7 @@ function z(e) {
|
||||
series: l,
|
||||
};
|
||||
}
|
||||
// 当前配置按类型展示数量、级联路径或子项文本,镜像和网络标签沿用统一格式化规则。
|
||||
function B(e) {
|
||||
let t = e.unit ? ` ${e.unit}` : ``;
|
||||
if (e.option_type === `cascade`) return String(e.cascade_path || `--`) + t;
|
||||
@@ -213,6 +219,7 @@ function B(e) {
|
||||
.filter(Boolean);
|
||||
return r.length ? r.join(`、`) + t : String(e.sub_name || `--`);
|
||||
}
|
||||
// 递归展开可见级联叶子为完整路径,深度上限避免异常后台树导致无限递归。
|
||||
function V(e, t = [], n = 0) {
|
||||
return !Array.isArray(e) || n > 20
|
||||
? []
|
||||
@@ -234,6 +241,7 @@ function V(e, t = [], n = 0) {
|
||||
: [];
|
||||
});
|
||||
}
|
||||
// 归一化可升级配置;数量区间按步长对齐,隐藏选项过滤后再判定是否支持编辑。
|
||||
function H(e) {
|
||||
return Array.isArray(e)
|
||||
? e.flatMap((e) => {
|
||||
@@ -323,6 +331,7 @@ function H(e) {
|
||||
})
|
||||
: [];
|
||||
}
|
||||
// 校验表单成员、数量区间/步长和重复数量,分别生成普通与级联配置请求字段。
|
||||
function U(e, t, n) {
|
||||
let r = {},
|
||||
i = {};
|
||||
@@ -383,6 +392,7 @@ function U(e, t, n) {
|
||||
cascade_configoption: i,
|
||||
};
|
||||
}
|
||||
// 升级状态机:配置升级通用于已适配模块,跨商品升级仅由 idcsmart_common 开放。
|
||||
function W(e, t) {
|
||||
let n = useApi(),
|
||||
a = ref(`config`),
|
||||
@@ -504,6 +514,7 @@ function W(e, t) {
|
||||
function W() {
|
||||
(L++, (F.value = ``), (P.value = ``), (O.value = !1), (M.value = !1));
|
||||
}
|
||||
// 应用商品高级规则并同步联动后的表单;同步锁阻止 watch 再入递归。
|
||||
function G() {
|
||||
if (!z) {
|
||||
if (_.value.error) throw Error(_.value.error);
|
||||
@@ -517,6 +528,7 @@ function W(e, t) {
|
||||
}
|
||||
}
|
||||
}
|
||||
// 配置升级优先使用实例当前值,换商品则使用目标默认值,并初始化周期和级联数量。
|
||||
function K() {
|
||||
let e = Array.isArray(u.value.configoptions)
|
||||
? u.value.configoptions.map(j)
|
||||
@@ -555,6 +567,7 @@ function W(e, t) {
|
||||
W(),
|
||||
G());
|
||||
}
|
||||
// 按升级模式选择配置接口,实例或模式切换后通过代次废弃旧结果。
|
||||
async function q() {
|
||||
if (!I || D.value || !e().allowed) return;
|
||||
if (!c.value) {
|
||||
@@ -589,6 +602,7 @@ function W(e, t) {
|
||||
I && t === R && (E.value = !1);
|
||||
}
|
||||
}
|
||||
// 统一构建报价/下单载荷;尚未适配含子商品组合的升级,不能只提交父商品。
|
||||
function J() {
|
||||
if (!c.value) throw Error(`此模块未开放更换商品`);
|
||||
if (_.value.error) throw Error(_.value.error);
|
||||
@@ -605,6 +619,7 @@ function W(e, t) {
|
||||
}
|
||||
return e;
|
||||
}
|
||||
// 高级规则联动完成后再记录快照;价格必须有效且非负,改动表单立即废弃报价。
|
||||
async function Y() {
|
||||
if (
|
||||
!I ||
|
||||
@@ -644,6 +659,7 @@ function W(e, t) {
|
||||
I && t === L && (O.value = !1);
|
||||
}
|
||||
}
|
||||
// 需要有效报价和用户确认;商品升级将配置包裹进 config_options,与配置升级载荷区分。
|
||||
async function X() {
|
||||
if (!I || !V.value || !M.value) return;
|
||||
let r = B.value;
|
||||
|
||||
Reference in new issue
Block a user