From 567c8b77864b816f6f8c6edfb340dd578a5c3392 Mon Sep 17 00:00:00 2001 From: chenxing Date: Fri, 28 Aug 2026 10:28:28 +0800 Subject: [PATCH] =?UTF-8?q?logo,=E5=A3=81=E7=BA=B8=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yunhai/userhome/entity/Logo.java | 48 +++++++++++++++++++ .../userhome/repository/LogoRepository.java | 15 ++++++ 2 files changed, 63 insertions(+) create mode 100644 src/main/java/com/yunhai/userhome/entity/Logo.java create mode 100644 src/main/java/com/yunhai/userhome/repository/LogoRepository.java diff --git a/src/main/java/com/yunhai/userhome/entity/Logo.java b/src/main/java/com/yunhai/userhome/entity/Logo.java new file mode 100644 index 0000000..e627c6d --- /dev/null +++ b/src/main/java/com/yunhai/userhome/entity/Logo.java @@ -0,0 +1,48 @@ +package com.yunhai.userhome.entity; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; +import javax.persistence.Transient; +import javax.persistence.UniqueConstraint; +import javax.validation.constraints.NotNull; + +/** + * Logo 实体(镜像 Wallpaper 模式:超管设置系统默认,学校设置自身)。 + *

type:0 系统默认(schId=0) | 1 学校(schId=学校ID);一校一行,type+sch_id 唯一。

+ */ +@AllArgsConstructor +@NoArgsConstructor +@Data +@Entity +@Table(name = "logo", uniqueConstraints = {@UniqueConstraint(columnNames = {"type", "sch_id"}, name = "uk_type_sch")}) +public class Logo { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @NotNull(groups = Update.class) + private Integer id; + + /** 0:系统默认 | 1:学校 */ + private Integer type; + + @Column(name = "sch_id") + private Integer schId; + + private Integer userId; + + @Column(name = "logo_url") + private String logoUrl; + + @Transient + private Boolean isEdit = false; + + public @interface Update {} +} diff --git a/src/main/java/com/yunhai/userhome/repository/LogoRepository.java b/src/main/java/com/yunhai/userhome/repository/LogoRepository.java new file mode 100644 index 0000000..1d89a0e --- /dev/null +++ b/src/main/java/com/yunhai/userhome/repository/LogoRepository.java @@ -0,0 +1,15 @@ +package com.yunhai.userhome.repository; + +import com.yunhai.userhome.entity.Logo; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.JpaSpecificationExecutor; + +import java.util.List; +import java.util.Optional; + +public interface LogoRepository extends JpaRepository, JpaSpecificationExecutor { + + List findBySchIdAndType(Integer schId, Integer type); + + Optional findByTypeAndSchId(Integer type, Integer schId); +}