add allMethod #3
			
				
			
		
		
		
	| 
						 | 
					@ -19,6 +19,8 @@ type CreateOptions struct {
 | 
				
			||||||
	FCMToken     string
 | 
						FCMToken     string
 | 
				
			||||||
	AuthToken    string
 | 
						AuthToken    string
 | 
				
			||||||
	Language     string
 | 
						Language     string
 | 
				
			||||||
 | 
						Model        string
 | 
				
			||||||
 | 
						Manufacturer string
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Create ...
 | 
					// Create ...
 | 
				
			||||||
| 
						 | 
					@ -71,6 +73,8 @@ func (payload CreateOptions) newDevice() (result Device, err error) {
 | 
				
			||||||
		LastActivatedAt: timeNow,
 | 
							LastActivatedAt: timeNow,
 | 
				
			||||||
		CreatedAt:       timeNow,
 | 
							CreatedAt:       timeNow,
 | 
				
			||||||
		FCMToken:        payload.FCMToken,
 | 
							FCMToken:        payload.FCMToken,
 | 
				
			||||||
 | 
							Model:           payload.Model,
 | 
				
			||||||
 | 
							Manufacturer:    payload.Manufacturer,
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// App version
 | 
						// App version
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,52 @@
 | 
				
			||||||
| 
						
							
 | 
				|||||||
 | 
					package devicemngmt
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					import (
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						"context"
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						"github.com/Selly-Modules/mongodb"
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						"go.mongodb.org/mongo-driver/bson"
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					)
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					// FindAllDevicesByUserID ...
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					func (s Service) FindAllDevicesByUserID(userID string) []ResponseDevice {
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						var (
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							ctx    = context.Background()
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							col    = s.getDeviceCollection()
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							docs   = make([]Device, 0)
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							result = make([]ResponseDevice, 0)
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							cond   = bson.M{
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								"userID": mongodb.NewIDFromString(userID),
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							}
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						)
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						// Find
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						cursor, err := col.Find(ctx, cond)
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						if err != nil {
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							return result
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						}
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						defer cursor.Close(ctx)
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						cursor.All(ctx, &docs)
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						// Get response data
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						for _, doc := range docs {
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							result = append(result, ResponseDevice{
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								ID:       doc.ID,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								DeviceID: doc.DeviceID,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								IP:       doc.IP,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								OS: ResponseOS{
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
									Name:    doc.OSName,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
									Version: doc.OSVersion,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								},
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								AppVersion:      doc.AppVersion,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								Language:        doc.Language,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								IsMobile:        doc.IsMobile,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								FCMToken:        doc.FCMToken,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								Model:           doc.Model,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								Manufacturer:    doc.Manufacturer,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								LastActivatedAt: doc.LastActivatedAt,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
								CreatedAt:       doc.CreatedAt,
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
							})
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						}
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
						return result
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
 | 
					}
 | 
				
			||||||
| 
						
							
 dùng 1 model để public ra thôi. Dùng cái Device luôn đi dùng 1 model để public ra thôi. Dùng cái Device luôn đi 
			
		cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi 
			
		done done 
			
		done done  
			
		 | 
				|||||||
							
								
								
									
										24
									
								
								model.go
								
								
								
								
							
							
						
						| 
						 | 
					@ -20,5 +20,29 @@ type Device struct {
 | 
				
			||||||
	UserID          primitive.ObjectID `bson:"userID" json:"userId"`
 | 
						UserID          primitive.ObjectID `bson:"userID" json:"userId"`
 | 
				
			||||||
	AuthToken       string             `bson:"authToken" json:"authToken"`
 | 
						AuthToken       string             `bson:"authToken" json:"authToken"`
 | 
				
			||||||
	FCMToken        string             `bson:"fcmToken" json:"fcmToken"`
 | 
						FCMToken        string             `bson:"fcmToken" json:"fcmToken"`
 | 
				
			||||||
 | 
						Model           string             `bson:"model,omitempty" json:"model,omitempty"`
 | 
				
			||||||
 | 
						Manufacturer    string             `bson:"manufacturer,omitempty" json:"manufacturer,omitempty"`
 | 
				
			||||||
	CreatedAt       time.Time          `bson:"createdAt" json:"createdAt"`
 | 
						CreatedAt       time.Time          `bson:"createdAt" json:"createdAt"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// ResponseOS ...
 | 
				
			||||||
 | 
					type ResponseOS struct {
 | 
				
			||||||
 | 
						Name    string `json:"name"`
 | 
				
			||||||
 | 
						Version string `json:"version"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// ResponseDevice ...
 | 
				
			||||||
 | 
					type ResponseDevice struct {
 | 
				
			||||||
 | 
						ID              primitive.ObjectID `json:"_id"`
 | 
				
			||||||
 | 
						DeviceID        string             `json:"deviceId"`
 | 
				
			||||||
 | 
						IP              string             `json:"ip"`
 | 
				
			||||||
 | 
						OS              ResponseOS         `json:"os"`
 | 
				
			||||||
 | 
						AppVersion      string             `json:"appVersion"`
 | 
				
			||||||
 | 
						Language        string             `json:"language"`
 | 
				
			||||||
 | 
						IsMobile        bool               `json:"isMobile"`
 | 
				
			||||||
 | 
						FCMToken        string             `json:"fcmToken"`
 | 
				
			||||||
 | 
						Model           string             `json:"model,omitempty"`
 | 
				
			||||||
 | 
						Manufacturer    string             `json:"manufacturer,omitempty"`
 | 
				
			||||||
 | 
						LastActivatedAt time.Time          `json:"lastActivatedAt"`
 | 
				
			||||||
 | 
						CreatedAt       time.Time          `json:"createdAt"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
dùng 1 model để public ra thôi. Dùng cái Device luôn đi
dùng 1 model để public ra thôi. Dùng cái Device luôn đi
cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi
cái user id sao phải đưa qua mongo id, nó chỉ là string thôi mà, đã note ở PR cũ rồi
done
done
done
done