zhouhao 7 年 前
コミット
f3a039d61e

+ 3 - 1
hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/HswebAutoConfiguration.java

@@ -78,7 +78,9 @@ public class HswebAutoConfiguration {
     @Primary
     @ConfigurationProperties(prefix = "fastjson")
     public FastJsonHttpMessageConverter fastJsonHttpMessageConverter(@Autowired(required = false) EntityFactory entityFactory) {
-        return new FastJsonHttpMessageConverter();
+        FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
+        converter.setEntityFactory(entityFactory);
+        return converter;
     }
 
     @Bean

+ 6 - 6
hsweb-starter/hsweb-spring-boot-starter/src/main/java/org/hswebframework/web/starter/convert/FastJsonHttpMessageConverter.java

@@ -89,12 +89,12 @@ public class FastJsonHttpMessageConverter extends AbstractHttpMessageConverter<O
     }
 
     public Object readByBytes(Class<?> clazz, byte[] bytes) {
-        if (clazz == String.class) return new String(bytes, charset);
-        if (entityFactory != null && (Entity.class.isAssignableFrom(clazz) || Model.class.isAssignableFrom(clazz))) {
-            @SuppressWarnings("unchecked")
-            Class tmp = entityFactory.getInstanceType(clazz);
-            if (tmp != null) clazz = tmp;
-        }
+//        if (clazz == String.class) return new String(bytes, charset);
+//        if (entityFactory != null && (Entity.class.isAssignableFrom(clazz) || Model.class.isAssignableFrom(clazz))) {
+//            @SuppressWarnings("unchecked")
+//            Class tmp = entityFactory.getInstanceType(clazz);
+//            if (tmp != null) clazz = tmp;
+//        }
         return JSON.parseObject(bytes, 0, bytes.length, charset.newDecoder(), clazz);
     }
 

+ 50 - 27
hsweb-system/hsweb-system-workflow/hsweb-system-workflow-flowable/pom.xml

@@ -100,10 +100,50 @@
             <artifactId>hsweb-datasource-api</artifactId>
             <version>${project.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.hswebframework.web</groupId>
+            <artifactId>hsweb-system-dynamic-form-service-api</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.hswebframework.web</groupId>
+            <artifactId>hsweb-access-logging-aop</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.hswebframework.web</groupId>
+            <artifactId>hsweb-system-organizational-service-api</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.hswebframework.web</groupId>
+            <artifactId>hsweb-system-organizational-authorization</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+       <!---->
+        <!--<dependency>-->
+            <!--<groupId>org.mybatis</groupId>-->
+            <!--<artifactId>mybatis-spring</artifactId>-->
+            <!--<version>RELEASE</version>-->
+        <!--</dependency>-->
+
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+
+        <!--               test             -->
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-classic</artifactId>
+            <scope>test</scope>
+        </dependency>
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
-            <scope>runtime</scope>
+            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>com.h2database</groupId>
@@ -127,20 +167,6 @@
             <version>4.3.7.RELEASE</version>
             <scope>test</scope>
         </dependency>
-        <dependency>
-            <groupId>org.mybatis</groupId>
-            <artifactId>mybatis-spring</artifactId>
-            <version>RELEASE</version>
-        </dependency>
-        <dependency>
-            <groupId>ch.qos.logback</groupId>
-            <artifactId>logback-classic</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-api</artifactId>
-        </dependency>
         <dependency>
             <groupId>org.hswebframework.web</groupId>
             <artifactId>hsweb-spring-boot-starter</artifactId>
@@ -154,30 +180,27 @@
             <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
-        <dependency>
-            <groupId>org.hswebframework.web</groupId>
-            <artifactId>hsweb-tests</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.hswebframework.web</groupId>
-            <artifactId>hsweb-system-dynamic-form-service-api</artifactId>
-            <version>${project.version}</version>
-        </dependency>
         <dependency>
             <groupId>org.hswebframework.web</groupId>
             <artifactId>hsweb-authorization-basic</artifactId>
             <version>${project.version}</version>
+            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.hswebframework.web</groupId>
-            <artifactId>hsweb-access-logging-aop</artifactId>
+            <artifactId>hsweb-system-organizational-starter</artifactId>
             <version>${project.version}</version>
+            <scope>test</scope>
         </dependency>
+
         <dependency>
             <groupId>org.hswebframework.web</groupId>
-            <artifactId>hsweb-system-organizational-starter</artifactId>
+            <artifactId>hsweb-tests</artifactId>
             <version>${project.version}</version>
+            <scope>test</scope>
         </dependency>
+        <!--               test             -->
+
+
     </dependencies>
 </project>

+ 1 - 1
hsweb-system/hsweb-system-workflow/hsweb-system-workflow-flowable/src/main/java/org/hswebframework/web/workflow/flowable/FlowableAutoConfiguration.java

@@ -30,7 +30,7 @@ public class FlowableAutoConfiguration {
         return configuration -> {
             configuration
                     .setAsyncExecutorActivate(false)
-                    .setDatabaseSchemaUpdate("false")
+//                    .setDatabaseSchemaUpdate("false")
                     .setJobExecutorActivate(false)
                     .setActivityFontName("宋体")
                     .setLabelFontName("宋体")

+ 15 - 15
hsweb-system/hsweb-system-workflow/hsweb-system-workflow-flowable/src/main/java/org/hswebframework/web/workflow/flowable/controller/FlowableUtilsController.java

@@ -2,6 +2,7 @@ package org.hswebframework.web.workflow.flowable.controller;
 
 import org.activiti.engine.impl.pvm.process.ActivityImpl;
 import org.hswebframework.web.commons.entity.DataStatus;
+import org.hswebframework.web.commons.entity.param.QueryParamEntity;
 import org.hswebframework.web.controller.message.ResponseMessage;
 import org.hswebframework.web.entity.organizational.RelationDefineEntity;
 import org.hswebframework.web.entity.organizational.SimpleRelationDefineEntity;
@@ -24,30 +25,29 @@ import java.util.Map;
 public class FlowableUtilsController {
 
     @Autowired
-    BpmActivityService bpmActivityService;
+    BpmActivityService    bpmActivityService;
     @Autowired
     RelationDefineService relationDefineService;
     @Autowired
-    RelationInfoService relationInfoService;
+    RelationInfoService   relationInfoService;
 
     @GetMapping("{procDefId}/acts")
-    public ResponseMessage<Map<String, Object>> acts(@PathVariable String procDefId){
+    public ResponseMessage<Map<String, Object>> acts(@PathVariable String procDefId) {
         Map<String, Object> map = new HashMap<>();
-        List<ActivityImpl> activities = bpmActivityService.getActivitiesById(procDefId,null);
-        for (ActivityImpl activity: activities) {
-            if(activity.getProperty("type").equals("userTask")) map.put(activity.getId(), activity.getProperty("name"));
+        List<ActivityImpl> activities = bpmActivityService.getActivitiesById(procDefId, null);
+        for (ActivityImpl activity : activities) {
+            if (activity.getProperty("type").equals("userTask")) map.put(activity.getId(), activity.getProperty("name"));
         }
         return ResponseMessage.ok(map);
     }
-
-    @GetMapping("relation-define")
-    public ResponseMessage<List<RelationDefineEntity>> getRelationDefines(){
-        SimpleRelationDefineEntity entity = new SimpleRelationDefineEntity();
-        entity.setStatus(DataStatus.STATUS_ENABLED);
-        List<RelationDefineEntity> list = relationDefineService.select(entity);
-
-        return ResponseMessage.ok(list);
-    }
+// see hsweb-system-organizational-controller
+//    @GetMapping("relation-define")
+//    public ResponseMessage<List<RelationDefineEntity>> getRelationDefines() {
+//        List<RelationDefineEntity> list = relationDefineService
+//                .select(single(RelationDefineEntity.status, DataStatus.STATUS_ENABLED));
+//
+//        return ResponseMessage.ok(list);
+//    }
 
 //    @PostMapping("act/{actId}-{defineId}")
 //    public ResponseMessage

+ 5 - 1
hsweb-system/hsweb-system-workflow/hsweb-system-workflow-flowable/src/test/java/org/hswebframework/web/workflow/flowable/TestApplication.java

@@ -4,6 +4,7 @@ import org.hswebframework.web.service.organizational.RelationDefineService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.test.context.ActiveProfiles;
 
 /**
  * TODO 完成注释
@@ -11,11 +12,14 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
  * @author zhouhao
  */
 @SpringBootApplication
+@ActiveProfiles("dev")
 public class TestApplication {
     @Autowired
     RelationDefineService relationDefineService;
 
     public static void main(String[] args) {
-        SpringApplication.run(TestApplication.class, args);
+        SpringApplication application = new SpringApplication(TestApplication.class);
+        application.setAdditionalProfiles("dev");
+        application.run(args);
     }
 }

+ 4 - 23
hsweb-system/hsweb-system-workflow/hsweb-system-workflow-flowable/src/test/resources/application-dev.yml

@@ -1,25 +1,6 @@
 spring:
-    aop:
-        auto: true
-        proxy-target-class: true
     datasource:
-           url : jdbc:mysql://localhost:3306/hsweb?useSSL=false&useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false
-           username : root
-           password : root
-           driver-class-name : com.mysql.jdbc.Driver
-    datasource:
-       url : jdbc:h2:file:./target/workflow-test
-       username : sa
-       password :
-       type: com.alibaba.druid.pool.DruidDataSource
-    cache:
-       type: simple
-
-logging:
-  level:
-      org.flowable: debug
-#      org.activiti: debug
-mybatis:
-  dynamic-datasource: false
-server:
-  port: 8088
+       url : jdbc:mysql://localhost:3306/hsweb?useSSL=false&useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false
+       username : root
+       password : root
+       type: com.alibaba.druid.pool.DruidDataSource

+ 1 - 2
hsweb-system/hsweb-system-workflow/hsweb-system-workflow-flowable/src/test/resources/application.yml

@@ -7,7 +7,6 @@ spring:
        username : sa
        password :
        type: com.alibaba.druid.pool.DruidDataSource
-       driver-class-name : org.h2.Driver
     cache:
        type: simple
 
@@ -18,4 +17,4 @@ logging:
 mybatis:
   dynamic-datasource: false
 server:
-  port: 8080
+  port: 8088