正在显示
5 个修改的文件
包含
90 行增加
和
1 行删除
| @@ -7,6 +7,7 @@ import ( | @@ -7,6 +7,7 @@ import ( | ||
| 7 | 7 | ||
| 8 | // 获取兑换活动兑换清单 | 8 | // 获取兑换活动兑换清单 |
| 9 | type ListExchangeCashPersonQuery struct { | 9 | type ListExchangeCashPersonQuery struct { |
| 10 | + CompanyId int64 `json:"companyId"` // 公司id | ||
| 10 | ExchangeCashActivityId int64 `json:"exchangeCashActivityId"` // 兑换现金活动id | 11 | ExchangeCashActivityId int64 `json:"exchangeCashActivityId"` // 兑换现金活动id |
| 11 | ExchangeCashPersonNameMatch string `json:"exchangeCashPersonNameMatch,omitempty"` // 兑换活动名称匹配 | 12 | ExchangeCashPersonNameMatch string `json:"exchangeCashPersonNameMatch,omitempty"` // 兑换活动名称匹配 |
| 12 | Offset int `json:"offset,omitempty"` // 查询偏离量 | 13 | Offset int `json:"offset,omitempty"` // 查询偏离量 |
| @@ -998,6 +998,11 @@ func (cashPoolService *CashPoolService) GetExchangeCashPerson(getExchangeCashPer | @@ -998,6 +998,11 @@ func (cashPoolService *CashPoolService) GetExchangeCashPerson(getExchangeCashPer | ||
| 998 | } | 998 | } |
| 999 | } | 999 | } |
| 1000 | 1000 | ||
| 1001 | +// 返回素币兑换现金活动总清单 | ||
| 1002 | +//func (cashPoolService *CashPoolService) ListSystemExchangeCashPerson(listSystemExchangeCashPersonQuery *query.ListSystemExchangeCashPersonQuery) (interface{}, error) { | ||
| 1003 | +// | ||
| 1004 | +//} | ||
| 1005 | + | ||
| 1001 | // 返回兑换素币清单列表 | 1006 | // 返回兑换素币清单列表 |
| 1002 | func (cashPoolService *CashPoolService) ListExchangeCashPerson(listExchangeCashPersonQuery *query.ListExchangeCashPersonQuery) (interface{}, error) { | 1007 | func (cashPoolService *CashPoolService) ListExchangeCashPerson(listExchangeCashPersonQuery *query.ListExchangeCashPersonQuery) (interface{}, error) { |
| 1003 | if err := listExchangeCashPersonQuery.ValidateQuery(); err != nil { | 1008 | if err := listExchangeCashPersonQuery.ValidateQuery(); err != nil { |
| @@ -1023,7 +1028,48 @@ func (cashPoolService *CashPoolService) ListExchangeCashPerson(listExchangeCashP | @@ -1023,7 +1028,48 @@ func (cashPoolService *CashPoolService) ListExchangeCashPerson(listExchangeCashP | ||
| 1023 | exchangeCashPersonListRepository = value | 1028 | exchangeCashPersonListRepository = value |
| 1024 | } | 1029 | } |
| 1025 | 1030 | ||
| 1026 | - // TODO 增加总榜单查询 | 1031 | + fmt.Print(listExchangeCashPersonQuery, "\n") |
| 1032 | + | ||
| 1033 | + // TODO 返回兑换现金活动总榜 | ||
| 1034 | + if listExchangeCashPersonQuery.ExchangeCashActivityId == 0 && listExchangeCashPersonQuery.CompanyId != 0 { | ||
| 1035 | + // 找到该公司下的所有活动id | ||
| 1036 | + var exchangeActivityRepository domain.ExchangeActivityRepository | ||
| 1037 | + if value, err := factory.CreateExchangeCashActivityRepository(map[string]interface{}{ | ||
| 1038 | + "transactionContext": transactionContext, | ||
| 1039 | + }); err != nil { | ||
| 1040 | + return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | ||
| 1041 | + } else { | ||
| 1042 | + exchangeActivityRepository = value | ||
| 1043 | + } | ||
| 1044 | + | ||
| 1045 | + if _, activities, err := exchangeActivityRepository.Find(map[string]interface{}{ | ||
| 1046 | + "companyId": listExchangeCashPersonQuery.CompanyId, | ||
| 1047 | + }); err != nil { | ||
| 1048 | + return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | ||
| 1049 | + } else { | ||
| 1050 | + var activityIds []int64 | ||
| 1051 | + for _, activity := range activities { | ||
| 1052 | + activityIds = append(activityIds, activity.ActivityId) | ||
| 1053 | + } | ||
| 1054 | + | ||
| 1055 | + if count, people, err := exchangeCashPersonListRepository.FindAll(map[string]interface{}{ | ||
| 1056 | + "exchangeCashActivityIds": activityIds, | ||
| 1057 | + "offset": listExchangeCashPersonQuery.Offset, | ||
| 1058 | + "limit": listExchangeCashPersonQuery.Limit, | ||
| 1059 | + }); err != nil { | ||
| 1060 | + return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | ||
| 1061 | + } else { | ||
| 1062 | + if err := transactionContext.CommitTransaction(); err != nil { | ||
| 1063 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 1064 | + } | ||
| 1065 | + return map[string]interface{}{ | ||
| 1066 | + "count": count, | ||
| 1067 | + "people": people, | ||
| 1068 | + }, nil | ||
| 1069 | + } | ||
| 1070 | + } | ||
| 1071 | + } | ||
| 1072 | + | ||
| 1027 | if count, people, err := exchangeCashPersonListRepository.Find(tool_funs.SimpleStructToMap(listExchangeCashPersonQuery)); err != nil { | 1073 | if count, people, err := exchangeCashPersonListRepository.Find(tool_funs.SimpleStructToMap(listExchangeCashPersonQuery)); err != nil { |
| 1028 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | 1074 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) |
| 1029 | } else { | 1075 | } else { |
| @@ -14,6 +14,7 @@ type ExchangeCashPersonListRepository interface { | @@ -14,6 +14,7 @@ type ExchangeCashPersonListRepository interface { | ||
| 14 | Remove(exchangeCashPersonList *ExchangeCashPersonList) (*ExchangeCashPersonList, error) | 14 | Remove(exchangeCashPersonList *ExchangeCashPersonList) (*ExchangeCashPersonList, error) |
| 15 | FindOne(queryOptions map[string]interface{}) (*ExchangeCashPersonList, error) | 15 | FindOne(queryOptions map[string]interface{}) (*ExchangeCashPersonList, error) |
| 16 | Find(queryOptions map[string]interface{}) (int64, []*ExchangeCashPersonList, error) | 16 | Find(queryOptions map[string]interface{}) (int64, []*ExchangeCashPersonList, error) |
| 17 | + FindAll(queryOptions map[string]interface{}) (int64, []*ExchangeCashPersonList, error) | ||
| 17 | } | 18 | } |
| 18 | 19 | ||
| 19 | func (exchangeCashPersonList *ExchangeCashPersonList) Identity() interface{} { | 20 | func (exchangeCashPersonList *ExchangeCashPersonList) Identity() interface{} { |
| @@ -54,6 +54,45 @@ func (repository *ExchangeCashPersonListRepository) FindOne(queryOptions map[str | @@ -54,6 +54,45 @@ func (repository *ExchangeCashPersonListRepository) FindOne(queryOptions map[str | ||
| 54 | } | 54 | } |
| 55 | } | 55 | } |
| 56 | 56 | ||
| 57 | +// 获取平台所有兑换活动清单(兑换现金活动总清单) | ||
| 58 | +func (repository *ExchangeCashPersonListRepository) FindAll(queryOptions map[string]interface{}) (int64, []*domain.ExchangeCashPersonList, error) { | ||
| 59 | + tx := repository.transactionContext.PgTx | ||
| 60 | + var exchangeCashListModels []*models.ExchangeCashPersonList | ||
| 61 | + exchangeCashPeople := make([]*domain.ExchangeCashPersonList, 0) | ||
| 62 | + query := tx.Model(&exchangeCashListModels) | ||
| 63 | + if exchangeCashActivityIds, ok := queryOptions["exchangeCashActivityIds"]; ok && len(exchangeCashActivityIds.([]int64)) != 0 { | ||
| 64 | + query = query.Where("exchange_cash_person_list.activity_id IN (?)", pg.In(exchangeCashActivityIds.([]int64)) ) | ||
| 65 | + } | ||
| 66 | + if offset, ok := queryOptions["offset"]; ok { | ||
| 67 | + offset := offset.(int) | ||
| 68 | + if offset > -1 { | ||
| 69 | + query = query.Offset(offset) | ||
| 70 | + } | ||
| 71 | + } else { | ||
| 72 | + query = query.Offset(0) | ||
| 73 | + } | ||
| 74 | + if limit, ok := queryOptions["limit"]; ok { | ||
| 75 | + limit := limit.(int) | ||
| 76 | + if limit > -1 { | ||
| 77 | + query = query.Limit(limit) | ||
| 78 | + } | ||
| 79 | + } else { | ||
| 80 | + query = query.Limit(20) | ||
| 81 | + } | ||
| 82 | + if count, err := query.Order("id DESC").SelectAndCount(); err != nil { | ||
| 83 | + return 0, exchangeCashPeople, err | ||
| 84 | + } else { | ||
| 85 | + for _, exchangeCashListModel := range exchangeCashListModels { | ||
| 86 | + if taskNature, err := repository.transformPgModelToDomainModel(exchangeCashListModel); err != nil { | ||
| 87 | + return 0, exchangeCashPeople, err | ||
| 88 | + } else { | ||
| 89 | + exchangeCashPeople = append(exchangeCashPeople, taskNature) | ||
| 90 | + } | ||
| 91 | + } | ||
| 92 | + return int64(count), exchangeCashPeople, nil | ||
| 93 | + } | ||
| 94 | +} | ||
| 95 | + | ||
| 57 | func (repository *ExchangeCashPersonListRepository) Find(queryOptions map[string]interface{}) (int64, []*domain.ExchangeCashPersonList, error) { | 96 | func (repository *ExchangeCashPersonListRepository) Find(queryOptions map[string]interface{}) (int64, []*domain.ExchangeCashPersonList, error) { |
| 58 | tx := repository.transactionContext.PgTx | 97 | tx := repository.transactionContext.PgTx |
| 59 | var exchangeCashListModels []*models.ExchangeCashPersonList | 98 | var exchangeCashListModels []*models.ExchangeCashPersonList |
| @@ -231,6 +231,8 @@ func (controller *SuMoneyController) ListExchangeList () { | @@ -231,6 +231,8 @@ func (controller *SuMoneyController) ListExchangeList () { | ||
| 231 | listExchangeCashListQuery := &query.ListExchangeCashPersonQuery{} | 231 | listExchangeCashListQuery := &query.ListExchangeCashPersonQuery{} |
| 232 | activityId, _ := controller.GetInt64("activityId") | 232 | activityId, _ := controller.GetInt64("activityId") |
| 233 | listExchangeCashListQuery.ExchangeCashActivityId = activityId | 233 | listExchangeCashListQuery.ExchangeCashActivityId = activityId |
| 234 | + companyId, _ := controller.GetInt64("companyId") | ||
| 235 | + listExchangeCashListQuery.CompanyId = companyId | ||
| 234 | exchangeCashPersonNameMatch := controller.GetString("personNameMatch") | 236 | exchangeCashPersonNameMatch := controller.GetString("personNameMatch") |
| 235 | listExchangeCashListQuery.ExchangeCashPersonNameMatch = exchangeCashPersonNameMatch | 237 | listExchangeCashListQuery.ExchangeCashPersonNameMatch = exchangeCashPersonNameMatch |
| 236 | offset, _ := controller.GetInt("offset") | 238 | offset, _ := controller.GetInt("offset") |
-
请 注册 或 登录 后发表评论