diff --git a/internal/logic/public/user/unbindDeviceLogic.go b/internal/logic/public/user/unbindDeviceLogic.go index abdd863..0475d70 100644 --- a/internal/logic/public/user/unbindDeviceLogic.go +++ b/internal/logic/public/user/unbindDeviceLogic.go @@ -44,9 +44,10 @@ func (l *UnbindDeviceLogic) UnbindDevice(req *types.UnbindDeviceRequest) error { return errors.Wrapf(xerr.NewErrCode(xerr.InvalidParams), "device not belong to user") } identifier := device.Identifier + var deleteDevice user.Device + l.svcCtx.DB.Transaction(func(tx *gorm.DB) error { // 业务逻辑修改: 如果解绑; 那么 就把 设备关系 和 邮箱关系 拆开 - var deleteDevice user.Device // 删除了 设备 记录 err = tx.Model(&deleteDevice).Where("id = ?", req.Id).First(&deleteDevice).Error if err != nil { @@ -90,12 +91,12 @@ func (l *UnbindDeviceLogic) UnbindDevice(req *types.UnbindDeviceRequest) error { return nil }) // 最后 创建一个 新的 设备 用户信息 绕过 赠送套餐 - l.registerUserAndDevice(identifier) + l.registerUserAndDevice(identifier, deleteDevice.Ip, deleteDevice.UserAgent) return nil } -func (l *UnbindDeviceLogic) registerUserAndDevice(identifier string) (*user.User, error) { +func (l *UnbindDeviceLogic) registerUserAndDevice(identifier, ip, userAgent string) (*user.User, error) { l.Infow("删除新建 设备 用户", logger.Field("identifier", identifier), ) @@ -142,9 +143,9 @@ func (l *UnbindDeviceLogic) registerUserAndDevice(identifier string) (*user.User // Insert device record deviceInfo := &user.Device{ - Ip: "", + Ip: ip, UserId: userInfo.Id, - UserAgent: "", + UserAgent: userAgent, Identifier: identifier, Enabled: true, Online: false,