Пример #1
0
        // GET: Consultants/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Consultant consultant = db.Consultants.Find(id);

            if (consultant == null)
            {
                return(HttpNotFound());
            }
            ConsultantViewModel model;

            model = new ConsultantViewModel
            {
                Id      = consultant.Id,
                Name    = consultant.Name,
                Phone   = consultant.Phone,
                Email   = consultant.Email,
                Address = consultant.Address,
                DeptId  = consultant.DeptId,
                Status  = consultant.Status
            };
            ViewBag.DepartmentsList = db.Departments.ToList();
            return(View(model));
        }
Пример #2
0
        public async Task <ActionResult <ConsultantViewModel> > Get(int id, bool includeAddress = false, bool includeCompetences = false)
        {
            try
            {
                Consultant result = await repository.GetConsultantAsync(id, includeAddress);

                if (result == null)
                {
                    return(NotFound());
                }
                if (includeCompetences)
                {
                    ConsultantViewModel consultant  = mapper.Map <ConsultantViewModel>(result);
                    Competence[]        competences = await repository.GetAllCompetencesForConsultantAsync(consultant.ConsultantId);

                    if (competences != null)
                    {
                        consultant.Competences = mapper.Map <CompetenceViewModel[]>(competences);
                    }
                    return(consultant);
                }
                return(mapper.Map <ConsultantViewModel>(result));
            }
            catch (Exception)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, "Error in database"));
            }
        }
Пример #3
0
        public async Task <IActionResult> Update([FromBody] ConsultantViewModel value)
        {
            if (ModelState.IsValid)
            {
                var userId = Utilities.GetUserId(this.User);
                var ret    = await this._unitOfWork.Consultants.Save(new Consultant
                {
                    ConsultantId      = Guid.NewGuid(),
                    ConsultantCode    = value.Code,
                    BranchId          = Guid.NewGuid(),
                    ConsultantName    = value.Name,
                    Note              = value.Note,
                    CreatedBy         = userId,
                    UpdatedBy         = userId,
                    CreatedDate       = DateTime.Now,
                    UpdatedDate       = DateTime.Now,
                    ScheduleStartDate = DateTime.Now,
                    ScheduleEndDate   = DateTime.Now,
                    ScheduleNote      = value.ScheduleNote,
                }, value.ID);

                return(Ok(ret));
            }

            return(BadRequest(ModelState));
        }
Пример #4
0
        public ActionResult Create([Bind(Include = "ID,FirstName,LastName,PersonalNumber,Gender,BirthDate,RecommenderConsultantID")] ConsultantViewModel consultant)
        {
            if (ModelState.IsValid)
            {
                if (_serviceClient.CheckIsConsultantRecommender(consultant.RecommenderConsultantID, consultant.PersonalNumber))
                {
                    ModelState.AddModelError(string.Empty, "არჩეული რეკომენდატორი არ შეიძლება იყოს იერარქიულად ამ კონსულტანტის რეკომენდატორი");
                }
                else
                {
                    ConsultantDto c = new ConsultantDto
                    {
                        FirstName               = consultant.FirstName,
                        LastName                = consultant.LastName,
                        BirthDate               = consultant.BirthDate,
                        PersonalNumber          = consultant.PersonalNumber,
                        Gender                  = consultant.Gender,
                        RecommenderConsultantID = consultant.RecommenderConsultantID
                    };
                    _serviceClient.CreateConsultant(c);

                    return(RedirectToAction("Index"));
                }
            }

            LoadRecommenderConsultants(null);
            return(View(consultant));
        }
Пример #5
0
        public ActionResult Edit(int?id)
        {
            LoadRecommenderConsultants(id);

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var consultant = _serviceClient.GetConsultantById((int)id);
            ConsultantViewModel consultantModel = new ConsultantViewModel
            {
                ID                      = consultant.ID,
                FirstName               = consultant.FirstName,
                LastName                = consultant.LastName,
                BirthDate               = consultant.BirthDate,
                PersonalNumber          = consultant.PersonalNumber,
                Gender                  = consultant.Gender,
                RecommenderConsultantID = consultant.RecommenderConsultantID
            };

            if (consultantModel == null)
            {
                return(HttpNotFound());
            }
            return(View(consultantModel));
        }
Пример #6
0
        public ActionResult Consult()
        {
            ConsultantViewModel result = new ConsultantViewModel()
            {
            };

            return(View(result));
        }
Пример #7
0
        public ActionResult Contact()
        {
            ConsultantViewModel model = new ConsultantViewModel();

            model.section1 = db.TextItems.FirstOrDefault(x => x.IsDeleted == false && x.IsActive && x.TextItemType.Name == "ContactUs" && x.Name == "section1");
            model.section2 = db.TextItems.FirstOrDefault(x => x.IsDeleted == false && x.IsActive && x.TextItemType.Name == "ContactUs" && x.Name == "section2");
            model.section3 = db.TextItems.FirstOrDefault(x => x.IsDeleted == false && x.IsActive && x.TextItemType.Name == "ContactUs" && x.Name == "section3");
            return(View(model));
        }
Пример #8
0
 public ActionResult Detail(ConsultantViewModel model)
 {
     try
     {
         var consultant = Mapper.Map <ConsultantViewModel, Consultant>(model);
         consultant.ModifiedBy   = User.UserId;
         consultant.ModifiedDate = DateTime.Now;
         consultant.IsDeleted    = false;
         _consultantRepository.UpdateAndSubmit(consultant);
         return(RedirectToAction("index"));
     }
     catch
     {
         throw new Exception();
     }
 }
Пример #9
0
 public async Task <ActionResult <ConsultantViewModel> > Post(ConsultantViewModel model)
 {
     try
     {
         Consultant consultant = mapper.Map <Consultant>(model);
         repository.Add(consultant);
         if (await repository.SaveChangesAsync())
         {
             return(Created($"/api/camps/{consultant.ConsultantId}", mapper.Map <ConsultantViewModel>(consultant)));
         }
     }
     catch (Exception)
     {
         return(this.StatusCode(StatusCodes.Status500InternalServerError, "Error in database"));
     }
     return(BadRequest());
 }
Пример #10
0
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var dbConsultant = _serviceClient.GetConsultantById((int)id);
            ConsultantViewModel consultantDto = new ConsultantViewModel {
                FirstName = dbConsultant.FirstName, LastName = dbConsultant.LastName, PersonalNumber = dbConsultant.PersonalNumber
            };

            if (consultantDto == null)
            {
                return(HttpNotFound());
            }
            return(View(consultantDto));
        }
        public async Task <IActionResult> Index()
        {
            var consultants = await _userManager.GetUsersInRoleAsync("Consultant");

            List <ConsultantViewModel> list = new List <ConsultantViewModel>();

            foreach (User c in consultants)
            {
                ConsultantViewModel cvm = new ConsultantViewModel();
                cvm.User     = c;
                cvm.Articles = _context.Articles.Where(a => a.AuthorId == c.Id && a.IsVisible == true).ToList();

                list.Add(cvm);
            }


            return(View(list));
        }
Пример #12
0
 public ActionResult Edit(ConsultantViewModel model)
 {
     if (ModelState.IsValid)
     {
         Consultant consul = new Consultant();
         consul.Id              = model.Id;
         consul.Name            = model.Name;
         consul.Phone           = model.Phone;
         consul.Email           = model.Email;
         consul.Address         = model.Address;
         consul.DeptId          = model.DeptId;
         consul.Status          = model.Status;
         db.Entry(consul).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.DepartmentsList = db.Departments.ToList();
     return(View(model));
 }
Пример #13
0
        public async Task <ActionResult <ConsultantViewModel> > Put(int id, ConsultantViewModel model)
        {
            try
            {
                Consultant oldConsultant = await repository.GetConsultantAsync(id);

                if (oldConsultant == null)
                {
                    return(NotFound($"Could not find consultant with ID of {id}"));
                }

                mapper.Map(model, oldConsultant);

                if (await repository.SaveChangesAsync())
                {
                    return(mapper.Map <ConsultantViewModel>(oldConsultant));
                }
            }
            catch (Exception)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, "Error in database"));
            }
            return(BadRequest());
        }
Пример #14
0
 public ActionResult Register(ConsultantViewModel model)
 {
     return(View());
 }
Пример #15
0
        public ActionResult ConsultRegister(ConsultantViewModel model)
        {
            if (string.IsNullOrEmpty(model.Name) || string.IsNullOrEmpty(model.Email))
            {
                return(Json(false));
            }
            else if (!this.IsValidEmail(model.Email))
            {
                return(Json(false));
            }
            else
            {
                var consult = Mapper.Map <ConsultantViewModel, Consultant>(model);
                consult.CreatedDate = DateTime.Now;
                consult.IsDeleted   = false;
                _consultRepo.InsertAndSubmit(consult);

                using (MailMessage mailMessage = new MailMessage())
                {
                    StringBuilder content = new StringBuilder();
                    content.Append("IEE nhận được yêu cầu tư vấn với các thông tin.");
                    content.AppendLine();
                    content.Append("Họ và tên: " + model.Name);
                    content.AppendLine();
                    content.Append("Địa chỉ: " + model.School);
                    content.AppendLine();
                    content.Append("Lớp: " + model.Class);
                    content.AppendLine();
                    content.Append("Điện thoại: " + model.Phone);
                    content.AppendLine();
                    content.Append("Email: " + model.Email);
                    content.AppendLine();
                    if (model.Program.HasValue)
                    {
                        string programName = _proRepo.Get(t => t.Id == model.Program.Value).Name;
                        content.Append("Chương trình mong muốn: " + programName);
                        content.AppendLine();
                    }
                    content.Append("Nội dung:");
                    content.AppendLine();
                    content.Append(model.Message);

                    mailMessage.From       = new MailAddress(ConfigurationManager.AppSettings["UserName"]);
                    mailMessage.Subject    = "IEE nhận được yêu cầu tư vấn với các thông tin";
                    mailMessage.Body       = content.ToString();
                    mailMessage.IsBodyHtml = true;

                    mailMessage.To.Add(ConfigurationManager.AppSettings["Email"]);

                    SmtpClient smtp = new SmtpClient();

                    smtp.Host = ConfigurationManager.AppSettings["Host"];
                    smtp.UseDefaultCredentials = false;
                    smtp.EnableSsl             = true;
                    smtp.Port = int.Parse(ConfigurationManager.AppSettings["Port"]);

                    NetworkCredential NetworkCred = new System.Net.NetworkCredential();

                    NetworkCred.UserName = ConfigurationManager.AppSettings["UserName"];
                    NetworkCred.Password = ConfigurationManager.AppSettings["Password"];
                    smtp.Credentials     = NetworkCred;
                    smtp.Send(mailMessage);
                }

                return(Json(true));
            }
        }