package nakedchatorderser import ( "time" "91porn-server/models/cache/nakedchatorderdata" "91porn-server/models/commod" "91porn-server/models/v/nakedchatordermod" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/bson/primitive" ) type WebListReq struct { Uid *uint64 `json:"uid" form:"uid"` // 用户id OrderId *string `json:"orderId" form:"orderId"` // 订单id Nid *string `json:"nid" bson:"nid"` // 裸聊id commod.Page } type WebListRes struct { Total int64 `json:"total"` HasNext bool `json:"hasNext"` List []nakedchatordermod.NakedChatOrder `json:"list"` } // GetList 获取列表 func (q *WebListReq) GetList() (res WebListRes, err error) { filter := bson.M{} if q.OrderId != nil { orderId, _ := primitive.ObjectIDFromHex(*q.OrderId) filter["_id"] = orderId } if q.Uid != nil { filter["uid"] = *q.Uid } if q.Nid != nil { nid, _ := primitive.ObjectIDFromHex(*q.Nid) filter["nid"] = nid } res.List, res.Total, res.HasNext, err = nakedchatordermod.GetList(filter, int64(q.Skip()), int64(q.Limit()), q.GetSort()) return } type WebUpdateReq struct { ID primitive.ObjectID `json:"id" binding:"required"` Status *int `json:"status"` // 0-已下单 1-已完成 } // Update 更新数据 func (p *WebUpdateReq) Update() error { _, err := nakedchatordermod.GetInfo(p.ID) if err != nil { return err } data := make(map[string]interface{}) if p.Status != nil { data["status"] = *p.Status } data["updatedAt"] = time.Now() if _, err = nakedchatorderdata.UpdateData(nil, p.ID.Hex(), data); err != nil { return err } return nil }