增加配置sample-user.api.url,便于直连服务(不经过gateway项目)进行开发
diff --git a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/DemoUserRemoteService.java b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/DemoUserRemoteService.java
index ff16ff2..2fa6624 100644
--- a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/DemoUserRemoteService.java
+++ b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/DemoUserRemoteService.java
@@ -12,7 +12,7 @@
 
 @FeignClient(
     name = "sample-user", 
-    url = "${gateway.api.url}/sample-user/api/demo/users", 
+    url = "${sample-user.api.url}/api/demo/users", 
     fallback = DemoUserRemoteHystrix.class
 )
 public interface DemoUserRemoteService {
diff --git a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminGroupRemoteService.java b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminGroupRemoteService.java
index 7549cab..bd98ff5 100644
--- a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminGroupRemoteService.java
+++ b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminGroupRemoteService.java
@@ -14,8 +14,8 @@
 import com.supwisdom.leaveschool.proxy.user.domain.Group;
 
 @FeignClient(
-    name = "sample-user-1-admin-user", 
-    url = "${gateway.api.url}/sample-user/api/v1/admin/groups", 
+    name = "sample-user-1-admin-group", 
+    url = "${sample-user.api.url}/api/v1/admin/groups", 
     fallback = SampleUser1AdminGroupRemoteHystrix.class
 )
 public interface SampleUser1AdminGroupRemoteService {
diff --git a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminRoleRemoteService.java b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminRoleRemoteService.java
index 524d82c..669675a 100644
--- a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminRoleRemoteService.java
+++ b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminRoleRemoteService.java
@@ -14,8 +14,8 @@
 import com.supwisdom.leaveschool.proxy.user.domain.Role;
 
 @FeignClient(
-    name = "sample-user-1-admin-user", 
-    url = "${gateway.api.url}/sample-user/api/v1/admin/roles", 
+    name = "sample-user-1-admin-role", 
+    url = "${sample-user.api.url}/api/v1/admin/roles", 
     fallback = SampleUser1AdminRoleRemoteHystrix.class
 )
 public interface SampleUser1AdminRoleRemoteService {
diff --git a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminUserRemoteService.java b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminUserRemoteService.java
index c8b5b6f..74012c0 100644
--- a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminUserRemoteService.java
+++ b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminUserRemoteService.java
@@ -15,7 +15,7 @@
 
 @FeignClient(
     name = "sample-user-1-admin-user", 
-    url = "${gateway.api.url}/sample-user/api/v1/admin/users", 
+    url = "${sample-user.api.url}/api/v1/admin/users", 
     fallback = SampleUser1AdminUserRemoteHystrix.class
 )
 public interface SampleUser1AdminUserRemoteService {
diff --git a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1SecurityUserRemoteService.java b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1SecurityUserRemoteService.java
index d772b43..9a55516 100644
--- a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1SecurityUserRemoteService.java
+++ b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1SecurityUserRemoteService.java
@@ -5,18 +5,32 @@
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import com.supwisdom.leaveschool.client.service.fallback.SampleUser1SecurityUserRemoteHystrix;
 import com.supwisdom.leaveschool.proxy.user.model.SecurityUser;
 
 @FeignClient(
     name = "sample-user-1-security-user", 
-    url = "${gateway.api.url}/sample-user/api/v1/security/users", 
+    url = "${sample-user.api.url}/api/v1/security/users", 
     fallback = SampleUser1SecurityUserRemoteHystrix.class
 )
 public interface SampleUser1SecurityUserRemoteService {
 
   @RequestMapping(path = "/{username}", method = RequestMethod.GET, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
   public SecurityUser loadUserByUsername(@PathVariable("username") String username);
-  
+
+  /**
+   * 
+   * @param username
+   * @param applicationCode
+   * @param type 
+   * @return
+   */
+  @RequestMapping(path = "/{username}/{applicationCode}", method = RequestMethod.GET, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
+  public SecurityUser loadPermissionsByUsernameAppcode(
+      @PathVariable("username") String username, 
+      @PathVariable("applicationCode") String applicationCode, 
+      @RequestParam(value = "type", required = false) String type);
+
 }
diff --git a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/fallback/SampleUser1SecurityUserRemoteHystrix.java b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/fallback/SampleUser1SecurityUserRemoteHystrix.java
index c965744..a2cbaaf 100644
--- a/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/fallback/SampleUser1SecurityUserRemoteHystrix.java
+++ b/samples/client/src/main/java/com/supwisdom/leaveschool/client/service/fallback/SampleUser1SecurityUserRemoteHystrix.java
@@ -13,4 +13,9 @@
     return null;
   }
 
+  @Override
+  public SecurityUser loadPermissionsByUsernameAppcode(String username, String applicationCode, String type) {
+    return null;
+  }
+
 }
diff --git a/samples/client/src/main/java/com/supwisdom/leaveschool/proxy/user/domain/Permission.java b/samples/client/src/main/java/com/supwisdom/leaveschool/proxy/user/domain/Permission.java
index 9a47856..c856618 100644
--- a/samples/client/src/main/java/com/supwisdom/leaveschool/proxy/user/domain/Permission.java
+++ b/samples/client/src/main/java/com/supwisdom/leaveschool/proxy/user/domain/Permission.java
@@ -29,6 +29,41 @@
    */
   private String status;
 
+  /**
+   * 类型(1 应用,2 页面,3 操作)
+   */
+  private String type;
+
+  /**
+   * URL地址
+   */
+  private String url;
+
+  /**
+   * 父级ID
+   */
+  private String parentId;
+
+  /**
+   * 排序
+   */
+  private String order;
+
+  /**
+   * 层次
+   */
+  private String level;
+
+  /**
+   * 左序
+   */
+  private int lft;
+
+  /**
+   * 右序
+   */
+  private int rgt;
+
   public String getCode() {
     return code;
   }
@@ -61,4 +96,60 @@
     this.status = status;
   }
 
+  public String getType() {
+    return type;
+  }
+
+  public void setType(String type) {
+    this.type = type;
+  }
+
+  public String getUrl() {
+    return url;
+  }
+
+  public void setUrl(String url) {
+    this.url = url;
+  }
+
+  public String getParentId() {
+    return parentId;
+  }
+
+  public void setParentId(String parentId) {
+    this.parentId = parentId;
+  }
+
+  public String getOrder() {
+    return order;
+  }
+
+  public void setOrder(String order) {
+    this.order = order;
+  }
+
+  public String getLevel() {
+    return level;
+  }
+
+  public void setLevel(String level) {
+    this.level = level;
+  }
+
+  public int getLft() {
+    return lft;
+  }
+
+  public void setLft(int lft) {
+    this.lft = lft;
+  }
+
+  public int getRgt() {
+    return rgt;
+  }
+
+  public void setRgt(int rgt) {
+    this.rgt = rgt;
+  }
+
 }
diff --git a/samples/client/src/main/resources/application.yml b/samples/client/src/main/resources/application.yml
index f23f73c..0141d8e 100755
--- a/samples/client/src/main/resources/application.yml
+++ b/samples/client/src/main/resources/application.yml
@@ -37,3 +37,6 @@
             timeoutInMilliseconds: 12000
 
 gateway.api.url: http://localhost:5555
+
+#sample-user.api.url: http://localhost:5555/sample-user
+sample-user.api.url: http://localhost:10010