public WorkerUserDto UpdateFranchiseWorker(WorkerUserDto franchiseAdminDto) { using (var dbContext = new OmContext()) { try { var user = dbContext.Users.FirstOrDefault(a => a.Email == franchiseAdminDto.Email); if (user != null) { var worker = dbContext.Workers.FirstOrDefault(a => a.UserId == franchiseAdminDto.UserId); if (worker != null) { worker.WorkCategoryId = franchiseAdminDto.WorkCategoryId; } user.Name = franchiseAdminDto.Name; user.Email = franchiseAdminDto.Email; user.Password = franchiseAdminDto.Password; user.cnic = franchiseAdminDto.cnic; user.phone = franchiseAdminDto.phone; dbContext.SaveChanges(); return(new WorkerUserDto { UserId = user.UserId, Name = user.Name, Email = user.Email, Password = user.Password, cnic = user.cnic, WorkCategoryId = worker.WorkCategoryId, phone = user.phone }); } return(franchiseAdminDto); } catch (Exception e) { return(null); } } }
public WorkerUserDto AddFranchiseWorker(WorkerUserDto userDto, int userId) { using (var dbContext = new OmContext()) { try { var franchise = (from f in dbContext.Franchises join fa in dbContext.FranchiseAdmins on f.FranchiseId equals fa.FranchiseId where fa.UserId == userId select f).FirstOrDefault(); if (franchise != null) { var user = dbContext.Users.FirstOrDefault(a => a.Email == userDto.Email); if (user == null) { User newUser = new User() { Name = userDto.Name, Email = userDto.Email, Password = userDto.Password, cnic = userDto.cnic, phone = userDto.phone }; dbContext.Users.Add(newUser); var role = dbContext.Roles.FirstOrDefault(r => r.Title == "Worker"); if (role != null) { var userRole = new UserRole { UserId = newUser.UserId, RoleId = role.RoleId }; dbContext.UserRoles.Add(userRole); dbContext.SaveChanges(); Worker newWorker = new Worker() { FranchiseId = franchise.FranchiseId, UserId = newUser.UserId, WorkCategoryId = userDto.WorkCategoryId, status = -1 }; dbContext.Workers.Add(newWorker); dbContext.SaveChanges(); return(new WorkerUserDto { UserId = newUser.UserId, Name = newUser.Name, Email = newUser.Email, Password = newUser.Password, cnic = newUser.cnic, WorkCategoryId = userDto.WorkCategoryId, phone = userDto.phone }); } } } return(null); } catch (Exception e) { return(null); } } }