add createMethod #2
|
@ -3,31 +3,38 @@ package devicemngmt
|
||||||
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"errors"
|
"errors"
|
||||||
|
"fmt"
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
|
||||||
"github.com/Selly-Modules/logger"
|
"github.com/Selly-Modules/logger"
|
||||||
"github.com/Selly-Modules/mongodb"
|
"github.com/Selly-Modules/mongodb"
|
||||||
ua "github.com/mssola/user_agent"
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
"go.mongodb.org/mongo-driver/bson"
|
"go.mongodb.org/mongo-driver/bson"
|
||||||
)
|
)
|
||||||
|
|
||||||
// DeviceCreate ...
|
// CreateOptions ...
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
type DeviceCreate struct {
|
type CreateOptions struct {
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
DeviceID string
|
DeviceID string
|
||||||
UserID string
|
UserID string
|
||||||
UserAgent string
|
UserAgent string
|
||||||
AppVersion string
|
AppVersion string
|
||||||
IP string
|
IP string
|
||||||
FCMToken string
|
FCMToken string
|
||||||
|
AuthToken string
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() thiếu AuthToken thiếu AuthToken
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
Language string
|
Language string
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create ...
|
// Create ...
|
||||||
func (s Service) Create(payload DeviceCreate) error {
|
func (s Service) Create(payload CreateOptions) error {
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
var (
|
var (
|
||||||
col = s.getDeviceCollection()
|
col = s.getDeviceCollection()
|
||||||
ctx = context.Background()
|
ctx = context.Background()
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Validate payload
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
err := payload.validate()
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
if err != nil {
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
return err
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
}
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
// New device data from payload
|
// New device data from payload
|
||||||
deviceData, err := payload.newDevice()
|
deviceData, err := payload.newDevice()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -43,7 +50,7 @@ func (s Service) Create(payload DeviceCreate) error {
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() done done
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
if !device.ID.IsZero() {
|
if !device.ID.IsZero() {
|
||||||
return errors.New("deviceID already exists")
|
return errors.New("this device is already existed")
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create device
|
// Create device
|
||||||
|
@ -53,78 +60,33 @@ func (s Service) Create(payload DeviceCreate) error {
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() done done
|
|||||||
"doc": deviceData,
|
"doc": deviceData,
|
||||||
"err": err.Error(),
|
"err": err.Error(),
|
||||||
})
|
})
|
||||||
return errors.New("create device fail")
|
return fmt.Errorf("error when create device: %s", err.Error())
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (payload DeviceCreate) newDevice() (result Device, err error) {
|
func (payload CreateOptions) newDevice() (result Device, err error) {
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
timeNow := now()
|
timeNow := now()
|
||||||
device := Device{
|
device := Device{
|
||||||
ID: mongodb.NewObjectID(),
|
ID: mongodb.NewObjectID(),
|
||||||
|
DeviceID: payload.DeviceID,
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
OSName: getOSName(payload.UserAgent),
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
OSVersion: getOSVersion(payload.UserAgent),
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
IP: payload.IP,
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
Language: getLanguage(payload.Language),
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set move ra 1 func khác để set
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
AuthToken: payload.AuthToken,
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
LastActivityAt: timeNow,
|
LastActivityAt: timeNow,
|
||||||
CreatedAt: timeNow,
|
CreatedAt: timeNow,
|
||||||
FCMToken: payload.FCMToken,
|
FCMToken: payload.FCMToken,
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set deviceID
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
if payload.DeviceID == "" {
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
logger.Error("devicemngt - Create: no deviceID data", logger.LogData{
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
"payload": payload,
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
})
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
err = errors.New("no deviceID data")
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
return
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
}
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
device.DeviceID = payload.DeviceID
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
// OSName, OSVersion
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
if payload.UserAgent == "" {
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
logger.Error("devicemngt - Create: no userAgent data", logger.LogData{
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
"payload": payload,
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
})
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
err = errors.New("no userAgent data")
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
return
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
}
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
uaData := ua.New(payload.UserAgent)
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
device.OSName = uaData.OSInfo().Name
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
device.OSVersion = uaData.OSInfo().Version
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
// App version
|
// App version
|
||||||
if payload.AppVersion != "" {
|
if payload.AppVersion != "" {
|
||||||
device.AppVersion = payload.AppVersion
|
device.AppVersion = payload.AppVersion
|
||||||
device.IsMobile = true
|
device.IsMobile = true
|
||||||
}
|
}
|
||||||
|
|
||||||
// IP
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
if payload.IP == "" {
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
logger.Error("devicemngt - Create: no ip data", logger.LogData{
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
"payload": payload,
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
})
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
err = errors.New("no ip data")
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
return
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
}
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
// Language, default is vietnamese(vi)
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
if payload.Language == "" {
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
device.Language = viLanguage
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
} else {
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
device.Language = enLanguage
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
}
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
// userIDe
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
userID, _ := mongodb.NewIDFromString(payload.UserID)
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
if userID.IsZero() {
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
logger.Error("devicemngt - Create: invalid userID data", logger.LogData{
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
"payload": payload,
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
})
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
err = errors.New("invalid userID data")
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
return
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
}
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
// Generate authToken from userID
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
device.AuthToken = s.generateAuthToken(userID)
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
|
|||||||
result = device
|
result = device
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() DeviceCreate -> CreateOptions DeviceCreate -> CreateOptions
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]() deviceID already exists -> this device is already existed deviceID already exists -> this device is already existed
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]()
```go
return fmt.Errorf("error when create device: %s", err.Error())
```
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để validate move ra 1 func khác để validate
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() move ra 1 func khác để set, set cứng move ra 1 func khác để set, set cứng `device.Language = langVi`
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() ko cần check userID là mongo id, ko empty là được ko cần check userID là mongo id, ko empty là được
![]() bỏ cái này bỏ cái này
![]() bỏ cái này bỏ cái này
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() done done
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() đoạn này + đoạn device id iszero, viết thành 1 func khác đoạn này + đoạn device id iszero, viết thành 1 func khác `isDeviceIDExisted` trả về boolean
![]() done done
![]() done done
|
|
@ -1,17 +0,0 @@
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
![]() done done
|
|||||||
package devicemngmt
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
import (
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
"time"
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
"github.com/dgrijalva/jwt-go"
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
)
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
func (s Service) generateAuthToken(userID primitive.ObjectID) string {
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
"_id": userID,
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
"exp": now().Add(time.Second * 15552000).Unix(), // 6 months
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
})
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
tokenString, _ := token.SignedString([]byte(s.AuthSecret))
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
return tokenString
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|||||||
}
|
|
||||||
![]() device làm gì có generate token hè? generate token nằm ở bên User Management chớ device làm gì có generate token hè? generate token nằm ở bên User Management chớ
![]() done done
|
|
@ -2,10 +2,10 @@ package devicemngmt
|
||||||
![]() ko public cái này ko public cái này
![]() ko public cái này ko public cái này
![]()
```go
langVi = "vi"
langEn = "en"
```
![]()
```go
langVi = "vi"
langEn = "en"
```
![]() done done
![]() done done
![]() done done
![]() done done
|
|||||||
|
|
||||||
// Constant ...
|
// Constant ...
|
||||||
const (
|
const (
|
||||||
TableDevice = "devices"
|
tableDevice = "devices"
|
||||||
![]() ko public cái này ko public cái này
![]()
```go
langVi = "vi"
langEn = "en"
```
![]() done done
![]() done done
![]() ko public cái này ko public cái này
![]()
```go
langVi = "vi"
langEn = "en"
```
![]() done done
![]() done done
|
|||||||
|
|
||||||
timezoneHCM = "Asia/Ho_Chi_Minh"
|
timezoneHCM = "Asia/Ho_Chi_Minh"
|
||||||
|
|
||||||
viLanguage = "vi"
|
langVi = "vi"
|
||||||
![]() ko public cái này ko public cái này
![]()
```go
langVi = "vi"
langEn = "en"
```
![]() done done
![]() done done
![]() ko public cái này ko public cái này
![]()
```go
langVi = "vi"
langEn = "en"
```
![]() done done
![]() done done
|
|||||||
enLanguage = "en"
|
langEn = "en"
|
||||||
![]() ko public cái này ko public cái này
![]()
```go
langVi = "vi"
langEn = "en"
```
![]() done done
![]() done done
![]() ko public cái này ko public cái này
![]()
```go
langVi = "vi"
langEn = "en"
```
![]() done done
![]() done done
|
|||||||
)
|
)
|
||||||
|
|
||||||
![]() ko public cái này ko public cái này
![]() ko public cái này ko public cái này
![]()
```go
langVi = "vi"
langEn = "en"
```
![]()
```go
langVi = "vi"
langEn = "en"
```
![]() done done
![]() done done
![]() done done
![]() done done
|
|
@ -19,8 +19,6 @@ type Config struct {
|
||||||
![]() bỏ cái này bỏ cái này
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() done done
![]() done done
|
|||||||
MongoDB MongoDBConfig
|
MongoDB MongoDBConfig
|
||||||
// Table prefix, each service has its own prefix
|
// Table prefix, each service has its own prefix
|
||||||
TablePrefix string
|
TablePrefix string
|
||||||
// Auth secret, used to sign token
|
|
||||||
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
|
|||||||
AuthSecret string
|
|
||||||
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Service ...
|
// Service ...
|
||||||
|
@ -32,9 +30,9 @@ type Service struct {
|
||||||
![]() bỏ cái này bỏ cái này
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() done done
![]() done done
|
|||||||
var s *Service
|
var s *Service
|
||||||
|
|
||||||
// Init ...
|
// Init ...
|
||||||
func Init(config Config) error {
|
func Init(config Config) (*Service, error) {
|
||||||
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
|
|||||||
if config.MongoDB.Host == "" || config.TablePrefix == "" || config.AuthSecret == "" {
|
if config.MongoDB.Host == "" || config.TablePrefix == "" {
|
||||||
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
|
|||||||
return errors.New("please provide all necessary information for init device")
|
return nil, errors.New("please provide all necessary information for init device")
|
||||||
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Connect MongoDB
|
// Connect MongoDB
|
||||||
|
@ -48,7 +46,7 @@ func Init(config Config) error {
|
||||||
![]() bỏ cái này bỏ cái này
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() done done
![]() done done
|
|||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("Cannot init module DEVICE MANAGEMENT", err)
|
fmt.Println("Cannot init module DEVICE MANAGEMENT", err)
|
||||||
return err
|
return nil, err
|
||||||
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
|
|||||||
}
|
}
|
||||||
|
|
||||||
s = &Service{
|
s = &Service{
|
||||||
|
@ -56,7 +54,7 @@ func Init(config Config) error {
|
||||||
![]() bỏ cái này bỏ cái này
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() done done
![]() done done
|
|||||||
DB: db,
|
DB: db,
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return s, nil
|
||||||
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
|
|||||||
}
|
}
|
||||||
|
|
||||||
// GetInstance ...
|
// GetInstance ...
|
||||||
|
|
||||||
![]() bỏ cái này bỏ cái này
![]() bỏ cái này bỏ cái này
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() return thêm Service về nữa
return thêm Service về nữa
```go
func Init(config Config) (*Service, error) {
// ...
return s, nil
}
```
![]() done done
![]() done done
![]() done done
![]() done done
|
21
helper.go
|
@ -3,10 +3,29 @@ package devicemngmt
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
![]() done done
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
|
ua "github.com/mssola/user_agent"
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
"go.mongodb.org/mongo-driver/mongo"
|
"go.mongodb.org/mongo-driver/mongo"
|
||||||
)
|
)
|
||||||
|
|
||||||
// getDeviceCollection ...
|
// getDeviceCollection ...
|
||||||
func (s Service) getDeviceCollection() *mongo.Collection {
|
func (s Service) getDeviceCollection() *mongo.Collection {
|
||||||
return s.DB.Collection(fmt.Sprintf("%s-%s", s.TablePrefix, TableDevice))
|
return s.DB.Collection(fmt.Sprintf("%s-%s", s.TablePrefix, tableDevice))
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
}
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
func getOSName(userAgent string) string {
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
uaData := ua.New(userAgent)
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
return uaData.OSInfo().Name
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
}
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
func getOSVersion(userAgent string) string {
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
uaData := ua.New(userAgent)
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
return uaData.OSInfo().Version
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
}
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
func getLanguage(lang string) string {
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
// Language, default is vietnamese(vi)
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
if lang == langEn {
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
return langEn
|
||||||
![]() chỗ này return luôn chớ? chỗ này return luôn chớ?
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
![]() done done
|
|||||||
|
}
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
|
return langVi
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
|
|||||||
}
|
}
|
||||||
|
|
||||||
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() gom code khúc này thành func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false gom code khúc này thành `return !device.ID.IsZero()`
func này check device có tồn tại ko, nên nếu tồn tại trả true, ko tồn tại trả false
![]() done done
![]() done done
|
26
model.go
|
@ -8,17 +8,17 @@ import (
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() done done
|
|||||||
|
|
||||||
// Device ...
|
// Device ...
|
||||||
type Device struct {
|
type Device struct {
|
||||||
![]() define thêm define thêm `json` vào metadata
![]() done done
|
|||||||
ID primitive.ObjectID `bson:"_id"`
|
ID primitive.ObjectID `bson:"_id" json:"_id"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
DeviceID string `bson:"deviceID"` // unique
|
DeviceID string `bson:"deviceID" json:"deviceID"` // unique
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
IP string `bson:"ip"`
|
IP string `bson:"ip" json:"ip"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
OSName string `bson:"osName"`
|
OSName string `bson:"osName" json:"osName"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
OSVersion string `bson:"osVersion"`
|
OSVersion string `bson:"osVersion" json:"osVersion"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
AppVersion string `bson:"appVersion"`
|
AppVersion string `bson:"appVersion" json:"appVersion"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
Language string `bson:"language"` // vi, en
|
Language string `bson:"language" json:"language"` // vi, en
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
IsMobile bool `bson:"isMobile"`
|
IsMobile bool `bson:"isMobile" json:"isMobile"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
LastActivityAt time.Time `bson:"lastActivityAt"`
|
LastActivityAt time.Time `bson:"lastActivityAt" json:"lastActivityAt"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
UserID primitive.ObjectID `bson:"userID"`
|
UserID primitive.ObjectID `bson:"userID" json:"userID"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
AuthToken string `bson:"authToken"`
|
AuthToken string `bson:"authToken" json:"authToken"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
FCMToken string `bson:"fcmToken"`
|
FCMToken string `bson:"fcmToken" json:"fcmToken"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
CreatedAt time.Time `bson:"createdAt"`
|
CreatedAt time.Time `bson:"createdAt" json:"createdAt"`
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() done done
|
|||||||
}
|
}
|
||||||
|
|
||||||
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() deviceId, json dùng camel case, sửa luôn các id khác deviceId, json dùng camel case, sửa luôn các id khác
![]() done done
![]() done done
![]() LastActivatedAt LastActivatedAt
![]() LastActivatedAt LastActivatedAt
![]() done done
![]() done done
|
|
@ -0,0 +1,51 @@
|
||||||
|
package devicemngmt
|
||||||
|
|
||||||
|
import (
|
||||||
|
"errors"
|
||||||
|
|
||||||
|
"github.com/Selly-Modules/logger"
|
||||||
|
)
|
||||||
|
|
||||||
|
func (co CreateOptions) validate() error{
|
||||||
|
// DeviceID
|
||||||
|
if co.DeviceID == "" {
|
||||||
|
logger.Error("devicemngt - Create: no deviceID data", logger.LogData{
|
||||||
|
"payload": co,
|
||||||
|
})
|
||||||
|
return errors.New("no deviceID data")
|
||||||
|
}
|
||||||
|
|
||||||
|
// UserAgent
|
||||||
|
if co.UserAgent == "" {
|
||||||
|
logger.Error("devicemngt - Create: no userAgent data", logger.LogData{
|
||||||
|
"payload": co,
|
||||||
|
})
|
||||||
|
return errors.New("no userAgent data")
|
||||||
|
}
|
||||||
|
|
||||||
|
// IP
|
||||||
|
if co.IP == "" {
|
||||||
|
logger.Error("devicemngt - Create: no ip data", logger.LogData{
|
||||||
|
"payload": co,
|
||||||
|
})
|
||||||
|
return errors.New("no ip data")
|
||||||
|
}
|
||||||
|
|
||||||
|
// UserID
|
||||||
|
if co.UserID == "" {
|
||||||
|
logger.Error("devicemngt - Create: no userID data", logger.LogData{
|
||||||
|
"payload": co,
|
||||||
|
})
|
||||||
|
return errors.New("no userID data")
|
||||||
|
}
|
||||||
|
|
||||||
|
// AuthToken
|
||||||
|
if co.AuthToken == "" {
|
||||||
|
logger.Error("devicemngt - Create: no authToken data", logger.LogData{
|
||||||
|
"payload": co,
|
||||||
|
})
|
||||||
|
return errors.New("no authToken data")
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
DeviceCreate -> CreateOptions
DeviceCreate -> CreateOptions
deviceID already exists -> this device is already existed
deviceID already exists -> this device is already existed
move ra 1 func khác để validate
move ra 1 func khác để validate
move ra 1 func khác để validate
move ra 1 func khác để validate
move ra 1 func khác để validate
move ra 1 func khác để validate
move ra 1 func khác để set, set cứng
device.Language = langVi
move ra 1 func khác để set, set cứng
device.Language = langVi
ko cần check userID là mongo id, ko empty là được
ko cần check userID là mongo id, ko empty là được
bỏ cái này
bỏ cái này
done
done
done
done
done
done
done
done
done
done
done
done
done
done
done
done
done
done
đoạn này + đoạn device id iszero, viết thành 1 func khác
isDeviceIDExisted
trả về booleanđoạn này + đoạn device id iszero, viết thành 1 func khác
isDeviceIDExisted
trả về booleandone
done