Exemplo n.º 1
0
        public bool EditUser(long id, string name, string email, string password, string phone, long roleId)
        {
            User newUser;
            // bool flag = false;
            string hashPassword = password;

            using (var db = new TimeTrackerModelContainer())
            {
                newUser = db.User.First(x => x.Id == id);
                //var role = db.Role.First(x=>x.Id == )

                if (password != null)
                {
                    newUser.Password = HashPassword(hashPassword, password);
                }

                if (roleId != 0)
                {
                    newUser.RoleId = roleId;
                }

                newUser.Id    = id;
                newUser.Name  = name;
                newUser.Phone = phone;

                db.Entry(newUser).State = EntityState.Modified;

                db.SaveChanges();

                //flag = true;
            }

            return(true);
        }
Exemplo n.º 2
0
        public bool EditCurrency(long id, string code, Nullable <bool> isDefault, string priceToDefault)
        {
            bool flag = false;

            Currency newCurrency = new Currency();


            using (var db = new TimeTrackerModelContainer())
            {
                var result = db.Currency.First(x => x.Id == id);

                newCurrency.Id             = result.Id;
                newCurrency.Code           = code;
                newCurrency.IsDefault      = isDefault;
                newCurrency.PriceToDefault = priceToDefault;

                var s = db.Set <Currency>().Local.FirstOrDefault(x => x.Id == id);

                if (s != null)
                {
                    db.Entry(s).State = EntityState.Detached;
                }

                if (result.Id == id)
                {
                    db.Entry(newCurrency).State = EntityState.Modified;

                    db.SaveChanges();

                    flag = true;
                }
            }

            return(flag);
        }
Exemplo n.º 3
0
        public List <UserDto> GetAllUser()
        {
            List <UserDto> list = new List <UserDto>();

            using (var db = new TimeTrackerModelContainer())
            {
                var userList = db.User.AsEnumerable().ToList();

                foreach (var temp in userList)
                {
                    list.Add(new UserDto
                    {
                        Id       = temp.Id,
                        Name     = temp.Name,
                        Phone    = temp.Phone,
                        Email    = temp.Email,
                        Token    = temp.Token,
                        RoleId   = temp.RoleId,
                        RoleName = db.Role.First(x => x.Id == temp.RoleId).Key
                    });
                }
            }

            return(list);
        }
Exemplo n.º 4
0
        public bool EditProject(long id, string projectName, DateTime?deadLine, Nullable <short> effortInHours,
                                Nullable <decimal> effortInCurrency, long currencyId, long teamId, long statusId, long clientId)
        {
            bool flag       = false;
            var  newProject = new Project
            {
                Id               = id,
                Name             = projectName,
                DeadLine         = deadLine,
                EffortInHours    = effortInHours,
                EffortInCurrency = effortInCurrency,
                TeamId           = teamId,
                StatusId         = statusId,
                ClientId         = clientId,
                CurrencyId       = currencyId
            };

            using (var db = new TimeTrackerModelContainer())
            {
                db.Entry(newProject).State = EntityState.Modified;
                db.SaveChanges();
                flag = true;
            }
            return(flag);
        }
Exemplo n.º 5
0
 public TimeRecord GetTimeRecordByTodoId(long id)
 {
     using (var db = new TimeTrackerModelContainer())
     {
         return(db.TimeRecord.FirstOrDefault(x => x.TodoId == id));
     }
 }
Exemplo n.º 6
0
        public List <TeamDetailsResponseDto> GetTeamDetails(long id)
        {
            List <TeamDetailsResponseDto> teamDetails = new List <TeamDetailsResponseDto>();

            using (var db = new TimeTrackerModelContainer())
            {
                var result = db.UserTeamLink.AsEnumerable().Where(x => x.TeamId == id);

                foreach (var list in result)
                {
                    teamDetails.Add(new TeamDetailsResponseDto
                    {
                        Id           = list.Id,
                        UserName     = list.User.Name,
                        UserID       = list.UserID,
                        TeamName     = list.Team.Name,
                        Currency     = list.Currency.Code,
                        PublicPrice  = list.PublicPrice,
                        PrivatePrice = list.PrivatePrice,
                        TeamId       = list.Team.Id
                    });
                }
            }

            return(teamDetails);
        }
Exemplo n.º 7
0
        public bool EditTeamDetails(TeamDetailsResponseDto request)
        {
            bool flag     = false;
            Team editTeam = new Team
            {
                Id   = request.TeamId,
                Name = request.TeamName
            };

            using (var db = new TimeTrackerModelContainer())
            {
                var userTeamLink = db.UserTeamLink.First(x => x.Id == request.Id);
                userTeamLink.CurrencyId   = request.CurrencyId;
                userTeamLink.TeamId       = userTeamLink.TeamId;
                userTeamLink.PrivatePrice = request.PrivatePrice;
                userTeamLink.PublicPrice  = request.PublicPrice;

                editTeam.Id = userTeamLink.TeamId;

                db.Entry(editTeam).State     = EntityState.Modified;
                db.Entry(userTeamLink).State = EntityState.Modified;
                db.SaveChanges();
                flag = true;
            }

            return(flag);
        }
Exemplo n.º 8
0
        public List <ProjectDto> GetAllProject()
        {
            List <ProjectDto> list = new List <ProjectDto>();

            using (var db = new TimeTrackerModelContainer())
            {
                var result = db.Project.AsEnumerable().ToList();

                foreach (var temp in result)
                {
                    list.Add(new ProjectDto
                    {
                        Id               = temp.Id,
                        Name             = temp.Name,
                        DeadLine         = temp.DeadLine,
                        EffortInHours    = temp.EffortInHours,
                        EffortInCurrency = temp.EffortInCurrency,
                        TeamId           = temp.TeamId,
                        StatusId         = temp.StatusId,
                        ClientId         = temp.ClientId
                    });
                }
            }

            return(list);
        }
Exemplo n.º 9
0
        public Status EditStatus(StatusRequest request)
        {
            Status newStatus = new Status();

            using (var db = new TimeTrackerModelContainer())
            {
                var result = db.Status.First(x => x.Id == request.Id);
                newStatus.Id          = request.Id;
                newStatus.Name        = request.Name;
                newStatus.StateTypeId = request.status;

                var s = db.Set <Status>().Local.FirstOrDefault(x => x.Id == request.Id);

                if (s != null)
                {
                    db.Entry(s).State = EntityState.Detached;
                }

                if (result.Id == request.Id)
                {
                    db.Entry(newStatus).State = EntityState.Modified;

                    db.SaveChanges();
                }
            }

            return(newStatus);
        }
Exemplo n.º 10
0
        public List <ProjectDetailsResponse> GetAllProjectByTeamId(long id)
        {
            var list = new List <ProjectDetailsResponse>();

            using (var db = new TimeTrackerModelContainer())
            {
                var result = db.Project.AsEnumerable().Where(x => x.TeamId == id);

                foreach (var tempList in result)
                {
                    list.Add(new ProjectDetailsResponse
                    {
                        Id               = tempList.Id,
                        ProjectName      = tempList.Name,
                        DeadLine         = tempList.DeadLine,
                        EffortInHours    = tempList.EffortInHours,
                        EffortInCurrency = tempList.EffortInCurrency,
                        TeamName         = tempList.Team.Name,
                        StatusName       = tempList.Status.Name,
                        Clientname       = tempList.Client.Website,
                        Currency         = db.Currency.First(x => x.Id == tempList.CurrencyId).Code
                    });
                }
            }

            return(list);
        }
Exemplo n.º 11
0
 public Status GetStatus(States status)
 {
     using (var db = new TimeTrackerModelContainer())
     {
         return(db.Status.First(x => x.Name.Equals(status.ToString())));
     }
 }
Exemplo n.º 12
0
        public bool EditPermission(long id, string key, PermissionTypeEnum permissionType)
        {
            bool       flag       = false;
            Permission permission = new Permission
            {
                Id  = id,
                Key = key,
                PermissionTypeId = permissionType
            };

            using (var db = new TimeTrackerModelContainer())
            {
                var result = db.Permission.First(x => x.Id == id);
                var s      = db.Set <Permission>().Local.FirstOrDefault(x => x.Id == id);

                if (s != null)
                {
                    db.Entry(s).State = EntityState.Detached;
                }

                if (result.Id == id)
                {
                    db.Entry(permission).State = EntityState.Modified;

                    db.SaveChanges();

                    flag = true;
                }
            }

            return(flag);
        }
Exemplo n.º 13
0
        public Project AddnewProject(ProjectRequest request)
        {
            var status = new StatusLogic();

            Project newProject = new Project
            {
                Name             = request.Name,
                DeadLine         = request.DeadLine,
                EffortInHours    = request.EffortInHours,
                EffortInCurrency = request.EffortInCurrency,
                TeamId           = request.TeamId,
                StatusId         = status.GetStatus(States.New).Id,
                ClientId         = request.ClientId,
                Id         = request.Id,
                CurrencyId = request.CurrencyId
            };

            using (var db = new TimeTrackerModelContainer())
            {
                db.Project.Add(newProject);
                db.SaveChanges();
            }

            return(newProject);
        }
Exemplo n.º 14
0
        public Team EditTeam(TeamRequest request)
        {
            var newTeam = new Team();

            using (var db = new TimeTrackerModelContainer())
            {
                var result = db.Team.First(x => x.Id == request.Id);

                newTeam.Id   = result.Id;
                newTeam.Name = request.Name;

                var s = db.Set <Team>().Local.FirstOrDefault(x => x.Id == request.Id);

                if (s != null)
                {
                    db.Entry(s).State = EntityState.Detached;
                }

                if (result.Id == request.Id)
                {
                    db.Entry(newTeam).State = EntityState.Modified;

                    db.SaveChanges();
                }
            }
            return(newTeam);
        }
Exemplo n.º 15
0
        public Team AddNewTeam(TeamRequest request)
        {
            using (var db = new TimeTrackerModelContainer())
            {
                var team = new Team();
                team.Name = request.Name;
                var user = db.User.First(x => x.Email == request.UserEmail);

                db.Team.Add(team);

                var userTeamLink = new UserTeamLink
                {
                    PublicPrice  = request.PublicPrice,
                    PrivatePrice = request.PrivatePrice,
                    CurrencyId   = request.CurrencyId,
                    UserID       = user.Id,
                    TeamId       = team.Id
                };

                db.UserTeamLink.Add(userTeamLink);

                db.SaveChanges();

                return(team);
            }
        }
Exemplo n.º 16
0
        public bool DeleteTeam(long id)
        {
            using (var db = new TimeTrackerModelContainer())
            {
                var team = db.Team.FirstOrDefault(x => x.Id == id);
                db.Team.Remove(team);

                return(true);
            }
        }
Exemplo n.º 17
0
        public Team GetTeamById(int id)
        {
            Team team;

            using (var db = new TimeTrackerModelContainer())
            {
                var result = db.Team.Where(x => x.Id == id).First();
                return(result);
            }
        }
Exemplo n.º 18
0
        public User AddUser(string name, string email, string password, string token, string phone)
        {
            string hashPassword    = HashPassword(password, password);
            var    roleLogic       = new RoleLogic();
            var    newUser         = new User();
            var    newTeam         = new Team();
            var    currencyLogic   = new CurrencyLogic();
            var    newUserTeamLink = new UserTeamLink();

            byte[] time     = BitConverter.GetBytes(DateTime.UtcNow.ToBinary());
            byte[] key      = Guid.NewGuid().ToByteArray();
            string newToken = Convert.ToBase64String(time.Concat(key).ToArray());

            var defaultUserRole = roleLogic.GetRole(Roles.User);

            var defautCurrency = currencyLogic.GetCurrencyByCode("HUF");

            using (var db = new TimeTrackerModelContainer())
            {
                var userInDb = db.User.FirstOrDefault(x => x.Email == email);

                if (userInDb != null)
                {
                    throw new Exception("Ez az Email cím már regisztrált");
                }

                newUser.Name     = name;
                newUser.Email    = email;
                newUser.Password = hashPassword;
                newUser.Phone    = phone;
                newUser.Token    = newToken;
                newUser.Role     = defaultUserRole;

                db.Role.Attach(newUser.Role);
                db.User.Add(newUser);

                newTeam.Name = newUser.Name;

                db.Team.Add(newTeam);

                newUserTeamLink.User         = newUser;
                newUserTeamLink.Currency     = defautCurrency;
                newUserTeamLink.PrivatePrice = "0";
                newUserTeamLink.PublicPrice  = "0";
                newUserTeamLink.Team         = newTeam;

                db.Currency.Attach(newUserTeamLink.Currency);

                db.UserTeamLink.Add(newUserTeamLink);

                db.SaveChanges();
            }

            return(newUser);
        }
Exemplo n.º 19
0
        public Currency GetCurrencyById(long id)
        {
            Currency resultCurrency;

            using (var db = new TimeTrackerModelContainer())
            {
                resultCurrency = db.Currency.First(x => x.Id == id);
            }

            return(resultCurrency);
        }
Exemplo n.º 20
0
        public Permission GetPermissionById(long id)
        {
            Permission permission;

            using (var db = new TimeTrackerModelContainer())
            {
                permission = db.Permission.First(x => x.Id == id);
            }

            return(permission);
        }
Exemplo n.º 21
0
        public Status GetStatusById(long id)
        {
            Status status;

            using (var db = new TimeTrackerModelContainer())
            {
                status = db.Status.First(x => x.Id == id);
            }

            return(status);
        }
Exemplo n.º 22
0
        public Client GetClientById(long id)
        {
            Client client;

            using (var db = new TimeTrackerModelContainer())
            {
                client = db.Client.First(x => x.Id == id);
            }

            return(client);
        }
Exemplo n.º 23
0
        public List <TeamDto> GetTeamList()
        {
            using (var db = new TimeTrackerModelContainer())
            {
                var TeamList = db.Team.AsEnumerable().Select(x => new TeamDto {
                    Id = x.Id, Name = x.Name
                }).ToList();

                return(TeamList);
            }
        }
Exemplo n.º 24
0
        public Project GetProjectById(long id)
        {
            var project = new Project();

            using (var db = new TimeTrackerModelContainer())
            {
                project = db.Project.First(x => x.Id == id);
            }

            return(project);
        }
Exemplo n.º 25
0
        public Role GetRoleById(long id)
        {
            Role role;

            using (var db = new TimeTrackerModelContainer())
            {
                role = db.Role.First(x => x.Id == id);
            }

            return(role);
        }
Exemplo n.º 26
0
        public TimeRecord GeTimeRecordById(long id)
        {
            var timeRecord = new TimeRecord();

            using (var db = new TimeTrackerModelContainer())
            {
                timeRecord = db.TimeRecord.FirstOrDefault(x => x.Id == id);
            }

            return(timeRecord);
        }
Exemplo n.º 27
0
        public bool DeleteTimeRecord(long id)
        {
            using (var db = new TimeTrackerModelContainer())
            {
                var timeRecord = db.TimeRecord.FirstOrDefault(x => x.Id == id);
                db.TimeRecord.Remove(timeRecord);
                db.SaveChanges();

                return(true);
            }
        }
Exemplo n.º 28
0
        public User ForgotPwd(string email)
        {
            User result;

            using (var db = new TimeTrackerModelContainer())
            {
                result = db.User.First(x => x.Email == email);
            }

            return(result);
        }
Exemplo n.º 29
0
        public User GetUserbyEmail(string email)
        {
            User user;
            var  result = new UserDto();

            using (var db = new TimeTrackerModelContainer())
            {
                user = db.User.First(x => x.Email == email);
            }

            return(user);
        }
Exemplo n.º 30
0
        public Role GetRoleTypeId(string userEmail)
        {
            Role role;

            using (var db = new TimeTrackerModelContainer())
            {
                var user = db.User.First(x => x.Email == userEmail);
                role = db.Role.First(x => x.Id == user.RoleId);
            }

            return(role);
        }