移除发证单位并修正证书字体字重

This commit is contained in:
Certificate System
2026-08-13 18:21:24 +08:00
parent abbefc4b48
commit c66aa07efa
19 changed files with 69 additions and 55 deletions

View File

@@ -22,7 +22,6 @@ export interface PublicCertificate {
course_start_date: string | null;
course_end_date: string | null;
issue_date: string;
issuer_name: string;
template_code: string;
status: string;
pdf_status: string;
@@ -45,7 +44,6 @@ export interface ProjectCourse {
default_certificate_name: string;
default_course_name: string | null;
default_stage_name: string | null;
default_issuer_name: string;
default_template_code: string;
status: string;
created_at: string;
@@ -77,7 +75,6 @@ export interface AdminCertificate {
course_start_date: string | null;
course_end_date: string | null;
issue_date: string;
issuer_name: string;
template_code: string;
status: string;
pdf_status: string;

View File

@@ -147,7 +147,6 @@
<el-descriptions-item label="证书模板">{{ templateName(preview.template_code) }}</el-descriptions-item>
<el-descriptions-item label="课程时间">{{ coursePeriodText(preview) }}</el-descriptions-item>
<el-descriptions-item label="发证日期">{{ preview.issue_date }}</el-descriptions-item>
<el-descriptions-item label="发证单位">{{ preview.issuer_name }}</el-descriptions-item>
<el-descriptions-item label="公开链接">
<a :href="preview.public_url" target="_blank" rel="noreferrer">{{ preview.public_url }}</a>
</el-descriptions-item>

View File

@@ -3,7 +3,7 @@
<header class="page-head">
<div>
<h2>项目管理</h2>
<p>维护项目代码和导入时使用的证书默认信息</p>
<p>维护项目代码默认证书模板和课程信息</p>
</div>
<el-button type="primary" @click="saveProject">{{ editingId ? "保存修改" : "新增项目" }}</el-button>
</header>
@@ -16,9 +16,6 @@
<el-form-item label="项目名称">
<el-input v-model.trim="form.name" maxlength="128" />
</el-form-item>
<el-form-item label="默认发证单位">
<el-input v-model.trim="form.default_issuer_name" maxlength="128" />
</el-form-item>
<el-form-item label="默认证书模板">
<el-select v-model="form.default_template_code">
<el-option v-for="item in templates" :key="item.code" :label="item.name" :value="item.code" />
@@ -51,7 +48,6 @@
<el-table-column prop="name" label="项目名称" width="150" />
<el-table-column prop="default_course_name" label="课程名称" min-width="140" />
<el-table-column prop="default_stage_name" label="阶段名称" min-width="120" />
<el-table-column prop="default_issuer_name" label="发证单位" min-width="140" />
<el-table-column label="默认模板" min-width="150">
<template #default="{ row }">{{ templateName(row.default_template_code) }}</template>
</el-table-column>
@@ -90,7 +86,6 @@ const form = reactive({
name: "",
default_course_name: "",
default_stage_name: "",
default_issuer_name: "本公司",
default_template_code: "classic",
status: "active",
});
@@ -104,7 +99,6 @@ const projects = computed(() => {
item.name,
item.default_course_name || "",
item.default_stage_name || "",
item.default_issuer_name,
statusText(item.status),
].join(" ").toLowerCase();
return text.includes(value);
@@ -136,7 +130,6 @@ function editProject(row: ProjectCourse) {
name: row.name,
default_course_name: row.default_course_name || "",
default_stage_name: row.default_stage_name || "",
default_issuer_name: row.default_issuer_name,
default_template_code: row.default_template_code,
status: row.status,
});
@@ -149,7 +142,6 @@ function resetForm() {
name: "",
default_course_name: "",
default_stage_name: "",
default_issuer_name: "本公司",
default_template_code: "classic",
status: "active",
});
@@ -161,15 +153,14 @@ function projectPayload() {
name: form.name,
default_course_name: form.default_course_name || null,
default_stage_name: form.default_stage_name || null,
default_issuer_name: form.default_issuer_name,
default_template_code: form.default_template_code,
status: form.status,
};
}
async function saveProject() {
if (!form.code || !form.name || !form.default_issuer_name) {
ElMessage.warning("项目代码项目名称和发证单位必填");
if (!form.code || !form.name) {
ElMessage.warning("项目代码项目名称必填");
return;
}
if (editingId.value) {

View File

@@ -90,8 +90,6 @@
<dd>{{ item.issue_date }}</dd>
</div>
<div>
<dt>发证单位</dt>
<dd>{{ item.issuer_name }}</dd>
</div>
</dl>
@@ -132,7 +130,6 @@
<div class="preview-meta">
<span>证书编号{{ current.certificate_no }}</span>
<span>发证日期{{ current.issue_date }}</span>
<span>发证单位{{ current.issuer_name }}</span>
</div>
</div>
<template #footer>

View File

@@ -26,8 +26,6 @@
<dd>{{ certificate.issue_date }}</dd>
</div>
<div>
<dt>发证单位</dt>
<dd>{{ certificate.issuer_name }}</dd>
</div>
</dl>
<el-button v-if="certificate.can_download_pdf" type="primary" class="download" :loading="downloading" @click="downloadPdf">
@@ -67,7 +65,7 @@ async function loadCertificate() {
try {
const { data } = await http.get<PublicCertificate>(`/public/certificates/token/${token}`);
certificate.value = data;
message.value = data.status === "valid" ? "该证书真实有效。" : "该证书已作废,请联系发证单位核实。";
message.value = data.status === "valid" ? "该证书真实有效。" : "该证书已作废,请联系证书管理方核实。";
messageType.value = data.status === "valid" ? "success" : "warning";
} catch (error: any) {
message.value = error?.response?.data?.detail || "链接无效或已失效";

View File

@@ -11,7 +11,6 @@
<el-descriptions-item label="证书名称">{{ certificate.certificate_name }}</el-descriptions-item>
<el-descriptions-item label="课程时间">{{ coursePeriodText }}</el-descriptions-item>
<el-descriptions-item label="发证日期">{{ certificate.issue_date }}</el-descriptions-item>
<el-descriptions-item label="发证单位">{{ certificate.issuer_name }}</el-descriptions-item>
</el-descriptions>
</section>
</main>
@@ -39,7 +38,7 @@ async function loadCertificate() {
try {
const { data } = await http.get<PublicCertificate>(`/public/certificates/token/${token}`);
certificate.value = data;
message.value = data.status === "valid" ? "该证书真实有效。" : "该证书已作废,请联系发证单位核实。";
message.value = data.status === "valid" ? "该证书真实有效。" : "该证书已作废,请联系证书管理方核实。";
messageType.value = data.status === "valid" ? "success" : "warning";
} catch (error: any) {
message.value = error?.response?.data?.detail || "链接无效或已失效";