Prechádzať zdrojové kódy

优化delete 返回值

zhouhao 6 rokov pred
rodič
commit
e52c04801d
30 zmenil súbory, kde vykonal 45 pridanie a 49 odobranie
  1. 1 1
      hsweb-commons/hsweb-commons-controller/src/main/java/org/hswebframework/web/controller/CrudController.java
  2. 3 3
      hsweb-commons/hsweb-commons-controller/src/main/java/org/hswebframework/web/controller/DeleteController.java
  3. 1 1
      hsweb-commons/hsweb-commons-controller/src/main/java/org/hswebframework/web/controller/SimpleCrudController.java
  4. 1 1
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-api/src/main/java/org/hswebframework/web/service/CrudService.java
  5. 2 2
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-api/src/main/java/org/hswebframework/web/service/DeleteService.java
  6. 8 6
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/AbstractTreeSortService.java
  7. 1 1
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/DefaultDSLDeleteService.java
  8. 2 2
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/DefaultDeleteService.java
  9. 1 1
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/EnableCacheAllEvictGenericEntityService.java
  10. 1 1
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/EnableCacheAllEvictTreeSortService.java
  11. 1 1
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/EnableCacheGenericEntityService.java
  12. 1 1
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/EnableCacheTreeSortService.java
  13. 4 2
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/GenericEntityService.java
  14. 1 1
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/GenericService.java
  15. 0 8
      hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/test/java/org/hswebframework/web/service/GenericEntityServiceTest.java
  16. 1 1
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-local/src/main/java/org/hswebframework/web/service/authorization/simple/SimpleAuthorizationSettingService.java
  17. 1 1
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-local/src/main/java/org/hswebframework/web/service/authorization/simple/SimpleMenuGroupService.java
  18. 1 1
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-local/src/main/java/org/hswebframework/web/service/authorization/simple/SimpleMenuService.java
  19. 3 3
      hsweb-system/hsweb-system-authorization/hsweb-system-authorization-local/src/main/java/org/hswebframework/web/service/authorization/simple/SimplePermissionService.java
  20. 1 1
      hsweb-system/hsweb-system-dictionary/hsweb-system-dictionary-local/src/main/java/org/hswebframework/web/dictionary/simple/SimpleDictionaryItemService.java
  21. 1 1
      hsweb-system/hsweb-system-dictionary/hsweb-system-dictionary-local/src/main/java/org/hswebframework/web/dictionary/simple/SimpleDictionaryService.java
  22. 1 1
      hsweb-system/hsweb-system-dynamic-form/hsweb-system-dynamic-form-local/src/main/java/org/hswebframework/web/service/form/simple/SimpleDynamicFormService.java
  23. 1 1
      hsweb-system/hsweb-system-file/hsweb-system-file-local/src/main/java/org/hswebframework/web/service/file/simple/SimpleFileInfoService.java
  24. 1 1
      hsweb-system/hsweb-system-oauth2-client/hsweb-system-oauth2-client-local/src/main/java/org/hswebframework/web/service/oauth2/client/simple/SimpleOAuth2ServerConfigService.java
  25. 1 1
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimpleDepartmentService.java
  26. 1 1
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimpleDistrictService.java
  27. 1 1
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimpleOrganizationalService.java
  28. 1 1
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimplePersonService.java
  29. 1 1
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimplePositionService.java
  30. 1 1
      hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimpleRelationDefineService.java

+ 1 - 1
hsweb-commons/hsweb-commons-controller/src/main/java/org/hswebframework/web/controller/CrudController.java

@@ -38,7 +38,7 @@ public interface CrudController<E, PK, Q extends Entity, M>
         extends QueryController<E, PK, Q>
         , UpdateController<E, PK, M>
         , CreateController<E, PK, M>
-        , DeleteController<PK> {
+        , DeleteController<E,PK> {
 
     @Override
     @SuppressWarnings("unchecked")

+ 3 - 3
hsweb-commons/hsweb-commons-controller/src/main/java/org/hswebframework/web/controller/DeleteController.java

@@ -35,15 +35,15 @@ import static org.hswebframework.web.controller.message.ResponseMessage.ok;
  *
  * @author zhouhao
  */
-public interface DeleteController<PK> {
+public interface DeleteController<E,PK> {
 
     @Authorize(ignore = true)
-    DeleteService<PK> getService();
+    DeleteService<E,PK> getService();
 
     @Authorize(action = Permission.ACTION_DELETE)
     @DeleteMapping(path = "/{id:.+}")
     @ApiOperation("删除数据")
-    default ResponseMessage deleteByPrimaryKey(@PathVariable PK id) {
+    default ResponseMessage<E> deleteByPrimaryKey(@PathVariable PK id) {
         return ok(getService().deleteByPk(id));
     }
 

+ 1 - 1
hsweb-commons/hsweb-commons-controller/src/main/java/org/hswebframework/web/controller/SimpleCrudController.java

@@ -38,7 +38,7 @@ public interface SimpleCrudController<E, PK, Q extends Entity>
         extends QueryController<E, PK, Q>
         , UpdateController<E, PK, E>
         , CreateController<E, PK, E>
-        , DeleteController<PK> {
+        , DeleteController<E,PK> {
 
     @Override
     @SuppressWarnings("unchecked")

+ 1 - 1
hsweb-commons/hsweb-commons-service/hsweb-commons-service-api/src/main/java/org/hswebframework/web/service/CrudService.java

@@ -28,7 +28,7 @@ public interface CrudService<E, PK> extends
         QueryByEntityService<E>,
         UpdateService<E,PK>,
         InsertService<E, PK>,
-        DeleteService<PK>,
+        DeleteService<E,PK>,
         CreateEntityService<E>,
         QueryService<E, PK> {
 }

+ 2 - 2
hsweb-commons/hsweb-commons-service/hsweb-commons-service-api/src/main/java/org/hswebframework/web/service/DeleteService.java

@@ -21,13 +21,13 @@ package org.hswebframework.web.service;
 /**
  * @author zhouhao
  */
-public interface DeleteService<PK> extends Service {
+public interface DeleteService<E,PK> extends Service {
     /**
      * 根据主键删除记录
      *
      * @param pk 主键
      * @return 影响记录数
      */
-    int deleteByPk(PK pk);
+    E deleteByPk(PK pk);
 
 }

+ 8 - 6
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/AbstractTreeSortService.java

@@ -168,15 +168,17 @@ public abstract class AbstractTreeSortService<E extends TreeSortSupportEntity<PK
     }
 
     @Override
-    public int deleteByPk(PK id) {
+    public E deleteByPk(PK id) {
         E old = selectByPk(id);
         assertNotNull(old);
         if (StringUtils.isEmpty(old.getPath())) {
-            return getDao().deleteByPk(id);
+            getDao().deleteByPk(id);
+        } else {
+            DefaultDSLDeleteService.createDelete(getDao())
+                    // where path like 'path%'
+                    .where().like$(TreeSupportEntity.path, old.getPath())
+                    .exec();
         }
-        return DefaultDSLDeleteService.createDelete(getDao())
-                // where path like 'path%'
-                .where().like$(TreeSupportEntity.path, old.getPath())
-                .exec();
+        return old;
     }
 }

+ 1 - 1
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/DefaultDSLDeleteService.java

@@ -25,7 +25,7 @@ import org.hswebframework.web.dao.dynamic.DeleteByEntityDao;
 /**
  * @author zhouhao
  */
-public interface DefaultDSLDeleteService<PK> extends DefaultDeleteService<PK> {
+public interface DefaultDSLDeleteService<E, PK> extends DefaultDeleteService<E, PK> {
     DeleteByEntityDao getDao();
 
     default Delete<DeleteParamEntity> createDelete() {

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

@@ -21,7 +21,7 @@ package org.hswebframework.web.service;
 /**
  * @author zhouhao
  */
-public interface DefaultDeleteService<PK> extends DeleteService<PK> {
+public interface DefaultDeleteService<E,PK> extends DeleteService<E,PK> {
     /**
      * 根据主键删除记录
      *
@@ -29,5 +29,5 @@ public interface DefaultDeleteService<PK> extends DeleteService<PK> {
      * @return 影响记录数
      */
     @Override
-    int deleteByPk(PK pk);
+    E deleteByPk(PK pk);
 }

+ 1 - 1
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/EnableCacheAllEvictGenericEntityService.java

@@ -42,7 +42,7 @@ public abstract class EnableCacheAllEvictGenericEntityService<E extends GenericE
 
     @Override
     @CacheEvict(allEntries = true)
-    public int deleteByPk(PK pk) {
+    public E deleteByPk(PK pk) {
         return super.deleteByPk(pk);
     }
 

+ 1 - 1
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/EnableCacheAllEvictTreeSortService.java

@@ -64,7 +64,7 @@ public abstract class EnableCacheAllEvictTreeSortService<E extends TreeSortSuppo
 
     @Override
     @CacheEvict(allEntries = true)
-    public int deleteByPk(PK pk) {
+    public E deleteByPk(PK pk) {
         return super.deleteByPk(pk);
     }
 

+ 1 - 1
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/EnableCacheGenericEntityService.java

@@ -63,7 +63,7 @@ public abstract class EnableCacheGenericEntityService<E extends GenericEntity<PK
                     @CacheEvict(key = "'count'")
             }
     )
-    public int deleteByPk(PK pk) {
+    public E deleteByPk(PK pk) {
         return super.deleteByPk(pk);
     }
 

+ 1 - 1
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/EnableCacheTreeSortService.java

@@ -65,7 +65,7 @@ public abstract class EnableCacheTreeSortService<E extends TreeSortSupportEntity
                     @CacheEvict(key = "'count'")
             }
     )
-    public int deleteByPk(PK pk) {
+    public E deleteByPk(PK pk) {
         return super.deleteByPk(pk);
     }
 

+ 4 - 2
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/GenericEntityService.java

@@ -66,9 +66,11 @@ public abstract class GenericEntityService<E extends GenericEntity<PK>, PK>
     }
 
     @Override
-    public int deleteByPk(PK pk) {
+    public E deleteByPk(PK pk) {
         Assert.notNull(pk, "parameter can not be null");
-        return getDao().deleteByPk(pk);
+        E old = selectByPk(pk);
+        getDao().deleteByPk(pk);
+        return old;
     }
 
     @Override

+ 1 - 1
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/main/java/org/hswebframework/web/service/GenericService.java

@@ -32,7 +32,7 @@ import org.hswebframework.web.dao.CrudDao;
 public interface GenericService<E, PK> extends
         DefaultDSLQueryService<E, PK>,
         DefaultDSLUpdateService<E,PK>,
-        DefaultDSLDeleteService<PK>,
+        DefaultDSLDeleteService<E,PK>,
         CrudService<E, PK> {
     @Override
     CrudDao<E, PK> getDao();

+ 0 - 8
hsweb-commons/hsweb-commons-service/hsweb-commons-service-simple/src/test/java/org/hswebframework/web/service/GenericEntityServiceTest.java

@@ -122,12 +122,4 @@ public class GenericEntityServiceTest {
         Assert.assertEquals(i, 1);
     }
 
-    @Test
-    public void testDelete() {
-        int i = entityService.deleteByPk("test");
-        Assert.assertEquals(i, 1);
-        i = entityService.deleteByPk("test2");
-        Assert.assertEquals(i, 0);
-    }
-
 }

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

@@ -169,7 +169,7 @@ public class SimpleAuthorizationSettingService extends GenericEntityService<Auth
 
     @Override
     @CacheEvict(cacheNames = {CacheConstants.USER_AUTH_CACHE_NAME, CacheConstants.USER_MENU_CACHE_NAME}, allEntries = true)
-    public int deleteByPk(String id) {
+    public AuthorizationSettingEntity deleteByPk(String id) {
         Objects.requireNonNull(id, "id can not be null");
         authorizationSettingMenuService.deleteBySettingId(id);
         DefaultDSLDeleteService.createDelete(authorizationSettingDetailDao)

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

@@ -125,7 +125,7 @@ public class SimpleMenuGroupService
 
     @Override
     @CacheEvict(allEntries = true)
-    public int deleteByPk(String id) {
+    public MenuGroupEntity deleteByPk(String id) {
         return super.deleteByPk(id);
     }
 

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

@@ -103,7 +103,7 @@ public class SimpleMenuService
 
     @Override
     @CacheEvict(cacheNames = {CacheConstants.MENU_CACHE_NAME, CacheConstants.USER_MENU_CACHE_NAME}, allEntries = true)
-    public int deleteByPk(String id) {
+    public MenuEntity deleteByPk(String id) {
         return super.deleteByPk(id);
     }
 }

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

@@ -51,9 +51,9 @@ public class SimplePermissionService extends GenericEntityService<PermissionEnti
     }
 
     @Override
-    public int deleteByPk(String id) {
-        int len = super.deleteByPk(id);
+    public PermissionEntity deleteByPk(String id) {
+        PermissionEntity old = super.deleteByPk(id);
         eventPublisher.publishEvent(new ClearUserAuthorizationCacheEvent(null, true));
-        return len;
+        return old;
     }
 }

+ 1 - 1
hsweb-system/hsweb-system-dictionary/hsweb-system-dictionary-local/src/main/java/org/hswebframework/web/dictionary/simple/SimpleDictionaryItemService.java

@@ -67,7 +67,7 @@ public class SimpleDictionaryItemService extends AbstractTreeSortService<Diction
     }
 
     @Override
-    public int deleteByPk(String id) {
+    public DictionaryItemEntity deleteByPk(String id) {
         DictionaryItemEntity entity = selectByPk(id);
         if (null != entity) {
             clearDictCache(entity.getDictId());

+ 1 - 1
hsweb-system/hsweb-system-dictionary/hsweb-system-dictionary-local/src/main/java/org/hswebframework/web/dictionary/simple/SimpleDictionaryService.java

@@ -67,7 +67,7 @@ public class SimpleDictionaryService extends GenericEntityService<DictionaryEnti
     }
 
     @Override
-    public int deleteByPk(String id) {
+    public DictionaryEntity deleteByPk(String id) {
         eventPublisher.publishEvent(new ClearDictionaryCacheEvent(id));
         return super.deleteByPk(id);
     }

+ 1 - 1
hsweb-system/hsweb-system-dynamic-form/hsweb-system-dynamic-form-local/src/main/java/org/hswebframework/web/service/form/simple/SimpleDynamicFormService.java

@@ -301,7 +301,7 @@ public class SimpleDynamicFormService extends GenericEntityService<DynamicFormEn
                     @CacheEvict(key = "'form-columns:'+#id"),
                     @CacheEvict(key = "'form_id:'+#id")
             })
-    public int deleteByPk(String id) {
+    public DynamicFormEntity deleteByPk(String id) {
         Objects.requireNonNull(id, "id can not be null");
 
         DefaultDSLDeleteService.createDelete(formColumnDao)

+ 1 - 1
hsweb-system/hsweb-system-file/hsweb-system-file-local/src/main/java/org/hswebframework/web/service/file/simple/SimpleFileInfoService.java

@@ -69,7 +69,7 @@ public class SimpleFileInfoService extends GenericEntityService<FileInfoEntity,
             @CacheEvict(key = "'id-or-md5:'+#id"),
             @CacheEvict(key = "'id-or-md5:'+#id")
     })
-    public int deleteByPk(String id) {
+    public FileInfoEntity deleteByPk(String id) {
         return super.deleteByPk(id);
     }
 

+ 1 - 1
hsweb-system/hsweb-system-oauth2-client/hsweb-system-oauth2-client-local/src/main/java/org/hswebframework/web/service/oauth2/client/simple/SimpleOAuth2ServerConfigService.java

@@ -71,7 +71,7 @@ public class SimpleOAuth2ServerConfigService extends GenericEntityService<OAuth2
 
     @Override
     @CacheEvict(key = "'conf-id:'+#id")
-    public int deleteByPk(String id) {
+    public OAuth2ServerConfigEntity deleteByPk(String id) {
         return super.deleteByPk(id);
     }
 

+ 1 - 1
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimpleDepartmentService.java

@@ -122,7 +122,7 @@ public class SimpleDepartmentService
     }
 
     @Override
-    public int deleteByPk(String id) {
+    public DepartmentEntity deleteByPk(String id) {
         if (DefaultDSLQueryService.createQuery(positionDao)
                 .where(PositionEntity.departmentId, id)
                 .total() > 0) {

+ 1 - 1
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimpleDistrictService.java

@@ -84,7 +84,7 @@ public class SimpleDistrictService extends EnableCacheAllEvictTreeSortService<Di
 
     @Override
     @CacheEvict(allEntries = true)
-    public int deleteByPk(String id) {
+    public DistrictEntity deleteByPk(String id) {
         if (DefaultDSLQueryService.createQuery(organizationalDao).where(OrganizationalEntity.districtId, id).total() > 0) {
             throw new BusinessException("行政区域下存在机构信息,无法删除!");
         }

+ 1 - 1
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimpleOrganizationalService.java

@@ -69,7 +69,7 @@ public class SimpleOrganizationalService extends EnableCacheAllEvictTreeSortServ
 
     @Override
     @CacheEvict(allEntries = true)
-    public int deleteByPk(String id) {
+    public OrganizationalEntity deleteByPk(String id) {
         if (DefaultDSLQueryService.createQuery(departmentDao)
                 .where(DepartmentEntity.orgId, id)
                 .total() > 0) {

+ 1 - 1
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimplePersonService.java

@@ -317,7 +317,7 @@ public class SimplePersonService extends GenericEntityService<PersonEntity, Stri
 
     @Override
     @CacheEvict(allEntries = true)
-    public int deleteByPk(String id) {
+    public PersonEntity deleteByPk(String id) {
         personPositionDao.deleteByPersonId(id);
         return super.deleteByPk(id);
     }

+ 1 - 1
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimplePositionService.java

@@ -63,7 +63,7 @@ public class SimplePositionService extends EnableCacheAllEvictTreeSortService<Po
 
     @Override
     @CacheEvict(allEntries = true)
-    public int deleteByPk(String id) {
+    public PositionEntity deleteByPk(String id) {
         if (!CollectionUtils.isEmpty(personDao.selectByPositionId(id))) {
             throw new BusinessException("岗位中还有人员,无法删除!");
         }

+ 1 - 1
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-local/src/main/java/org/hswebframework/web/service/organizational/simple/SimpleRelationDefineService.java

@@ -45,7 +45,7 @@ public class SimpleRelationDefineService extends EnableCacheGenericEntityService
     }
 
     @Override
-    public int deleteByPk(String pk) {
+    public RelationDefineEntity deleteByPk(String pk) {
         publisher.publishEvent(new ClearPersonCacheEvent());
         return super.deleteByPk(pk);
     }