diff --git a/QMPlusServer/autoCode/fe/autocode/api/api.js b/QMPlusServer/autoCode/fe/autocode/api/api.js deleted file mode 100644 index 39e5c28d74a9813988791def372db9098d36faf0..0000000000000000000000000000000000000000 --- a/QMPlusServer/autoCode/fe/autocode/api/api.js +++ /dev/null @@ -1,84 +0,0 @@ -import service from '@/utils/request' - -// @Tags Test -// @Summary 创建Test -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body autocode.Test true "创建Test" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}" -// @Router /t/createTest [post] -export const createTest = (data) => { - return service({ - url: "/t/createTest", - method: 'post', - data - }) - } - - -// @Tags Test -// @Summary 删除Test -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body autocode.Test true "删除Test" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}" -// @Router /t/deleteTest [post] - export const deleteTest = (data) => { - return service({ - url: "/t/deleteTest", - method: 'post', - data - }) - } - -// @Tags Test -// @Summary 更新Test -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body autocode.Test true "更新Test" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"更新成功"}" -// @Router /t/updateTest [post] - export const updateTest = (data) => { - return service({ - url: "/t/updateTest", - method: 'post', - data - }) - } - - -// @Tags Test -// @Summary 用id查询Test -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body autocode.Test true "用id查询Test" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"查询成功"}" -// @Router /t/findTest [post] - export const findTest = (data) => { - return service({ - url: "/t/findTest", - method: 'post', - data - }) - } - - -// @Tags Test -// @Summary 分页获取Test列表 -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body modelInterface.PageInfo true "分页获取Test列表" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}" -// @Router /t/getTestList [post] - export const getTestList = (data) => { - return service({ - url: "/t/getTestList", - method: 'post', - data - }) - } \ No newline at end of file diff --git a/QMPlusServer/autoCode/te/autocode/api/api.go b/QMPlusServer/autoCode/te/autocode/api/api.go deleted file mode 100644 index 898617c6d20c9705cbd165aec7fa77589b00aadc..0000000000000000000000000000000000000000 --- a/QMPlusServer/autoCode/te/autocode/api/api.go +++ /dev/null @@ -1,118 +0,0 @@ -package api - -import ( - "fmt" - "gin-vue-admin/controller/servers" - "gin-vue-admin/model/modelInterface" - // 请自行引入model路径 - "github.com/gin-gonic/gin" -) - - -// @Tags Test -// @Summary 创建Test -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body autocode.Test true "创建Test" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}" -// @Router /t/createTest [post] -func CreateTest(c *gin.Context) { - var t autocode.Test - _ = c.ShouldBindJSON(&t) - err := t.CreateTest() - if err != nil { - servers.ReportFormat(c, false, fmt.Sprintf("创建失败:%v", err), gin.H{}) - } else { - servers.ReportFormat(c, true, "创建成功", gin.H{}) - } -} - - -// @Tags Test -// @Summary 删除Test -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body autocode.Test true "删除Test" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}" -// @Router /t/deleteTest [post] -func DeleteTest(c *gin.Context) { - var t autocode.Test - _ = c.ShouldBindJSON(&t) - err := t.DeleteTest() - if err != nil { - servers.ReportFormat(c, false, fmt.Sprintf("删除失败:%v", err), gin.H{}) - } else { - servers.ReportFormat(c, true, "创建成功", gin.H{}) - } -} - - -// @Tags Test -// @Summary 更新Test -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body autocode.Test true "更新Test" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"更新成功"}" -// @Router /t/updateTest [post] -func UpdateTest(c *gin.Context) { - var t autocode.Test - _ = c.ShouldBindJSON(&t) - err,ret := t.UpdateTest() - if err != nil { - servers.ReportFormat(c, false, fmt.Sprintf("更新失败:%v", err), gin.H{}) - } else { - servers.ReportFormat(c, true, "更新成功", gin.H{ - "ret":ret, - }) - } -} - - -// @Tags Test -// @Summary 用id查询Test -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body autocode.Test true "用id查询Test" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"查询成功"}" -// @Router /t/findTest [post] -func FindTest(c *gin.Context) { - var t autocode.Test - _ = c.ShouldBindJSON(&t) - err,ret := t.FindById() - if err != nil { - servers.ReportFormat(c, false, fmt.Sprintf("查询失败:%v", err), gin.H{}) - } else { - servers.ReportFormat(c, true, "查询成功", gin.H{ - "ret":ret, - }) - } -} - - -// @Tags Test -// @Summary 分页获取Test列表 -// @Security ApiKeyAuth -// @accept application/json -// @Produce application/json -// @Param data body modelInterface.PageInfo true "分页获取Test列表" -// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}" -// @Router /t/getTestList [post] -func GetTestList(c *gin.Context) { - var pageInfo modelInterface.PageInfo - _ = c.ShouldBindJSON(&pageInfo) - err, list, total := new(autocode.Test).GetInfoList(pageInfo) - if err != nil { - servers.ReportFormat(c, false, fmt.Sprintf("获取数据失败,%v", err), gin.H{}) - } else { - servers.ReportFormat(c, true, "获取数据成功", gin.H{ - "autocodeList": list, - "total": total, - "page": pageInfo.Page, - "pageSize": pageInfo.PageSize, - }) - } -} \ No newline at end of file diff --git a/QMPlusServer/autoCode/te/autocode/model/model.go b/QMPlusServer/autoCode/te/autocode/model/model.go deleted file mode 100644 index 14b18cca73d1ee9a64b3aee84b5643f27397233e..0000000000000000000000000000000000000000 --- a/QMPlusServer/autoCode/te/autocode/model/model.go +++ /dev/null @@ -1,52 +0,0 @@ -// 自动生成模板Test -package autocode - -import ( - "gin-vue-admin/controller/servers" - "gin-vue-admin/init/qmsql" - "gin-vue-admin/model/modelInterface" - "github.com/jinzhu/gorm" -) - -type Test struct { - gorm.Model - TestComponent string `json:"testComponent"` - TestBigComponent int `json:"testBigComponent"` -} - -// 创建Test -func (t *Test)CreateTest()(err error){ - err = qmsql.DEFAULTDB.Create(t).Error - return err -} - -// 删除Test -func (t *Test)DeleteTest()(err error){ - err = qmsql.DEFAULTDB.Delete(t).Error - return err -} - -// 更新Test -func (t *Test)UpdateTest()(err error, ret Test){ - err = qmsql.DEFAULTDB.Save(t).Error - return err, *t -} - -// 根据ID查看单条Test -func (t *Test)FindById()(err error,ret Test){ - err = qmsql.DEFAULTDB.Where("id = ?",t.ID).First(&ret).Error - return err,ret -} - -// 分页获取Test -func (t *Test)GetInfoList(info modelInterface.PageInfo)(err error, list interface{}, total int){ - // 封装分页方法 调用即可 传入 当前的结构体和分页信息 - err, db, total := servers.PagingServer(t, info) - if err != nil { - return - } else { - var reTestList []Test - err = db.Find(&reTestList).Error - return err, reTestList, total - } -} \ No newline at end of file diff --git a/QMPlusServer/autoCode/te/autocode/router/router.go b/QMPlusServer/autoCode/te/autocode/router/router.go deleted file mode 100644 index b39a09e7213432ebb928bd568584d0b1626a6c8c..0000000000000000000000000000000000000000 --- a/QMPlusServer/autoCode/te/autocode/router/router.go +++ /dev/null @@ -1,18 +0,0 @@ -package router - -import ( - "gin-vue-admin/controller/api" - "gin-vue-admin/middleware" - "github.com/gin-gonic/gin" -) - -func InitTestRouter(Router *gin.RouterGroup) { - TestRouter := Router.Group("t").Use(middleware.JWTAuth()).Use(middleware.CasbinHandler()) - { - TestRouter.POST("createTest", api.CreateTest) // 新建Test - TestRouter.POST("deleteTest", api.DeleteTest) //删除Test - TestRouter.POST("updateTest", api.UpdateTest) //更新Test - TestRouter.POST("findTest ", api.FindTest) // 根据ID获取Test - TestRouter.POST("getTestList", api.GetTestList) //获取Test列表 - } -} diff --git a/QMPlusServer/controller/api/sys_autoCode.go b/QMPlusServer/controller/api/sys_autoCode.go new file mode 100644 index 0000000000000000000000000000000000000000..d978790887a53e9d34c6adbd57678f177922288a --- /dev/null +++ b/QMPlusServer/controller/api/sys_autoCode.go @@ -0,0 +1,33 @@ +package api + +import ( + "fmt" + "gin-vue-admin/controller/servers" + "gin-vue-admin/model/autoCodeModel" + "github.com/gin-gonic/gin" + "os" +) + +// @Tags SysApi +// @Summary 自动代码模板 +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body autoCodeModel.AutoCodeStruct true "创建自动代码" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"创建成功"}" +// @Router /autoCode/createTemp [post] +func CreateTemp(c *gin.Context) { + var a autoCodeModel.AutoCodeStruct + _ = c.ShouldBindJSON(&a) + err := a.CreateTemp() + if err != nil { + servers.ReportFormat(c, false, fmt.Sprintf("创建失败:%v", err), gin.H{}) + os.Remove("./ginvueadmin.zip") + } else { + c.Writer.Header().Add("Content-Disposition", fmt.Sprintf("attachment; filename=%s", "ginvueadmin.zip")) //fmt.Sprintf("attachment; filename=%s", filename)对下载的文件重命名 + c.Writer.Header().Add("Content-Type", "application/json") + c.Writer.Header().Add("success", "true") + c.File("./ginvueadmin.zip") + os.Remove("./ginvueadmin.zip") + } +} diff --git a/QMPlusServer/init/initRouter/init_router.go b/QMPlusServer/init/initRouter/init_router.go index 937738374adb62f89be5b7a7b12907f455b51c17..c75b5bf097acf90d5e9aae477927118d3ed590f1 100644 --- a/QMPlusServer/init/initRouter/init_router.go +++ b/QMPlusServer/init/initRouter/init_router.go @@ -35,7 +35,8 @@ func InitRouter() *gin.Engine { router.InitCasbinRouter(ApiGroup) // 权限相关路由 router.InitJwtRouter(ApiGroup) // jwt相关路由 router.InitSystemRouter(ApiGroup) // system相关路由 - router.InitCustomerRouter(ApiGroup) // 客户路由 + router.InitCustomerRouter(ApiGroup) // 客户路由 + router.InitAutoCodeRouter(ApiGroup) // 创建自动化代码 log.L.Info("router register success") return Router } diff --git a/QMPlusServer/main.go b/QMPlusServer/main.go index 48969a344c05d6ffb7c52f709f045614edbb9a8c..da73277f0635f67155326c89dd073dceaab70803 100644 --- a/QMPlusServer/main.go +++ b/QMPlusServer/main.go @@ -47,6 +47,8 @@ func main() { defer qmsql.DEFAULTDB.Close() // 注册路由 Router := initRouter.InitRouter() + + Router.Static("/form-generator", "./static/form-generator") //Router.RunTLS(":443","ssl.pem", "ssl.key") // https支持 需要添加中间件 //sysType := runtime.GOOS // diff --git a/QMPlusServer/model/autoCodeModel/autoCode.go b/QMPlusServer/model/autoCodeModel/autoCode.go index 8cc4108ac98ebe5f996282aa45bcea34e497f657..46cbaf32639bc2b6478cbbea883bd2f5470b30dd 100644 --- a/QMPlusServer/model/autoCodeModel/autoCode.go +++ b/QMPlusServer/model/autoCodeModel/autoCode.go @@ -1,7 +1,6 @@ package autoCodeModel import ( - "fmt" "gin-vue-admin/tools" "html/template" "os" @@ -9,21 +8,17 @@ import ( //开发中功能,若您发现这块代码可以研究,可以无视 type AutoCodeStruct struct { - StructName string `json:"structName"` - PackageName string `json:"packageName"` - Abbreviation string `json:"abbreviation"` - Components []Component `json:"components"` + StructName string `json:"structName"` + PackageName string `json:"packageName"` + Abbreviation string `json:"abbreviation"` + Fields []Field `json:"fields"` } -type Component struct { - ComponentName string `json:"componentName"` - ComponentType string `json:"componentType"` - ComponentJson string `json:"componentJson"` - Ismultiple bool `json:"isMultiple"` - ComponentShowType string `json:"componentShowType"` - NideDictionary bool `json:"nideDictionary"` - DictionaryName string `json:"dictionaryName"` - ComponentDictionary []Dictionary `json:"dictionary"` +type Field struct { + FieldName string `json:"fieldName"` + FieldType string `json:"fieldType"` + FieldJson string `json:"fieldJson"` + ColumnName string `json:"columnName"` } type Dictionary struct { @@ -31,68 +26,113 @@ type Dictionary struct { Value string `json:"value"` } -func Temp() { - modelTmpl, modelTplErr := template.ParseFiles("../../tpl/te/model.go.tpl") - apiTmpl, apiTplErr := template.ParseFiles("../../tpl/te/api.go.tpl") - routerTmpl, routerTplErr := template.ParseFiles("../../tpl/te/router.go.tpl") - feapiTmpl, feapiTplErr := template.ParseFiles("../../tpl/fe/api.js.tpl") - - fmt.Println(modelTplErr,apiTplErr,routerTplErr,feapiTplErr) - - a1 := Component{ - ComponentName: "TestComponent", - ComponentType: "string", - ComponentJson: "testComponent", - Ismultiple: false, - ComponentShowType: "", - NideDictionary: false, - DictionaryName: "", - ComponentDictionary: nil, - } - a2 := Component{ - ComponentName: "TestBigComponent", - ComponentType: "int", - ComponentJson: "testBigComponent", - Ismultiple: false, - ComponentShowType: "", - NideDictionary: false, - DictionaryName: "", - ComponentDictionary: nil, - } - a := AutoCodeStruct{ - StructName: "Test", - PackageName: "autocode", - Abbreviation: "t", - Components: []Component{a1, a2}, - } - _autoCode := "../../autoCode/" - _te := "../../autoCode/te/" - _dir := "../../autoCode/te/" + a.PackageName - _modeldir := "../../autoCode/te/" + a.PackageName+"/model" - _apidir := "../../autoCode/te/" + a.PackageName+"/api" - _routerdir := "../../autoCode/te/" + a.PackageName+"/router" - _fe := "../../autoCode/fe/" - _fe_dir:="../../autoCode/fe/" + a.PackageName - _fe_apidir:="../../autoCode/fe/" + a.PackageName+"/api" - mkerr := createDir(_autoCode,_te,_dir,_modeldir,_apidir,_routerdir,_fe,_fe_dir,_fe_apidir) - fmt.Print(mkerr) - model, _ := os.OpenFile("../../autoCode/te/"+a.PackageName+"/model/model.go", os.O_CREATE|os.O_WRONLY, 0755) - api, _ := os.OpenFile("../../autoCode/te/"+a.PackageName+"/api/api.go", os.O_CREATE|os.O_WRONLY, 0755) - router, _ := os.OpenFile("../../autoCode/te/"+a.PackageName+"/router/router.go", os.O_CREATE|os.O_WRONLY, 0755) - feapi ,_ := os.OpenFile("../../autoCode/fe/"+a.PackageName+"/api/api.js", os.O_CREATE|os.O_WRONLY, 0755) - modelErr := modelTmpl.Execute(model, a) - apiErr := apiTmpl.Execute(api, a) - routerErr := routerTmpl.Execute(router, a) - feapiErr := feapiTmpl.Execute(feapi, a) - - fmt.Println(modelErr,apiErr,routerErr,feapiErr) +func (a *AutoCodeStruct) CreateTemp() (err error) { + basePath := "./tpl" + modelTmpl, err := template.ParseFiles(basePath + "/te/model.go.tpl") + if err != nil { + return err + } + apiTmpl, err := template.ParseFiles(basePath + "/te/api.go.tpl") + if err != nil { + return err + } + routerTmpl, err := template.ParseFiles(basePath + "/te/router.go.tpl") + if err != nil { + return err + } + feapiTmpl, err := template.ParseFiles(basePath + "/fe/api.js.tpl") + if err != nil { + return err + } + readmeTmpl, err := template.ParseFiles(basePath + "/readme.txt.tpl") + if err != nil { + return err + } + //自动化总目录 + _autoCode := "./autoCode/" + //自动化后台代码目录 + _te := "./autoCode/te/" + _dir := _te + a.PackageName + _modeldir := _te + a.PackageName + "/model" + _apidir := _te + a.PackageName + "/api" + _routerdir := _te + a.PackageName + "/router" + //自动化前台代码目录 + _fe := "./autoCode/fe/" + _fe_dir := _fe + a.PackageName + _fe_apidir := _fe + a.PackageName + "/api" + err = createDir(_autoCode, _te, _dir, _modeldir, _apidir, _routerdir, _fe, _fe_dir, _fe_apidir) + if err != nil { + return err + } + model, err := os.OpenFile(_te+a.PackageName+"/model/model.go", os.O_CREATE|os.O_WRONLY, 0755) + if err != nil { + return err + } + api, err := os.OpenFile(_te+a.PackageName+"/api/api.go", os.O_CREATE|os.O_WRONLY, 0755) + if err != nil { + return err + } + router, err := os.OpenFile(_te+a.PackageName+"/router/router.go", os.O_CREATE|os.O_WRONLY, 0755) + if err != nil { + return err + } + feapi, err := os.OpenFile(_fe+a.PackageName+"/api/api.js", os.O_CREATE|os.O_WRONLY, 0755) + if err != nil { + return err + } + readme, err := os.OpenFile(_autoCode+"readme.txt", os.O_CREATE|os.O_WRONLY, 0755) + if err != nil { + return err + } + // 生成代码 + { + err = modelTmpl.Execute(model, a) + if err != nil { + return err + } + err = apiTmpl.Execute(api, a) + if err != nil { + return err + } + err = routerTmpl.Execute(router, a) + if err != nil { + return err + } + err = feapiTmpl.Execute(feapi, a) + if err != nil { + return err + } + err = readmeTmpl.Execute(readme, a) + if err != nil { + return err + } + } + model.Close() + api.Close() + router.Close() + feapi.Close() + readme.Close() + fileList := []string{ + _te + a.PackageName + "/model/model.go", + _te + a.PackageName + "/api/api.go", + _te + a.PackageName + "/router/router.go", + _fe + a.PackageName + "/api/api.js", + _autoCode + "readme.txt", + } + err = tools.ZipFiles("./ginvueadmin.zip", fileList, ".", ".") + if err != nil { + return err + } + err = os.RemoveAll(_autoCode) + if err != nil { + return err + } + return nil } - - //批量创建文件夹 -func createDir(dirs ...string)(err error){ - for _,v:=range dirs{ +func createDir(dirs ...string) (err error) { + for _, v := range dirs { exist, err := tools.PathExists(v) if err != nil { //log.L.Info(fmt.Sprintf("get dir error![%v]\n", err)) @@ -112,4 +152,4 @@ func createDir(dirs ...string)(err error){ } } return err -} \ No newline at end of file +} diff --git a/QMPlusServer/model/autoCodeModel/autoCode_test.go b/QMPlusServer/model/autoCodeModel/autoCode_test.go deleted file mode 100644 index 8423e68f6914b8634bdc01b30986344d2d999b8e..0000000000000000000000000000000000000000 --- a/QMPlusServer/model/autoCodeModel/autoCode_test.go +++ /dev/null @@ -1,7 +0,0 @@ -package autoCodeModel - -import "testing" - -func TestTemp(t *testing.T) { - Temp() -} diff --git a/QMPlusServer/router/sys_autoCode.go b/QMPlusServer/router/sys_autoCode.go new file mode 100644 index 0000000000000000000000000000000000000000..50b00e0f1418622a2ff2028f52cc89755e070ef8 --- /dev/null +++ b/QMPlusServer/router/sys_autoCode.go @@ -0,0 +1,14 @@ +package router + +import ( + "gin-vue-admin/controller/api" + "gin-vue-admin/middleware" + "github.com/gin-gonic/gin" +) + +func InitAutoCodeRouter(Router *gin.RouterGroup) { + AutoCodeRouter := Router.Group("autoCode").Use(middleware.JWTAuth()).Use(middleware.CasbinHandler()) + { + AutoCodeRouter.POST("createTemp", api.CreateTemp) //创建自动化代码 + } +} diff --git a/QMPlusServer/tools/zipfiles.go b/QMPlusServer/tools/zipfiles.go new file mode 100644 index 0000000000000000000000000000000000000000..a5a00e855045f624f40aafad12a991580465f007 --- /dev/null +++ b/QMPlusServer/tools/zipfiles.go @@ -0,0 +1,57 @@ +package tools + +import ( + "archive/zip" + "io" + "os" + "strings" +) + +func ZipFiles(filename string, files []string, oldform, newform string) error { + + newZipFile, err := os.Create(filename) + if err != nil { + return err + } + defer newZipFile.Close() + + zipWriter := zip.NewWriter(newZipFile) + defer zipWriter.Close() + + // 把files添加到zip中 + for _, file := range files { + + zipfile, err := os.Open(file) + if err != nil { + return err + } + defer zipfile.Close() + + // 获取file的基础信息 + info, err := zipfile.Stat() + if err != nil { + return err + } + + header, err := zip.FileInfoHeader(info) + if err != nil { + return err + } + + //使用上面的FileInforHeader() 就可以把文件保存的路径替换成我们自己想要的了,如下面 + header.Name = strings.Replace(file, oldform, newform, -1) + + // 优化压缩 + // 更多参考see http://golang.org/pkg/archive/zip/#pkg-constants + header.Method = zip.Deflate + + writer, err := zipWriter.CreateHeader(header) + if err != nil { + return err + } + if _, err = io.Copy(writer, zipfile); err != nil { + return err + } + } + return nil +} diff --git a/QMPlusServer/tpl/readme.txt.tpl b/QMPlusServer/tpl/readme.txt.tpl new file mode 100644 index 0000000000000000000000000000000000000000..1ad81281e52de4552ae4369c669d9469a4f21e34 --- /dev/null +++ b/QMPlusServer/tpl/readme.txt.tpl @@ -0,0 +1,9 @@ +代码解压后把fe的api文件内容粘贴进前端api文件夹下并修改为自己想要的名字即可 + +后端代码解压后同理,放到自己想要的 mvc对应路径 并且到 initRouter中注册自动生成的路由 到registTable中注册自动生成的model + +项目github:"https://github.com/piexlmax/gin-vue-admin" + +希望大家给个star多多鼓励 + +暂时不保存大家生成的结构体 只为方便一次性使用 \ No newline at end of file diff --git a/QMPlusServer/tpl/te/model.go.tpl b/QMPlusServer/tpl/te/model.go.tpl index 47a74c8142c21546de8845b587b92973fbd948b6..c452a484b7d9c6aedcd04cda88a7fa41fc67d716 100644 --- a/QMPlusServer/tpl/te/model.go.tpl +++ b/QMPlusServer/tpl/te/model.go.tpl @@ -9,8 +9,8 @@ import ( ) type {{.StructName}} struct { - gorm.Model {{range .Components}} - {{.ComponentName}} {{.ComponentType}} `json:"{{.ComponentJson}}"` {{ end }} + gorm.Model {{range .Fields}} + {{.FieldName}} {{.FieldType}} `json:"{{.FieldJson}}"{{if .ColumnName}} gorm:"column:{{.ColumnName}}"{{end}}`{{ end }} } // 创建{{.StructName}} diff --git a/QMPlusVuePage/src/view/superAdmin/autoCode/component/componentDialog.vue b/QMPlusVuePage/src/view/superAdmin/autoCode/component/componentDialog.vue deleted file mode 100644 index efd4502ff7990ed1c2c5b164ef6ff0aeee589fa5..0000000000000000000000000000000000000000 --- a/QMPlusVuePage/src/view/superAdmin/autoCode/component/componentDialog.vue +++ /dev/null @@ -1,182 +0,0 @@ - - - \ No newline at end of file diff --git a/QMPlusVuePage/src/view/superAdmin/autoCode/index.vue b/QMPlusVuePage/src/view/superAdmin/autoCode/index.vue deleted file mode 100644 index 62fe5f9544a06726d32d9c2c44ae0413f863579b..0000000000000000000000000000000000000000 --- a/QMPlusVuePage/src/view/superAdmin/autoCode/index.vue +++ /dev/null @@ -1,167 +0,0 @@ - - - \ No newline at end of file diff --git a/QMPlusVuePage/src/view/superAdmin/menu/menu.vue b/QMPlusVuePage/src/view/superAdmin/menu/menu.vue index 29450c7a93fef39bbd0612127868f058f8d362b4..57f2189558c7740fba33ece255ebed1d118d2eda 100644 --- a/QMPlusVuePage/src/view/superAdmin/menu/menu.vue +++ b/QMPlusVuePage/src/view/superAdmin/menu/menu.vue @@ -201,6 +201,7 @@ export default { message: '添加失败!' }) } + this.initForm() this.dialogFormVisible = false } }) diff --git a/QMPlusVuePage/src/view/superAdmin/system/system.vue b/QMPlusVuePage/src/view/superAdmin/system/system.vue deleted file mode 100644 index 4d10f321e85265d63129aa2513e23bc5e94ca1a7..0000000000000000000000000000000000000000 --- a/QMPlusVuePage/src/view/superAdmin/system/system.vue +++ /dev/null @@ -1,110 +0,0 @@ - - - - \ No newline at end of file