Pārlūkot izejas kodu

Merge branch 'dev' of http://192.168.1.220:10080/jiwei/wlyy2.0 into dev

huangzhiyong 6 gadi atpakaļ
vecāks
revīzija
73d2c3ea30
36 mainītis faili ar 687 papildinājumiem un 140 dzēšanām
  1. 8 7
      common/common-entity/src/main/java/com/yihu/jw/entity/base/user/UserHideModuleFunctionDO.java
  2. 2 3
      common/common-entity/src/main/java/com/yihu/jw/entity/base/message/MqMessageDO.java
  3. 20 7
      common/common-entity/src/main/java/com/yihu/jw/entity/base/message/MqMessageSubscriberDO.java
  4. 34 29
      common/common-entity/src/main/java/com/yihu/jw/entity/base/user/BaseMenuDO.java
  5. 44 0
      common/common-entity/src/main/java/com/yihu/jw/entity/base/role/RoleAuthorityDO.java
  6. 11 16
      common/common-entity/src/main/java/com/yihu/jw/entity/base/user/BaseRoleMenuDO.java
  7. 8 1
      common/common-entity/src/main/java/com/yihu/jw/entity/base/saas/SaasBusinessCardDO.java
  8. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/base/sms/SmsDO.java
  9. 4 3
      common/common-entity/src/main/java/com/yihu/jw/entity/base/sms/SmsGatewayDO.java
  10. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/base/sms/SmsTemplateDO.java
  11. 13 0
      common/common-entity/src/main/java/com/yihu/jw/entity/base/user/UserDO.java
  12. 10 3
      common/common-request-mapping/src/main/java/com/yihu/jw/rm/base/BaseRequestMapping.java
  13. 7 11
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/user/UserHideModuleFunctionVO.java
  14. 2 2
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/message/MqMessageSubscriberVO.java
  15. 2 2
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/message/MqMessageVO.java
  16. 41 0
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/role/RoleAuthorityVO.java
  17. 2 2
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/sms/SmsGatewayVO.java
  18. 2 2
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/sms/SmsTemplateVO.java
  19. 2 2
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/sms/SmsVO.java
  20. 10 0
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/user/UserVO.java
  21. 1 1
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/MixEnvelop.java
  22. 1 1
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/PageEnvelop.java
  23. 2 2
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/endpoint/EnvelopRestEndpoint.java
  24. 14 1
      server/svr-configuration/src/main/resources/bootstrap.yml
  25. 2 1
      server/svr-zipkin/src/main/java/com/yihu/ZipkinTrackServer.java
  26. 273 0
      sql/init.sql
  27. 4 2
      svr/svr-base/src/main/java/com/yihu/jw/base/config/SwaggerDocs.java
  28. 5 3
      svr/svr-base/src/main/java/com/yihu/jw/base/dao/user/UserHideModuleFunctionDao.java
  29. 13 0
      svr/svr-base/src/main/java/com/yihu/jw/base/dao/role/RoleAuthorityDao.java
  30. 12 11
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/user/UserHideModuleFunctionEndpoint.java
  31. 97 0
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/role/RoleAuthorityEndpoint.java
  32. 6 6
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/saas/SaasModuleFunctionEndpoint.java
  33. 15 0
      svr/svr-base/src/main/java/com/yihu/jw/base/service/customize/UserHideModuleFunctionService.java
  34. 15 0
      svr/svr-base/src/main/java/com/yihu/jw/base/service/role/RoleAuthorityService.java
  35. 1 7
      svr/svr-base/src/main/java/com/yihu/jw/base/service/sms/SmsGatewayService.java
  36. 0 13
      svr/svr-base/src/main/java/com/yihu/jw/base/service/user/UserHideModuleFunctionService.java

+ 8 - 7
common/common-entity/src/main/java/com/yihu/jw/entity/base/user/UserHideModuleFunctionDO.java

@ -1,4 +1,4 @@
package com.yihu.jw.entity.base.user;
package com.yihu.jw.entity.base.customize;
import com.yihu.jw.entity.IntegerIdentityEntity;
@ -7,6 +7,7 @@ import javax.persistence.Entity;
import javax.persistence.Table;
/**
 * Entity - 用户取消订阅的模块或功能
 * @author progr1mmer
 * @date Created on 2018/8/14.
 */
@ -15,9 +16,9 @@ import javax.persistence.Table;
public class UserHideModuleFunctionDO extends IntegerIdentityEntity {
    /**
     * 用户ID
     * 对象ID
     */
    private String userId;
    private String objId;
    /**
     * 模块ID
     */
@ -28,12 +29,12 @@ public class UserHideModuleFunctionDO extends IntegerIdentityEntity {
    private Integer functionId;
    @Column(name = "user_id", nullable = false, length = 50)
    public String getUserId() {
        return userId;
    public String getObjId() {
        return objId;
    }
    public void setUserId(String userId) {
        this.userId = userId;
    public void setObjId(String objId) {
        this.objId = objId;
    }
    @Column(name = "module_id", nullable = false)

+ 2 - 3
common/common-entity/src/main/java/com/yihu/jw/entity/base/message/MqMessageDO.java

@ -1,7 +1,6 @@
package com.yihu.jw.entity.base.message;
import com.yihu.jw.entity.UuidIdentityEntity;
import org.springframework.stereotype.Component;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
@ -13,7 +12,7 @@ import javax.persistence.Table;
 */
@Entity
@Table(name = "base_mq_message")
public class MqMessageDO extends UuidIdentityEntity {
public class MqMessageDO extends UuidIdentityEntityWithOperator {
    //主题
    private String topic;

+ 20 - 7
common/common-entity/src/main/java/com/yihu/jw/entity/base/message/MqMessageSubscriberDO.java

@ -1,6 +1,6 @@
package com.yihu.jw.entity.base.message;
import com.yihu.jw.entity.UuidIdentityEntity;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
@ -8,16 +8,29 @@ import javax.persistence.Table;
/**
 * Entity - 基于MQ的消息推送订阅者
 * Created by progr1mmer on 2018/8/14.
 * @author progr1mmer
 * @date Created on 2018/8/14
 */
@Entity
@Table(name = "base_mq_message_subscriber")
public class MqMessageSubscriberDO extends UuidIdentityEntity {
public class MqMessageSubscriberDO extends UuidIdentityEntityWithOperator {
    private String saasId; //saas id
    private String topic; //主题
    private String url; //推送地址
    private String remark; //备注
    /**
     * saas id
     */
    private String saasId;
    /**
     * 主题
     */
    private String topic;
    /**
     * 推送地址
     */
    private String url;
    /**
     * 备注
     */
    private String remark;
    @Column(name = "saas_id", nullable = false, length = 50)
    public String getSaasId() {

+ 34 - 29
common/common-entity/src/main/java/com/yihu/jw/entity/base/user/BaseMenuDO.java

@ -1,43 +1,48 @@
package com.yihu.jw.entity.base.user;
package com.yihu.jw.entity.base.role;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import java.sql.Timestamp;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
 * BaseMenu entity. @author MyEclipse Persistence Tools
 * @author progr1mmer
 * @date 2018/09/20
 */
@Entity
@Table(name = "base_menu")
public class BaseMenuDO extends UuidIdentityEntityWithOperator implements java.io.Serializable {
public class MenuDO extends UuidIdentityEntityWithOperator {
	private String saasId;
	private String parentId; //父级ID
	private String name; //名称
	private String url; //请求路径
	private String method; //请求方式 get post
	private Integer sort; //排序
	private Integer status; //状态
	private String remark; //备注
	// Constructors
	/** default constructor */
	public BaseMenuDO() {
	}
	/** minimal constructor */
	public BaseMenuDO(String id, Timestamp createTime, Timestamp updateTime) {
		this.id = id;
		this.createTime = createTime;
		this.updateTime = updateTime;
	}
	// Property accessors
	/**
	 * 名称
	 */
	private String name;
	/**
	 * 请求路径
	 */
	private String url;
	/**
	 * 请求方式
	 */
	private String method;
	/**
	 * 排序
	 */
	private Integer sort;
	/**
	 * 父级ID
	 */
	private String parentId;
	/**
	 * 状态
	 */
	private Integer status;
	/**
	 * 备注
	 */
	private String remark;
	@Column(name = "saas_id", length = 50)
	public String getSaasId() {
@ -93,7 +98,7 @@ public class BaseMenuDO extends UuidIdentityEntityWithOperator implements java.i
		this.remark = remark;
	}
	@Column(name = "url", length = 255)
	@Column(name = "url")
	public String getUrl() {
		return url;
	}
@ -102,7 +107,7 @@ public class BaseMenuDO extends UuidIdentityEntityWithOperator implements java.i
		this.url = url;
	}
	@Column(name = "method", length = 255)
	@Column(name = "method")
	public String getMethod() {
		return method;
	}

+ 44 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/base/role/RoleAuthorityDO.java

@ -0,0 +1,44 @@
package com.yihu.jw.entity.base.role;
import com.yihu.jw.entity.IntegerIdentityEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
 * Entity - 角色权限
 * @author progr1mmer.
 * @date Created on 2018/9/14.
 */
@Entity
@Table(name = "base_role_authority")
public class RoleAuthorityDO extends IntegerIdentityEntity {
    /**
     * 角色ID
     */
    private String roleId;
    /**
     * 权限
     */
    private String authorities;
    @Column(name = "role_id", length = 50)
    public String getRoleId() {
        return roleId;
    }
    public void setRoleId(String roleId) {
        this.roleId = roleId;
    }
    @Column(name = "authorities")
    public String getAuthorities() {
        return authorities;
    }
    public void setAuthorities(String authorities) {
        this.authorities = authorities;
    }
}

+ 11 - 16
common/common-entity/src/main/java/com/yihu/jw/entity/base/user/BaseRoleMenuDO.java

@ -1,33 +1,28 @@
package com.yihu.jw.entity.base.user;
package com.yihu.jw.entity.base.role;
import com.yihu.jw.entity.UuidIdentityEntity;
import com.yihu.jw.entity.IntegerIdentityEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
 * BaseRoleMenu entity. @author MyEclipse Persistence Tools
 * @author progr1mmer
 * @date 2018/09/20
 */
@Entity
@Table(name = "base_role_menu")
public class BaseRoleMenuDO extends UuidIdentityEntity implements java.io.Serializable {
public class RoleMenuDO extends IntegerIdentityEntity {
	// Fields
	/**
	 * 角色ID
	 */
	private String roleId;
	/**
	 * 菜单ID
	 */
	private String menuId;
	/** default constructor */
	public BaseRoleMenuDO() {
	}
	/** minimal constructor */
	public BaseRoleMenuDO(String id) {
		this.id = id;
	}
	@Column(name = "role_id", length = 50)
	public String getRoleId() {
		return this.roleId;

+ 8 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/base/saas/SaasBusinessCardDO.java

@ -13,14 +13,21 @@ import javax.persistence.Table;
 * </p>
 *
 * Entity - SAAS名片
 * Created by progr1mmer on 2018/9/7.
 * @author progr1mmer
 * @date Created on 2018/9/7.
 */
@Entity
@Table(name = "base_saas_business_card")
public class SaasBusinessCardDO extends IntegerIdentityEntity {
    public enum Type {
        /**
         * 医生
         */
        doctor,
        /**
         * 患者
         */
        patient
    }

+ 2 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/base/sms/SmsDO.java

@ -2,6 +2,7 @@ package com.yihu.jw.entity.base.sms;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntity;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.*;
import java.util.Date;
@ -12,7 +13,7 @@ import java.util.Date;
 */
@Entity
@Table(name = "base_sms")
public class SmsDO extends UuidIdentityEntity {
public class SmsDO extends UuidIdentityEntityWithOperator {
	//应用ID
	private String clientId;

+ 4 - 3
common/common-entity/src/main/java/com/yihu/jw/entity/base/sms/SmsGatewayDO.java

@ -1,7 +1,7 @@
package com.yihu.jw.entity.base.sms;
import com.yihu.jw.entity.UuidIdentityEntity;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
@ -9,11 +9,12 @@ import javax.persistence.Table;
/**
 * Entity - 短信网关
 * Created by progr1mmer on 2018/8/14.
 * @author progr1mmer
 * @date Created on 2018/8/14.
 */
@Entity
@Table(name = "base_sms_gateway")
public class SmsGatewayDO extends UuidIdentityEntity {
public class SmsGatewayDO extends UuidIdentityEntityWithOperator {
	/**
	 * 0-禁用,1-可用,2-不可用

+ 2 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/base/sms/SmsTemplateDO.java

@ -1,6 +1,7 @@
package com.yihu.jw.entity.base.sms;
import com.yihu.jw.entity.UuidIdentityEntity;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
@ -12,7 +13,7 @@ import javax.persistence.Table;
 */
@Entity
@Table(name = "base_sms_template")
public class SmsTemplateDO extends UuidIdentityEntity {
public class SmsTemplateDO extends UuidIdentityEntityWithOperator {
    /**
     * 0 - 注册

+ 13 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/base/user/UserDO.java

@ -41,6 +41,10 @@ public class UserDO extends UuidIdentityEntityWithOperator {
    private String mobile;
    //邮箱
    private String email;
    /**
     * 简化模式获取token所需要的凭证
     */
    private String ak;
    //是否可用
    private Boolean enabled;
    //是否锁定
@ -124,6 +128,15 @@ public class UserDO extends UuidIdentityEntityWithOperator {
        this.email = email;
    }
    @Column(name = "ak", length = 200)
    public String getAk() {
        return ak;
    }
    public void setAk(String ak) {
        this.ak = ak;
    }
    @Column(name = "enabled", nullable = false)
    public Boolean getEnabled() {
        return enabled;

+ 10 - 3
common/common-request-mapping/src/main/java/com/yihu/jw/rm/base/BaseRequestMapping.java

@ -35,6 +35,13 @@ public class BaseRequestMapping {
        public static final String PREFIX  = "/saas_default_module_function";
    }
    /**
     * Saas模块功能
     */
    public static class SaasModuleFunction extends Basic {
        public static final String PREFIX  = "/saas_module_function";
    }
    /**
     * SAAS名片
     */
@ -117,10 +124,10 @@ public class BaseRequestMapping {
    }
    /**
     * 角色模块功能
     * 角色权限
     */
    public static class RoleModuleFunction extends Basic {
        public static final String PREFIX  = "/role_module_function";
    public static class RoleAuthority extends Basic {
        public static final String PREFIX  = "/role_authority";
    }
    /**

+ 7 - 11
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/user/UserHideModuleFunctionVO.java

@ -1,13 +1,12 @@
package com.yihu.jw.restmodel.base.user;
package com.yihu.jw.restmodel.base.customize;
import com.yihu.jw.restmodel.IntegerIdentityVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.persistence.Column;
/**
 * VO - 用户取消订阅的模块或功能
 * @author progr1mmer
 * @date Created on 2018/9/11.
 */
@ -18,7 +17,7 @@ public class UserHideModuleFunctionVO extends IntegerIdentityVO {
     * 用户ID
     */
    @ApiModelProperty(value = "用户ID", example = "402303ee65634dfs0234sf9a324a0023")
    private String userId;
    private String objId;
    /**
     * 模块ID
     */
@ -30,16 +29,14 @@ public class UserHideModuleFunctionVO extends IntegerIdentityVO {
    @ApiModelProperty(value = "功能ID", example = "402303ee65634dfs0234sf9a324a0025")
    private Integer functionId;
    @Column(name = "user_id", nullable = false, length = 50)
    public String getUserId() {
        return userId;
    public String getObjId() {
        return objId;
    }
    public void setUserId(String userId) {
        this.userId = userId;
    public void setObjId(String objId) {
        this.objId = objId;
    }
    @Column(name = "module_id", nullable = false)
    public Integer getModuleId() {
        return moduleId;
    }
@ -48,7 +45,6 @@ public class UserHideModuleFunctionVO extends IntegerIdentityVO {
        this.moduleId = moduleId;
    }
    @Column(name = "function_id")
    public Integer getFunctionId() {
        return functionId;
    }

+ 2 - 2
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/message/MqMessageSubscriberVO.java

@ -1,6 +1,6 @@
package com.yihu.jw.restmodel.base.message;
import com.yihu.jw.restmodel.UuidIdentityVO;
import com.yihu.jw.restmodel.UuidIdentityVOWithOperator;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -9,7 +9,7 @@ import io.swagger.annotations.ApiModelProperty;
 * Created by progr1mmer on 2018/8/14.
 */
@ApiModel(value = "MqMessageSubscriberVO", description = "基于MQ的消息推送订阅者")
public class MqMessageSubscriberVO extends UuidIdentityVO {
public class MqMessageSubscriberVO extends UuidIdentityVOWithOperator {
    @ApiModelProperty(value = "SAAS ID", example = "402803ee656498890165649ad2xaaba2")
    private String saasId;

+ 2 - 2
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/message/MqMessageVO.java

@ -1,6 +1,6 @@
package com.yihu.jw.restmodel.base.message;
import com.yihu.jw.restmodel.UuidIdentityVO;
import com.yihu.jw.restmodel.UuidIdentityVOWithOperator;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -10,7 +10,7 @@ import io.swagger.annotations.ApiModelProperty;
 * Created by progr1mmer on 2018/9/3.
 */
@ApiModel(value = "MqMessageVO", description = "基于MQ的消息推送")
public class MqMessageVO extends UuidIdentityVO {
public class MqMessageVO extends UuidIdentityVOWithOperator {
    //主题
    @ApiModelProperty(value = "主题", example = "dailyReport")

+ 41 - 0
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/role/RoleAuthorityVO.java

@ -0,0 +1,41 @@
package com.yihu.jw.restmodel.base.role;
import com.yihu.jw.restmodel.IntegerIdentityVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
 * VO - 角色权限
 * @author progr1mmer.
 * @date Created on 2018/9/14.
 */
@ApiModel(value = "RoleVO", description = "角色")
public class RoleAuthorityVO extends IntegerIdentityVO {
    /**
     * 角色ID
     */
    @ApiModelProperty(value = "角色ID", example = "402803ee656498890165649ad2da1112")
    private String roleId;
    /**
     * 权限
     */
    @ApiModelProperty(value = "权限", example = "/path/**")
    private String authorities;
    public String getRoleId() {
        return roleId;
    }
    public void setRoleId(String roleId) {
        this.roleId = roleId;
    }
    public String getAuthorities() {
        return authorities;
    }
    public void setAuthorities(String authorities) {
        this.authorities = authorities;
    }
}

+ 2 - 2
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/sms/SmsGatewayVO.java

@ -1,7 +1,7 @@
package com.yihu.jw.restmodel.base.sms;
import com.yihu.jw.entity.base.sms.SmsGatewayDO;
import com.yihu.jw.restmodel.UuidIdentityVO;
import com.yihu.jw.restmodel.UuidIdentityVOWithOperator;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -10,7 +10,7 @@ import io.swagger.annotations.ApiModelProperty;
 * Created by Progr1mmer on 2018/8/27.
 */
@ApiModel(value = "SmsGatewayVO", description = "短信网关")
public class SmsGatewayVO extends UuidIdentityVO {
public class SmsGatewayVO extends UuidIdentityVOWithOperator {
    @ApiModelProperty(value = "client id", example = "EwC0iRSrcS")
    private String clientId;

+ 2 - 2
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/sms/SmsTemplateVO.java

@ -1,7 +1,7 @@
package com.yihu.jw.restmodel.base.sms;
import com.yihu.jw.entity.base.sms.SmsTemplateDO;
import com.yihu.jw.restmodel.UuidIdentityVO;
import com.yihu.jw.restmodel.UuidIdentityVOWithOperator;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -11,7 +11,7 @@ import io.swagger.annotations.ApiModelProperty;
 * Created by progr1mmer on 2018/8/14.
 */
@ApiModel(value = "SmsTemplateVO", description = "短信网关")
public class SmsTemplateVO extends UuidIdentityVO {
public class SmsTemplateVO extends UuidIdentityVOWithOperator {
    //应用ID
    @ApiModelProperty(value = "应用ID", example = "EwC0iRSrcS")

+ 2 - 2
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/sms/SmsVO.java

@ -2,7 +2,7 @@ package com.yihu.jw.restmodel.base.sms;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.base.sms.SmsTemplateDO;
import com.yihu.jw.restmodel.UuidIdentityVO;
import com.yihu.jw.restmodel.UuidIdentityVOWithOperator;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -14,7 +14,7 @@ import java.util.Date;
 * Created by progr1mmer on 2018/8/28.
 */
@ApiModel(value = "SmsVO", description = "短信记录")
public class SmsVO extends UuidIdentityVO {
public class SmsVO extends UuidIdentityVOWithOperator {
    //应用ID
    @ApiModelProperty(value = "应用ID", example = "EwC0iRSrcS")

+ 10 - 0
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/user/UserVO.java

@ -39,6 +39,8 @@ public class UserVO extends UuidIdentityVOWithOperator {
    //邮箱
    @ApiModelProperty(value = "邮箱", example = "wxm@jkzl.com")
    private String email;
    @ApiModelProperty(value = "简化模式获取token所需要的凭证", example = "25f9e794323b453885f5181f1b624d0b")
    private String ak;
    //是否可用
    @ApiModelProperty(value = "是否可用", example = "1")
    private Boolean enabled;
@ -119,6 +121,14 @@ public class UserVO extends UuidIdentityVOWithOperator {
        this.email = email;
    }
    public String getAk() {
        return ak;
    }
    public void setAk(String ak) {
        this.ak = ak;
    }
    public Boolean getEnabled() {
        return enabled;
    }

+ 1 - 1
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/MixEnvelop.java

@ -32,7 +32,7 @@ public class MixEnvelop<T, J> extends Envelop {
    private int currPage = 1;
    @ApiModelProperty(value = "每页大小 默认10", example = "15")
    private int pageSize = 10;
    private int pageSize = 15;
    @ApiModelProperty(value = "总共多少页", example = "2")
    private int totalPage;

+ 1 - 1
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/PageEnvelop.java

@ -32,7 +32,7 @@ public class PageEnvelop<T> extends Envelop implements Serializable {
    private int currPage = 1;
    @ApiModelProperty(value = "每页大小 默认10", example = "15")
    private int pageSize = 10;
    private int pageSize = 15;
    @ApiModelProperty(value = "总共多少页", example = "2")
    private int totalPage;

+ 2 - 2
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/endpoint/EnvelopRestEndpoint.java

@ -161,13 +161,13 @@ public abstract class EnvelopRestEndpoint {
    }
    protected <T, J> MixEnvelop<T, J> success(String message, int status, List<T> contents, J obj) {
        return success(message, status, contents, obj, contents.size(), 1, contents.size());
        return success(message, status, contents, obj, contents.size(), 1, contents.size() != 0 ? contents.size() : 15);
    }
    protected <T, J, _T, _J> MixEnvelop<_T, _J> success(String message, int status, List<T> contents, J obj, Class<_T> targetContents, Class<_J> targetObj) {
        List<_T> _contents = convertToModels(contents, new ArrayList<>(contents.size()), targetContents);
        _J _obj = convertToModel(obj, targetObj);
        return success(message, status, _contents, _obj, _contents.size(), 1, _contents.size());
        return success(message, status, _contents, _obj, _contents.size(), 1, _contents.size() != 0 ? _contents.size() : 15);
    }
    protected <T, J> MixEnvelop<T, J> success(String message, int status, List<T> contents, J obj, int totalCount, int currPage, int pageSize) {

+ 14 - 1
server/svr-configuration/src/main/resources/bootstrap.yml

@ -38,4 +38,17 @@ spring:
        git:
          uri: ${wlyy.spring.config.git.uri:http://192.168.120.153:3000/jiwei/wlyy2.0.config.git}
          basedir: /usr/local/wlyy2.0-config
        default-label: ${wlyy.spring.config.git.label:prod}
        default-label: ${wlyy.spring.config.git.label:prod}
---
spring:
  profiles: local
##git配置
  cloud:
    config:
      failFast: true #启动快速失败 即链接不到配置服务就启动失败
      server:
        git:
          uri: ${wlyy.spring.config.git.uri:http://10.95.22.168:3000/jiwei/wlyy2.0.config.git}
          basedir: /usr/local/wlyy2.0-config
        default-label: ${wlyy.spring.config.git.label:local}

+ 2 - 1
server/svr-zipkin/src/main/java/com/yihu/ZipkinTrackServer.java

@ -6,7 +6,8 @@ import zipkin.server.internal.EnableZipkinServer;
/**
 * Created by chenweida on 2017/5/18.
 * @author chenweida
 * @date Created on 2017/5/18.
 */
@SpringBootApplication
@EnableZipkinServer

+ 273 - 0
sql/init.sql

@ -423,6 +423,279 @@ create table `dict_hospital_dept`
)
  ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='医院科室字典';
-- 模块
Drop table IF EXISTS `base_module`;
CREATE TABLE `base_module` (
  `id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '模块id',
  `name` varchar(200) COLLATE utf8_unicode_ci NOT NULL COMMENT '名称',
  `parent_id` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '父业务id',
  `status` int(11) NOT NULL COMMENT '状态(0-不可用,1-可用,2-删除)',
  `create_user` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建人',
  `create_user_name` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建人名',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_user` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '修改人',
  `update_user_name` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '修改人名',
  `update_time` datetime NOT NULL COMMENT '修改时间',
  `remark` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '备注',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='模块';
-- 功能
Drop table IF EXISTS `base_function`;
CREATE TABLE `base_function` (
  `id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '功能id',
  `module_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '模块ID',
  `name` varchar(200) COLLATE utf8_unicode_ci NOT NULL COMMENT '功能名称',
  `prefix` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '使用网关转发时的url前缀',
  `url` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '功能对应的后台url',
  `create_user` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建人',
  `create_user_name` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建人名',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_user` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '修改人',
  `update_user_name` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '修改人名',
  `update_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '修改时间',
  `remark` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '备注',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='功能';
-- SAAS
Drop table IF EXISTS `base_saas`;
CREATE TABLE `base_saas` (
  `id` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'saas业务标识',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `create_user` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建者',
  `create_user_name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建者',
  `update_time` datetime NOT NULL COMMENT '更新时间',
  `update_user` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '更新者',
  `update_user_name` datetime DEFAULT NULL COMMENT '更新者',
  `org_code` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '机构编码',
  `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '系统名称',
  `status` int(11) NOT NULL COMMENT '状态(0-待审核 1-审核通过 2-审核不通过 3-已删除)',
  `remark` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '备注',
  `logo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '远程fastDFS文件地址',
  `type` int(11) NOT NULL COMMENT '类型',
  `manager` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '管理员 - 关联user表id字段',
  `email` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '管理员邮箱',
  `mobile` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '管理员手机号码',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='SAAS';
-- Saas模块功能
Drop table IF EXISTS `base_saas_module_function`;
CREATE TABLE `base_saas_module_function` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `saas_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '角色ID',
  `module_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '模块ID',
  `function_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '功能ID',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Saas模块功能';
-- Saas类型默认的模块功能
Drop table IF EXISTS `base_saas_default_module_function`;
CREATE TABLE `base_saas_default_module_function` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `saas_type` int(11) NOT NULL COMMENT 'saas类型',
  `module_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '模块ID',
  `function_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '功能ID',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Saas类型默认的模块功能';
-- Saas名片
Drop table IF EXISTS `base_saas_business_card`;
CREATE TABLE `base_saas_business_card` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增主键',
  `saas_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT 'SAAS ID',
  `field` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '所要生成的目标名片的字段,如医生的name、age等',
  `type` int(11) NOT NULL COMMENT '名片类型 (0 - 医生, 1-居民)',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Saas名片';
-- 短信网关
Drop table IF EXISTS `base_sms_gateway`;
CREATE TABLE `base_sms_gateway` (
  `id` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
  `client_id` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'saas_id 关联 base_saas',
  `name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '网关名称',
  `username` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '网关用户名',
  `password` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '网关密码',
  `website` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '官网地址',
  `expire_min` int(11) NOT NULL COMMENT '超时时间(分钟)',
  `request_url` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '网关接口访问URL',
  `request_certificate` varchar(2550) CHARACTER SET utf8 NOT NULL COMMENT '调用凭证(json串)',
  `response_code` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '短信接口调用状态标识',
  `success_value` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '调用成功的状态码',
  `status` int(11) NOT NULL COMMENT '0-禁用,1-可用,2-不可用',
  `create_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人',
  `create_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人名',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `update_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人',
  `update_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人名',
  `update_time` datetime NOT NULL COMMENT '修改时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='短信网关';
-- 短信模板
Drop table IF EXISTS `base_sms_template`;
CREATE TABLE `base_sms_template` (
  `id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '主键',
  `client_id` varchar(10) CHARACTER SET utf8 NOT NULL COMMENT '应用ID',
  `type` int(11) NOT NULL COMMENT '短信标签',
  `header` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '【短信抬头】',
  `content` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '正文',
  `create_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人',
  `create_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人名',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `update_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人',
  `update_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人名',
  `update_time` datetime NOT NULL COMMENT '修改时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='短信模板';
-- 短信记录
Drop table IF EXISTS `base_sms`;
CREATE TABLE `base_sms` (
  `id` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '业务无关主键',
  `client_id` varchar(10) COLLATE utf8_unicode_ci NOT NULL COMMENT '应用ID',
  `sms_gateway_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '使用的网关ID',
  `request_ip` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '请求的ip地址',
  `mobile` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '接收手机号',
  `content` varchar(500) COLLATE utf8_unicode_ci NOT NULL COMMENT '消息内容',
  `deadline` datetime NOT NULL COMMENT '过期时间',
  `captcha` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '验证码',
  `type` int(11) NOT NULL COMMENT '消息类型:1微信端注册,2微信端找回密码,3医生端找回密码,4患者登录,5医生登录',
  `create_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人',
  `create_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人名',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `update_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人',
  `update_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人名',
  `update_time` datetime NOT NULL COMMENT '修改时间',
  PRIMARY KEY (`id`),
  KEY `idx_wlyy_sms_1` (`mobile`),
  KEY `idx_wlyy_sms_2` (`client_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='短信记录';
-- 系统字典
Drop table IF EXISTS `base_system_dict`;
CREATE TABLE `base_system_dict` (
  `saas_id` varchar(50) DEFAULT NULL COMMENT 'SaasId',
  `code` varchar(50) NOT NULL COMMENT '字典代码',
  `py_code` varchar(50) NOT NULL COMMENT '拼音码',
  `name` varchar(50) NOT NULL COMMENT '字典名称',
  `type` int(11) NOT NULL COMMENT '字典类型(0-基础字典,1-扩展字典)',
  PRIMARY KEY (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='系统字典';
-- 系统字典项
Drop table IF EXISTS `base_system_dict_entry`;
CREATE TABLE `base_system_dict_entry` (
  `id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '主键',
  `dict_code` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '所属字典代码',
  `code` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '字典项代码',
  `py_code` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '字典项拼音码',
  `value` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '字典项值',
  `sort` int(11) DEFAULT NULL,
  `remark` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '说明',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='系统字典项';
-- 后台管理员
Drop table IF EXISTS `base_user`;
CREATE TABLE `base_user` (
  `id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '主键',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `create_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建用户的ID',
  `create_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建用户的用户名',
  `update_time` datetime NOT NULL COMMENT '更新时间',
  `update_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '更新用户的ID',
  `update_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '更新用户的用户名',
  `username` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '用户名',
  `password` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '密码',
  `salt` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '密码散列值',
  `name` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '真实名字',
  `gender` int(11) DEFAULT NULL COMMENT '性别(0-男,1-女)',
  `idcard` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '身份证号码',
  `mobile` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '手机号码',
  `ak` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '简化模式获取token所需要的凭证',
  `email` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '邮箱',
  `enabled` int(1) DEFAULT NULL COMMENT '账号是否可用1为可用',
  `locked` int(1) DEFAULT NULL COMMENT '账号是否被锁',
  `locked_date` datetime DEFAULT NULL COMMENT '账号被锁时间',
  `login_date` datetime DEFAULT NULL COMMENT '最后登陆时间',
  `login_failure_count` int(11) DEFAULT NULL COMMENT '用户名密码验证失败次数'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='后台管理员';
-- 角色
Drop table IF EXISTS `base_role`;
CREATE TABLE `base_role` (
  `id` varchar(50) NOT NULL COMMENT '主键',
  `saas_id` varchar(50) DEFAULT NULL COMMENT 'saas_id',
  `client_id` varchar(10) NOT NULL COMMENT '所属应用',
  `name` varchar(50) DEFAULT NULL COMMENT '角色名称',
  `code` varchar(16) NOT NULL COMMENT '角色代码',
  `remark` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '备注',
  `create_user` varchar(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建人',
  `create_user_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '创建人名',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_user` varchar(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '修改人',
  `update_user_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '修改人名',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
  `system` bit(1) NOT NULL COMMENT '是否系统角色',
  PRIMARY KEY (`id`),
  UNIQUE KEY `code` (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='角色';
-- 角色权限
Drop table IF EXISTS `base_role_authority`;
CREATE TABLE `base_role_authority` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增主键,无关业务',
  `role_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '角色ID',
  `authorities` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '权限',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='角色权限';
-- 用户角色
Drop table IF EXISTS `base_user_role`;
CREATE TABLE `base_user_role` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `user_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '用户ID',
  `role_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '角色编码',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='用户角色';
-- 基于MQ的消息推送
Drop table IF EXISTS `base_mq_message`;
CREATE TABLE `base_mq_message` (
  `id` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT '主键',
  `topic` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '主题',
  `name` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '名称',
  `remark` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '备注',
  `template` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '模板',
  `create_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人',
  `create_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人名',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `update_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人',
  `update_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人名',
  `update_time` datetime NOT NULL COMMENT '修改时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='基于MQ的消息推送';
-- 基于MQ的消息推送订阅者
Drop table IF EXISTS `base_mq_message_subscriber`;
CREATE TABLE `base_mq_message_subscriber` (
  `id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '主键',
  `saas_id` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '所属SAAS',
  `topic` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '主题',
  `url` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '推送地址',
  `remark` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '备注',
  `create_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人',
  `create_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '创建人名',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `update_user` varchar(50) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人',
  `update_user_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '修改人名',
  `update_time` datetime NOT NULL COMMENT '修改时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='基于MQ的消息推送订阅者';
-- 消息管理模块
drop table IF EXISTS `base_message`;
CREATE TABLE `base_message` (

+ 4 - 2
svr/svr-base/src/main/java/com/yihu/jw/base/config/SwaggerDocs.java

@ -19,10 +19,12 @@ public class SwaggerDocs {
        //1.请求 http://ip:port/swagger-resources获取group
        String group = "Default";
        //2.定义请求地址 new URL("http://ip:port/v2/api-docs?group=" + groupName)
        URL remoteSwaggerFile = new URL("http://127.0.0.1:10020/v2/api-docs?group=" + group); //项目的swagger-ui地址
        //项目的swagger-ui地址
        URL remoteSwaggerFile = new URL("http://127.0.0.1:10020/v2/api-docs?group=" + group);
        //3.定义文件输出路径
        String prefix = Thread.currentThread().getContextClassLoader().getResource("").getPath();
        Path outputFile = Paths.get(prefix.substring(prefix.lastIndexOf(":") + 1, prefix.indexOf("target") - 1) + "/build/" + group); //文档输出地址
        //文档输出地址
        Path outputFile = Paths.get(prefix.substring(prefix.lastIndexOf(":") + 1, prefix.indexOf("target") - 1) + "/build/" + group);
        Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
                .withMarkupLanguage(MarkupLanguage.ASCIIDOC)

+ 5 - 3
svr/svr-base/src/main/java/com/yihu/jw/base/dao/user/UserHideModuleFunctionDao.java

@ -1,11 +1,13 @@
package com.yihu.jw.base.dao.user;
package com.yihu.jw.base.dao.customize;
import com.yihu.jw.entity.base.user.UserHideModuleFunctionDO;
import com.yihu.jw.entity.base.customize.UserHideModuleFunctionDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by progr1mmer on 2018/8/20.
 * Dao - 用户取消订阅的模块或功能
 * @author progr1mmer.
 * @date Created on 2018/8/20.
 */
public interface UserHideModuleFunctionDao extends PagingAndSortingRepository<UserHideModuleFunctionDO, Integer>, JpaSpecificationExecutor<UserHideModuleFunctionDO> {
}

+ 13 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/dao/role/RoleAuthorityDao.java

@ -0,0 +1,13 @@
package com.yihu.jw.base.dao.role;
import com.yihu.jw.entity.base.role.RoleAuthorityDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Dao - 角色权限
 * @author progr1mmer.
 * @date Created on 2018/9/14.
 */
public interface RoleAuthorityDao extends PagingAndSortingRepository<RoleAuthorityDO, Integer>, JpaSpecificationExecutor<RoleAuthorityDO> {
}

+ 12 - 11
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/user/UserHideModuleFunctionEndpoint.java

@ -1,7 +1,8 @@
package com.yihu.jw.base.endpoint.user;
package com.yihu.jw.base.endpoint.customize;
import com.yihu.jw.base.service.user.UserHideModuleFunctionService;
import com.yihu.jw.entity.base.user.UserHideModuleFunctionDO;
import com.yihu.jw.base.service.customize.UserHideModuleFunctionService;
import com.yihu.jw.entity.base.customize.UserHideModuleFunctionDO;
import com.yihu.jw.restmodel.base.customize.UserHideModuleFunctionVO;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.ListEnvelop;
import com.yihu.jw.restmodel.web.ObjEnvelop;
@ -18,12 +19,12 @@ import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * Endpoint - 用户模块功能管理
 * Endpoint - 用户取消订阅的模块或功能
 * Created by progr1mmer on 2018/8/16.
 */
@RestController
@RequestMapping(value = BaseRequestMapping.UserHideModuleFunction.PREFIX)
@Api(value = "用户模块功能管理", description = "用户模块功能管理服务接口", tags = {"wlyy基础服务 - 用户模块功能管理服务接口"})
@Api(value = "用户取消订阅的模块或功能(用户自定义)", description = "用户取消订阅的模块或功能(用户自定义)服务接口", tags = {"wlyy基础服务 - 用户取消订阅的模块或功能(用户自定义)服务接口"})
public class UserHideModuleFunctionEndpoint extends EnvelopRestEndpoint {
    @Autowired
@ -31,12 +32,12 @@ public class UserHideModuleFunctionEndpoint extends EnvelopRestEndpoint {
    @PostMapping(value = BaseRequestMapping.UserHideModuleFunction.CREATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @ApiOperation(value = "创建")
    public ObjEnvelop<UserHideModuleFunctionDO> create (
    public ObjEnvelop<UserHideModuleFunctionVO> create (
            @ApiParam(name = "json_data", value = "Json数据", required = true)
            @RequestBody String jsonData) throws Exception {
        UserHideModuleFunctionDO userHideModuleFunctionDO = toEntity(jsonData, UserHideModuleFunctionDO.class);
        userHideModuleFunctionDO = userHideModuleFunctionService.save(userHideModuleFunctionDO);
        return success(userHideModuleFunctionDO);
        return success(userHideModuleFunctionDO, UserHideModuleFunctionVO.class);
    }
    @PostMapping(value = BaseRequestMapping.UserHideModuleFunction.DELETE)
@ -63,7 +64,7 @@ public class UserHideModuleFunctionEndpoint extends EnvelopRestEndpoint {
    @GetMapping(value = BaseRequestMapping.UserHideModuleFunction.PAGE)
    @ApiOperation(value = "获取分页")
    public PageEnvelop<UserHideModuleFunctionDO> page (
    public PageEnvelop<UserHideModuleFunctionVO> page (
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
@ -76,12 +77,12 @@ public class UserHideModuleFunctionEndpoint extends EnvelopRestEndpoint {
            @RequestParam(value = "size") int size) throws Exception {
        List<UserHideModuleFunctionDO> userHideModuleFunctionDOS = userHideModuleFunctionService.search(fields, filters, sorts, page, size);
        int count = (int)userHideModuleFunctionService.getCount(filters);
        return success(userHideModuleFunctionDOS, count, page, size);
        return success(userHideModuleFunctionDOS, count, page, size, UserHideModuleFunctionVO.class);
    }
    @GetMapping(value = BaseRequestMapping.UserHideModuleFunction.LIST)
    @ApiOperation(value = "获取列表")
    public ListEnvelop<UserHideModuleFunctionDO> list (
    public ListEnvelop<UserHideModuleFunctionVO> list (
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
@ -89,7 +90,7 @@ public class UserHideModuleFunctionEndpoint extends EnvelopRestEndpoint {
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts) throws Exception {
        List<UserHideModuleFunctionDO> userHideModuleFunctionDOS = userHideModuleFunctionService.search(fields, filters, sorts);
        return success(userHideModuleFunctionDOS);
        return success(userHideModuleFunctionDOS, UserHideModuleFunctionVO.class);
    }
}

+ 97 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/role/RoleAuthorityEndpoint.java

@ -0,0 +1,97 @@
package com.yihu.jw.base.endpoint.role;
import com.yihu.jw.base.service.role.RoleAuthorityService;
import com.yihu.jw.entity.base.role.RoleAuthorityDO;
import com.yihu.jw.restmodel.base.role.RoleAuthorityVO;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.ListEnvelop;
import com.yihu.jw.restmodel.web.ObjEnvelop;
import com.yihu.jw.restmodel.web.PageEnvelop;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import com.yihu.jw.rm.base.BaseRequestMapping;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * Endpoint - 角色权限
 * @author progr1mmer 
 * @date Created on 2018/8/16.
 */
@RestController
@RequestMapping(value = BaseRequestMapping.RoleAuthority.PREFIX)
@Api(value = "角色权限管理", description = "角色权限管理服务接口", tags = {"wlyy基础服务 - 角色权限管理服务接口"})
public class RoleAuthorityEndpoint extends EnvelopRestEndpoint {
    @Autowired
    private RoleAuthorityService roleAuthorityService;
    @PostMapping(value = BaseRequestMapping.RoleAuthority.CREATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @ApiOperation(value = "创建")
    public ObjEnvelop<RoleAuthorityVO> create (
            @ApiParam(name = "json_data", value = "Json数据", required = true)
            @RequestBody String jsonData) throws Exception {
        RoleAuthorityDO roleAuthorityDO = toEntity(jsonData, RoleAuthorityDO.class);
        roleAuthorityDO = roleAuthorityService.save(roleAuthorityDO);
        return success(roleAuthorityDO, RoleAuthorityVO.class);
    }
    @PostMapping(value = BaseRequestMapping.RoleAuthority.DELETE)
    @ApiOperation(value = "删除")
    public Envelop delete(
            @ApiParam(name = "ids", value = "id串,中间用,分隔", required = true)
            @RequestParam(value = "ids") String ids) {
        roleAuthorityService.delete(ids.split(","));
        return success("删除成功");
    }
    @PostMapping(value = BaseRequestMapping.RoleAuthority.UPDATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @ApiOperation(value = "更新")
    public Envelop update (
            @ApiParam(name = "json_data", value = "Json数据", required = true)
            @RequestBody String jsonData) throws Exception {
        RoleAuthorityDO roleAuthorityDO = toEntity(jsonData, RoleAuthorityDO.class);
        if (null == roleAuthorityDO.getId()) {
            return failed("ID不能为空", Envelop.class);
        }
        roleAuthorityDO = roleAuthorityService.save(roleAuthorityDO);
        return success(roleAuthorityDO);
    }
    @GetMapping(value = BaseRequestMapping.RoleAuthority.PAGE)
    @ApiOperation(value = "获取分页")
    public PageEnvelop<RoleAuthorityVO> page (
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @ApiParam(name = "page", value = "分页大小", required = true, defaultValue = "1")
            @RequestParam(value = "page") int page,
            @ApiParam(name = "size", value = "页码", required = true, defaultValue = "15")
            @RequestParam(value = "size") int size) throws Exception {
        List<RoleAuthorityDO> roleAuthorityDOS = roleAuthorityService.search(fields, filters, sorts, page, size);
        int count = (int)roleAuthorityService.getCount(filters);
        return success(roleAuthorityDOS, count, page, size, RoleAuthorityVO.class);
    }
    @GetMapping(value = BaseRequestMapping.RoleAuthority.LIST)
    @ApiOperation(value = "获取列表")
    public ListEnvelop<RoleAuthorityVO> list (
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts) throws Exception {
        List<RoleAuthorityDO> roleAuthorityDOS = roleAuthorityService.search(fields, filters, sorts);
        return success(roleAuthorityDOS, RoleAuthorityVO.class);
    }
}

+ 6 - 6
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/saas/SaasModuleFunctionEndpoint.java

@ -23,14 +23,14 @@ import java.util.List;
 * Created by progr1mmer on 2018/8/16.
 */
@RestController
@RequestMapping(value = BaseRequestMapping.RoleModuleFunction.PREFIX)
@RequestMapping(value = BaseRequestMapping.SaasModuleFunction.PREFIX)
@Api(value = "Saas模块功能管理", description = "Saas模块功能管理服务接口", tags = {"wlyy基础服务 - Saas模块功能管理服务接口"})
public class SaasModuleFunctionEndpoint extends EnvelopRestEndpoint {
    @Autowired
    private SaasModuleFunctionService saasModuleFunctionService;
    @PostMapping(value = BaseRequestMapping.RoleModuleFunction.CREATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.SaasModuleFunction.CREATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @ApiOperation(value = "创建")
    public ObjEnvelop<SaasModuleFunctionVO> create (
            @ApiParam(name = "json_data", value = "Json数据", required = true)
@ -40,7 +40,7 @@ public class SaasModuleFunctionEndpoint extends EnvelopRestEndpoint {
        return success(saasModuleFunctionDO, SaasModuleFunctionVO.class);
    }
    @PostMapping(value = BaseRequestMapping.RoleModuleFunction.DELETE)
    @PostMapping(value = BaseRequestMapping.SaasModuleFunction.DELETE)
    @ApiOperation(value = "删除")
    public Envelop delete(
            @ApiParam(name = "ids", value = "id串,中间用,分隔", required = true)
@ -49,7 +49,7 @@ public class SaasModuleFunctionEndpoint extends EnvelopRestEndpoint {
        return success("删除成功");
    }
    @PostMapping(value = BaseRequestMapping.RoleModuleFunction.UPDATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @PostMapping(value = BaseRequestMapping.SaasModuleFunction.UPDATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @ApiOperation(value = "更新")
    public Envelop update (
            @ApiParam(name = "json_data", value = "Json数据", required = true)
@ -62,7 +62,7 @@ public class SaasModuleFunctionEndpoint extends EnvelopRestEndpoint {
        return success(saasModuleFunctionDO);
    }
    @GetMapping(value = BaseRequestMapping.RoleModuleFunction.PAGE)
    @GetMapping(value = BaseRequestMapping.SaasModuleFunction.PAGE)
    @ApiOperation(value = "获取分页")
    public PageEnvelop<SaasModuleFunctionVO> page (
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
@ -80,7 +80,7 @@ public class SaasModuleFunctionEndpoint extends EnvelopRestEndpoint {
        return success(saasModuleFunctionDOS, count, page, size, SaasModuleFunctionVO.class);
    }
    @GetMapping(value = BaseRequestMapping.RoleModuleFunction.LIST)
    @GetMapping(value = BaseRequestMapping.SaasModuleFunction.LIST)
    @ApiOperation(value = "获取列表")
    public ListEnvelop<SaasModuleFunctionVO> list (
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")

+ 15 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/customize/UserHideModuleFunctionService.java

@ -0,0 +1,15 @@
package com.yihu.jw.base.service.customize;
import com.yihu.jw.base.dao.customize.UserHideModuleFunctionDao;
import com.yihu.jw.entity.base.customize.UserHideModuleFunctionDO;
import com.yihu.mysql.query.BaseJpaService;
import org.springframework.stereotype.Service;
/**
 * Service - 用户取消订阅的模块或功能
 * @author progr1mmer.
 * @date Created on 2018/9/14.
 */
@Service
public class UserHideModuleFunctionService extends BaseJpaService<UserHideModuleFunctionDO, UserHideModuleFunctionDao> {
}

+ 15 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/role/RoleAuthorityService.java

@ -0,0 +1,15 @@
package com.yihu.jw.base.service.role;
import com.yihu.jw.base.dao.role.RoleAuthorityDao;
import com.yihu.jw.entity.base.role.RoleAuthorityDO;
import com.yihu.mysql.query.BaseJpaService;
import org.springframework.stereotype.Service;
/**
 * Service - 角色权限
 * @author progr1mmer.
 * @date Created on 2018/9/14.
 */
@Service
public class RoleAuthorityService extends BaseJpaService<RoleAuthorityDO, RoleAuthorityDao>{
}

+ 1 - 7
svr/svr-base/src/main/java/com/yihu/jw/base/service/sms/SmsGatewayService.java

@ -60,8 +60,7 @@ public class SmsGatewayService extends BaseJpaService<SmsGatewayDO, SmsGatewayDa
         * 1 - 过期时间(分钟)
         */
        String [] contentDatas = new String[] {
//                randomInt(6), 找不到该方法,先用空字符串替代,此类作者自己再纠正回来
                "",
                randomInt(6),
                smsGatewayDO.getExpireMin().toString()
        };
        Matcher contentMatcher = PATTERN.matcher(rawContent);
@ -113,9 +112,4 @@ public class SmsGatewayService extends BaseJpaService<SmsGatewayDO, SmsGatewayDa
        }
    }
    public static void main(String [] args) {
        Object obj = 1;
        System.out.println(obj.toString());
    }
}

+ 0 - 13
svr/svr-base/src/main/java/com/yihu/jw/base/service/user/UserHideModuleFunctionService.java

@ -1,13 +0,0 @@
package com.yihu.jw.base.service.user;
import com.yihu.jw.base.dao.user.UserHideModuleFunctionDao;
import com.yihu.jw.entity.base.user.UserHideModuleFunctionDO;
import com.yihu.mysql.query.BaseJpaService;
import org.springframework.stereotype.Service;
/**
 * Created by progr1mmer on 2018/8/20.
 */
@Service
public class UserHideModuleFunctionService extends BaseJpaService<UserHideModuleFunctionDO, UserHideModuleFunctionDao> {
}