column.py 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. # -*- coding: utf-8 -*-
  2. # @Author : YY
  3. from flask import request
  4. from ruoyi_common.base.model import AjaxResponse, TableResponse
  5. from ruoyi_common.descriptor.serializer import JsonSerializer
  6. from ruoyi_common.descriptor.validator import QueryValidator, BodyValidator, PathValidator
  7. from ruoyi_framework.descriptor.permission import HasPerm, PreAuthorize
  8. from ruoyi_generator.controller import gen
  9. from ruoyi_generator.domain.entity import GenTableColumn
  10. from ruoyi_generator.domain.po import GenTableColumnPO
  11. from ruoyi_generator.service.column_service import GenTableColumnService
  12. gen_table_column_service = GenTableColumnService()
  13. @gen.route('/column/gen/<int:tableId>', methods=["GET"])
  14. @PathValidator()
  15. @PreAuthorize(HasPerm('tool:gen:list'))
  16. @JsonSerializer()
  17. def gen_column_list(tableId: int):
  18. """
  19. 查询代码生成字段列表
  20. """
  21. rows, total = gen_table_column_service.select_gen_table_column_list_by_table_id(tableId)
  22. return TableResponse(rows=rows, total=total)
  23. @gen.route('/column/<int:columnId>', methods=["GET"])
  24. @PathValidator()
  25. @PreAuthorize(HasPerm('tool:gen:query'))
  26. @JsonSerializer()
  27. def get_column(columnId: int):
  28. """
  29. 查询代码生成字段详细信息
  30. """
  31. column = gen_table_column_service.select_gen_table_column_by_id(columnId)
  32. return AjaxResponse.from_success(data=column)
  33. @gen.route('/column', methods=["POST"])
  34. @BodyValidator()
  35. @PreAuthorize(HasPerm('tool:gen:add'))
  36. @JsonSerializer()
  37. def add_column(dto: GenTableColumn):
  38. """
  39. 新增代码生成字段
  40. """
  41. result = gen_table_column_service.insert_gen_table_column(dto)
  42. if result:
  43. return AjaxResponse.from_success(msg="新增成功")
  44. else:
  45. return AjaxResponse.from_error(msg="新增失败")
  46. @gen.route('/column/<int:columnId>', methods=["PUT"])
  47. @BodyValidator()
  48. @PreAuthorize(HasPerm('tool:gen:edit'))
  49. @JsonSerializer()
  50. def update_column(dto: GenTableColumn):
  51. """
  52. 修改代码生成字段
  53. """
  54. result = gen_table_column_service.update_gen_table_column(dto)
  55. if result:
  56. return AjaxResponse.from_success(msg="修改成功")
  57. else:
  58. return AjaxResponse.from_error(msg="修改失败")
  59. @gen.route('/column/<columnIds>', methods=["DELETE"])
  60. @PathValidator()
  61. @PreAuthorize(HasPerm('tool:gen:remove'))
  62. @JsonSerializer()
  63. def delete_column(columnIds: str):
  64. """
  65. 删除代码生成字段
  66. """
  67. try:
  68. ids = [int(i) for i in columnIds.split(',')]
  69. result = gen_table_column_service.delete_gen_table_column_by_ids(ids)
  70. if result:
  71. return AjaxResponse.from_success(msg="删除成功")
  72. else:
  73. return AjaxResponse.from_error(msg="删除失败")
  74. except Exception as e:
  75. return AjaxResponse.from_error(msg=f"删除失败: {str(e)}")