فهرست منبع

添加vscode项目列表

lichunlei 4 ماه پیش
والد
کامیت
bb0ea062bb
3فایلهای تغییر یافته به همراه102 افزوده شده و 0 حذف شده
  1. 67 0
      Controllers/Feign/VsCodeController.cs
  2. 7 0
      Model/Database/ProjectService.cs
  3. 28 0
      Model/Vo/Admin/ProjectVo.cs

+ 67 - 0
Controllers/Feign/VsCodeController.cs

@@ -0,0 +1,67 @@
+using Attribute;
+using Base;
+using Common;
+using Dto;
+using Enums;
+using Extensions;
+using Filters;
+using Infrastructure;
+using Infrastructure.Model;
+using Mapster;
+using Microsoft.AspNetCore.Mvc;
+using Middleware;
+using Model;
+using Model.Base;
+using Services;
+using Util;
+using Vo;
+
+namespace Controllers.Feign
+{
+    public class VsCodeController : BaseController
+    {
+        private readonly IProjectService projectService;
+        private readonly IProjectServiceService projectServiceService;
+
+        public VsCodeController(IProjectService projectService, IProjectServiceService projectServiceService)
+        {
+            this.projectService = projectService;
+            this.projectServiceService = projectServiceService;
+        }
+
+        /// <summary>
+        /// vscode项目列表
+        /// </summary>
+        /// <param name="param"></param>
+        /// <returns></returns>
+        [HttpPost("/api/vscode/projects")]
+        public IActionResult Projects()
+        {
+            TokenModel tokenModel = JwtUtil.GetLoginUser(HttpContext);
+            if(tokenModel == null)
+            {
+                return ToResponse(ResultCode.BAD_REQUEST, "用户未登录");
+            }
+            List<ProjectVo> list = new List<ProjectVo>();
+            var projects = projectService.GetList(m => m.createBy == tokenModel.username);
+            foreach (var project in projects)
+            { 
+                ProjectVo item = new ProjectVo();
+                item.projectId = project.id;
+                item.projectType = 0;
+                item.projectName = project.projectName;
+                item.serverList = new List<ServerVo>();
+                List<Model.ProjectService> servers = projectServiceService.GetList(m => m.projectId == project.id);
+                foreach(var server in servers)
+                {
+                    ServerVo subitem = new ServerVo();
+                    subitem.serverId = server.id;
+                    subitem.serverName = server.serviceTitle;
+                    item.serverList.Add(subitem);
+                }
+                list.Add(item);
+            }
+            return SUCCESS(list);
+        }
+    }
+}

+ 7 - 0
Model/Database/ProjectService.cs

@@ -17,6 +17,13 @@ namespace Model
         public int id { get; set; }
 
 
+        /// <summary>
+        /// 项目ID
+        /// </summary>
+        [SugarColumn(ColumnDescription = "项目ID", ColumnName = "project_id")]
+        public int projectId { get; set; }
+
+
         /// <summary>
         /// 版本号
         /// </summary>

+ 28 - 0
Model/Vo/Admin/ProjectVo.cs

@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+namespace Vo
+{
+    public class ProjectVo
+    {
+        //项目Id
+        public int projectId { get; set; }
+
+        //项目分类Id
+        public int projectType { get; set; }
+
+        //项目名称
+        public string projectName { get; set; }
+
+        //服务集合
+        public List<ServerVo> serverList { get; set; }
+    }
+
+    public class ServerVo
+    {
+        //服务Id
+        public int serverId { get; set; }
+
+        //服务名称
+        public string serverName { get; set; }
+    }
+}