REQ-2299 列表分页模糊查询
This commit is contained in:
parent
69943f37ed
commit
17c676f4a3
@ -1,8 +1,11 @@
|
||||
package cn.axzo.tyr.client.feign;
|
||||
|
||||
import cn.axzo.core.domain.PageResult;
|
||||
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||
import cn.axzo.tyr.client.model.req.CreateDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.req.EditDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.req.PageDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.res.SimpleDataObjectRes;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
@ -30,4 +33,12 @@ public interface DataObjectApi {
|
||||
|
||||
@PostMapping("/api/dataObject/delete")
|
||||
ApiResult<Void> deleteDataObject(@RequestParam Long dataObjectId, @RequestParam(required = false) Long updateBy);
|
||||
|
||||
/**
|
||||
* 分页查询数据对象列表
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/api/dataObject/page")
|
||||
ApiResult<PageResult<SimpleDataObjectRes>> pageDataObject(@RequestBody @Valid PageDataObjectReq req);
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package cn.axzo.tyr.client.model.data.object;
|
||||
|
||||
import cn.axzo.core.domain.PageRequest;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
@ -11,7 +12,7 @@ import lombok.experimental.Accessors;
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Accessors(chain = true)
|
||||
public class DataObjectQueryBO {
|
||||
public class DataObjectQueryBO extends PageRequest {
|
||||
/**
|
||||
* 数据权限code
|
||||
*/
|
||||
|
||||
@ -0,0 +1,18 @@
|
||||
package cn.axzo.tyr.client.model.req;
|
||||
|
||||
import cn.axzo.core.domain.PageRequest;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class PageDataObjectReq extends PageRequest {
|
||||
/**
|
||||
* 数据对象名称 搜索
|
||||
*/
|
||||
private String keyword;
|
||||
}
|
||||
@ -0,0 +1,25 @@
|
||||
package cn.axzo.tyr.client.model.res;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class SimpleDataObjectRes {
|
||||
/**
|
||||
* 数据对象id
|
||||
*/
|
||||
private Long dataObjectId;
|
||||
/**
|
||||
* 数据对象Code
|
||||
*/
|
||||
private String dataObjectCode;
|
||||
/**
|
||||
* 数据对象名称
|
||||
*/
|
||||
private String dataObjectName;
|
||||
}
|
||||
@ -1,27 +0,0 @@
|
||||
package cn.axzo.tyr.server.config.mybatisplus;
|
||||
|
||||
import cn.axzo.pokonyan.config.mybatisplus.EntityMetaObjectHandler;
|
||||
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
|
||||
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.transaction.annotation.EnableTransactionManagement;
|
||||
|
||||
/**
|
||||
* @author lijiacheng 李嘉成 Jache
|
||||
*/
|
||||
@EnableTransactionManagement
|
||||
@Configuration
|
||||
public class MybatisPlusConfig {
|
||||
|
||||
@Bean
|
||||
public MybatisPlusInterceptor paginationInterceptor() {
|
||||
MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
|
||||
mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
|
||||
return mybatisPlusInterceptor;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -1,10 +1,13 @@
|
||||
package cn.axzo.tyr.server.controller.data.object;
|
||||
|
||||
import cn.axzo.core.domain.PageResult;
|
||||
import cn.axzo.framework.auth.domain.ContextInfoHolder;
|
||||
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||
import cn.axzo.tyr.client.feign.DataObjectApi;
|
||||
import cn.axzo.tyr.client.model.req.CreateDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.req.EditDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.req.PageDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.res.SimpleDataObjectRes;
|
||||
import cn.axzo.tyr.server.service.DataObjectService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -37,4 +40,10 @@ public class DataObjectController implements DataObjectApi {
|
||||
return ApiResult.ok();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResult<PageResult<SimpleDataObjectRes>> pageDataObject(PageDataObjectReq req) {
|
||||
return ApiResult.ok(dataObjectService.pageDataObject(req));
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -4,6 +4,7 @@ import cn.axzo.basics.common.constant.enums.DeleteEnum;
|
||||
import cn.axzo.tyr.client.model.data.object.DataObjectQueryBO;
|
||||
import cn.axzo.tyr.server.repository.entity.DataObject;
|
||||
import cn.axzo.tyr.server.repository.mapper.DataObjectMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Repository;
|
||||
@ -17,12 +18,21 @@ public class DataObjectDao extends ServiceImpl<DataObjectMapper, DataObject> {
|
||||
public List<DataObject> duplicateListByBO(DataObjectQueryBO bo) {
|
||||
return lambdaQuery()
|
||||
.eq(DataObject::getIsDelete, DeleteEnum.NORMAL.getValue())
|
||||
.and(sql -> sql
|
||||
.eq(StringUtils.isNotEmpty(bo.getDataObjectCode()), DataObject::getDataObjectCode, bo.getDataObjectCode())
|
||||
.or(StringUtils.isNotEmpty(bo.getDataObjectCode()))
|
||||
.eq(StringUtils.isNotEmpty(bo.getDataObjectName()), DataObject::getDataObjectName, bo.getDataObjectName())
|
||||
.eq(StringUtils.isNotEmpty(bo.getDataObjectName()), DataObject::getDataObjectName, bo.getDataObjectName()))
|
||||
.list();
|
||||
}
|
||||
|
||||
public IPage<DataObject> pageByBO(DataObjectQueryBO bo) {
|
||||
return lambdaQuery()
|
||||
.eq(DataObject::getIsDelete, DeleteEnum.NORMAL.getValue())
|
||||
.eq(StringUtils.isNotEmpty(bo.getDataObjectCode()), DataObject::getDataObjectCode, bo.getDataObjectCode())
|
||||
.like(StringUtils.isNotEmpty(bo.getDataObjectName()), DataObject::getDataObjectName, bo.getDataObjectName())
|
||||
.page(bo.toPage());
|
||||
}
|
||||
|
||||
public void deleteByIdList(List<Long> idList, Long updateBy) {
|
||||
lambdaUpdate()
|
||||
.eq(DataObject::getIsDelete, DeleteEnum.NORMAL.getValue())
|
||||
|
||||
@ -1,7 +1,10 @@
|
||||
package cn.axzo.tyr.server.service;
|
||||
|
||||
import cn.axzo.core.domain.PageResult;
|
||||
import cn.axzo.tyr.client.model.req.CreateDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.req.EditDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.req.PageDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.res.SimpleDataObjectRes;
|
||||
|
||||
public interface DataObjectService {
|
||||
Long createDataObject(CreateDataObjectReq req);
|
||||
@ -9,4 +12,6 @@ public interface DataObjectService {
|
||||
void editDataObject(EditDataObjectReq req);
|
||||
|
||||
void deleteDataObject(Long dataObjectId, Long updateBy);
|
||||
|
||||
PageResult<SimpleDataObjectRes> pageDataObject(PageDataObjectReq req);
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package cn.axzo.tyr.server.service.impl;
|
||||
|
||||
import cn.axzo.basics.common.exception.ServiceException;
|
||||
import cn.axzo.core.domain.PageResult;
|
||||
import cn.axzo.tyr.client.common.enums.ReturnCodeEnum;
|
||||
import cn.axzo.tyr.client.common.enums.YesNoEnum;
|
||||
import cn.axzo.tyr.client.model.data.object.AttributeBO;
|
||||
@ -8,6 +9,8 @@ import cn.axzo.tyr.client.model.data.object.DataObjectQueryBO;
|
||||
import cn.axzo.tyr.client.model.data.object.DataObjectRuleBO;
|
||||
import cn.axzo.tyr.client.model.req.CreateDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.req.EditDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.req.PageDataObjectReq;
|
||||
import cn.axzo.tyr.client.model.res.SimpleDataObjectRes;
|
||||
import cn.axzo.tyr.server.repository.dao.DataObjectAttrDao;
|
||||
import cn.axzo.tyr.server.repository.dao.DataObjectDao;
|
||||
import cn.axzo.tyr.server.repository.dao.DataObjectRuleAttrDao;
|
||||
@ -21,6 +24,7 @@ import cn.axzo.tyr.server.repository.entity.DataObjectRuleScope;
|
||||
import cn.axzo.tyr.server.service.DataObjectService;
|
||||
import cn.axzo.tyr.server.utils.mapper.DataObjectMapper;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -159,6 +163,22 @@ public class DataObjectServiceImpl implements DataObjectService {
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<SimpleDataObjectRes> pageDataObject(PageDataObjectReq req) {
|
||||
DataObjectQueryBO bo = DataObjectQueryBO.builder().dataObjectName(req.getKeyword()).build();
|
||||
bo.setPage(req.getPage());
|
||||
bo.setPageSize(req.getPageSize());
|
||||
IPage<DataObject> dataObjectIPage = dataObjectDao.pageByBO(bo);
|
||||
List<SimpleDataObjectRes> resList = dataObjectIPage.getRecords().stream()
|
||||
.map(e -> SimpleDataObjectRes.builder()
|
||||
.dataObjectId(e.getId())
|
||||
.dataObjectCode(e.getDataObjectCode())
|
||||
.dataObjectName(e.getDataObjectName())
|
||||
.build())
|
||||
.collect(Collectors.toList());
|
||||
return new PageResult<>(resList, dataObjectIPage.getTotal());
|
||||
}
|
||||
|
||||
private void checkRuleNameUnique(CreateDataObjectReq req) {
|
||||
if (CollUtil.isNotEmpty(req.getDataObjectRuleBOList())) {
|
||||
List<String> nameList = req.getDataObjectRuleBOList().stream().map(DataObjectRuleBO::getDataObjectRuleName).distinct().collect(Collectors.toList());
|
||||
|
||||
Loading…
Reference in New Issue
Block a user