diff --git a/src/main/java/com/corewing/app/entity/SysOption.java b/src/main/java/com/corewing/app/entity/SysOption.java new file mode 100644 index 0000000..7c3b701 --- /dev/null +++ b/src/main/java/com/corewing/app/entity/SysOption.java @@ -0,0 +1,31 @@ +package com.corewing.app.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.corewing.app.common.base.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(callSuper = true) +@Data +@TableName("sys_option") +public class SysOption extends BaseEntity { + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + /** + * 键名 + */ + private String key; + + /** + * 键值 + */ + private String value; + +} diff --git a/src/main/java/com/corewing/app/mapper/SysOptionMapper.java b/src/main/java/com/corewing/app/mapper/SysOptionMapper.java new file mode 100644 index 0000000..f7fba91 --- /dev/null +++ b/src/main/java/com/corewing/app/mapper/SysOptionMapper.java @@ -0,0 +1,9 @@ +package com.corewing.app.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.corewing.app.entity.SysOption; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface SysOptionMapper extends BaseMapper { +} diff --git a/src/main/java/com/corewing/app/modules/admin/sys/SysSettingController.java b/src/main/java/com/corewing/app/modules/admin/sys/SysSettingController.java new file mode 100644 index 0000000..5f69800 --- /dev/null +++ b/src/main/java/com/corewing/app/modules/admin/sys/SysSettingController.java @@ -0,0 +1,19 @@ +package com.corewing.app.modules.admin.sys; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +/** + * 系统设置 + */ +@Controller +@RequestMapping("/sys/setting") +public class SysSettingController { + + @GetMapping + public String index() { + return "admin/sys/setting"; + } + +} diff --git a/src/main/java/com/corewing/app/modules/directive/SysOptionDirective.java b/src/main/java/com/corewing/app/modules/directive/SysOptionDirective.java new file mode 100644 index 0000000..cc7bcf9 --- /dev/null +++ b/src/main/java/com/corewing/app/modules/directive/SysOptionDirective.java @@ -0,0 +1,18 @@ +package com.corewing.app.modules.directive; + +import com.corewing.app.service.SysOptionService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service("option") +public class SysOptionDirective { + + @Resource + private SysOptionService sysOptionService; + + public String getValue(String key) { + return sysOptionService.getValueByKey(key); + } + +} diff --git a/src/main/java/com/corewing/app/service/SysOptionService.java b/src/main/java/com/corewing/app/service/SysOptionService.java new file mode 100644 index 0000000..b51fa49 --- /dev/null +++ b/src/main/java/com/corewing/app/service/SysOptionService.java @@ -0,0 +1,10 @@ +package com.corewing.app.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.corewing.app.entity.SysOption; + +public interface SysOptionService extends IService { + + String getValueByKey(String key); + +} diff --git a/src/main/java/com/corewing/app/service/impl/SysOptionServiceImpl.java b/src/main/java/com/corewing/app/service/impl/SysOptionServiceImpl.java new file mode 100644 index 0000000..a577d5b --- /dev/null +++ b/src/main/java/com/corewing/app/service/impl/SysOptionServiceImpl.java @@ -0,0 +1,19 @@ +package com.corewing.app.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.corewing.app.entity.SysOption; +import com.corewing.app.mapper.SysOptionMapper; +import com.corewing.app.service.SysOptionService; +import org.springframework.stereotype.Service; + +@Service +public class SysOptionServiceImpl extends ServiceImpl implements SysOptionService { + + @Override + public String getValueByKey(String key) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(SysOption::getKey, key); + return getOne(queryWrapper).getValue(); + } +} diff --git a/src/main/resources/templates/admin/sys/setting.html b/src/main/resources/templates/admin/sys/setting.html new file mode 100644 index 0000000..00aa91f --- /dev/null +++ b/src/main/resources/templates/admin/sys/setting.html @@ -0,0 +1,669 @@ + + + + + + 系统设置 + + + + + + + +
+ +
+ + + +
+ +
+
+

个人资料

+ +
+ 用户头像 +
+ +

支持 JPG、PNG 格式,建议尺寸 200x200px

+
+
+ +
+
+
+ + +
+
+
+
+ + +
用户名用于登录,不可修改
+
+
+
+ +
+
+
+ + +
用于接收系统通知和密码重置
+
+
+
+
+ + +
+
+
+ +
+ + +
+
+ +
+ + +
+
+ + +
+
+

密码管理

+ +
+ + +
+ +
+ + +
密码长度至少8位,包含字母和数字
+
+ +
+ + +
+
+ +
+

登录安全

+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ + + + + + + + + + + + + + + + + + +
时间IP地址设备状态
{{ log.time }}{{ log.ip }}{{ log.device }}正常
+
+
+ +
+ + +
+
+ + +
+
+

通知方式

+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+ +
+

通知类型

+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+ +
+ + +
+
+ + +
+
+

语言设置

+ +
+ +
+
+ + +
+
+ + +
+
+ + +
+
+
+ +
+
+ +
+
+
+ +
+

主题设置

+ +
+ +
+
+ + +
+
+ + +
+
+ + +
+
+
+
+ +
+

时间与日期

+ +
+ + +
+ +
+ + +
+
+ +
+ + +
+
+
+
+ + +
+ +
+
+ + + + + + + + + + + +