public Dictionary <string, object> addCustomer(string FirstName, string LastName, string Email, string Password, string Telephone) { Dictionary <string, object> dic = new Dictionary <string, object>(); using (var tran = gc.db.Database.BeginTransaction()) { try { //string body = "Welcome to SCL Portal.\n\nYour Account Details are \n\n username: "******"\n\n Password: "******"\n\n\n Thank You\n\n"; SCL_Customer cr = new SCL_Customer(); cr.FirstName = FirstName; cr.LastName = LastName; cr.EmailAddress = Email; cr.Username = Email; cr.Telephone = Telephone; cr.Password = Password; cr.Status = "Active"; cr.IsActive = true; cr.CustomerID = 1; cr.CreatedDateTime = DateTime.Now; gc.db.SCL_Customer.Add(cr); int n = gc.db.SaveChanges(); if (n > 0) { SCL_Login login = new SCL_Login(); login.CID = cr.CustomerID; login.username = cr.EmailAddress; login.password = cr.Password; login.status = "Active"; login.cdate = DateTime.Now; login.type = "CUSTOMER"; gc.db.SCL_Login.Add(login); int m = gc.db.SaveChanges(); if (m > 0) { tran.Commit(); dic.Add("success", "success"); } else { tran.Rollback(); dic.Add("Error", "Error"); } } else { dic.Add("error", "No results found!"); } } catch (System.Data.Entity.Validation.DbEntityValidationException dbEx) { tran.Rollback(); Exception raise = dbEx; foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { string message = string.Format("{0}:{1}", validationErrors.Entry.Entity.ToString(), validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException raise = new InvalidOperationException(message, raise); } } dic.Add("error", raise.Message); } } return(dic); }
public Dictionary <string, object> addCompany(HttpFileCollectionBase files, string FreeTrail, SCL_CompanyRegistration UserFormData, string Browser) { Dictionary <string, object> dic = new Dictionary <string, object>(); var subDate = DateTime.Now; var SubEndDate = DateTime.Now; if (FreeTrail.Equals("YES")) { SubEndDate = subDate.AddDays(30); } else { SubEndDate = subDate.AddDays(10); } using (var tran = gc.db.Database.BeginTransaction()) { try { string file_name = ""; string fname = ""; List <string> fileNameList = new List <string>(); if (files.Count > 0) { // Get all files from Request object for (int i = 0; i < files.Count; i++) { HttpPostedFileBase file = files[i]; if (Browser == "IE" || Browser == "INTERNETEXPLORER") { string[] testfiles = file.FileName.Split(new char[] { '\\' }); fname = testfiles[testfiles.Length - 1]; } else { fname = file.FileName; } fname = file.FileName; file_name = string.Format("{0}-{1}", DateTime.Now.ToString("ddMMMyyyyHHmmss"), fname.Replace("-", "")); fname = Path.Combine(HttpContext.Current.Server.MapPath("~/Attachments/"), file_name); file.SaveAs(fname); fileNameList.Add(file_name); } } //string password_ln = CreateRandomPassword(8); string body = "Welcome to Leads Portal.\n\nYour Account Details are \n\n username: "******"\n\n Password: "******"\n\n\n Thank You\n\n"; UserFormData.company_status = "Active"; UserFormData.cdate = subDate; UserFormData.Flag = FreeTrail; UserFormData.SubscriptionEndDate = SubEndDate; UserFormData.company_uniqueID = "Not Required"; UserFormData.ProfilePicture = fileNameList[0]; gc.db.SCL_CompanyRegistration.Add(UserFormData); int n = gc.db.SaveChanges(); if (n > 0) { SCL_UserRoles role = new SCL_UserRoles(); role.RoleName = "Admin"; role.CreatedBy = UserFormData.CID; role.CompanyID = UserFormData.CID; role.CreatedDateTime = subDate; role.Status = "Active"; gc.db.SCL_UserRoles.Add(role); gc.db.SaveChanges(); SCL_UserDepartments dep = new SCL_UserDepartments(); dep.DepartmentName = "Admin"; dep.CreatedBy = UserFormData.CID; dep.CompanyID = UserFormData.CID; dep.CreatedDateTime = subDate; dep.Status = "Active"; gc.db.SCL_UserDepartments.Add(dep); gc.db.SaveChanges(); SCL_Users users = new SCL_Users(); users.UserName = UserFormData.company_email; users.UserPass = UserFormData.company_password; users.RoleID = role.ID; users.DepartmentID = dep.DepartmentID; users.FirstName = UserFormData.first_name; users.LastName = UserFormData.last_name; users.EmailID = UserFormData.company_email; users.CompanyID = UserFormData.CID; users.Status = "Active"; users.CreatedBy = UserFormData.CID; users.CreatedDateTime = subDate; users.userType = "Admin"; gc.db.SCL_Users.Add(users); int x = gc.db.SaveChanges(); List <SCL_UserRoleScreenMapping> RoleScreenList = gc.db.SCL_UserRoleScreenMapping .Where(u => u.RoleID == users.RoleID && u.CompanyID == users.CompanyID).ToList(); foreach (SCL_UserRoleScreenMapping g in RoleScreenList) { SCL_UserwiseScreenMapping USM = new SCL_UserwiseScreenMapping(); USM.CompanyID = users.CompanyID; USM.CreatedBy = users.CompanyID; USM.CreatedDateTime = subDate; USM.ScreenID = g.ScreenID; USM.UserID = users.ID; gc.db.SCL_UserwiseScreenMapping.Add(USM); } gc.db.SaveChanges(); SCL_Login login = new SCL_Login(); login.CID = UserFormData.CID; login.username = UserFormData.company_email; login.password = UserFormData.company_password; login.status = "Active"; login.cdate = subDate; login.type = "ADMIN"; login.SubscriptionEndDate = SubEndDate; login.Flag = FreeTrail; gc.db.SCL_Login.Add(login); int m = gc.db.SaveChanges(); if (m > 0 && x > 0) { Elasticmail.SendEmail(UserFormData.company_email, "Leads Account Details", body, "", "*****@*****.**", "Leads", ""); tran.Commit(); dic.Add("success", "success"); } else { tran.Rollback(); dic.Add("Error", "Error"); } } else { dic.Add("error", "No results found!"); } } catch (System.Data.Entity.Validation.DbEntityValidationException dbEx) { tran.Rollback(); Exception raise = dbEx; foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { string message = string.Format("{0}:{1}", validationErrors.Entry.Entity.ToString(), validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException raise = new InvalidOperationException(message, raise); } } dic.Add("error", raise.Message); } } return(dic); }