字典表功能开发
diff --git a/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/Repository/DictionaryTypeRepository.java b/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/Repository/DictionaryTypeRepository.java
index 496ccaf..eb72101 100644
--- a/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/Repository/DictionaryTypeRepository.java
+++ b/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/Repository/DictionaryTypeRepository.java
@@ -1,12 +1,41 @@
package com.supwisdom.leaveschool.basicsdata.Repository;
+import java.util.Map;
+
+import org.springframework.data.domain.Example;
+import org.springframework.data.domain.ExampleMatcher;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Repository;
import com.supwisdom.leaveschool.basicsdata.domain.DictionaryType;
import com.supwisdom.leaveschool.common.repository.BaseJpaRepository;
+import com.supwisdom.leaveschool.common.util.MapBeanUtils;
@Repository
public interface DictionaryTypeRepository extends BaseJpaRepository<DictionaryType> {
+ public default Page<DictionaryType> selectPageListByQuery(int pageIndex, int pageSize, Map<String, Object> mapBean) {
+ DictionaryType probe = new DictionaryType();
+ ExampleMatcher matcher = ExampleMatcher.matching();
+
+// probe.setEnabled(true);
+// matcher.withMatcher("enabled", ExampleMatcher.GenericPropertyMatchers.exact());
+ if (mapBean != null&&mapBean.keySet().size()>0) {
+ probe.setName(MapBeanUtils.getString(mapBean, "name"));
+ matcher.withMatcher("name", ExampleMatcher.GenericPropertyMatchers.contains());
+ }
+//
+// matcher.withMatcher("code", ExampleMatcher.GenericPropertyMatchers.contains())
+// .withMatcher("name", ExampleMatcher.GenericPropertyMatchers.contains())
+// .withMatcher("enabled", ExampleMatcher.GenericPropertyMatchers.exact());
+
+ PageRequest pageRequest = PageRequest.of(pageIndex, pageSize);
+ Example<DictionaryType> example = Example.of(probe, matcher);
+
+ Page<DictionaryType> page = this.findAll(example, pageRequest);
+
+ return page;
+ }
}
diff --git a/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/api/Api1DictionaryTypeController.java b/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/api/Api1DictionaryTypeController.java
index 896d4b5..155e9a2 100644
--- a/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/api/Api1DictionaryTypeController.java
+++ b/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/api/Api1DictionaryTypeController.java
@@ -1,15 +1,28 @@
package com.supwisdom.leaveschool.basicsdata.api;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.http.HttpStatus;
+import org.springframework.util.MimeTypeUtils;
+import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestController;
import com.supwisdom.leaveschool.basicsdata.Repository.DictionaryTypeRepository;
import com.supwisdom.leaveschool.basicsdata.domain.DictionaryType;
import com.supwisdom.leaveschool.common.controller.api.CrudApiController;
+import com.supwisdom.leaveschool.common.model.PagerRequestModel;
+import com.supwisdom.leaveschool.common.model.PagerResponseModel;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
@RestController
@RequestMapping("/api/v1/basics-data/dictionary-types")
+@Api(value="字典表类型操作",tags={"字典表类型的操作接口"})
public class Api1DictionaryTypeController extends CrudApiController<DictionaryType, DictionaryTypeRepository> {
@Autowired
@@ -19,6 +32,22 @@
protected DictionaryTypeRepository getRepository() {
return dictionaryTypeRepository;
}
+
+ @GetMapping(path = "/page/sercher",produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
+ @ResponseStatus(value = HttpStatus.OK)
+ @ApiOperation(value="根据查询条件获取字典表类型列表",notes="注意问题点")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "pageIndex", value = "当前第页数,默认0,为第一页", dataType = "int", required = true, defaultValue = "0"),
+ @ApiImplicitParam(name = "pageSize", value = "每页条数,默认20", required = true, dataType = "int", paramType = "query", defaultValue = "20"),
+ @ApiImplicitParam(name = "name", value = "类型码或名称", required = false, dataType = "string", paramType = "query", defaultValue = "")
+ })
+ public Object list(int pageIndex,int pageSize,String name) {
+ PagerRequestModel pagerRequestModel = new PagerRequestModel(pageIndex, pageSize);
+ pagerRequestModel.getMapBean().put("name", name);
+ Page<DictionaryType> page = dictionaryTypeRepository.selectPageListByQuery(pagerRequestModel.getPageIndex(), pagerRequestModel.getPageSize(), pagerRequestModel.getMapBean());
+ PagerResponseModel<DictionaryType> pagerResponseModel = PagerResponseModel.of(pagerRequestModel,page);
+ return pagerResponseModel;
+ }
}
diff --git a/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/domain/DictionaryType.java b/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/domain/DictionaryType.java
index 0361df8..4258939 100644
--- a/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/domain/DictionaryType.java
+++ b/leaveschool/basics-data/src/main/java/com/supwisdom/leaveschool/basicsdata/domain/DictionaryType.java
@@ -13,6 +13,7 @@
*/
@Entity
@Table(name = "TB_B_DICTIONARY_TYPE")
+@org.hibernate.annotations.Table(appliesTo = "TB_B_DICTIONARY_TYPE",comment="字典类型表")
public class DictionaryType extends ABaseDomain {
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/ClientApplication.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/ClientApplication.java
index 181f6a5..71d7a7b 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/ClientApplication.java
+++ b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/ClientApplication.java
@@ -13,12 +13,15 @@
import com.supwisdom.infras.security.configure.oauth2.EnableInfrasOAuth2;
import com.supwisdom.leaveschool.feign.CharlesRequestInterceptor;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
@SpringBootApplication
@EnableCircuitBreaker
@EnableFeignClients(value = "com.supwisdom.leaveschool.client.service")
@EnableHystrixDashboard
//@EnableInfrasOAuth2
@EnableInfrasApiSecurity
+@EnableSwagger2
public class ClientApplication {
public static void main(String[] args) {
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/controller/api/HelloController.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/controller/api/HelloController.java
index 5e71759..23824af 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/controller/api/HelloController.java
+++ b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/controller/api/HelloController.java
@@ -3,17 +3,23 @@
import java.util.HashMap;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
import org.springframework.util.MimeTypeUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestController;
import com.supwisdom.leaveschool.client.security.core.userdetails.MyUser;
import com.supwisdom.leaveschool.client.service.SampleUser1AdminUserRemoteService;
+import com.supwisdom.leaveschool.client.util.AuthenticationUtil;
import com.supwisdom.leaveschool.client.util.MyUserUtil;
import com.supwisdom.leaveschool.proxy.common.model.PagerRequestModel;
+import io.swagger.annotations.ApiOperation;
+
@RestController
@RequestMapping("/api/hello")
public class HelloController {
@@ -22,7 +28,7 @@
SampleUser1AdminUserRemoteService sampleUser1AdminUserRemoteService;
@GetMapping(path = "/{name}", produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
- public MyUser hello(@PathVariable("name") String name) {
+ public MyUser hello2(@PathVariable("name") String name) {
MyUser user = MyUserUtil.getCurrentMyUser();
//PagerRequestModel pagerRequestModel = new PagerRequestModel(); // 分页请求,默认 pageIndex=0, pageSize=20
@@ -33,4 +39,11 @@
return user;
}
+
+ @PostMapping(produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
+ @ResponseStatus(value = HttpStatus.OK)
+ public Object create(String name) {
+ MyUser user = MyUserUtil.getCurrentMyUser();
+ return user;
+ }
}
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/controller/basicsdata/DictionaryTypeController.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/controller/basicsdata/DictionaryTypeController.java
index a82b46a..c84153a 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/controller/basicsdata/DictionaryTypeController.java
+++ b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/controller/basicsdata/DictionaryTypeController.java
@@ -6,16 +6,23 @@
import org.springframework.http.HttpStatus;
import org.springframework.util.MimeTypeUtils;
import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestController;
-import com.supwisdom.leaveschool.client.service.basicsdata.DictionaryType1RemoteService;
+import com.supwisdom.leaveschool.client.service.DictionaryType1RemoteService;
+import com.supwisdom.leaveschool.client.util.AuthenticationUtil;
+import com.supwisdom.leaveschool.proxy.basicsdata.domain.DictionaryType;
+import com.supwisdom.leaveschool.proxy.common.model.SuccessResponseModel;
import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
@RestController
@RequestMapping("/api/basics-data/dictionary-types")
@@ -27,18 +34,30 @@
@Autowired
DictionaryType1RemoteService dictionaryType1RemoteService;
+
@GetMapping(produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
@ResponseStatus(value = HttpStatus.OK)
- @ApiOperation(value="获取字典表类型列表",tags={"获取字典表类型列表copy"},notes="注意问题点")
-// @ApiImplicitParams({
-// @ApiImplicitParam(name = "pageIndex", value = "当前第页数,默认0,为第一页", required = true, dataType = "int", paramType = "query", defaultValue = "0"),
-// @ApiImplicitParam(name = "pageSize", value = "每页条数,默认20", required = true, dataType = "int", paramType = "query", defaultValue = "20"),
-// @ApiImplicitParam(name = "name", value = "类型码或名称", required = false, dataType = "string", paramType = "query", defaultValue = "")
-// })
- @ResponseBody
- public Object list(@ApiParam(name="pageIndex",value="当前第页数,默认0,为第一页",required=true,defaultValue="0") int pageIndex,
- @ApiParam(name="pageIndex",value="每页条数,默认20",required=true,defaultValue="20") int pageSize,
- @ApiParam(name="name",value="类型码或名称",required=true,defaultValue="20") String name) {
- return dictionaryType1RemoteService.list(pageIndex,pageSize,name);
+ @ApiOperation(value="获取字典表类型列表",notes="注意问题点")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "pageIndex", value = "当前第页数,默认0,为第一页", dataType = "int", required = true, defaultValue = "0"),
+ @ApiImplicitParam(name = "pageSize", value = "每页条数,默认20", required = true, dataType = "int", paramType = "query", defaultValue = "20"),
+ @ApiImplicitParam(name = "name", value = "类型码或名称", required = false, dataType = "string", paramType = "query", defaultValue = "")
+ })
+// public Object list(@ApiParam(name="pageIndex",value="当前第页数,默认0,为第一页",required=true,defaultValue="0") int pageIndex,
+// @ApiParam(name="pageSize",value="每页条数,默认20",required=true,defaultValue="20") int pageSize,
+// @ApiParam(name="name",value="类型码或名称",required=false,defaultValue="") String name) {
+// return dictionaryType1RemoteService.list(pageIndex,pageSize,name);
+// }
+ public Object list(int pageIndex,@RequestParam(defaultValue="20") int pageSize,String name) {
+ return dictionaryType1RemoteService.list(pageIndex,pageSize,name);
+ }
+
+
+ @PostMapping(produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
+ @ResponseStatus(value = HttpStatus.OK)
+ @ApiOperation(value="新增字典表类型",notes="注意问题点")
+ public Object create(String name) {
+ logger.debug(AuthenticationUtil.currentUsername());
+ return "";
}
}
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/DemoUserRemoteService.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/DemoUserRemoteService.java
index 2fa6624..2072979 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/DemoUserRemoteService.java
+++ b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/DemoUserRemoteService.java
@@ -11,8 +11,8 @@
import com.supwisdom.leaveschool.client.service.fallback.DemoUserRemoteHystrix;
@FeignClient(
- name = "sample-user",
- url = "${sample-user.api.url}/api/demo/users",
+ name = "leaveschool-user",
+ url = "${leaveschool-user.api.url}/api/demo/users",
fallback = DemoUserRemoteHystrix.class
)
public interface DemoUserRemoteService {
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/basicsdata/DictionaryType1RemoteService.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/DictionaryType1RemoteService.java
similarity index 90%
rename from leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/basicsdata/DictionaryType1RemoteService.java
rename to leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/DictionaryType1RemoteService.java
index 329c550..1f36fc8 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/basicsdata/DictionaryType1RemoteService.java
+++ b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/DictionaryType1RemoteService.java
@@ -1,4 +1,4 @@
-package com.supwisdom.leaveschool.client.service.basicsdata;
+package com.supwisdom.leaveschool.client.service;
import java.util.Map;
@@ -24,7 +24,7 @@
public interface DictionaryType1RemoteService {
@RequestMapping(method = RequestMethod.GET, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
- public PagerResponseModel<DictionaryType> list(int pageIndex,int pageSize,String name);
+ public PagerResponseModel<DictionaryType> list(@RequestParam("pageIndex") int pageIndex,@RequestParam("pageSize") int pageSize,@RequestParam("name") String name);
@RequestMapping(path = "/{id}", method = RequestMethod.GET, produces = MimeTypeUtils.APPLICATION_JSON_VALUE)
public DictionaryType get(@PathVariable("id") String id);
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminGroupRemoteService.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminGroupRemoteService.java
index a83980f..a29bbe1 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminGroupRemoteService.java
+++ b/leaveschool/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-group",
- url = "${sample-user.api.url}/api/v1/admin/groups",
+ name = "leaveschool-user-1-admin-group",
+ url = "${leaveschool-user.api.url}/api/v1/admin/groups",
fallback = SampleUser1AdminGroupRemoteHystrix.class
)
public interface SampleUser1AdminGroupRemoteService {
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminRoleRemoteService.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminRoleRemoteService.java
index 0f74258..80b387e 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminRoleRemoteService.java
+++ b/leaveschool/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-role",
- url = "${sample-user.api.url}/api/v1/admin/roles",
+ name = "leaveschool-user-1-admin-role",
+ url = "${leaveschool-user.api.url}/api/v1/admin/roles",
fallback = SampleUser1AdminRoleRemoteHystrix.class
)
public interface SampleUser1AdminRoleRemoteService {
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminUserRemoteService.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminUserRemoteService.java
index 6d361df..4fa2665 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminUserRemoteService.java
+++ b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1AdminUserRemoteService.java
@@ -14,8 +14,8 @@
import com.supwisdom.leaveschool.proxy.user.domain.User;
@FeignClient(
- name = "sample-user-1-admin-user",
- url = "${sample-user.api.url}/api/v1/admin/users",
+ name = "leaveschool-user-1-admin-user",
+ url = "${leaveschool-user.api.url}/api/v1/admin/users",
fallback = SampleUser1AdminUserRemoteHystrix.class
)
public interface SampleUser1AdminUserRemoteService {
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1SecurityUserRemoteService.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1SecurityUserRemoteService.java
index 9a55516..fee6be2 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1SecurityUserRemoteService.java
+++ b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/SampleUser1SecurityUserRemoteService.java
@@ -11,8 +11,8 @@
import com.supwisdom.leaveschool.proxy.user.model.SecurityUser;
@FeignClient(
- name = "sample-user-1-security-user",
- url = "${sample-user.api.url}/api/v1/security/users",
+ name = "leaveschool-user-1-security-user",
+ url = "${leaveschool-user.api.url}/api/v1/security/users",
fallback = SampleUser1SecurityUserRemoteHystrix.class
)
public interface SampleUser1SecurityUserRemoteService {
diff --git a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/fallback/DictionaryType1RemoteHystrix.java b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/fallback/DictionaryType1RemoteHystrix.java
index de6a7a7..7fccb1b 100644
--- a/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/fallback/DictionaryType1RemoteHystrix.java
+++ b/leaveschool/client/src/main/java/com/supwisdom/leaveschool/client/service/fallback/DictionaryType1RemoteHystrix.java
@@ -4,7 +4,7 @@
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
-import com.supwisdom.leaveschool.client.service.basicsdata.DictionaryType1RemoteService;
+import com.supwisdom.leaveschool.client.service.DictionaryType1RemoteService;
import com.supwisdom.leaveschool.proxy.basicsdata.domain.DictionaryType;
import com.supwisdom.leaveschool.proxy.common.model.PagerResponseModel;
import com.supwisdom.leaveschool.proxy.common.model.SuccessResponseModel;
diff --git a/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/controller/api/CrudApiController.java b/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/controller/api/CrudApiController.java
index 0f32960..130b35f 100644
--- a/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/controller/api/CrudApiController.java
+++ b/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/controller/api/CrudApiController.java
@@ -83,6 +83,7 @@
return pagerResponseModel;
}
+
/**
*
* curl -i -s -X GET -H 'Accept:application/json' 'http://localhost:10010/${API_PATH_PREFIX}/domains/1'
diff --git a/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/model/PagerRequestModel.java b/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/model/PagerRequestModel.java
index adc2db5..e141905 100644
--- a/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/model/PagerRequestModel.java
+++ b/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/model/PagerRequestModel.java
@@ -1,6 +1,7 @@
package com.supwisdom.leaveschool.common.model;
import java.io.Serializable;
+import java.util.HashMap;
import java.util.Map;
import io.swagger.annotations.ApiModelProperty;
@@ -14,8 +15,22 @@
private int pageIndex = 0;
private int pageSize = 20;
+
+ public PagerRequestModel() {
+ super();
+ }
+
+
- public int getPageIndex() {
+ public PagerRequestModel(int pageIndex, int pageSize) {
+ super();
+ this.pageIndex = pageIndex;
+ this.pageSize = pageSize;
+ }
+
+
+
+public int getPageIndex() {
return pageIndex;
}
@@ -32,7 +47,7 @@
}
@ApiModelProperty(hidden=true)
- private Map<String, Object> mapBean;
+ private Map<String, Object> mapBean = new HashMap<String, Object>();
public Map<String, Object> getMapBean() {
return mapBean;
diff --git a/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/model/PagerResponseModel.java b/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/model/PagerResponseModel.java
index 5df7315..548440a 100644
--- a/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/model/PagerResponseModel.java
+++ b/leaveschool/common/src/main/java/com/supwisdom/leaveschool/common/model/PagerResponseModel.java
@@ -3,6 +3,8 @@
import java.io.Serializable;
import java.util.Collection;
+import org.springframework.data.domain.Page;
+
public class PagerResponseModel<T> extends PagerRequestModel implements Serializable {
/**
@@ -26,15 +28,38 @@
super.setPageSize(pagerRequestModel.getPageSize());
super.setMapBean(pagerRequestModel.getMapBean());
}
+
+ public PagerResponseModel(PagerRequestModel pagerRequestModel,Page<T> page) {
+ super.setPageIndex(pagerRequestModel.getPageIndex());
+ super.setPageSize(pagerRequestModel.getPageSize());
+ super.setMapBean(pagerRequestModel.getMapBean());
+ this.setCurrentItemCount(page.getNumberOfElements());
+ this.setPageCount(page.getTotalPages());
+ this.setRecordCount(page.getTotalElements());
+ this.setItems(page.getContent());
+ }
- public static <T> PagerResponseModel<T> of(PagerRequestModel pagerRequestModel) {
+ public static <T> PagerResponseModel<T> of(PagerRequestModel pagerRequestModel,Page<T> page) {
PagerResponseModel<T> pagerResponseModell = new PagerResponseModel<T>();
pagerResponseModell.setPageIndex(pagerRequestModel.getPageIndex());
pagerResponseModell.setPageSize(pagerRequestModel.getPageSize());
pagerResponseModell.setMapBean(pagerRequestModel.getMapBean());
+ pagerResponseModell.setCurrentItemCount(page.getNumberOfElements());
+ pagerResponseModell.setPageCount(page.getTotalPages());
+ pagerResponseModell.setRecordCount(page.getTotalElements());
+ pagerResponseModell.setItems(page.getContent());
return pagerResponseModell;
}
+
+ public static <T> PagerResponseModel<T> of(PagerRequestModel pagerRequestModel) {
+ PagerResponseModel<T> pagerResponseModell = new PagerResponseModel<T>();
+ pagerResponseModell.setPageIndex(pagerRequestModel.getPageIndex());
+ pagerResponseModell.setPageSize(pagerRequestModel.getPageSize());
+ pagerResponseModell.setMapBean(pagerRequestModel.getMapBean());
+
+ return pagerResponseModell;
+ }
public int getCurrentItemCount() {
return currentItemCount;