自定处理服务器的过期状态

This commit is contained in:
2024-07-19 13:51:37 +08:00
parent cd7ac1a7b1
commit d2bcf26953
2 changed files with 31 additions and 23 deletions
@@ -4,6 +4,7 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.gxwebsoft.common.core.utils.BtUtil; import com.gxwebsoft.common.core.utils.BtUtil;
import com.gxwebsoft.common.core.utils.RedisUtil;
import com.gxwebsoft.common.core.web.ApiResult; import com.gxwebsoft.common.core.web.ApiResult;
import com.gxwebsoft.common.core.web.BaseController; import com.gxwebsoft.common.core.web.BaseController;
import com.gxwebsoft.common.core.web.BatchParam; import com.gxwebsoft.common.core.web.BatchParam;
@@ -15,14 +16,19 @@ import com.gxwebsoft.oa.entity.AssetsUser;
import com.gxwebsoft.oa.param.AssetsParam; import com.gxwebsoft.oa.param.AssetsParam;
import com.gxwebsoft.oa.service.AssetsService; import com.gxwebsoft.oa.service.AssetsService;
import com.gxwebsoft.oa.service.AssetsUserService; import com.gxwebsoft.oa.service.AssetsUserService;
import com.gxwebsoft.shop.entity.Order;
import com.gxwebsoft.shop.entity.OrderInfo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.gxwebsoft.common.core.constants.AppUserConstants.ADMINISTRATOR; import static com.gxwebsoft.common.core.constants.AppUserConstants.ADMINISTRATOR;
@@ -43,6 +49,8 @@ public class AssetsController extends BaseController {
private AssetsUserService assetsUserService; private AssetsUserService assetsUserService;
@Resource @Resource
private BtUtil btUtil; private BtUtil btUtil;
@Resource
private RedisUtil redisUtil;
@ApiOperation("统计信息") @ApiOperation("统计信息")
@GetMapping("/data") @GetMapping("/data")
@@ -72,6 +80,18 @@ public class AssetsController extends BaseController {
data.put("totalNum1", totalNum1); data.put("totalNum1", totalNum1);
data.put("totalNum2", totalNum2); data.put("totalNum2", totalNum2);
data.put("totalNum3", totalNum3); data.put("totalNum3", totalNum3);
// 处理已过期主机
String key = "Assets:update:".concat(loginUser.getTenantId().toString());
if(redisUtil.get(key) == null){
final List<Assets> list = assetsService.list(new LambdaQueryWrapper<Assets>().lt(Assets::getEndTime, LocalDateTime.now()));
list.forEach(d -> {
d.setStatus("已到期");
});
if (assetsService.updateBatchById(list)) {
redisUtil.set(key,1,1L, TimeUnit.DAYS);
}
}
return success(data); return success(data);
} }
// 非管理员 // 非管理员
@@ -95,6 +115,7 @@ public class AssetsController extends BaseController {
.eq(Assets::getStatus, "已销毁") .eq(Assets::getStatus, "已销毁")
.in(Assets::getAssetsId,collect) .in(Assets::getAssetsId,collect)
); );
data.put("totalNum", totalNum); data.put("totalNum", totalNum);
data.put("totalNum1", totalNum1); data.put("totalNum1", totalNum1);
data.put("totalNum2", totalNum2); data.put("totalNum2", totalNum2);
@@ -108,16 +129,6 @@ public class AssetsController extends BaseController {
final User loginUser = getLoginUser(); final User loginUser = getLoginUser();
final Integer userId = loginUser.getUserId(); final Integer userId = loginUser.getUserId();
final List<String> collect1 = loginUser.getRoles().stream().map(Role::getRoleCode).collect(Collectors.toList()); final List<String> collect1 = loginUser.getRoles().stream().map(Role::getRoleCode).collect(Collectors.toList());
if (param.getStatus() != null) {
if (param.getStatus().equals("运行中")) {
param.setStartTime(LocalDateTime.now());
param.setStatus(null);
}
if (param.getStatus().equals("已到期")) {
param.setEndTime(LocalDateTime.now());
param.setStatus(null);
}
}
if (collect1.contains("superAdmin") || collect1.contains("admin")) { if (collect1.contains("superAdmin") || collect1.contains("admin")) {
// 返回查询结果 // 返回查询结果
return success(assetsService.pageRel(param)); return success(assetsService.pageRel(param));
@@ -224,5 +235,4 @@ public class AssetsController extends BaseController {
} }
return fail("删除失败"); return fail("删除失败");
} }
} }
@@ -103,11 +103,9 @@ public class AssetsParam extends BaseParam {
private String content; private String content;
@ApiModelProperty(value = "购买时间") @ApiModelProperty(value = "购买时间")
@QueryField(type = QueryType.GE)
private LocalDateTime startTime; private LocalDateTime startTime;
@ApiModelProperty(value = "到期时间") @ApiModelProperty(value = "到期时间")
@QueryField(type = QueryType.LE)
private LocalDateTime endTime; private LocalDateTime endTime;
@ApiModelProperty(value = "置顶状态") @ApiModelProperty(value = "置顶状态")