public ResponseModel SaveCompany(UserCredientialViewModel model, Company companyOb) { var flag = false; try { UserCredentials userCredentials = new UserCredentials { Id = Guid.NewGuid().ToString(), LoginID = model.LoginID, Password = model.Password, FullName = model.FullName, Email = model.Email, UserTypeId = model.UserTypeId, IsActive = model.IsActive, PhoneNumber = model.PhoneNumber, ImagePath = model.ImagePath, FileId = model.FileId, FileName = model.FileName, CreatedDate = DateTime.Now, CreatedById = model.CreatedById, UpdatedDate = null }; companyOb.Id = Guid.NewGuid().ToString(); companyOb.UserCredentialId = userCredentials.Id; companyOb.CreatedDate = DateTime.Now; UserActiveStatus userActiveStatus = new UserActiveStatus { Id = Guid.NewGuid().ToString(), Status = model.Status, UserCredentialId = userCredentials.Id, CreatedDate = DateTime.Now, CreatedById = model.CreatedById, }; DbContext.Database.BeginTransaction(); flag = true; DbContext.UserCredentials.Add(userCredentials); DbContext.SaveChanges(); DbContext.Company.Add(companyOb); DbContext.UserActiveStatus.Add(userActiveStatus); DbContext.SaveChanges(); flag = false; DbContext.Database.CurrentTransaction.Commit(); return(new ResponseModel { Success = true, Message = "Success" }); } catch (Exception ex) { throw ex; } finally { if (flag) { DbContext.Database.CurrentTransaction.Rollback(); } } }
public ResponseModel SaveUser(UserCredientialViewModel model, List <UserWithPackage> userWithPackage , List <UserWeekDayOff> userWeekDayOffs) { var flag = false; try { UserCredentials userCredentials = new UserCredentials { Id = Guid.NewGuid().ToString(), LoginID = model.LoginID, Password = model.Password, FullName = model.FullName, Email = model.Email, UserTypeId = model.UserTypeId, IsActive = model.IsActive, PhoneNumber = model.PhoneNumber, ImagePath = model.ImagePath, FileId = model.FileId, FileName = model.FileName, CreatedDate = DateTime.Now, CreatedById = model.CreatedById, UpdatedDate = null }; UserCredientialDetail userCredientialDetail = new UserCredientialDetail { UserCredentialId = userCredentials.Id, Gender = model.Gender, Age = CommonHelper.CalculateYourAge(model.DathOfBirth).Years, DathOfBirth = model.DathOfBirth, BloodGroup = model.BloodGroup, Weight = model.Weight, Height = model.Height, Diabetes = model.Diabetes, Allergy = model.Allergy, AllergyDetail = model.AllergyDetail, BP = model.BP, NationalId = model.NationalId, CompanyId = model.CompanyId, CompanyName = model.CompanyName, CompanyAddress = model.Address, Address = model.Address, Department = model.Department, Section = model.Section, Designation = model.Designation, ReferencePersonName = model.ReferencePersonName, ReferencePersonCellNumber = model.ReferencePersonCellNumber, ReplacementMenu = model.ReplacementMenu, SpecialMenu = model.SpecialMenu, WeekDayOff = model.WeekDayOff, SalesExecutiveId = model.SalesExecutiveId, DeliveryManId = model.DeliveryManId, PaidAmount = model.PaidAmount, DueAmount = model.DueAmount, RegistrationAmount = model.RegistrationAmount, Status = model.Status, AccountType = model.AccountType, CreatedDate = DateTime.Now }; UserActiveStatus userActiveStatus = new UserActiveStatus { Id = Guid.NewGuid().ToString(), Status = model.Status, UserCredentialId = userCredentials.Id, CreatedDate = DateTime.Now, CreatedById = model.CreatedById, }; DbContext.Database.BeginTransaction(); flag = true; DbContext.UserCredentials.Add(userCredentials); SaveUserDetail(userCredientialDetail); DbContext.SaveChanges(); DbContext.UserActiveStatus.Add(userActiveStatus); foreach (var item in userWithPackage) { item.Id = Guid.NewGuid().ToString(); item.UserCrediantialId = userCredentials.Id; item.CreatedDate = DateTime.Now; SaveUserAdvance(item); } if (userWeekDayOffs != null) { foreach (var item in userWeekDayOffs) { item.Id = Guid.NewGuid().ToString(); item.UserId = userCredentials.Id; item.CreatedDate = DateTime.Now; SaveUserWeekDayOff(item); } } DbContext.SaveChanges(); flag = false; DbContext.Database.CurrentTransaction.Commit(); return(new ResponseModel { Success = true, Message = "Success" }); } catch (Exception ex) { throw ex; } finally { if (flag) { DbContext.Database.CurrentTransaction.Rollback(); } } }
public ResponseModel UpdateCompany(UserCredientialViewModel model, Company companyOb) { var flag = false; try { var exsitingUser = DbContext.UserCredentials.Where(r => r.Id == model.UserCredentialId).FirstOrDefault(); UserCredentials userCredentials = exsitingUser; userCredentials.LoginID = model.LoginID; userCredentials.FullName = model.FullName; userCredentials.Email = model.Email; userCredentials.IsActive = model.IsActive; userCredentials.PhoneNumber = model.PhoneNumber; userCredentials.UpdatedDate = DateTime.Now; var existingStatus = DbContext.UserActiveStatus.Where(r => r.UserCredentialId == model.UserCredentialId).OrderByDescending(r => r.CreatedDate).First(); UserActiveStatus userActiveStatus = existingStatus; userActiveStatus.Status = model.Status; var existingCompany = DbContext.Company.Where(r => r.Id == companyOb.Id).FirstOrDefault(); Company company = existingCompany; company.IsActive = companyOb.IsActive; company.Name = companyOb.Name; company.PhoneNo = companyOb.PhoneNo; company.Address = companyOb.Address; company.ContactPersonOneName = companyOb.ContactPersonOneName; company.ContactPersonOneNumber = companyOb.ContactPersonOneNumber; company.ContactPersonOneSection = companyOb.ContactPersonOneSection; company.ContactPersonOneDesignation = companyOb.ContactPersonOneDesignation; company.ContactPersonTwoName = companyOb.ContactPersonTwoName; company.ContactPersonTwoNumber = companyOb.ContactPersonTwoNumber; company.ContactPersonTwoSection = companyOb.ContactPersonTwoSection; DbContext.Database.BeginTransaction(); flag = true; var local = DbContext.Set <UserCredentials>().Local.FirstOrDefault(c => c.Id == userCredentials.Id); if (local != null) { DbContext.Entry(local).State = System.Data.Entity.EntityState.Detached; } DbContext.Entry(userCredentials).State = System.Data.Entity.EntityState.Modified; var statusLocal = DbContext.Set <UserActiveStatus>().Local.FirstOrDefault(c => c.Id == userActiveStatus.Id); if (statusLocal != null) { DbContext.Entry(statusLocal).State = System.Data.Entity.EntityState.Detached; } DbContext.Entry(userActiveStatus).State = System.Data.Entity.EntityState.Modified; var companyLocal = DbContext.Set <Company>().Local.FirstOrDefault(c => c.Id == company.Id); if (companyLocal != null) { DbContext.Entry(companyLocal).State = System.Data.Entity.EntityState.Detached; } DbContext.Entry(company).State = System.Data.Entity.EntityState.Modified; DbContext.SaveChanges(); flag = false; DbContext.Database.CurrentTransaction.Commit(); return(new ResponseModel { Success = true, Message = "Success" }); } catch (Exception ex) { throw ex; } finally { if (flag) { DbContext.Database.CurrentTransaction.Rollback(); } } }
public ResponseModel EditProfile(UserCredientialViewModel model, List <UserWeekDayOff> userWeekDayOffs) { var flag = false; try { UserCredentials userCredentials = DbContext.UserCredentials.Where(r => r.Id == model.Id).FirstOrDefault(); userCredentials.FullName = model.FullName; userCredentials.Email = model.Email; userCredentials.IsActive = model.IsActive; userCredentials.PhoneNumber = model.PhoneNumber; userCredentials.ImagePath = model.ImagePath; userCredentials.FileId = model.FileId; userCredentials.FileName = model.FileName; userCredentials.UpdatedDate = DateTime.Now; UserCredientialDetail userCredientialDetail = DbContext.UserCredientialDetail.Where(r => r.UserCredentialId == model.Id).FirstOrDefault(); userCredientialDetail.UserCredentialId = userCredentials.Id; userCredientialDetail.Gender = model.Gender; userCredientialDetail.Age = CommonHelper.CalculateYourAge(model.DathOfBirth).Years; userCredientialDetail.DathOfBirth = model.DathOfBirth; userCredientialDetail.BloodGroup = model.BloodGroup; userCredientialDetail.Weight = model.Weight; userCredientialDetail.Height = model.Height; userCredientialDetail.Diabetes = model.Diabetes; userCredientialDetail.Allergy = model.Allergy; userCredientialDetail.AllergyDetail = model.AllergyDetail; userCredientialDetail.BP = model.BP; userCredientialDetail.NationalId = model.NationalId; userCredientialDetail.CompanyId = model.CompanyId; userCredientialDetail.CompanyName = model.CompanyName; userCredientialDetail.CompanyAddress = model.Address; userCredientialDetail.Address = model.Address; userCredientialDetail.Department = model.Department; userCredientialDetail.Section = model.Section; userCredientialDetail.Designation = model.Designation; userCredientialDetail.ReferencePersonName = model.ReferencePersonName; userCredientialDetail.ReferencePersonCellNumber = model.ReferencePersonCellNumber; userCredientialDetail.ReplacementMenu = model.ReplacementMenu; userCredientialDetail.SpecialMenu = model.SpecialMenu; userCredientialDetail.WeekDayOff = model.WeekDayOff; userCredientialDetail.LunchReceiveAddress = model.LunchReceiveAddress; userCredientialDetail.UpdatedDate = DateTime.Now; UserActiveStatus userActiveStatus = DbContext.UserActiveStatus.Where(r => r.UserCredentialId == userCredentials.Id).OrderByDescending(a => a.CreatedDate).FirstOrDefault(); DbContext.Database.BeginTransaction(); flag = true; DbContext.Entry(userCredentials).State = System.Data.Entity.EntityState.Modified; DbContext.SaveChanges(); DbContext.Entry(userCredientialDetail).State = System.Data.Entity.EntityState.Modified; DbContext.SaveChanges(); if (userWeekDayOffs != null) { foreach (var item in userWeekDayOffs) { if (item.Id == null) { item.Id = Guid.NewGuid().ToString(); item.UserId = userCredentials.Id; item.CreatedDate = DateTime.Now; SaveUserWeekDayOff(item); } else { UserWeekDayOff uw = DbContext.UserWeekDayOff.Where(r => r.Id == item.Id).FirstOrDefault(); uw.UpdatedDate = DateTime.Now; DbContext.Entry(uw).State = System.Data.Entity.EntityState.Modified; } } } DbContext.SaveChanges(); flag = false; DbContext.Database.CurrentTransaction.Commit(); return(new ResponseModel { Success = true, Message = "Success" }); } catch (Exception ex) { throw ex; } finally { if (flag) { DbContext.Database.CurrentTransaction.Rollback(); } } }