zhouhao 8 vuotta sitten
vanhempi
commit
fb07e9f12f
11 muutettua tiedostoa jossa 63 lisäystä ja 46 poistoa
  1. 8 1
      hsweb-commons/hsweb-commons-entity/src/main/java/org/hswebframework/web/commons/entity/SimpleGenericEntity.java
  2. 2 3
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/AbstractService.java
  3. 16 5
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/ActionEntity.java
  4. 1 1
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/PermissionEntity.java
  5. 3 6
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/SimplePermissionEntity.java
  6. 7 7
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/SimpleRoleEntity.java
  7. 10 10
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/SimpleUserEntity.java
  8. 2 0
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/UserEntity.java
  9. 4 4
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/bind/SimpleBindPermissionRoleEntity.java
  10. 9 9
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/bind/SimpleBindRoleUserEntity.java
  11. 1 0
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-service/hsweb-system-authorization-service-simple/src/main/java/org/hswebframework/web/service/authorization/simple/SimplePermissionService.java

+ 8 - 1
hsweb-commons/hsweb-commons-entity/src/main/java/org/hswebframework/web/commons/entity/SimpleGenericEntity.java

@@ -70,5 +70,12 @@ public abstract class SimpleGenericEntity<PK> implements GenericEntity<PK> {
     }
 
     @Override
-    public abstract CloneableEntity clone();
+    @SuppressWarnings("unchecked")
+    public SimpleGenericEntity<PK> clone() {
+        try {
+            return (SimpleGenericEntity) super.clone();
+        } catch (CloneNotSupportedException e) {
+            throw new RuntimeException(e);
+        }
+    }
 }

+ 2 - 3
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/AbstractService.java

@@ -40,9 +40,8 @@ public abstract class AbstractService<E extends Entity, PK> implements CreateEnt
 
     @SuppressWarnings("unchecked")
     public AbstractService() {
-        Class userClass = org.springframework.util.ClassUtils.getUserClass(this);
-        primaryKeyType = (Class<PK>) ClassUtils.getGenericType(userClass, 1);
-        entityType = (Class<E>) ClassUtils.getGenericType(userClass, 0);
+        primaryKeyType = (Class<PK>) ClassUtils.getGenericType(this.getClass(), 1);
+        entityType = (Class<E>) ClassUtils.getGenericType(this.getClass(), 0);
     }
 
     protected boolean entityFactoryIsEnabled() {

+ 16 - 5
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/ActionEntity.java

@@ -1,5 +1,7 @@
 package org.hswebframework.web.entity.authorization;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.serializer.SerializerFeature;
 import org.hswebframework.web.commons.entity.CloneableEntity;
 
 import java.util.Arrays;
@@ -47,11 +49,20 @@ public class ActionEntity implements CloneableEntity {
 
     @Override
     public ActionEntity clone() {
-        ActionEntity target = new ActionEntity();
-        target.setAction(getAction());
-        target.setDescribe(getDescribe());
-        target.setDefaultCheck(isDefaultCheck());
-        return target;
+        try {
+            return (ActionEntity) super.clone();
+        } catch (CloneNotSupportedException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    public static void main(String[] args) {
+        SimplePermissionEntity permissionEntity = new SimplePermissionEntity();
+        permissionEntity.setActions(ActionEntity.create("test"));
+        permissionEntity.setName("test");
+        SimplePermissionEntity clone = permissionEntity.clone();
+        permissionEntity.getActions().clear();
+        System.out.println(JSON.toJSONString(clone, SerializerFeature.PrettyFormat));
     }
 
     public static List<ActionEntity> create(String... actions) {

+ 1 - 1
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/PermissionEntity.java

@@ -17,7 +17,7 @@ public interface PermissionEntity extends GenericEntity<String> {
 
     String getDescribe();
 
-    byte getStatus();
+    Byte getStatus();
 
     void setName(String name);
 

+ 3 - 6
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/SimplePermissionEntity.java

@@ -18,7 +18,7 @@ public class SimplePermissionEntity extends SimpleGenericEntity<String> implemen
 
     private String describe;
 
-    private Byte status = 1;
+    private Byte status;
 
     //可选事件
     private List<ActionEntity> actions;
@@ -43,7 +43,7 @@ public class SimplePermissionEntity extends SimpleGenericEntity<String> implemen
         this.describe = describe;
     }
 
-    public byte getStatus() {
+    public Byte getStatus() {
         return status;
     }
 
@@ -83,12 +83,9 @@ public class SimplePermissionEntity extends SimpleGenericEntity<String> implemen
 
     @Override
     public SimplePermissionEntity clone() {
-        SimplePermissionEntity target = new SimplePermissionEntity();
-        target.setId(getId());
+        SimplePermissionEntity target = (SimplePermissionEntity) super.clone();
         if (actions != null)
             target.setActions(getActions().stream().map(ActionEntity::clone).collect(Collectors.toList()));
-        target.setDescribe(getDescribe());
-        target.setStatus(getStatus());
         return target;
     }
 

+ 7 - 7
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/SimpleRoleEntity.java

@@ -41,13 +41,13 @@ public class SimpleRoleEntity extends SimpleGenericEntity<String> implements Rol
     }
 
     @Override
-    public SimpleGenericEntity<String> clone() {
-        SimpleRoleEntity target = new SimpleRoleEntity();
-        target.setId(getId());
-        target.setName(getName());
-        target.setDescribe(getDescribe());
-        target.setProperties(cloneProperties());
-        target.setEnabled(isEnabled());
+    public SimpleRoleEntity clone() {
+        SimpleRoleEntity target = ((SimpleRoleEntity) super.clone());
+//        target.setId(getId());
+//        target.setName(getName());
+//        target.setDescribe(getDescribe());
+//        target.setProperties(cloneProperties());
+//        target.setEnabled(isEnabled());
         return target;
     }
 }

+ 10 - 10
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/SimpleUserEntity.java

@@ -111,16 +111,16 @@ public class SimpleUserEntity extends SimpleGenericEntity<String> implements Use
 
     @Override
     public SimpleUserEntity clone() {
-        SimpleUserEntity target = new SimpleUserEntity();
-        target.setId(getId());
-        target.setName(getName());
-        target.setUsername(getUsername());
-        target.setPassword(getPassword());
-        target.setCreateTime(getCreateTime());
-        target.setCreatorId(getCreatorId());
-        target.setEnabled(isEnabled());
-        target.setLastLoginTime(getLastLoginTime());
-        target.setLastLoginIp(getLastLoginIp());
+        SimpleUserEntity target = ((SimpleUserEntity) super.clone());
+//        target.setId(getId());
+//        target.setName(getName());
+//        target.setUsername(getUsername());
+//        target.setPassword(getPassword());
+//        target.setCreateTime(getCreateTime());
+//        target.setCreatorId(getCreatorId());
+//        target.setEnabled(isEnabled());
+//        target.setLastLoginTime(getLastLoginTime());
+//        target.setLastLoginIp(getLastLoginIp());
         return target;
     }
 }

+ 2 - 0
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/UserEntity.java

@@ -18,6 +18,7 @@
 
 package org.hswebframework.web.entity.authorization;
 
+import org.hswebframework.web.commons.entity.CloneableEntity;
 import org.hswebframework.web.commons.entity.GenericEntity;
 import org.hswebframework.web.commons.entity.RecordCreationEntity;
 
@@ -58,5 +59,6 @@ public interface UserEntity extends GenericEntity<String>, RecordCreationEntity
 
     void setLastLoginIp(String lastLoginIp);
 
+    @Override
     UserEntity clone();
 }

+ 4 - 4
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/bind/SimpleBindPermissionRoleEntity.java

@@ -26,10 +26,10 @@ public class SimpleBindPermissionRoleEntity extends SimpleRoleEntity implements
 
     @Override
     public SimpleBindPermissionRoleEntity clone() {
-        SimpleBindPermissionRoleEntity target = new SimpleBindPermissionRoleEntity();
-        target.setId(getId());
-        target.setName(getName());
-        target.setDescribe(getDescribe());
+        SimpleBindPermissionRoleEntity target = ((SimpleBindPermissionRoleEntity) super.clone());
+//        target.setId(getId());
+//        target.setName(getName());
+//        target.setDescribe(getDescribe());
         if (permissions != null && !permissions.isEmpty()) {
             target.permissions = permissions.stream().map(SimplePermissionRoleEntity::clone).collect(Collectors.toList());
         }

+ 9 - 9
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-entity/src/main/java/org/hswebframework/web/entity/authorization/bind/SimpleBindRoleUserEntity.java

@@ -26,15 +26,15 @@ public class SimpleBindRoleUserEntity extends SimpleUserEntity implements BindRo
 
     @Override
     public SimpleBindRoleUserEntity clone() {
-        SimpleBindRoleUserEntity target = new SimpleBindRoleUserEntity();
-        target.setId(getId());
-        target.setName(getName());
-        target.setCreateTime(getCreateTime());
-        target.setCreatorId(getCreatorId());
-        target.setEnabled(isEnabled());
-        target.setLastLoginIp(getLastLoginIp());
-        target.setLastLoginTime(getLastLoginTime());
-        target.setSalt(getSalt());
+        SimpleBindRoleUserEntity target = ((SimpleBindRoleUserEntity) super.clone());
+//        target.setId(getId());
+//        target.setName(getName());
+//        target.setCreateTime(getCreateTime());
+//        target.setCreatorId(getCreatorId());
+//        target.setEnabled(isEnabled());
+//        target.setLastLoginIp(getLastLoginIp());
+//        target.setLastLoginTime(getLastLoginTime());
+//        target.setSalt(getSalt());
         if (roles != null)
             target.setRoles(new ArrayList<>(getRoles()));
         if (getProperties() != null)

+ 1 - 0
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-service/hsweb-system-authorization-service-simple/src/main/java/org/hswebframework/web/service/authorization/simple/SimplePermissionService.java

@@ -22,4 +22,5 @@ public class SimplePermissionService extends GenericEntityService<PermissionEnti
     public PermissionDao getDao() {
         return permissionDao;
     }
+
 }