2
0

fix: 在线用户数和搜索

This commit is contained in:
caiyuchao
2025-02-28 10:47:39 +08:00
parent 9c11e5abe6
commit e739cc110a
6 changed files with 51 additions and 32 deletions

View File

@@ -1,8 +1,5 @@
package org.wfc.system.controller;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@@ -11,10 +8,7 @@ import org.springframework.web.bind.annotation.RestController;
import org.wfc.common.core.web.controller.BaseController;
import org.wfc.common.core.web.domain.AjaxResult;
import org.wfc.common.core.web.page.TableDataInfo;
import org.wfc.common.mybatis.domain.BaseData;
import org.wfc.system.domain.UOrder;
import org.wfc.system.domain.UPackage;
import org.wfc.system.domain.UUser;
import org.wfc.system.service.IUOrderService;
import org.wfc.system.service.IUPackageService;
import org.wfc.system.service.IUUserService;
@@ -45,20 +39,7 @@ public class UOrderController extends BaseController {
@GetMapping("/page")
public TableDataInfo page(UOrder uOrder) {
startPage();
List<UOrder> list = uOrderService.list(Wrappers.<UOrder>lambdaQuery()
.like(StrUtil.isNotBlank(uOrder.getOrderNo()), UOrder::getOrderNo, uOrder.getOrderNo())
.eq(ObjectUtil.isNotNull(uOrder.getStatus()), UOrder::getStatus, uOrder.getStatus())
.eq(ObjectUtil.isNotNull(uOrder.getType()), UOrder::getType, uOrder.getType())
.orderByDesc(BaseData::getCreateTime)
);
for (UOrder order : list) {
UUser uUser = uUserService.getById(order.getUserId());
order.setUserName(uUser.getUserName());
if (ObjectUtil.isNotNull(order.getPackageId())) {
UPackage uPackage = packageService.getById(order.getPackageId());
order.setPackageName(uPackage.getPackageName());
}
}
List<UOrder> list = uOrderService.listOrder(uOrder);
return getDataTable(list);
}

View File

@@ -1,8 +1,11 @@
package org.wfc.system.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import org.wfc.system.domain.UOrder;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.wfc.system.domain.UOrder;
import java.util.List;
/**
* <p>
@@ -14,5 +17,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
@DS("user")
public interface UOrderMapper extends BaseMapper<UOrder> {
List<UOrder> listOrder(@Param("item") UOrder item);
}

View File

@@ -1,7 +1,9 @@
package org.wfc.system.service;
import org.wfc.system.domain.UOrder;
import com.baomidou.mybatisplus.extension.service.IService;
import org.wfc.system.domain.UOrder;
import java.util.List;
/**
* <p>
@@ -12,5 +14,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @since 2025-01-03
*/
public interface IUOrderService extends IService<UOrder> {
List<UOrder> listOrder(UOrder item);
}

View File

@@ -20,16 +20,18 @@ import org.wfc.omada.api.monitor.model.OperationResponseGetDashboardOverview;
import org.wfc.omada.api.organization.OmadaSiteApi;
import org.wfc.omada.api.organization.model.OperationResponseGridVoSiteSummaryInfo;
import org.wfc.omada.api.organization.model.SiteSummaryInfo;
import org.wfc.system.api.domain.SysUser;
import org.wfc.system.domain.convert.SysDashboardConvert;
import org.wfc.system.domain.vo.SysDashboardSiteVo;
import org.wfc.system.domain.vo.SysDashboardVo;
import org.wfc.system.mapper.UUserMapper;
import org.wfc.system.service.ISysDashboardService;
import org.wfc.user.api.domain.UUser;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
/**
* @description:
@@ -117,17 +119,18 @@ public class SysDashboardServiceImpl implements ISysDashboardService {
// 注册用户数和在线用户数
Long registerUserNum = userMapper.selectCount(Wrappers.lambdaQuery());
Integer onlineUserNum = 0;
Collection<String> keys = redisService.keys(CacheConstants.LOGIN_TOKEN_KEY + "*");
Set<String> sets = new HashSet<>();
for (String key : keys) {
LoginUser user = redisService.getCacheObject(key);
Object userObj = user.getUser();
if (!(userObj instanceof SysUser)) {
onlineUserNum++;
if (userObj instanceof UUser) {
UUser uUser = (UUser) userObj;
sets.add(uUser.getUserName());
}
}
sysDashboardVo.setRegisterUserNum(registerUserNum);
sysDashboardVo.setOnlineUserNum(onlineUserNum);
sysDashboardVo.setOnlineUserNum(sets.size());
return sysDashboardVo;
}

View File

@@ -1,10 +1,12 @@
package org.wfc.system.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.wfc.system.domain.UOrder;
import org.wfc.system.mapper.UOrderMapper;
import org.wfc.system.service.IUOrderService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
@@ -17,4 +19,8 @@ import org.springframework.stereotype.Service;
@Service
public class UOrderServiceImpl extends ServiceImpl<UOrderMapper, UOrder> implements IUOrderService {
@Override
public List<UOrder> listOrder(UOrder item) {
return this.baseMapper.listOrder(item);
}
}