ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
@@ -23,7 +23,7 @@ /** * 用户对象 sys_user * * * @author ruoyi */ @@ -73,11 +73,11 @@ /** 用户头像 */ private String avatar; /** 密码 */ @JsonProperty /** 密码 */ private String password; @JsonIgnore @JsonProperty public String getPassword() { return password; } ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java
@@ -513,7 +513,10 @@ } else if (ColumnType.NUMERIC == attr.cellType()) { cell.setCellValue(StrUtil.contains(Convert.toStr(value), ".") ? Convert.toDouble(value) : Convert.toInt(value)); if (Validator.isNotNull(value)) { cell.setCellValue(StrUtil.contains(Convert.toStr(value), ".") ? Convert.toDouble(value) : Convert.toInt(value)); } } else if (ColumnType.IMAGE == attr.cellType()) { ruoyi-framework/src/main/java/com/ruoyi/framework/mybatisplus/CreateAndUpdateMetaObjectHandler.java
@@ -7,49 +7,39 @@ import java.util.Date; /** * @author woo * @date 2021/3/11 * MP注入处理器 * @author Lion Li * @date 2021/4/25 */ public class CreateAndUpdateMetaObjectHandler implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { //region 处理创建人信息 Object createBy = this.getFieldValByName("createBy", metaObject); Object createTime = this.getFieldValByName("createTime", metaObject); if (createBy == null) { createBy = SecurityUtils.getUsername(); this.setFieldValByName("createBy", createBy, metaObject); //根据属性名字设置要填充的值 if (metaObject.hasGetter("createTime")) { if (metaObject.getValue("createTime") == null) { this.setFieldValByName("createTime", new Date(), metaObject); } } if (createTime == null) { createTime = new Date(); this.setFieldValByName("createTime", createTime, metaObject); if (metaObject.hasGetter("createBy")) { if (metaObject.getValue("createBy") == null) { this.setFieldValByName("createBy", SecurityUtils.getUsername(), metaObject); } } //endregion } @Override public void updateFill(MetaObject metaObject) { //region 处理修改人信息 Object updateBy = this.getFieldValByName("updateBy", metaObject); Object updateTime = this.getFieldValByName("updateTime", metaObject); if (updateBy == null) { updateBy = SecurityUtils.getUsername(); this.setFieldValByName("updateBy", updateBy, metaObject); if (metaObject.hasGetter("updateBy")) { if (metaObject.getValue("updateBy") == null) { this.setFieldValByName("updateBy", SecurityUtils.getUsername(), metaObject); } } if (updateTime == null) { updateTime = new Date(); this.setFieldValByName("updateTime", updateTime, metaObject); if (metaObject.hasGetter("updateTime")) { if (metaObject.getValue("updateTime") == null) { this.setFieldValByName("updateTime", new Date(), metaObject); } } //endregion } @Override public boolean openInsertFill() { return true; } @Override public boolean openUpdateFill() { return true; } } ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
@@ -25,7 +25,7 @@ /** * 菜单 业务层处理 * * * @author ruoyi */ @Service @@ -142,6 +142,7 @@ router.setRedirect("noRedirect"); router.setChildren(buildMenus(cMenus)); } else if (isMenuFrame(menu)) { router.setMeta(null); List<RouterVo> childrenList = new ArrayList<RouterVo>(); RouterVo children = new RouterVo(); children.setPath(menu.getPath()); ruoyi-ui/src/components/TopNav/index.vue
@@ -73,7 +73,9 @@ if(router.path === "/") { router.children[item].path = "/redirect/" + router.children[item].path; } else { router.children[item].path = router.path + "/" + router.children[item].path; if(!this.ishttp(router.children[item].path)) { router.children[item].path = router.path + "/" + router.children[item].path; } } router.children[item].parentPath = router.path; } @@ -122,7 +124,7 @@ // 菜单选择事件 handleSelect(key, keyPath) { this.currentIndex = key; if (key.indexOf("http://") !== -1 || key.indexOf("https://") !== -1) { if (this.ishttp(key)) { // http(s):// 路径新窗口打开 window.open(key, "_blank"); } else if (key.indexOf("/redirect") !== -1) { @@ -147,6 +149,9 @@ this.$store.commit("SET_SIDEBAR_ROUTERS", routes); } return routes; }, ishttp(url) { return url.indexOf('http://') !== -1 || url.indexOf('https://') !== -1 } }, };