package service import ( "app.yhyue.com/moapp/jyResourcesCenter/entity" "app.yhyue.com/moapp/jyResourcesCenter/rpc/resourcesCenter" ) type ResourceManageService struct{} //查询用户资源权限 func (service *ResourceManageService) FindResourcesAuth(data *resourcesCenter.ResourcesReq) ([]*resourcesCenter.ResourceBalance, error) { orm := entity.Engine.NewSession() var authArr []*entity.AccountBalance authList := make([]*resourcesCenter.ResourceBalance, 0) err := orm.Table("account_resources").Select("*"). Where("accountId = ?", data.AccountId).Find(&authArr) if err != nil { return authList, err } for _, v := range authArr { rb := &resourcesCenter.ResourceBalance{ Id: v.Id, Name: v.Name, ResourceType: v.ResourceType, Number: v.Number, Spec: v.Spec, } authList = append(authList, rb) } return authList, nil } //查询账户资源余额 func (service *ResourceManageService) FindAccountBalance(in *resourcesCenter.ResourcesReq) ([]*resourcesCenter.ResourceBalance, error) { orm := entity.Engine.NewSession() var accountBalanceArr []*entity.AccountBalance dataList := make([]*resourcesCenter.ResourceBalance, 0) err := orm.Table("account_resources"). Where("accountId = ?", in.AccountId).Find(&accountBalanceArr) if err != nil { return dataList, err } for _, v := range accountBalanceArr { dataList = append(dataList, &resourcesCenter.ResourceBalance{ Id: v.Id, Name: v.Name, ResourceType: v.ResourceType, Number: v.Number, Spec: v.Spec, }) } return dataList, nil } //查询流水账 func (service *ResourceManageService) FindConsumeRecord(in *resourcesCenter.RecordReq) ([]*resourcesCenter.ConsumeRecord, error) { orm := entity.Engine.NewSession() var recordArr []*entity.ConsumeRecord dataList := make([]*resourcesCenter.ConsumeRecord, 0) count, err := orm.Table("consume_record"). Where("accountId = ? and userId = ?", in.AccountId, in.UserId). Limit(int(in.PageSize), (int(in.Page)-1)*int(in.PageSize)).OrderBy("id desc").FindAndCount(&recordArr) if err != nil && count == 0 { return dataList, err } for _, v := range recordArr { dataList = append(dataList, &resourcesCenter.ConsumeRecord{ Id: v.Id, Name: v.Name, ResourceType: v.ResourceType, ExportNum: v.ExportNum, RuleId: v.RuleId, ExportTime: v.ExportTime, UserType: v.UserType, DeductionNumb: v.DeductionNumb, Url: v.Url, SearchCriteria: v.SearchCriteria, Source: v.Source, }) } return dataList, nil }