Bladeren bron

日常保存

Administrator 2 jaren geleden
bovenliggende
commit
66ffbc6765
7 gewijzigde bestanden met toevoegingen van 463 en 40 verwijderingen
  1. 76 0
      data/dao/manage/GenTableColumnDao.go
  2. 76 0
      data/dao/manage/GenTableDao.go
  3. 53 17
      data/domain/DoMain.go
  4. 1 1
      main.go
  5. 248 21
      router/BasaeBackRouter.go
  6. 1 0
      router/DetailRouter.go
  7. 8 1
      router/Router.go

+ 76 - 0
data/dao/manage/GenTableColumnDao.go

@@ -0,0 +1,76 @@
+package manage
+
+import (
+	"demo/configs"
+	"demo/data/domain"
+	"demo/data/domain/vo"
+)
+
+func GetGenTableColumnById(id int64) (domain.GenTableColumn, error) {
+	var genTableColumn domain.GenTableColumn
+	_, err := configs.Engine.Where("id = ?", id).Get(&genTableColumn)
+	if err != nil {
+		return genTableColumn, err
+	}
+	return genTableColumn, nil
+}
+
+func GetGenTableColumnListInId(ids []int64) ([]domain.GenTableColumn, error) {
+	rows, err := configs.Engine.In("id", ids).Rows(&domain.GenTableColumn{})
+	if err != nil {
+		return make([]domain.GenTableColumn, 0), err
+	}
+	defer rows.Close()
+	var list []domain.GenTableColumn
+	for rows.Next() {
+		var u domain.GenTableColumn
+		list = append(list, u)
+	}
+	return list, nil
+}
+
+func GetGenTableColumnList(genTableColumn domain.GenTableColumn, pageNum, pageSize int) (vo.BaseListVo, error) {
+	var arr []domain.GenTableColumn
+	Count, err := configs.Engine.Limit(pageSize, (pageNum-1)*pageSize).Desc("id").FindAndCount(&arr, &genTableColumn)
+	var vo vo.BaseListVo
+	if err != nil {
+		return vo, err
+	}
+	if err != nil {
+		return vo, err
+	}
+	vo.PageNum = pageNum
+	vo.PageSize = pageSize
+	vo.List = make([]any, len(arr))
+	for i, v := range arr {
+		vo.List[i] = v
+	}
+	vo.Total = int(Count)
+	return vo, nil
+}
+
+func SaveGenTableColumn(genTableColumn *domain.GenTableColumn) (domain.GenTableColumn, error) {
+	_, err := configs.Engine.Insert(&genTableColumn)
+	if err != nil {
+		return *genTableColumn, err
+	}
+	return *genTableColumn, nil
+}
+
+func SetGenTableColumn(genTableColumnMap map[string]interface{}, id int64) (domain.GenTableColumn, bool, error) {
+	var genTableColumn domain.GenTableColumn
+	_, err := configs.Engine.Table("gen_table_column").Where("id = ?", id).Update(genTableColumnMap)
+	if err != nil {
+		return genTableColumn, false, err
+	}
+	return genTableColumn, true, nil
+}
+
+func DeleteGenTableColumn(id int64) bool {
+	var genTableColumn domain.GenTableColumn
+	i, err := configs.Engine.Where("id = ?", id).Delete(&genTableColumn)
+	if err != nil {
+		return false
+	}
+	return i > 0
+}

+ 76 - 0
data/dao/manage/GenTableDao.go

@@ -0,0 +1,76 @@
+package manage
+
+import (
+	"demo/configs"
+	"demo/data/domain"
+	"demo/data/domain/vo"
+)
+
+func GetGenTableById(id int64) (domain.GenTable, error) {
+	var genTable domain.GenTable
+	_, err := configs.Engine.Where("id = ?", id).Get(&genTable)
+	if err != nil {
+		return genTable, err
+	}
+	return genTable, nil
+}
+
+func GetGenTableListInId(ids []int64) ([]domain.GenTable, error) {
+	rows, err := configs.Engine.In("id", ids).Rows(&domain.GenTable{})
+	if err != nil {
+		return make([]domain.GenTable, 0), err
+	}
+	defer rows.Close()
+	var list []domain.GenTable
+	for rows.Next() {
+		var u domain.GenTable
+		list = append(list, u)
+	}
+	return list, nil
+}
+
+func GetGenTableList(genTable domain.GenTable, pageNum, pageSize int) (vo.BaseListVo, error) {
+	var arr []domain.GenTable
+	Count, err := configs.Engine.Limit(pageSize, (pageNum-1)*pageSize).Desc("id").FindAndCount(&arr, &genTable)
+	var vo vo.BaseListVo
+	if err != nil {
+		return vo, err
+	}
+	if err != nil {
+		return vo, err
+	}
+	vo.PageNum = pageNum
+	vo.PageSize = pageSize
+	vo.List = make([]any, len(arr))
+	for i, v := range arr {
+		vo.List[i] = v
+	}
+	vo.Total = int(Count)
+	return vo, nil
+}
+
+func SaveGenTable(genTable *domain.GenTable) (domain.GenTable, error) {
+	_, err := configs.Engine.Insert(&genTable)
+	if err != nil {
+		return *genTable, err
+	}
+	return *genTable, nil
+}
+
+func SetGenTable(genTableMap map[string]interface{}, id int64) (domain.GenTable, bool, error) {
+	var genTable domain.GenTable
+	_, err := configs.Engine.Table("gen_table").Where("id = ?", id).Update(genTableMap)
+	if err != nil {
+		return genTable, false, err
+	}
+	return genTable, true, nil
+}
+
+func DeleteGenTable(id int64) bool {
+	var genTable domain.GenTable
+	i, err := configs.Engine.Where("id = ?", id).Delete(&genTable)
+	if err != nil {
+		return false
+	}
+	return i > 0
+}

+ 53 - 17
data/domain/DoMain.go

@@ -5,7 +5,7 @@ import (
 	"time"
 )
 
-// Article
+// Article 文章
 type Article struct {
 	Id             int64     `json:"id"`                                      // 11 0 注释:id
 	ArticleTitle   string    `xorm:"article_title"  json:"articleTitle"`      // 255 0 注释:文章名称
@@ -27,7 +27,7 @@ func (receiver Article) String() string {
 	return fmt.Sprint("Article{Id:", receiver.Id, ",ArticleTitle:", receiver.ArticleTitle, ",ArticleContent:", receiver.ArticleContent, ",State:", receiver.State, ",ArticleTagIds:", receiver.ArticleTagIds, ",ArticleTopicId:", receiver.ArticleTopicId, ",Image:", receiver.Image, ",PublishTime:", receiver.PublishTime, ",EyeFill:", receiver.EyeFill, ",LikeCount:", receiver.LikeCount, ",CreateBy:", receiver.CreateBy, ",CreateTime:", receiver.CreateTime, ",UpdateBy:", receiver.UpdateBy, ",UpdateTime:", receiver.UpdateTime, "}")
 }
 
-// ArticleTag
+// ArticleTag 文章标签
 type ArticleTag struct {
 	Id      int64  `json:"id"`                       // 11 0 注释:
 	TagName string `xorm:"tag_name"  json:"tagName"` // 255 0 注释:标签名
@@ -38,7 +38,7 @@ func (receiver ArticleTag) String() string {
 	return fmt.Sprint("ArticleTag{Id:", receiver.Id, ",TagName:", receiver.TagName, ",TagDesc:", receiver.TagDesc, "}")
 }
 
-// ArticleTopic
+// ArticleTopic 文章主题
 type ArticleTopic struct {
 	Id        int64  `json:"id"`                           // 11 0 注释:
 	Image     string `xorm:"image"  json:"image"`          // 255 0 注释:图片
@@ -50,7 +50,7 @@ func (receiver ArticleTopic) String() string {
 	return fmt.Sprint("ArticleTopic{Id:", receiver.Id, ",Image:", receiver.Image, ",TopicName:", receiver.TopicName, ",TopicDesc:", receiver.TopicDesc, "}")
 }
 
-// BackAuthority
+// BackAuthority 后台权限校验
 type BackAuthority struct {
 	Id                    int64     `json:"id"`                                                   // 11 0 注释:id
 	AuthorityName         string    `xorm:"authority_name"  json:"authorityName"`                 // 255 0 注释:接口名
@@ -65,7 +65,7 @@ func (receiver BackAuthority) String() string {
 	return fmt.Sprint("BackAuthority{Id:", receiver.Id, ",AuthorityName:", receiver.AuthorityName, ",AuthorityPath:", receiver.AuthorityPath, ",Method:", receiver.Method, ",State:", receiver.State, ",AuthorityVerification:", receiver.AuthorityVerification, ",CreateTime:", receiver.CreateTime, "}")
 }
 
-// BackMenu
+// BackMenu 后台菜单
 type BackMenu struct {
 	Id             int64  `json:"id"`                                      // 11 0 注释:id
 	BackMenuName   string `xorm:"back_menu_name"  json:"backMenuName"`     // 255 0 注释:菜单名称
@@ -81,7 +81,7 @@ 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, "}")
 }
 
-// BackRole
+// BackRole 后台角色
 type BackRole struct {
 	Id       int64  `json:"id"`                         // 11 0 注释:
 	RoleName string `xorm:"role_name"  json:"roleName"` // 255 0 注释:
@@ -91,7 +91,7 @@ func (receiver BackRole) String() string {
 	return fmt.Sprint("BackRole{Id:", receiver.Id, ",RoleName:", receiver.RoleName, "}")
 }
 
-// BackRoleAuthority
+// BackRoleAuthority 后台角色权限表
 type BackRoleAuthority struct {
 	Id          int64 `json:"id"`                               // 11 0 注释:
 	RoleId      int64 `xorm:"role_id"  json:"roleId"`           // 11 0 注释:角色id
@@ -102,7 +102,7 @@ func (receiver BackRoleAuthority) String() string {
 	return fmt.Sprint("BackRoleAuthority{Id:", receiver.Id, ",RoleId:", receiver.RoleId, ",AuthorityId:", receiver.AuthorityId, "}")
 }
 
-// BackRoleMenu
+// BackRoleMenu 后台角色菜单表
 type BackRoleMenu struct {
 	Id     int64 `json:"id"`                     // 11 0 注释:
 	RoleId int64 `xorm:"role_id"  json:"roleId"` // 11 0 注释:角色id
@@ -113,7 +113,43 @@ func (receiver BackRoleMenu) String() string {
 	return fmt.Sprint("BackRoleMenu{Id:", receiver.Id, ",RoleId:", receiver.RoleId, ",MenuId:", receiver.MenuId, "}")
 }
 
-// Goods
+// GenTable
+type GenTable struct {
+	Id           int64  `json:"id"`                                 // 11 0 注释:id
+	TableName    string `xorm:"table_name"  json:"tableName"`       // 255 0 注释:数据库名
+	TableComment string `xorm:"table_comment"  json:"tableComment"` // 255 0 注释:数据库注释
+	Name         string `xorm:"name"  json:"name"`                  // 255 0 注释:名字
+	RouterName   string `xorm:"router_name"  json:"routerName"`     // 255 0 注释:路由名
+	Remark       string `xorm:"remark"  json:"remark"`              // 255 0 注释:备注
+}
+
+func (receiver GenTable) String() string {
+	return fmt.Sprint("GenTable{Id:", receiver.Id, ",TableName:", receiver.TableName, ",TableComment:", receiver.TableComment, ",Name:", receiver.Name, ",RouterName:", receiver.RouterName, ",Remark:", receiver.Remark, "}")
+}
+
+// GenTableColumn
+type GenTableColumn struct {
+	Id            int64  `json:"id"`                                   // 11 0 注释:id
+	TableId       int64  `xorm:"table_id"  json:"tableId"`             // 11 0 注释:表格id
+	Sort          int64  `xorm:"sort"  json:"sort"`                    // 255 0 注释:排序
+	ColumnName    string `xorm:"column_name"  json:"columnName"`       // 255 0 注释:字段名
+	ColumnComment string `xorm:"column_comment"  json:"columnComment"` // 255 0 注释:字段注释
+	ColumnType    string `xorm:"column_type"  json:"columnType"`       // 255 0 注释:字段类型
+	GoType        string `xorm:"go_type"  json:"goType"`               // 255 0 注释:go类型
+	GoField       string `xorm:"go_field"  json:"goField"`             // 255 0 注释:go字段名
+	IsKey         string `xorm:"is_key"  json:"isKey"`                 // 1 0 注释:是否主键
+	IsIncrement   string `xorm:"is_increment"  json:"isIncrement"`     // 1 0 注释:是否自增
+	IsRequired    string `xorm:"is_required"  json:"isRequired"`       // 1 0 注释:是否未必填
+	QueryType     string `xorm:"query_type"  json:"queryType"`         // 1 0 注释:查询方式
+	VueShowType   string `xorm:"vue_show_type"  json:"vueShowType"`    // 255 0 注释:前端显示类型
+	DictType      string `xorm:"dict_type"  json:"dictType"`           // 255 0 注释:字典类型
+}
+
+func (receiver GenTableColumn) String() string {
+	return fmt.Sprint("GenTableColumn{Id:", receiver.Id, ",TableId:", receiver.TableId, ",Sort:", receiver.Sort, ",ColumnName:", receiver.ColumnName, ",ColumnComment:", receiver.ColumnComment, ",ColumnType:", receiver.ColumnType, ",GoType:", receiver.GoType, ",GoField:", receiver.GoField, ",IsKey:", receiver.IsKey, ",IsIncrement:", receiver.IsIncrement, ",IsRequired:", receiver.IsRequired, ",QueryType:", receiver.QueryType, ",VueShowType:", receiver.VueShowType, ",DictType:", receiver.DictType, "}")
+}
+
+// Goods 商品表
 type Goods struct {
 	Id             int64  `json:"id"`                                     // 11 0 注释:id
 	TypeId         int64  `xorm:"type_id"  json:"typeId"`                 // 11 0 注释:分类id
@@ -127,7 +163,7 @@ func (receiver Goods) String() string {
 	return fmt.Sprint("Goods{Id:", receiver.Id, ",TypeId:", receiver.TypeId, ",GoodsName:", receiver.GoodsName, ",IntroductionId:", receiver.IntroductionId, ",SalesVolume:", receiver.SalesVolume, ",TagIds:", receiver.TagIds, "}")
 }
 
-// GoodsCommodityArea
+// GoodsCommodityArea 商品属性
 type GoodsCommodityArea struct {
 	Id                   int64  `json:"id"`                                                  // 11 0 注释:id
 	GoodsId              int64  `xorm:"goods_id"  json:"goodsId"`                            // 11 0 注释:商品id
@@ -189,7 +225,7 @@ func (receiver GoodsIntroduction) String() string {
 	return fmt.Sprint("GoodsIntroduction{Id:", receiver.Id, ",GoodsArticleName:", receiver.GoodsArticleName, ",GoodsArticle:", receiver.GoodsArticle, ",CreateBy:", receiver.CreateBy, ",CreateTime:", receiver.CreateTime, ",UpdateBy:", receiver.UpdateBy, ",UpdateTime:", receiver.UpdateTime, "}")
 }
 
-// GoodsOrder
+// GoodsOrder 商品订单
 type GoodsOrder struct {
 	Id                 int64     `json:"id"`                                             // 11 0 注释:id
 	OrderName          string    `xorm:"order_name"  json:"orderName"`                   // 255 0 注释:订单名
@@ -208,7 +244,7 @@ func (receiver GoodsOrder) String() string {
 	return fmt.Sprint("GoodsOrder{Id:", receiver.Id, ",OrderName:", receiver.OrderName, ",SkuId:", receiver.SkuId, ",Count:", receiver.Count, ",Price:", receiver.Price, ",TotalPrice:", receiver.TotalPrice, ",ContactInformation:", receiver.ContactInformation, ",CouponUserId:", receiver.CouponUserId, ",State:", receiver.State, ",CreateBy:", receiver.CreateBy, ",CreateTime:", receiver.CreateTime, "}")
 }
 
-// GoodsSku
+// GoodsSku 商品规格
 type GoodsSku struct {
 	Id               int64     `json:"id"`                                         // 11 0 注释:
 	SkuImage         string    `xorm:"sku_image"  json:"skuImage"`                 // 255 0 注释:sku图片
@@ -226,7 +262,7 @@ func (receiver GoodsSku) String() string {
 	return fmt.Sprint("GoodsSku{Id:", receiver.Id, ",SkuImage:", receiver.SkuImage, ",SkuName:", receiver.SkuName, ",Price:", receiver.Price, ",HistoricalPrices:", receiver.HistoricalPrices, ",InventoryNumber:", receiver.InventoryNumber, ",CommodityAreaId:", receiver.CommodityAreaId, ",GoodsId:", receiver.GoodsId, ",CreateBy:", receiver.CreateBy, ",CreateTime:", receiver.CreateTime, "}")
 }
 
-// GoodsSkuCard
+// GoodsSkuCard 商品卡号
 type GoodsSkuCard struct {
 	Id         int64     `json:"id"`                             // 11 0 注释:id
 	CardName   string    `xorm:"card_name"  json:"cardName"`     // 255 0 注释:卡种名称
@@ -244,7 +280,7 @@ func (receiver GoodsSkuCard) String() string {
 	return fmt.Sprint("GoodsSkuCard{Id:", receiver.Id, ",CardName:", receiver.CardName, ",State:", receiver.State, ",Count:", receiver.Count, ",TotalCount:", receiver.TotalCount, ",CardKey:", receiver.CardKey, ",Use:", receiver.Use, ",UploadTime:", receiver.UploadTime, ",SkuId:", receiver.SkuId, ",Sort:", receiver.Sort, "}")
 }
 
-// GoodsTag
+// GoodsTag 商品标签
 type GoodsTag struct {
 	Id      int64  `json:"id"`                       // 11 0 注释:id
 	Name    string `xorm:"name"  json:"name"`        // 255 0 注释:名字
@@ -256,7 +292,7 @@ func (receiver GoodsTag) String() string {
 	return fmt.Sprint("GoodsTag{Id:", receiver.Id, ",Name:", receiver.Name, ",IconUrl:", receiver.IconUrl, ",Tag:", receiver.Tag, "}")
 }
 
-// GoodsTopic
+// GoodsTopic 商品主题
 type GoodsTopic struct {
 	Id             int64  `json:"id"`                                      // 11 0 注释:
 	TopicPageImage string `xorm:"topic_page_image"  json:"topicPageImage"` // 255 0 注释:主题首页图片
@@ -282,7 +318,7 @@ func (receiver GoodsType) String() string {
 	return fmt.Sprint("GoodsType{Id:", receiver.Id, ",Sort:", receiver.Sort, ",TypeImage:", receiver.TypeImage, ",TypeName:", receiver.TypeName, ",CreateTime:", receiver.CreateTime, "}")
 }
 
-// User
+// User 用户表
 type User struct {
 	Id            int64  `json:"id"`                                   // 11 0 注释:
 	Username      string `xorm:"username"  json:"username"`            // 255 0 注释:账号
@@ -302,7 +338,7 @@ func (receiver User) String() string {
 	return fmt.Sprint("User{Id:", receiver.Id, ",Username:", receiver.Username, ",Password:", receiver.Password, ",CreationTime:", receiver.CreationTime, ",LoginTime:", receiver.LoginTime, ",Status:", receiver.Status, ",RoleId:", receiver.RoleId, ",Phone:", receiver.Phone, ",Email:", receiver.Email, ",Name:", receiver.Name, ",Avatar:", receiver.Avatar, ",RecommendCode:", receiver.RecommendCode, "}")
 }
 
-// UserWallet
+// UserWallet 用户钱包
 type UserWallet struct {
 	Id              int64   `json:"id"`                                       // 11 0 注释:id
 	UserId          int64   `xorm:"user_id"  json:"userId"`                   // 11 0 注释:用户id

+ 1 - 1
main.go

@@ -18,7 +18,7 @@ func main() {
 func runGin() {
 	Router := gin.Default()
 	apiGroup := Router.Group(router.Prefix)
-	router.InitRouter(apiGroup, Router)
+	router.InitRouter(apiGroup)
 	router.InitAuthority(Router)
 	Router.Run(":8182")
 

+ 248 - 21
router/BasaeBackRouter.go

@@ -17,6 +17,8 @@ import (
 //BaseBackRoleRouter(group)
 //BaseBackRoleAuthorityRouter(group)
 //BaseBackRoleMenuRouter(group)
+//BaseGenTableRouter(group)
+//BaseGenTableColumnRouter(group)
 //BaseGoodsRouter(group)
 //BaseGoodsCommodityAreaRouter(group)
 //BaseGoodsCouponRouter(group)
@@ -111,6 +113,26 @@ func BaseBackRoleMenuRouter(group *gin.RouterGroup) {
 	PushRouter(BaseBackRoleMenuGroup, "DELETE", "/backRoleMenu", DeleteBaseBackRoleMenu)
 }
 
+func BaseGenTableRouter(group *gin.RouterGroup) {
+	BaseGenTableGroup := group.Group("/back/base")
+	PushRouter(BaseGenTableGroup, "GET", "/genTable", GetBaseGenTableById)
+	PushRouter(BaseGenTableGroup, "POST", "/genTable/list", GetBaseGenTableList)
+	PushRouter(BaseGenTableGroup, "POST", "/genTable/in", GetBaseGenTableListInId)
+	PushRouter(BaseGenTableGroup, "POST", "/genTable", SaveBaseGenTable)
+	PushRouter(BaseGenTableGroup, "PUT", "/genTable", UpdateBaseGenTable)
+	PushRouter(BaseGenTableGroup, "DELETE", "/genTable", DeleteBaseGenTable)
+}
+
+func BaseGenTableColumnRouter(group *gin.RouterGroup) {
+	BaseGenTableColumnGroup := group.Group("/back/base")
+	PushRouter(BaseGenTableColumnGroup, "GET", "/genTableColumn", GetBaseGenTableColumnById)
+	PushRouter(BaseGenTableColumnGroup, "POST", "/genTableColumn/list", GetBaseGenTableColumnList)
+	PushRouter(BaseGenTableColumnGroup, "POST", "/genTableColumn/in", GetBaseGenTableColumnListInId)
+	PushRouter(BaseGenTableColumnGroup, "POST", "/genTableColumn", SaveBaseGenTableColumn)
+	PushRouter(BaseGenTableColumnGroup, "PUT", "/genTableColumn", UpdateBaseGenTableColumn)
+	PushRouter(BaseGenTableColumnGroup, "DELETE", "/genTableColumn", DeleteBaseGenTableColumn)
+}
+
 func BaseGoodsRouter(group *gin.RouterGroup) {
 	BaseGoodsGroup := group.Group("/back/base")
 	PushRouter(BaseGoodsGroup, "GET", "/goods", GetBaseGoodsById)
@@ -256,7 +278,10 @@ func GetBaseArticleList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	article := domain.Article{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &article)
+	err := mapstructure.Decode(param, &article)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetArticleList(article, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -324,7 +349,10 @@ func GetBaseArticleTagList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	articleTag := domain.ArticleTag{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &articleTag)
+	err := mapstructure.Decode(param, &articleTag)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetArticleTagList(articleTag, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -392,7 +420,10 @@ func GetBaseArticleTopicList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	articleTopic := domain.ArticleTopic{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &articleTopic)
+	err := mapstructure.Decode(param, &articleTopic)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetArticleTopicList(articleTopic, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -460,7 +491,10 @@ func GetBaseBackAuthorityList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	backAuthority := domain.BackAuthority{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &backAuthority)
+	err := mapstructure.Decode(param, &backAuthority)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetBackAuthorityList(backAuthority, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -528,7 +562,10 @@ func GetBaseBackMenuList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	backMenu := domain.BackMenu{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &backMenu)
+	err := mapstructure.Decode(param, &backMenu)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetBackMenuList(backMenu, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -596,7 +633,10 @@ func GetBaseBackRoleList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	backRole := domain.BackRole{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &backRole)
+	err := mapstructure.Decode(param, &backRole)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetBackRoleList(backRole, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -664,7 +704,10 @@ func GetBaseBackRoleAuthorityList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	backRoleAuthority := domain.BackRoleAuthority{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &backRoleAuthority)
+	err := mapstructure.Decode(param, &backRoleAuthority)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetBackRoleAuthorityList(backRoleAuthority, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -732,7 +775,10 @@ func GetBaseBackRoleMenuList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	backRoleMenu := domain.BackRoleMenu{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &backRoleMenu)
+	err := mapstructure.Decode(param, &backRoleMenu)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetBackRoleMenuList(backRoleMenu, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -785,6 +831,148 @@ func DeleteBaseBackRoleMenu(c *gin.Context) {
 	c.JSON(200, CreateResult())
 }
 
+func GetBaseGenTableById(c *gin.Context) {
+	id := c.Param("id")
+	genTable, err := manage.GetGenTableById(cast.ToInt64(id))
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "用户查询不存在"))
+	}
+	c.JSON(200, CreateResultData(genTable))
+}
+
+func GetBaseGenTableList(c *gin.Context) {
+	data := share.GetJsonAnyParam(c)
+	param, _ := data("param")
+	pageNum, _ := data("pageNum")
+	pageSize, _ := data("pageSize")
+	genTable := domain.GenTable{}
+	err := mapstructure.Decode(param, &genTable)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
+	list, err := manage.GetGenTableList(genTable, cast.ToInt(pageNum), cast.ToInt(pageSize))
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "查询错误"))
+	}
+	c.JSON(200, CreateResultData(list))
+}
+
+func GetBaseGenTableListInId(c *gin.Context) {
+	data := share.GetJsonAnyParam(c)
+	idsString, _ := data("ids")
+	var ids []int64
+	err := json.Unmarshal([]byte(cast.ToString(idsString)), &ids)
+	list, err := manage.GetGenTableListInId(ids)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "查询错误"))
+	}
+	c.JSON(200, CreateResultData(list))
+}
+
+func SaveBaseGenTable(c *gin.Context) {
+	data := share.GetJsonAnyParam(c)
+	genTableParam, _ := data("genTable")
+	genTable := domain.GenTable{}
+	err := json.Unmarshal([]byte(cast.ToString(genTableParam)), &genTable)
+	saveGenTable, err := manage.SaveGenTable(&genTable)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "保存错误"))
+	}
+	c.JSON(200, CreateResultData(saveGenTable))
+}
+
+func UpdateBaseGenTable(c *gin.Context) {
+	data := share.GetJsonAnyParam(c)
+	genTable, _ := data("genTable")
+	id, _ := data("id")
+
+	setGenTable, b, err := manage.SetGenTable(cast.ToStringMap(genTable), cast.ToInt64(id))
+	if err != nil || !b {
+		c.JSON(200, CreateResultError(500, "修改错误"))
+	}
+	c.JSON(200, CreateResultData(setGenTable))
+}
+
+func DeleteBaseGenTable(c *gin.Context) {
+	id := c.Param("id")
+	res := manage.DeleteGenTable(cast.ToInt64(id))
+	if !res {
+		c.JSON(200, CreateResultError(500, "删除错误"))
+	}
+	c.JSON(200, CreateResult())
+}
+
+func GetBaseGenTableColumnById(c *gin.Context) {
+	id := c.Param("id")
+	genTableColumn, err := manage.GetGenTableColumnById(cast.ToInt64(id))
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "用户查询不存在"))
+	}
+	c.JSON(200, CreateResultData(genTableColumn))
+}
+
+func GetBaseGenTableColumnList(c *gin.Context) {
+	data := share.GetJsonAnyParam(c)
+	param, _ := data("param")
+	pageNum, _ := data("pageNum")
+	pageSize, _ := data("pageSize")
+	genTableColumn := domain.GenTableColumn{}
+	err := mapstructure.Decode(param, &genTableColumn)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
+	list, err := manage.GetGenTableColumnList(genTableColumn, cast.ToInt(pageNum), cast.ToInt(pageSize))
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "查询错误"))
+	}
+	c.JSON(200, CreateResultData(list))
+}
+
+func GetBaseGenTableColumnListInId(c *gin.Context) {
+	data := share.GetJsonAnyParam(c)
+	idsString, _ := data("ids")
+	var ids []int64
+	err := json.Unmarshal([]byte(cast.ToString(idsString)), &ids)
+	list, err := manage.GetGenTableColumnListInId(ids)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "查询错误"))
+	}
+	c.JSON(200, CreateResultData(list))
+}
+
+func SaveBaseGenTableColumn(c *gin.Context) {
+	data := share.GetJsonAnyParam(c)
+	genTableColumnParam, _ := data("genTableColumn")
+	genTableColumn := domain.GenTableColumn{}
+	err := json.Unmarshal([]byte(cast.ToString(genTableColumnParam)), &genTableColumn)
+	saveGenTableColumn, err := manage.SaveGenTableColumn(&genTableColumn)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "保存错误"))
+	}
+	c.JSON(200, CreateResultData(saveGenTableColumn))
+}
+
+func UpdateBaseGenTableColumn(c *gin.Context) {
+	data := share.GetJsonAnyParam(c)
+	genTableColumn, _ := data("genTableColumn")
+	id, _ := data("id")
+
+	setGenTableColumn, b, err := manage.SetGenTableColumn(cast.ToStringMap(genTableColumn), cast.ToInt64(id))
+	if err != nil || !b {
+		c.JSON(200, CreateResultError(500, "修改错误"))
+	}
+	c.JSON(200, CreateResultData(setGenTableColumn))
+}
+
+func DeleteBaseGenTableColumn(c *gin.Context) {
+	id := c.Param("id")
+	res := manage.DeleteGenTableColumn(cast.ToInt64(id))
+	if !res {
+		c.JSON(200, CreateResultError(500, "删除错误"))
+	}
+	c.JSON(200, CreateResult())
+}
+
 func GetBaseGoodsById(c *gin.Context) {
 	id := c.Param("id")
 	goods, err := manage.GetGoodsById(cast.ToInt64(id))
@@ -800,7 +988,10 @@ func GetBaseGoodsList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goods := domain.Goods{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goods)
+	err := mapstructure.Decode(param, &goods)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsList(goods, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -868,7 +1059,10 @@ func GetBaseGoodsCommodityAreaList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsCommodityArea := domain.GoodsCommodityArea{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsCommodityArea)
+	err := mapstructure.Decode(param, &goodsCommodityArea)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsCommodityAreaList(goodsCommodityArea, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -936,7 +1130,10 @@ func GetBaseGoodsCouponList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsCoupon := domain.GoodsCoupon{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsCoupon)
+	err := mapstructure.Decode(param, &goodsCoupon)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsCouponList(goodsCoupon, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1004,7 +1201,10 @@ func GetBaseGoodsCouponUserList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsCouponUser := domain.GoodsCouponUser{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsCouponUser)
+	err := mapstructure.Decode(param, &goodsCouponUser)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsCouponUserList(goodsCouponUser, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1072,7 +1272,10 @@ func GetBaseGoodsIntroductionList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsIntroduction := domain.GoodsIntroduction{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsIntroduction)
+	err := mapstructure.Decode(param, &goodsIntroduction)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsIntroductionList(goodsIntroduction, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1140,7 +1343,10 @@ func GetBaseGoodsOrderList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsOrder := domain.GoodsOrder{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsOrder)
+	err := mapstructure.Decode(param, &goodsOrder)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsOrderList(goodsOrder, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1208,7 +1414,10 @@ func GetBaseGoodsSkuList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsSku := domain.GoodsSku{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsSku)
+	err := mapstructure.Decode(param, &goodsSku)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsSkuList(goodsSku, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1276,7 +1485,10 @@ func GetBaseGoodsSkuCardList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsSkuCard := domain.GoodsSkuCard{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsSkuCard)
+	err := mapstructure.Decode(param, &goodsSkuCard)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsSkuCardList(goodsSkuCard, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1344,7 +1556,10 @@ func GetBaseGoodsTagList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsTag := domain.GoodsTag{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsTag)
+	err := mapstructure.Decode(param, &goodsTag)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsTagList(goodsTag, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1412,7 +1627,10 @@ func GetBaseGoodsTopicList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsTopic := domain.GoodsTopic{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsTopic)
+	err := mapstructure.Decode(param, &goodsTopic)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsTopicList(goodsTopic, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1480,7 +1698,10 @@ func GetBaseGoodsTypeList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	goodsType := domain.GoodsType{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &goodsType)
+	err := mapstructure.Decode(param, &goodsType)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetGoodsTypeList(goodsType, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1548,7 +1769,10 @@ func GetBaseUserList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	user := domain.User{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &user)
+	err := mapstructure.Decode(param, &user)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetUserList(user, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))
@@ -1616,7 +1840,10 @@ func GetBaseUserWalletList(c *gin.Context) {
 	pageNum, _ := data("pageNum")
 	pageSize, _ := data("pageSize")
 	userWallet := domain.UserWallet{}
-	err := json.Unmarshal([]byte(cast.ToString(param)), &userWallet)
+	err := mapstructure.Decode(param, &userWallet)
+	if err != nil {
+		c.JSON(200, CreateResultError(500, "json转换错误"))
+	}
 	list, err := manage.GetUserWalletList(userWallet, cast.ToInt(pageNum), cast.ToInt(pageSize))
 	if err != nil {
 		c.JSON(200, CreateResultError(500, "查询错误"))

+ 1 - 0
router/DetailRouter.go

@@ -16,6 +16,7 @@ func DetailRouter(engine *gin.RouterGroup) {
 	PushRouter(user, "GET", "/search", GetSearchByKey)
 	//获取文章详情
 	//user.GET("/:id", GetDetailData)
+	user.Use(LogInterceptor())
 	PushRouter(user, "GET", "/:id", GetDetailData)
 }
 

+ 8 - 1
router/Router.go

@@ -14,7 +14,7 @@ var PathIRouterMap = make(map[string]gin.IRoutes)
 
 const Prefix = "/api"
 
-func InitRouter(apiGroup *gin.RouterGroup, Router *gin.Engine) {
+func InitRouter(apiGroup *gin.RouterGroup) {
 	//用户,包含用户后台
 	UserRouth(apiGroup)
 	//文章详情页
@@ -33,6 +33,7 @@ func InitRouter(apiGroup *gin.RouterGroup, Router *gin.Engine) {
 	BaseBackRouter(apiGroup)
 }
 
+// PushRouter 根据参数,添加到对应的路由组中,并保存路由信息
 func PushRouter(api *gin.RouterGroup, method, path string, handlerFunc gin.HandlerFunc) {
 	var iRouter gin.IRoutes
 	switch method {
@@ -65,14 +66,18 @@ func PushRouter(api *gin.RouterGroup, method, path string, handlerFunc gin.Handl
 	PathIRouterMap[key] = iRouter
 }
 
+// InitAuthority 初始化,将数据库中的路径,对应到路由中
 func InitAuthority(Router *gin.Engine) {
 	//查询数据库有的权限
 	List := dao.GetListAuthorityAll()
 	pathMap := make(map[string]domain.BackAuthority)
+	//添加到map中,方便后面调用
 	for i := range List {
 		pathMap[List[i].AuthorityPath] = List[i]
 	}
+	//获取全部路由
 	routes := Router.Routes()
+	//新写的路由代码,自动添加
 	var insertRouter = make([]*domain.BackAuthority, 0)
 	for i := range routes {
 		method := Router.Routes()[i].Method
@@ -89,6 +94,7 @@ func InitAuthority(Router *gin.Engine) {
 				CreateTime:            time.Now()})
 		}
 	}
+	//添加接口数据到数据库
 	dao.AddAllListAuthorityAll(insertRouter)
 	for i := range insertRouter {
 		pathMap[insertRouter[i].AuthorityPath] = *insertRouter[i]
@@ -103,6 +109,7 @@ func InitAuthority(Router *gin.Engine) {
 func AddUseInterceptor(routes gin.IRoutes, AuthorityVerification string) {
 	split := strings.Split(AuthorityVerification, ",")
 	for i := range split {
+		//根据名称添加不同的拦截器
 		h := Interceptor(split[i])
 		routes.Use(h)
 	}