houyaf 3 tahun lalu
induk
melakukan
1cb6c5cf5b

+ 14 - 0
repositories/biz_repo.go

@@ -70,6 +70,20 @@ func (d *BizRepo) GetList(m map[string]interface{}) ([]viewmodels.BizInfo, error
     return datalist, nil
 }
 
+func (d *BizRepo) GetAll() ([]viewmodels.BizInfo, error) {
+    sqlSelect  := ` SELECT A.*               `
+    sqlFrom    := ` FROM  biz   AS A    `
+    sqlWhere   := ` WHERE A.deleted_flag = 0 `
+    sqlOrderBy := " ORDER BY A.biz_id ASC "
+    datalist   := make([]viewmodels.BizInfo, 0)
+    err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere + sqlOrderBy).Find(&datalist)
+    if err != nil {
+        return nil, err
+    }
+    return datalist, nil
+}
+
+
 func (d *BizRepo) GetById(bizId int64) (*viewmodels.BizInfo, error) {
     data := &viewmodels.BizInfo{}
     ok, err := d.engine.Where("biz_id = ?", bizId).Get(data)

+ 13 - 0
repositories/model_repo.go

@@ -70,6 +70,19 @@ func (d *ModelRepo) GetList(m map[string]interface{}) ([]viewmodels.ModelInfo, e
 	return datalist, nil
 }
 
+func (d *ModelRepo) GetAll() ([]viewmodels.ModelInfo, error) {
+	sqlSelect  := ` SELECT A.*               `
+	sqlFrom    := ` FROM  ds_model   AS A    `
+	sqlWhere   := ` WHERE A.deleted_flag = 0 `
+	sqlOrderBy := " ORDER BY model_id ASC "
+	datalist   := make([]viewmodels.ModelInfo, 0)
+	err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere + sqlOrderBy).Find(&datalist)
+	if err != nil {
+		return nil, err
+	}
+	return datalist, nil
+}
+
 func (d *ModelRepo) GetById(modelId int64) (*viewmodels.ModelInfo, error) {
 	data := &viewmodels.ModelInfo{}
 	ok, err := d.engine.Where("model_id = ?", modelId).Get(data)

+ 44 - 8
service/biz_service.go

@@ -9,6 +9,7 @@ import (
 
 type BizService interface {
     GetList(m map[string]interface{}) ([]viewmodels.BizInfo, error)
+    GetTreeData() ([]viewmodels.BizDataInfo, error)
     GetPage(m map[string]interface{}) (*viewmodels.PageResult, error)
     GetById(bizId int64) (*viewmodels.BizInfo, error)
     Create(d *datamodels.Biz) error
@@ -17,36 +18,71 @@ type BizService interface {
 }
 
 type bizService struct {
-    repo *repositories.BizRepo
+    bizRepo *repositories.BizRepo
+    bizObjectRepo *repositories.BizObjectRepo
 }
 
 func NewBizService() BizService {
     return &bizService{
-        repo: repositories.NewBizRepo(datasource.InstanceMaster()),
+        bizRepo: repositories.NewBizRepo(datasource.InstanceMaster()),
+        bizObjectRepo: repositories.NewBizObjectRepo(datasource.InstanceMaster()),
     }
 }
 
+
+func (s *bizService) GetTreeData() ([]viewmodels.BizDataInfo, error) {
+    bizArr, err1 := s.bizRepo.GetAll()
+    if err1 != nil {
+        return nil, err1
+    }
+    
+    bizObjectArr, err2 := s.bizObjectRepo.GetAll()
+    if err2 != nil {
+        return nil, err2
+    }
+
+    bizDataArr := make([]viewmodels.BizDataInfo, 0)
+    for _, biz := range bizArr {
+        
+        bizData := viewmodels.BizDataInfo{}
+        bizId := biz.BizId
+        objects := make([]viewmodels.BizObjectInfo, 0)
+        for _, object := range bizObjectArr {
+            if object.BizId == bizId {
+                objects = append(objects, object)
+            }
+        }
+        bizData.BizId    = bizId
+        bizData.BizTitle = biz.BizTitle
+        bizData.BizDesc  = biz.BizDesc
+        bizData.Objects  = objects
+        bizDataArr = append(bizDataArr, bizData)
+    }
+    
+    return bizDataArr, nil
+}
+
 func (s *bizService) GetList(m map[string]interface{}) ([]viewmodels.BizInfo, error) {
-    return s.repo.GetList(m)
+    return s.bizRepo.GetList(m)
 }
 
 func (s *bizService) GetPage(m map[string]interface{}) (*viewmodels.PageResult, error) {
-    return s.repo.GetPage(m)
+    return s.bizRepo.GetPage(m)
 }
 
 func (s *bizService) GetById(bizId int64) (*viewmodels.BizInfo, error) {
-    return s.repo.GetById(bizId)
+    return s.bizRepo.GetById(bizId)
 }
 
 func (s *bizService) Create(m *datamodels.Biz) error {
     m.BizId = NewID()
-    return s.repo.Create(m)
+    return s.bizRepo.Create(m)
 }
 
 func (s *bizService) Update(m *datamodels.Biz) error {
-    return s.repo.Update(m)
+    return s.bizRepo.Update(m)
 }
 
 func (s *bizService) Delete(m map[string]interface{}) error {
-    return s.repo.Delete(m)
+    return s.bizRepo.Delete(m)
 }

+ 43 - 8
service/model_service.go

@@ -9,6 +9,7 @@ import (
 
 type ModelService interface {
 	GetList(m map[string]interface{}) ([]viewmodels.ModelInfo, error)
+	GetTreeData() ([]viewmodels.ModelDataInfo, error)
 	GetPage(m map[string]interface{}) (*viewmodels.PageResult, error)
 	GetById(modelId int64) (*viewmodels.ModelInfo, error)
 	Create(d *datamodels.Model) error
@@ -17,36 +18,70 @@ type ModelService interface {
 }
 
 type modelService struct {
-	repo *repositories.ModelRepo
+	modelRepo *repositories.ModelRepo
+	objectRepo *repositories.ModelObjectRepo
 }
 
 func NewModelService() ModelService {
 	return &modelService{
-		repo: repositories.NewModelRepo(datasource.InstanceMaster()),
+		modelRepo: repositories.NewModelRepo(datasource.InstanceMaster()),
+		objectRepo: repositories.NewModelObjectRepo(datasource.InstanceMaster()),
 	}
 }
 
 func (s *modelService) GetList(m map[string]interface{}) ([]viewmodels.ModelInfo, error) {
-	return s.repo.GetList(m)
+	return s.modelRepo.GetList(m)
+}
+
+func (s *modelService) GetTreeData() ([]viewmodels.ModelDataInfo, error) {
+	modelArr, err1 := s.modelRepo.GetAll()
+	if err1 != nil {
+		return nil, err1
+	}
+	
+	objectArr, err2 := s.objectRepo.GetAll()
+	if err2 != nil {
+		return nil, err2
+	}
+	
+	modelDataArr := make([]viewmodels.ModelDataInfo, 0)
+	for _, model := range modelArr {
+		
+		modelData := viewmodels.ModelDataInfo{}
+		modelId := model.ModelId
+		objects := make([]viewmodels.ModelObjectInfo, 0)
+		for _, object := range objectArr {
+			if object.ModelId == modelId {
+				objects = append(objects, object)
+			}
+		}
+		modelData.ModelId    = modelId
+		modelData.ModelTitle = model.ModelTitle
+		modelData.ModelDesc  = model.ModelDesc
+		modelData.Objects  = objects
+		modelDataArr = append(modelDataArr, modelData)
+	}
+	
+	return modelDataArr, nil
 }
 
 func (s *modelService) GetPage(m map[string]interface{}) (*viewmodels.PageResult, error) {
-	return s.repo.GetPage(m)
+	return s.modelRepo.GetPage(m)
 }
 
 func (s *modelService) GetById(modelId int64) (*viewmodels.ModelInfo, error) {
-	return s.repo.GetById(modelId)
+	return s.modelRepo.GetById(modelId)
 }
 
 func (s *modelService) Create(m *datamodels.Model) error {
 	m.ModelId = NewID()
-	return s.repo.Create(m)
+	return s.modelRepo.Create(m)
 }
 
 func (s *modelService) Update(m *datamodels.Model) error {
-	return s.repo.Update(m)
+	return s.modelRepo.Update(m)
 }
 
 func (s *modelService) Delete(m map[string]interface{}) error {
-	return s.repo.Delete(m)
+	return s.modelRepo.Delete(m)
 }

+ 1 - 1
viewmodels/api_info.go

@@ -12,8 +12,8 @@ type ApiInfo struct {
     ApiParams       string    `json:"apiParams"     xorm:"'api_params'      varchar(127)   comment('Param')        "`
     Status          int64     `json:"status"        xorm:"'status'          bigint         comment('Status')       "`
     ApiDesc         string    `json:"apiDesc"       xorm:"'api_desc'        varchar(50)    comment('描述')          "`
+    BizId           int64     `json:"bizId"         xorm:"'biz_id'          bigint         comment('Biz Id')       "`
     ObjectType      int64     `json:"objectType"    xorm:"'object_type'     bigint         comment('Object Type')  "`
-    ObjectGroupId   int64     `json:"objectGroupId" xorm:"'object_group_id' bigint         comment('Object GroupId')"`
     ObjectId        int64     `json:"objectId"      xorm:"'object_id'       bigint         comment('Object Id')    "`
     ObjectCode      string    `json:"objectCode"    xorm:"'object_code'     varchar(127)   comment('Object Code')  "`
     OamId           int64     `json:"oamId"         xorm:"'oam_id'          bigint         comment('Oam Id')       "`

+ 12 - 0
viewmodels/biz_data_info.go

@@ -0,0 +1,12 @@
+package viewmodels
+
+type BizDataInfo struct {
+    BizId       int64     `json:"bizId"           xorm:"'biz_id'        bigint     pk comment('Biz ID')        "`
+    BizTitle    string    `json:"bizTitle"        xorm:"'biz_title'     varchar(50)   comment('Biz Title')     "`
+    BizDesc     string    `json:"bizDesc"         xorm:"'biz_desc'      varchar(50)   comment('Biz Desc')      "`
+    Objects     []BizObjectInfo `json:"objects"`
+}
+
+func (t *BizDataInfo) TableName() string {
+    return "biz"
+}

+ 12 - 0
viewmodels/model_data_info.go

@@ -0,0 +1,12 @@
+package viewmodels
+
+type ModelDataInfo struct {
+    ModelId    int64  `json:"modelId"         xorm:"'model_id'        bigint     pk comment('主键ID')     "`
+    ModelTitle string `json:"modelTitle"      xorm:"'model_title'     varchar(50)   comment('模型名称')    "`
+    ModelDesc  string `json:"modelDesc"       xorm:"'model_desc'      varchar(50)   comment('描述')       "`
+    Objects       []ModelObjectInfo `json:"objects"`
+}
+
+func (t *ModelDataInfo) TableName() string {
+    return "ds_model"
+}

+ 0 - 13
web/controllers/api_gateway_controller.go

@@ -1,7 +1,6 @@
 package controllers
 
 import (
-    "fmt"
     "github.com/kataras/iris/v12/mvc"
     "xps/service"
 )
@@ -24,10 +23,6 @@ func (c *ApiGatewayController) BeforeActivation(b mvc.BeforeActivation) {
 func (c *ApiGatewayController) Get(apiCode string)*JsonResult {
     m := c.buildParams()
     data, err := c.Service.Get(apiCode, m)
-    
-    m2, _ := c.GetJsonData()
-    fmt.Sprintf("%v", m2)
-    
     if err != nil {
         return ResultErr(err.Error(), nil)
     } else {
@@ -38,10 +33,6 @@ func (c *ApiGatewayController) Get(apiCode string)*JsonResult {
 func (c *ApiGatewayController) GetPage(apiCode string)*JsonResult {
     m := c.buildParams()
     data, err := c.Service.GetPage(apiCode, m)
-    
-    m2, _ := c.GetJsonData()
-    fmt.Sprintf("%v", m2)
-    
     if err != nil {
         return ResultErr(err.Error(), nil)
     } else {
@@ -52,10 +43,6 @@ func (c *ApiGatewayController) GetPage(apiCode string)*JsonResult {
 func (c *ApiGatewayController) GetList(apiCode string)*JsonResult {
     m := c.buildParams()
     data, err := c.Service.GetList(apiCode, m)
-    
-    m2, _ := c.GetJsonData()
-    fmt.Sprintf("%v", m2)
-    
     if err != nil {
         return ResultErr(err.Error(), nil)
     } else {

+ 16 - 6
web/controllers/biz_controller.go

@@ -12,12 +12,13 @@ type BizController struct {
 }
 
 func (c *BizController) BeforeActivation(b mvc.BeforeActivation) {
-    b.Handle("GET",         "/",                "GetList"   )
-    b.Handle("GET",         "/page",            "GetPage"   )
-    b.Handle("GET",         "/{modelId:int64}", "GetById"   )
-    b.Handle("POST",        "/add",             "Create"    )
-    b.Handle("PUT",         "/update",          "Update"    )
-    b.Handle("DELETE",      "/{modelId:int64}", "DeleteByID")
+    b.Handle("GET",         "/",                    "GetList"    )
+    b.Handle("GET",         "/data",                "GetTreeData")
+    b.Handle("GET",         "/page",                "GetPage"    )
+    b.Handle("GET",         "/{modelId:int64}",     "GetById"    )
+    b.Handle("POST",        "/add",                 "Create"     )
+    b.Handle("PUT",         "/update",              "Update"     )
+    b.Handle("DELETE",      "/{modelId:int64}",     "DeleteByID" )
 }
 
 func (c *BizController) GetList() *JsonResult {
@@ -30,6 +31,15 @@ func (c *BizController) GetList() *JsonResult {
     }
 }
 
+func (c *BizController) GetTreeData() *JsonResult{
+    data, err := c.Service.GetTreeData()
+    if err != nil {
+        return ResultErr(err.Error(), nil)
+    } else {
+        return ResultOk("获取成功", data)
+    }
+}
+
 func (c *BizController) GetPage() *JsonResult {
     params    := c.buildParams()
     data, err := c.Service.GetPage(params)

+ 16 - 8
web/controllers/model_controller.go

@@ -12,12 +12,13 @@ type ModelController struct {
 }
 
 func (c *ModelController) BeforeActivation(b mvc.BeforeActivation) {
-	b.Handle("GET",         "/",                "GetList"   )
-	b.Handle("GET",         "/page",            "GetPage"   )
-	b.Handle("GET",         "/{modelId:int64}", "GetById"   )
-	b.Handle("POST",        "/add",             "Create"    )
-	b.Handle("PUT",         "/update",          "Update"    )
-	b.Handle("DELETE",      "/{modelId:int64}", "DeleteByID")
+	b.Handle("GET",         "/",                    "GetList"       )
+	b.Handle("GET",         "/data",                "GetTreeData"   )
+	b.Handle("GET",         "/page",                "GetPage"       )
+	b.Handle("GET",         "/{modelId:int64}",     "GetById"       )
+	b.Handle("POST",        "/add",                 "Create"        )
+	b.Handle("PUT",         "/update",              "Update"        )
+	b.Handle("DELETE",      "/{modelId:int64}",     "DeleteByID"    )
 }
 
 func (c *ModelController) GetList() *JsonResult {
@@ -30,6 +31,15 @@ func (c *ModelController) GetList() *JsonResult {
 	}
 }
 
+func (c *ModelController) GetTreeData() *JsonResult{
+	data, err := c.Service.GetTreeData()
+	if err != nil {
+		return ResultErr(err.Error(), nil)
+	} else {
+		return ResultOk("获取成功", data)
+	}
+}
+
 func (c *ModelController) GetPage() *JsonResult {
 	params    := c.buildParams()
 	data, err := c.Service.GetPage(params)
@@ -41,7 +51,6 @@ func (c *ModelController) GetPage() *JsonResult {
 }
 
 func (c *ModelController) GetById(modelId int64) *JsonResult {
-	
 	data, err := c.Service.GetById(modelId)
 	if err != nil {
 		return ResultErr(err.Error(), nil)
@@ -58,7 +67,6 @@ func (c *ModelController) Create() *JsonResult {
 	if err := c.Ctx.ReadJSON(&mod); err != nil {
 		return ResultErr("读取数据失败", nil)
 	}
-
 	
 	if err := c.Service.Create(&mod); err != nil {
 		return ResultErr(err.Error(), nil)