houyaf 3 年之前
父節點
當前提交
c9e1a6fedf

+ 3 - 3
conf/db.go

@@ -15,7 +15,7 @@ var MasterDbConfig DbConf = DbConf{
 	Port:   3306,
 	User:   "root",
 	Pwd:    "houyaf1!",
-	DbName: "daas",
+	DbName: "xps",
 }
 
 var SlaveDbConfig DbConf = DbConf{
@@ -23,7 +23,7 @@ var SlaveDbConfig DbConf = DbConf{
 	Port:   3306,
 	User:   "root",
 	Pwd:    "houyaf1!",
-	DbName: "daas",
+	DbName: "xps",
 }
 
 var IDDbConfig DbConf = DbConf{
@@ -31,5 +31,5 @@ var IDDbConfig DbConf = DbConf{
 	Port:   3306,
 	User:   "root",
 	Pwd:    "houyaf1!",
-	DbName: "daas",
+	DbName: "xps",
 }

+ 25 - 0
datamodels/api_trans_unit.go

@@ -0,0 +1,25 @@
+package datamodels
+
+import "time"
+
+type ApiTransUnit struct {
+    ApiId       int64       `json:"apiId"         xorm:"'api_id'       bigint      pk comment('ApiId')     "`
+    AtuId       int64       `json:"atuId"         xorm:"'atu_id'       bigint      pk comment('AtuId')     "`
+    ModelId     int64       `json:"modelIdId"     xorm:"'model_id'     bigint      pk comment('ModelId')   "`
+    ObjectId    int64       `json:"objectId"      xorm:"'object_id'    bigint      pk comment('ObjectId')  "`
+    OamId       int64       `json:"oamId"         xorm:"'oam_id'       bigint      pk comment('OamId')     "`
+    AtuTitle    string      `json:"atuTitle"      xorm:"'atu_title'    varchar(127)   comment('AtuTitle')  "`
+    AtuType     string      `json:"atuType"       xorm:"'atu_type'     bigint         comment('AtuType')   "`
+    AtuDesc     string      `json:"atuDesc"       xorm:"'atu_desc'     varchar(2047)  comment('AtuDesc')   "`
+    CreatedBy   int64     `json:"createdBy"         xorm:"'created_by'"`
+    CreatedAt   time.Time `json:"createdAt"         xorm:"'created_at'"`
+    UpdatedBy   int64     `json:"updatedBy"         xorm:"'updated_by'"`
+    UpdatedAt   time.Time `json:"updatedAt"         xorm:"'updated_at'"`
+    DeletedFlag int64     `json:"deletedFlag"       xorm:"'deleted_flag'"`
+    DeletedBy   int64     `json:"deletedBy"         xorm:"'deleted_by'"`
+    DeletedAt   time.Time `json:"deletedAt"         xorm:"'deleted_at'"`
+}
+
+func (t *ApiTransUnit) TableName() string {
+    return "ps_api_trans_unit"
+}

+ 25 - 0
datamodels/object_oam.go

@@ -0,0 +1,25 @@
+package datamodels
+
+import "time"
+
+type ObjectOAM struct {
+    ModelId      int64     `json:"modelId"         xorm:"'model_id'        bigint      pk comment('Model ID')       "`
+    ObjectId     int64     `json:"objectId"        xorm:"'object_id'       bigint      pk comment('Object ID')      "`
+    OamId        int64     `json:"oamId"           xorm:"'oam_id'          bigint      pk comment('OAM ID')         "`
+    OamTitle     string    `json:"oamTitle"        xorm:"'oam_title'       varchar(127)   comment('OAMTitle')       "`
+    OamCode      string    `json:"oamCode"         xorm:"'oam_code'        varchar(127)   comment('OAMCode')        "`
+    OamType      int64     `json:"oamType"         xorm:"'oam_type'        bigint         comment('Type')           "`
+    OamStatement string    `json:"oamStatement"    xorm:"'oam_statement'   varchar(1023)  comment('Statement')      "`
+    OamDesc      string    `json:"oamDesc"         xorm:"'oam_desc'        varchar(1023)  comment('描述')            "`
+    CreatedBy    int64     `json:"createdBy"       xorm:"'created_by'"`
+    CreatedAt    time.Time `json:"createdAt"       xorm:"'created_at'"`
+    UpdatedBy    int64     `json:"updatedBy"       xorm:"'updated_by'"`
+    UpdatedAt    time.Time `json:"updatedAt"       xorm:"'updated_at'"`
+    DeletedFlag  int64     `json:"deletedFlag"     xorm:"'deleted_flag'"`
+    DeletedBy    int64     `json:"deletedBy"       xorm:"'deleted_by'"`
+    DeletedAt    time.Time `json:"deletedAt"       xorm:"'deleted_at'"`
+}
+
+func (t *ObjectOAM) TableName() string {
+    return "ds_object_oam"
+}

+ 134 - 0
repositories/api_trans_unit_repo.go

@@ -0,0 +1,134 @@
+package repositories
+
+import (
+    "fmt"
+    "time"
+    "xorm.io/xorm"
+    "xps/datamodels"
+    "xps/viewmodels"
+)
+
+type ApiTransUnitRepo struct {
+    engine *xorm.Engine
+}
+
+func NewApiTransUnitRepo(engine *xorm.Engine) *ApiTransUnitRepo {
+    return &ApiTransUnitRepo{
+        engine: engine,
+    }
+}
+
+func (d *ApiTransUnitRepo) GetPage(m map[string]interface{}) (*viewmodels.PageResult, error) {
+    limit := m["limit"].(int)
+    page  := m["page"].(int)
+    
+    sqlSelect := ` SELECT     A.*,
+                              B.api_title `
+    sqlFrom   := ` FROM       ps_api_trans_unit AS A
+                   LEFT  JOIN ps_api            AS B ON (A.api_id = C.api_id)`
+    sqlWhere  := ` WHERE 1 = 1  AND A.deleted_flag = 0 `
+    
+    if apiId, ok := m["apiId"]; ok {
+        sqlWhere += ` AND A.api_id = `+ fmt.Sprintf("%d", apiId)
+    }
+    
+    if keywords, ok := m["keywords"]; ok {
+        sqlWhere += ` AND A.atu_title like ` + "'%" + fmt.Sprintf("%s", keywords) + "%'"
+    }
+    
+    sqlCount := ` SELECT COUNT(*) `
+    total, err1 := d.engine.SQL(sqlCount + sqlFrom + sqlWhere).Count(new(datamodels.ApiTransUnit))
+    if err1 != nil {
+        return nil, err1
+    }
+    sqlOrderBy := " ORDER BY A.atu_id ASC "
+    
+    pageStart  := (page - 1) * limit
+    sqlLimit   := fmt.Sprintf(" LIMIT %d OFFSET %d ", limit, pageStart)
+    
+    datalist := make([]datamodels.ApiTransUnit, 0)
+    err2 := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere + sqlOrderBy + sqlLimit).Find(&datalist)
+    if err2 != nil {
+        return nil, err2
+    }
+    
+    pageResult := &viewmodels.PageResult{}
+    pageResult.Data     = datalist
+    pageResult.Total    = total
+    pageResult.PageSize = limit
+    pageResult.Page     = page
+    return pageResult, nil
+}
+
+func (d *ApiTransUnitRepo) GetList(m map[string]interface{}) ([]viewmodels.ApiTransUnitInfo, error) {
+    sqlSelect := ` SELECT     A.*,
+                              B.api_title `
+    sqlFrom   := ` FROM       ps_api_trans_unit AS A
+                   LEFT  JOIN ps_api            AS B ON (A.api_id = C.api_id)`
+    sqlWhere  := ` WHERE 1 = 1  AND A.deleted_flag = 0 `
+    
+    
+    if apiId, ok := m["apiId"]; ok {
+        sqlWhere += ` AND A.api_id = `+ fmt.Sprintf("%d", apiId)
+    }
+    
+    if keywords, ok := m["keywords"]; ok {
+        sqlWhere += ` AND A.atu_title like ` + "'%" + fmt.Sprintf("%s", keywords) + "%'"
+    }
+    sqlOrderBy := " ORDER BY A.atu_id ASC "
+    
+    datalist := make([]viewmodels.ApiTransUnitInfo, 0)
+    err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere + sqlOrderBy).Find(&datalist)
+    if err != nil {
+        return nil, err
+    } else {
+        return datalist, nil
+    }
+}
+
+func (d *ApiTransUnitRepo) GetById(apiId, atuId int64) (*viewmodels.ApiTransUnitInfo, error) {
+    data := &viewmodels.ApiTransUnitInfo{}
+    ok, err := d.engine.
+        Where("api_id = ?", apiId).
+        Where("atu_id = ?", atuId).
+        Get(data)
+    if !ok && err == nil {
+        return nil, err
+    } else {
+        return data, nil
+    }
+}
+
+func (d *ApiTransUnitRepo) Create(data *datamodels.ApiTransUnit) error {
+    _, err := d.engine.Insert(data)
+    return err
+}
+
+
+func (d *ApiTransUnitRepo) Update(data *datamodels.ApiTransUnit) error {
+    apiId := data.ApiId
+    atuId := data.AtuId
+    
+    data.UpdatedAt = time.Now()
+    _, err := d.engine.
+        Where("api_id = ?", apiId).
+        Where("atu_id = ?", atuId).
+        Update(data)
+    return err
+}
+
+func (d *ApiTransUnitRepo) Delete(m map[string]interface{}) error {
+    apiId     := m["apiId"].(int64)
+    atuId     := m["atuId"].(int64)
+    deletedBy := m["deletedBy"].(int64)
+    
+    data := &datamodels.AppCat{}
+    data.DeletedFlag = 1
+    data.DeletedBy = deletedBy
+    data.DeletedAt = time.Now()
+    _, err := d.engine.
+        Where("api_id = ?", apiId).
+        Where("atu_id = ?", atuId).
+        Update(data)
+    return err
+}

+ 98 - 0
repositories/object_oam_repo.go

@@ -0,0 +1,98 @@
+package repositories
+
+import (
+    "fmt"
+    "time"
+    "xorm.io/xorm"
+    "xps/datamodels"
+    "xps/viewmodels"
+)
+
+type ObjectOAMRepo struct {
+    engine *xorm.Engine
+}
+
+func NewObjectOAMRepo(engine *xorm.Engine) *ObjectOAMRepo {
+    return &ObjectOAMRepo{
+        engine: engine,
+    }
+}
+
+func (d *ObjectOAMRepo) GetList(m map[string]interface{}) ([]viewmodels.ObjectOAMInfo, error) {
+    sqlSelect  := ` SELECT A.*                 `
+    sqlFrom    := ` FROM  ds_object_oam  AS A  `
+    sqlWhere   := ` WHERE A.deleted_flag = 0   `
+    if keywords, ok := m["keywords"]; ok {
+        sqlWhere += ` AND A.oam_title like ` + "'%" + fmt.Sprintf("%s", keywords) + "%'"
+    }
+    sqlOrderBy := " ORDER BY A.oam_id ASC "
+    
+    datalist   := make([]viewmodels.ObjectOAMInfo, 0)
+    err := d.engine.SQL(sqlSelect + sqlFrom + sqlWhere + sqlOrderBy).Find(&datalist)
+    if err != nil {
+        return nil, err
+    } else {
+        return datalist, nil
+    }
+}
+
+func (d *ObjectOAMRepo) GetById(modelId, objectId, oamId int64) (*viewmodels.ObjectOAMInfo, error) {
+    data    := &viewmodels.ObjectOAMInfo{}
+    ok, err := d.engine.
+        Where("model_id = ?", modelId).
+        Where("object_id = ?", objectId).
+        Where("oam_id = ?", oamId).
+        Get(data)
+    if !ok && err == nil {
+        return nil, err
+    } else {
+        return data, nil
+    }
+}
+
+func (d *ObjectOAMRepo) Create(data *datamodels.ObjectOAM) error {
+    data.CreatedAt = time.Now()
+    _, err := d.engine.Insert(data)
+    return err
+}
+
+func (d *ObjectOAMRepo) Update(data *datamodels.ObjectOAM) error {
+    modelId   := data.ModelId
+    objectId  := data.ObjectId
+    oamId     := data.OamId
+    data.UpdatedAt = time.Now()
+    _, err := d.engine.
+        Where("model_id = ?", modelId).
+        Where("object_id = ?", objectId).
+        Where("oam_id = ?", oamId).
+        Update(data)
+    return err
+}
+
+func (d *ObjectOAMRepo) Delete(m map[string]interface{}) error {
+    modelId   := m["modelId"].(int64)
+    objectId  := m["objectId"].(int64)
+    oamId     := m["oamId"].(int64)
+    deletedBy := m["deletedBy"].(int64)
+    
+    data := &datamodels.ObjectOAM{}
+    data.DeletedFlag = 1
+    data.DeletedBy   = deletedBy
+    data.DeletedAt   = time.Now()
+    _, err := d.engine.
+        Where("model_id = ?", modelId).
+        Where("object_id = ?", objectId).
+        Where("oam_id = ?", oamId).
+        Delete(data)
+    return err
+}
+
+func (d *ObjectOAMRepo) DeleteByObjectId(modelId, objectId, oamId int64) error {
+    data := &datamodels.ObjectOAM{}
+    _, err := d.engine.
+        Where("model_id = ?", modelId).
+        Where("object_id = ?", objectId).
+        Where("oam_id = ?", oamId).
+        Delete(data)
+    return err
+}

+ 27 - 0
service/api_gateway_service.go

@@ -0,0 +1,27 @@
+package service
+
+import (
+    "xps/datasource"
+    "xps/repositories"
+)
+
+type ApiGatewayService interface {
+    HandleRequest(m map[string]interface{})  error
+}
+
+
+type apiGatewayService struct {
+    apiRepo *repositories.ApiRepo
+}
+
+func (a apiGatewayService) HandleRequest(m map[string]interface{}) error {
+    
+    return nil
+}
+
+func NewApiGatewayService() ApiGatewayService {
+    return &apiGatewayService{
+        apiRepo: repositories.NewApiRepo(datasource.InstanceMaster()),
+    }
+}
+

+ 42 - 0
service/api_trans_unit_service.go

@@ -0,0 +1,42 @@
+package service
+
+import (
+    "xps/datamodels"
+    "xps/datasource"
+    "xps/repositories"
+    "xps/viewmodels"
+)
+
+type ApiTransUnitService interface {
+    GetList(m map[string]interface{}) ([]viewmodels.ApiTransUnitInfo, error)
+    GetPage(m map[string]interface{}) (*viewmodels.PageResult, error)
+    GetById(apiId, atuId int64) (*viewmodels.ApiTransUnitInfo, error)
+    Create(d *datamodels.ApiTransUnit) error
+}
+
+type apiTransUnitService struct {
+    repo *repositories.ApiTransUnitRepo
+}
+
+func NewApiTransUnitService() ApiTransUnitService {
+    return &apiTransUnitService{
+        repo: repositories.NewApiTransUnitRepo(datasource.InstanceMaster()),
+    }
+}
+
+func (s *apiTransUnitService) GetList(m map[string]interface{}) ([]viewmodels.ApiTransUnitInfo, error) {
+    return s.repo.GetList(m)
+}
+
+func (s *apiTransUnitService) GetPage(m map[string]interface{}) (*viewmodels.PageResult, error) {
+    return s.repo.GetPage(m)
+}
+
+func (s *apiTransUnitService) GetById(apiId, atuId int64) (*viewmodels.ApiTransUnitInfo, error) {
+    return s.repo.GetById(apiId, atuId)
+}
+
+func (s *apiTransUnitService) Create(apiTransUnit *datamodels.ApiTransUnit) error {
+    apiTransUnit.ApiId = NewID()
+    return s.repo.Create(apiTransUnit)
+}

+ 17 - 0
viewmodels/api_trans_unit_info.go

@@ -0,0 +1,17 @@
+package viewmodels
+
+
+type ApiTransUnitInfo struct {
+    ApiId       int64       `json:"apiId"         xorm:"'api_id'       bigint      pk comment('ApiId')     "`
+    AtuId       int64       `json:"atuId"         xorm:"'atu_id'       bigint      pk comment('AtuId')     "`
+    ModelId     int64       `json:"modelIdId"     xorm:"'model_id'     bigint      pk comment('ModelId')   "`
+    ObjectId    int64       `json:"objectId"      xorm:"'object_id'    bigint      pk comment('ObjectId')  "`
+    OamId       int64       `json:"oamId"         xorm:"'oam_id'       bigint      pk comment('OamId')     "`
+    AtuTitle    string      `json:"atuTitle"      xorm:"'atu_title'    varchar(127)   comment('AtuTitle')  "`
+    AtuType     string      `json:"atuType"       xorm:"'atu_type'     bigint         comment('AtuType')   "`
+    AtuDesc     string      `json:"atuDesc"       xorm:"'atu_desc'     varchar(2047)  comment('AtuDesc')   "`
+}
+
+func (t *ApiTransUnitInfo) TableName() string {
+    return "ps_api_trans_unit"
+}

+ 17 - 0
viewmodels/object_oam_info.go

@@ -0,0 +1,17 @@
+package viewmodels
+
+
+type ObjectOAMInfo struct {
+    ModelId      int64     `json:"modelId"         xorm:"'model_id'        bigint      pk comment('Model ID')       "`
+    ObjectId     int64     `json:"objectId"        xorm:"'object_id'       bigint      pk comment('Object ID')      "`
+    OamId        int64     `json:"oamId"           xorm:"'oam_id'          bigint      pk comment('OAM ID')         "`
+    OamTitle     string    `json:"oamTitle"        xorm:"'oam_title'       varchar(127)   comment('OAMTitle')       "`
+    OamCode      string    `json:"oamCode"         xorm:"'oam_code'        varchar(127)   comment('OAMCode')        "`
+    OamType      int64     `json:"oamType"         xorm:"'oam_type'        bigint         comment('Type')           "`
+    OamStatement string    `json:"oamStatement"    xorm:"'oam_statement'   varchar(1023)  comment('Statement')      "`
+    OamDesc      string    `json:"oamDesc"         xorm:"'oam_desc'        varchar(1023)  comment('描述')            "`
+}
+
+func (t *ObjectOAMInfo) TableName() string {
+    return "ds_object_oam"
+}

+ 1 - 0
web/controllers/api_gateway_controller.go

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