平台的登录背景图可以自行设置,动态更换。
基本原理如下:
1、用户敲登录地址后,页面向后台发起请求。
2、后台根据页面传递的参数,首先是设备类型,平台支持电脑、手机、平板,登录图片规格是不一样的。其次根据当前日期,主要是对节日的判断,如春节前后要有春节主体。再次是人工的设定,如设置的优先顺序、是否启用等。后台将图片地址传递给前端。
3、图片是存在minio的公共空间内(无需登录验证的)。
4、前端显示对应图片。
5、平台的设置功能可以对图片进行设置。
最核心的是背景设置实体类:
package org.qlm.scheme.entity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.hibernate.annotations.GenericGenerator; import org.qlm.base.BaseTable; import javax.persistence.*; @Data @AllArgsConstructor @NoArgsConstructor @Entity @Table(name = "SCHEME_LOGBKG_SET") public class LoginBKGSetBO extends BaseTable { @Id @GeneratedValue(generator="system-uuid") @GenericGenerator(name="system-uuid", strategy = "uuid.hex") @Column(name = "ITEM_ID") // 主键 private String itemID; @Column(name = "ITEM_NAME",length =200 ) // 配置名称 private String itemName; @Column(name = "BEGIN_DATE",length =40) // 适合开始时间 格式可以是yyyy-MM-dd 也可以是MM-dd private String beginDate; @Column(name = "END_DATE",length =40 ) // 适合开始时间 格式可以是yyyy-MM-dd 也可以是MM-dd private String endDate; @Column(name = "IMG_TOP",length =100 ) // 顶部图片 private String topsrc; @Column(name = "IMG_CENTER",length =100 ) // 中间图片 private String centersrc; @Column(name = "IMG_BOTTOM",length =100 ) // 底部图片 private String bottomsrc; @Column(name="suit_type",length = 100) // 适合设备 pc mobile pad private String suitType; @Column(name="seq",length = 100) // 排序 private String seq; @Column(name="is_use",length = 100) // 0 禁用 1 启用 private String isuse; }