package com.tuoheng.mapper; | package com.tuoheng.mapper; | ||||
import com.baomidou.mybatisplus.core.metadata.IPage; | import com.baomidou.mybatisplus.core.metadata.IPage; | ||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | |||||
import com.tuoheng.model.dto.OidcTenantDto; | import com.tuoheng.model.dto.OidcTenantDto; | ||||
import com.tuoheng.model.dto.TTenant; | import com.tuoheng.model.dto.TTenant; | ||||
import com.tuoheng.model.po.TenantPo; | import com.tuoheng.model.po.TenantPo; | ||||
TTenant getByCode(@Param("code") String code); | TTenant getByCode(@Param("code") String code); | ||||
Page<TenantVo> findListByPage(@Param("page") IPage page, @Param("query") TenantQuery query); | |||||
List<TenantVo> findList(@Param("query") TenantQuery query); | |||||
void updateById(TenantPo tenantPo); | void updateById(TenantPo tenantPo); | ||||
//分页参数校验 | //分页参数校验 | ||||
query.checkParam(); | query.checkParam(); | ||||
//开启分页 | //开启分页 | ||||
// 设置分页参数 | |||||
IPage<TenantVo> pageDate = new Page<>(query.getPage(), query.getLimit()); | |||||
IPage<TenantVo> tenantVos = tenantMapper.findListByPage(pageDate,query); | |||||
List<TenantVo> collect = tenantVos.getRecords().stream().map(x -> { | |||||
List<TenantVo> tenantVos = tenantMapper.findList(query); | |||||
List<TenantVo> collect = tenantVos.stream().map(x -> { | |||||
TenantVo vo = new TenantVo(); | TenantVo vo = new TenantVo(); | ||||
BeanUtils.copyProperties(x, vo); | BeanUtils.copyProperties(x, vo); | ||||
//并不是真正意义上的租户id | //并不是真正意义上的租户id | ||||
vo.setList(businessSystemVoList); | vo.setList(businessSystemVoList); | ||||
return vo; | return vo; | ||||
}).filter(x -> x != null).collect(Collectors.toList()); | }).filter(x -> x != null).collect(Collectors.toList()); | ||||
pageDate.setRecords(collect); | |||||
return JsonResult.success(pageDate); | |||||
//粗暴的分页 | |||||
Integer pageNum = query.getPage(); | |||||
Integer pageSize = query.getLimit(); | |||||
int startIndex = (pageNum - 1) * pageSize; | |||||
int endIndex = Math.min(startIndex + pageSize, collect.size()); | |||||
List<TenantVo> subList = collect.subList(startIndex, endIndex); | |||||
IPage<TenantVo> page = new Page<>(pageNum, pageSize); | |||||
page.setTotal(collect.size()); | |||||
return JsonResult.success(page.setRecords(subList)); | |||||
} | } | ||||
/** | /** |
where code = #{code} | where code = #{code} | ||||
and enabled = 1 | and enabled = 1 | ||||
</select> | </select> | ||||
<select id="findListByPage" resultType="com.tuoheng.model.vo.TenantVo"> | |||||
<select id="findList" resultType="com.tuoheng.model.vo.TenantVo"> | |||||
SELECT t.id, t.user_id userId, t.remark, t.code tenantCode, | SELECT t.id, t.user_id userId, t.remark, t.code tenantCode, | ||||
t.name tenantName,t.customer,t.customer_phone | t.name tenantName,t.customer,t.customer_phone | ||||
,t.province_code,t.province_name,t.city_code,t.city_name,t.district_code,t.district_name,u.username | ,t.province_code,t.province_name,t.city_code,t.city_name,t.district_code,t.district_name,u.username |