|
|
@@ -1,62 +1,82 @@
|
|
|
package main
|
|
|
|
|
|
import (
|
|
|
- "bufio"
|
|
|
- "go-create/service"
|
|
|
- "go-create/tmpl"
|
|
|
- "html/template"
|
|
|
- "os"
|
|
|
+ "fmt"
|
|
|
+ "go-create/configs"
|
|
|
+ "go-create/util"
|
|
|
)
|
|
|
|
|
|
-// func init() {
|
|
|
-// configs.ConfigInit()
|
|
|
-// }
|
|
|
+func init() {
|
|
|
+ configs.ConfigInit()
|
|
|
+}
|
|
|
func main() {
|
|
|
//初始化
|
|
|
- //util.InitMTableArray(configs.Engine)
|
|
|
+ util.InitMTableArray(configs.Engine)
|
|
|
//service.InitTable()
|
|
|
- service.RunTest()
|
|
|
+ //service.RunTest()
|
|
|
//执行生成,go
|
|
|
//util.MysqlToStruct()
|
|
|
//util.MysqlToDao()
|
|
|
//util.MysqlToBaseCRUDRouter()
|
|
|
//执行生成,vue
|
|
|
//util.MysqlToVueApi()
|
|
|
-
|
|
|
+ SaveMenu()
|
|
|
}
|
|
|
|
|
|
-// LoadStructTemplate 加载结构体生成模板
|
|
|
-func LoadStructTemplate(url string) {
|
|
|
- os.Truncate(url, 0)
|
|
|
- file, _ := os.OpenFile(url, os.O_CREATE|os.O_RDWR, 0666)
|
|
|
- defer file.Close()
|
|
|
- //os.Stdout
|
|
|
- writer := bufio.NewWriter(file)
|
|
|
+func SaveMenu() {
|
|
|
+ for i := range util.MTables {
|
|
|
+ table := util.MTables[i]
|
|
|
+ fmt.Println(table.Name)
|
|
|
|
|
|
- t, err := template.ParseFiles("./tmpl/struct.go.template")
|
|
|
- if err != nil {
|
|
|
- panic(err)
|
|
|
+ search := BackMenu{
|
|
|
+ BackMenuName: table.Comment,
|
|
|
+ BackRouterPath: "/back/" + table.LittleHump,
|
|
|
+ State: "1",
|
|
|
+ }
|
|
|
+ if GetBackMenuCount(search) {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ menu := BackMenu{
|
|
|
+ BackMenuName: table.Comment,
|
|
|
+ BackMenuPater: 0,
|
|
|
+ Sort: int64(i + 4),
|
|
|
+ Icon: "Setting",
|
|
|
+ Remark: table.Comment,
|
|
|
+ BackRouterPath: "/back/" + table.LittleHump,
|
|
|
+ State: "1",
|
|
|
+ }
|
|
|
+ SaveBackMenu(&menu)
|
|
|
}
|
|
|
- err = t.Execute(writer, tmpl.MTables)
|
|
|
+}
|
|
|
+func SaveBackMenu(backMenu *BackMenu) (BackMenu, error) {
|
|
|
+ _, err := configs.Engine.Table("back_menu").Insert(&backMenu)
|
|
|
if err != nil {
|
|
|
- panic(err)
|
|
|
+ return *backMenu, err
|
|
|
}
|
|
|
+ return *backMenu, nil
|
|
|
}
|
|
|
|
|
|
-// LoadDaoTemplate 加载Dao生成模板
|
|
|
-func LoadDaoTemplate(url string) {
|
|
|
- os.Truncate(url, 0)
|
|
|
- file, _ := os.OpenFile(url, os.O_CREATE|os.O_RDWR, 0666)
|
|
|
- defer file.Close()
|
|
|
-
|
|
|
- writer := bufio.NewWriterSize(file, 1<<31)
|
|
|
-
|
|
|
- t, err := template.ParseFiles("./tmpl/dao.go.template")
|
|
|
+func GetBackMenuCount(backMenu BackMenu) bool {
|
|
|
+ Count, err := configs.Engine.Table("back_menu").FindAndCount(&backMenu)
|
|
|
if err != nil {
|
|
|
- panic(err)
|
|
|
- }
|
|
|
- err = t.Execute(writer, tmpl.MTables)
|
|
|
- if err != nil {
|
|
|
- panic(err)
|
|
|
+ return false
|
|
|
}
|
|
|
+ return Count > 0
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+// BackMenu 后台菜单
|
|
|
+type BackMenu struct {
|
|
|
+ Id int64 `json:"id"` // 11 0 注释:id
|
|
|
+ BackMenuName string `xorm:"back_menu_name" json:"backMenuName"` // 255 0 注释:菜单名称
|
|
|
+ BackMenuPater int64 `xorm:"back_menu_pater" json:"backMenuPater"` // 11 0 注释:父级菜单
|
|
|
+ Sort int64 `xorm:"sort" json:"sort"` // 11 0 注释:排序
|
|
|
+ Icon string `xorm:"icon" json:"icon"` // 255 0 注释:图标
|
|
|
+ Remark string `xorm:"remark" json:"remark"` // 255 0 注释:备注
|
|
|
+ BackRouterPath string `xorm:"back_router_path" json:"backRouterPath"` // 255 0 注释:路由路径
|
|
|
+ State string `xorm:"state" json:"state"` // 255 0 注释:状态
|
|
|
+}
|
|
|
+
|
|
|
+func (receiver BackMenu) String() string {
|
|
|
+ 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, "}")
|
|
|
}
|