Ejemplo n.º 1
0
        internal async Task <int> AddTaskAsync(GrpcChannel channel,
                                               int managerId,
                                               int assignedEmployee,
                                               DateTime createDate,
                                               string description,
                                               DateTime finalDate,
                                               PriorityEnum priority,
                                               string subject)
        {
            var client = new Tasks.TasksClient(channel);
            var input  = new TaskInput
            {
                ManagerId        = managerId,
                AssignedEmployee = assignedEmployee,
                CreateDate       = createDate.Date.ToUniversalTime().ToTimestamp(),
                Description      = description,
                FinalDate        = finalDate.Date.ToUniversalTime().ToTimestamp(),
                Priority         = priority.ToString(),
                Subject          = subject
            };
            var taskId = await client.AddTaskAsync(input);

            await SendUpdateEventAsync(channel, assignedEmployee);

            return(taskId.Value);
        }
Ejemplo n.º 2
0
 public RealDataProvider()
 {
     _channel        = new Channel("127.0.0.1:50051", ChannelCredentials.Insecure);
     _authClient     = new Auth.AuthClient(_channel);
     _projectsClient = new Projects.ProjectsClient(_channel);
     _tasksClient    = new Tasks.TasksClient(_channel);
     _usersClient    = new Users.UsersClient(_channel);
 }
Ejemplo n.º 3
0
        internal async Task DeleteTaskAsync(GrpcChannel channel, int taskId, int userIdToBeUpdated)
        {
            var client = new Tasks.TasksClient(channel);
            var input  = new Int32Value
            {
                Value = taskId
            };

            await client.DeleteTaskAsync(input);

            await SendUpdateEventAsync(channel, userIdToBeUpdated);
        }
Ejemplo n.º 4
0
        internal async Task <ObservableCollection <MyTask> > GetMyTasksAsync(GrpcChannel channel, int personId)
        {
            var tasksClient = new Tasks.TasksClient(channel);
            var input       = new Int32Value
            {
                Value = personId
            };

            using var result = tasksClient.GetMyTasks(input);
            var tasks = new ObservableCollection <MyTask>();

            while (await result.ResponseStream.MoveNext())
            {
                if (result.ResponseStream.Current.TaskId == 0)
                {
                    return(tasks);
                }

                var task = new MyTask(true)
                {
                    TaskId           = result.ResponseStream.Current.TaskId,
                    AssignedEmployee = result.ResponseStream.Current.EmployeeId,
                    Description      = result.ResponseStream.Current.Description,
                    FinalDate        = result.ResponseStream.Current.FinalDate.ToDateTime().ToLocalTime(),
                    CreatedDate      = result.ResponseStream.Current.CreatedDate.ToDateTime().ToLocalTime(),
                    Priority         = ConvertStringToProretyEnum(result.ResponseStream.Current.Priority),
                    Subject          = result.ResponseStream.Current.Subject,
                    IsArchive        = result.ResponseStream.Current.IsArchive,
                    IsCompleted      = result.ResponseStream.Current.IsCompleted
                };

                task.SetInitModeFalse();

                var comments = await _commentApi.GetCommentsOfTaskAsync(channel, task.TaskId);

                task.Comments = comments;

                tasks.Add(task);
            }

            return(tasks);
        }