feat: 站点增加标签+简介字段+表单编辑双向同步
This commit is contained in:
@@ -19,6 +19,7 @@ public class SiteDTO {
|
||||
private String description;
|
||||
private String notes;
|
||||
private List<String> urls;
|
||||
private List<String> tags;
|
||||
private String iconUrl;
|
||||
private SiteType siteType;
|
||||
private String schemaVersion;
|
||||
|
||||
@@ -30,6 +30,9 @@ public class Site {
|
||||
@TableField("description")
|
||||
private String description;
|
||||
|
||||
@TableField("tags")
|
||||
private String tagsJson;
|
||||
|
||||
@TableField("notes")
|
||||
private String notes;
|
||||
|
||||
|
||||
@@ -43,8 +43,8 @@ public interface SiteService {
|
||||
/**
|
||||
* 管理员编辑站点基本信息
|
||||
*/
|
||||
Site updateSite(String siteId, List<String> names, List<String> urls, String description,
|
||||
String siteType, String status, Long operatorId);
|
||||
Site updateSite(String siteId, List<String> names, List<String> urls, List<String> tags,
|
||||
String description, String siteType, String status, Long operatorId);
|
||||
|
||||
/** 所有站点列表(管理员用) */
|
||||
List<Site> listAllSites();
|
||||
|
||||
@@ -83,6 +83,7 @@ public class SiteServiceImpl implements SiteService {
|
||||
dto.setDescription(site.getDescription());
|
||||
dto.setNotes(site.getNotes());
|
||||
dto.setUrls(fromJsonArray(site.getUrlsJson()));
|
||||
dto.setTags(fromJsonArray(site.getTagsJson()));
|
||||
dto.setIconUrl(site.getIconUrl());
|
||||
dto.setSiteType(site.getSiteType());
|
||||
dto.setSchemaVersion(site.getSchemaVersion());
|
||||
@@ -208,8 +209,8 @@ public class SiteServiceImpl implements SiteService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Site updateSite(String siteId, List<String> names, List<String> urls, String description,
|
||||
String siteType, String status, Long operatorId) {
|
||||
public Site updateSite(String siteId, List<String> names, List<String> urls, List<String> tags,
|
||||
String description, String siteType, String status, Long operatorId) {
|
||||
Site site = siteMapper.selectBySiteId(siteId);
|
||||
if (site == null) throw new IllegalArgumentException("站点不存在: " + siteId);
|
||||
|
||||
@@ -219,6 +220,9 @@ public class SiteServiceImpl implements SiteService {
|
||||
if (urls != null && !urls.isEmpty()) {
|
||||
site.setUrlsJson(toJsonArray(urls.stream().filter(u -> u != null && !u.isBlank()).toList()));
|
||||
}
|
||||
if (tags != null) {
|
||||
site.setTagsJson(toJsonArray(tags.stream().filter(t -> t != null && !t.isBlank()).toList()));
|
||||
}
|
||||
if (description != null) site.setDescription(description);
|
||||
if (siteType != null && !siteType.isBlank()) {
|
||||
try { site.setSiteType(SiteType.fromValue(siteType)); } catch (Exception ignored) {}
|
||||
|
||||
Reference in New Issue
Block a user