示例#1
0
        public async Task <IHttpActionResult> Update(CandidateSubmissionAppointmentViewModel data)
        {
            try
            {
                string userId = User.Identity.GetUserId();
                Helpers.Helpers.AddBaseProperties(data, "update", userId);
                foreach (var con in data.Slots)
                {
                    Helpers.Helpers.AddBaseProperties(con, "update", userId);
                }

                foreach (var con in data.Users)
                {
                    Helpers.Helpers.AddBaseProperties(con, "update", userId);
                }

                foreach (var con in data.UserComments)
                {
                    Helpers.Helpers.AddBaseProperties(con, "update", userId);
                }
                return(Ok((await _service.Update(data.ID, data, userId))));
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#2
0
        public async Task <CandidateSubmissionAppointmentViewModel> Update(long id, CandidateSubmissionAppointmentViewModel data, string loggedInUserID)
        {
            try
            {
                var appointment = await db.tblCandidateSubmissionAppointments.Where(x => x.ID == id).FirstOrDefaultAsync();

                CandidateSubmissionAppointmentViewModel obj = null;
                if (appointment != null)
                {
                    appointment.Name     = data.Name;
                    appointment.Details  = data.Details;
                    appointment.IsActive = data.isActive;
                    await db.SaveChangesAsync();

                    obj = new CandidateSubmissionAppointmentViewModel()
                    {
                        ID = appointment.ID,
                        AppintmentTypeID      = appointment.AppintmentTypeID,
                        AppointmentStatusID   = appointment.AppointmentStatusID,
                        CandidateSubmissionID = appointment.CandidateSubmissionID,
                        Name             = appointment.Name,
                        Details          = appointment.Details,
                        isActive         = appointment.IsActive,
                        createdTimestamp = appointment.CreatedTimestamp,
                        Status           = new AppointmentStatusViewModel()
                        {
                            ID   = appointment.tblAppointmentStatu.ID,
                            Name = appointment.tblAppointmentStatu.Name
                        },
                        Type = new AppointmentTypeViewModel()
                        {
                            ID   = appointment.tblAppointmentType.ID,
                            Name = appointment.tblAppointmentType.Name
                        },
                        Slots = appointment.tblCandidateSubmissionAppointmentSlots.Select(x => new CandidateSubmissionAppointmentSlotViewModel()
                        {
                            ID           = x.ID,
                            AppintmentID = x.AppintmentID,
                            StartDate    = x.StartDate,
                            EndDate      = x.EndDate,
                            isActive     = x.IsActive,
                            IsFinalised  = x.IsFinalised
                        }).ToList(),
                        Users = appointment.tblCandidateSubmissionAppointmentUsers.Select(x => new CandidateSubmissionAppointmentUserViewModel()
                        {
                            ID            = x.ID,
                            AppointmentID = x.AppointmentID,
                            UserID        = x.UserID,
                            isActive      = x.IsActive,
                            isDeleted     = x.IsDeleted
                        }).ToList()
                    };
                }
                return(obj);
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#3
0
        public async Task <CandidateSubmissionAppointmentViewModel> Get(long ID)
        {
            try
            {
                var appointment = await db.tblCandidateSubmissionAppointments.Where(x => x.ID == ID).FirstOrDefaultAsync();

                CandidateSubmissionAppointmentViewModel obj = null;

                if (appointment != null)
                {
                    obj = new CandidateSubmissionAppointmentViewModel()
                    {
                        ID = appointment.ID,
                        AppintmentTypeID      = appointment.AppintmentTypeID,
                        AppointmentStatusID   = appointment.AppointmentStatusID,
                        CandidateSubmissionID = appointment.CandidateSubmissionID,
                        Name             = appointment.Name,
                        Details          = appointment.Details,
                        isActive         = appointment.IsActive,
                        createdTimestamp = appointment.CreatedTimestamp,
                        Status           = new AppointmentStatusViewModel()
                        {
                            ID   = appointment.tblAppointmentStatu.ID,
                            Name = appointment.tblAppointmentStatu.Name
                        },
                        Type = new AppointmentTypeViewModel()
                        {
                            ID   = appointment.tblAppointmentType.ID,
                            Name = appointment.tblAppointmentType.Name
                        },
                        Slots = appointment.tblCandidateSubmissionAppointmentSlots.Select(x => new CandidateSubmissionAppointmentSlotViewModel()
                        {
                            ID           = x.ID,
                            AppintmentID = x.AppintmentID,
                            StartDate    = x.StartDate,
                            EndDate      = x.EndDate,
                            isActive     = x.IsActive,
                            IsFinalised  = x.IsFinalised
                        }).ToList(),
                        Users = appointment.tblCandidateSubmissionAppointmentUsers.Select(x => new CandidateSubmissionAppointmentUserViewModel()
                        {
                            ID            = x.ID,
                            AppointmentID = x.AppointmentID,
                            UserID        = x.UserID,
                            isActive      = x.IsActive,
                            isDeleted     = x.IsDeleted
                        }).ToList(),
                        UserComments = appointment.tblCandidateSubmissionAppointmentUserComments.Select(x => new CandidateSubmissionAppointmentUserCommentViewModel()
                        {
                            ID            = x.ID,
                            AppointmentID = x.AppointmentID,
                            Comment       = new CommentModel()
                            {
                                comment          = x.tblComment.Comment,
                                isActive         = x.tblComment.IsActive,
                                isDeleted        = x.tblComment.IsDeleted,
                                showToAll        = x.tblComment.ShowToAll,
                                id               = x.CommentID,
                                createdTimestamp = x.CreatedTimestamp
                            }
                        }).ToList()
                    };
                }
                return(obj);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#4
0
        public async Task <CandidateSubmissionAppointmentViewModel> Save(CandidateSubmissionAppointmentViewModel data)
        {
            try
            {
                var objAppointment = new tblCandidateSubmissionAppointment()
                {
                    AppintmentTypeID    = data.AppintmentTypeID,
                    AppointmentStatusID = data.AppointmentStatusID,
                    Name                  = data.Name,
                    Details               = data.Details,
                    IsActive              = data.isActive,
                    IsDeleted             = data.isDeleted,
                    CreatedUserID         = data.createdUserID,
                    CreatedTimestamp      = DateTime.UtcNow,
                    CandidateSubmissionID = data.CandidateSubmissionID,
                    tblCandidateSubmissionAppointmentSlots = data.Slots.Select(x => new tblCandidateSubmissionAppointmentSlot()
                    {
                        StartDate        = x.StartDate,
                        EndDate          = x.EndDate,
                        IsActive         = x.isActive,
                        IsDeleted        = x.isDeleted,
                        CreatedUserID    = data.createdUserID,
                        CreatedTimestamp = DateTime.UtcNow,
                        IsFinalised      = x.IsFinalised
                    }).ToList(),
                    tblCandidateSubmissionAppointmentUsers = data.Users.Select(x => new tblCandidateSubmissionAppointmentUser()
                    {
                        UserID           = x.UserID,
                        IsActive         = x.isActive,
                        IsDeleted        = x.isDeleted,
                        CreatedTimestamp = DateTime.UtcNow,
                        CreatedUserID    = data.createdUserID
                    }).ToList()
                };

                var appointment = await this.saveAppointment(objAppointment);

                return(new CandidateSubmissionAppointmentViewModel()
                {
                    ID = appointment.ID,
                    AppintmentTypeID = appointment.AppintmentTypeID,
                    AppointmentStatusID = appointment.AppointmentStatusID,
                    CandidateSubmissionID = appointment.CandidateSubmissionID,
                    Name = appointment.Name,
                    Details = appointment.Details,
                    isActive = appointment.IsActive,
                    createdTimestamp = appointment.CreatedTimestamp,
                    //Status = new AppointmentStatusViewModel()
                    //{
                    //    ID = appointment.tblAppointmentStatu != null ? appointment.tblAppointmentStatu.ID : null,
                    //    Name = appointment.tblAppointmentStatu.Name
                    //},
                    //Type = new AppointmentTypeViewModel()
                    //{
                    //    ID = appointment.tblAppointmentType.ID,
                    //    Name = appointment.tblAppointmentType.Name
                    //},
                    Slots = appointment.tblCandidateSubmissionAppointmentSlots.Select(x => new CandidateSubmissionAppointmentSlotViewModel()
                    {
                        ID = x.ID,
                        AppintmentID = x.AppintmentID,
                        StartDate = x.StartDate,
                        EndDate = x.EndDate,
                        isActive = x.IsActive,
                        IsFinalised = x.IsFinalised
                    }).ToList(),
                    Users = appointment.tblCandidateSubmissionAppointmentUsers.Select(x => new CandidateSubmissionAppointmentUserViewModel()
                    {
                        ID = x.ID,
                        AppointmentID = x.AppointmentID,
                        UserID = x.UserID,
                        isActive = x.IsActive,
                        isDeleted = x.IsDeleted
                    }).ToList()
                });
            }
            catch (Exception)
            {
                throw;
            }
        }