houyaf 3 سال پیش
والد
کامیت
1de1a41bf5

+ 28 - 7
repositories/model_object_oam_repo.go

@@ -36,14 +36,35 @@ func (d *ModelObjectOAMRepo) GetList(m map[string]interface{}) ([]viewmodels.Mod
     }
 }
 
+
+func (d *ModelObjectOAMRepo) GetListById(modelId, objectId int64) ([]viewmodels.ModelObjectOAMInfo, error) {
+    sqlSelect  := ` SELECT A.*                 `
+    sqlFrom    := ` FROM  ds_object_oam  AS A  `
+    sqlWhere   := ` WHERE A.deleted_flag = 0   `
+    sqlWhere   += fmt.Sprintf(" AND A.model_id  = %d", modelId)
+    sqlWhere   += fmt.Sprintf(" AND A.object_id = %d", objectId)
+    sqlOrderBy := " ORDER BY A.oam_id ASC "
+    
+    datalist   := make([]viewmodels.ModelObjectOAMInfo, 0)
+    err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere + sqlOrderBy).Find(&datalist)
+    if err != nil {
+        return nil, err
+    } else {
+        return datalist, nil
+    }
+}
+
 func (d *ModelObjectOAMRepo) GetById(modelId, objectId, oamId int64) (*viewmodels.ModelObjectOAMInfo, error) {
-    data    := &viewmodels.ModelObjectOAMInfo{}
-    ok, err := d.engine.
-        Where("model_id = ?", modelId).
-        Where("object_id = ?", objectId).
-        Where("oam_id = ?", oamId).
-        Get(data)
-    if !ok && err == nil {
+    sqlSelect  := ` SELECT A.*                 `
+    sqlFrom    := ` FROM  ds_object_oam  AS A  `
+    sqlWhere   := ` WHERE A.deleted_flag = 0   `
+    sqlWhere   += fmt.Sprintf(" AND A.model_id  = %d", modelId)
+    sqlWhere   += fmt.Sprintf(" AND A.object_id = %d", objectId)
+    sqlWhere   += fmt.Sprintf(" AND A.oam_id    = %d", oamId)
+    
+    data := &viewmodels.ModelObjectOAMInfo{}
+    has, err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere).Get(data)
+    if !has || err != nil {
         return nil, err
     } else {
         return data, nil

+ 23 - 7
service/biz_service.go

@@ -9,7 +9,7 @@ import (
 
 type BizService interface {
     GetList(m map[string]interface{}) ([]viewmodels.BizInfo, error)
-    GetTreeData() ([]viewmodels.BizDataInfo, error)
+    GetTreeData() ([]viewmodels.BizTreeInfo, error)
     GetPage(m map[string]interface{}) (*viewmodels.PageResult, error)
     GetById(bizId int64) (*viewmodels.BizInfo, error)
     Create(d *datamodels.Biz) error
@@ -29,7 +29,7 @@ func NewBizService() BizService {
     }
 }
 
-func (s *bizService) GetTreeData() ([]viewmodels.BizDataInfo, error) {
+func (s *bizService) GetTreeData() ([]viewmodels.BizTreeInfo, error) {
     bizArr, err1 := s.bizRepo.GetAll()
     if err1 != nil {
         return nil, err1
@@ -40,21 +40,37 @@ func (s *bizService) GetTreeData() ([]viewmodels.BizDataInfo, error) {
         return nil, err2
     }
 
-    bizDataArr := make([]viewmodels.BizDataInfo, 0)
+    bizDataArr := make([]viewmodels.BizTreeInfo, 0)
     for _, biz := range bizArr {
         
-        bizData := viewmodels.BizDataInfo{}
+        bizData := viewmodels.BizTreeInfo{}
         bizId := biz.BizId
-        objects := make([]viewmodels.BizObjectInfo, 0)
+        treeNodes := make([]viewmodels.BizTreeNodeInfo, 0)
         for _, object := range bizObjectArr {
             if object.BizId == bizId {
-                objects = append(objects, object)
+                treeNode := viewmodels.BizTreeNodeInfo{
+                    Label: object.ObjectTitle,
+                    Value: object.ObjectId,
+                    IsLeaf: 1,
+                    ObjectId: object.ObjectId,
+                    ObjectType: object.ObjectType,
+                    ObjectTitle: object.ObjectTitle,
+                    ObjectCode: object.ObjectCode,
+                    IsFixed: object.IsFixed,
+                    Comment: object.Comment,
+                }
+                
+                
+                treeNodes = append(treeNodes, treeNode)
             }
         }
+        bizData.Label    = biz.BizTitle
+        bizData.Value    = bizId
+        bizData.IsLeaf   = 0
         bizData.BizId    = bizId
         bizData.BizTitle = biz.BizTitle
         bizData.BizDesc  = biz.BizDesc
-        bizData.Objects  = objects
+        bizData.Children  = treeNodes
         bizDataArr = append(bizDataArr, bizData)
     }
     

+ 1 - 0
service/db_access_service.go

@@ -0,0 +1 @@
+package service

+ 1 - 0
service/db_bus_service.go

@@ -0,0 +1 @@
+package service

+ 8 - 3
service/model_object_oam_service.go

@@ -9,7 +9,8 @@ import (
 
 type ModelObjectOAMService interface {
     GetList(m map[string]interface{}) ([]viewmodels.ModelObjectOAMInfo, error)
-    GetById(modelId, objectId, attrId int64) (*viewmodels.ModelObjectOAMInfo, error)
+    GetListById(modelId, objectId int64) ([]viewmodels.ModelObjectOAMInfo, error)
+    GetById(modelId, objectId, oamId int64) (*viewmodels.ModelObjectOAMInfo, error)
     Create(d *datamodels.ModelObjectOAM) error
     Update(d *datamodels.ModelObjectOAM) error
     Delete(m map[string]interface{}) error
@@ -29,8 +30,12 @@ func (s *modelObjectOAMService) GetList(m map[string]interface{}) ([]viewmodels.
     return s.repo.GetList(m)
 }
 
-func (s *modelObjectOAMService) GetById(modelId, objectId, attrId int64) (*viewmodels.ModelObjectOAMInfo, error) {
-    return s.repo.GetById(modelId, objectId, attrId)
+func (s *modelObjectOAMService) GetListById(modelId, objectId int64) ([]viewmodels.ModelObjectOAMInfo, error) {
+    return s.repo.GetListById(modelId, objectId)
+}
+
+func (s *modelObjectOAMService) GetById(modelId, objectId, oamId int64) (*viewmodels.ModelObjectOAMInfo, error) {
+    return s.repo.GetById(modelId, objectId, oamId)
 }
 
 func (s *modelObjectOAMService) Create(ObjectOAM *datamodels.ModelObjectOAM) error {

+ 26 - 12
service/model_service.go

@@ -9,7 +9,7 @@ import (
 
 type ModelService interface {
 	GetList(m map[string]interface{}) ([]viewmodels.ModelInfo, error)
-	GetTreeData() ([]viewmodels.ModelDataInfo, error)
+	GetTreeData() ([]viewmodels.ModelTreeInfo, error)
 	GetPage(m map[string]interface{}) (*viewmodels.PageResult, error)
 	GetById(modelId int64) (*viewmodels.ModelInfo, error)
 	Create(d *datamodels.Model) error
@@ -33,7 +33,7 @@ func (s *modelService) GetList(m map[string]interface{}) ([]viewmodels.ModelInfo
 	return s.modelRepo.GetList(m)
 }
 
-func (s *modelService) GetTreeData() ([]viewmodels.ModelDataInfo, error) {
+func (s *modelService) GetTreeData() ([]viewmodels.ModelTreeInfo, error) {
 	modelArr, err1 := s.modelRepo.GetAll()
 	if err1 != nil {
 		return nil, err1
@@ -44,22 +44,36 @@ func (s *modelService) GetTreeData() ([]viewmodels.ModelDataInfo, error) {
 		return nil, err2
 	}
 	
-	modelDataArr := make([]viewmodels.ModelDataInfo, 0)
+	modelDataArr := make([]viewmodels.ModelTreeInfo, 0)
 	for _, model := range modelArr {
 		
-		modelData := viewmodels.ModelDataInfo{}
-		modelId := model.ModelId
-		objects := make([]viewmodels.ModelObjectInfo, 0)
+		modelTreeData := viewmodels.ModelTreeInfo{}
+		modelId  := model.ModelId
+		children := make([]viewmodels.ModelTreeNodeInfo, 0)
 		for _, object := range objectArr {
 			if object.ModelId == modelId {
-				objects = append(objects, object)
+				treeNode := viewmodels.ModelTreeNodeInfo{
+					Label: object.ObjectTitle,
+					Value: object.ObjectId,
+					IsLeaf:  1,
+					ObjectId: object.ObjectId,
+					ObjectType: object.ObjectType,
+					ObjectTitle: object.ObjectTitle,
+					ObjectCode: object.ObjectCode,
+					IsFixed: object.IsFixed,
+					Comment: object.Comment,
+				}
+				children = append(children, treeNode)
 			}
 		}
-		modelData.ModelId    = modelId
-		modelData.ModelTitle = model.ModelTitle
-		modelData.ModelDesc  = model.ModelDesc
-		modelData.Objects  = objects
-		modelDataArr = append(modelDataArr, modelData)
+		modelTreeData.Label      = model.ModelTitle
+		modelTreeData.Value      = model.ModelId
+		modelTreeData.IsLeaf     = 0
+		modelTreeData.ModelId    = modelId
+		modelTreeData.ModelTitle = model.ModelTitle
+		modelTreeData.ModelDesc  = model.ModelDesc
+		modelTreeData.Children   = children
+		modelDataArr = append(modelDataArr, modelTreeData)
 	}
 	
 	return modelDataArr, nil

+ 0 - 12
viewmodels/biz_data_info.go

@@ -1,12 +0,0 @@
-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"
-}

+ 15 - 0
viewmodels/biz_tree_info.go

@@ -0,0 +1,15 @@
+package viewmodels
+
+type BizTreeInfo struct {
+    Label       string  `json:"label"           xorm:"'label'         varchar(50)   comment('Label 名称')     "`
+    Value       int64   `json:"value"           xorm:"'value'         bigint        comment('Value ID')      "`
+    IsLeaf      int64   `json:"isLeaf"          xorm:"'isLeaf'        bigint        comment('Is Leaf')       "`
+    BizId       int64   `json:"bizId"           xorm:"'biz_id'        bigint        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')      "`
+    Children    []BizTreeNodeInfo `json:"children"`
+}
+
+func (t *BizTreeInfo) TableName() string {
+    return "biz"
+}

+ 13 - 0
viewmodels/biz_tree_node_info.go

@@ -0,0 +1,13 @@
+package viewmodels
+
+type BizTreeNodeInfo struct {
+    Label       string    `json:"label"           xorm:"'label'           varchar(50)   comment('Label 名称')     "`
+    Value       int64     `json:"value"           xorm:"'value'           bigint        comment('Value ID')      "`
+    IsLeaf      int64     `json:"isLeaf"          xorm:"'isLeaf'          bigint        comment('Is Leaf')       "`
+    ObjectId    int64     `json:"objectId"        xorm:"'object_id'       bigint        comment('Object ID')      "`
+    ObjectType  int64     `json:"objectType"      xorm:"'object_type'     bigint        comment('Object Type')    "`
+    ObjectTitle string    `json:"objectTitle"     xorm:"'object_title'    varchar(127)  comment('Object Title')   "`
+    ObjectCode  string    `json:"objectCode"      xorm:"'object_code'     varchar(127)  comment('Object Code')    "`
+    Comment     string    `json:"comment"         xorm:"'comment'         varchar(255)  comment('Comment')        "`
+    IsFixed     int64     `json:"isFixed"         xorm:"'is_fixed'        int           comment('Is Fixed')       "`
+}

+ 0 - 12
viewmodels/model_data_info.go

@@ -1,12 +0,0 @@
-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"
-}

+ 15 - 0
viewmodels/model_tree_info.go

@@ -0,0 +1,15 @@
+package viewmodels
+
+type ModelTreeInfo struct {
+    Label      string `json:"label"           xorm:"'label'           varchar(50)   comment('Label 名称')     "`
+    Value      int64  `json:"value"           xorm:"'value'           bigint        comment('Value ID')      "`
+    IsLeaf     int64  `json:"isLeaf"          xorm:"'isLeaf'          bigint        comment('Is Leaf')       "`
+    ModelId    int64  `json:"modelId"         xorm:"'model_id'        bigint        comment('主键ID')        "`
+    ModelTitle string `json:"modelTitle"      xorm:"'model_title'     varchar(50)   comment('模型名称')       "`
+    ModelDesc  string `json:"modelDesc"       xorm:"'model_desc'      varchar(50)   comment('描述')          "`
+    Children   []ModelTreeNodeInfo `json:"children"`
+}
+
+func (t *ModelTreeInfo) TableName() string {
+    return "ds_model"
+}

+ 13 - 0
viewmodels/model_tree_node_info.go

@@ -0,0 +1,13 @@
+package viewmodels
+
+type ModelTreeNodeInfo struct {
+    Label       string    `json:"label"           xorm:"'label'           varchar(50)    comment('Label 名称')        "`
+    Value       int64     `json:"value"           xorm:"'value'           bigint         comment('Value ID')         "`
+    IsLeaf      int64     `json:"isLeaf"          xorm:"'isLeaf'          bigint         comment('Is Leaf')          "`
+    ObjectId    int64     `json:"objectId"        xorm:"'object_id'       bigint         comment('Object ID')        "`
+    ObjectType  int64     `json:"objectType"      xorm:"'object_type'     bigint         comment('Object Type')      "`
+    ObjectTitle string    `json:"objectTitle"     xorm:"'object_title'    varchar(127)   comment('Object Title')     "`
+    ObjectCode  string    `json:"objectCode"      xorm:"'object_code'     varchar(127)   comment('Object Code')      "`
+    Comment     string    `json:"comment"         xorm:"'comment'         varchar(255)   comment('Comment')          "`
+    IsFixed     int64     `json:"isFixed"         xorm:"'is_fixed'        int            comment('Is Fixed?')        "`
+}

+ 1 - 0
web/controllers/db_access_controller.go

@@ -0,0 +1 @@
+package controllers

+ 1 - 0
web/controllers/db_bus_controller.go

@@ -0,0 +1 @@
+package controllers

+ 15 - 5
web/controllers/model_object_oam_controller.go

@@ -12,11 +12,12 @@ type ModelObjectOAMController struct {
 }
 
 func (c *ModelObjectOAMController) BeforeActivation(b mvc.BeforeActivation) {
-    b.Handle("GET",     "",                                                 "GetList"   )
-    b.Handle("GET",     "/{modelId:int64}/{objectId:int64}/{oamId:int64}",  "GetById"   )
-    b.Handle("POST",    "/add",                                             "Create"    )
-    b.Handle("PUT",     "/update",                                          "Update"    )
-    b.Handle("DELETE",  "/{modelId:int64}/{objectId:int64}/{oamId:int64}",  "DeleteByID")
+    b.Handle("GET",     "",                                                 "GetList"       )
+    b.Handle("GET",     "/{modelId:int64}/{objectId:int64}/{oamId:int64}",  "GetById"       )
+    b.Handle("GET",     "/{modelId:int64}/{objectId:int64}",                "GetListById"   )
+    b.Handle("POST",    "/add",                                             "Create"        )
+    b.Handle("PUT",     "/update",                                          "Update"        )
+    b.Handle("DELETE",  "/{modelId:int64}/{objectId:int64}/{oamId:int64}",  "DeleteByID"    )
 }
 
 func (c *ModelObjectOAMController) GetList() *JsonResult {
@@ -38,6 +39,15 @@ func (c *ModelObjectOAMController) GetById(modelId, objectId, oamId int64) *Json
     }
 }
 
+func (c *ModelObjectOAMController) GetListById(modelId, objectId int64) *JsonResult{
+    data, err := c.Service.GetListById(modelId, objectId)
+    if err != nil {
+        return ResultErr(err.Error(), nil)
+    } else {
+        return ResultOk("获取成功", data)
+    }
+}
+
 func (c *ModelObjectOAMController) Create() *JsonResult {
     userId := c.GetCurUserId()