refactor(framework): 优化Bean拷贝工具类并更新相关实体类结构
This commit is contained in:
+2
-1
@@ -19,6 +19,7 @@ import cn.odboy.base.KitPageArgs;
|
||||
import cn.odboy.base.KitPageResult;
|
||||
import cn.odboy.system.dal.dataobject.SystemDeptTb;
|
||||
import cn.odboy.system.dal.model.SystemCreateDeptArgs;
|
||||
import cn.odboy.system.dal.model.SystemDeptVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryDeptArgs;
|
||||
import cn.odboy.system.framework.operalog.OperationLog;
|
||||
import cn.odboy.system.service.SystemDeptService;
|
||||
@@ -67,7 +68,7 @@ public class SystemDeptController {
|
||||
@ApiOperation("查询部门:根据ID获取同级与上级数据")
|
||||
@PostMapping("/searchDeptTree")
|
||||
@PreAuthorize("@el.check('user:list','dept:list')")
|
||||
public ResponseEntity<KitPageResult<SystemDeptTb>> queryDeptSuperiorTree(@RequestBody List<Long> ids,
|
||||
public ResponseEntity<KitPageResult<SystemDeptVo>> queryDeptSuperiorTree(@RequestBody List<Long> ids,
|
||||
@RequestParam(defaultValue = "false") Boolean exclude) {
|
||||
return ResponseEntity.ok(systemDeptService.searchDeptTree(ids, exclude));
|
||||
}
|
||||
|
||||
+6
-5
@@ -19,6 +19,7 @@ import cn.odboy.base.KitPageArgs;
|
||||
import cn.odboy.base.KitPageResult;
|
||||
import cn.odboy.framework.exception.BadRequestException;
|
||||
import cn.odboy.system.dal.dataobject.SystemMenuTb;
|
||||
import cn.odboy.system.dal.model.SystemMenuRouterVo;
|
||||
import cn.odboy.system.dal.model.SystemMenuVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryMenuArgs;
|
||||
import cn.odboy.system.framework.operalog.OperationLog;
|
||||
@@ -58,9 +59,9 @@ public class SystemMenuController {
|
||||
|
||||
@PostMapping(value = "/buildMenus")
|
||||
@ApiOperation("获取前端所需菜单")
|
||||
public ResponseEntity<List<SystemMenuVo>> buildMenus() {
|
||||
List<SystemMenuVo> systemMenuVos = systemMenuService.buildFrontMenus();
|
||||
return ResponseEntity.ok(systemMenuVos);
|
||||
public ResponseEntity<List<SystemMenuRouterVo>> buildMenus() {
|
||||
List<SystemMenuRouterVo> systemMenuRouterVos = systemMenuService.buildFrontMenus();
|
||||
return ResponseEntity.ok(systemMenuRouterVos);
|
||||
}
|
||||
|
||||
@ApiOperation("返回全部的菜单")
|
||||
@@ -91,8 +92,8 @@ public class SystemMenuController {
|
||||
@ApiOperation("查询菜单:根据ID获取同级与上级数据")
|
||||
@PostMapping("/queryMenuSuperior")
|
||||
@PreAuthorize("@el.check('menu:list')")
|
||||
public ResponseEntity<List<SystemMenuTb>> queryMenuSuperior(@RequestBody List<Long> ids) {
|
||||
List<SystemMenuTb> systemMenuTbs = systemMenuService.listMenuSuperior(ids);
|
||||
public ResponseEntity<List<SystemMenuVo>> queryMenuSuperior(@RequestBody List<Long> ids) {
|
||||
List<SystemMenuVo> systemMenuTbs = systemMenuService.listMenuSuperior(ids);
|
||||
return ResponseEntity.ok(systemMenuTbs);
|
||||
}
|
||||
|
||||
|
||||
-11
@@ -16,15 +16,11 @@
|
||||
package cn.odboy.system.dal.dataobject;
|
||||
|
||||
import cn.odboy.base.KitBaseUserTimeTb;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Getter;
|
||||
@@ -39,13 +35,6 @@ public class SystemDeptTb extends KitBaseUserTimeTb {
|
||||
@TableId(value = "dept_id", type = IdType.AUTO)
|
||||
@ApiModelProperty(value = "ID", hidden = true)
|
||||
private Long id;
|
||||
@TableField(exist = false)
|
||||
@JSONField(serialize = false)
|
||||
@ApiModelProperty(value = "角色")
|
||||
private Set<SystemRoleTb> roles;
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "子部门")
|
||||
private List<SystemDeptTb> children;
|
||||
@ApiModelProperty(value = "排序")
|
||||
private Integer deptSort;
|
||||
@NotBlank
|
||||
|
||||
+2
-3
@@ -15,9 +15,8 @@
|
||||
*/
|
||||
package cn.odboy.system.dal.dataobject;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.bean.copier.CopyOptions;
|
||||
import cn.odboy.base.KitBaseUserTimeTb;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
@@ -49,6 +48,6 @@ public class SystemLocalStorageTb extends KitBaseUserTimeTb {
|
||||
private String dateGroup;
|
||||
|
||||
public void copy(SystemLocalStorageTb source) {
|
||||
BeanUtil.copyProperties(source, this, CopyOptions.create().setIgnoreNullValue(true));
|
||||
KitBeanUtil.copyToTarget(source, this);
|
||||
}
|
||||
}
|
||||
-9
@@ -16,15 +16,12 @@
|
||||
package cn.odboy.system.dal.dataobject;
|
||||
|
||||
import cn.odboy.base.KitBaseUserTimeTb;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
@@ -38,12 +35,6 @@ public class SystemMenuTb extends KitBaseUserTimeTb {
|
||||
@TableId(value = "menu_id", type = IdType.AUTO)
|
||||
@ApiModelProperty(value = "ID", hidden = true)
|
||||
private Long id;
|
||||
@TableField(exist = false)
|
||||
@JSONField(serialize = false)
|
||||
@ApiModelProperty(value = "菜单角色")
|
||||
private Set<SystemRoleTb> roles;
|
||||
@TableField(exist = false)
|
||||
private List<SystemMenuTb> children;
|
||||
@ApiModelProperty(value = "菜单标题")
|
||||
private String title;
|
||||
@TableField(value = "name")
|
||||
|
||||
-3
@@ -36,9 +36,6 @@ public class SystemQuartzJobTb extends KitBaseUserTimeTb {
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
@NotNull(groups = {Update.class})
|
||||
private Long id;
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "用于子任务唯一标识", hidden = true)
|
||||
private String uuid;
|
||||
@ApiModelProperty(value = "定时器名称")
|
||||
private String jobName;
|
||||
@NotBlank
|
||||
|
||||
+1
-2
@@ -45,8 +45,7 @@ public class SystemRoleTb extends KitBaseUserTimeTb {
|
||||
@ApiModelProperty(value = "名称", hidden = true)
|
||||
private String name;
|
||||
@ApiModelProperty(value = "数据权限,全部 、 本级 、 自定义")
|
||||
private String dataScope =
|
||||
SystemDataScopeEnum.THIS_LEVEL.getValue();
|
||||
private String dataScope = SystemDataScopeEnum.THIS_LEVEL.getValue();
|
||||
@ApiModelProperty(value = "级别,数值越小,级别越大")
|
||||
private Integer level = 3;
|
||||
@ApiModelProperty(value = "描述")
|
||||
|
||||
-3
@@ -41,9 +41,6 @@ public class SystemUserTb extends KitBaseUserTimeTb {
|
||||
@TableField(value = "dept_id")
|
||||
@ApiModelProperty(hidden = true)
|
||||
private Long deptId;
|
||||
@ApiModelProperty(value = "用户部门")
|
||||
@TableField(exist = false)
|
||||
private SystemDeptTb dept;
|
||||
@NotBlank
|
||||
@ApiModelProperty(value = "用户名称")
|
||||
private String username;
|
||||
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
package cn.odboy.system.dal.model;
|
||||
|
||||
import cn.odboy.system.dal.dataobject.SystemDeptTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemRoleTb;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class SystemDeptVo extends SystemDeptTb {
|
||||
|
||||
@ApiModelProperty(value = "角色")
|
||||
private Set<SystemRoleTb> roles;
|
||||
@ApiModelProperty(value = "子部门")
|
||||
private List<SystemDeptVo> children;
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Copyright 2021-2025 Odboy
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package cn.odboy.system.dal.model;
|
||||
|
||||
import cn.odboy.base.KitObject;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.util.List;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 构建前端路由时用到
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class SystemMenuRouterVo extends KitObject {
|
||||
|
||||
@ApiModelProperty(value = "菜单名称")
|
||||
private String name;
|
||||
@ApiModelProperty(value = "路径")
|
||||
private String path;
|
||||
@ApiModelProperty(value = "隐藏状态")
|
||||
private Boolean hidden;
|
||||
@ApiModelProperty(value = "重定向")
|
||||
private String redirect;
|
||||
@ApiModelProperty(value = "组件")
|
||||
private String component;
|
||||
@ApiModelProperty(value = "总是显示")
|
||||
private Boolean alwaysShow;
|
||||
@ApiModelProperty(value = "元数据")
|
||||
private SystemMenuMetaVo meta;
|
||||
@ApiModelProperty(value = "子路由")
|
||||
private List<SystemMenuRouterVo> children;
|
||||
}
|
||||
+11
-39
@@ -1,47 +1,19 @@
|
||||
/*
|
||||
* Copyright 2021-2025 Odboy
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package cn.odboy.system.dal.model;
|
||||
|
||||
import cn.odboy.base.KitObject;
|
||||
import cn.odboy.system.dal.dataobject.SystemMenuTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemRoleTb;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.util.List;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import java.util.Set;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* 构建前端路由时用到
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class SystemMenuVo extends KitObject {
|
||||
@Getter
|
||||
@Setter
|
||||
public class SystemMenuVo extends SystemMenuTb {
|
||||
|
||||
@ApiModelProperty(value = "菜单名称")
|
||||
private String name;
|
||||
@ApiModelProperty(value = "路径")
|
||||
private String path;
|
||||
@ApiModelProperty(value = "隐藏状态")
|
||||
private Boolean hidden;
|
||||
@ApiModelProperty(value = "重定向")
|
||||
private String redirect;
|
||||
@ApiModelProperty(value = "组件")
|
||||
private String component;
|
||||
@ApiModelProperty(value = "总是显示")
|
||||
private Boolean alwaysShow;
|
||||
@ApiModelProperty(value = "元数据")
|
||||
private SystemMenuMetaVo meta;
|
||||
@ApiModelProperty(value = "子路由")
|
||||
@ApiModelProperty(value = "菜单角色")
|
||||
private Set<SystemRoleTb> roles;
|
||||
@ApiModelProperty(value = "子菜单")
|
||||
private List<SystemMenuVo> children;
|
||||
}
|
||||
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
package cn.odboy.system.dal.model;
|
||||
|
||||
import cn.odboy.system.dal.dataobject.SystemQuartzJobTb;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class SystemQuartzJobVo extends SystemQuartzJobTb {
|
||||
|
||||
@ApiModelProperty(value = "用于子任务唯一标识", hidden = true)
|
||||
private String uuid;
|
||||
}
|
||||
+3
-1
@@ -1,5 +1,6 @@
|
||||
package cn.odboy.system.dal.model;
|
||||
|
||||
import cn.odboy.system.dal.dataobject.SystemDeptTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemJobTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemRoleTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemUserTb;
|
||||
@@ -11,7 +12,8 @@ import lombok.Setter;
|
||||
@Getter
|
||||
@Setter
|
||||
public class SystemUserVo extends SystemUserTb {
|
||||
|
||||
@ApiModelProperty(value = "用户部门")
|
||||
private SystemDeptTb dept;
|
||||
@ApiModelProperty(value = "用户角色")
|
||||
private Set<SystemRoleTb> roles;
|
||||
@ApiModelProperty(value = "用户岗位")
|
||||
|
||||
+5
@@ -16,6 +16,8 @@
|
||||
package cn.odboy.system.dal.mysql;
|
||||
|
||||
import cn.odboy.system.dal.dataobject.SystemQuartzJobTb;
|
||||
import cn.odboy.system.dal.model.SystemQuartzJobVo;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@@ -27,4 +29,7 @@ import org.apache.ibatis.annotations.Mapper;
|
||||
@Mapper
|
||||
public interface SystemQuartzJobMapper extends BaseMapper<SystemQuartzJobTb> {
|
||||
|
||||
default SystemQuartzJobVo selectVoById(String id) {
|
||||
return KitBeanUtil.copyToClass(selectById(id), SystemQuartzJobVo.class);
|
||||
}
|
||||
}
|
||||
|
||||
+25
-29
@@ -1,6 +1,5 @@
|
||||
package cn.odboy.system.dal.redis;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.odboy.base.KitPageResult;
|
||||
import cn.odboy.framework.properties.AppProperties;
|
||||
@@ -8,20 +7,17 @@ import cn.odboy.framework.redis.KitRedisHelper;
|
||||
import cn.odboy.system.dal.model.SystemUserJwtVo;
|
||||
import cn.odboy.system.dal.model.SystemUserOnlineVo;
|
||||
import cn.odboy.system.framework.permission.core.handler.TokenProvider;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitBrowserUtil;
|
||||
import cn.odboy.util.KitDesEncryptUtil;
|
||||
import cn.odboy.util.KitFileUtil;
|
||||
import cn.odboy.util.KitIPUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
import cn.odboy.util.xlsx.KitExcelExporter;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
@@ -81,28 +77,28 @@ public class SystemUserOnlineInfoDAO {
|
||||
redisHelper.del(loginKey);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出
|
||||
*
|
||||
* @param all /
|
||||
* @param response /
|
||||
* @throws IOException /
|
||||
*/
|
||||
public void downloadUserOnlineModelExcel(List<SystemUserOnlineVo> all, HttpServletResponse response)
|
||||
throws IOException {
|
||||
List<Map<String, Object>> list = new ArrayList<>();
|
||||
for (SystemUserOnlineVo user : all) {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
map.put("用户名", user.getUserName());
|
||||
map.put("部门", user.getDept());
|
||||
map.put("登录IP", user.getIp());
|
||||
map.put("登录地点", user.getAddress());
|
||||
map.put("浏览器", user.getBrowser());
|
||||
map.put("登录日期", user.getLoginTime());
|
||||
list.add(map);
|
||||
}
|
||||
KitFileUtil.downloadExcel(list, response);
|
||||
}
|
||||
// /**
|
||||
// * 导出
|
||||
// *
|
||||
// * @param all /
|
||||
// * @param response /
|
||||
// * @throws IOException /
|
||||
// */
|
||||
// public void downloadUserOnlineModelExcel(List<SystemUserOnlineVo> all, HttpServletResponse response)
|
||||
// throws IOException {
|
||||
// List<Map<String, Object>> list = new ArrayList<>();
|
||||
// for (SystemUserOnlineVo user : all) {
|
||||
// Map<String, Object> map = new LinkedHashMap<>();
|
||||
// map.put("用户名", user.getUserName());
|
||||
// map.put("部门", user.getDept());
|
||||
// map.put("登录IP", user.getIp());
|
||||
// map.put("登录地点", user.getAddress());
|
||||
// map.put("浏览器", user.getBrowser());
|
||||
// map.put("登录日期", user.getLoginTime());
|
||||
// list.add(map);
|
||||
// }
|
||||
// KitFileUtil.downloadExcel(list, response);
|
||||
// }
|
||||
|
||||
/**
|
||||
* 根据用户名强退用户
|
||||
@@ -172,8 +168,8 @@ public class SystemUserOnlineInfoDAO {
|
||||
public void exportOnlineUserXlsx(HttpServletResponse response, String username) {
|
||||
List<SystemUserOnlineVo> userOnlineVos = this.queryUserOnlineModelListByUsername(username);
|
||||
// KitXlsxExportUtil.exportFile(response, "在线用户数据", userOnlineVos, SystemUserOnlineExportRowVo.class,
|
||||
// (dataObject) -> CollUtil.newArrayList(BeanUtil.copyProperties(dataObject, SystemUserOnlineExportRowVo.class)));
|
||||
List<SystemUserOnlineVo> rowVos = BeanUtil.copyToList(userOnlineVos, SystemUserOnlineVo.class);
|
||||
// (dataObject) -> CollUtil.newArrayList(KitBeanUtil.copyProperties(dataObject, SystemUserOnlineExportRowVo.class)));
|
||||
List<SystemUserOnlineVo> rowVos = KitBeanUtil.copyToList(userOnlineVos, SystemUserOnlineVo.class);
|
||||
KitExcelExporter.exportSimple(response, "在线用户数据", SystemUserOnlineVo.class, rowVos);
|
||||
}
|
||||
}
|
||||
|
||||
+4
-8
@@ -13,7 +13,6 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package cn.odboy.system.framework.quartz;
|
||||
|
||||
import cn.hutool.core.exceptions.ExceptionUtil;
|
||||
@@ -27,6 +26,7 @@ import cn.odboy.framework.quartz.core.QuartzRunnable;
|
||||
import cn.odboy.framework.redis.KitRedisHelper;
|
||||
import cn.odboy.system.dal.dataobject.SystemQuartzJobTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemQuartzLogTb;
|
||||
import cn.odboy.system.dal.model.SystemQuartzJobVo;
|
||||
import cn.odboy.system.dal.model.SystemSendEmailArgs;
|
||||
import cn.odboy.system.dal.mysql.SystemQuartzLogMapper;
|
||||
import cn.odboy.system.service.SystemEmailService;
|
||||
@@ -52,14 +52,12 @@ public class ExecutionJobBean extends QuartzJobBean {
|
||||
@Override
|
||||
public void executeInternal(JobExecutionContext context) {
|
||||
// 获取任务
|
||||
SystemQuartzJobTb quartzJob = (SystemQuartzJobTb) context.getMergedJobDataMap().get(SystemQuartzJobTb.JOB_KEY);
|
||||
SystemQuartzJobVo quartzJob = (SystemQuartzJobVo) context.getMergedJobDataMap().get(SystemQuartzJobTb.JOB_KEY);
|
||||
// 获取spring bean
|
||||
SystemQuartzLogMapper quartzLogMapper = KitSpringBeanHolder.getBean(SystemQuartzLogMapper.class);
|
||||
SystemQuartzJobService systemQuartzJobService = KitSpringBeanHolder.getBean(SystemQuartzJobService.class);
|
||||
KitRedisHelper redisHelper = KitSpringBeanHolder.getBean(KitRedisHelper.class);
|
||||
|
||||
String uuid = quartzJob.getUuid();
|
||||
|
||||
SystemQuartzLogTb quartzLog = new SystemQuartzLogTb();
|
||||
quartzLog.setJobName(quartzJob.getJobName());
|
||||
quartzLog.setBeanName(quartzJob.getBeanName());
|
||||
@@ -69,8 +67,7 @@ public class ExecutionJobBean extends QuartzJobBean {
|
||||
quartzLog.setCronExpression(quartzJob.getCronExpression());
|
||||
try {
|
||||
// 执行任务
|
||||
QuartzRunnable task =
|
||||
new QuartzRunnable(quartzJob.getBeanName(), quartzJob.getMethodName(), quartzJob.getParams());
|
||||
QuartzRunnable task = new QuartzRunnable(quartzJob.getBeanName(), quartzJob.getMethodName(), quartzJob.getParams());
|
||||
Future<?> future = executor.submit(task);
|
||||
// 忽略任务执行结果
|
||||
future.get();
|
||||
@@ -123,8 +120,7 @@ public class ExecutionJobBean extends QuartzJobBean {
|
||||
Map<String, Object> data = new HashMap<>(16);
|
||||
data.put("task", quartzJob);
|
||||
data.put("msg", msg);
|
||||
TemplateEngine engine =
|
||||
TemplateUtil.createEngine(new TemplateConfig("template", TemplateConfig.ResourceMode.CLASSPATH));
|
||||
TemplateEngine engine = TemplateUtil.createEngine(new TemplateConfig("template", TemplateConfig.ResourceMode.CLASSPATH));
|
||||
Template template = engine.getTemplate("SystemQuartzJobTaskAlarmTemplate.ftl");
|
||||
sendEmailRequest.setContent(template.render(data));
|
||||
List<String> emails = Arrays.asList(quartzJob.getEmail().split("[,,]"));
|
||||
|
||||
+6
-7
@@ -1,6 +1,5 @@
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.odboy.constant.CaptchaCodeEnum;
|
||||
@@ -16,6 +15,7 @@ import cn.odboy.system.dal.redis.SystemUserOnlineInfoDAO;
|
||||
import cn.odboy.system.framework.permission.core.KitSecurityHelper;
|
||||
import cn.odboy.system.framework.permission.core.handler.TokenProvider;
|
||||
import cn.odboy.system.framework.permission.core.handler.UserDetailsHandler;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitRsaEncryptUtil;
|
||||
import com.wf.captcha.base.Captcha;
|
||||
import java.util.HashMap;
|
||||
@@ -47,8 +47,7 @@ public class SystemAuthService {
|
||||
|
||||
public Map<String, Object> doLogin(SystemUserLoginArgs loginRequest, HttpServletRequest request) throws Exception {
|
||||
// 密码解密
|
||||
String password =
|
||||
KitRsaEncryptUtil.decryptByPrivateKey(properties.getRsa().getPrivateKey(), loginRequest.getPassword());
|
||||
String password = KitRsaEncryptUtil.decryptByPrivateKey(properties.getRsa().getPrivateKey(), loginRequest.getPassword());
|
||||
// 查询验证码
|
||||
String code = redisHelper.get(loginRequest.getUuid(), String.class);
|
||||
// 清除验证码
|
||||
@@ -65,15 +64,14 @@ public class SystemAuthService {
|
||||
if (!passwordEncoder.matches(password, jwtUser.getPassword())) {
|
||||
throw new BadRequestException("登录密码错误");
|
||||
}
|
||||
Authentication authentication =
|
||||
new UsernamePasswordAuthenticationToken(jwtUser, null, jwtUser.getAuthorities());
|
||||
Authentication authentication = new UsernamePasswordAuthenticationToken(jwtUser, null, jwtUser.getAuthorities());
|
||||
SecurityContextHolder.getContext().setAuthentication(authentication);
|
||||
// 生成令牌
|
||||
String token = tokenProvider.createToken(jwtUser);
|
||||
// 返回 token 与 用户信息
|
||||
Map<String, Object> authInfo = new HashMap<>(2) {{
|
||||
put("token", String.format("%s %s", SystemConst.TOKEN_PREFIX, token));
|
||||
put("user", BeanUtil.copyProperties(jwtUser, SystemUserInfoVo.class));
|
||||
put("user", KitBeanUtil.copyToClass(jwtUser, SystemUserInfoVo.class));
|
||||
}};
|
||||
if (properties.getLogin().isSingle()) {
|
||||
// 踢掉之前已经登录的token
|
||||
@@ -87,7 +85,8 @@ public class SystemAuthService {
|
||||
|
||||
public SystemUserInfoVo getCurrentUserInfoVo() {
|
||||
SystemUserJwtVo jwtUser = (SystemUserJwtVo) KitSecurityHelper.getCurrentUser();
|
||||
return BeanUtil.copyProperties(jwtUser, SystemUserInfoVo.class);
|
||||
// 转换是为了去掉密码
|
||||
return KitBeanUtil.copyToClass(jwtUser, SystemUserInfoVo.class);
|
||||
}
|
||||
|
||||
public Map<String, Object> getCaptchaInfo() {
|
||||
|
||||
+2
-2
@@ -19,8 +19,8 @@ import cn.hutool.core.collection.CollUtil;
|
||||
import cn.odboy.system.constant.SystemDataScopeEnum;
|
||||
import cn.odboy.system.dal.dataobject.SystemDeptTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemRoleTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemUserTb;
|
||||
import cn.odboy.system.dal.model.SystemRoleVo;
|
||||
import cn.odboy.system.dal.model.SystemUserVo;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
@@ -49,7 +49,7 @@ public class SystemDataService {
|
||||
* @param user /
|
||||
* @return /
|
||||
*/
|
||||
public List<Long> queryDeptIdByArgs(SystemUserTb user) {
|
||||
public List<Long> queryDeptIdByArgs(SystemUserVo user) {
|
||||
List<Long> deptIds = new ArrayList<>();
|
||||
// 查询用户角色
|
||||
List<SystemRoleVo> roleList = systemUserRoleService.queryRoleByUsersId(user.getId());
|
||||
|
||||
+11
-10
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
@@ -27,11 +26,13 @@ import cn.odboy.system.constant.SystemZhConst;
|
||||
import cn.odboy.system.dal.dataobject.SystemDeptTb;
|
||||
import cn.odboy.system.dal.model.SystemCreateDeptArgs;
|
||||
import cn.odboy.system.dal.model.SystemDeptExportRowVo;
|
||||
import cn.odboy.system.dal.model.SystemDeptVo;
|
||||
import cn.odboy.system.dal.model.SystemProductLineTreeVo;
|
||||
import cn.odboy.system.dal.model.SystemProductLineVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryDeptArgs;
|
||||
import cn.odboy.system.dal.mysql.SystemDeptMapper;
|
||||
import cn.odboy.system.framework.permission.core.KitSecurityHelper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitClassUtil;
|
||||
import cn.odboy.util.xlsx.KitExcelExporter;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
@@ -68,7 +69,7 @@ public class SystemDeptService {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void saveDept(SystemCreateDeptArgs args) {
|
||||
systemDeptMapper.insert(BeanUtil.copyProperties(args, SystemDeptTb.class));
|
||||
systemDeptMapper.insert(KitBeanUtil.copyToClass(args, SystemDeptTb.class));
|
||||
this.updateDeptSubCnt(args.getPid());
|
||||
}
|
||||
|
||||
@@ -272,7 +273,7 @@ public class SystemDeptService {
|
||||
*
|
||||
* @return /
|
||||
*/
|
||||
public KitPageResult<SystemDeptTb> searchDeptTree(List<Long> ids, Boolean exclude) {
|
||||
public KitPageResult<SystemDeptVo> searchDeptTree(List<Long> ids, Boolean exclude) {
|
||||
Set<SystemDeptTb> deptSet1 = new LinkedHashSet<>();
|
||||
for (Long id : ids) {
|
||||
// 同级数据
|
||||
@@ -290,18 +291,18 @@ public class SystemDeptService {
|
||||
}
|
||||
deptSet1.addAll(depts);
|
||||
}
|
||||
ArrayList<SystemDeptTb> deptList = new ArrayList<>(deptSet1);
|
||||
List<SystemDeptVo> deptList = KitBeanUtil.copyToList(new ArrayList<>(deptSet1), SystemDeptVo.class);
|
||||
// 构建部门树
|
||||
Set<SystemDeptTb> trees = new LinkedHashSet<>();
|
||||
Set<SystemDeptTb> deptSet = new LinkedHashSet<>();
|
||||
List<String> deptNames = deptList.stream().map(SystemDeptTb::getName).collect(Collectors.toList());
|
||||
Set<SystemDeptVo> trees = new LinkedHashSet<>();
|
||||
Set<SystemDeptVo> deptSet = new LinkedHashSet<>();
|
||||
List<String> deptNames = deptList.stream().map(SystemDeptVo::getName).collect(Collectors.toList());
|
||||
boolean isChild;
|
||||
for (SystemDeptTb dept : deptList) {
|
||||
for (SystemDeptVo dept : deptList) {
|
||||
isChild = false;
|
||||
if (dept.getPid() == null) {
|
||||
trees.add(dept);
|
||||
}
|
||||
for (SystemDeptTb it : deptList) {
|
||||
for (SystemDeptVo it : deptList) {
|
||||
if (it.getPid() != null && dept.getId().equals(it.getPid())) {
|
||||
isChild = true;
|
||||
if (dept.getChildren() == null) {
|
||||
@@ -319,7 +320,7 @@ public class SystemDeptService {
|
||||
if (CollectionUtil.isEmpty(trees)) {
|
||||
trees = deptSet;
|
||||
}
|
||||
KitPageResult<SystemDeptTb> baseResult = new KitPageResult<>();
|
||||
KitPageResult<SystemDeptVo> baseResult = new KitPageResult<>();
|
||||
baseResult.setContent(CollectionUtil.isEmpty(trees) ? new ArrayList<>(deptSet) : new ArrayList<>(trees));
|
||||
baseResult.setTotalElements(deptSet.size());
|
||||
return baseResult;
|
||||
|
||||
+4
-4
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.odboy.base.KitPageResult;
|
||||
@@ -26,6 +25,7 @@ import cn.odboy.system.dal.model.SystemDictDetailVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryDictDetailArgs;
|
||||
import cn.odboy.system.dal.mysql.SystemDictDetailMapper;
|
||||
import cn.odboy.system.dal.mysql.SystemDictMapper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@@ -55,7 +55,7 @@ public class SystemDictDetailService {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void saveDictDetail(SystemCreateDictDetailArgs args) {
|
||||
SystemDictDetailTb dictDetail = BeanUtil.copyProperties(args, SystemDictDetailTb.class);
|
||||
SystemDictDetailTb dictDetail = KitBeanUtil.copyToClass(args, SystemDictDetailTb.class);
|
||||
dictDetail.setDictId(args.getDict().getId());
|
||||
systemDictDetailMapper.insert(dictDetail);
|
||||
}
|
||||
@@ -106,7 +106,7 @@ public class SystemDictDetailService {
|
||||
*/
|
||||
public KitPageResult<SystemDictDetailVo> searchDictDetail(SystemQueryDictDetailArgs args,
|
||||
Page<SystemDictDetailTb> page) {
|
||||
IPage<SystemDictDetailVo> iPage = systemDictDetailMapper.selectPageByArgs(page, args).convert(i -> BeanUtil.copyProperties(i, SystemDictDetailVo.class));
|
||||
IPage<SystemDictDetailVo> iPage = systemDictDetailMapper.selectPageByArgs(page, args).convert(i -> KitBeanUtil.copyToClass(i, SystemDictDetailVo.class));
|
||||
List<Long> dictIds = iPage.getRecords().stream().map(SystemDictDetailTb::getDictId).collect(Collectors.toList());
|
||||
Map<Long, SystemDictTb> id2ItemMap = systemDictMapper.selectByIds(dictIds).stream().collect(Collectors.toMap(SystemDictTb::getId, i -> i));
|
||||
for (SystemDictDetailVo record : iPage.getRecords()) {
|
||||
@@ -130,7 +130,7 @@ public class SystemDictDetailService {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
return this.listDictDetailByDictId(systemDictTb.getId()).stream().map(m -> {
|
||||
SystemDictDetailVo detailVo = BeanUtil.copyProperties(m, SystemDictDetailVo.class);
|
||||
SystemDictDetailVo detailVo = KitBeanUtil.copyToClass(m, SystemDictDetailVo.class);
|
||||
detailVo.setDict(systemDictTb);
|
||||
return detailVo;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
+2
-2
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.odboy.base.KitPageResult;
|
||||
@@ -25,6 +24,7 @@ import cn.odboy.system.dal.model.SystemDictDetailVo;
|
||||
import cn.odboy.system.dal.model.SystemDictExportRowVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryDictArgs;
|
||||
import cn.odboy.system.dal.mysql.SystemDictMapper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
import cn.odboy.util.xlsx.KitExcelExporter;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
@@ -52,7 +52,7 @@ public class SystemDictService {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void saveDict(SystemCreateDictArgs args) {
|
||||
systemDictMapper.insert(BeanUtil.copyProperties(args, SystemDictTb.class));
|
||||
systemDictMapper.insert(KitBeanUtil.copyToClass(args, SystemDictTb.class));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+2
-2
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.odboy.base.KitPageResult;
|
||||
@@ -25,6 +24,7 @@ import cn.odboy.system.dal.model.SystemCreateJobArgs;
|
||||
import cn.odboy.system.dal.model.SystemJobExportRowVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryJobArgs;
|
||||
import cn.odboy.system.dal.mysql.SystemJobMapper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
import cn.odboy.util.xlsx.KitExcelExporter;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
@@ -56,7 +56,7 @@ public class SystemJobService {
|
||||
if (job != null) {
|
||||
throw new BadRequestException("职位名称已存在");
|
||||
}
|
||||
systemJobMapper.insert(BeanUtil.copyProperties(args, SystemJobTb.class));
|
||||
systemJobMapper.insert(KitBeanUtil.copyToClass(args, SystemJobTb.class));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+3
-3
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
@@ -31,6 +30,7 @@ import cn.odboy.system.dal.dataobject.SystemLocalStorageTb;
|
||||
import cn.odboy.system.dal.model.SystemLocalStorageExportRowVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryStorageArgs;
|
||||
import cn.odboy.system.dal.mysql.SystemLocalStorageMapper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitFileUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
import cn.odboy.util.xlsx.KitExcelExporter;
|
||||
@@ -172,8 +172,8 @@ public class SystemLocalStorageService {
|
||||
public void exportLocalStorageXlsx(HttpServletResponse response, SystemQueryStorageArgs args) {
|
||||
List<SystemLocalStorageTb> systemLocalStorageTbs = this.queryLocalStorageByArgs(args);
|
||||
// KitXlsxExportUtil.exportFile(response, "文件上传记录数据", systemLocalStorageTbs, SystemLocalStorageExportRowVo.class,
|
||||
// (dataObject) -> CollUtil.newArrayList(BeanUtil.copyProperties(dataObject, SystemLocalStorageExportRowVo.class)));
|
||||
List<SystemLocalStorageExportRowVo> rowVos = BeanUtil.copyToList(systemLocalStorageTbs, SystemLocalStorageExportRowVo.class);
|
||||
// (dataObject) -> CollUtil.newArrayList(KitBeanUtil.copyProperties(dataObject, SystemLocalStorageExportRowVo.class)));
|
||||
List<SystemLocalStorageExportRowVo> rowVos = KitBeanUtil.copyToList(systemLocalStorageTbs, SystemLocalStorageExportRowVo.class);
|
||||
KitExcelExporter.exportSimple(response, "文件上传记录数据", SystemLocalStorageExportRowVo.class, rowVos);
|
||||
}
|
||||
}
|
||||
|
||||
+26
-21
@@ -26,11 +26,13 @@ import cn.odboy.system.dal.dataobject.SystemMenuTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemRoleTb;
|
||||
import cn.odboy.system.dal.model.SystemMenuExportRowVo;
|
||||
import cn.odboy.system.dal.model.SystemMenuMetaVo;
|
||||
import cn.odboy.system.dal.model.SystemMenuRouterVo;
|
||||
import cn.odboy.system.dal.model.SystemMenuVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryMenuArgs;
|
||||
import cn.odboy.system.dal.model.SystemRoleVo;
|
||||
import cn.odboy.system.dal.mysql.SystemMenuMapper;
|
||||
import cn.odboy.system.framework.permission.core.KitSecurityHelper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitClassUtil;
|
||||
import cn.odboy.util.xlsx.KitExcelExporter;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
@@ -278,14 +280,14 @@ public class SystemMenuService {
|
||||
* @param menus 原始数据
|
||||
* @return /
|
||||
*/
|
||||
public List<SystemMenuTb> buildMenuTree(List<SystemMenuTb> menus) {
|
||||
List<SystemMenuTb> trees = new ArrayList<>();
|
||||
public List<SystemMenuVo> buildMenuTree(List<SystemMenuVo> menus) {
|
||||
List<SystemMenuVo> trees = new ArrayList<>();
|
||||
Set<Long> ids = new HashSet<>();
|
||||
for (SystemMenuTb menu : menus) {
|
||||
for (SystemMenuVo menu : menus) {
|
||||
if (menu.getPid() == null) {
|
||||
trees.add(menu);
|
||||
}
|
||||
for (SystemMenuTb it : menus) {
|
||||
for (SystemMenuVo it : menus) {
|
||||
if (menu.getId().equals(it.getPid())) {
|
||||
if (menu.getChildren() == null) {
|
||||
menu.setChildren(new ArrayList<>());
|
||||
@@ -307,12 +309,12 @@ public class SystemMenuService {
|
||||
* @param menus /
|
||||
* @return /
|
||||
*/
|
||||
public List<SystemMenuVo> buildMenuVo(List<SystemMenuTb> menus) {
|
||||
List<SystemMenuVo> list = new LinkedList<>();
|
||||
menus.forEach(menu -> {
|
||||
public List<SystemMenuRouterVo> buildMenuVo(List<SystemMenuVo> menus) {
|
||||
List<SystemMenuRouterVo> list = new LinkedList<>();
|
||||
for (SystemMenuVo menu : menus) {
|
||||
if (menu != null) {
|
||||
List<SystemMenuTb> menuList = menu.getChildren();
|
||||
SystemMenuVo menuVo = new SystemMenuVo();
|
||||
List<SystemMenuVo> menuList = menu.getChildren();
|
||||
SystemMenuRouterVo menuVo = new SystemMenuRouterVo();
|
||||
menuVo.setName(
|
||||
ObjectUtil.isNotEmpty(menu.getComponentName()) ? menu.getComponentName() : menu.getTitle());
|
||||
// 一级目录需要加斜杠, 不然会报警告
|
||||
@@ -336,17 +338,17 @@ public class SystemMenuService {
|
||||
menuVo.setChildren(buildMenuVo(menuList));
|
||||
// 处理是一级菜单并且没有子菜单的情况
|
||||
} else if (menu.getPid() == null) {
|
||||
SystemMenuVo menuVo1 = getMenuVo(menu, menuVo);
|
||||
SystemMenuRouterVo menuVo1 = getMenuVo(menu, menuVo);
|
||||
menuVo.setName(null);
|
||||
menuVo.setMeta(null);
|
||||
menuVo.setComponent("Layout");
|
||||
List<SystemMenuVo> list1 = new ArrayList<>();
|
||||
List<SystemMenuRouterVo> list1 = new ArrayList<>();
|
||||
list1.add(menuVo1);
|
||||
menuVo.setChildren(list1);
|
||||
}
|
||||
list.add(menuVo);
|
||||
}
|
||||
});
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@@ -357,8 +359,8 @@ public class SystemMenuService {
|
||||
* @param menuVo /
|
||||
* @return /
|
||||
*/
|
||||
private SystemMenuVo getMenuVo(SystemMenuTb menu, SystemMenuVo menuVo) {
|
||||
SystemMenuVo menuVo1 = new SystemMenuVo();
|
||||
private SystemMenuRouterVo getMenuVo(SystemMenuTb menu, SystemMenuRouterVo menuVo) {
|
||||
SystemMenuRouterVo menuVo1 = new SystemMenuRouterVo();
|
||||
menuVo1.setMeta(menuVo.getMeta());
|
||||
// 非外链
|
||||
if (!menu.getIFrame()) {
|
||||
@@ -418,10 +420,11 @@ public class SystemMenuService {
|
||||
return systemMenuMapper.selectList(wrapper);
|
||||
}
|
||||
|
||||
public List<SystemMenuVo> buildFrontMenus() {
|
||||
public List<SystemMenuRouterVo> buildFrontMenus() {
|
||||
List<SystemMenuTb> menuList = this.listMenuByUserId(KitSecurityHelper.getCurrentUserId());
|
||||
List<SystemMenuTb> menus = this.buildMenuTree(menuList);
|
||||
return this.buildMenuVo(menus);
|
||||
List<SystemMenuVo> originMenus = KitBeanUtil.copyToList(menuList, SystemMenuVo.class);
|
||||
List<SystemMenuVo> targetMenus = this.buildMenuTree(originMenus);
|
||||
return this.buildMenuVo(targetMenus);
|
||||
}
|
||||
|
||||
public Set<Long> listChildMenuSetByMenuId(Long id) {
|
||||
@@ -432,9 +435,9 @@ public class SystemMenuService {
|
||||
return menuSet.stream().map(SystemMenuTb::getId).collect(Collectors.toSet());
|
||||
}
|
||||
|
||||
public List<SystemMenuTb> listMenuSuperior(List<Long> ids) {
|
||||
public List<SystemMenuVo> listMenuSuperior(List<Long> ids) {
|
||||
Set<SystemMenuTb> menus;
|
||||
List<SystemMenuTb> systemMenuTbs;
|
||||
List<SystemMenuVo> systemMenuTbs;
|
||||
if (CollectionUtil.isNotEmpty(ids)) {
|
||||
menus = new LinkedHashSet<>(this.listMenuByIds(ids));
|
||||
for (SystemMenuTb menu : menus) {
|
||||
@@ -448,9 +451,11 @@ public class SystemMenuService {
|
||||
}
|
||||
// 编辑菜单时不显示自己以及自己下级的数据, 避免出现PID数据环形问题
|
||||
menus = menus.stream().filter(i -> !ids.contains(i.getId())).collect(Collectors.toSet());
|
||||
systemMenuTbs = this.buildMenuTree(new ArrayList<>(menus));
|
||||
List<SystemMenuTb> newMenuList = new ArrayList<>(menus);
|
||||
systemMenuTbs = this.buildMenuTree(KitBeanUtil.copyToList(newMenuList, SystemMenuVo.class));
|
||||
} else {
|
||||
systemMenuTbs = this.listMenuByPid(null);
|
||||
List<SystemMenuTb> newMenuList = this.listMenuByPid(null);
|
||||
systemMenuTbs = KitBeanUtil.copyToList(newMenuList, SystemMenuVo.class);
|
||||
}
|
||||
return systemMenuTbs;
|
||||
}
|
||||
|
||||
+4
-3
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
@@ -26,12 +25,14 @@ import cn.odboy.framework.redis.KitRedisHelper;
|
||||
import cn.odboy.system.dal.dataobject.SystemQuartzJobTb;
|
||||
import cn.odboy.system.dal.dataobject.SystemQuartzLogTb;
|
||||
import cn.odboy.system.dal.model.SystemQuartzJobExportRowVo;
|
||||
import cn.odboy.system.dal.model.SystemQuartzJobVo;
|
||||
import cn.odboy.system.dal.model.SystemQuartzLogExportRowVo;
|
||||
import cn.odboy.system.dal.model.SystemQueryQuartzJobArgs;
|
||||
import cn.odboy.system.dal.model.SystemUpdateQuartzJobArgs;
|
||||
import cn.odboy.system.dal.mysql.SystemQuartzJobMapper;
|
||||
import cn.odboy.system.dal.mysql.SystemQuartzLogMapper;
|
||||
import cn.odboy.system.framework.quartz.QuartzManage;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
import cn.odboy.util.xlsx.KitExcelExporter;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
@@ -108,7 +109,7 @@ public class SystemQuartzJobService {
|
||||
throw new BadRequestException("子任务中不能添加当前任务ID");
|
||||
}
|
||||
}
|
||||
SystemQuartzJobTb quartzJob = BeanUtil.copyProperties(args, SystemQuartzJobTb.class);
|
||||
SystemQuartzJobTb quartzJob = KitBeanUtil.copyToClass(args, SystemQuartzJobTb.class);
|
||||
systemQuartzJobMapper.insertOrUpdate(quartzJob);
|
||||
quartzManage.updateJobCron(quartzJob);
|
||||
}
|
||||
@@ -167,7 +168,7 @@ public class SystemQuartzJobService {
|
||||
// 如果是手动清除子任务id, 会出现id为空字符串的问题
|
||||
continue;
|
||||
}
|
||||
SystemQuartzJobTb quartzJob = systemQuartzJobMapper.selectById(Long.parseLong(id));
|
||||
SystemQuartzJobVo quartzJob = systemQuartzJobMapper.selectVoById(id);
|
||||
if (quartzJob == null) {
|
||||
// 防止子任务不存在
|
||||
continue;
|
||||
|
||||
+3
-3
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.lang.Dict;
|
||||
@@ -32,6 +31,7 @@ import cn.odboy.system.dal.model.SystemRoleExportRowVo;
|
||||
import cn.odboy.system.dal.model.SystemRoleVo;
|
||||
import cn.odboy.system.dal.mysql.SystemRoleMapper;
|
||||
import cn.odboy.system.framework.permission.core.KitSecurityHelper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
import cn.odboy.util.xlsx.KitExcelExporter;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
@@ -70,7 +70,7 @@ public class SystemRoleService {
|
||||
if (this.getRoleByName(args.getName()) != null) {
|
||||
throw new BadRequestException("角色名称已存在");
|
||||
}
|
||||
systemRoleMapper.insert(BeanUtil.copyProperties(args, SystemRoleTb.class));
|
||||
systemRoleMapper.insert(KitBeanUtil.copyToClass(args, SystemRoleTb.class));
|
||||
// 判断是否有部门数据, 若有, 则需创建关联
|
||||
if (CollectionUtil.isNotEmpty(args.getDepts())) {
|
||||
systemRoleDeptService.batchInsertRoleDept(args.getDepts(), args.getId());
|
||||
@@ -91,7 +91,7 @@ public class SystemRoleService {
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void updateRoleById(SystemRoleVo args) {
|
||||
checkRoleLevels(args.getLevel());
|
||||
SystemRoleVo role = BeanUtil.copyProperties(systemRoleMapper.selectById(args.getId()), SystemRoleVo.class);
|
||||
SystemRoleVo role = KitBeanUtil.copyToClass(systemRoleMapper.selectById(args.getId()), SystemRoleVo.class);
|
||||
SystemRoleTb role1 = this.getRoleByName(args.getName());
|
||||
if (role1 != null && !role1.getId().equals(role.getId())) {
|
||||
throw new BadRequestException("角色名称已存在");
|
||||
|
||||
+2
-2
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.odboy.framework.exception.BadRequestException;
|
||||
import cn.odboy.system.dal.dataobject.SystemDeptTb;
|
||||
@@ -27,6 +26,7 @@ import cn.odboy.system.dal.model.SystemUserVo;
|
||||
import cn.odboy.system.dal.mysql.SystemRoleMapper;
|
||||
import cn.odboy.system.dal.mysql.SystemUserRoleMapper;
|
||||
import cn.odboy.system.framework.permission.core.KitSecurityHelper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
@@ -84,7 +84,7 @@ public class SystemUserRoleService {
|
||||
if (role == null) {
|
||||
return null;
|
||||
}
|
||||
SystemRoleVo roleVo = BeanUtil.copyProperties(role, SystemRoleVo.class);
|
||||
SystemRoleVo roleVo = KitBeanUtil.copyToClass(role, SystemRoleVo.class);
|
||||
// 查询关联的菜单信息
|
||||
Set<SystemMenuTb> menus = systemRoleMenuService.queryMenuByRoleIds(
|
||||
Collections.singleton(role.getId()));
|
||||
|
||||
+3
-5
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
@@ -41,6 +40,7 @@ import cn.odboy.system.dal.mysql.SystemUserMapper;
|
||||
import cn.odboy.system.dal.redis.SystemUserInfoDAO;
|
||||
import cn.odboy.system.dal.redis.SystemUserOnlineInfoDAO;
|
||||
import cn.odboy.system.framework.permission.core.KitSecurityHelper;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitFileUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
import cn.odboy.util.KitRsaEncryptUtil;
|
||||
@@ -155,7 +155,6 @@ public class SystemUserService {
|
||||
user.setUsername(args.getUsername());
|
||||
user.setEmail(args.getEmail());
|
||||
user.setEnabled(args.getEnabled());
|
||||
user.setDept(args.getDept());
|
||||
user.setPhone(args.getPhone());
|
||||
user.setNickName(args.getNickName());
|
||||
user.setGender(args.getGender());
|
||||
@@ -436,7 +435,7 @@ public class SystemUserService {
|
||||
if (user == null) {
|
||||
return null;
|
||||
}
|
||||
SystemUserVo userVo = BeanUtil.copyProperties(user, SystemUserVo.class);
|
||||
SystemUserVo userVo = KitBeanUtil.copyToClass(user, SystemUserVo.class);
|
||||
// 查询关联的部门信息
|
||||
if (user.getDeptId() != null) {
|
||||
SystemDeptTb dept = systemDeptService.getDeptById(user.getDeptId());
|
||||
@@ -493,8 +492,7 @@ public class SystemUserService {
|
||||
args.getDeptIds().addAll(systemDeptService.queryChildDeptIdByDeptIds(data));
|
||||
}
|
||||
// 数据权限
|
||||
List<Long> dataScopes = systemDataService.queryDeptIdByArgs(
|
||||
this.getUserByUsername(currentUsername));
|
||||
List<Long> dataScopes = systemDataService.queryDeptIdByArgs(this.getUserVoByUsername(currentUsername));
|
||||
// args.getDeptIds() 不为空并且数据权限不为空则取交集
|
||||
if (!CollectionUtils.isEmpty(args.getDeptIds()) && !CollectionUtils.isEmpty(dataScopes)) {
|
||||
// 取交集
|
||||
|
||||
+4
-4
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package cn.odboy.system.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.odboy.base.KitPageResult;
|
||||
@@ -30,6 +29,7 @@ import cn.odboy.system.dal.model.SystemQueryStorageArgs;
|
||||
import cn.odboy.system.dal.mysql.SystemOssStorageMapper;
|
||||
import cn.odboy.system.framework.storage.minio.MinioRepository;
|
||||
import cn.odboy.system.service.SystemOssStorageService;
|
||||
import cn.odboy.util.KitBeanUtil;
|
||||
import cn.odboy.util.KitDateUtil;
|
||||
import cn.odboy.util.KitFileUtil;
|
||||
import cn.odboy.util.KitPageUtil;
|
||||
@@ -72,7 +72,7 @@ public class SystemMinioStorageServiceImpl extends ServiceImpl<SystemOssStorageM
|
||||
Page<SystemOssStorageTb> page) {
|
||||
IPage<SystemOssStorageTb> ossStorageTbs = this.selectOssStorageByArgs(args, page);
|
||||
IPage<SystemOssStorageVo> convert = ossStorageTbs.convert(c -> {
|
||||
SystemOssStorageVo storageVo = BeanUtil.copyProperties(c, SystemOssStorageVo.class);
|
||||
SystemOssStorageVo storageVo = KitBeanUtil.copyToClass(c, SystemOssStorageVo.class);
|
||||
storageVo.setFileSizeDesc(KitFileUtil.getSize(storageVo.getFileSize()));
|
||||
return storageVo;
|
||||
});
|
||||
@@ -157,8 +157,8 @@ public class SystemMinioStorageServiceImpl extends ServiceImpl<SystemOssStorageM
|
||||
public void exportOssStorageXlsx(HttpServletResponse response, SystemQueryStorageArgs args) {
|
||||
List<SystemOssStorageVo> systemOssStorageVos = this.queryOssStorage(args);
|
||||
// KitXlsxExportUtil.exportFile(response, "OSS文件上传记录数据", systemOssStorageVos, SystemOssStorageExportRowVo.class,
|
||||
// (dataObject) -> CollUtil.newArrayList(BeanUtil.copyProperties(dataObject, SystemOssStorageExportRowVo.class)));
|
||||
List<SystemOssStorageExportRowVo> rowVos = BeanUtil.copyToList(systemOssStorageVos, SystemOssStorageExportRowVo.class);
|
||||
// (dataObject) -> CollUtil.newArrayList(KitBeanUtil.copyProperties(dataObject, SystemOssStorageExportRowVo.class)));
|
||||
List<SystemOssStorageExportRowVo> rowVos = KitBeanUtil.copyToList(systemOssStorageVos, SystemOssStorageExportRowVo.class);
|
||||
KitExcelExporter.exportSimple(response, "OSS文件上传记录数据", SystemOssStorageExportRowVo.class, rowVos);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user