diff --git a/src/main/java/com/pms/ocp/controller/OcpTenantController.java b/src/main/java/com/pms/ocp/controller/OcpTenantController.java index 6e5456a95a545746fed2ea1974a0109ede773192..c8970bceac853cbc268841fef9a8584889113e02 100644 --- a/src/main/java/com/pms/ocp/controller/OcpTenantController.java +++ b/src/main/java/com/pms/ocp/controller/OcpTenantController.java @@ -1,12 +1,18 @@ package com.pms.ocp.controller; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.pms.ocp.model.dto.OcpTenantGroupDto; +import com.pms.ocp.model.dto.PageGroupDto; +import com.pms.ocp.model.dto.TenanBaseDto; +import com.pms.ocp.model.entity.OcpApiGroup; +import com.pms.ocp.model.entity.OcpTenantBase; import com.pms.ocp.model.entity.OcpTenantGroup; import com.pms.ocp.model.vo.ResponseVO; import com.pms.ocp.service.TenantService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; +import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -37,12 +43,43 @@ public class OcpTenantController { @PostMapping("/tenantinster") @ApiModelProperty("新增应用") - public ResponseVO tenantInster(@RequestBody OcpTenantGroup ocpTenantGroup){ - boolean falg = tenantService.getTenanInster(ocpTenantGroup); + public ResponseVO tenantInster(@RequestBody TenanBaseDto TenanBaseDto){ + boolean falg = tenantService.getTenanInster(TenanBaseDto); if (falg){ return ResponseVO.ok("新建成功!"); } return ResponseVO.error("应用code已经存在!"); + } + + @PostMapping("/tenantupdata") + @ApiModelProperty("修改应用") + public ResponseVO tenantUpdata(@RequestBody OcpTenantGroup ocpTenantGroup){ + boolean falg = tenantService.getTenantUpdata(ocpTenantGroup); + if (falg){ + return ResponseVO.ok("修改成功!"); + } + return ResponseVO.error("应用code已经存在!"); + } + @PostMapping("/tenantdelete") + @ApiModelProperty("删除服务") + public ResponseVO tenantDelete(@RequestBody OcpTenantGroup ocpTenantGroup){ + boolean falg = tenantService.gettenantDelete(ocpTenantGroup); + if (falg){ + return ResponseVO.ok("删除成功!"); + } + return ResponseVO.error("应用下存在服务,请先删除下级应该!"); + } + + @PostMapping("tenantone") + @ApiOperation("应用分类--分级数据") + public ResponseVO> tenantOne(@RequestBody PageGroupDto pageGroupDto){ +// Page onePages = tenantService.getOnePages(pageGroupDto); + return ResponseVO.ok(); } + + + + + } diff --git a/src/main/java/com/pms/ocp/model/dto/TenanBaseDto.java b/src/main/java/com/pms/ocp/model/dto/TenanBaseDto.java new file mode 100644 index 0000000000000000000000000000000000000000..1f5b96169d74c646522f7565fa75415bae56221e --- /dev/null +++ b/src/main/java/com/pms/ocp/model/dto/TenanBaseDto.java @@ -0,0 +1,144 @@ +package com.pms.ocp.model.dto; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.pms.ocp.model.entity.OcpTenantGroup; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.sql.Timestamp; + +/** + * 新增应用封装对象 + */ +@ApiModel(value = "新增应用封装对象") +@Data +public class TenanBaseDto extends OcpTenantGroup { + + + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty("主键ID") + private String objId; + + /** + * 应用名称 + */ + @ApiModelProperty("应用名称") + private String tenantName; + + /** + * 应用代码 + */ + @ApiModelProperty("应用代码") + private String tenantCode; + + /** + * 应用分类代码 + */ + @ApiModelProperty("应用分类代码") + private String tenantGroupCode; + + /** + * 应用ip + */ + @ApiModelProperty("应用ip") + private String tenantIp; + + /** + * 应用url + */ + @ApiModelProperty("应用url") + private String tenantUrl; + + /** + * 所属专业 + */ + @ApiModelProperty("所属专业") + private String professionalKind; + + /** + * 创建者用户ID + */ + @ApiModelProperty("创建者用户ID") + private String tenantUserId; + + /** + * 排序 + */ + @ApiModelProperty("排序") + private Integer tenantOrderNo; + + /** + * 创建时间 + */ + @ApiModelProperty("创建时间") + private Timestamp tenantCtime; + + /** + * 最后更新时间 + */ + @ApiModelProperty("最后更新时间") + private Timestamp tenantMtime; + + /** + * 部署名称 + */ + @ApiModelProperty("部署名称") + private String deploymentName; + + /** + * 描述 + */ + @ApiModelProperty("描述") + private String tenantDescription; + + /** + * 应用状态0:设计态;1:运行态 + */ + @ApiModelProperty("应用状态0:设计态;1:运行态") + private Short tenantState; + + /** + * 建设单位 + */ + @ApiModelProperty("建设单位") + private String tenantUnit; + + /** + * 所属公司编码 + */ + @ApiModelProperty("所属公司编码") + private String ownerCompanyCode; + + /** + * 所属公司名称 + */ + @ApiModelProperty("所属公司名称") + private String ownerCompanyName; + + /** + * 是否删除0:否;1:是 + */ + @ApiModelProperty("是否删除0:否;1:是") + private Short isDelete; + + /** + * 所属区域 1:生产控制大区;2:信息关联大区;3:互联网大区 + */ + @ApiModelProperty("所属区域 1:生产控制大区;2:信息关联大区;3:互联网大区") + private Short tenantZone; + + /** + * 所属层级 1:应用层;2:平台层;3:网络层;4:感知层; + */ + @ApiModelProperty("所属层级 1:应用层;2:平台层;3:网络层;4:感知层;") + private Short tenantLayer; + + /** + * 应用版本(当前版本) + */ + @ApiModelProperty("应用版本(当前版本)") + private String tenantVersion; +} diff --git a/src/main/java/com/pms/ocp/model/entity/OcpTenantGroup.java b/src/main/java/com/pms/ocp/model/entity/OcpTenantGroup.java index 67257e9e03f602f49f34ce028a5e0dca54ed8394..5b06141bc08746dd5c0f96508665ea9ab7aa8867 100644 --- a/src/main/java/com/pms/ocp/model/entity/OcpTenantGroup.java +++ b/src/main/java/com/pms/ocp/model/entity/OcpTenantGroup.java @@ -10,6 +10,7 @@ import lombok.Data; import lombok.experimental.Accessors; import java.io.Serializable; +import java.sql.Timestamp; import java.util.Date; import java.util.List; @@ -87,13 +88,13 @@ public class OcpTenantGroup implements Serializable { * 创建时间 */ @ApiModelProperty("创建时间") - private Date tenantGroupCtime; + private Timestamp tenantGroupCtime; /** * 修改时间 */ @ApiModelProperty("修改时间") - private Date tenantGroupMtime; + private Timestamp tenantGroupMtime; /** * 是否删除 @@ -265,7 +266,7 @@ public class OcpTenantGroup implements Serializable { /** * 创建时间 */ - public void setTenantGroupCtime(Date tenantGroupCtime) { + public void setTenantGroupCtime(Timestamp tenantGroupCtime) { this.tenantGroupCtime = tenantGroupCtime; } @@ -279,7 +280,7 @@ public class OcpTenantGroup implements Serializable { /** * 修改时间 */ - public void setTenantGroupMtime(Date tenantGroupMtime) { + public void setTenantGroupMtime(Timestamp tenantGroupMtime) { this.tenantGroupMtime = tenantGroupMtime; } diff --git a/src/main/java/com/pms/ocp/service/TenantService.java b/src/main/java/com/pms/ocp/service/TenantService.java index 73a52d2b3a7450b88676df281870c2c6ba9e2e37..bdaa9866ecdf3a0918a1dad0437a2e8e871462cd 100644 --- a/src/main/java/com/pms/ocp/service/TenantService.java +++ b/src/main/java/com/pms/ocp/service/TenantService.java @@ -1,8 +1,12 @@ package com.pms.ocp.service; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.pms.ocp.model.dto.OcpTenantGroupDto; +import com.pms.ocp.model.dto.PageGroupDto; +import com.pms.ocp.model.dto.TenanBaseDto; +import com.pms.ocp.model.entity.OcpApiGroup; import com.pms.ocp.model.entity.OcpTenantGroup; import java.util.List; @@ -20,10 +24,24 @@ public interface TenantService extends IService { /** * 应用新增 + * @param + * @return + */ + boolean getTenanInster(TenanBaseDto TenanBaseDto); + + /** + * 修改应用 + * @param ocpTenantGroup + * @return + */ + boolean getTenantUpdata(OcpTenantGroup ocpTenantGroup); + + /** + * 删除服务 * @param ocpTenantGroup * @return */ - boolean getTenanInster(OcpTenantGroup ocpTenantGroup); + boolean gettenantDelete(OcpTenantGroup ocpTenantGroup); } diff --git a/src/main/java/com/pms/ocp/service/impl/OcpApiTreeServiceImpl.java b/src/main/java/com/pms/ocp/service/impl/OcpApiTreeServiceImpl.java index f74bcf60cb537fadc7cbeb27009549b7b137bac8..fb73034bde724de68255f93bebd26fb42abc6f9c 100644 --- a/src/main/java/com/pms/ocp/service/impl/OcpApiTreeServiceImpl.java +++ b/src/main/java/com/pms/ocp/service/impl/OcpApiTreeServiceImpl.java @@ -225,14 +225,21 @@ public class OcpApiTreeServiceImpl extends ServiceImpl ocpApiGroups = mapper.selectList(null); if (StringUtils.isBlank(ocpApiGroup1.getApiGroupPcode())) { - mapper.deleteById(objId); - return true; - } else { - return false; + for (OcpApiGroup apiGroup : ocpApiGroups) { + if ((ocpApiGroup1.getApiGroupCode()).equals(apiGroup.getApiGroupPcode())){ + flag = false; + break; + } + } + } + mapper.deleteById(objId); + return flag; } diff --git a/src/main/java/com/pms/ocp/service/impl/TenantServiceImpl.java b/src/main/java/com/pms/ocp/service/impl/TenantServiceImpl.java index 4c18d3f944479d941a533f15944b427ddae169ca..6b863611d9f0abb3b05f531794a0f29f399fa1dd 100644 --- a/src/main/java/com/pms/ocp/service/impl/TenantServiceImpl.java +++ b/src/main/java/com/pms/ocp/service/impl/TenantServiceImpl.java @@ -1,23 +1,24 @@ package com.pms.ocp.service.impl; -import cn.hutool.core.util.ObjectUtil; + import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.pms.ocp.common.utils.RandomStringUtil; +import com.pms.ocp.mapper.TenantBasicManagementMapper; import com.pms.ocp.mapper.TenantMapper; -import com.pms.ocp.model.dto.OcpTenantGroupDto; -import com.pms.ocp.model.dto.OneTenanList; -import com.pms.ocp.model.dto.ThreeTenanList; -import com.pms.ocp.model.dto.TwoTenanList; +import com.pms.ocp.model.dto.*; +import com.pms.ocp.model.entity.OcpApiGroup; +import com.pms.ocp.model.entity.OcpTenantAudit; +import com.pms.ocp.model.entity.OcpTenantBase; import com.pms.ocp.model.entity.OcpTenantGroup; import com.pms.ocp.service.TenantService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Service; - +import java.sql.Timestamp; import java.util.*; -import java.util.stream.Collectors; + @Service public class TenantServiceImpl extends ServiceImpl implements TenantService { @@ -25,6 +26,8 @@ public class TenantServiceImpl extends ServiceImpl @Autowired private TenantMapper tenantMapper; + @Autowired + private TenantBasicManagementMapper tenantBasicMapper; /** * 应用树分类管理 @@ -96,15 +99,15 @@ public class TenantServiceImpl extends ServiceImpl /** * 应用新增 * - * @param ocpTenantGroup + * @param * @return */ @Override - public boolean getTenanInster(OcpTenantGroup ocpTenantGroup) { + public boolean getTenanInster(TenanBaseDto tenanBaseDto) { boolean falg = true; OcpTenantGroup group = new OcpTenantGroup(); - String tenantGroupCode = ocpTenantGroup.getTenantGroupCode(); + String tenantGroupCode = tenanBaseDto.getTenantGroupCode(); List ocpTenantGroups = tenantMapper.selectList(null); for (OcpTenantGroup tenantGroup : ocpTenantGroups) { if (tenantGroup.getTenantGroupCode().equals(tenantGroupCode)){ @@ -112,9 +115,76 @@ public class TenantServiceImpl extends ServiceImpl break; } } - group.setTenantGroupCode(RandomStringUtil.getRandomString(6)); - tenantMapper.insert(ocpTenantGroup); + String randomString = RandomStringUtil.getRandomString(6); + Timestamp timestamp = new Timestamp(System.currentTimeMillis()); + OcpTenantGroup ocpTenantGroup = new OcpTenantGroup(); + BeanUtils.copyProperties(tenanBaseDto,ocpTenantGroup); + if ("null".equals(tenanBaseDto.getOwnerCompanyCode())){ + ocpTenantGroup.setTenantGroupCode(randomString); + } + ocpTenantGroup.setTenantGroupCtime(timestamp); + ocpTenantGroup.setTenantGroupMtime(timestamp); + if ("".equals(tenanBaseDto.getTenantVersion())){ + ocpTenantGroup.setTenantGroupVersion("1.0"); + } + + OcpTenantBase ocpTenantBase = new OcpTenantBase(); + BeanUtils.copyProperties(tenanBaseDto,ocpTenantBase); + if ("null".equals(tenanBaseDto.getTenantGroupCode())){ + group.setTenantGroupCode(randomString); + } + tenantMapper.insert(tenanBaseDto); + tenantBasicMapper.insert(ocpTenantBase); return falg; } + /** + * 修改应用 + * + * @param ocpTenantGroup + * @return + */ + @Override + public boolean getTenantUpdata(OcpTenantGroup ocpTenantGroup) { + boolean falg = true; + List ocpTenantGroupList = tenantMapper.selectList(null); + for (OcpTenantGroup ocpApiGroup : ocpTenantGroupList) { + String code = ocpTenantGroup.getTenantGroupCode(); + if (code == ocpApiGroup.getTenantGroupCode()) { + falg = false; + break; + } + } + tenantMapper.updateById(ocpTenantGroup); + + return falg; + } + + /** + * 删除服务 + * + * @param ocpTenantGroup + * @return + */ + @Override + public boolean gettenantDelete(OcpTenantGroup ocpTenantGroup) { + String objId = ocpTenantGroup.getObjId(); + OcpTenantGroup ocpTenantGroup1 = tenantMapper.selectById(objId); + boolean flag = true; + List ocpTenantGroupList = tenantMapper.selectList(null); + if (StringUtils.isBlank(ocpTenantGroup1.getTenantGroupPcode())) { + for (OcpTenantGroup tenantGroup : ocpTenantGroupList) { + String tenantGroupPcode = tenantGroup.getTenantGroupPcode(); + if ((ocpTenantGroup.getTenantGroupCode().equals(tenantGroupPcode))){ + flag = false; + break; + } + } + } + + tenantMapper.deleteById(objId); + + return flag; + } + } diff --git a/src/main/resources/application-local.yml b/src/main/resources/application-local.yml index fff10d7dbee5ee57b730a440913d04d592966be9..0f73a771b24d9d846ed7b0ba83cb759e686069ba 100644 --- a/src/main/resources/application-local.yml +++ b/src/main/resources/application-local.yml @@ -2,11 +2,11 @@ spring: datasource: driver-class-name: org.postgresql.Driver username: postgres - password: root + password: 1234 type: com.zaxxer.hikari.HikariDataSource # jdbc-url: jdbc:postgresql://192.168.43.20:33072/pms3?currentSchema=public&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true # jdbc-url: jdbc:postgresql://172.20.10.9:33072/pms3?currentSchema=public&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true - url: jdbc:postgresql://localhost:5432/server?currentSchema=operating_platform&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true + url: jdbc:postgresql://localhost:5432/postgres?currentSchema=operating_platform&stringtype=unspecified&TimeZone=Asia/Shanghai&useAffectedRows=true knife4j: enable: true diff --git a/src/main/resources/mapper/OcpTenantGroup.xml b/src/main/resources/mapper/OcpTenantGroup.xml new file mode 100644 index 0000000000000000000000000000000000000000..4f38903c8bda00f8f1f0f5071fea72c920894b34 --- /dev/null +++ b/src/main/resources/mapper/OcpTenantGroup.xml @@ -0,0 +1,16 @@ + + + + + + + + + + +