Browse Source

Merge remote-tracking branch 'origin/dev-service-czh' into dev-czh

dev-lhz
chenzhihang 1 year ago
parent
commit
041cdb58ff
8 changed files with 282 additions and 80 deletions
  1. +40
    -25
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/service/ServiceController.java
  2. +3
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ServiceDao.java
  3. +6
    -5
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ServiceService.java
  4. +116
    -43
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ServiceServiceImpl.java
  5. +15
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/vo/serviceVos/ServiceCodeConfigVo.java
  6. +24
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/vo/serviceVos/ServiceModelVo.java
  7. +60
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/vo/serviceVos/ServiceVersionVo.java
  8. +18
    -7
      ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ServiceDaoMapper.xml

+ 40
- 25
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/service/ServiceController.java View File

@@ -5,6 +5,7 @@ import com.ruoyi.common.core.web.domain.GenericsAjaxResult;
import com.ruoyi.platform.domain.Service;
import com.ruoyi.platform.domain.ServiceVersion;
import com.ruoyi.platform.service.ServiceService;
import com.ruoyi.platform.vo.serviceVos.ServiceVersionVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.data.domain.Page;
@@ -26,15 +27,29 @@ public class ServiceController extends BaseController {

@GetMapping
@ApiOperation("分页查询服务列表")
public GenericsAjaxResult<Page<Service>> queryByPageService(Service service, int page, int size) throws IOException {
public GenericsAjaxResult<Page<Service>> queryByPageService(@RequestParam(value = "service_name", required = false) String serviceName,
@RequestParam(value = "service_type", required = false) String serviceType,
@RequestParam("page") int page,
@RequestParam("size") int size) throws IOException {
Service service = new Service();
service.setServiceName(serviceName);
service.setServiceType(serviceType);
PageRequest pageRequest = PageRequest.of(page, size);
return genericsSuccess(serviceService.queryByPageService(service, pageRequest));
}

@GetMapping("/serviceVersion")
@ApiOperation("分页查询服务版本列表")
public GenericsAjaxResult<Page<ServiceVersion>> queryByPageServiceVersion(ServiceVersion serviceVersion, int page, int size) throws IOException {
return genericsSuccess(serviceService.queryByPageServiceVersion(serviceVersion, page, size));
public GenericsAjaxResult<Page<ServiceVersionVo>> queryByPageServiceVersion(@RequestParam(value = "run_state", required = false) String runState,
@RequestParam(value = "version", required = false) String version,
@RequestParam("service_id") Long serviceId,
@RequestParam("page") int page,
@RequestParam("size") int size) throws IOException {
ServiceVersion serviceVersion = new ServiceVersion();
serviceVersion.setRunState(runState);
serviceVersion.setVersion(version);
serviceVersion.setServiceId(serviceId);
return genericsSuccess(serviceService.queryByPageServiceVersion(serviceVersion, page, size));
}

@PostMapping
@@ -45,8 +60,8 @@ public class ServiceController extends BaseController {

@PostMapping("/serviceVersion")
@ApiOperation("新增服务版本")
public GenericsAjaxResult<ServiceVersion> addServiceVersion(@RequestBody ServiceVersion serviceVersion) {
return genericsSuccess(serviceService.addServiceVersion(serviceVersion));
public GenericsAjaxResult<ServiceVersion> addServiceVersion(@RequestBody ServiceVersionVo serviceVersionVo) {
return genericsSuccess(serviceService.addServiceVersion(serviceVersionVo));
}

@PutMapping
@@ -57,25 +72,25 @@ public class ServiceController extends BaseController {

@PutMapping("/serviceVersion")
@ApiOperation("编辑服务版本")
public GenericsAjaxResult<ServiceVersion> editServiceVersion(@RequestBody ServiceVersion serviceVersion) {
return genericsSuccess(serviceService.editServiceVersion(serviceVersion));
public GenericsAjaxResult<String> editServiceVersion(@RequestBody ServiceVersionVo serviceVersionVo) {
return genericsSuccess(serviceService.editServiceVersion(serviceVersionVo));
}

@GetMapping("/serviceDetail/{id}")
@ApiOperation("查询服务详细信息")
public GenericsAjaxResult<Service> getService(@PathVariable("id") Long id){
public GenericsAjaxResult<Service> getService(@PathVariable("id") Long id) {
return genericsSuccess(serviceService.getService(id));
}

@GetMapping("/serviceVersionDetail/{id}")
@ApiOperation("查询服务版本详细信息")
public GenericsAjaxResult<ServiceVersion> getServiceVersion(@PathVariable("id") Long id) {
public GenericsAjaxResult<ServiceVersionVo> getServiceVersion(@PathVariable("id") Long id) {
return genericsSuccess(serviceService.getServiceVersion(id));
}

@GetMapping("/serviceVersionList/{id}")
@ApiOperation("查询服务版本列表")
public GenericsAjaxResult<List<ServiceVersion>> serviceVersionList(@PathVariable("id") Long id){
public GenericsAjaxResult<List<ServiceVersion>> serviceVersionList(@PathVariable("id") Long id) {
return genericsSuccess(serviceService.serviceVersionList(id));
}

@@ -91,11 +106,11 @@ public class ServiceController extends BaseController {
return genericsSuccess(serviceService.deleteServiceVersion(id));
}

@PostMapping("/runServiceVersion/{id}")
@ApiOperation("启动服务版本")
public GenericsAjaxResult<String> runServiceVersion(@PathVariable("id") Long id) {
return genericsSuccess(serviceService.runServiceVersion(id));
}
// @PostMapping("/runServiceVersion/{id}")
// @ApiOperation("启动服务版本")
// public GenericsAjaxResult<String> runServiceVersion(@PathVariable("id") Long id) {
// return genericsSuccess(serviceService.runServiceVersion(id));
// }

@DeleteMapping("/stopServiceVersion/{id}")
@ApiOperation("停止服务版本")
@@ -103,22 +118,22 @@ public class ServiceController extends BaseController {
return genericsSuccess(serviceService.stopServiceVersion(id));
}

@PutMapping("/updateServiceVersion")
@ApiOperation("更新服务版本")
public GenericsAjaxResult<ServiceVersion> updateServiceVersion(@RequestBody ServiceVersion serviceVersion) {
return genericsSuccess(serviceService.updateServiceVersion(serviceVersion));
}
// @PutMapping("/updateServiceVersion")
// @ApiOperation("更新服务版本")
// public GenericsAjaxResult<String> updateServiceVersion(@RequestBody ServiceVersion serviceVersion) {
// return genericsSuccess(serviceService.updateServiceVersion(serviceVersion));
// }

@GetMapping("/getServiceVersionLog/{id}")
@GetMapping("/getServiceVersionLog")
@ApiOperation("获取服务版本日志")
public GenericsAjaxResult<String> getServiceVersionLog(@PathVariable("id") Long id,
@RequestParam String startTime, @RequestParam String endTime){
return genericsSuccess(serviceService.getServiceVersionLog(id,startTime,endTime));
public GenericsAjaxResult<String> getServiceVersionLog(@RequestParam("id") Long id,
@RequestParam("start_time") String startTime, @RequestParam("end_time") String endTime) {
return genericsSuccess(serviceService.getServiceVersionLog(id, startTime, endTime));
}

@GetMapping("/getServiceVersionDocs/{id}")
@ApiOperation("获取服务版本文档")
public GenericsAjaxResult<Map<String, Object>> getServiceVersionDocs(@PathVariable("id") Long id){
public GenericsAjaxResult<Map<String, Object>> getServiceVersionDocs(@PathVariable("id") Long id) {
return genericsSuccess(serviceService.getServiceVersionDocs(id));
}
}

+ 3
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ServiceDao.java View File

@@ -33,4 +33,7 @@ public interface ServiceDao {

List<ServiceVersion> getServiceVersionList(@Param("serviceId") Long serviceId);

Service getServiceByName(@Param("serviceName") String serviceName);

ServiceVersion getSvByVersion(@Param("version") String version, @Param("serviceId") Long serviceId);
}

+ 6
- 5
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ServiceService.java View File

@@ -2,6 +2,7 @@ package com.ruoyi.platform.service;

import com.ruoyi.platform.domain.Service;
import com.ruoyi.platform.domain.ServiceVersion;
import com.ruoyi.platform.vo.serviceVos.ServiceVersionVo;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;

@@ -12,19 +13,19 @@ import java.util.Map;
public interface ServiceService {
Page<Service> queryByPageService(Service service, PageRequest pageRequest) throws IOException;

Page<ServiceVersion> queryByPageServiceVersion(ServiceVersion serviceVersion, int page, int size) throws IOException;
Page<ServiceVersionVo> queryByPageServiceVersion(ServiceVersion serviceVersion, int page, int size) throws IOException;

Service addService(Service service);

ServiceVersion addServiceVersion(ServiceVersion serviceVersion);
ServiceVersion addServiceVersion(ServiceVersionVo serviceVersionVo);

Service editService(Service service);

ServiceVersion editServiceVersion(ServiceVersion serviceVersion);
String editServiceVersion(ServiceVersionVo serviceVersionVo);

Service getService(Long id);

ServiceVersion getServiceVersion(Long id);
ServiceVersionVo getServiceVersion(Long id);

String deleteService(Long id);

@@ -34,7 +35,7 @@ public interface ServiceService {

String stopServiceVersion(Long id);

ServiceVersion updateServiceVersion(ServiceVersion serviceVersion);
String updateServiceVersion(ServiceVersion serviceVersion);

String getServiceVersionLog(Long id, String startTime, String endTime);



+ 116
- 43
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ServiceServiceImpl.java View File

@@ -9,8 +9,12 @@ import com.ruoyi.platform.mapper.ServiceDao;
import com.ruoyi.platform.service.ServiceService;
import com.ruoyi.platform.utils.HttpUtils;
import com.ruoyi.platform.utils.JacksonUtil;
import com.ruoyi.platform.vo.serviceVos.ServiceCodeConfigVo;
import com.ruoyi.platform.vo.serviceVos.ServiceModelVo;
import com.ruoyi.platform.vo.serviceVos.ServiceVersionVo;
import com.ruoyi.system.api.model.LoginUser;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
@@ -18,6 +22,7 @@ import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -43,7 +48,7 @@ public class ServiceServiceImpl implements ServiceService {
}

@Override
public Page<ServiceVersion> queryByPageServiceVersion(ServiceVersion serviceVersion, int page, int size) {
public Page<ServiceVersionVo> queryByPageServiceVersion(ServiceVersion serviceVersion, int page, int size) {
PageRequest pageRequest;
if (StringUtils.isNotEmpty(serviceVersion.getRunState())) {
pageRequest = PageRequest.of(page, Integer.MAX_VALUE);
@@ -51,13 +56,22 @@ public class ServiceServiceImpl implements ServiceService {

List<String> deploymentNames = serviceVersions.stream().map(ServiceVersion::getDeploymentName).collect(Collectors.toList());
Map<String, String> runStates = getRunState(deploymentNames);
updateRunState(runStates);
if (runStates != null) {
updateRunState(runStates, serviceVersions);
}

List<ServiceVersion> result = serviceVersions.stream().filter(serviceVersion1 -> {
String runState = runStates.get(serviceVersion1.getDeploymentName());
return serviceVersion1.getRunState().equals(runState);
List<ServiceVersion> serviceVersionList = serviceVersions.stream().filter(serviceVersion1 -> {
String runState;
if (runStates != null) {
runState = runStates.get(serviceVersion1.getDeploymentName());
} else {
runState = serviceVersion1.getRunState();
}
return serviceVersion.getRunState().equals(runState);
}).collect(Collectors.toList());

List<ServiceVersionVo> result = getServiceVersionVoList(serviceVersionList);

PageRequest.of(page, size);
return new PageImpl<>(result, pageRequest, result.size());
} else {
@@ -67,33 +81,22 @@ public class ServiceServiceImpl implements ServiceService {

List<String> deploymentNames = serviceVersions.stream().map(ServiceVersion::getDeploymentName).collect(Collectors.toList());
Map<String, String> runStates = getRunState(deploymentNames);
updateRunState(runStates);

return new PageImpl<>(serviceVersions, pageRequest, total);
}
}

Map<String, String> getRunState(List<String> deploymentNames) {
HashMap<String, Object> paramMap = new HashMap<>();
paramMap.put("deployment_names", deploymentNames);
String req = HttpUtils.sendPost(argoUrl + modelService + "/getStatus", JSON.toJSONString(paramMap));
if (StringUtils.isNotEmpty(req)) {
Map<String, Object> reqMap = JacksonUtil.parseJSONStr2Map(req);
Map<String, Map<String, String>> data = (Map<String, Map<String, String>>) reqMap.get("data");
return data.get("status");
} else {
return null;
}
}
if (runStates != null) {
updateRunState(runStates, serviceVersions);
}
List<ServiceVersionVo> result = getServiceVersionVoList(serviceVersions);

void updateRunState(Map<String, String> runStates) {
for (Map.Entry<String, String> entry : runStates.entrySet()) {
serviceDao.updateRunState(entry.getKey(), entry.getValue());
return new PageImpl<>(result, pageRequest, total);
}
}

@Override
public com.ruoyi.platform.domain.Service addService(com.ruoyi.platform.domain.Service service) {
com.ruoyi.platform.domain.Service serviceByName = serviceDao.getServiceByName(service.getServiceName());
if (serviceByName != null) {
throw new RuntimeException("服务名称已存在,无法新增");
}

LoginUser loginUser = SecurityUtils.getLoginUser();
service.setCreateBy(loginUser.getUsername());
service.setUpdateBy(loginUser.getUsername());
@@ -102,11 +105,18 @@ public class ServiceServiceImpl implements ServiceService {
}

@Override
public ServiceVersion addServiceVersion(ServiceVersion serviceVersion) {
public ServiceVersion addServiceVersion(ServiceVersionVo serviceVersionVo) {
ServiceVersion svByVersion = serviceDao.getSvByVersion(serviceVersionVo.getVersion(), serviceVersionVo.getServiceId());
if (svByVersion != null) {
throw new RuntimeException("服务版本已存在,无法新增");
}

ServiceVersion serviceVersion = getServiceVersion(serviceVersionVo);
LoginUser loginUser = SecurityUtils.getLoginUser();
serviceVersion.setCreateBy(loginUser.getUsername());
serviceVersion.setUpdateBy(loginUser.getUsername());
serviceDao.insertServiceVersion(serviceVersion);
runServiceVersion(serviceVersion.getId());
return serviceVersion;
}

@@ -119,47 +129,53 @@ public class ServiceServiceImpl implements ServiceService {
}

@Override
public ServiceVersion editServiceVersion(ServiceVersion serviceVersion) {
public String editServiceVersion(ServiceVersionVo serviceVersionVo) {
ServiceVersion serviceVersion = getServiceVersion(serviceVersionVo);

ServiceVersion oldServiceVersion = serviceDao.getServiceVersionById(serviceVersionVo.getId());
if (!oldServiceVersion.getReplicas().equals(serviceVersionVo.getReplicas()) || !oldServiceVersion.getResource().equals(serviceVersionVo.getResource())
|| serviceVersionVo.getRerun()) {
updateServiceVersion(serviceVersion);
}
LoginUser loginUser = SecurityUtils.getLoginUser();
serviceVersion.setUpdateBy(loginUser.getUsername());
serviceDao.updateServiceVersion(serviceVersion);
return serviceDao.getServiceVersionById(serviceVersion.getId());
return "修改成功";
}

@Override
public com.ruoyi.platform.domain.Service getService(Long id) {
com.ruoyi.platform.domain.Service service = serviceDao.getServiceById(id);

ServiceVersion serviceVersion = new ServiceVersion();
serviceVersion.setServiceId(id);
service.setVersionCount(serviceDao.countServiceVersion(serviceVersion));
return serviceDao.getServiceById(id);
}

@Override
public ServiceVersion getServiceVersion(Long id) {
return serviceDao.getServiceVersionById(id);
public ServiceVersionVo getServiceVersion(Long id) {
ServiceVersion serviceVersion = serviceDao.getServiceVersionById(id);
ServiceVersionVo serviceVersionVo = getServiceVersionVo(serviceVersion);
com.ruoyi.platform.domain.Service service = serviceDao.getServiceById(serviceVersion.getServiceId());
serviceVersionVo.setServiceName(service.getServiceName());
return serviceVersionVo;
}

@Override
public String deleteService(Long id) {
com.ruoyi.platform.domain.Service service = serviceDao.getServiceById(id);
if (service == null) {
return "服务不存在";
throw new RuntimeException("服务不存在");
}

LoginUser loginUser = SecurityUtils.getLoginUser();
String username = loginUser.getUsername();
String createBy = service.getCreateBy();
if (!(StringUtils.equals(username, "admin") || StringUtils.equals(username, createBy))) {
return "无权限删除该服务";
throw new RuntimeException("无权限删除该服务");
}

ServiceVersion serviceVersion = new ServiceVersion();
serviceVersion.setServiceId(id);
long versionCount = serviceDao.countServiceVersion(serviceVersion);
if (versionCount != 0) {
return "该服务下还有版本,不能删除";
throw new RuntimeException("该服务下还有版本,不能删除");
}

service.setState(Constant.State_invalid);
@@ -197,7 +213,7 @@ public class ServiceServiceImpl implements ServiceService {
serviceVersion.setDeploymentName(data.get("deployment_name"));
serviceVersion.setSvcName(data.get("svc_name"));
serviceVersion.setRunState(Constant.Init);
editServiceVersion(serviceVersion);
serviceDao.updateServiceVersion(serviceVersion);
return "启动成功";
} else {
throw new RuntimeException("启动失败");
@@ -215,7 +231,7 @@ public class ServiceServiceImpl implements ServiceService {
String req = HttpUtils.sendPost(argoUrl + modelService + "/stop", JSON.toJSONString(paramMap));
if (StringUtils.isNotEmpty(req)) {
serviceVersion.setRunState(Constant.Stopped);
editServiceVersion(serviceVersion);
serviceDao.updateServiceVersion(serviceVersion);
return "停止成功";
} else {
throw new RuntimeException("停止失败");
@@ -223,7 +239,7 @@ public class ServiceServiceImpl implements ServiceService {
}

@Override
public ServiceVersion updateServiceVersion(ServiceVersion serviceVersion) {
public String updateServiceVersion(ServiceVersion serviceVersion) {
HashMap<String, Object> paramMap = new HashMap<>();
paramMap.put("deployment_name", serviceVersion.getDeploymentName());
HashMap<String, Object> updateMap = new HashMap<>();
@@ -232,7 +248,7 @@ public class ServiceServiceImpl implements ServiceService {
paramMap.put("update_model", JSON.toJSONString(updateMap));
String req = HttpUtils.sendPost(argoUrl + modelService + "/update", JSON.toJSONString(paramMap));
if (StringUtils.isNotEmpty(req)) {
return editServiceVersion(serviceVersion);
return "修改成功";
} else {
throw new RuntimeException("更新失败");
}
@@ -275,4 +291,61 @@ public class ServiceServiceImpl implements ServiceService {
return serviceDao.getServiceVersionList(id);
}


ServiceVersion getServiceVersion(ServiceVersionVo serviceVersionVo) {
ServiceVersion serviceVersion = new ServiceVersion();
BeanUtils.copyProperties(serviceVersionVo, serviceVersion);
serviceVersion.setModel(JSON.toJSONString(serviceVersionVo.getModel()));
serviceVersion.setCodeConfig(JSON.toJSONString(serviceVersionVo.getCodeConfig()));
serviceVersion.setEnvVariables(JSON.toJSONString(serviceVersionVo.getEnvVariables()));

return serviceVersion;
}

List<ServiceVersionVo> getServiceVersionVoList(List<ServiceVersion> serviceVersionList) {
List<ServiceVersionVo> result = new ArrayList<>();

for (ServiceVersion sv : serviceVersionList) {
ServiceVersionVo serviceVersionVo = getServiceVersionVo(sv);
result.add(serviceVersionVo);
}
return result;
}

ServiceVersionVo getServiceVersionVo(ServiceVersion sv) {
ServiceVersionVo serviceVersionVo = new ServiceVersionVo();
BeanUtils.copyProperties(sv, serviceVersionVo);
ServiceModelVo serviceModelVo = JSON.parseObject(sv.getModel(), ServiceModelVo.class);
serviceVersionVo.setModel(serviceModelVo);

ServiceCodeConfigVo serviceCodeConfigVo = JSON.parseObject(sv.getCodeConfig(), ServiceCodeConfigVo.class);
serviceVersionVo.setCodeConfig(serviceCodeConfigVo);

serviceVersionVo.setEnvVariables(JacksonUtil.parseJSONStr2Map(sv.getEnvVariables()));
return serviceVersionVo;
}

Map<String, String> getRunState(List<String> deploymentNames) {
HashMap<String, Object> paramMap = new HashMap<>();
paramMap.put("deployment_names", deploymentNames);
String req = HttpUtils.sendPost(argoUrl + modelService + "/getStatus", JSON.toJSONString(paramMap));
if (StringUtils.isNotEmpty(req)) {
Map<String, Object> reqMap = JacksonUtil.parseJSONStr2Map(req);
Map<String, Map<String, String>> data = (Map<String, Map<String, String>>) reqMap.get("data");
if (data != null) {
return data.get("status");
}
return null;
} else {
return null;
}
}

void updateRunState(Map<String, String> runStates, List<ServiceVersion> serviceVersionList) {
for (ServiceVersion sv : serviceVersionList) {
String runState = runStates.get(sv.getDeploymentName());
sv.setRunState(runState);
serviceDao.updateRunState(sv.getDeploymentName(), runState);
}
}
}

+ 15
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/vo/serviceVos/ServiceCodeConfigVo.java View File

@@ -0,0 +1,15 @@
package com.ruoyi.platform.vo.serviceVos;

import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import lombok.Data;

@Data
@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
public class ServiceCodeConfigVo {
private String codePath;

private String branch;

private String showValue;
}

+ 24
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/vo/serviceVos/ServiceModelVo.java View File

@@ -0,0 +1,24 @@
package com.ruoyi.platform.vo.serviceVos;

import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import lombok.Data;

@Data
@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
public class ServiceModelVo {

private String id;

private String name;

private String version;

private String path;

private String identifier;

private String owner;

private String showValue;
}

+ 60
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/vo/serviceVos/ServiceVersionVo.java View File

@@ -0,0 +1,60 @@
package com.ruoyi.platform.vo.serviceVos;

import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import io.swagger.annotations.ApiModel;
import lombok.Data;

import java.util.Date;
import java.util.Map;

@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
@ApiModel("服务版本")
@Data
public class ServiceVersionVo {
private Long id;

private Long serviceId;

private String serviceName;

private String version;

private String description;

private ServiceModelVo model;

private String image;

private String resource;

private Integer replicas;

private String mountPath;

private Map<String, Object> envVariables;

private ServiceCodeConfigVo codeConfig;

private String command;

private String url;

private String createBy;

private String updateBy;

private Date createTime;

private Date updateTime;

private Integer state;

private String runState;

private String deploymentName;

private String svcName;

private Boolean rerun;
}

+ 18
- 7
ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ServiceDaoMapper.xml View File

@@ -8,7 +8,7 @@
<if test="service.serviceName != null and service.serviceName != ''">
and service_name like concat('%', #{service.serviceName}, '%')
</if>
<if test="service.serviceType != null">
<if test="service.serviceType != null and service.serviceType != ''">
and service_type = #{service.serviceType}
</if>
</where>
@@ -22,7 +22,7 @@
<if test="service.serviceName != null and service.serviceName != ''">
and a.service_name like concat('%', #{service.serviceName}, '%')
</if>
<if test="service.serviceType != null">
<if test="service.serviceType != null and service.serviceType != ''">
and a.service_type = #{service.serviceType}
</if>
</where>
@@ -56,9 +56,10 @@
</sql>

<select id="getServiceById" resultType="com.ruoyi.platform.domain.Service">
select *
from service
where id = #{id}
select a.*,count(b.id) as version_count
from service a
left join (select * from service_version where state = 1) b on a.id = b.service_id
where a.id = #{id}
</select>

<select id="getServiceVersionById" resultType="com.ruoyi.platform.domain.ServiceVersion">
@@ -73,12 +74,22 @@
where service_id = #{serviceId}
</select>

<insert id="insertService">
<select id="getServiceByName" resultType="com.ruoyi.platform.domain.Service">
select * from service where service_name = #{serviceName} and state = 1
</select>

<select id="getSvByVersion" resultType="com.ruoyi.platform.domain.ServiceVersion">
select *
from service_version
where service_id = #{serviceId} and version = #{version} and state = 1
</select>

<insert id="insertService" keyProperty="id" useGeneratedKeys="true">
insert into service(service_name, service_type, description, create_by, update_by)
values (#{service.serviceName}, #{service.serviceType}, #{service.description}, #{service.createBy}, #{service.updateBy})
</insert>

<insert id="insertServiceVersion">
<insert id="insertServiceVersion" keyProperty="id" useGeneratedKeys="true">
insert into service_version(service_id, version, model, description, image, resource, replicas, mount_path, env_variables,
code_config, command, create_by, update_by)
values (#{serviceVersion.serviceId}, #{serviceVersion.version}, #{serviceVersion.model}, #{serviceVersion.description}, #{serviceVersion.image},


Loading…
Cancel
Save