!292 mapstruct-plus 接入替换 BeanUtil
* add 新增 mapstruct-plus 用于实体类转换 ;
| | |
| | | <dynamic-ds.version>3.6.1</dynamic-ds.version> |
| | | <alibaba-ttl.version>2.14.2</alibaba-ttl.version> |
| | | <xxl-job.version>2.3.1</xxl-job.version> |
| | | <mapstruct-plus.version>1.1.6</mapstruct-plus.version> |
| | | <mapstruct-plus.lombok.version>0.2.0</mapstruct-plus.lombok.version> |
| | | <lombok.version>1.18.24</lombok.version> |
| | | <bouncycastle.version>1.72</bouncycastle.version> |
| | | |
| | |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>io.github.linpeilie</groupId> |
| | | <artifactId>mapstruct-plus-spring-boot-starter</artifactId> |
| | | <version>${mapstruct-plus.version}</version> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>com.ruoyi</groupId> |
| | | <artifactId>ruoyi-system</artifactId> |
| | | <version>${revision}</version> |
| | |
| | | <artifactId>spring-boot-configuration-processor</artifactId> |
| | | <version>${spring-boot.version}</version> |
| | | </path> |
| | | <path> |
| | | <groupId>io.github.linpeilie</groupId> |
| | | <artifactId>mapstruct-plus-processor</artifactId> |
| | | <version>${mapstruct-plus.version}</version> |
| | | </path> |
| | | <path> |
| | | <groupId>org.projectlombok</groupId> |
| | | <artifactId>lombok-mapstruct-binding</artifactId> |
| | | <version>${mapstruct-plus.lombok.version}</version> |
| | | </path> |
| | | </annotationProcessorPaths> |
| | | <compilerArgs> |
| | | <arg>-parameters</arg> |
| | |
| | | package com.ruoyi.web.controller; |
| | | |
| | | import cn.dev33.satoken.annotation.SaIgnore; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.domain.model.LoginBody; |
| | | import com.ruoyi.common.core.domain.model.LoginUser; |
| | | import com.ruoyi.common.core.domain.model.SmsLoginBody; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.satoken.utils.LoginHelper; |
| | | import com.ruoyi.common.tenant.helper.TenantHelper; |
| | |
| | | @GetMapping("/tenant/list") |
| | | public R<List<TenantListVo>> tenantList(HttpServletRequest request) throws Exception { |
| | | List<SysTenantVo> tenantList = tenantService.queryList(new SysTenantBo()); |
| | | List<TenantListVo> voList = BeanUtil.copyToList(tenantList, TenantListVo.class); |
| | | List<TenantListVo> voList = MapstructUtils.convert(tenantList, TenantListVo.class); |
| | | // è·ååå |
| | | String host = new URL(request.getRequestURL().toString()).getHost(); |
| | | // æ ¹æ®ååè¿è¡çé |
| | |
| | | package com.ruoyi.web.domain.vo; |
| | | |
| | | import com.ruoyi.system.domain.vo.SysTenantVo; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | |
| | | * @author Lion Li |
| | | */ |
| | | @Data |
| | | @AutoMapper(target = SysTenantVo.class) |
| | | public class TenantListVo { |
| | | |
| | | private String tenantId; |
| | |
| | | import cn.dev33.satoken.exception.NotLoginException; |
| | | import cn.dev33.satoken.secure.BCrypt; |
| | | import cn.dev33.satoken.stp.StpUtil; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.ruoyi.common.core.constant.Constants; |
| | |
| | | loginUser.setMenuPermission(permissionService.getMenuPermission(user.getUserId())); |
| | | loginUser.setRolePermission(permissionService.getRolePermission(user.getUserId())); |
| | | loginUser.setDeptName(ObjectUtil.isNull(user.getDept()) ? "" : user.getDept().getDeptName()); |
| | | List<RoleDTO> roles = BeanUtil.copyToList(user.getRoles(), RoleDTO.class); |
| | | List<RoleDTO> roles = MapstructUtils.convert(user.getRoles(), RoleDTO.class); |
| | | loginUser.setRoles(roles); |
| | | return loginUser; |
| | | } |
| | |
| | | <scope>runtime</scope> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>io.github.linpeilie</groupId> |
| | | <artifactId>mapstruct-plus-spring-boot-starter</artifactId> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | |
| | | </project> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.common.core.utils; |
| | | |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.map.MapUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import io.github.linpeilie.Converter; |
| | | import lombok.AccessLevel; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * Mapstruct å·¥å
·ç±» |
| | | * <p>åèææ¡£ï¼<a href="https://mapstruct.plus/guide/quick-start">mapstruct-plus</a></p> |
| | | * |
| | | * @author Michelle.Chung |
| | | */ |
| | | @NoArgsConstructor(access = AccessLevel.PRIVATE) |
| | | public class MapstructUtils { |
| | | |
| | | private final static Converter CONVERTER = SpringUtils.getBean(Converter.class); |
| | | |
| | | /** |
| | | * å° T ç±»å对象ï¼è½¬æ¢ä¸º desc ç±»åç对象并è¿å |
| | | * |
| | | * @param source æ°æ®æ¥æºå®ä½ |
| | | * @param desc æè¿°å¯¹è±¡ 转æ¢åç对象 |
| | | * @return desc |
| | | */ |
| | | public static <T, V> V convert(T source, Class<V> desc) { |
| | | if (ObjectUtil.isNull(source)) { |
| | | return null; |
| | | } |
| | | if (ObjectUtil.isNull(desc)) { |
| | | return null; |
| | | } |
| | | return CONVERTER.convert(source, desc); |
| | | } |
| | | |
| | | /** |
| | | * å° T ç±»åå¯¹è±¡ï¼æç
§é
ç½®çæ å°å段è§åï¼ç» desc ç±»åç对象èµå¼å¹¶è¿å desc 对象 |
| | | * |
| | | * @param source æ°æ®æ¥æºå®ä½ |
| | | * @param desc 转æ¢åç对象 |
| | | * @return desc |
| | | */ |
| | | public static <T, V> V convert(T source, V desc) { |
| | | if (ObjectUtil.isNull(source)) { |
| | | return null; |
| | | } |
| | | if (ObjectUtil.isNull(desc)) { |
| | | return null; |
| | | } |
| | | return CONVERTER.convert(source, desc); |
| | | } |
| | | |
| | | /** |
| | | * å° T ç±»åçéåï¼è½¬æ¢ä¸º desc ç±»åçéåå¹¶è¿å |
| | | * |
| | | * @param sourceList æ°æ®æ¥æºå®ä½å表 |
| | | * @param desc æè¿°å¯¹è±¡ 转æ¢åç对象 |
| | | * @return desc |
| | | */ |
| | | public static <T, V> List<V> convert(List<T> sourceList, Class<V> desc) { |
| | | if (ObjectUtil.isNull(sourceList)) { |
| | | return null; |
| | | } |
| | | if (CollUtil.isEmpty(sourceList)) { |
| | | return CollUtil.newArrayList(); |
| | | } |
| | | return StreamUtils.toList(sourceList, source -> CONVERTER.convert(source, desc)); |
| | | } |
| | | |
| | | /** |
| | | * å° Map 转æ¢ä¸º beanClass ç±»åçéåå¹¶è¿å |
| | | * |
| | | * @param map æ°æ®æ¥æº |
| | | * @param beanClass beanç±» |
| | | * @return bean对象 |
| | | */ |
| | | public static <T> T convert(Map<String, Object> map, Class<T> beanClass) { |
| | | if (MapUtil.isEmpty(map)) { |
| | | return null; |
| | | } |
| | | if (ObjectUtil.isNull(beanClass)) { |
| | | return null; |
| | | } |
| | | return CONVERTER.convert(map, beanClass); |
| | | } |
| | | |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.core.toolkit.ReflectionKit; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.toolkit.Db; |
| | | import com.ruoyi.common.core.utils.BeanCopyUtils; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import org.apache.ibatis.logging.Log; |
| | | import org.apache.ibatis.logging.LogFactory; |
| | | |
| | |
| | | if (ObjectUtil.isNull(obj)) { |
| | | return null; |
| | | } |
| | | return BeanCopyUtils.copy(obj, voClass); |
| | | return MapstructUtils.convert(obj, voClass); |
| | | } |
| | | |
| | | default List<V> selectVoBatchIds(Collection<? extends Serializable> idList) { |
| | |
| | | if (CollUtil.isEmpty(list)) { |
| | | return CollUtil.newArrayList(); |
| | | } |
| | | return BeanCopyUtils.copyList(list, voClass); |
| | | return MapstructUtils.convert(list, voClass); |
| | | } |
| | | |
| | | default List<V> selectVoByMap(Map<String, Object> map) { |
| | |
| | | if (CollUtil.isEmpty(list)) { |
| | | return CollUtil.newArrayList(); |
| | | } |
| | | return BeanCopyUtils.copyList(list, voClass); |
| | | return MapstructUtils.convert(list, voClass); |
| | | } |
| | | |
| | | default V selectVoOne(Wrapper<T> wrapper) { |
| | |
| | | if (ObjectUtil.isNull(obj)) { |
| | | return null; |
| | | } |
| | | return BeanCopyUtils.copy(obj, voClass); |
| | | return MapstructUtils.convert(obj, voClass); |
| | | } |
| | | |
| | | default List<V> selectVoList() { |
| | |
| | | if (CollUtil.isEmpty(list)) { |
| | | return CollUtil.newArrayList(); |
| | | } |
| | | return BeanCopyUtils.copyList(list, voClass); |
| | | return MapstructUtils.convert(list, voClass); |
| | | } |
| | | |
| | | default <P extends IPage<V>> P selectVoPage(IPage<T> page, Wrapper<T> wrapper) { |
| | |
| | | if (CollUtil.isEmpty(pageData.getRecords())) { |
| | | return (P) voPage; |
| | | } |
| | | voPage.setRecords(BeanCopyUtils.copyList(pageData.getRecords(), voClass)); |
| | | voPage.setRecords(MapstructUtils.convert(pageData.getRecords(), voClass)); |
| | | return (P) voPage; |
| | | } |
| | | |
| | |
| | | package com.ruoyi.demo.controller; |
| | | |
| | | import cn.dev33.satoken.annotation.SaCheckPermission; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.ValidatorUtils; |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | |
| | | import jakarta.servlet.http.HttpServletResponse; |
| | | import jakarta.validation.constraints.NotEmpty; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | import java.util.*; |
| | | import java.util.concurrent.TimeUnit; |
| | | |
| | | /** |
| | |
| | | public R<Void> importData(@RequestPart("file") MultipartFile file) throws Exception { |
| | | ExcelResult<TestDemoImportVo> excelResult = ExcelUtil.importExcel(file.getInputStream(), TestDemoImportVo.class, true); |
| | | List<TestDemoImportVo> volist = excelResult.getList(); |
| | | List<TestDemo> list = BeanUtil.copyToList(volist, TestDemo.class); |
| | | List<TestDemo> list = MapstructUtils.convert(volist, TestDemo.class); |
| | | testDemoService.saveBatch(list); |
| | | return R.ok(excelResult.getAnalysis()); |
| | | } |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.demo.domain.TestDemo; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = TestDemo.class) |
| | | public class TestDemoBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.demo.domain.TestTree; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import lombok.Data; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = TestTree.class) |
| | | public class TestTreeBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.translation.annotation.Translation; |
| | | import com.ruoyi.common.translation.constant.TransConstant; |
| | | import com.ruoyi.demo.domain.TestDemo; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = TestDemo.class) |
| | | public class TestDemoVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | |
| | | import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.demo.domain.TestTree; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = TestTree.class) |
| | | public class TestTreeVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | package com.ruoyi.demo.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | |
| | | |
| | | @Override |
| | | public Boolean insertByBo(TestDemoBo bo) { |
| | | TestDemo add = BeanUtil.toBean(bo, TestDemo.class); |
| | | TestDemo add = MapstructUtils.convert(bo, TestDemo.class); |
| | | validEntityBeforeSave(add); |
| | | boolean flag = baseMapper.insert(add) > 0; |
| | | if (flag) { |
| | |
| | | |
| | | @Override |
| | | public Boolean updateByBo(TestDemoBo bo) { |
| | | TestDemo update = BeanUtil.toBean(bo, TestDemo.class); |
| | | TestDemo update = MapstructUtils.convert(bo, TestDemo.class); |
| | | validEntityBeforeSave(update); |
| | | return baseMapper.updateById(update) > 0; |
| | | } |
| | |
| | | package com.ruoyi.demo.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.demo.domain.TestTree; |
| | | import com.ruoyi.demo.domain.bo.TestTreeBo; |
| | |
| | | |
| | | @Override |
| | | public Boolean insertByBo(TestTreeBo bo) { |
| | | TestTree add = BeanUtil.toBean(bo, TestTree.class); |
| | | TestTree add = MapstructUtils.convert(bo, TestTree.class); |
| | | validEntityBeforeSave(add); |
| | | boolean flag = baseMapper.insert(add) > 0; |
| | | if (flag) { |
| | |
| | | |
| | | @Override |
| | | public Boolean updateByBo(TestTreeBo bo) { |
| | | TestTree update = BeanUtil.toBean(bo, TestTree.class); |
| | | TestTree update = MapstructUtils.convert(bo, TestTree.class); |
| | | validEntityBeforeSave(update); |
| | | return baseMapper.updateById(update) > 0; |
| | | } |
| | |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.*; |
| | | #foreach ($import in $importList) |
| | | import ${import}; |
| | |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = ${ClassName}.class, reverseConvertGenerate = false) |
| | | public class ${ClassName}Bo extends BaseEntity { |
| | | |
| | | #foreach ($column in $columns) |
| | |
| | | package ${packageName}.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | #if($table.crud || $table.sub) |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | |
| | | */ |
| | | @Override |
| | | public Boolean insertByBo(${ClassName}Bo bo) { |
| | | ${ClassName} add = BeanUtil.toBean(bo, ${ClassName}.class); |
| | | ${ClassName} add = MapstructUtils.convert(bo, ${ClassName}.class); |
| | | validEntityBeforeSave(add); |
| | | boolean flag = baseMapper.insert(add) > 0; |
| | | #set($pk=$pkColumn.javaField.substring(0,1).toUpperCase() + ${pkColumn.javaField.substring(1)}) |
| | |
| | | */ |
| | | @Override |
| | | public Boolean updateByBo(${ClassName}Bo bo) { |
| | | ${ClassName} update = BeanUtil.toBean(bo, ${ClassName}.class); |
| | | ${ClassName} update = MapstructUtils.convert(bo, ${ClassName}.class); |
| | | validEntityBeforeSave(update); |
| | | return baseMapper.updateById(update) > 0; |
| | | } |
| | |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import lombok.Data; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | |
| | | import java.io.Serial; |
| | | import java.io.Serializable; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = ${ClassName}.class) |
| | | public class ${ClassName}Vo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import cn.dev33.satoken.annotation.SaCheckPermission; |
| | | import cn.dev33.satoken.exception.NotLoginException; |
| | | import cn.dev33.satoken.stp.StpUtil; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import com.ruoyi.common.core.constant.CacheConstants; |
| | | import com.ruoyi.common.core.constant.GlobalConstants; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.domain.dto.UserOnlineDTO; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StreamUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.log.annotation.Log; |
| | |
| | | } |
| | | Collections.reverse(userOnlineDTOList); |
| | | userOnlineDTOList.removeAll(Collections.singleton(null)); |
| | | List<SysUserOnline> userOnlineList = BeanUtil.copyToList(userOnlineDTOList, SysUserOnline.class); |
| | | List<SysUserOnline> userOnlineList = MapstructUtils.convert(userOnlineDTOList, SysUserOnline.class); |
| | | return TableDataInfo.build(userOnlineList); |
| | | } |
| | | |
| | |
| | | package com.ruoyi.system.controller.system; |
| | | |
| | | import cn.dev33.satoken.secure.BCrypt; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.io.FileUtil; |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.core.utils.file.MimeTypeUtils; |
| | | import com.ruoyi.common.log.annotation.Log; |
| | |
| | | @Log(title = "个人信æ¯", businessType = BusinessType.UPDATE) |
| | | @PutMapping |
| | | public R<Void> updateProfile(@RequestBody SysUserProfileBo profile) { |
| | | SysUserBo user = BeanUtil.copyProperties(profile, SysUserBo.class); |
| | | SysUserBo user = MapstructUtils.convert(profile, SysUserBo.class); |
| | | if (StringUtils.isNotEmpty(user.getPhonenumber()) |
| | | && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) { |
| | | return R.fail("ä¿®æ¹ç¨æ·'" + user.getUserName() + "'å¤±è´¥ï¼ææºå·ç å·²åå¨"); |
| | |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | | import com.ruoyi.common.satoken.utils.LoginHelper; |
| | | import com.ruoyi.common.web.core.BaseController; |
| | | import com.ruoyi.system.domain.SysDept; |
| | | import com.ruoyi.system.domain.SysUserRole; |
| | | import com.ruoyi.system.domain.bo.SysDeptBo; |
| | | import com.ruoyi.system.domain.bo.SysRoleBo; |
| | | import com.ruoyi.system.domain.bo.SysUserBo; |
| | | import com.ruoyi.system.domain.vo.DeptTreeSelectVo; |
| | |
| | | public R<DeptTreeSelectVo> roleDeptTreeselect(@PathVariable("roleId") Long roleId) { |
| | | DeptTreeSelectVo selectVo = new DeptTreeSelectVo(); |
| | | selectVo.setCheckedKeys(deptService.selectDeptListByRoleId(roleId)); |
| | | selectVo.setDepts(deptService.selectDeptTreeList(new SysDept())); |
| | | selectVo.setDepts(deptService.selectDeptTreeList(new SysDeptBo())); |
| | | return R.ok(selectVo); |
| | | } |
| | | } |
| | |
| | | |
| | | import cn.dev33.satoken.annotation.SaCheckPermission; |
| | | import cn.dev33.satoken.secure.BCrypt; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.lang.tree.Tree; |
| | | import cn.hutool.core.util.ArrayUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.ruoyi.common.core.constant.TenantConstants; |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StreamUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.excel.core.ExcelResult; |
| | |
| | | import com.ruoyi.common.tenant.helper.TenantHelper; |
| | | import com.ruoyi.common.satoken.utils.LoginHelper; |
| | | import com.ruoyi.common.web.core.BaseController; |
| | | import com.ruoyi.system.domain.SysDept; |
| | | import com.ruoyi.system.domain.bo.SysDeptBo; |
| | | import com.ruoyi.system.domain.bo.SysUserBo; |
| | | import com.ruoyi.system.domain.vo.*; |
| | | import com.ruoyi.system.listener.SysUserImportListener; |
| | |
| | | @PostMapping("/export") |
| | | public void export(SysUserBo user, HttpServletResponse response) { |
| | | List<SysUserVo> list = userService.selectUserList(user); |
| | | List<SysUserExportVo> listVo = BeanUtil.copyToList(list, SysUserExportVo.class); |
| | | for (int i = 0; i < list.size(); i++) { |
| | | SysDeptVo dept = list.get(i).getDept(); |
| | | SysUserExportVo vo = listVo.get(i); |
| | | if (ObjectUtil.isNotEmpty(dept)) { |
| | | vo.setDeptName(dept.getDeptName()); |
| | | vo.setLeader(dept.getLeader()); |
| | | } |
| | | } |
| | | List<SysUserExportVo> listVo = MapstructUtils.convert(list, SysUserExportVo.class); |
| | | ExcelUtil.exportExcel(listVo, "ç¨æ·æ°æ®", SysUserExportVo.class, response); |
| | | } |
| | | |
| | |
| | | */ |
| | | @SaCheckPermission("system:user:list") |
| | | @GetMapping("/deptTree") |
| | | public R<List<Tree<Long>>> deptTree(SysDept dept) { |
| | | public R<List<Tree<Long>>> deptTree(SysDeptBo dept) { |
| | | return R.ok(deptService.selectDeptTreeList(dept)); |
| | | } |
| | | |
| | |
| | | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.system.domain.SysConfig; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import jakarta.validation.constraints.*; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysConfig.class, reverseConvertGenerate = false) |
| | | public class SysConfigBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.system.domain.SysDept; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.Email; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysDept.class, reverseConvertGenerate = false) |
| | | public class SysDeptBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.system.domain.SysDictData; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import jakarta.validation.constraints.Size; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysDictData.class, reverseConvertGenerate = false) |
| | | public class SysDictDataBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.system.domain.SysDictType; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import jakarta.validation.constraints.Pattern; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysDictType.class, reverseConvertGenerate = false) |
| | | public class SysDictTypeBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | package com.ruoyi.system.domain.bo; |
| | | |
| | | import com.ruoyi.system.domain.SysLogininfor; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | |
| | | */ |
| | | |
| | | @Data |
| | | @AutoMapper(target = SysLogininfor.class, reverseConvertGenerate = false) |
| | | public class SysLogininforBo { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.system.domain.SysMenu; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import jakarta.validation.constraints.Size; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysMenu.class, reverseConvertGenerate = false) |
| | | public class SysMenuBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.core.xss.Xss; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.system.domain.SysNotice; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import jakarta.validation.constraints.Size; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysNotice.class, reverseConvertGenerate = false) |
| | | public class SysNoticeBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | package com.ruoyi.system.domain.bo; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.ruoyi.common.log.event.OperLogEvent; |
| | | import com.ruoyi.system.domain.SysOperLog; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import io.github.linpeilie.annotations.AutoMappers; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | |
| | | */ |
| | | |
| | | @Data |
| | | @AutoMappers({ |
| | | @AutoMapper(target = SysOperLog.class, reverseConvertGenerate = false), |
| | | @AutoMapper(target = OperLogEvent.class) |
| | | }) |
| | | public class SysOperLogBo { |
| | | |
| | | /** |
| | |
| | | package com.ruoyi.system.domain.bo; |
| | | |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.common.tenant.core.TenantEntity; |
| | | import com.ruoyi.system.domain.SysOss; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysOss.class, reverseConvertGenerate = false) |
| | | public class SysOssBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.common.tenant.core.TenantEntity; |
| | | import com.ruoyi.system.domain.SysOssConfig; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import jakarta.validation.constraints.Size; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysOssConfig.class, reverseConvertGenerate = false) |
| | | public class SysOssConfigBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.common.tenant.core.TenantEntity; |
| | | import com.ruoyi.system.domain.SysPost; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import jakarta.validation.constraints.Size; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysPost.class, reverseConvertGenerate = false) |
| | | public class SysPostBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.system.domain.SysRole; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import jakarta.validation.constraints.Size; |
| | |
| | | @Data |
| | | @NoArgsConstructor |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysRole.class, reverseConvertGenerate = false) |
| | | public class SysRoleBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.system.domain.SysTenant; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import jakarta.validation.constraints.*; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysTenant.class, reverseConvertGenerate = false) |
| | | public class SysTenantBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | |
| | | import com.ruoyi.common.core.validate.AddGroup; |
| | | import com.ruoyi.common.core.validate.EditGroup; |
| | | import com.ruoyi.system.domain.SysTenantPackage; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import io.github.linpeilie.annotations.AutoMapping; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import jakarta.validation.constraints.*; |
| | |
| | | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysTenantPackage.class, reverseConvertGenerate = false) |
| | | public class SysTenantPackageBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | /** |
| | | * å
³èèåid |
| | | */ |
| | | @AutoMapping(target = "menuIds", expression = "java(com.ruoyi.common.core.utils.StringUtils.join(source.getMenuIds(), \",\"))") |
| | | private Long[] menuIds; |
| | | |
| | | /** |
| | |
| | | import com.ruoyi.common.mybatis.core.domain.BaseEntity; |
| | | import com.ruoyi.common.sensitive.annotation.Sensitive; |
| | | import com.ruoyi.common.sensitive.core.SensitiveStrategy; |
| | | import com.ruoyi.system.domain.SysUser; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import jakarta.validation.constraints.Email; |
| | | import jakarta.validation.constraints.NotBlank; |
| | | import jakarta.validation.constraints.Size; |
| | |
| | | @Data |
| | | @NoArgsConstructor |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @AutoMapper(target = SysUser.class, reverseConvertGenerate = false) |
| | | public class SysUserBo extends BaseEntity { |
| | | |
| | | /** |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysConfig; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysConfig.class) |
| | | public class SysConfigVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysDept; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysDept.class) |
| | | public class SysDeptVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysDictData; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysDictData.class) |
| | | public class SysDictDataVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysDictType; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysDictType.class) |
| | | public class SysDictTypeVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysLogininfor; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysLogininfor.class) |
| | | public class SysLogininforVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | package com.ruoyi.system.domain.vo; |
| | | |
| | | import com.ruoyi.system.domain.SysMenu; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | * @author Michelle.Chung |
| | | */ |
| | | @Data |
| | | @AutoMapper(target = SysMenu.class) |
| | | public class SysMenuVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | |
| | | import com.ruoyi.common.translation.annotation.Translation; |
| | | import com.ruoyi.common.translation.constant.TransConstant; |
| | | import com.ruoyi.system.domain.SysNotice; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | * @author Michelle.Chung |
| | | */ |
| | | @Data |
| | | @AutoMapper(target = SysNotice.class) |
| | | public class SysNoticeVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysOperLog; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysOperLog.class) |
| | | public class SysOperLogVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | package com.ruoyi.system.domain.vo; |
| | | |
| | | import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; |
| | | import com.ruoyi.system.domain.SysOssConfig; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysOssConfig.class) |
| | | public class SysOssConfigVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | |
| | | import com.ruoyi.common.translation.annotation.Translation; |
| | | import com.ruoyi.common.translation.constant.TransConstant; |
| | | import com.ruoyi.system.domain.SysOss; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | * @author Lion Li |
| | | */ |
| | | @Data |
| | | @AutoMapper(target = SysOss.class) |
| | | public class SysOssVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysPost; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysPost.class) |
| | | public class SysPostVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.domain.dto.RoleDTO; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysRole; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import io.github.linpeilie.annotations.AutoMappers; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMappers({ |
| | | @AutoMapper(target = SysRole.class), |
| | | @AutoMapper(target = RoleDTO.class) |
| | | }) |
| | | public class SysRoleVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysTenantPackage; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysTenantPackage.class) |
| | | public class SysTenantPackageVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import com.ruoyi.system.domain.SysTenant; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | */ |
| | | @Data |
| | | @ExcelIgnoreUnannotated |
| | | @AutoMapper(target = SysTenant.class) |
| | | public class SysTenantVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.excel.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.excel.convert.ExcelDictConvert; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import io.github.linpeilie.annotations.ReverseAutoMapping; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | |
| | | |
| | | @Data |
| | | @NoArgsConstructor |
| | | @AutoMapper(target = SysUserVo.class, convertGenerate = false) |
| | | public class SysUserExportVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | /** |
| | | * é¨é¨åç§° |
| | | */ |
| | | @ReverseAutoMapping(target = "deptName", source = "dept.deptName") |
| | | @ExcelProperty(value = "é¨é¨åç§°") |
| | | private String deptName; |
| | | |
| | | /** |
| | | * è´è´£äºº |
| | | */ |
| | | @ReverseAutoMapping(target = "leader", source = "dept.leader") |
| | | @ExcelProperty(value = "é¨é¨è´è´£äºº") |
| | | private String leader; |
| | | |
| | |
| | | |
| | | import com.ruoyi.common.translation.annotation.Translation; |
| | | import com.ruoyi.common.translation.constant.TransConstant; |
| | | import com.ruoyi.system.domain.SysUser; |
| | | import io.github.linpeilie.annotations.AutoMapper; |
| | | import lombok.Data; |
| | | |
| | | import java.io.Serial; |
| | |
| | | * @author Michelle.Chung |
| | | */ |
| | | @Data |
| | | @AutoMapper(target = SysUser.class) |
| | | public class SysUserVo implements Serializable { |
| | | |
| | | @Serial |
| | |
| | | package com.ruoyi.system.listener; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import cn.hutool.crypto.digest.BCrypt; |
| | | import com.alibaba.excel.context.AnalysisContext; |
| | | import com.alibaba.excel.event.AnalysisEventListener; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.SpringUtils; |
| | | import com.ruoyi.common.core.utils.ValidatorUtils; |
| | | import com.ruoyi.common.excel.core.ExcelListener; |
| | |
| | | try { |
| | | // éªè¯æ¯å¦åå¨è¿ä¸ªç¨æ· |
| | | if (ObjectUtil.isNull(sysUser)) { |
| | | SysUserBo user = BeanUtil.toBean(userVo, SysUserBo.class); |
| | | SysUserBo user = MapstructUtils.convert(userVo, SysUserBo.class); |
| | | ValidatorUtils.validate(user); |
| | | user.setPassword(password); |
| | | user.setCreateBy(operUserId); |
| | |
| | | successMsg.append("<br/>").append(successNum).append("ãè´¦å· ").append(user.getUserName()).append(" 导å
¥æå"); |
| | | } else if (isUpdateSupport) { |
| | | Long userId = sysUser.getUserId(); |
| | | SysUserBo user = BeanUtil.toBean(userVo, SysUserBo.class); |
| | | SysUserBo user = MapstructUtils.convert(userVo, SysUserBo.class); |
| | | user.setUserId(userId); |
| | | ValidatorUtils.validate(user); |
| | | userService.checkUserAllowed(user); |
| | |
| | | * @param dept é¨é¨ä¿¡æ¯ |
| | | * @return é¨é¨æ ä¿¡æ¯éå |
| | | */ |
| | | List<Tree<Long>> selectDeptTreeList(SysDept dept); |
| | | List<Tree<Long>> selectDeptTreeList(SysDeptBo dept); |
| | | |
| | | /** |
| | | * æå»ºå端æéè¦ä¸ææ ç»æ |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.convert.Convert; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.dynamic.datasource.annotation.DS; |
| | |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.service.ConfigService; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.SpringUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | |
| | | @CachePut(cacheNames = CacheNames.SYS_CONFIG, key = "#bo.configKey") |
| | | @Override |
| | | public String insertConfig(SysConfigBo bo) { |
| | | SysConfig config = BeanUtil.toBean(bo, SysConfig.class); |
| | | SysConfig config = MapstructUtils.convert(bo, SysConfig.class); |
| | | int row = baseMapper.insert(config); |
| | | if (row > 0) { |
| | | return config.getConfigValue(); |
| | |
| | | @Override |
| | | public String updateConfig(SysConfigBo bo) { |
| | | int row = 0; |
| | | SysConfig config = BeanUtil.toBean(bo, SysConfig.class); |
| | | SysConfig config = MapstructUtils.convert(bo, SysConfig.class); |
| | | if (config.getConfigId() != null) { |
| | | SysConfig temp = baseMapper.selectById(config.getConfigId()); |
| | | if (!StringUtils.equals(temp.getConfigKey(), config.getConfigKey())) { |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.convert.Convert; |
| | | import cn.hutool.core.lang.tree.Tree; |
| | |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.service.DeptService; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.SpringUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.core.utils.TreeBuildUtils; |
| | |
| | | /** |
| | | * æ¥è¯¢é¨é¨æ ç»æä¿¡æ¯ |
| | | * |
| | | * @param dept é¨é¨ä¿¡æ¯ |
| | | * @param bo é¨é¨ä¿¡æ¯ |
| | | * @return é¨é¨æ ä¿¡æ¯éå |
| | | */ |
| | | @Override |
| | | public List<Tree<Long>> selectDeptTreeList(SysDept dept) { |
| | | SysDeptBo bo = BeanUtil.toBean(dept, SysDeptBo.class); |
| | | public List<Tree<Long>> selectDeptTreeList(SysDeptBo bo) { |
| | | LambdaQueryWrapper<SysDept> lqw = buildQueryWrapper(bo); |
| | | List<SysDept> depts = baseMapper.selectList(lqw); |
| | | return buildDeptTreeSelect(depts); |
| | |
| | | if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) { |
| | | throw new ServiceException("é¨é¨åç¨ï¼ä¸å
许æ°å¢"); |
| | | } |
| | | SysDept dept = BeanUtil.toBean(bo, SysDept.class); |
| | | SysDept dept = MapstructUtils.convert(bo, SysDept.class); |
| | | dept.setAncestors(info.getAncestors() + StringUtils.SEPARATOR + dept.getParentId()); |
| | | return baseMapper.insert(dept); |
| | | } |
| | |
| | | @CacheEvict(cacheNames = CacheNames.SYS_DEPT, key = "#bo.deptId") |
| | | @Override |
| | | public int updateDept(SysDeptBo bo) { |
| | | SysDept dept = BeanUtil.toBean(bo, SysDept.class); |
| | | SysDept dept = MapstructUtils.convert(bo, SysDept.class); |
| | | SysDept newParentDept = baseMapper.selectById(dept.getParentId()); |
| | | SysDept oldDept = baseMapper.selectById(dept.getDeptId()); |
| | | if (ObjectUtil.isNotNull(newParentDept) && ObjectUtil.isNotNull(oldDept)) { |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.constant.CacheNames; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | | import com.ruoyi.system.domain.SysDictData; |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | |
| | | @CachePut(cacheNames = CacheNames.SYS_DICT, key = "#bo.dictType") |
| | | @Override |
| | | public List<SysDictDataVo> insertDictData(SysDictDataBo bo) { |
| | | SysDictData data = BeanUtil.toBean(bo, SysDictData.class); |
| | | SysDictData data = MapstructUtils.convert(bo, SysDictData.class); |
| | | int row = baseMapper.insert(data); |
| | | if (row > 0) { |
| | | return baseMapper.selectDictDataByType(data.getDictType()); |
| | |
| | | @CachePut(cacheNames = CacheNames.SYS_DICT, key = "#bo.dictType") |
| | | @Override |
| | | public List<SysDictDataVo> updateDictData(SysDictDataBo bo) { |
| | | SysDictData data = BeanUtil.toBean(bo, SysDictData.class); |
| | | SysDictData data = MapstructUtils.convert(bo, SysDictData.class); |
| | | int row = baseMapper.updateById(data); |
| | | if (row > 0) { |
| | | return baseMapper.selectDictDataByType(data.getDictType()); |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.dev33.satoken.context.SaHolder; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.service.DictService; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.SpringUtils; |
| | | import com.ruoyi.common.core.utils.StreamUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | |
| | | @CachePut(cacheNames = CacheNames.SYS_DICT, key = "#bo.dictType") |
| | | @Override |
| | | public List<SysDictTypeVo> insertDictType(SysDictTypeBo bo) { |
| | | SysDictType dict = BeanUtil.toBean(bo, SysDictType.class); |
| | | SysDictType dict = MapstructUtils.convert(bo, SysDictType.class); |
| | | int row = baseMapper.insert(dict); |
| | | if (row > 0) { |
| | | return new ArrayList<>(); |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public List<SysDictDataVo> updateDictType(SysDictTypeBo bo) { |
| | | SysDictType dict = BeanUtil.toBean(bo, SysDictType.class); |
| | | SysDictType dict = MapstructUtils.convert(bo, SysDictType.class); |
| | | SysDictType oldDict = baseMapper.selectById(dict.getDictId()); |
| | | dictDataMapper.update(null, new LambdaUpdateWrapper<SysDictData>() |
| | | .set(SysDictData::getDictType, dict.getDictType()) |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.http.useragent.UserAgent; |
| | | import cn.hutool.http.useragent.UserAgentUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.constant.Constants; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | | import com.ruoyi.common.log.event.LogininforEvent; |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | |
| | | */ |
| | | @Override |
| | | public void insertLogininfor(SysLogininforBo bo) { |
| | | SysLogininfor logininfor = BeanUtil.toBean(bo, SysLogininfor.class); |
| | | SysLogininfor logininfor = MapstructUtils.convert(bo, SysLogininfor.class); |
| | | logininfor.setLoginTime(new Date()); |
| | | baseMapper.insert(logininfor); |
| | | } |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.convert.Convert; |
| | | import cn.hutool.core.lang.tree.Tree; |
| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.utils.BeanCopyUtils; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StreamUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.core.utils.TreeBuildUtils; |
| | |
| | | .orderByAsc("m.parent_id") |
| | | .orderByAsc("m.order_num"); |
| | | List<SysMenu> list = baseMapper.selectMenuListByUserId(wrapper); |
| | | menuList = BeanCopyUtils.copyList(list, SysMenuVo.class); |
| | | menuList = MapstructUtils.convert(list, SysMenuVo.class); |
| | | } |
| | | return menuList; |
| | | } |
| | |
| | | */ |
| | | @Override |
| | | public int insertMenu(SysMenuBo bo) { |
| | | SysMenu menu = BeanUtil.toBean(bo, SysMenu.class); |
| | | SysMenu menu = MapstructUtils.convert(bo, SysMenu.class); |
| | | return baseMapper.insert(menu); |
| | | } |
| | | |
| | |
| | | */ |
| | | @Override |
| | | public int updateMenu(SysMenuBo bo) { |
| | | SysMenu menu = BeanUtil.toBean(bo, SysMenu.class); |
| | | SysMenu menu = MapstructUtils.convert(bo, SysMenu.class); |
| | | return baseMapper.updateById(menu); |
| | | } |
| | | |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | |
| | | */ |
| | | @Override |
| | | public int insertNotice(SysNoticeBo bo) { |
| | | SysNotice notice = BeanUtil.toBean(bo, SysNotice.class); |
| | | SysNotice notice = MapstructUtils.convert(bo, SysNotice.class); |
| | | return baseMapper.insert(notice); |
| | | } |
| | | |
| | |
| | | */ |
| | | @Override |
| | | public int updateNotice(SysNoticeBo bo) { |
| | | SysNotice notice = BeanUtil.toBean(bo, SysNotice.class); |
| | | SysNotice notice = MapstructUtils.convert(bo, SysNotice.class); |
| | | return baseMapper.updateById(notice); |
| | | } |
| | | |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.util.ArrayUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | |
| | | @Async |
| | | @EventListener |
| | | public void recordOper(OperLogEvent operLogEvent) { |
| | | SysOperLogBo operLog = BeanUtil.toBean(operLogEvent, SysOperLogBo.class); |
| | | SysOperLogBo operLog = MapstructUtils.convert(operLogEvent, SysOperLogBo.class); |
| | | // è¿ç¨æ¥è¯¢æä½å°ç¹ |
| | | operLog.setOperLocation(AddressUtils.getRealAddressByIP(operLog.getOperIp())); |
| | | insertOperlog(operLog); |
| | |
| | | */ |
| | | @Override |
| | | public void insertOperlog(SysOperLogBo bo) { |
| | | SysOperLog operLog = BeanUtil.toBean(bo, SysOperLog.class); |
| | | SysOperLog operLog = MapstructUtils.convert(bo, SysOperLog.class); |
| | | operLog.setOperTime(new Date()); |
| | | baseMapper.insert(operLog); |
| | | } |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | |
| | | import com.ruoyi.common.core.constant.CacheNames; |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StreamUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.json.utils.JsonUtils; |
| | |
| | | |
| | | @Override |
| | | public Boolean insertByBo(SysOssConfigBo bo) { |
| | | SysOssConfig config = BeanUtil.toBean(bo, SysOssConfig.class); |
| | | SysOssConfig config = MapstructUtils.convert(bo, SysOssConfig.class); |
| | | validEntityBeforeSave(config); |
| | | boolean flag = baseMapper.insert(config) > 0; |
| | | if (flag) { |
| | |
| | | |
| | | @Override |
| | | public Boolean updateByBo(SysOssConfigBo bo) { |
| | | SysOssConfig config = BeanUtil.toBean(bo, SysOssConfig.class); |
| | | SysOssConfig config = MapstructUtils.convert(bo, SysOssConfig.class); |
| | | validEntityBeforeSave(config); |
| | | LambdaUpdateWrapper<SysOssConfig> luw = new LambdaUpdateWrapper<>(); |
| | | luw.set(ObjectUtil.isNull(config.getPrefix()), SysOssConfig::getPrefix, ""); |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int updateOssConfigStatus(SysOssConfigBo bo) { |
| | | SysOssConfig sysOssConfig = BeanUtil.toBean(bo, SysOssConfig.class); |
| | | SysOssConfig sysOssConfig = MapstructUtils.convert(bo, SysOssConfig.class); |
| | | int row = baseMapper.update(null, new LambdaUpdateWrapper<SysOssConfig>() |
| | | .set(SysOssConfig::getStatus, "1")); |
| | | row += baseMapper.updateById(sysOssConfig); |
| | |
| | | import com.ruoyi.common.core.constant.CacheNames; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.service.OssService; |
| | | import com.ruoyi.common.core.utils.BeanCopyUtils; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.SpringUtils; |
| | | import com.ruoyi.common.core.utils.StreamUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | |
| | | oss.setService(storage.getConfigKey()); |
| | | baseMapper.insert(oss); |
| | | SysOssVo sysOssVo = new SysOssVo(); |
| | | BeanCopyUtils.copy(oss, sysOssVo); |
| | | MapstructUtils.convert(oss, sysOssVo); |
| | | return this.matchingUrl(sysOssVo); |
| | | } |
| | | |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | |
| | | */ |
| | | @Override |
| | | public int insertPost(SysPostBo bo) { |
| | | SysPost post = BeanUtil.toBean(bo, SysPost.class); |
| | | SysPost post = MapstructUtils.convert(bo, SysPost.class); |
| | | return baseMapper.insert(post); |
| | | } |
| | | |
| | |
| | | */ |
| | | @Override |
| | | public int updatePost(SysPostBo bo) { |
| | | SysPost post = BeanUtil.toBean(bo, SysPost.class); |
| | | SysPost post = MapstructUtils.convert(bo, SysPost.class); |
| | | return baseMapper.updateById(post); |
| | | } |
| | | } |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.Wrapper; |
| | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StreamUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int insertRole(SysRoleBo bo) { |
| | | SysRole role = BeanUtil.toBean(bo, SysRole.class); |
| | | SysRole role = MapstructUtils.convert(bo, SysRole.class); |
| | | // æ°å¢è§è²ä¿¡æ¯ |
| | | baseMapper.insert(role); |
| | | bo.setRoleId(role.getRoleId()); |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int updateRole(SysRoleBo bo) { |
| | | SysRole role = BeanUtil.toBean(bo, SysRole.class); |
| | | SysRole role = MapstructUtils.convert(bo, SysRole.class); |
| | | // ä¿®æ¹è§è²ä¿¡æ¯ |
| | | baseMapper.updateById(role); |
| | | // å é¤è§è²ä¸èåå
³è |
| | |
| | | */ |
| | | @Override |
| | | public int updateRoleStatus(SysRoleBo bo) { |
| | | SysRole role = BeanUtil.toBean(bo, SysRole.class); |
| | | SysRole role = MapstructUtils.convert(bo, SysRole.class); |
| | | return baseMapper.updateById(role); |
| | | } |
| | | |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int authDataScope(SysRoleBo bo) { |
| | | SysRole role = BeanUtil.toBean(bo, SysRole.class); |
| | | SysRole role = MapstructUtils.convert(bo, SysRole.class); |
| | | // ä¿®æ¹è§è²ä¿¡æ¯ |
| | | baseMapper.updateById(role); |
| | | // å é¤è§è²ä¸é¨é¨å
³è |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.mybatis.core.page.TableDataInfo; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public Boolean insertByBo(SysTenantPackageBo bo) { |
| | | SysTenantPackage add = BeanUtil.toBean(bo, SysTenantPackage.class); |
| | | SysTenantPackage add = MapstructUtils.convert(bo, SysTenantPackage.class); |
| | | // ä¿åèåid |
| | | List<Long> menuIds = Arrays.asList(bo.getMenuIds()); |
| | | if (CollUtil.isNotEmpty(menuIds)) { |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public Boolean updateByBo(SysTenantPackageBo bo) { |
| | | SysTenantPackage update = BeanUtil.toBean(bo, SysTenantPackage.class); |
| | | SysTenantPackage update = MapstructUtils.convert(bo, SysTenantPackage.class); |
| | | // ä¿åèåid |
| | | List<Long> menuIds = Arrays.asList(bo.getMenuIds()); |
| | | if (CollUtil.isNotEmpty(menuIds)) { |
| | |
| | | */ |
| | | @Override |
| | | public int updatePackageStatus(SysTenantPackageBo bo) { |
| | | SysTenantPackage tenantPackage = BeanUtil.toBean(bo, SysTenantPackage.class); |
| | | SysTenantPackage tenantPackage = MapstructUtils.convert(bo, SysTenantPackage.class); |
| | | return baseMapper.updateById(tenantPackage); |
| | | } |
| | | |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.dev33.satoken.secure.BCrypt; |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.convert.Convert; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import cn.hutool.core.util.RandomUtil; |
| | |
| | | import com.ruoyi.common.core.constant.Constants; |
| | | import com.ruoyi.common.core.constant.TenantConstants; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.SpringUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | |
| | | public Boolean insertByBo(SysTenantBo bo) { |
| | | TenantHelper.enableIgnore(); |
| | | |
| | | SysTenant add = BeanUtil.toBean(bo, SysTenant.class); |
| | | SysTenant add = MapstructUtils.convert(bo, SysTenant.class); |
| | | |
| | | // è·åææç§æ·ç¼å· |
| | | List<String> tenantIds = baseMapper.selectObjs( |
| | |
| | | @CacheEvict(cacheNames = CacheNames.SYS_TENANT, key = "#bo.tenantId") |
| | | @Override |
| | | public Boolean updateByBo(SysTenantBo bo) { |
| | | SysTenant tenant = BeanUtil.toBean(bo, SysTenant.class); |
| | | SysTenant tenant = MapstructUtils.convert(bo, SysTenant.class); |
| | | tenant.setTenantId(null); |
| | | tenant.setPackageId(null); |
| | | return baseMapper.updateById(tenant) > 0; |
| | |
| | | @CacheEvict(cacheNames = CacheNames.SYS_TENANT, key = "#bo.tenantId") |
| | | @Override |
| | | public int updateTenantStatus(SysTenantBo bo) { |
| | | SysTenant tenant = BeanUtil.toBean(bo, SysTenant.class); |
| | | SysTenant tenant = MapstructUtils.convert(bo, SysTenant.class); |
| | | return baseMapper.updateById(tenant); |
| | | } |
| | | |
| | |
| | | package com.ruoyi.system.service.impl; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.util.ArrayUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | |
| | | import com.ruoyi.common.core.constant.UserConstants; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.core.service.UserService; |
| | | import com.ruoyi.common.core.utils.MapstructUtils; |
| | | import com.ruoyi.common.core.utils.StreamUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.mybatis.core.page.PageQuery; |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int insertUser(SysUserBo user) { |
| | | SysUser sysUser = BeanUtil.copyProperties(user, SysUser.class); |
| | | SysUser sysUser = MapstructUtils.convert(user, SysUser.class); |
| | | // æ°å¢ç¨æ·ä¿¡æ¯ |
| | | int rows = baseMapper.insert(sysUser); |
| | | user.setUserId(sysUser.getUserId()); |
| | |
| | | public boolean registerUser(SysUserBo user, String tenantId) { |
| | | user.setCreateBy(user.getUserId()); |
| | | user.setUpdateBy(user.getUserId()); |
| | | SysUser sysUser = BeanUtil.copyProperties(user, SysUser.class); |
| | | SysUser sysUser = MapstructUtils.convert(user, SysUser.class); |
| | | sysUser.setTenantId(tenantId); |
| | | return baseMapper.insert(sysUser) > 0; |
| | | } |
| | |
| | | userPostMapper.delete(new LambdaQueryWrapper<SysUserPost>().eq(SysUserPost::getUserId, userId)); |
| | | // æ°å¢ç¨æ·ä¸å²ä½ç®¡ç |
| | | insertUserPost(user); |
| | | SysUser sysUser = BeanUtil.copyProperties(user, SysUser.class); |
| | | SysUser sysUser = MapstructUtils.convert(user, SysUser.class); |
| | | return baseMapper.updateById(sysUser); |
| | | } |
| | | |
| | |
| | | */ |
| | | @Override |
| | | public int updateUserStatus(SysUserBo user) { |
| | | SysUser sysUser = BeanUtil.copyProperties(user, SysUser.class); |
| | | SysUser sysUser = MapstructUtils.convert(user, SysUser.class); |
| | | return baseMapper.updateById(sysUser); |
| | | } |
| | | |
| | |
| | | */ |
| | | @Override |
| | | public int updateUserProfile(SysUserBo user) { |
| | | SysUser sysUser = BeanUtil.copyProperties(user, SysUser.class); |
| | | SysUser sysUser = MapstructUtils.convert(user, SysUser.class); |
| | | return baseMapper.updateById(sysUser); |
| | | } |
| | | |
| | |
| | | */ |
| | | @Override |
| | | public int resetPwd(SysUserBo user) { |
| | | SysUser sysUser = BeanUtil.copyProperties(user, SysUser.class); |
| | | SysUser sysUser = MapstructUtils.convert(user, SysUser.class); |
| | | return baseMapper.updateById(sysUser); |
| | | } |
| | | |