示例#1
0
        public List <CalendarAssignment> GetCalendarAssignments(int companyId)
        {
            List <CalendarAssignment> calendarAssignments = new List <CalendarAssignment>();
            string queryString = selectPart +
                                 "WHERE CompanyId = @CompanyId AND Active = 1;";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                SqlCommand command = connection.CreateCommand();
                command.CommandText = queryString;
                command.Parameters.Add(new SqlParameter("@CompanyId", companyId));

                connection.Open();
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        CalendarAssignment calendarAssignment = Read(reader);
                        calendarAssignments.Add(calendarAssignment);
                    }
                }
            }

            return(calendarAssignments);
        }
示例#2
0
        public CalendarAssignment Create(CalendarAssignment calendarAssignment)
        {
            if (context.CalendarAssignments.Where(x => x.Identifier != null && x.Identifier == calendarAssignment.Identifier).Count() == 0)
            {
                calendarAssignment.Id = 0;

                calendarAssignment.Active    = true;
                calendarAssignment.UpdatedAt = DateTime.Now;
                calendarAssignment.CreatedAt = DateTime.Now;
                context.CalendarAssignments.Add(calendarAssignment);
                return(calendarAssignment);
            }
            else
            {
                // Load item that will be updated
                CalendarAssignment dbEntry = context.CalendarAssignments
                                             .FirstOrDefault(x => x.Identifier == calendarAssignment.Identifier && x.Active == true);

                if (dbEntry != null)
                {
                    dbEntry.CompanyId    = calendarAssignment.CompanyId ?? null;
                    dbEntry.CreatedById  = calendarAssignment.CreatedById ?? null;
                    dbEntry.AssignedToId = calendarAssignment.AssignedToId ?? null;

                    dbEntry.Date        = calendarAssignment.Date;
                    dbEntry.Name        = calendarAssignment.Name;
                    dbEntry.Description = calendarAssignment.Description;

                    // Set timestamp
                    dbEntry.UpdatedAt = DateTime.Now;
                }

                return(dbEntry);
            }
        }
示例#3
0
        public List <CalendarAssignment> GetCalendarAssignmentsNewerThen(int companyId, DateTime lastUpdateTime)
        {
            List <CalendarAssignment> calendarAssignments = new List <CalendarAssignment>();
            string queryString = selectPart +
                                 "WHERE CompanyId = @CompanyId " +
                                 "AND CONVERT(DATETIME, CONVERT(VARCHAR(20), UpdatedAt, 120)) > CONVERT(DATETIME, CONVERT(VARCHAR(20), @LastUpdateTime, 120)) ";

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                SqlCommand command = connection.CreateCommand();
                command.CommandText = queryString;
                command.Parameters.Add(new SqlParameter("@CompanyId", companyId));
                command.Parameters.Add(new SqlParameter("@LastUpdateTime", lastUpdateTime));

                connection.Open();
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        CalendarAssignment calendarAssignment = Read(reader);
                        calendarAssignments.Add(calendarAssignment);
                    }
                }
            }

            return(calendarAssignments);
        }
        public static List <CalendarAssignmentViewModel> ConvertToCalendarAssignmentViewModelList(this IEnumerable <CalendarAssignment> CalendarAssignments)
        {
            List <CalendarAssignmentViewModel> CalendarAssignmentViewModels = new List <CalendarAssignmentViewModel>();

            foreach (CalendarAssignment CalendarAssignment in CalendarAssignments)
            {
                CalendarAssignmentViewModels.Add(CalendarAssignment.ConvertToCalendarAssignmentViewModel());
            }
            return(CalendarAssignmentViewModels);
        }
示例#5
0
        public CalendarAssignment Delete(Guid identifier)
        {
            // Load item that will be updated
            CalendarAssignment dbEntry = context.CalendarAssignments
                                         .Union(context.ChangeTracker.Entries()
                                                .Where(x => x.State == EntityState.Added && x.Entity.GetType() == typeof(CalendarAssignment))
                                                .Select(x => x.Entity as CalendarAssignment))
                                         .FirstOrDefault(x => x.Identifier == identifier && x.Active == true);

            if (dbEntry != null)
            {
                dbEntry.Active = false;

                // Set timestamp
                dbEntry.UpdatedAt = DateTime.Now;
            }

            return(dbEntry);
        }
示例#6
0
        private CalendarAssignment Read(SqlDataReader reader)
        {
            CalendarAssignment assignment = new CalendarAssignment();

            assignment.Id          = Int32.Parse(reader["CalendarAssignmentId"].ToString());
            assignment.Identifier  = Guid.Parse(reader["CalendarAssignmentIdentifier"].ToString());
            assignment.Name        = reader["CalendarAssignmentName"]?.ToString();
            assignment.Description = reader["CalendarAssignmentDescription"]?.ToString();
            assignment.Date        = DateTime.Parse(reader["CalendarAssignmentDate"]?.ToString());

            assignment.Active    = bool.Parse(reader["Active"].ToString());
            assignment.UpdatedAt = DateTime.Parse(reader["UpdatedAt"].ToString());

            if (reader["CreatedById"] != DBNull.Value)
            {
                assignment.CreatedBy           = new User();
                assignment.CreatedById         = Int32.Parse(reader["CreatedById"].ToString());
                assignment.CreatedBy.Id        = Int32.Parse(reader["CreatedById"].ToString());
                assignment.CreatedBy.FirstName = reader["CreatedByFirstName"]?.ToString();
                assignment.CreatedBy.LastName  = reader["CreatedByLastName"]?.ToString();
            }

            if (reader["AssignedToId"] != DBNull.Value)
            {
                assignment.AssignedTo           = new User();
                assignment.AssignedToId         = Int32.Parse(reader["AssignedToId"].ToString());
                assignment.AssignedTo.Id        = Int32.Parse(reader["AssignedToId"].ToString());
                assignment.AssignedTo.FirstName = reader["AssignedToFirstName"]?.ToString();
                assignment.AssignedTo.LastName  = reader["AssignedToLastName"]?.ToString();
            }

            if (reader["CompanyId"] != DBNull.Value)
            {
                assignment.Company      = new Company();
                assignment.CompanyId    = Int32.Parse(reader["CompanyId"].ToString());
                assignment.Company.Id   = Int32.Parse(reader["CompanyId"].ToString());
                assignment.Company.Name = reader["CompanyName"].ToString();
            }

            return(assignment);
        }
        public static CalendarAssignment ConvertToCalendarAssignment(this CalendarAssignmentViewModel CalendarAssignmentViewModel)
        {
            CalendarAssignment CalendarAssignment = new CalendarAssignment()
            {
                Id          = CalendarAssignmentViewModel.Id,
                Identifier  = CalendarAssignmentViewModel.Identifier,
                Name        = CalendarAssignmentViewModel.Name,
                Description = CalendarAssignmentViewModel.Description,
                Date        = CalendarAssignmentViewModel.Date,

                AssignedToId = CalendarAssignmentViewModel?.AssignedTo?.Id ?? null,

                Active      = CalendarAssignmentViewModel.IsActive,
                CreatedById = CalendarAssignmentViewModel.CreatedBy?.Id ?? null,
                CompanyId   = CalendarAssignmentViewModel.Company?.Id ?? null,

                CreatedAt = CalendarAssignmentViewModel.CreatedAt,
                UpdatedAt = CalendarAssignmentViewModel.UpdatedAt
            };

            return(CalendarAssignment);
        }
        public static CalendarAssignmentViewModel ConvertToCalendarAssignmentViewModelLite(this CalendarAssignment CalendarAssignment)
        {
            CalendarAssignmentViewModel CalendarAssignmentViewModel = new CalendarAssignmentViewModel()
            {
                Id         = CalendarAssignment.Id,
                Identifier = CalendarAssignment.Identifier,

                Name        = CalendarAssignment.Name,
                Description = CalendarAssignment.Description,
                Date        = CalendarAssignment.Date,

                IsActive = CalendarAssignment.Active,

                UpdatedAt = CalendarAssignment.UpdatedAt,
                CreatedAt = CalendarAssignment.CreatedAt
            };

            return(CalendarAssignmentViewModel);
        }
        public static CalendarAssignmentViewModel ConvertToCalendarAssignmentViewModel(this CalendarAssignment CalendarAssignment)
        {
            CalendarAssignmentViewModel CalendarAssignmentViewModel = new CalendarAssignmentViewModel()
            {
                Id         = CalendarAssignment.Id,
                Identifier = CalendarAssignment.Identifier,

                Name        = CalendarAssignment.Name,
                Description = CalendarAssignment.Description,
                Date        = CalendarAssignment.Date,

                IsActive = CalendarAssignment.Active,

                CreatedBy  = CalendarAssignment?.CreatedBy?.ConvertToUserViewModelLite(),
                AssignedTo = CalendarAssignment?.AssignedTo?.ConvertToUserViewModelLite(),

                Company = CalendarAssignment?.Company?.ConvertToCompanyViewModelLite(),

                UpdatedAt = CalendarAssignment.UpdatedAt,
                CreatedAt = CalendarAssignment.CreatedAt
            };

            return(CalendarAssignmentViewModel);
        }