MakeCodeController.cs 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. using Vo;
  2. using Microsoft.AspNetCore.Mvc;
  3. using Model;
  4. using Services;
  5. using Model.Base;
  6. using Vo.Admin;
  7. using Mapster;
  8. using Infrastructure;
  9. using Dto.Client;
  10. using Custom;
  11. using Feign;
  12. using Common;
  13. using Util;
  14. namespace Controllers.Client
  15. {
  16. public class MakeCodeController : BaseController
  17. {
  18. private readonly IDatabaseInfoService _DatabaseInfoService;
  19. private readonly IDatabaseTableService _DatabaseTableService;
  20. private readonly IApiGroupService _ApiGroupService;
  21. private readonly IApiInfoService _ApiInfoService;
  22. public MakeCodeController(IDatabaseInfoService DatabaseInfoService, IDatabaseTableService DatabaseTableService, IApiGroupService ApiGroupService, IApiInfoService ApiInfoService)
  23. {
  24. _DatabaseInfoService = DatabaseInfoService;
  25. _DatabaseTableService = DatabaseTableService;
  26. _ApiGroupService = ApiGroupService;
  27. _ApiInfoService = ApiInfoService;
  28. }
  29. /// <summary>
  30. /// 生成代码
  31. /// </summary>
  32. /// <param name="param">参数</param>
  33. /// <returns>生成代码</returns>
  34. [HttpPost]
  35. [Route("/v1/omega_source/MakeCode/getMakeCodeList")]
  36. public IActionResult getMakeCodeList([FromQuery] MakeCodeDto param)
  37. {
  38. try
  39. {
  40. TokenModel loginUser = JwtUtil.GetLoginUser(HttpContext);
  41. loginUser.username = "lcl";
  42. ProjectService baseInfo = IProject.getProjectService(param.serviceId);
  43. List<int> databaseIds = Tools.SpitIntArrary(baseInfo.databaseList).ToList();
  44. foreach(var databaseId in databaseIds)
  45. {
  46. var tables = _DatabaseTableService.GetList(a => a.databaseId == databaseId);
  47. foreach(var table in tables)
  48. {
  49. _DatabaseTableService.makeJavaModel(baseInfo, table, loginUser);
  50. _DatabaseTableService.makeJavaService(baseInfo, table, loginUser);
  51. _DatabaseTableService.makeJavaServiceImpl(baseInfo, table, loginUser);
  52. _DatabaseTableService.makeJavaMapper(baseInfo, table, loginUser);
  53. _DatabaseTableService.makeJavaMapperXml(baseInfo, table, loginUser);
  54. }
  55. }
  56. var apiGroups = _ApiGroupService.GetList(a => a.serviceId == param.serviceId);
  57. foreach(var apiGroup in apiGroups)
  58. {
  59. var apiInfos = _ApiInfoService.GetList(a => a.groupId == apiGroup.id);
  60. foreach(var apiInfo in apiInfos)
  61. {
  62. _DatabaseTableService.makeJavaDto(baseInfo, apiInfo, loginUser);
  63. _DatabaseTableService.makeJavaVo(baseInfo, apiInfo, loginUser);
  64. }
  65. _DatabaseTableService.makeJavaController(baseInfo, apiGroup.groupNameUpper, loginUser);
  66. }
  67. }
  68. catch(Exception ex)
  69. {
  70. Function.WriteLog(ex.ToString(), "测试生成代码异常");
  71. }
  72. return SUCCESS("ok");
  73. }
  74. }
  75. }