diff --git a/api/controller/OrderMember.go b/api/controller/OrderMember.go index 6f24a9c..d899be1 100644 --- a/api/controller/OrderMember.go +++ b/api/controller/OrderMember.go @@ -5,11 +5,13 @@ import ( "github.com/gin-gonic/gin" "hepa-calc-api/api/dao" "hepa-calc-api/api/dto" + "hepa-calc-api/api/model" "hepa-calc-api/api/requests" "hepa-calc-api/api/responses" "hepa-calc-api/api/service" "hepa-calc-api/global" "hepa-calc-api/utils" + "math" "strconv" "time" ) @@ -354,36 +356,126 @@ func (b *OrderMember) GetOrderMemberRecentList(c *gin.Context) { return } + // 增加虚假数据 + createdAt := []model.LocalTime{ + model.LocalTime(time.Now()), + model.LocalTime(time.Now().Add(-10 * time.Hour)), + model.LocalTime(time.Now().Add(-20 * time.Hour)), + model.LocalTime(time.Now().Add(-30 * time.Hour)), + model.LocalTime(time.Now().Add(-40 * time.Hour)), + model.LocalTime(time.Now().Add(-50 * time.Hour)), + model.LocalTime(time.Now().Add(-70 * time.Hour)), + model.LocalTime(time.Now().Add(-90 * time.Hour)), + model.LocalTime(time.Now().Add(-100 * time.Hour)), + model.LocalTime(time.Now().Add(-105 * time.Hour)), + model.LocalTime(time.Now().Add(-110 * time.Hour)), + model.LocalTime(time.Now().Add(-115 * time.Hour)), + model.LocalTime(time.Now().Add(-120 * time.Hour)), + model.LocalTime(time.Now().Add(-125 * time.Hour)), + model.LocalTime(time.Now().Add(-130 * time.Hour)), + model.LocalTime(time.Now().Add(-135 * time.Hour)), + } + + userName := []string{ + "邹**", + "王**", + "刘**", + "吴*", + "欧*", + "国**", + "图**", + "赵**", + "刘*", + "陈**", + "郝*", + "杨*", + "魏*", + "周*", + "宋**", + "马**", + } + + avatar := []string{ + "/user/avatar/999999.jpeg", + "/user/avatar/888888.jpeg", + "/user/avatar/7777777.jpeg", + "/user/avatar/666666.jpeg", + "/user/avatar/555555.jpeg", + "/user/avatar/444444.jpeg", + "/user/avatar/161616.jpeg", + "/user/avatar/151515.jpeg", + "/user/avatar/151515.jpeg", + "/user/avatar/141414.jpeg", + "/user/avatar/12121212.jpeg", + "/user/avatar/131313.jpeg", + "/user/avatar/111111.jpeg", + "/user/avatar/100000.jpeg", + "/user/avatar/444444.jpeg", + "/user/avatar/151515.jpeg", + } + // 处理返回值 - g := make([]*dto.OrderMemberRecentListDto, len(orderMembers)) + g := make([]*dto.OrderMemberRecentDto, 15) + + systemMemberDao := dao.SystemMemberDao{} + maps = make(map[string]interface{}) + systemMembers, err := systemMemberDao.GetSystemMemberList(maps) + if err != nil { + responses.FailWithMessage(err.Error(), c) + return + } userDao := dao.UserDao{} - for i, member := range orderMembers { - response := &dto.OrderMemberRecentListDto{ - OrderId: fmt.Sprintf("%d", member.OrderId), - UserId: fmt.Sprintf("%d", member.UserId), - SystemMemberId: fmt.Sprintf("%d", member.SystemMemberId), - CreatedAt: member.CreatedAt, + for i := 0; i < 15; i++ { + if len(orderMembers) > i { + response := &dto.OrderMemberRecentDto{ + OrderId: fmt.Sprintf("%d", orderMembers[i].OrderId), + UserId: fmt.Sprintf("%d", orderMembers[i].UserId), + SystemMemberId: fmt.Sprintf("%d", orderMembers[i].SystemMemberId), + CreatedAt: orderMembers[i].CreatedAt, + } + + // 获取用户数据 + maps = make(map[string]interface{}) + maps["user_id"] = orderMembers[i].UserId + user, err := userDao.GetUser(maps) + if err != nil { + responses.FailWithMessage(err.Error(), c) + return + } + response.UserName = utils.MaskNameStr(user.UserName, 2) + response.UserAvatar = utils.AddOssDomain(user.Avatar) + + response.MemberDays = orderMembers[i].SystemMember.MemberDays + + // 处理时间 + createdAt := time.Time(orderMembers[i].CreatedAt) + response.TimeDesc = utils.TimeToAgoString(createdAt) + + g[i] = response + } else { + response := &dto.OrderMemberRecentDto{ + OrderId: fmt.Sprintf("%d", i), + UserId: fmt.Sprintf("%d", i), + SystemMemberId: fmt.Sprintf("%d", 1), + CreatedAt: createdAt[i], + } + + response.UserName = utils.MaskNameStr(userName[i], 2) + response.UserAvatar = utils.AddOssDomain(avatar[i]) + + if i == 0 { + response.MemberDays = systemMembers[0].MemberDays + } else { + response.MemberDays = systemMembers[int(math.Floor(float64(i)/4))].MemberDays + } + + // 处理时间 + createdAt := time.Time(createdAt[i]) + response.TimeDesc = utils.TimeToAgoString(createdAt) + + g[i] = response } - - // 获取用户数据 - maps = make(map[string]interface{}) - maps["user_id"] = member.UserId - user, err := userDao.GetUser(maps) - if err != nil { - responses.FailWithMessage(err.Error(), c) - return - } - response.UserName = utils.MaskNameStr(user.UserName, 2) - response.UserAvatar = utils.AddOssDomain(user.Avatar) - - response.MemberDays = member.SystemMember.MemberDays - - // 处理时间 - createdAt := time.Time(member.CreatedAt) - response.TimeDesc = utils.TimeToAgoString(createdAt) - - g[i] = response } responses.OkWithData(g, c) diff --git a/api/dto/OrderMember.go b/api/dto/OrderMember.go index d50989b..3d1bec5 100644 --- a/api/dto/OrderMember.go +++ b/api/dto/OrderMember.go @@ -52,8 +52,8 @@ type OrderMemberPayStatusDto struct { ValidDate *model.LocalTime `json:"valid_date"` // 到期时间 } -// OrderMemberRecentListDto 会员订单列表-最近下单 -type OrderMemberRecentListDto struct { +// OrderMemberRecentDto 会员订单列表-最近下单 +type OrderMemberRecentDto struct { OrderId string `json:"order_id"` // 主键id UserId string `json:"user_id"` // 用户id SystemMemberId string `json:"system_member_id"` // 会员id @@ -135,13 +135,13 @@ func GetOrderMemberPayStatus(m *model.OrderMember) *OrderMemberPayStatusDto { } // GetOrderMemberRecentListDto 获取会员订单列表-最近下单 -func GetOrderMemberRecentListDto(m []*model.OrderMember) []*OrderMemberRecentListDto { +func GetOrderMemberRecentListDto(m []*model.OrderMember) []*OrderMemberRecentDto { // 处理返回值 - responses := make([]*OrderMemberRecentListDto, len(m)) + responses := make([]*OrderMemberRecentDto, len(m)) if len(m) > 0 { for i, v := range m { - response := &OrderMemberRecentListDto{ + response := &OrderMemberRecentDto{ OrderId: fmt.Sprintf("%d", v.OrderId), UserId: fmt.Sprintf("%d", v.UserId), SystemMemberId: fmt.Sprintf("%d", v.SystemMemberId),