Browse Source

泛型扩展

Progr1mmer 6 years ago
parent
commit
fb79f250b2
16 changed files with 171 additions and 50 deletions
  1. 3 3
      common/common-fegin/src/main/java/com/yihu/jw/fegin/fallbackfactory/base/base/LoginFeignFallbackFactory.java
  2. 7 0
      common/common-request-mapping/src/main/java/com/yihu/jw/rm/base/BaseRequestMapping.java
  3. 1 1
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/Envelop.java
  4. 1 1
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/ListEnvelop.java
  5. 1 1
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/ObjEnvelop.java
  6. 1 1
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/PageEnvelop.java
  7. 34 34
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/endpoint/EnvelopRestEndpoint.java
  8. 2 2
      common/common-rest-model/src/main/java/com/yihu/jw/restmodel/web/status/EnvelopStatus.java
  9. 2 2
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/FunctionEndpoint.java
  10. 1 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/ModuleEndpoint.java
  11. 94 0
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/module/ModuleFunctionEndpoint.java
  12. 1 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/SaasEndpoint.java
  13. 1 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/SystemDictEndpoint.java
  14. 1 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/SystemDictEntryEndpoint.java
  15. 1 1
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/ThemeEndpoint.java
  16. 20 0
      svr/svr-base/src/main/java/com/yihu/jw/base/service/ModuleFunctionService.java

+ 3 - 3
common/common-fegin/src/main/java/com/yihu/jw/fegin/fallbackfactory/base/base/LoginFeignFallbackFactory.java

@ -30,7 +30,7 @@ public class LoginFeignFallbackFactory implements FallbackFactory<LoginFeign> {
            @Override
            public Envelop checkoutInfo(String ssc, String idcard) {
                tracer.getCurrentSpan().logEvent("校验医保卡、身份证、手机号接口错误:原因:"+e.getMessage());
                return MixEnvelop.getError(e.getMessage(), EnvelopStatus.system_error.value);
                return MixEnvelop.getError(e.getMessage(), EnvelopStatus.system_error.code);
            }
            /**
@ -48,7 +48,7 @@ public class LoginFeignFallbackFactory implements FallbackFactory<LoginFeign> {
            @Override
            public MixEnvelop register(String mobilePhone, String saasId, int type, String captcha, String name, String password, String idcard, String ssc) {
                tracer.getCurrentSpan().logEvent("注册账号接口错误:原因:"+e.getMessage());
                return MixEnvelop.getError(e.getMessage(), EnvelopStatus.system_error.value);
                return MixEnvelop.getError(e.getMessage(), EnvelopStatus.system_error.code);
            }
            /**
@ -62,7 +62,7 @@ public class LoginFeignFallbackFactory implements FallbackFactory<LoginFeign> {
            @Override
            public MixEnvelop login(String mobilePhone, String password, String saasId, String captcha) {
                tracer.getCurrentSpan().logEvent("登录账号接口错误:原因:"+e.getMessage());
                return MixEnvelop.getError(e.getMessage(), EnvelopStatus.system_error.value);
                return MixEnvelop.getError(e.getMessage(), EnvelopStatus.system_error.code);
            }
        };
    }

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

@ -42,6 +42,13 @@ public class BaseRequestMapping {
        public static final String PREFIX  = "/function";
    }
    /**
     * 模块功能
     */
    public static class ModuleFunction extends Basic {
        public static final String PREFIX  = "/module_function";
    }
    /**
     * 主题
     */

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

@ -18,7 +18,7 @@ public class Envelop implements Serializable {
    @ApiModelProperty("信息")
    protected String message;
    @ApiModelProperty("状态(200成功,-1是失败)")
    protected Integer status = EnvelopStatus.success.value;
    protected Integer status = EnvelopStatus.success.code;
    public Integer getStatus() {
        return status;

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

@ -21,7 +21,7 @@ import java.util.List;
 * 快速集成 {@link com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint}
 * @author llh
 */
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JsonInclude(JsonInclude.Include.ALWAYS)
@ApiModel(value = "ListResult", description = "获取实体列表返回定义")
public class ListEnvelop<T> extends Envelop {

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

@ -20,7 +20,7 @@ import java.util.HashMap;
 * 快速集成 {@link com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint}
 * @author llh
 */
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JsonInclude(JsonInclude.Include.ALWAYS)
@ApiModel(description = "获取单个实体信息返回")
public class ObjEnvelop<J> extends Envelop {

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

@ -22,7 +22,7 @@ import java.util.List;
 * 快速集成 {@link com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint}
 * @author llh
 */
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JsonInclude(JsonInclude.Include.ALWAYS)
@ApiModel(value = "EnvelopPage<T>", description = "分页查询返回")
public class PageEnvelop<T> extends Envelop implements Serializable {

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

@ -55,11 +55,11 @@ public abstract class EnvelopRestEndpoint {
    }
    protected <J> ObjEnvelop<J> success(J data, String desc, int code){
        ObjEnvelop<J> envelop = new ObjEnvelop<>();
        envelop.setMessage(desc);
        envelop.setStatus(code);
        envelop.setObj(data);
        return envelop;
        ObjEnvelop<J> objEnvelop = new ObjEnvelop<>();
        objEnvelop.setMessage(desc);
        objEnvelop.setStatus(code);
        objEnvelop.setObj(data);
        return objEnvelop;
    }
    protected <T> ListEnvelop<T> success(List<T> contents){
@ -71,54 +71,54 @@ public abstract class EnvelopRestEndpoint {
    }
    protected <T> ListEnvelop<T> success(List<T> contents, String desc, int code){
        ListEnvelop<T> envelop = new ListEnvelop<>();
        envelop.setMessage(desc);
        envelop.setStatus(code);
        envelop.setDetailModelList(contents);
        return envelop;
        ListEnvelop<T> listEnvelop = new ListEnvelop<>();
        listEnvelop.setMessage(desc);
        listEnvelop.setStatus(code);
        listEnvelop.setDetailModelList(contents);
        return listEnvelop;
    }
    protected <T> PageEnvelop success(List<T> contents, int totalCount, int currPage, int pageSize) {
    protected <T> PageEnvelop<T> success(List<T> contents, int totalCount, int currPage, int pageSize) {
        return success(contents, "success", totalCount, currPage, pageSize);
    }
    protected <T> PageEnvelop success(List<T> contents, String desc, int totalCount, int currPage, int pageSize) {
    protected <T> PageEnvelop<T> success(List<T> contents, String desc, int totalCount, int currPage, int pageSize) {
        return success(contents, desc, 200, totalCount, currPage, pageSize);
    }
    protected <T> PageEnvelop success(List<T> contents, String desc, int code, int totalCount, int currPage, int pageSize) {
        PageEnvelop<T> envelop = new PageEnvelop();
        envelop.setMessage(desc);
        envelop.setStatus(code);
        envelop.setCurrPage(currPage);
        envelop.setPageSize(pageSize);
        envelop.setTotalCount(totalCount);
        envelop.setDetailModelList(contents);
        return envelop;
    protected <T> PageEnvelop<T> success(List<T> contents, String desc, int code, int totalCount, int currPage, int pageSize) {
        PageEnvelop<T> pageEnvelop = new PageEnvelop();
        pageEnvelop.setMessage(desc);
        pageEnvelop.setStatus(code);
        pageEnvelop.setCurrPage(currPage);
        pageEnvelop.setPageSize(pageSize);
        pageEnvelop.setTotalCount(totalCount);
        pageEnvelop.setDetailModelList(contents);
        return pageEnvelop;
    }
    protected <T, J> MixEnvelop success(List<T> contents, J obj) {
    protected <T, J> MixEnvelop<T, J> success(List<T> contents, J obj) {
        return success(contents, obj, "success");
    }
    protected <T, J> MixEnvelop success(List<T> contents, J obj, String desc) {
    protected <T, J> MixEnvelop<T, J> success(List<T> contents, J obj, String desc) {
        return success(contents, obj, desc, 200);
    }
    protected <T, J> MixEnvelop success(List<T> contents, J data, String desc, int code) {
    protected <T, J> MixEnvelop<T, J> success(List<T> contents, J data, String desc, int code) {
        return success(contents, data, desc, code, contents.size(), 1, contents.size());
    }
    protected <T, J> MixEnvelop success(List<T> contents, J data, String desc, int code, int totalCount, int currPage, int pageSize) {
        MixEnvelop<T, J> envelop = new MixEnvelop();
        envelop.setMessage(desc);
        envelop.setStatus(code);
        envelop.setCurrPage(currPage);
        envelop.setPageSize(pageSize);
        envelop.setTotalCount(totalCount);
        envelop.setDetailModelList(contents);
        envelop.setObj(data);
        return envelop;
    protected <T, J> MixEnvelop<T, J> success(List<T> contents, J data, String desc, int code, int totalCount, int currPage, int pageSize) {
        MixEnvelop<T, J> mixEnvelop = new MixEnvelop();
        mixEnvelop.setMessage(desc);
        mixEnvelop.setStatus(code);
        mixEnvelop.setCurrPage(currPage);
        mixEnvelop.setPageSize(pageSize);
        mixEnvelop.setTotalCount(totalCount);
        mixEnvelop.setDetailModelList(contents);
        mixEnvelop.setObj(data);
        return mixEnvelop;
    }
    protected Envelop failed(String desc) {

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

@ -18,11 +18,11 @@ public enum EnvelopStatus {
    //------------------登陆 权限相关 end ------------------
    public String name;
    public Integer value;
    public Integer code;
    EnvelopStatus(String name, Integer value) {
        this.name = name;
        this.value = value;
        this.code = value;
    }
}

+ 2 - 2
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/FunctionEndpoint.java

@ -1,4 +1,4 @@
package com.yihu.jw.base.endpoint;
package com.yihu.jw.base.endpoint.function;
import com.yihu.jw.base.service.FunctionService;
import com.yihu.jw.entity.base.function.FunctionDO;
@ -22,7 +22,7 @@ import java.util.List;
 */
@RestController
@RequestMapping(value = BaseRequestMapping.Function.PREFIX)
@Api(value = "模块管理", description = "模块管理服务接口", tags = {"wlyy基础服务 - 模块管理服务接口"})
@Api(value = "功能管理", description = "功能管理服务接口", tags = {"wlyy基础服务 - 功能管理服务接口"})
public class FunctionEndpoint extends EnvelopRestEndpoint {
    @Autowired

+ 1 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/ModuleEndpoint.java

@ -1,4 +1,4 @@
package com.yihu.jw.base.endpoint;
package com.yihu.jw.base.endpoint.module;
import com.yihu.jw.base.service.ModuleService;
import com.yihu.jw.entity.base.module.ModuleDO;

+ 94 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/module/ModuleFunctionEndpoint.java

@ -0,0 +1,94 @@
package com.yihu.jw.base.endpoint.module;
import com.yihu.jw.base.service.ModuleFunctionService;
import com.yihu.jw.entity.base.module.ModuleFunctionDO;
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;
/**
 * Created by progr1mmer on 2018/8/16.
 */
@RestController
@RequestMapping(value = BaseRequestMapping.ModuleFunction.PREFIX)
@Api(value = "模块功能管理", description = "模块功能管理服务接口", tags = {"wlyy基础服务 - 模块功能管理服务接口"})
public class ModuleFunctionEndpoint extends EnvelopRestEndpoint {
    @Autowired
    private ModuleFunctionService moduleFunctionService;
    @PostMapping(value = BaseRequestMapping.ModuleFunction.CREATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @ApiOperation(value = "创建")
    public ObjEnvelop<ModuleFunctionDO> create (
            @ApiParam(name = "json_data", value = "Json数据", required = true)
            @RequestBody String jsonData) throws Exception {
        ModuleFunctionDO moduleFunctionDO = toEntity(jsonData, ModuleFunctionDO.class);
        moduleFunctionDO = moduleFunctionService.save(moduleFunctionDO);
        return success(moduleFunctionDO);
    }
    @PostMapping(value = BaseRequestMapping.ModuleFunction.DELETE)
    @ApiOperation(value = "删除")
    public Envelop delete(
            @ApiParam(name = "ids", value = "id串,中间用,分隔", required = true)
            @RequestParam(value = "ids") String ids) {
        moduleFunctionService.delete(ids);
        return success("删除成功");
    }
    @PostMapping(value = BaseRequestMapping.ModuleFunction.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 {
        ModuleFunctionDO moduleFunctionDO = toEntity(jsonData, ModuleFunctionDO.class);
        if (null == moduleFunctionDO.getId()) {
            return failed("ID不能为空");
        }
        moduleFunctionDO = moduleFunctionService.save(moduleFunctionDO);
        return success(moduleFunctionDO);
    }
    @GetMapping(value = BaseRequestMapping.ModuleFunction.PAGE)
    @ApiOperation(value = "获取分页")
    public PageEnvelop<ModuleFunctionDO> 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<ModuleFunctionDO> moduleFunctionDOS = moduleFunctionService.search(fields, filters, sorts, page, size);
        int count = (int)moduleFunctionService.getCount(filters);
        return success(moduleFunctionDOS, count, page, size);
    }
    @GetMapping(value = BaseRequestMapping.ModuleFunction.LIST)
    @ApiOperation(value = "获取列表")
    public ListEnvelop<ModuleFunctionDO> 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<ModuleFunctionDO> moduleFunctionDOS = moduleFunctionService.search(fields, filters, sorts);
        return success(moduleFunctionDOS);
    }
}

+ 1 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/SaasEndpoint.java

@ -1,4 +1,4 @@
package com.yihu.jw.base.endpoint;
package com.yihu.jw.base.endpoint.saas;
import com.yihu.jw.entity.base.saas.SaasDO;
import com.yihu.jw.base.service.SaasService;

+ 1 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/SystemDictEndpoint.java

@ -1,4 +1,4 @@
package com.yihu.jw.base.endpoint;
package com.yihu.jw.base.endpoint.system;
import com.yihu.jw.base.service.SystemDictService;
import com.yihu.jw.entity.base.system.SystemDictDO;

+ 1 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/SystemDictEntryEndpoint.java

@ -1,4 +1,4 @@
package com.yihu.jw.base.endpoint;
package com.yihu.jw.base.endpoint.system;
import com.yihu.jw.base.service.SystemDictEntryService;
import com.yihu.jw.entity.base.system.SystemDictEntryDO;

+ 1 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/ThemeEndpoint.java

@ -1,4 +1,4 @@
package com.yihu.jw.base.endpoint;
package com.yihu.jw.base.endpoint.theme;
import com.yihu.jw.base.service.ThemeService;
import com.yihu.jw.entity.base.theme.ThemeDO;

+ 20 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/ModuleFunctionService.java

@ -0,0 +1,20 @@
package com.yihu.jw.base.service;
import com.yihu.jw.base.dao.ModuleFunctionDao;
import com.yihu.jw.entity.base.module.ModuleFunctionDO;
import com.yihu.mysql.query.BaseJpaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
 * Created by chenweida on 2017/5/19.
 */
@Service
public class ModuleFunctionService extends BaseJpaService<ModuleFunctionDO, ModuleFunctionDao> {
    @Autowired
    private ModuleFunctionDao moduleFunctionDao;
}