liurunyu
2023-11-12 1ff17fd97a85cd191467b4a2ffe0e4b7b1959af5
查询用户同时得到其对应的多个角色,采用积极关联查询方式
6个文件已修改
55 ■■■■ 已修改文件
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaBlockMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaRoleMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/block/BlockSv.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserSv.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java
@@ -19,30 +19,25 @@
     * 每页显示的记录数
     */
    @Schema(description = "每页记录数")
    @Builder.Default
    public Integer pageSize = 0 ;
    public Integer pageSize ;
    /**
     * 记录总数
     */
    @Schema(description = "记录总数")
    @Builder.Default
    public Long itemTotal = 0L;
    public Long itemTotal ;
    /**
     * 当前页
     */
    @Schema(description = "当前页")
    @Builder.Default
    public Integer pageCurr = 0;
    public Integer pageCurr ;
    /**
     * 总页数
     */
    @Schema(description = "总页数")
    @Builder.Default
    public Integer pageTotal = 0;
    public Integer pageTotal ;
    @Schema(description = "数据")
    @Builder.Default
    public T content = null;
    public T obj;
    /**
     * 查询开始记录
@@ -62,18 +57,22 @@
    public void calculateAndSet(Long itemTotal, Map<String, Object> params) {
        this.itemTotal = itemTotal ;
        if(this.itemTotal == null){
            itemTotal = 0L ;
            this.itemTotal = 0L ;
        }
        if (pageSize < 1) {
            pageSize = 1;
        if(this.itemTotal == 0){
            this.pageSize = 1 ;
        }
        pageTotal = (int)Math.ceil((double)itemTotal/pageSize);
        if(this.pageSize == null || this.pageSize <= 0){
            this.pageSize = 1 ;//供下面作为除数
        }
        pageTotal = (int)Math.ceil((itemTotal==null?0.0D:itemTotal.doubleValue())/pageSize);
        if (pageTotal == 0) {
            pageTotal = 1;
        }
        if (pageCurr < 1) {
        if (pageCurr == null || pageCurr < 1) {
            pageCurr = 1;
        }
        if (pageCurr > pageTotal) {
@@ -84,8 +83,8 @@
        this.queryStart = (this.pageCurr - 1) * this.pageSize ;
        this.queryCount = this.pageSize ;
        params.put("queryStart", this.queryStart) ;
        params.put("queryCount", this.queryCount) ;
        params.put("start", this.queryStart) ;
        params.put("count", this.queryCount) ;
    }
}
pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaBlockMapper.xml
@@ -63,8 +63,8 @@
    </trim>
    order by id DESC
    <trim prefix="limit " >
      <if test="queryStart != null and queryCount != null">
        #{queryStart}, #{queryCount}
      <if test="start != null and count != null">
        #{start}, #{count}
      </if>
    </trim>
  </select>
pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaRoleMapper.xml
@@ -18,7 +18,7 @@
  </sql>
  <sql id="part_Column_List">
    id, name, deleted
    id, name
  </sql>
  <select id="selectAll" resultMap="BaseResultMap">
pipIrr-platform/pipIrr-global/src/main/resources/mapper/BaUserMapper.xml
@@ -36,7 +36,7 @@
    </resultMap>
    <resultMap id="someResultMap" extends="partResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaUser">
        <collection property="roleList" fetchType="lazy" column="{userId=id}" select="com.dy.pipIrrGlobal.daoBa.BaRoleMapper.selectByUserId" />
        <collection property="roleList" fetchType="eager" column="{userId=id}" select="com.dy.pipIrrGlobal.daoBa.BaRoleMapper.selectByUserId" />
    </resultMap>
    <sql id="Base_Column_List">
@@ -85,8 +85,8 @@
        </trim>
        order by id DESC
        <trim prefix="limit " >
            <if test="queryStart != null and queryCount != null">
                #{queryStart}, #{queryCount}
            <if test="start != null and count != null">
                #{start}, #{count}
            </if>
        </trim>
    </select>
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/block/BlockSv.java
@@ -44,8 +44,9 @@
        rsVo.pageSize = vo.pageSize ;
        rsVo.pageCurr = vo.pageCurr ;
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = this.dao.selectSome(params) ;
        return (QueryResultVo.<List<BaBlock>>builder().content(this.dao.selectSome(params))).build() ;
        return rsVo ;
    }
    /**
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserSv.java
@@ -3,13 +3,11 @@
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.daoBa.BaUserMapper;
import com.dy.pipIrrGlobal.pojoBa.BaBlock;
import com.dy.pipIrrGlobal.pojoBa.BaUser;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -46,12 +44,13 @@
        Map<String, Object> params = (Map<String, Object>)PojoUtils.generalize(vo) ;
        Long itemTotal = this.dao.selectTotal(params) ;
        QueryResultVo<List<BaBlock>> rsVo = new QueryResultVo<>() ;
        QueryResultVo<List<BaUser>> rsVo = new QueryResultVo<>() ;
        rsVo.pageSize = vo.pageSize ;
        rsVo.pageCurr = vo.pageCurr ;
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = this.dao.selectSome(params) ;
        return (QueryResultVo.<List<BaUser>>builder().content(this.dao.selectSome(params))).build() ;
        return rsVo ;
    }
}