lichunlei 4 месяцев назад
Родитель
Сommit
1e776cdc92

+ 45 - 3
Controllers/Client/MakeCodeController.cs

@@ -7,18 +7,27 @@ using Vo.Admin;
 using Mapster;
 using Infrastructure;
 using Dto.Client;
+using Custom;
+using Feign;
+using Common;
+using Util;
 
 
 namespace Controllers.Client
 {
     public class MakeCodeController : BaseController
     {
+        private readonly IDatabaseInfoService _DatabaseInfoService;
         private readonly IDatabaseTableService _DatabaseTableService;
+        private readonly IApiGroupService _ApiGroupService;        
+        private readonly IApiInfoService _ApiInfoService;
 
-
-        public MakeCodeController(IDatabaseTableService DatabaseTableService)
+        public MakeCodeController(IDatabaseInfoService DatabaseInfoService, IDatabaseTableService DatabaseTableService, IApiGroupService ApiGroupService, IApiInfoService ApiInfoService)
         {
+            _DatabaseInfoService = DatabaseInfoService;
             _DatabaseTableService = DatabaseTableService;
+            _ApiGroupService = ApiGroupService;
+            _ApiInfoService = ApiInfoService;
 
         }
 
@@ -31,7 +40,40 @@ namespace Controllers.Client
         [Route("/v1/omega_source/MakeCode/getMakeCodeList")]
         public IActionResult getMakeCodeList([FromQuery] MakeCodeDto param)
         {
-            
+            try
+            {
+                TokenModel loginUser = JwtUtil.GetLoginUser(HttpContext);
+                loginUser.username = "lcl";
+                ProjectService baseInfo = IProject.getProjectService(param.serviceId);
+                List<int> databaseIds = Tools.SpitIntArrary(baseInfo.databaseList).ToList();
+                foreach(var databaseId in databaseIds)
+                {
+                    var tables = _DatabaseTableService.GetList(a => a.databaseId == databaseId);
+                    foreach(var table in tables)
+                    {
+                        _DatabaseTableService.makeJavaModel(baseInfo, table, loginUser);
+                        _DatabaseTableService.makeJavaService(baseInfo, table, loginUser);
+                        _DatabaseTableService.makeJavaServiceImpl(baseInfo, table, loginUser);
+                        _DatabaseTableService.makeJavaMapper(baseInfo, table, loginUser);
+                        _DatabaseTableService.makeJavaMapperXml(baseInfo, table, loginUser);
+                    }
+                }
+                var apiGroups = _ApiGroupService.GetList(a => a.serviceId == param.serviceId);
+                foreach(var apiGroup in apiGroups)
+                {
+                    var apiInfos = _ApiInfoService.GetList(a => a.groupId == apiGroup.id);
+                    foreach(var apiInfo in apiInfos)
+                    {
+                        _DatabaseTableService.makeJavaDto(baseInfo, apiInfo, loginUser);
+                        _DatabaseTableService.makeJavaVo(baseInfo, apiInfo, loginUser);
+                    }
+                    _DatabaseTableService.makeJavaController(baseInfo, apiGroup.groupNameUpper, loginUser);
+                }
+            }
+            catch(Exception ex)
+            {
+                Function.WriteLog(ex.ToString(), "测试生成代码异常");
+            }
             return SUCCESS("ok");
         }
 

+ 4 - 4
Feign/IProject.cs

@@ -1,6 +1,6 @@
 using Common;
+using Custom;
 using LitJson;
-using Vo.Feign;
 
 namespace Feign
 {
@@ -13,16 +13,16 @@ namespace Feign
         //     return Newtonsoft.Json.JsonConvert.DeserializeObject<List<PageForMiniProgramVo>>(content);
         // }
 
-        public static GetProjectServiceQueryVo getProjectService(int id)
+        public static ProjectService getProjectService(int id)
         {
             string url = Utils.FeignUrl["omega_project"] + "/v1/omega_project/ProjectService/getProjectServiceQuery?id=" + id;
             string content = Function.GetWebRequest(url);
             JsonData jsonObj = JsonMapper.ToObject(content);
             if(jsonObj["status"].ToString() == "1")
             {
-                return Newtonsoft.Json.JsonConvert.DeserializeObject<GetProjectServiceQueryVo>(jsonObj["data"].ToJson());
+                return Newtonsoft.Json.JsonConvert.DeserializeObject<ProjectService>(jsonObj["data"].ToJson());
             }
-            return new GetProjectServiceQueryVo();
+            return new ProjectService();
         }
     }
 }

+ 0 - 8
Services/DatabaseTableService.cs

@@ -220,7 +220,6 @@ namespace Services
         /// <summary>
         /// 生成java代码-model
         /// </summary>
-        /// <param name="param">参数请求体</param>
         /// <returns>生成java代码-model</returns>
         public void makeJavaModel(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser)
         {
@@ -239,7 +238,6 @@ namespace Services
         /// <summary>
         /// 生成java代码-service
         /// </summary>
-        /// <param name="param">参数请求体</param>
         /// <returns>生成java代码-service</returns>
         public void makeJavaService(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser)
         {
@@ -255,7 +253,6 @@ namespace Services
         /// <summary>
         /// 生成java代码-serviceImpl
         /// </summary>
-        /// <param name="param">参数请求体</param>
         /// <returns>生成java代码-serviceImpl</returns>
         public void makeJavaServiceImpl(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser)
         {
@@ -274,7 +271,6 @@ namespace Services
         /// <summary>
         /// 生成java代码-dto
         /// </summary>
-        /// <param name="param">参数请求体</param>
         /// <returns>生成java代码-dto</returns>
         public void makeJavaDto(ProjectService baseInfo, ApiInfo apiInfo, TokenModel loginUser)
         {
@@ -291,7 +287,6 @@ namespace Services
         /// <summary>
         /// 生成java代码-vo
         /// </summary>
-        /// <param name="param">参数请求体</param>
         /// <returns>生成java代码-vo</returns>
         public void makeJavaVo(ProjectService baseInfo, ApiInfo apiInfo, TokenModel loginUser)
         {
@@ -308,7 +303,6 @@ namespace Services
         /// <summary>
         /// 生成java代码-mapper
         /// </summary>
-        /// <param name="param">参数请求体</param>
         /// <returns>生成java代码-mapper</returns>
         public void makeJavaMapper(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser)
         {
@@ -324,7 +318,6 @@ namespace Services
         /// <summary>
         /// 生成java代码-mapperXml
         /// </summary>
-        /// <param name="param">参数请求体</param>
         /// <returns>生成java代码-mapperXml</returns>
         public void makeJavaMapperXml(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser)
         {
@@ -343,7 +336,6 @@ namespace Services
         /// <summary>
         /// 生成java代码-controller
         /// </summary>
-        /// <param name="param">参数请求体</param>
         /// <returns>生成java代码-controller</returns>
         public void makeJavaController(ProjectService baseInfo, string controllerPath, TokenModel loginUser)
         {

+ 52 - 0
Services/IService/IDatabaseTableService.cs

@@ -3,6 +3,7 @@ using Model.Base;
 using Microsoft.AspNetCore.Mvc;
 using Vo.Admin;
 using Dto.Admin;
+using Custom;
 
 
 namespace Services
@@ -41,5 +42,56 @@ namespace Services
         /// <param name="param">参数请求体</param>
         /// <returns>生成</returns>
         void makeDatabaseTable([FromBody] MakeDatabaseTableDto param, TokenModel loginUser);
+
+
+        /// <summary>
+        /// 生成java代码-model
+        /// </summary>
+        /// <returns>生成java代码-model</returns>
+        void makeJavaModel(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser);
+
+        /// <summary>
+        /// 生成java代码-service
+        /// </summary>
+        /// <returns>生成java代码-service</returns>
+        void makeJavaService(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser);
+
+        /// <summary>
+        /// 生成java代码-serviceImpl
+        /// </summary>
+        /// <returns>生成java代码-serviceImpl</returns>
+        void makeJavaServiceImpl(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser);
+
+        /// <summary>
+        /// 生成java代码-dto
+        /// </summary>
+        /// <returns>生成java代码-dto</returns>
+        void makeJavaDto(ProjectService baseInfo, ApiInfo apiInfo, TokenModel loginUser);
+
+        /// <summary>
+        /// 生成java代码-vo
+        /// </summary>
+        /// <returns>生成java代码-vo</returns>
+        void makeJavaVo(ProjectService baseInfo, ApiInfo apiInfo, TokenModel loginUser);
+
+        /// <summary>
+        /// 生成java代码-mapper
+        /// </summary>
+        /// <returns>生成java代码-mapper</returns>
+        void makeJavaMapper(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser);
+
+        /// <summary>
+        /// 生成java代码-mapperXml
+        /// </summary>
+        /// <returns>生成java代码-mapperXml</returns>
+        void makeJavaMapperXml(ProjectService baseInfo, DatabaseTable table, TokenModel loginUser);
+
+        /// <summary>
+        /// 生成java代码-controller
+        /// </summary>
+        /// <returns>生成java代码-controller</returns>
+        void makeJavaController(ProjectService baseInfo, string controllerPath, TokenModel loginUser);
+
+
     }
 }