2023年4月6日 完善首页

This commit is contained in:
bai 2023-04-06 00:43:43 +08:00
parent 0d3bf97a7e
commit 648aa8bb59
7 changed files with 67 additions and 7 deletions

View File

@ -94,9 +94,19 @@ public class QueryGenerator {
* @return QueryWrapper实例
*/
public static <T> QueryWrapper<T> initQueryWrapper(T searchObj,Map<String, String[]> parameterMap){
return initQueryWrapper(null,searchObj,parameterMap);
}
/**
* 获取查询条件构造器QueryWrapper实例 通用查询条件已被封装完成
* @param searchObj 查询实体
* @param parameterMap request.getParameterMap()
* @return QueryWrapper实例
*/
public static <T> QueryWrapper<T> initQueryWrapper(String columnPrefix,T searchObj,Map<String, String[]> parameterMap){
long start = System.currentTimeMillis();
QueryWrapper<T> queryWrapper = new QueryWrapper<T>();
installMplus(queryWrapper, searchObj, parameterMap);
installMplus(queryWrapper, columnPrefix, searchObj, parameterMap);
log.debug("---查询条件构造器初始化完成,耗时:"+(System.currentTimeMillis()-start)+"毫秒----");
return queryWrapper;
}
@ -110,7 +120,7 @@ public class QueryGenerator {
* <br>正确示例:QueryWrapper<JeecgDemo> queryWrapper = new QueryWrapper<JeecgDemo>();
* <br>3.也可以不使用这个方法直接调用 {@link #initQueryWrapper}直接获取实例
*/
private static void installMplus(QueryWrapper<?> queryWrapper,Object searchObj,Map<String, String[]> parameterMap) {
private static void installMplus(QueryWrapper<?> queryWrapper,String columnPrefix,Object searchObj,Map<String, String[]> parameterMap) {
/*
* 注意:权限查询由前端配置数据规则 当一个人有多个所属部门时候 可以在规则配置包含条件 orgCode 包含 #{sys_org_code}
@ -148,6 +158,10 @@ public class QueryGenerator {
//column为null只有一种情况 那就是 添加了注解@TableField(exist = false) 后续都不用处理了
continue;
}
//二开项目组新增为了支持多表添加别名
if(oConvertUtils.isNotEmpty(columnPrefix)){
column = columnPrefix + "." + column;
}
fieldColumnMap.put(name,column);
//数据权限查询
if(ruleMap.containsKey(name)) {

View File

@ -171,4 +171,17 @@ public class KcYuyueController extends JeecgController<KcYuyue, IKcYuyueService>
return super.importExcel(request, response, KcYuyue.class);
}
@ApiOperation(value="kc_yuyue-分页列表查询", notes="kc_yuyue-分页列表查询")
@GetMapping(value = "/findTingkeZuJiByPage")
public Result<IPage<?>> findTingkeZuJiByPage(KcYuyue kcYuyue,@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) {
QueryWrapper<KcYuyue> queryWrapper = QueryGenerator.initQueryWrapper("a",kcYuyue, req.getParameterMap());
if(kcYuyue.getIsOrderByNow() != null && kcYuyue.getIsOrderByNow()){
queryWrapper.orderByAsc("ABS(NOW() - str_to_date( CONCAT( kt.skrq, kt.hhks ), '%Y-%m-%d %H%i' ))");
}
Page<KcYuyue> page = new Page<KcYuyue>(pageNo, pageSize);
IPage<Map<String,Object>> pageList = kcYuyueService.findTingkeZuJiByPage(page, queryWrapper);
return Result.OK(pageList);
}
}

View File

@ -4,10 +4,8 @@ import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
@ -75,6 +73,7 @@ public class KcYuyue implements Serializable {
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private java.util.Date createTime;
@TableField(exist = false)
private Boolean isOrderByNow;
}

View File

@ -1,7 +1,11 @@
package org.jeecg.modules.kc.kcYuyue.mapper;
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.kc.kcYuyue.entity.KcYuyue;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@ -14,4 +18,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface KcYuyueMapper extends BaseMapper<KcYuyue> {
Page<Map<String,Object>> findTingkeZuJiByPage(Page<?> page, @Param(Constants.WRAPPER) Wrapper<?> queryWrapper);
}

View File

@ -2,4 +2,14 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.kc.kcYuyue.mapper.KcYuyueMapper">
<select id="findTingkeZuJiByPage" resultType="java.util.Map">
SELECT
kt.*,
a.id AS yyid
FROM
kc_yuyue a
LEFT JOIN kc_ketangbiao kt ON a.ketangbiaoid = kt.id
${ew.customSqlSegment}
</select>
</mapper>

View File

@ -1,8 +1,15 @@
package org.jeecg.modules.kc.kcYuyue.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.kc.kcYuyue.entity.KcYuyue;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;
/**
* @Description: kc_yuyue
* @Author: jeecg-boot
@ -11,4 +18,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IKcYuyueService extends IService<KcYuyue> {
Page<Map<String,Object>> findTingkeZuJiByPage(Page<?> page, Wrapper<?> queryWrapper);
}

View File

@ -1,5 +1,7 @@
package org.jeecg.modules.kc.kcYuyue.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.modules.kc.kcYuyue.entity.KcYuyue;
import org.jeecg.modules.kc.kcYuyue.mapper.KcYuyueMapper;
import org.jeecg.modules.kc.kcYuyue.service.IKcYuyueService;
@ -7,6 +9,9 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.List;
import java.util.Map;
/**
* @Description: kc_yuyue
* @Author: jeecg-boot
@ -16,4 +21,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@Service
public class KcYuyueServiceImpl extends ServiceImpl<KcYuyueMapper, KcYuyue> implements IKcYuyueService {
@Override
public Page<Map<String, Object>> findTingkeZuJiByPage(Page<?> page, Wrapper<?> queryWrapper) {
return baseMapper.findTingkeZuJiByPage(page,queryWrapper);
}
}