resourceManageService.go 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package service
  2. import (
  3. "app.yhyue.com/moapp/jyResourcesCenter/entity"
  4. "app.yhyue.com/moapp/jyResourcesCenter/rpc/resourcesCenter"
  5. )
  6. type ResourceManageService struct{}
  7. //查询用户资源权限
  8. func (service *ResourceManageService) FindResourcesAuth(data *resourcesCenter.ResourcesReq) ([]*resourcesCenter.ResourceBalance, error) {
  9. orm := entity.Engine.NewSession()
  10. var authArr []*entity.AccountBalance
  11. authList := make([]*resourcesCenter.ResourceBalance, 0)
  12. err := orm.Table("account_resources").Select("*").
  13. Where("accountId = ?", data.AccountId).Find(&authArr)
  14. if err != nil {
  15. return authList, err
  16. }
  17. for _, v := range authArr {
  18. rb := &resourcesCenter.ResourceBalance{
  19. Id: v.Id,
  20. Name: v.Name,
  21. ResourceType: v.ResourceType,
  22. Number: v.Number,
  23. Spec: v.Spec,
  24. }
  25. authList = append(authList, rb)
  26. }
  27. return authList, nil
  28. }
  29. //查询账户资源余额
  30. func (service *ResourceManageService) FindAccountBalance(in *resourcesCenter.ResourcesReq) ([]*resourcesCenter.ResourceBalance, error) {
  31. orm := entity.Engine.NewSession()
  32. var accountBalanceArr []*entity.AccountBalance
  33. dataList := make([]*resourcesCenter.ResourceBalance, 0)
  34. err := orm.Table("account_resources").
  35. Where("accountId = ?", in.AccountId).Find(&accountBalanceArr)
  36. if err != nil {
  37. return dataList, err
  38. }
  39. for _, v := range accountBalanceArr {
  40. dataList = append(dataList, &resourcesCenter.ResourceBalance{
  41. Id: v.Id,
  42. Name: v.Name,
  43. ResourceType: v.ResourceType,
  44. Number: v.Number,
  45. Spec: v.Spec,
  46. })
  47. }
  48. return dataList, nil
  49. }
  50. //查询流水账
  51. func (service *ResourceManageService) FindConsumeRecord(in *resourcesCenter.RecordReq) ([]*resourcesCenter.ConsumeRecord, error) {
  52. orm := entity.Engine.NewSession()
  53. var recordArr []*entity.ConsumeRecord
  54. dataList := make([]*resourcesCenter.ConsumeRecord, 0)
  55. count, err := orm.Table("consume_record").
  56. Where("accountId = ? and userId = ?", in.AccountId, in.UserId).
  57. Limit(int(in.PageSize), (int(in.Page)-1)*int(in.PageSize)).OrderBy("id desc").FindAndCount(&recordArr)
  58. if err != nil && count == 0 {
  59. return dataList, err
  60. }
  61. for _, v := range recordArr {
  62. dataList = append(dataList, &resourcesCenter.ConsumeRecord{
  63. Id: v.Id,
  64. Name: v.Name,
  65. ResourceType: v.ResourceType,
  66. ExportNum: v.ExportNum,
  67. RuleId: v.RuleId,
  68. ExportTime: v.ExportTime,
  69. UserType: v.UserType,
  70. DeductionNumb: v.DeductionNumb,
  71. Url: v.Url,
  72. SearchCriteria: v.SearchCriteria,
  73. Source: v.Source,
  74. })
  75. }
  76. return dataList, nil
  77. }