public void EnrollUser(Identifier userId, Identifier orgUnitId, Identifier roleId) { EnrollUserRequest request = new EnrollUserRequest() { UserId = userId, OrgUnitId = orgUnitId, RoleId = roleId }; CallWebService <IUserManagementServicev1_0, EnrollUserRequest, EnrollUserResponse>( m_service1_0, request, (s, q) => s.EnrollUser(q)); }
public PetWhizzResponse EnrollUser(EnrollUserRequest EnrollUserRequest) { PetWhizzResponse _oResponse; try { EnrollUserResponse EnrollUserResponse = userServices.EnrollUser(EnrollUserRequest); _oResponse = Utils.CreateSuccessResponse(EnrollUserResponse); } catch (Exception ex) { _oResponse = Utils.CreateErrorResponse(ex); } return(_oResponse); }
internal EnrollUserResponse EnrollUser(EnrollUserRequest EnrollUserRequest) { logger.Debug("Recived enroll user request"); EnrollUserResponse EnrollUserResponse; try { ValidateUserRequest ValidateUserRequest = new ValidateUserRequest() { email = EnrollUserRequest.email, username = EnrollUserRequest.username }; ValidatUser(ValidateUserRequest); EnrollUserRequest.username = Decryptor.Decrypt(EnrollUserRequest.username).Split('|')[1]; EnrollUserRequest.password = Decryptor.Decrypt(EnrollUserRequest.password).Split('|')[1]; EnrollUserRequest.email = Decryptor.Decrypt(EnrollUserRequest.email).Split('|')[1]; EnrollUserRequest.deviceId = Decryptor.Decrypt(EnrollUserRequest.deviceId).Split('|')[1]; String GeneratedToken = Guid.NewGuid().ToString(); int GeneratedCode = new Random().Next(100000, 999999); logger.Debug("Decrypted enroll user request details userName - " + EnrollUserRequest.username + " password - " + EnrollUserRequest.password + " email - " + EnrollUserRequest.email + " deviceId - " + EnrollUserRequest.deviceId); //validating details if (!String.IsNullOrEmpty(EnrollUserRequest.username) && !String.IsNullOrEmpty(EnrollUserRequest.password) && !String.IsNullOrEmpty(EnrollUserRequest.email) && !String.IsNullOrEmpty(EnrollUserRequest.deviceId)) { //setting up user details var user = new user() { createdDate = DateTime.Now, lastUpdatedDate = DateTime.Now, userName = EnrollUserRequest.username, password = EnrollUserRequest.password, eMail = EnrollUserRequest.email, status = "EMAILVERIFY" }; using (var ctx = new PetWhizzEntities()) { //saving user ctx.users.Add(user); ctx.SaveChanges(); //saving user device var userDevice = new userDevice() { deviceId = EnrollUserRequest.deviceId, // deviceName = EnrollUserRequest.deviceName, userId = user.id, }; ctx.userDevices.Add(userDevice); ctx.SaveChanges(); //saving user token var userToken = new userToken() { tokenType = "AUTHTOKEN", useCount = 0, generatedTime = DateTime.Now, userDeviceId = userDevice.id, expiryTime = DateTime.Now.AddSeconds(TokenExpiryTime), token = GeneratedToken, }; ctx.userTokens.Add(userToken); ctx.SaveChanges(); //user verification data var userVerificationInfo = new userVerification() { code = GeneratedCode.ToString(), generatedTime = DateTime.Now, expiryTime = DateTime.Now.AddSeconds(VerificationCodeExpiryTime), isValid = true, userId = user.id, verificationType = "EMAILVERIFY", }; ctx.userVerifications.Add(userVerificationInfo); ctx.SaveChanges(); } SendEmailVerification(user.eMail, user.userName, user.id, GeneratedCode.ToString()); EnrollUserResponse = new EnrollUserResponse() { token = Encryptor.Encrypt(DateTime.Now.ToString("M/d/yyyy h:mm:ss tt") + "|" + GeneratedToken), username = Encryptor.Encrypt(DateTime.Now.ToString("M/d/yyyy h:mm:ss tt") + "|" + user.userName), email = Encryptor.Encrypt(DateTime.Now.ToString("M/d/yyyy h:mm:ss tt") + "|" + user.eMail), status = Encryptor.Encrypt(DateTime.Now.ToString("M/d/yyyy h:mm:ss tt") + "|" + user.status), userId = Encryptor.Encrypt(DateTime.Now.ToString("M/d/yyyy h:mm:ss tt") + "|" + user.id) }; } else { logger.Error("Some of the properties in EnrollUserRequest is null or empty"); throw new CustomException("All propreties should contains a value", (int)ErrorCode.VALIDATIONFAILED); } } catch (CustomException) { throw; } catch (Exception ex) { logger.Error(MethodBase.GetCurrentMethod().Name + ": exception: " + ex.Message + ", " + ex.InnerException); throw new CustomException("SystemError", ex, (int)ErrorCode.PROCEESINGERROR); } return(EnrollUserResponse); }