|
@@ -0,0 +1,149 @@
|
|
|
+package com.css.simulation.resource.server.app.impl;
|
|
|
+
|
|
|
+import api.common.pojo.common.PageVO;
|
|
|
+import api.common.pojo.common.ResponseBodyVO;
|
|
|
+import api.common.pojo.constants.DictConstants;
|
|
|
+import api.common.pojo.param.group.SimulationMageGroupParam;
|
|
|
+import api.common.pojo.po.group.SimulationMageGroupPO;
|
|
|
+import api.common.util.StringUtil;
|
|
|
+import com.alibaba.cloud.commons.lang.StringUtils;
|
|
|
+import com.css.simulation.resource.server.app.service.job_manage.SimulationMageGroupService;
|
|
|
+import com.css.simulation.resource.server.infra.db.mysql.mapper.SimulationMageGroupMapper;
|
|
|
+import com.css.simulation.resource.server.infra.util.AuthUtil;
|
|
|
+import com.css.simulation.resource.server.infra.util.PageUtil;
|
|
|
+import com.github.pagehelper.PageInfo;
|
|
|
+import lombok.SneakyThrows;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
+
|
|
|
+import javax.annotation.Resource;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
+
|
|
|
+@Service
|
|
|
+@Slf4j
|
|
|
+public class SimulationMageGroupServiceImpl implements SimulationMageGroupService {
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private SimulationMageGroupMapper mageGroupMapper;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @SneakyThrows
|
|
|
+ public ResponseBodyVO<PageInfo<SimulationMageGroupPO>> selectSimulationMageGroupList(SimulationMageGroupParam param) {
|
|
|
+ if (Objects.isNull(param.getPageNum())) {
|
|
|
+ param.setPageNum(1);
|
|
|
+ }
|
|
|
+ if (Objects.isNull(param.getPageSize())) {
|
|
|
+ param.setPageSize(10);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(param.getGroupName())) {
|
|
|
+ param.setGroupName(null);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(param.getGroupDescription())) {
|
|
|
+ param.setGroupDescription(null);
|
|
|
+ }
|
|
|
+
|
|
|
+ setPage(param.getPageNum(), param.getPageSize());
|
|
|
+ List<SimulationMageGroupPO> simulationMapVOS = mageGroupMapper.selectSimulationMageGroupList(param.getGroupName(), param.getGroupDescription());
|
|
|
+ PageInfo<SimulationMageGroupPO> pageInfo = new PageInfo<>(simulationMapVOS);
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, pageInfo);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @SneakyThrows
|
|
|
+ public ResponseBodyVO<List<SimulationMageGroupPO>> selectAllSimulationMageGroupList(SimulationMageGroupParam param) {
|
|
|
+ List<SimulationMageGroupPO> simulationMapVOS = mageGroupMapper.selectSimulationMageGroupList(null, null);
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, simulationMapVOS);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @SneakyThrows
|
|
|
+ public ResponseBodyVO<SimulationMageGroupPO> getSimulationMageGroup(SimulationMageGroupParam param) {
|
|
|
+ if (StringUtils.isBlank(param.getId())) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "镜像组id为空");
|
|
|
+ }
|
|
|
+ SimulationMageGroupPO groupPO = mageGroupMapper.selectSimulationMageGroupById(param.getId());
|
|
|
+ if (Objects.isNull(groupPO)) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "未找到有效的id");
|
|
|
+ }
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, groupPO);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public ResponseBodyVO updateSimulationMageGroup(SimulationMageGroupParam param) {
|
|
|
+ String currentUserRoleCode = AuthUtil.getCurrentUserRoleCode();
|
|
|
+ if (!StringUtils.equals(DictConstants.ROLE_CODE_ADMIN, currentUserRoleCode) && !StringUtils.equals(DictConstants.ROLE_CODE_SYSADMIN, currentUserRoleCode)) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "当前用户无该权限");
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(param.getId())) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "镜像组id为空");
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(param.getSoftwarePath()) || StringUtils.isBlank(param.getControllerPath()) || StringUtils.isBlank(param.getConnectorPath())) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "存上为空数据");
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(param.getGroupDescription())) {
|
|
|
+ param.setGroupDescription("");
|
|
|
+ }
|
|
|
+ int i = mageGroupMapper.updateSimulationMageGroupById(param);
|
|
|
+ if (i > 0) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
|
|
|
+ }
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public ResponseBodyVO deleteSimulationMageGroup(List<SimulationMageGroupParam> paramList) {
|
|
|
+ String currentUserRoleCode = AuthUtil.getCurrentUserRoleCode();
|
|
|
+ if (!StringUtils.equals(DictConstants.ROLE_CODE_ADMIN, currentUserRoleCode) && !StringUtils.equals(DictConstants.ROLE_CODE_SYSADMIN, currentUserRoleCode)) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "当前用户无该权限");
|
|
|
+ }
|
|
|
+ if (CollectionUtils.isEmpty(paramList)) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "id为空");
|
|
|
+ }
|
|
|
+ for (SimulationMageGroupParam param : paramList) {
|
|
|
+ if (StringUtils.isBlank(param.getId())) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "id为空");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for (SimulationMageGroupParam param : paramList) {
|
|
|
+ int i = mageGroupMapper.deleteSimulationMageGroupById(param.getId());
|
|
|
+ if (i <= 0) {
|
|
|
+ throw new RuntimeException("删除失败" + param.getId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
|
|
|
+ }
|
|
|
+
|
|
|
+ @SneakyThrows
|
|
|
+ @Transactional
|
|
|
+ public ResponseBodyVO addSimulationMageGroup(SimulationMageGroupParam param) {
|
|
|
+ String currentUserRoleCode = AuthUtil.getCurrentUserRoleCode();
|
|
|
+ if (!StringUtils.equals(DictConstants.ROLE_CODE_ADMIN, currentUserRoleCode) && !StringUtils.equals(DictConstants.ROLE_CODE_SYSADMIN, currentUserRoleCode)) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "当前用户无该权限");
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(param.getSoftwarePath()) || StringUtils.isBlank(param.getControllerPath()) || StringUtils.isBlank(param.getConnectorPath())) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "存上为空数据");
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(param.getGroupDescription())) {
|
|
|
+ param.setGroupDescription("");
|
|
|
+ }
|
|
|
+ param.setId(StringUtil.getRandomUUID());
|
|
|
+
|
|
|
+ int i = mageGroupMapper.addSimulationMageGroup(param);
|
|
|
+ if (i <= 0) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "添加失败");
|
|
|
+ }
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void setPage(Integer pageNum, Integer pageSize) {
|
|
|
+ PageVO pageVO = new PageVO();
|
|
|
+ pageVO.setCurrentPage(pageNum);
|
|
|
+ pageVO.setPageSize(pageSize);
|
|
|
+ PageUtil.setPageInfo(pageVO);
|
|
|
+ }
|
|
|
+}
|