Commit 9b460ae3 by huangjinxin

feat:重写角色新增

1 parent 33a7dc33
package com.dituhui.pea.user;
import com.dituhui.pea.common.Result;
import com.dituhui.pea.pojo.RoleInfo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
/**
* 角色相关接口
*/
@FeignClient(value = "project-user", contextId = "role")
public interface IRole2 {
/**
* 添加角色
*
* @param roleInfo 角色信息
* @return
*/
@RequestMapping(value = "/pea-user/role/add2", method = RequestMethod.POST)
Result<RoleInfo> addRole(@RequestBody RoleInfo roleInfo);
}
...@@ -35,8 +35,7 @@ public class RoleController implements IRole { ...@@ -35,8 +35,7 @@ public class RoleController implements IRole {
@Override @Override
public Result<RoleInfo> addRole(@Validated RoleInfo roleInfo) { public Result<RoleInfo> addRole(@Validated RoleInfo roleInfo) {
roleInfo = roleService.addRole(roleInfo); return roleService.addRole(roleInfo);
return Result.success(roleInfo);
} }
......
package com.dituhui.pea.user.dao;
import com.dituhui.pea.user.entity.RoleEntity2;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.CrudRepository;
/**
* 角色表(Role)表数据库访问层
*
*/
public interface RoleDao2 extends JpaRepository<RoleEntity2, String>,
JpaSpecificationExecutor<RoleEntity2>, CrudRepository<RoleEntity2, String> {
}
...@@ -9,7 +9,6 @@ import org.springframework.data.jpa.domain.support.AuditingEntityListener; ...@@ -9,7 +9,6 @@ import org.springframework.data.jpa.domain.support.AuditingEntityListener;
import javax.persistence.*; import javax.persistence.*;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
/** /**
...@@ -19,7 +18,7 @@ import java.util.Date; ...@@ -19,7 +18,7 @@ import java.util.Date;
@Data @Data
@Entity @Entity
@Table(name ="sys_role") @Table(name ="sys_role")
// @EntityListeners(AuditingEntityListener.class) @EntityListeners(AuditingEntityListener.class)
public class RoleEntity implements Serializable { public class RoleEntity implements Serializable {
private static final long serialVersionUID = -71423293715769828L; private static final long serialVersionUID = -71423293715769828L;
/** /**
...@@ -55,9 +54,9 @@ public class RoleEntity implements Serializable { ...@@ -55,9 +54,9 @@ public class RoleEntity implements Serializable {
/** /**
* 创建时间 * 创建时间
*/ */
// @Column(name = "CREATED_TIME") @Column(name = "CREATED_TIME")
@Column(name = "CREATED_TIME", nullable = false, updatable = false, columnDefinition = "timestamp default current_timestamp") @CreatedDate
private LocalDateTime createdTime; private Date createdTime;
/** /**
* 更新人 * 更新人
*/ */
...@@ -66,9 +65,9 @@ public class RoleEntity implements Serializable { ...@@ -66,9 +65,9 @@ public class RoleEntity implements Serializable {
/** /**
* 更新时间 * 更新时间
*/ */
// @Column(name = "UPDATED_TIME") @Column(name = "UPDATED_TIME")
@Column(name = "UPDATED_TIME", nullable = false, columnDefinition = "timestamp default current_timestamp on update current_timestamp") @LastModifiedDate
private LocalDateTime updatedTime; private Date updatedTime;
/** /**
* 备注 * 备注
......
package com.dituhui.pea.user.entity;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedDate;
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
import javax.persistence.*;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.Date;
/**
* 角色表(RoleEntity)实体类
*
*/
@Data
@Entity
@Table(name ="sys_role")
@EntityListeners(AuditingEntityListener.class)
public class RoleEntity2 implements Serializable {
private static final long serialVersionUID = -71423293716769828L;
/**
* 主键
*/
@Id
@GeneratedValue(generator = "uuid")
@GenericGenerator(name = "uuid", strategy = "uuid")
@Column(name = "ID", unique = true, nullable = false, length = 60)
private String id;
/**
* 名称
*/
@Column(name = "name")
@NotBlank(message = "角色名称不能为空!")
private String name;
/**
* 角色组id
*/
@Column(name = "group_id")
private String groupId;
/**
* 角色自定义条件
*/
@Column(name = "extra")
@NotBlank(message = "角色自定义条件不能为空!")
private String extra;
/**
* 创建人
*/
@Column(name = "CREATED_BY")
private String createdBy;
/**
* 创建时间
*/
@Column(name = "CREATED_TIME")
@CreatedDate
private Date createdTime;
/**
* 更新人
*/
@Column(name = "UPDATED_BY")
private String updatedBy;
/**
* 更新时间
*/
@Column(name = "UPDATED_TIME")
@LastModifiedDate
private Date updatedTime;
/**
* 备注
*/
@Column(name = "notes")
private String notes;
}
...@@ -5,6 +5,7 @@ import cn.hutool.core.collection.CollUtil; ...@@ -5,6 +5,7 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.dituhui.pea.common.PageResult; import com.dituhui.pea.common.PageResult;
import com.dituhui.pea.common.Result;
import com.dituhui.pea.enums.RedisKeyGroup; import com.dituhui.pea.enums.RedisKeyGroup;
import com.dituhui.pea.enums.StatusCodeEnum; import com.dituhui.pea.enums.StatusCodeEnum;
import com.dituhui.pea.exception.BusinessException; import com.dituhui.pea.exception.BusinessException;
...@@ -73,15 +74,18 @@ public class RoleService { ...@@ -73,15 +74,18 @@ public class RoleService {
@Transactional @Transactional
public RoleInfo addRole(RoleInfo roleInfo) { public Result<RoleInfo> addRole(RoleInfo roleInfo) {
String name = roleInfo.getName(); // String name = roleInfo.getName();
String createdBy = roleInfo.getCreatedBy(); // String createdBy = roleInfo.getCreatedBy();
String notes = roleInfo.getNotes(); // String notes = roleInfo.getNotes();
RoleEntity roleEntity = new RoleEntity(); // RoleEntity roleEntity = new RoleEntity();
roleEntity.setName(name); // roleEntity.setName(name);
roleEntity.setCreatedBy(createdBy); // roleEntity.setCreatedBy(createdBy);
roleEntity.setCreatedTime(LocalDateTime.now()); // roleEntity.setCreatedTime(LocalDateTime.now());
roleEntity.setNotes(notes); // roleEntity.setNotes(notes);
RoleEntity roleEntity = BeanUtil.copyProperties(roleInfo, RoleEntity.class);
// RoleEntity roleEntity = assembleRole(roleInfo); // RoleEntity roleEntity = assembleRole(roleInfo);
log.info("新增角色入参:" + JSONObject.toJSONString(roleEntity)); log.info("新增角色入参:" + JSONObject.toJSONString(roleEntity));
roleEntity = roleDao.save(roleEntity); roleEntity = roleDao.save(roleEntity);
...@@ -95,7 +99,7 @@ public class RoleService { ...@@ -95,7 +99,7 @@ public class RoleService {
} }
} }
log.info("新增角色信息:" + JSONObject.toJSONString(roleInfo)); log.info("新增角色信息:" + JSONObject.toJSONString(roleInfo));
return roleInfo; return Result.success(roleInfo);
} }
...@@ -140,7 +144,7 @@ public class RoleService { ...@@ -140,7 +144,7 @@ public class RoleService {
RoleEntity roleEntity = new RoleEntity(); RoleEntity roleEntity = new RoleEntity();
roleEntity.setName(name); roleEntity.setName(name);
roleEntity.setCreatedBy(createdBy); roleEntity.setCreatedBy(createdBy);
roleEntity.setCreatedTime(LocalDateTime.now()); roleEntity.setCreatedTime(new Date());
roleEntity.setNotes(notes); roleEntity.setNotes(notes);
// RoleEntity roleEntity = assembleRole(roleInfo); // RoleEntity roleEntity = assembleRole(roleInfo);
log.info("新增角色入参:" + JSONObject.toJSONString(roleEntity)); log.info("新增角色入参:" + JSONObject.toJSONString(roleEntity));
...@@ -291,7 +295,7 @@ public class RoleService { ...@@ -291,7 +295,7 @@ public class RoleService {
RoleEntity roleEntity = new RoleEntity(); RoleEntity roleEntity = new RoleEntity();
roleEntity.setName(roleInfo.getName()); roleEntity.setName(roleInfo.getName());
roleEntity.setCreatedBy(roleInfo.getCreatedBy()); roleEntity.setCreatedBy(roleInfo.getCreatedBy());
roleEntity.setCreatedTime(LocalDateTime.now()); roleEntity.setCreatedTime(new Date());
roleEntity.setNotes(roleInfo.getNotes()); roleEntity.setNotes(roleInfo.getNotes());
return roleEntity; return roleEntity;
} }
......
package com.dituhui.pea.user.service;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.dituhui.pea.common.Result;
import com.dituhui.pea.pojo.RoleInfo;
import com.dituhui.pea.pojo.role.RoleResourceInfo;
import com.dituhui.pea.user.dao.RoleDao;
import com.dituhui.pea.user.dao.RoleDao2;
import com.dituhui.pea.user.dao.RoleResourceDao;
import com.dituhui.pea.user.entity.RoleEntity;
import com.dituhui.pea.user.entity.RoleEntity2;
import com.dituhui.pea.user.entity.RoleResourceEntity;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service
@Slf4j
public class RoleService2 {
@Autowired
RoleDao2 roleDao;
@Autowired
RoleResourceDao roleResourceDao;
@Transactional
public Result<RoleInfo> addRole(RoleInfo roleInfo) {
RoleEntity2 roleEntity = BeanUtil.copyProperties(roleInfo, RoleEntity2.class);
// RoleEntity roleEntity = assembleRole(roleInfo);
log.info("新增角色入参:" + JSONObject.toJSONString(roleEntity));
roleEntity = roleDao.save(roleEntity);
// roleInfo = BeanUtil.copyProperties(roleEntity, RoleInfo.class);
roleInfo.setId(roleEntity.getId());
List<RoleResourceInfo> resourceInfos = roleInfo.getResourceInfos();
if (CollectionUtils.isNotEmpty(resourceInfos)) {
for (RoleResourceInfo resourceInfo : resourceInfos) {
RoleResourceEntity roleResourceEntity = assembleRoleResource(roleInfo.getId(), resourceInfo.getResourceId());
roleResourceDao.save(roleResourceEntity);
}
}
log.info("新增角色信息:" + JSONObject.toJSONString(roleInfo));
return Result.success(roleInfo);
}
private RoleResourceEntity assembleRoleResource(String roleId, String resourceId) {
RoleResourceEntity roleResourceEntity = new RoleResourceEntity();
roleResourceEntity.setRoleId(roleId);
roleResourceEntity.setResourceId(resourceId);
return roleResourceEntity;
}
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!