main.go 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package main
  2. import (
  3. "fmt"
  4. "go-create/configs"
  5. "go-create/util"
  6. )
  7. func init() {
  8. configs.ConfigInit()
  9. }
  10. func main() {
  11. //初始化
  12. util.InitMTableArray(configs.Engine)
  13. //service.InitTable()
  14. //service.RunTest()
  15. //执行生成,go
  16. //util.MysqlToStruct()
  17. //util.MysqlToDao()
  18. //util.MysqlToBaseCRUDRouter()
  19. //执行生成,vue
  20. //util.MysqlToVueApi()
  21. SaveMenu()
  22. }
  23. func SaveMenu() {
  24. for i := range util.MTables {
  25. table := util.MTables[i]
  26. fmt.Println(table.Name)
  27. search := BackMenu{
  28. BackMenuName: table.Comment,
  29. BackRouterPath: "/back/" + table.LittleHump,
  30. State: "1",
  31. }
  32. if GetBackMenuCount(search) {
  33. continue
  34. }
  35. menu := BackMenu{
  36. BackMenuName: table.Comment,
  37. BackMenuPater: 0,
  38. Sort: int64(i + 4),
  39. Icon: "Setting",
  40. Remark: table.Comment,
  41. BackRouterPath: "/back/" + table.LittleHump,
  42. State: "1",
  43. }
  44. SaveBackMenu(&menu)
  45. }
  46. }
  47. func SaveBackMenu(backMenu *BackMenu) (BackMenu, error) {
  48. _, err := configs.Engine.Table("back_menu").Insert(&backMenu)
  49. if err != nil {
  50. return *backMenu, err
  51. }
  52. return *backMenu, nil
  53. }
  54. func GetBackMenuCount(backMenu BackMenu) bool {
  55. Count, err := configs.Engine.Table("back_menu").FindAndCount(&backMenu)
  56. if err != nil {
  57. return false
  58. }
  59. return Count > 0
  60. }
  61. // BackMenu 后台菜单
  62. type BackMenu struct {
  63. Id int64 `json:"id"` // 11 0 注释:id
  64. BackMenuName string `xorm:"back_menu_name" json:"backMenuName"` // 255 0 注释:菜单名称
  65. BackMenuPater int64 `xorm:"back_menu_pater" json:"backMenuPater"` // 11 0 注释:父级菜单
  66. Sort int64 `xorm:"sort" json:"sort"` // 11 0 注释:排序
  67. Icon string `xorm:"icon" json:"icon"` // 255 0 注释:图标
  68. Remark string `xorm:"remark" json:"remark"` // 255 0 注释:备注
  69. BackRouterPath string `xorm:"back_router_path" json:"backRouterPath"` // 255 0 注释:路由路径
  70. State string `xorm:"state" json:"state"` // 255 0 注释:状态
  71. }
  72. func (receiver BackMenu) String() string {
  73. return fmt.Sprint("BackMenu{Id:", receiver.Id, ",BackMenuName:", receiver.BackMenuName, ",BackMenuPater:", receiver.BackMenuPater, ",Sort:", receiver.Sort, ",Icon:", receiver.Icon, ",Remark:", receiver.Remark, ",BackRouterPath:", receiver.BackRouterPath, ",State:", receiver.State, "}")
  74. }