固定证书发证单位来源

This commit is contained in:
Certificate System
2026-08-13 15:41:50 +08:00
parent 9a26fef6f4
commit f72645225a
4 changed files with 15 additions and 10 deletions

View File

@@ -85,7 +85,7 @@ def create_certificate(
course_start_date=payload.course_start_date,
course_end_date=payload.course_end_date,
issue_date=payload.issue_date,
issuer_name=payload.issuer_name or project.default_issuer_name,
issuer_name=project.default_issuer_name,
remark=payload.remark,
)
db.add(certificate)

View File

@@ -13,7 +13,6 @@ class CertificateCreate(BaseModel):
course_start_date: date
course_end_date: date
issue_date: date
issuer_name: str = Field(min_length=1, max_length=128)
remark: str | None = None
@field_validator("project_code")

View File

@@ -84,5 +84,16 @@ def test_certificate_create_rejects_reversed_course_period():
course_start_date="2026-06-30",
course_end_date="2026-06-01",
issue_date="2026-07-05",
issuer_name="测试单位",
)
def test_certificate_create_uses_project_issuer_without_manual_input():
certificate = CertificateCreate(
learner_id=1,
project_code="DBY",
course_start_date="2026-06-01",
course_end_date="2026-06-30",
issue_date="2026-07-05",
)
assert "issuer_name" not in certificate.model_dump()

View File

@@ -35,9 +35,6 @@
<el-input v-model.trim="form.stage_name" placeholder="如:全部、初级、中级" />
<div class="form-tip">证书上将显示为{输入内容}课程的专业学习留空则默认显示初级课程的专业学习</div>
</el-form-item>
<el-form-item label="发证单位">
<el-input v-model.trim="form.issuer_name" />
</el-form-item>
<el-form-item label="备注">
<el-input v-model.trim="form.remark" />
</el-form-item>
@@ -174,7 +171,6 @@ const form = reactive({
course_start_date: "",
course_end_date: "",
issue_date: "",
issuer_name: "",
remark: "",
});
@@ -223,8 +219,8 @@ function handleSelectionChange(rows: AdminCertificate[]) {
}
async function createCertificate() {
if (!form.learner_id || !form.project_code || !form.course_start_date || !form.course_end_date || !form.issue_date || !form.issuer_name) {
ElMessage.warning("请填写学员ID、项目、课程起止日期发证日期和发证单位");
if (!form.learner_id || !form.project_code || !form.course_start_date || !form.course_end_date || !form.issue_date) {
ElMessage.warning("请填写学员ID、项目、课程起止日期发证日期");
return;
}
if (form.course_end_date < form.course_start_date) {
@@ -239,7 +235,6 @@ async function createCertificate() {
course_start_date: form.course_start_date,
course_end_date: form.course_end_date,
issue_date: form.issue_date,
issuer_name: form.issuer_name,
remark: form.remark || null,
});
ElMessage.success("证书已创建");