上报库管理-表头排序
This commit is contained in:
+67
-7
@@ -9,23 +9,35 @@ import com.jero.modules.cert.report.entity.ParamsReportEO;
|
||||
import com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO;
|
||||
import com.jero.modules.cert.report.service.IParamsReportEOService;
|
||||
import com.jero.modules.cert.report.service.IParamsReportExportHistoryEOService;
|
||||
import com.jero.modules.dummy.enums.OrderEnum;
|
||||
import com.jero.modules.system.util.StringUtils;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
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.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.text.Collator;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
|
||||
/**
|
||||
/**
|
||||
* @Description: 上报库
|
||||
* @Author: jero-boot
|
||||
* @Date: 2022-05-18
|
||||
@@ -41,7 +53,7 @@ public class ParamsReportEOController extends JeroController<ParamsReportEO, IPa
|
||||
|
||||
@Autowired
|
||||
private IParamsReportExportHistoryEOService paramsReportExportHistoryEOService;
|
||||
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
@@ -67,14 +79,62 @@ public class ParamsReportEOController extends JeroController<ParamsReportEO, IPa
|
||||
paramsReportEO.setTitle(paramsReportEO.getTitle().replace("%", "\\%"));
|
||||
}
|
||||
|
||||
IPage page = new Page(pageNo, pageSize);
|
||||
IPage pageList = paramsReportEOService.pageInfo(page, paramsReportEO);
|
||||
List<ParamsReportEO> rows = pageList.getRecords();
|
||||
for (ParamsReportEO row : rows) {
|
||||
// IPage page = new Page(pageNo, pageSize);
|
||||
// IPage pageList = paramsReportEOService.pageInfo(page, paramsReportEO);
|
||||
// List<ParamsReportEO> rows = pageList.getRecords();
|
||||
// for (ParamsReportEO row : rows) {
|
||||
// row.setPageName(row.getProjectName() + "-" + row.getTargetMarket() + "-" + row.getTitle());
|
||||
// }
|
||||
List<ParamsReportEO> paramsReportEOS = paramsReportEOService.listInfo(paramsReportEO);
|
||||
for (ParamsReportEO row : paramsReportEOS) {
|
||||
row.setPageName(row.getProjectName() + "-" + row.getTargetMarket() + "-" + row.getTitle());
|
||||
}
|
||||
String orderBy = paramsReportEO.getOrderBy();
|
||||
String orderByField = paramsReportEO.getOrderByField();
|
||||
if(ObjectUtils.isNotEmpty(orderByField)) {
|
||||
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||
//编号 serialNumber
|
||||
if ("projectName".equals(orderByField)) {
|
||||
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||
Collections.sort(paramsReportEOS, (e1, e2) -> {
|
||||
return comparator.compare(e1.getPageName(), e2.getPageName());
|
||||
});
|
||||
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||
Collections.sort(paramsReportEOS, (e1, e2) -> {
|
||||
return comparator.compare(e2.getPageName(), e1.getPageName());
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
IPage pageList = getPages(pageNo,pageSize,paramsReportEOS);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
public Page getPages(Integer currentPage, Integer pageSize, List<ParamsReportEO> list){
|
||||
Page page =new Page();
|
||||
if(list==null){
|
||||
return null;
|
||||
}
|
||||
int size = list.size();
|
||||
if(pageSize > size){
|
||||
pageSize = size;
|
||||
}
|
||||
if(pageSize!=0){
|
||||
//求出最⼤页数,防⽌currentPage越界
|
||||
int maxPage = size % pageSize ==0? size / pageSize : size / pageSize +1;
|
||||
if(currentPage > maxPage){
|
||||
currentPage = maxPage;
|
||||
}
|
||||
}
|
||||
//当前页第⼀条数据的下标
|
||||
int curIdx = currentPage >1?(currentPage -1)* pageSize :0;
|
||||
List pageList =new ArrayList();
|
||||
//将当前页的数据放进pageList
|
||||
for(int i =0; i < pageSize && curIdx + i < size; i++){
|
||||
pageList.add(list.get(curIdx + i));
|
||||
}
|
||||
page.setCurrent(currentPage).setSize(pageSize).setTotal(list.size()).setRecords(pageList);
|
||||
return page;
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
|
||||
+9
@@ -82,4 +82,13 @@ public class ParamsReportEO implements Serializable {
|
||||
@TableField(exist = false)
|
||||
private String pageName; // 项目名称-国家-清单名称
|
||||
|
||||
//排序(1->正序, 2->倒序)
|
||||
@TableField(exist = false)
|
||||
private String orderBy;
|
||||
|
||||
//排序字段
|
||||
@TableField(exist = false)
|
||||
private String orderByField;
|
||||
|
||||
|
||||
}
|
||||
|
||||
+3
@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.jero.modules.cert.report.entity.ParamsReportEO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 上报库
|
||||
* @Author: jero-boot
|
||||
@@ -14,5 +16,6 @@ import org.apache.ibatis.annotations.Param;
|
||||
public interface ParamsReportEOMapper extends BaseMapper<ParamsReportEO> {
|
||||
|
||||
IPage pageInfo(@Param("page") IPage page, @Param("paramsReportEO") ParamsReportEO paramsReportEO);
|
||||
List<ParamsReportEO> listInfo(@Param("paramsReportEO") ParamsReportEO paramsReportEO);
|
||||
|
||||
}
|
||||
|
||||
+13
-1
@@ -57,5 +57,17 @@
|
||||
<include refid="BaseQuerySql"/>
|
||||
order by create_time desc
|
||||
</select>
|
||||
<select id="listInfo" resultMap="ParamsReportEOResultMap">
|
||||
select tmp_tb.* from(
|
||||
select <include refid="BaseColumnList"/>
|
||||
from params_report pr
|
||||
left join params_manifest as pm on pm.id = pr.old_params_manifest_id
|
||||
left join project_library_base as plb on plb.id = pm.project_id
|
||||
left join project_name_info as pni on plb.project_name_id = pni.id
|
||||
left join project_year_name_info as pyni on plb.year_name_id=pyni.id
|
||||
) tmp_tb
|
||||
<include refid="BaseQuerySql"/>
|
||||
order by create_time desc
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
</mapper>
|
||||
|
||||
+1
@@ -62,6 +62,7 @@ public interface IParamsReportEOService extends IService<ParamsReportEO> {
|
||||
List<ParamsReportEO> queryList();
|
||||
|
||||
IPage pageInfo(IPage page, ParamsReportEO paramsReportEO);
|
||||
List<ParamsReportEO> listInfo(ParamsReportEO paramsReportEO);
|
||||
|
||||
boolean isSync(String oldParamsManifestId, Integer version);
|
||||
|
||||
|
||||
+4
@@ -138,6 +138,10 @@ public class ParamsReportEOServiceImpl extends ServiceImpl<ParamsReportEOMapper,
|
||||
public IPage pageInfo(IPage page, ParamsReportEO paramsReportEO) {
|
||||
return paramsReportEOMapper.pageInfo(page, paramsReportEO);
|
||||
}
|
||||
@Override
|
||||
public List<ParamsReportEO> listInfo(ParamsReportEO paramsReportEO) {
|
||||
return paramsReportEOMapper.listInfo(paramsReportEO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSync(String oldParamsManifestId, Integer version) {
|
||||
|
||||
Reference in New Issue
Block a user