wangys 6 years ago
parent
commit
a2e10e817f

+ 1 - 1
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/repository/CompanyRepository.java

@@ -8,5 +8,5 @@ import java.util.List;
 
 public interface CompanyRepository extends BasicRepository<Company> {
 
-    List<Company> findByStatusOrderBySortDesc(BaseStatusEnum status);
+    List<Company> findByStatusOrderByCodeAsc(BaseStatusEnum status);
 }

+ 1 - 1
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/repository/DepartmentRepository.java

@@ -14,7 +14,7 @@ public interface DepartmentRepository extends BasicRepository<Department> {
 
     List<Department> findByStatusOrderBySortDesc(BaseStatusEnum status);
 
-    @Query(value = "select * from department where status = 0 and id != 0 order by path, sort", nativeQuery = true)
+    @Query(value = "select * from department where status = 0 and id not in ('12345','123456','1234567') order by path, code", nativeQuery = true)
     List<Department> findSelect();
 
 }

+ 1 - 1
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/repository/ProductRepository.java

@@ -9,7 +9,7 @@ import java.util.List;
 
 public interface ProductRepository extends BasicRepository<Product> {
 
-    List<Product> findByStatusOrderBySortDesc(BaseStatusEnum status);
+    List<Product> findByStatusOrderByCodeAsc(BaseStatusEnum status);
 
     Product findById(String id);
 

+ 1 - 1
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/repository/ProjectRepository.java

@@ -10,7 +10,7 @@ import java.util.List;
 public interface ProjectRepository extends BasicRepository<Project> {
 
 
-    List<Project> findByStatusOrderBySortDesc(BaseStatusEnum status);
+    List<Project> findByStatusOrderByCodeAsc(BaseStatusEnum status);
 
     Project findByName(String name);
 

+ 1 - 1
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/service/impl/CompanyServiceImpl.java

@@ -71,6 +71,6 @@ public class CompanyServiceImpl implements CompanyService {
 
     @Override
     public ApiResult select() {
-        return ApiResult.ok(companyRepository.findByStatusOrderBySortDesc(BaseStatusEnum.NORMAL));
+        return ApiResult.ok(companyRepository.findByStatusOrderByCodeAsc(BaseStatusEnum.NORMAL));
     }
 }

+ 35 - 8
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/service/impl/ManageServiceImpl.java

@@ -1,12 +1,16 @@
 package cn.efunbox.manage.base.service.impl;
 
 import cn.efunbox.manage.base.entity.*;
+import cn.efunbox.manage.base.enums.BaseStatusEnum;
 import cn.efunbox.manage.base.enums.CompanyTypeEnum;
+import cn.efunbox.manage.base.enums.IncomeStatusEnum;
 import cn.efunbox.manage.base.enums.ManageTypeEnum;
 import cn.efunbox.manage.base.repository.*;
 import cn.efunbox.manage.base.service.ManageService;
 import cn.efunbox.manage.base.vo.ManageVO;
 import cn.efunbox.manage.common.entity.page.OnePage;
+import cn.efunbox.manage.common.enums.BaseOrderEnum;
+import cn.efunbox.manage.common.helper.SortHelper;
 import cn.efunbox.manage.common.result.ApiCode;
 import cn.efunbox.manage.common.result.ApiResult;
 import org.apache.commons.lang3.StringUtils;
@@ -53,8 +57,8 @@ public class ManageServiceImpl implements ManageService {
 
     @Override
     public ApiResult list(ManageVO manageVO, Integer pageNo, Integer pageSize) {
-        Pageable pageable = new PageRequest(pageNo - 1, pageSize);
-        Specification querySpecifi = new Specification<Manage>() {
+        Pageable pageable = new PageRequest(pageNo - 1, pageSize, SortHelper.sortMap2Sort(new LinkedHashMap<String, BaseOrderEnum>(){{put("happenTime", BaseOrderEnum.DESC);put("gmtModified", BaseOrderEnum.DESC);}}));
+        Specification specification = new Specification<Manage>() {
             @Override
             public Predicate toPredicate(Root<Manage> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
 
@@ -74,12 +78,35 @@ public class ManageServiceImpl implements ManageService {
                 if(Objects.nonNull(manageVO.getType())){
                     predicates.add(criteriaBuilder.equal(root.get("type"), manageVO.getType()));
                 }
-                if(Objects.nonNull(manageVO.getCostTypeId()) && 0 != manageVO.getCostTypeId()){
-                    predicates.add(criteriaBuilder.equal(root.get("costTypeId"), manageVO.getCostTypeId()));
+                if(manageVO.getCostTypeId() != null && manageVO.getCostTypeId().size() > 0){
+                    List<Predicate> list = new ArrayList<>();
+                    if (manageVO.getCostTypeId() != null && manageVO.getCostTypeId().size() > 0) {
+                        CriteriaBuilder.In<Object> in = criteriaBuilder.in(root.get("costTypeId"));
+                        for (Long id : manageVO.getCostTypeId()) {
+                            in.value(id);
+                        }
+                        list.add(in);
+                    }
+                    predicates.addAll(list);
                 }
-                if(Objects.nonNull(manageVO.getIncomeStatus())){
-                    predicates.add(criteriaBuilder.equal(root.get("incomeStatus"), manageVO.getIncomeStatus()));
+//                if(Objects.nonNull(manageVO.getCostTypeId()) && 0 != manageVO.getCostTypeId()){
+//                    predicates.add(criteriaBuilder.equal(root.get("costTypeId"), manageVO.getCostTypeId()));
+//                }
+                if(manageVO.getIncomeStatus() != null && manageVO.getIncomeStatus().size() > 0){
+                    List<Predicate> list = new ArrayList<>();
+                    if (manageVO.getIncomeStatus() != null && manageVO.getIncomeStatus().size() > 0) {
+                        CriteriaBuilder.In<Object> in = criteriaBuilder.in(root.get("incomeStatus"));
+                        for (IncomeStatusEnum incomeStatus : manageVO.getIncomeStatus()) {
+                            in.value(incomeStatus);
+                        }
+                        list.add(in);
+                    }
+                    predicates.addAll(list);
                 }
+//                if(Objects.nonNull(manageVO.getIncomeStatus())){
+//                    predicates.add(criteriaBuilder.equal(root.get("incomeStatus"), manageVO.getIncomeStatus()));
+//                }
+
                 if(Objects.nonNull(manageVO.getStatus())){
                     predicates.add(criteriaBuilder.equal(root.get("status"), manageVO.getStatus()));
                 }
@@ -109,11 +136,11 @@ public class ManageServiceImpl implements ManageService {
                 return criteriaBuilder.and(predicates.toArray(new Predicate[predicates.size()]));
             }
         };
-        Long count = manageRepository.count(querySpecifi);
+        Long count = manageRepository.count(specification);
         if (count == 0) {
             return ApiResult.ok(null);
         }
-        Page<Manage> manages = manageRepository.findAll(querySpecifi, pageable);
+        Page<Manage> manages = manageRepository.findAll(specification, pageable);
         if(Objects.isNull(manages)){
             return ApiResult.error(ApiCode.UNKNOWN_ERROR);
 

+ 1 - 1
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/service/impl/ProductServiceImpl.java

@@ -78,6 +78,6 @@ public class ProductServiceImpl implements ProductService {
 
     @Override
     public ApiResult getSelect(){
-        return ApiResult.ok(productRepository.findByStatusOrderBySortDesc(BaseStatusEnum.NORMAL));
+        return ApiResult.ok(productRepository.findByStatusOrderByCodeAsc(BaseStatusEnum.NORMAL));
     }
 }

+ 1 - 1
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/service/impl/ProjectServiceImpl.java

@@ -79,7 +79,7 @@ public class ProjectServiceImpl implements ProjectService {
 
     @Override
     public ApiResult getSelect() {
-        List<Project> projects = projectRepository.findByStatusOrderBySortDesc(BaseStatusEnum.NORMAL);
+        List<Project> projects = projectRepository.findByStatusOrderByCodeAsc(BaseStatusEnum.NORMAL);
         return ApiResult.ok(projects);
     }
 

+ 2 - 2
efunbox-base/efunbox-base-api/src/main/java/cn/efunbox/manage/base/vo/ManageVO.java

@@ -31,11 +31,11 @@ public class ManageVO implements Serializable {
 
     private ManageTypeEnum type;
 
-    private IncomeStatusEnum incomeStatus;
+    private List<IncomeStatusEnum> incomeStatus;
 
     private BaseStatusEnum status;
 
-    private Long costTypeId;
+    private List<Long> costTypeId;
 
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date startTime;

+ 1 - 1
efunbox-base/efunbox-base-web/src/main/java/cn/efunbox/manage/base/controller/ManageController.java

@@ -28,7 +28,7 @@ public class ManageController {
 
     @GetMapping
     public ApiResult findManage(ManageVO manageVO, Integer pageNo, Integer pageSize){
-        ApiResult<List<Department>> deptResult = departmentService.getDeptChild(manageVO.getDeptId() == null ? 0l : manageVO.getDeptId());
+        ApiResult<List<Department>> deptResult = departmentService.getDeptChild(manageVO.getDeptId() == null ? 12345l : manageVO.getDeptId());
         List<Long> deptIds = new ArrayList<>();
         deptResult.getData().stream().forEach(department -> {
             deptIds.add(department.getId());

+ 1 - 1
efunbox-base/efunbox-base-web/src/main/resources/application-dev.properties

@@ -13,7 +13,7 @@ spring.application.name=efunbox-manage-base
 #spring.datasource.url=jdbc:mysql://192.168.1.87:3306/live?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&allowMultiQueries=true
 #spring.datasource.username=root
 #spring.datasource.password=admin123
-spring.datasource.url=jdbc:mysql://192.168.1.96:3306/efunbox_manage_test?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&allowMultiQueries=true
+spring.datasource.url=jdbc:mysql://192.168.1.96:3306/efunbox_manage?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&allowMultiQueries=true
 spring.datasource.username=root
 spring.datasource.password=Efunbox^^2015$
 spring.datasource.driver-class-name=com.mysql.jdbc.Driver