Compare commits

..

No commits in common. "5ec93514ad11f8a8e3e76528dd2eb91ada132d43" and "5261c290bd83cf01be043d8587239b7893080d63" have entirely different histories.

6 changed files with 52 additions and 99 deletions

View File

@ -2,9 +2,12 @@ package com.unisinsight.project.controller;
import com.unisinsight.project.entity.dao.NetworkManage;
import com.unisinsight.project.entity.req.DeleteIdReq;
import com.unisinsight.project.entity.req.NetworkManagePageReq;
import com.unisinsight.project.entity.req.NetworkManageReq;
import com.unisinsight.project.entity.req.StoragePoolReq;
import com.unisinsight.project.entity.res.PageResult;
import com.unisinsight.project.entity.res.StoragePoolRes;
import com.unisinsight.project.exception.Result;
import com.unisinsight.project.service.NetworkManageService;
import io.swagger.annotations.Api;
@ -27,19 +30,17 @@ public class NetworkManageController {
@Resource
private NetworkManageService networkManageService;
@ApiOperation(value = "分页查询")
@ApiOperation(value = "分页查询镜像")
@PostMapping("/select/page")
public Result<PageResult<NetworkManage>> selectPage(@RequestBody NetworkManagePageReq networkManagePageReq) {
return Result.successResult(networkManageService.pageNetworkManages(networkManagePageReq));
}
@ApiOperation(value = "新增")
@PostMapping("/add")
public Result<?> addNetworkManage(@Valid @RequestBody NetworkManageReq networkManageReq) {
networkManageService.addNetworkManage(networkManageReq);
return Result.successResult();
}
@ApiOperation(value = "修改状态")
@PostMapping("/update")
public Result<?> updateNetworkManage(@RequestBody NetworkManageReq networkManageReq) {
@ -59,6 +60,7 @@ public class NetworkManageController {
@ApiOperation(value = "同步状态")
@GetMapping("/synchStatus")
public Result<?> synchStatus() {
return null;
}

View File

@ -1,19 +1,23 @@
package com.unisinsight.project.controller;
import com.unisinsight.project.entity.dao.StoragePool;
import cn.hutool.json.JSONUtil;
import com.unisinsight.project.entity.req.DeleteIdReq;
import com.unisinsight.project.entity.req.ImageVirtualMachinesReq;
import com.unisinsight.project.entity.req.StoragePoolReq;
import com.unisinsight.project.entity.res.ImageVirtualMachinesRes;
import com.unisinsight.project.entity.res.PageResult;
import com.unisinsight.project.entity.res.StoragePoolRes;
import com.unisinsight.project.exception.BaseErrorCode;
import com.unisinsight.project.exception.Result;
import com.unisinsight.project.service.StoragePoolService;
import com.unisinsight.project.service.ImageVirtualMachinesService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.Objects;
/**
*
@ -24,42 +28,28 @@ import javax.validation.Valid;
@Api(tags = "存储池类")
public class StoragePoolController {
@Resource
private StoragePoolService storagePoolService;
@ApiOperation(value = "分页查询")
@ApiOperation(value = "分页查询镜像")
@PostMapping("/select/page")
public Result<PageResult<StoragePool>> selectPage(@RequestBody StoragePoolReq storagePoolReq) {
return Result.successResult(storagePoolService.pageStoragePools(storagePoolReq));
public Result<PageResult<StoragePoolRes>> selectPage(@RequestBody StoragePoolReq storagePoolReq) {
return null;
}
@ApiOperation(value = "新增")
@PostMapping("/add")
public Result<?> insertStoragePool(@Valid @RequestBody StoragePoolReq storagePoolReq) {
storagePoolService.addStoragePool(storagePoolReq);
return Result.successResult();
public Result<?> insertImageVirtualMachines(@RequestBody StoragePoolReq storagePoolReq) {
return null;
}
@ApiOperation(value = "修改")
@ApiOperation(value = "修改状态")
@PostMapping("/update")
public Result<?> updateStoragePool(@RequestBody StoragePoolReq storagePoolReq) {
if (storagePoolService.updateStoragePool(storagePoolReq)) {
return Result.successResult();
} else {
return Result.errorResult(BaseErrorCode.DATABASE_OPERATION_FAILED);
}
public Result<?> updateUser(@RequestBody StoragePoolReq storagePoolReq) {
return null;
}
@ApiOperation(value = "删除")
@DeleteMapping("/{id}")
public Result<?> delete(@PathVariable Long id) {
if (storagePoolService.deleteStoragePool(id)) {
return Result.successResult();
} else {
return Result.errorResult(BaseErrorCode.DATABASE_OPERATION_FAILED);
}
@PostMapping("/delete")
public Result<?> delete(@RequestBody DeleteIdReq deleteIdReq) {
return null;
}
@ApiOperation(value = "同步状态")

View File

@ -47,7 +47,7 @@ public class StoragePool {
*/
@TableField("status")
@ApiModelProperty(value = "状态")
private Integer status;
private Short status;
/**
*

View File

@ -1,14 +1,14 @@
package com.unisinsight.project.entity.req;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.unisinsight.project.entity.dao.StoragePool;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.*;
/**
*
*
*
* @author ch
* @since 2025-08-25 11:42:52
@ -17,42 +17,34 @@ import javax.validation.constraints.*;
@ApiModel("存储池")
public class StoragePoolReq {
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty("名称")
@NotBlank(message = "名称不能为空")
@Size(max = 64, message = "名称长度不能超过64个字符")
private String name;
@ApiModelProperty("类型")
@Size(max = 16, message = "类型长度不能超过16个字符")
private String type;
@ApiModelProperty("路径")
@Size(max = 128, message = "路径长度不能超过128个字符")
@ApiModelProperty("路劲")
private String path;
/**
* : 1-2-
**/
@ApiModelProperty("状态")
private Integer status;
private String status;
/**
*
*/
@ApiModelProperty(value = "查询页", notes = "分页查询时再传")
@JsonProperty("page_num")
@Min(value = 1, message = "页码必须大于0")
private Integer pageNum = 1;
private Integer pageNum;
/**
*
*/
@ApiModelProperty(value = "每页数量", notes = "分页查询时再传")
@JsonProperty("page_size")
@Min(value = 1, message = "每页数量必须大于0")
@Max(value = 100, message = "每页数量不能超过100")
private Integer pageSize = 10;
private Integer pageSize;
}

View File

@ -3,8 +3,6 @@ package com.unisinsight.project.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.unisinsight.project.entity.dao.StoragePool;
import com.unisinsight.project.entity.req.StoragePoolReq;
import com.unisinsight.project.entity.res.PageResult;
import com.unisinsight.project.entity.res.StoragePoolRes;
/**
*
@ -17,7 +15,7 @@ public interface StoragePoolService {
* @param storagePool
* @return StoragePool
*/
StoragePool addStoragePool(StoragePoolReq storagePoolReq);
StoragePool addStoragePool(StoragePool storagePool);
/**
* ID
@ -25,7 +23,7 @@ public interface StoragePoolService {
* @param storagePool
* @return boolean
*/
boolean updateStoragePool(StoragePoolReq storagePoolReq);
boolean updateStoragePool(StoragePool storagePool);
/**
* ID
@ -53,5 +51,5 @@ public interface StoragePoolService {
* @param status
* @return Page<StoragePool>
*/
PageResult<StoragePool> pageStoragePools(StoragePoolReq storagePoolReq);
Page<StoragePool> pageStoragePools(StoragePoolReq storagePoolReq);
}

View File

@ -3,14 +3,10 @@ package com.unisinsight.project.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.unisinsight.project.entity.dao.NetworkManage;
import com.unisinsight.project.entity.dao.StoragePool;
import com.unisinsight.project.entity.req.StoragePoolReq;
import com.unisinsight.project.entity.res.PageResult;
import com.unisinsight.project.exception.BusinessException;
import com.unisinsight.project.mapper.StoragePoolMapper;
import com.unisinsight.project.service.StoragePoolService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -25,23 +21,14 @@ public class StoragePoolServiceImpl extends ServiceImpl<StoragePoolMapper, Stora
/**
*
*
* @param storagePoolReq
* @param storagePool
* @return StoragePool
*/
@Override
public StoragePool addStoragePool(StoragePoolReq storagePoolReq) {
// 检查名称是否重复
QueryWrapper<StoragePool> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", storagePoolReq.getName());
if (this.count(queryWrapper) > 0) {
throw new BusinessException("存储池名称'" + storagePoolReq.getName() + "'已存在,请使用其他名称");
}
StoragePool storagePool = new StoragePool();
BeanUtils.copyProperties(storagePoolReq, storagePool);
@Transactional(rollbackFor = Exception.class)
public StoragePool addStoragePool(StoragePool storagePool) {
storagePool.setCreateTime(new Date());
storagePool.setUpdateTime(new Date());
storagePool.setStatus(1);
this.save(storagePool);
return storagePool;
}
@ -49,36 +36,18 @@ public class StoragePoolServiceImpl extends ServiceImpl<StoragePoolMapper, Stora
/**
* ID
*
* @param storagePoolReq
* @param storagePool
* @return boolean
*/
@Override
public boolean updateStoragePool(StoragePoolReq storagePoolReq) {
StoragePool existing = this.getById(storagePoolReq.getId());
@Transactional(rollbackFor = Exception.class)
public boolean updateStoragePool(StoragePool storagePool) {
StoragePool existing = this.getById(storagePool.getId());
if (existing == null) {
return false;
}
// 如果名称不为空且与原名称不同,则进行重名校验
if (storagePoolReq.getName() != null && !storagePoolReq.getName().isEmpty()
&& !storagePoolReq.getName().equals(existing.getName())) {
// 检查新名称是否重复
QueryWrapper<StoragePool> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", storagePoolReq.getName());
if (this.count(queryWrapper) > 0) {
throw new BusinessException("存储池名称'" + storagePoolReq.getName() + "'已存在,请使用其他名称");
}
existing.setName(storagePoolReq.getName());
}
// 修改状态
if (storagePoolReq.getStatus() != null
&& !storagePoolReq.getStatus().equals(existing.getStatus())) {
existing.setStatus(storagePoolReq.getStatus());
}
existing.setUpdateTime(new Date());
return this.updateById(existing);
storagePool.setUpdateTime(new Date());
return this.updateById(storagePool);
}
/**
@ -107,11 +76,15 @@ public class StoragePoolServiceImpl extends ServiceImpl<StoragePoolMapper, Stora
/**
*
*
* @param storagePoolReq
* @param currentPage
* @param pageSize
* @param name
* @param type
* @param status
* @return Page<StoragePool>
*/
@Override
public PageResult<StoragePool> pageStoragePools(StoragePoolReq storagePoolReq) {
public Page<StoragePool> pageStoragePools(StoragePoolReq storagePoolReq) {
Page<StoragePool> page = new Page<>(storagePoolReq.getPageNum(), storagePoolReq.getPageSize());
QueryWrapper<StoragePool> queryWrapper = new QueryWrapper<>();
@ -127,8 +100,6 @@ public class StoragePoolServiceImpl extends ServiceImpl<StoragePoolMapper, Stora
}
queryWrapper.orderByDesc("create_time");
Page<StoragePool> resultPage = this.page(page, queryWrapper);
return PageResult.convertPage(resultPage, StoragePool.class);
return this.page(page, queryWrapper);
}
}