Signed-off-by: jagger <cossjie@foxmail.com>
Former-commit-id: a6d7814781
pull/209/head
| @@ -712,6 +712,7 @@ type ( | |||||
| Id string `form:"id,optional" db:"id"` | Id string `form:"id,optional" db:"id"` | ||||
| Name string `form:"name,optional"` | Name string `form:"name,optional"` | ||||
| Type string `form:"type,optional"` | Type string `form:"type,optional"` | ||||
| ResourceType string `form:"resourceType,optional"` | |||||
| Nickname string `form:"nickname,optional"` | Nickname string `form:"nickname,optional"` | ||||
| Version string `form:"version,optional"` | Version string `form:"version,optional"` | ||||
| Server string `form:"server,optional"` | Server string `form:"server,optional"` | ||||
| @@ -721,6 +722,7 @@ type ( | |||||
| Id string `form:"id,optional" db:"id"` | Id string `form:"id,optional" db:"id"` | ||||
| Name string `form:"name,optional"` | Name string `form:"name,optional"` | ||||
| Type string `form:"type,optional"` | Type string `form:"type,optional"` | ||||
| ResourceType string `form:"resourceType,optional"` | |||||
| Nickname string `form:"nickname,optional"` | Nickname string `form:"nickname,optional"` | ||||
| Version string `form:"version,optional"` | Version string `form:"version,optional"` | ||||
| Server string `form:"server,optional"` | Server string `form:"server,optional"` | ||||
| @@ -729,6 +731,7 @@ type ( | |||||
| Id string `json:"id,optional" db:"id"` | Id string `json:"id,optional" db:"id"` | ||||
| Name string `json:"name,optional"` | Name string `json:"name,optional"` | ||||
| Type string `json:"type,optional"` | Type string `json:"type,optional"` | ||||
| ResourceType string `json:"resourceType,optional"` | |||||
| Nickname string `json:"nickname,optional"` | Nickname string `json:"nickname,optional"` | ||||
| Version string `json:"version,optional"` | Version string `json:"version,optional"` | ||||
| Server string `json:"server,optional"` | Server string `json:"server,optional"` | ||||
| @@ -737,6 +740,7 @@ type ( | |||||
| Id string `json:"id,optional" db:"id"` | Id string `json:"id,optional" db:"id"` | ||||
| Name string `json:"name"` | Name string `json:"name"` | ||||
| Type string `json:"type"` | Type string `json:"type"` | ||||
| ResourceType string `json:"resourceType"` | |||||
| Nickname string `json:"nickname"` | Nickname string `json:"nickname"` | ||||
| Version string `json:"version"` | Version string `json:"version"` | ||||
| Server string `json:"server"` | Server string `json:"server"` | ||||
| @@ -748,6 +752,7 @@ type ( | |||||
| Id string `json:"id,omitempty" db:"id"` | Id string `json:"id,omitempty" db:"id"` | ||||
| Name string `json:"name,omitempty" db:"name"` | Name string `json:"name,omitempty" db:"name"` | ||||
| Type string `json:"type,omitempty" db:"type"` | Type string `json:"type,omitempty" db:"type"` | ||||
| ResourceType string `json:"resourceType,omitempty" db:"resource_type"` | |||||
| Nickname string `json:"nickname,omitempty" db:"nickname"` | Nickname string `json:"nickname,omitempty" db:"nickname"` | ||||
| Version string `json:"version,omitempty" db:"version"` | Version string `json:"version,omitempty" db:"version"` | ||||
| Server string `json:"server,omitempty" db:"server"` | Server string `json:"server,omitempty" db:"server"` | ||||
| @@ -766,6 +771,7 @@ type ( | |||||
| Id string `json:"id,omitempty" db:"id"` | Id string `json:"id,omitempty" db:"id"` | ||||
| Name string `json:"name,omitempty" db:"name"` | Name string `json:"name,omitempty" db:"name"` | ||||
| Type string `json:"type,omitempty" db:"type"` | Type string `json:"type,omitempty" db:"type"` | ||||
| ResourceType string `json:"resourceType" db:"resource_type"` | |||||
| Nickname string `json:"nickname,omitempty" db:"nickname"` | Nickname string `json:"nickname,omitempty" db:"nickname"` | ||||
| Version string `json:"version,omitempty" db:"version"` | Version string `json:"version,omitempty" db:"version"` | ||||
| Server string `json:"server,omitempty" db:"server"` | Server string `json:"server,omitempty" db:"server"` | ||||
| @@ -797,6 +803,7 @@ type ( | |||||
| Type string `form:"type,optional"` | Type string `form:"type,optional"` | ||||
| ProducerDict string `form:"producerDict,optional"` | ProducerDict string `form:"producerDict,optional"` | ||||
| RegionDict string `form:"regionDict,optional"` | RegionDict string `form:"regionDict,optional"` | ||||
| ResourceType string `form:"resourceType,optional"` | |||||
| PageInfo | PageInfo | ||||
| } | } | ||||
| @@ -968,7 +975,6 @@ type ( | |||||
| Type string `form:"type,optional"` | Type string `form:"type,optional"` | ||||
| ParentId string `form:"parentId,optional"` | ParentId string `form:"parentId,optional"` | ||||
| Status string `form:"status,optional"` | Status string `form:"status,optional"` | ||||
| PageInfo | |||||
| } | } | ||||
| DictItemEditReq { | DictItemEditReq { | ||||
| @@ -55,6 +55,9 @@ func (l *ClusterListLogic) ClusterList(req *types.ClusterReq) (resp *types.PageR | |||||
| if req.Type != "" { | if req.Type != "" { | ||||
| db = db.Where("t_adapter.type = ?", req.Type) | db = db.Where("t_adapter.type = ?", req.Type) | ||||
| } | } | ||||
| if req.ResourceType != "" { | |||||
| db = db.Where("t_adapter.resource_type = ?", req.ResourceType) | |||||
| } | |||||
| //count total | //count total | ||||
| var total int64 | var total int64 | ||||
| @@ -34,14 +34,27 @@ func (l *CreateAdapterLogic) CreateAdapter(req *types.AdapterCreateReq) (resp *t | |||||
| return nil, errors.New("name already exists") | return nil, errors.New("name already exists") | ||||
| } | } | ||||
| //check type | //check type | ||||
| var arr = [...]string{"0", "1", "2"} | |||||
| found := false | |||||
| for _, str := range arr { | |||||
| if str == req.Type { | |||||
| found = true | |||||
| break | |||||
| } | |||||
| } | |||||
| if found == false { | |||||
| return nil, errors.New("type not found") | |||||
| } | |||||
| //check resourceTypeDict | |||||
| sql := `select t_dict_item.item_value | sql := `select t_dict_item.item_value | ||||
| from t_dict | from t_dict | ||||
| join t_dict_item on t_dict.id = t_dict_item.dict_id | join t_dict_item on t_dict.id = t_dict_item.dict_id | ||||
| where dict_code = 'adapter_type' and item_value = ? | where dict_code = 'adapter_type' and item_value = ? | ||||
| and t_dict_item.parent_id != 0` | and t_dict_item.parent_id != 0` | ||||
| err = l.svcCtx.DbEngin.Raw(sql, req.Type).First(&types.DictItemInfo{}).Error | |||||
| err = l.svcCtx.DbEngin.Raw(sql, req.ResourceType).First(&types.DictItemInfo{}).Error | |||||
| if errors.Is(err, gorm.ErrRecordNotFound) { | if errors.Is(err, gorm.ErrRecordNotFound) { | ||||
| return nil, errors.New("Type error, please check!") | |||||
| return nil, errors.New("resourceType error, please check!") | |||||
| } | } | ||||
| adapter.Id = utils.GenSnowflakeIDStr() | adapter.Id = utils.GenSnowflakeIDStr() | ||||
| adapter.CreateTime = time.Now().Format("2006-01-02 15:04:05") | adapter.CreateTime = time.Now().Format("2006-01-02 15:04:05") | ||||
| @@ -32,28 +32,28 @@ func (l *GetClusterSumLogic) GetClusterSum(req *types.ClusterSumReq) (resp *type | |||||
| var vmSum int // | var vmSum int // | ||||
| var TaskSum int // | var TaskSum int // | ||||
| // | // | ||||
| sqlStr := "SELECT COUNT(*) FROM `t_adapter` t where t.type = 0" | |||||
| sqlStr := "SELECT COUNT(*) FROM `t_adapter` t where t.type ='0' and deleted_at is null" | |||||
| tx := l.svcCtx.DbEngin.Raw(sqlStr).Scan(&AdapterSum) | tx := l.svcCtx.DbEngin.Raw(sqlStr).Scan(&AdapterSum) | ||||
| if tx.Error != nil { | if tx.Error != nil { | ||||
| logx.Error(err) | logx.Error(err) | ||||
| return nil, tx.Error | return nil, tx.Error | ||||
| } | } | ||||
| //vm | //vm | ||||
| sqlStrVm := "SELECT COUNT(*) FROM `t_adapter` t left join t_cluster tc on t.id=tc.adapter_id where t.type='3' and tc.deleted_at is null" | |||||
| sqlStrVm := "SELECT COUNT(*) FROM `t_adapter` t left join t_cluster tc on t.id=tc.adapter_id where t.type = '0' and t.resource_type='02' and tc.deleted_at is null" | |||||
| txClusterVm := l.svcCtx.DbEngin.Raw(sqlStrVm).Scan(&vmSum) | txClusterVm := l.svcCtx.DbEngin.Raw(sqlStrVm).Scan(&vmSum) | ||||
| if txClusterVm.Error != nil { | if txClusterVm.Error != nil { | ||||
| logx.Error(err) | logx.Error(err) | ||||
| return nil, txClusterVm.Error | return nil, txClusterVm.Error | ||||
| } | } | ||||
| //pod | //pod | ||||
| sqlStrPod := "SELECT COUNT(*) FROM `t_adapter` t left join t_cluster tc on t.id=tc.adapter_id where t.type='0' and tc.deleted_at is null" | |||||
| sqlStrPod := "SELECT COUNT(*) FROM `t_adapter` t left join t_cluster tc on t.id=tc.adapter_id where t.type = '0' and t.resource_type='02' and tc.deleted_at is null" | |||||
| txClusterPod := l.svcCtx.DbEngin.Raw(sqlStrPod).Scan(&podSum) | txClusterPod := l.svcCtx.DbEngin.Raw(sqlStrPod).Scan(&podSum) | ||||
| if txClusterPod.Error != nil { | if txClusterPod.Error != nil { | ||||
| logx.Error(err) | logx.Error(err) | ||||
| return nil, txClusterPod.Error | return nil, txClusterPod.Error | ||||
| } | } | ||||
| // | // | ||||
| sqlStrTask := "SELECT COUNT(*) FROM `task`" | |||||
| sqlStrTask := "SELECT COUNT(*) FROM `task` where adapter_type_dict = '0'" | |||||
| txTask := l.svcCtx.DbEngin.Raw(sqlStrTask).Scan(&TaskSum) | txTask := l.svcCtx.DbEngin.Raw(sqlStrTask).Scan(&TaskSum) | ||||
| if txTask.Error != nil { | if txTask.Error != nil { | ||||
| logx.Error(err) | logx.Error(err) | ||||
| @@ -37,12 +37,13 @@ func (l *TaskDetailsLogic) TaskDetails(req *types.FId) (resp *types.TaskDetailsR | |||||
| switch task.AdapterTypeDict { | switch task.AdapterTypeDict { | ||||
| case 0: | case 0: | ||||
| l.svcCtx.DbEngin.Table("task_cloud").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) | l.svcCtx.DbEngin.Table("task_cloud").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) | ||||
| if len(clusterIds) <= 0 { | |||||
| l.svcCtx.DbEngin.Table("task_vm").Select("cluster_id").Where("task_id", task.Id).Find(&clusterIds) | |||||
| } | |||||
| case 1: | case 1: | ||||
| l.svcCtx.DbEngin.Table("task_ai").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) | l.svcCtx.DbEngin.Table("task_ai").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) | ||||
| case 2: | case 2: | ||||
| l.svcCtx.DbEngin.Table("task_hpc").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) | l.svcCtx.DbEngin.Table("task_hpc").Select("cluster_id").Where("task_id", task.Id).Scan(&clusterIds) | ||||
| case 3: | |||||
| l.svcCtx.DbEngin.Table("task_vm").Select("cluster_id").Where("task_id", task.Id).Find(&clusterIds) | |||||
| } | } | ||||
| err = l.svcCtx.DbEngin.Table("t_cluster").Where("id in ?", clusterIds).Scan(&cList).Error | err = l.svcCtx.DbEngin.Table("t_cluster").Where("id in ?", clusterIds).Scan(&cList).Error | ||||
| if err != nil { | if err != nil { | ||||
| @@ -24,8 +24,6 @@ func NewListDictItemLogic(ctx context.Context, svcCtx *svc.ServiceContext) *List | |||||
| } | } | ||||
| func (l *ListDictItemLogic) ListDictItem(req *types.DictItemReq) (resp *types.PageResult, err error) { | func (l *ListDictItemLogic) ListDictItem(req *types.DictItemReq) (resp *types.PageResult, err error) { | ||||
| limit := req.PageSize | |||||
| offset := req.PageSize * (req.PageNum - 1) | |||||
| resp = &types.PageResult{} | resp = &types.PageResult{} | ||||
| var dictList []types.DictItemInfo | var dictList []types.DictItemInfo | ||||
| db := l.svcCtx.DbEngin.Model(&types.DictItemInfo{}).Table("t_dict_item") | db := l.svcCtx.DbEngin.Model(&types.DictItemInfo{}).Table("t_dict_item") | ||||
| @@ -48,13 +46,6 @@ func (l *ListDictItemLogic) ListDictItem(req *types.DictItemReq) (resp *types.Pa | |||||
| if req.DictId != "" { | if req.DictId != "" { | ||||
| db = db.Where("dict_id = ?", req.DictId) | db = db.Where("dict_id = ?", req.DictId) | ||||
| } | } | ||||
| var total int64 | |||||
| err = db.Count(&total).Error | |||||
| if err != nil { | |||||
| return resp, err | |||||
| } | |||||
| db = db.Limit(limit).Offset(offset) | |||||
| err = db.Order("sort_order").Find(&dictList).Error | err = db.Order("sort_order").Find(&dictList).Error | ||||
| // 找出第一级字典项,(父字典项id为0) | // 找出第一级字典项,(父字典项id为0) | ||||
| @@ -73,9 +64,6 @@ func (l *ListDictItemLogic) ListDictItem(req *types.DictItemReq) (resp *types.Pa | |||||
| getTreeMap(dictItemFormat, dictList) | getTreeMap(dictItemFormat, dictList) | ||||
| resp.List = dictItemFormat | resp.List = dictItemFormat | ||||
| resp.PageSize = req.PageSize | |||||
| resp.PageNum = req.PageNum | |||||
| resp.Total = total | |||||
| return resp, nil | return resp, nil | ||||
| } | } | ||||
| @@ -639,40 +639,44 @@ type AppResp struct { | |||||
| } | } | ||||
| type AdapterQueryReq struct { | type AdapterQueryReq struct { | ||||
| Id string `form:"id,optional" db:"id"` | |||||
| Name string `form:"name,optional"` | |||||
| Type string `form:"type,optional"` | |||||
| Nickname string `form:"nickname,optional"` | |||||
| Version string `form:"version,optional"` | |||||
| Server string `form:"server,optional"` | |||||
| Id string `form:"id,optional" db:"id"` | |||||
| Name string `form:"name,optional"` | |||||
| Type string `form:"type,optional"` | |||||
| ResourceType string `form:"resourceType,optional"` | |||||
| Nickname string `form:"nickname,optional"` | |||||
| Version string `form:"version,optional"` | |||||
| Server string `form:"server,optional"` | |||||
| PageInfo | PageInfo | ||||
| } | } | ||||
| type AdapterRelationQueryReq struct { | type AdapterRelationQueryReq struct { | ||||
| Id string `form:"id,optional" db:"id"` | |||||
| Name string `form:"name,optional"` | |||||
| Type string `form:"type,optional"` | |||||
| Nickname string `form:"nickname,optional"` | |||||
| Version string `form:"version,optional"` | |||||
| Server string `form:"server,optional"` | |||||
| Id string `form:"id,optional" db:"id"` | |||||
| Name string `form:"name,optional"` | |||||
| Type string `form:"type,optional"` | |||||
| ResourceType string `form:"resourceType,optional"` | |||||
| Nickname string `form:"nickname,optional"` | |||||
| Version string `form:"version,optional"` | |||||
| Server string `form:"server,optional"` | |||||
| } | } | ||||
| type AdapterReq struct { | type AdapterReq struct { | ||||
| Id string `json:"id,optional" db:"id"` | |||||
| Name string `json:"name,optional"` | |||||
| Type string `json:"type,optional"` | |||||
| Nickname string `json:"nickname,optional"` | |||||
| Version string `json:"version,optional"` | |||||
| Server string `json:"server,optional"` | |||||
| Id string `json:"id,optional" db:"id"` | |||||
| Name string `json:"name,optional"` | |||||
| Type string `json:"type,optional"` | |||||
| ResourceType string `json:"resourceType,optional"` | |||||
| Nickname string `json:"nickname,optional"` | |||||
| Version string `json:"version,optional"` | |||||
| Server string `json:"server,optional"` | |||||
| } | } | ||||
| type AdapterCreateReq struct { | type AdapterCreateReq struct { | ||||
| Id string `json:"id,optional" db:"id"` | |||||
| Name string `json:"name"` | |||||
| Type string `json:"type"` | |||||
| Nickname string `json:"nickname"` | |||||
| Version string `json:"version"` | |||||
| Server string `json:"server"` | |||||
| Id string `json:"id,optional" db:"id"` | |||||
| Name string `json:"name"` | |||||
| Type string `json:"type"` | |||||
| ResourceType string `json:"resourceType"` | |||||
| Nickname string `json:"nickname"` | |||||
| Version string `json:"version"` | |||||
| Server string `json:"server"` | |||||
| } | } | ||||
| type AdapterDelReq struct { | type AdapterDelReq struct { | ||||
| @@ -680,13 +684,14 @@ type AdapterDelReq struct { | |||||
| } | } | ||||
| type AdapterInfo struct { | type AdapterInfo struct { | ||||
| Id string `json:"id,omitempty" db:"id"` | |||||
| Name string `json:"name,omitempty" db:"name"` | |||||
| Type string `json:"type,omitempty" db:"type"` | |||||
| Nickname string `json:"nickname,omitempty" db:"nickname"` | |||||
| Version string `json:"version,omitempty" db:"version"` | |||||
| Server string `json:"server,omitempty" db:"server"` | |||||
| CreateTime string `json:"createTime,omitempty" db:"create_time" gorm:"autoCreateTime"` | |||||
| Id string `json:"id,omitempty" db:"id"` | |||||
| Name string `json:"name,omitempty" db:"name"` | |||||
| Type string `json:"type,omitempty" db:"type"` | |||||
| ResourceType string `json:"resourceType,omitempty" db:"resource_type"` | |||||
| Nickname string `json:"nickname,omitempty" db:"nickname"` | |||||
| Version string `json:"version,omitempty" db:"version"` | |||||
| Server string `json:"server,omitempty" db:"server"` | |||||
| CreateTime string `json:"createTime,omitempty" db:"create_time" gorm:"autoCreateTime"` | |||||
| } | } | ||||
| type AdapterResp struct { | type AdapterResp struct { | ||||
| @@ -702,14 +707,15 @@ type AdapterRelationResp struct { | |||||
| } | } | ||||
| type AdapterRelation struct { | type AdapterRelation struct { | ||||
| Id string `json:"id,omitempty" db:"id"` | |||||
| Name string `json:"name,omitempty" db:"name"` | |||||
| Type string `json:"type,omitempty" db:"type"` | |||||
| Nickname string `json:"nickname,omitempty" db:"nickname"` | |||||
| Version string `json:"version,omitempty" db:"version"` | |||||
| Server string `json:"server,omitempty" db:"server"` | |||||
| CreateTime string `json:"createTime,omitempty" db:"create_time" gorm:"autoCreateTime"` | |||||
| Clusters []*ClusterInfo `json:"clusters,omitempty"` | |||||
| Id string `json:"id,omitempty" db:"id"` | |||||
| Name string `json:"name,omitempty" db:"name"` | |||||
| Type string `json:"type,omitempty" db:"type"` | |||||
| ResourceType string `json:"resourceType" db:"resource_type"` | |||||
| Nickname string `json:"nickname,omitempty" db:"nickname"` | |||||
| Version string `json:"version,omitempty" db:"version"` | |||||
| Server string `json:"server,omitempty" db:"server"` | |||||
| CreateTime string `json:"createTime,omitempty" db:"create_time" gorm:"autoCreateTime"` | |||||
| Clusters []*ClusterInfo `json:"clusters,omitempty"` | |||||
| } | } | ||||
| type ClusterReq struct { | type ClusterReq struct { | ||||
| @@ -734,6 +740,7 @@ type ClusterReq struct { | |||||
| Type string `form:"type,optional"` | Type string `form:"type,optional"` | ||||
| ProducerDict string `form:"producerDict,optional"` | ProducerDict string `form:"producerDict,optional"` | ||||
| RegionDict string `form:"regionDict,optional"` | RegionDict string `form:"regionDict,optional"` | ||||
| ResourceType string `form:"resourceType,optional"` | |||||
| PageInfo | PageInfo | ||||
| } | } | ||||
| @@ -904,7 +911,6 @@ type DictItemReq struct { | |||||
| Type string `form:"type,optional"` | Type string `form:"type,optional"` | ||||
| ParentId string `form:"parentId,optional"` | ParentId string `form:"parentId,optional"` | ||||
| Status string `form:"status,optional"` | Status string `form:"status,optional"` | ||||
| PageInfo | |||||
| } | } | ||||
| type DictItemEditReq struct { | type DictItemEditReq struct { | ||||