Selaa lähdekoodia

适配qmth-boot:1.0.4版本

luoshi 2 vuotta sitten
vanhempi
commit
1248d23523

+ 4 - 0
api-demo/pom.xml

@@ -49,6 +49,10 @@
             <groupId>com.qmth.boot</groupId>
             <artifactId>core-solar</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.qmth.boot</groupId>
+            <artifactId>core-sms</artifactId>
+        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>

+ 2 - 2
api-demo/src/main/java/com/qmth/demo/api/ApiDemoApplication.java

@@ -14,8 +14,8 @@ import java.time.Duration;
  * api demo application
  */
 @SpringBootApplication
-@MapperScan("com.qmth.demo.*")
-@RetrofitScan("com.qmth.demo.*")
+@MapperScan("com.qmth.demo")
+@RetrofitScan("com.qmth.demo")
 public class ApiDemoApplication {
 
     //    @Resource

+ 0 - 4
api-demo/src/main/java/com/qmth/demo/api/auth/DemoAuthorizationService.java

@@ -12,8 +12,4 @@ public class DemoAuthorizationService implements AuthorizationService<DemoSessio
         return new DemoSession(identity, "123456");
     }
 
-    @Override
-    public boolean hasPermission(DemoSession demoSession, String path) {
-        return true;
-    }
 }

+ 22 - 0
api-demo/src/main/java/com/qmth/demo/api/controller/CacheController.java

@@ -10,6 +10,8 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
+import java.util.LinkedList;
+import java.util.List;
 
 @RestController
 @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/cache")
@@ -42,4 +44,24 @@ public class CacheController {
         return demoCacheService.clear(key);
     }
 
+    @RequestMapping("/mget")
+    public Object mget(@RequestParam String key) {
+        Object obj = cacheService.get("test", key);
+        if (obj != null) {
+            List<String> list = (List<String>) obj;
+            return list.size();
+        }
+        return 0;
+    }
+
+    @RequestMapping("/mput")
+    public Object mput(@RequestParam String key, @RequestParam Integer size) {
+        List<String> list = new LinkedList<>();
+        for (int i = 0; i < size; i++) {
+            list.add(String.valueOf(i));
+        }
+        cacheService.put("test", key, list);
+        return size;
+    }
+
 }

+ 14 - 2
api-demo/src/main/java/com/qmth/demo/api/controller/IndexController.java

@@ -7,6 +7,7 @@ import com.qmth.boot.api.constant.ApiConstant;
 import com.qmth.boot.core.enums.Platform;
 import com.qmth.boot.core.security.config.SecurityProperties;
 import com.qmth.boot.core.uid.service.UidService;
+import io.micrometer.core.annotation.Timed;
 import org.apache.commons.lang3.RandomUtils;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -28,6 +29,11 @@ public class IndexController {
     @Resource
     private SecurityProperties securityProperties;
 
+    @RequestMapping("/config")
+    public Object config(HttpServletRequest request) {
+        return request.getAttribute(ApiConstant.ATTRIBUTE_AAC_CONFIG);
+    }
+
     @RequestMapping("/strict")
     @Aac(strict = BOOL.TRUE)
     public Object strict() {
@@ -52,8 +58,8 @@ public class IndexController {
         return true;
     }
 
-    @RequestMapping("/config")
-    public Object config() {
+    @RequestMapping("/property")
+    public Object property() {
         return apiProperties;
     }
 
@@ -78,4 +84,10 @@ public class IndexController {
         request.setAttribute(ApiConstant.ATTRIBUTE_CALLER, String.valueOf(RandomUtils.nextInt()));
         return true;
     }
+
+    @RequestMapping("/metrics")
+    @Timed(value = "api_metrics", histogram = true)
+    public Object metrics(HttpServletRequest request) {
+        return true;
+    }
 }

+ 18 - 4
api-demo/src/main/java/com/qmth/demo/api/controller/RedisController.java

@@ -3,7 +3,9 @@ package com.qmth.demo.api.controller;
 import com.qmth.boot.api.annotation.Aac;
 import com.qmth.boot.api.annotation.BOOL;
 import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.boot.tools.models.KV;
 import org.redisson.api.RedissonClient;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
@@ -19,8 +21,8 @@ import java.util.Map;
 @Aac(strict = BOOL.FALSE, auth = BOOL.FALSE)
 public class RedisController {
 
-    //    @Resource
-    //    private RedisTemplate<String, Object> redisTemplate;
+    @Resource
+    private RedisTemplate<String, Object> redisTemplate;
 
     @Resource
     private RedissonClient redissonClient;
@@ -31,12 +33,24 @@ public class RedisController {
     }
 
     @RequestMapping("/put")
-    public Object put(@RequestParam String key, @RequestParam String value) {
+    public Object put(@RequestParam String key, @RequestParam Integer value) {
         //redisTemplate.opsForValue().set(key, value);
         redissonClient.getBucket(key).set(value);
         return true;
     }
 
+    @RequestMapping("/rget")
+    public Object rget(@RequestParam String key) {
+        return redisTemplate.opsForValue().get(key);
+    }
+
+    @RequestMapping("/rput")
+    public Object rput(@RequestParam String key, @RequestParam Integer value) {
+        redisTemplate.opsForValue().set(key, value);
+        //redissonClient.getBucket(key).set(KV.of(key, value));
+        return true;
+    }
+
     @RequestMapping("/hget")
     public Object hget(@RequestParam String[] key, @RequestParam String hashKey) {
         //return redisTemplate.opsForHash().multiGet(hashKey, Arrays.asList(key));
@@ -47,7 +61,7 @@ public class RedisController {
     public Object hput(@RequestParam String hashKey, @RequestParam String[] key, @RequestParam String[] value) {
         Map<String, Object> map = new HashMap<>();
         for (int i = 0; i < key.length; i++) {
-            map.put(key[i], value[i]);
+            map.put(key[i], KV.of(key[i], value[i]));
         }
         //        redisTemplate.opsForHash().putAll(hashKey, map);
         redissonClient.getMap(hashKey).putAll(map);

+ 31 - 0
api-demo/src/main/java/com/qmth/demo/api/controller/SmsController.java

@@ -0,0 +1,31 @@
+package com.qmth.demo.api.controller;
+
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.boot.core.sms.model.SmsSendRequest;
+import com.qmth.boot.core.sms.service.SmsService;
+import org.apache.commons.lang3.RandomStringUtils;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/sms")
+public class SmsController {
+
+    @Resource
+    private SmsService smsService;
+
+    @RequestMapping("/send")
+    public Object sendVerifySms(@RequestParam String phoneNumber, @RequestParam String signName,
+            @RequestParam String templateCode) {
+        SmsSendRequest request = new SmsSendRequest();
+        request.setPhoneNumber(phoneNumber);
+        request.setSignName(signName);
+        request.setTemplateCode(templateCode);
+        request.addParam("code", RandomStringUtils.random(4, false, true));
+        return smsService.sendSms(request);
+    }
+
+}

+ 10 - 10
api-demo/src/main/java/com/qmth/demo/api/controller/SolarController.java

@@ -21,18 +21,18 @@ public class SolarController {
     @Resource
     private SolarTestClient solarTestClient;
 
-    @RequestMapping("/app/info")
+    @RequestMapping("/app/info2")
     public Object appInfo(@RequestParam String accessKey, @RequestParam String accessSecret) {
         return solarTestClient.getAppInfo(new SignatureInfo(SignatureType.SECRET, accessKey, accessSecret).toString());
     }
 
-    //    @RequestMapping("/app/info")
-    //    public Object appInfo() {
-    //        return solarService.getAppInfo();
-    //    }
-    //
-    //    @RequestMapping("/org/list")
-    //    public Object orgList() {
-    //        return solarService.getOrgList();
-    //    }
+    @RequestMapping("/app/info")
+    public Object appInfo() {
+        return solarService.getAppInfo();
+    }
+
+    @RequestMapping("/org/list")
+    public Object orgList() {
+        return solarService.getOrgList();
+    }
 }

+ 10 - 0
api-demo/src/main/java/com/qmth/demo/api/controller/TaskController.java

@@ -4,6 +4,7 @@ import com.qmth.boot.api.annotation.Aac;
 import com.qmth.boot.api.annotation.BOOL;
 import com.qmth.boot.api.constant.ApiConstant;
 import com.qmth.demo.api.entity.DemoTask;
+import org.springframework.core.task.TaskExecutor;
 import org.springframework.scheduling.TaskScheduler;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
@@ -20,9 +21,18 @@ public class TaskController {
     @Resource
     TaskScheduler taskScheduler;
 
+    @Resource
+    TaskExecutor taskExecutor;
+
     @RequestMapping("/submit")
     public boolean submit(@RequestParam(required = false, defaultValue = "0") Long delay) {
         taskScheduler.schedule(new DemoTask(), new Date(new Date().getTime() + delay));
         return true;
     }
+
+    @RequestMapping("/execute")
+    public boolean execute() {
+        taskExecutor.execute(new DemoTask());
+        return true;
+    }
 }

+ 9 - 4
api-demo/src/main/resources/application.properties

@@ -1,8 +1,10 @@
 server.port=8080
 
+management.endpoints.web.exposure.include=health,metrics,prometheus
+
 #com.qmth.api.uri-prefix=/aaa
-com.qmth.api.metrics-endpoint=/metrics
 com.qmth.api.global-auth=false
+com.qmth.api.trace-request=true
 #com.qmth.api.global-strict=false
 #com.qmth.api.global-rate-limit=1/5s
 
@@ -29,10 +31,13 @@ com.qmth.fss.config=/Users/luoshi/test
 com.qmth.fss.server=https://server.com
 
 ##solar online
-com.qmth.solar.server=http://solar-internal.qmth.com.cn
-com.qmth.solar.accessKey=b3e4601f4018489599253c45668dc55f
-com.qmth.solar.accessSecret=Fo7C4gyRaka49f0IJuS8jJcQordoepA1
+#com.qmth.solar.server=http://localhost:8090
+com.qmth.solar.accessKey=11859ec021f1484685cec40d8bfae05f
+com.qmth.solar.accessSecret=mA5GDTj0oBYpgw5sMcrqMa9Ua1bLnyDh
 
 ##solar offline
 #com.qmth.solar.license=/Users/luoshi/Downloads/solar/test.lic
 
+##sms
+#com.qmth.sms.server=http://localhost:8090
+

+ 6 - 1
pom.xml

@@ -16,7 +16,7 @@
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <maven.compiler.source>1.8</maven.compiler.source>
         <maven.compiler.target>1.8</maven.compiler.target>
-        <qmth.boot.version>1.0.3</qmth.boot.version>
+        <qmth.boot.version>1.0.4</qmth.boot.version>
     </properties>
 
     <dependencyManagement>
@@ -61,6 +61,11 @@
                 <artifactId>core-solar</artifactId>
                 <version>${qmth.boot.version}</version>
             </dependency>
+            <dependency>
+                <groupId>com.qmth.boot</groupId>
+                <artifactId>core-sms</artifactId>
+                <version>${qmth.boot.version}</version>
+            </dependency>
             <dependency>
                 <groupId>com.qmth.boot</groupId>
                 <artifactId>data-redis</artifactId>