diff --git a/backend/app/dto/request/website_ssl.go b/backend/app/dto/request/website_ssl.go index e605bff86..bde9da7b5 100644 --- a/backend/app/dto/request/website_ssl.go +++ b/backend/app/dto/request/website_ssl.go @@ -77,6 +77,7 @@ type WebsiteSSLUpload struct { CertificatePath string `json:"certificatePath"` Type string `json:"type" validate:"required,oneof=paste local"` SSLID uint `json:"sslID"` + Description string `json:"description"` } type WebsiteCASearch struct { @@ -95,16 +96,17 @@ type WebsiteCACreate struct { } type WebsiteCAObtain struct { - ID uint `json:"id" validate:"required"` - Domains string `json:"domains" validate:"required"` - KeyType string `json:"keyType" validate:"required,oneof=P256 P384 2048 3072 4096 8192"` - Time int `json:"time" validate:"required"` - Unit string `json:"unit" validate:"required"` - PushDir bool `json:"pushDir"` - Dir string `json:"dir"` - AutoRenew bool `json:"autoRenew"` - Renew bool `json:"renew"` - SSLID uint `json:"sslID"` + ID uint `json:"id" validate:"required"` + Domains string `json:"domains" validate:"required"` + KeyType string `json:"keyType" validate:"required,oneof=P256 P384 2048 3072 4096 8192"` + Time int `json:"time" validate:"required"` + Unit string `json:"unit" validate:"required"` + PushDir bool `json:"pushDir"` + Dir string `json:"dir"` + AutoRenew bool `json:"autoRenew"` + Renew bool `json:"renew"` + SSLID uint `json:"sslID"` + Description string `json:"description"` } type WebsiteCARenew struct { diff --git a/backend/app/service/website_ca.go b/backend/app/service/website_ca.go index d72b5d447..4e56446a7 100644 --- a/backend/app/service/website_ca.go +++ b/backend/app/service/website_ca.go @@ -213,11 +213,12 @@ func (w WebsiteCAService) ObtainSSL(req request.WebsiteCAObtain) (*model.Website return nil, err } websiteSSL = &model.WebsiteSSL{ - Provider: constant.SelfSigned, - KeyType: req.KeyType, - PushDir: req.PushDir, - CaID: ca.ID, - AutoRenew: req.AutoRenew, + Provider: constant.SelfSigned, + KeyType: req.KeyType, + PushDir: req.PushDir, + CaID: ca.ID, + AutoRenew: req.AutoRenew, + Description: req.Description, } if req.PushDir { if !files.NewFileOp().Stat(req.Dir) { diff --git a/backend/app/service/website_ssl.go b/backend/app/service/website_ssl.go index 4cddcec2d..31fd16a0b 100644 --- a/backend/app/service/website_ssl.go +++ b/backend/app/service/website_ssl.go @@ -376,7 +376,8 @@ func (w WebsiteSSLService) Update(update request.WebsiteSSLUpdate) error { func (w WebsiteSSLService) Upload(req request.WebsiteSSLUpload) error { websiteSSL := &model.WebsiteSSL{ - Provider: constant.Manual, + Provider: constant.Manual, + Description: req.Description, } var err error if req.SSLID > 0 { @@ -384,6 +385,7 @@ func (w WebsiteSSLService) Upload(req request.WebsiteSSLUpload) error { if err != nil { return err } + websiteSSL.Description = req.Description } if req.Type == "local" { fileOp := files.NewFileOp() diff --git a/backend/init/migration/migrations/v_1_9.go b/backend/init/migration/migrations/v_1_9.go index 53c898ad3..ace59f6b3 100644 --- a/backend/init/migration/migrations/v_1_9.go +++ b/backend/init/migration/migrations/v_1_9.go @@ -19,7 +19,7 @@ var UpdateAcmeAccount = &gormigrate.Migration{ } var AddWebsiteCA = &gormigrate.Migration{ - ID: "20231125-add-website-ca", + ID: "20231130-add-website-ca", Migrate: func(tx *gorm.DB) error { if err := tx.AutoMigrate(&model.WebsiteCA{}); err != nil { return err @@ -59,7 +59,7 @@ var AddDatabaseSSL = &gormigrate.Migration{ } var AddDefaultCA = &gormigrate.Migration{ - ID: "20231129-add-default-ca", + ID: "20231130-add-default-ca", Migrate: func(tx *gorm.DB) error { caService := service.NewIWebsiteCAService() if _, err := caService.Create(request.WebsiteCACreate{ diff --git a/frontend/src/api/interface/website.ts b/frontend/src/api/interface/website.ts index bf9e9247f..8e1f08d11 100644 --- a/frontend/src/api/interface/website.ts +++ b/frontend/src/api/interface/website.ts @@ -497,6 +497,7 @@ export namespace Website { unit: string; pushDir: boolean; dir: string; + description: string; } export interface RenewSSLByCA { diff --git a/frontend/src/views/website/ssl/ca/detail/index.vue b/frontend/src/views/website/ssl/ca/detail/index.vue index 6a7f5aa6d..903c02400 100644 --- a/frontend/src/views/website/ssl/ca/detail/index.vue +++ b/frontend/src/views/website/ssl/ca/detail/index.vue @@ -5,7 +5,7 @@