平台的登录背景图可以自行设置,动态更换。
基本原理如下:
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;
}