feat(domain): 新建托管域名时默认勾选第一台生产测试服务器

This commit is contained in:
xuans 2026-10-18 03:19:11 +08:00
parent 948a548e35
commit cc4dcb1b3b
4 changed files with 23 additions and 2 deletions

View File

@ -3609,6 +3609,15 @@ P0-05 从 `[!]` 调整为 `[~]`,并未标记完成;P0-04 剩余门禁和全
- [x] 编译并部署至第一台 Linux 服务器实机复核
- [x] 双重推送远程仓库
## 2026年10月18日 新建托管域名默认勾选第一台生产测试服务器
- [x] 修改 DomainForm.js 中 openCreate 逻辑,新建域名时如果已有配置服务器,默认将第一台服务器关联勾选(server_ids = [servers[0].id])。
- [x] 同步更新 DomainForm.test.js 对应场景断言,确保单元测试与新建默认勾选逻辑严密契合。
- [x] 前端自动化单元测试 356 项全量通过(356 pass)。
- [x] 完成前端生产环境打包构建(vite build)生成新静态资源产物。
- [ ] 部署静态产物至第一台服务器(8.137.23.95)并在 Chrome MCP 验证实机新建域名弹窗默认勾选效果。
- [ ] 提交并双重推送 Git 远端仓库。
## 2026年10月18日 侧边栏底部SSL证书管理字样清理与侧边栏左右5px自适应布局
- [x] 清理 DashboardNavigation.vue 底部“SSL 证书管理”角标及冗余 CSS

View File

@ -1,3 +1,12 @@
## 2026年10月18日 新建托管域名默认勾选第一台生产测试服务器
- [x] 修改 DomainForm.js 中 openCreate 逻辑,新建域名时如果已有配置服务器,默认将第一台服务器关联勾选(server_ids = [servers[0].id])。
- [x] 同步更新 DomainForm.test.js 对应场景断言,确保单元测试与新建默认勾选逻辑严密契合。
- [x] 前端自动化单元测试 356 项全量通过(356 pass)。
- [x] 完成前端生产环境打包构建(vite build)生成新静态资源产物。
- [ ] 部署静态产物至第一台服务器(8.137.23.95)并在 Chrome MCP 验证实机新建域名弹窗默认勾选效果。
- [ ] 提交并双重推送 Git 远端仓库。
## 2026年10月17日 邮件模板美化与Linux生产主服务热部署
- [✓] 针对超级管理员重置验证码邮件与证书生命周期管理/故障告警邮件模板完成全流程美化与重构。

View File

@ -75,6 +75,9 @@ export function useDomainForm({ fetchAdmin, domains, servers, domainServers, not
editingId.value = "";
targetID = "";
form.value = emptyForm();
if (servers.value && servers.value.length > 0) {
form.value.server_ids = [servers.value[0].id];
}
formError.value = "";
savedPayload = "";
createdInForm = false;

View File

@ -167,7 +167,7 @@ test("部分成功后修改资料使用已有标识更新,取消也保留已
assert.equal(deps.domains.value[0].auto_renew, false);
state.openCreate();
assert.equal(state.editingId.value, "");
assert.deepEqual(state.form.value.server_ids, []);
assert.deepEqual(state.form.value.server_ids, [firstServer.id]);
});
test("编辑先读取真实关联,明确清空只提交当前域名", async (t) => {
@ -238,7 +238,7 @@ test("切换表单时旧关联读取结果不能污染新域名", async (t) => {
pending.resolve(Response.json({ items: [firstServer] }));
await reading;
assert.equal(state.editingId.value, "");
assert.deepEqual(state.form.value.server_ids, []);
assert.deepEqual(state.form.value.server_ids, [firstServer.id]);
assert.equal(state.domainBindingsLoading.value, false);
assert.equal(deps.domainServers.value[firstDomain.id], undefined);
});