package examtestpage import ( "fmt" "github.com/flipped-aurora/gin-vue-admin/server/commonus" "github.com/flipped-aurora/gin-vue-admin/server/global" "github.com/flipped-aurora/gin-vue-admin/server/model/common/response" "github.com/flipped-aurora/gin-vue-admin/server/model/testpage" "github.com/flipped-aurora/gin-vue-admin/server/model/wechat" "github.com/gin-gonic/gin" ) //集团分厂管理模块 type GroupHandleApi struct{} //集团栏目 type GroupMap struct { Id int64 `json:"id" gorm:"column:g_id;type:bigint(20);;primaryKey;unique;not null;autoIncrement;index"` Name string `json:"name" gorm:"column:g_name;type:varchar(255);not null;comment:组织名称"` //'组织名称', Time int64 `json:"time" gorm:"column:g_time;type:bigint(20) unsigned;default:0;not null;comment:编辑时间"` //'编辑时间', Parentid int64 `json:"parentid" gorm:"column:g_parentid;type:bigint(20) unsigned;default:0;not null;comment:父级栏目"` Sate int8 `json:"state" gorm:"column:g_sate;type:tinyint(1) unsigned;default:1;not null;comment:状态"` //'状态', } type TableData struct { ID int64 `json:"id"` Name string `json:"name"` Address bool `json:"address: "` WxId string `json:"wxId"` JdId string `json:"jdId"` Attributes int8 `json:"attributes"` Sort int `json:"sort"` Date string `json:"date"` Children interface{} `json:"children"` } //集团列表 func (g *GroupHandleApi) GroupList(c *gin.Context) { var groupStruct []wechat.GroupForm //集团表结构 var groupMap []GroupMap //要获取的集团架构字段 err := global.GVA_DB_WatchDate.Model(&groupStruct).Where("g_parentid = ?", 1).Find(&groupMap) //获取集团信息 if err != nil { // return } var departList []testpage.BranchFactoryHasMany // err = global.GVA_DB_Master.Preload("WorkshopSectionStruct").Where("bf_group = ?", 3).Find(&departList) // groupAry := map[int]interface{}{} var groupMapStruct []TableData for i, v := range groupMap { fmt.Printf("%v\n", v.Id) err = global.GVA_DB_Master.Preload("WorkshopSectionStruct").Where("bf_group = ?", v.Id).Find(&departList) var groupTypeStruct TableData groupTypeStruct.ID = v.Id groupTypeStruct.Name = v.Name groupTypeStruct.Address = true groupTypeStruct.WxId = "" groupTypeStruct.JdId = "" groupTypeStruct.Attributes = 1 groupTypeStruct.Sort = i + 1 groupTypeStruct.Date = commonus.TimeStampToDate(v.Time, 6) groupTypeStruct.Children = openGroupMap(departList) // groupAry[i] = openGroupMap(departList) groupMapStruct = append(groupMapStruct, groupTypeStruct) // common.TimeStampToDate(departList["Time"]) } // fmt.Printf("%v\n", groupMap) // response.Ok(c) response.Result(200, groupMapStruct, "获取成功", c) } // //展开集团列表 func openGroupMap(data []testpage.BranchFactoryHasMany) []TableData { // openMapData := map[int]interface{}{} var mapStruct []TableData for i, v := range data { var kk TableData kk.ID = v.Id kk.Name = v.Name kk.Address = true if v.Set != 1 { kk.Address = false } kk.WxId = "" kk.JdId = "" kk.Attributes = v.Attribute kk.Sort = i + 1 kk.Date = commonus.TimeStampToDate(v.Time, 6) var sunGroup []TableData for ii, vv := range v.WorkshopSectionStruct { var kk_i TableData kk_i.ID = vv.Id kk_i.Name = vv.Name kk_i.Address = true if vv.Set != 1 { kk_i.Address = false } kk_i.WxId = "" kk_i.JdId = "" kk_i.Attributes = 0 kk_i.Sort = ii + 1 kk_i.Date = commonus.TimeStampToDate(vv.Time, 6) // kk_i.Children = []map[string]interface{}{} sunGroup = append(sunGroup, kk_i) } kk.Children = sunGroup mapStruct = append(mapStruct, kk) } return mapStruct } //获取集团信息 func (g *GroupHandleApi) GetGroupInfo(c *gin.Context) {}