public static void UpdateDuAn(this DuAn duAn, DuAnViewModel duAnVM)
 {
     duAn.ID             = duAnVM.ID;
     duAn.SoHopDong      = duAnVM.SoHopDong;
     duAn.GiaTriHopDong  = duAnVM.GiaTriHopDong;
     duAn.IdKhachHang    = duAnVM.IdKhachHang;
     duAn.NgayBatDau     = duAnVM.NgayBatDau;
     duAn.NgayKetThuc    = duAnVM.NgayKetThuc;
     duAn.NgayHoanThanh  = duAnVM.NgayHoanThanh;
     duAn.NgayKy         = duAnVM.NgayKy;
     duAn.TenDuAn        = duAnVM.TenDuAn;
     duAn.MoTa           = duAnVM.MoTa;
     duAn.NamQuyetToan   = duAnVM.NamQuyetToan;
     duAn.LoaiCongTrinh  = duAnVM.LoaiCongTrinh;
     duAn.TyLeTheoDT     = duAnVM.TyLeTheoDT;
     duAn.LuongThueNgoai = duAnVM.LuongThueNgoai;
     duAn.TongChiQL      = duAnVM.TongChiQL;
     duAn.LuongTTQtt     = duAnVM.LuongTTQtt;
     duAn.LuongDPQdp     = duAnVM.LuongDPQdp;
     duAn.LuongGTQgt     = duAnVM.LuongGTQgt;
     duAn.LuongGTV21     = duAnVM.LuongGTV21;
     duAn.LuongGTV22     = duAnVM.LuongGTV22;
     duAn.DonGiaDiemGT   = duAnVM.DonGiaDiemGT;
     duAn.DonGiaDiemTT   = duAnVM.DonGiaDiemTT;
     duAn.TongDiemGT     = duAnVM.TongDiemGT;
     duAn.TongDiemTT     = duAnVM.TongDiemTT;
     duAn.TrangThai      = duAnVM.TrangThai;
     duAn.Created_at     = duAnVM.Created_at;
     duAn.Updated_at     = duAnVM.Updated_at;
 }
        public ViewResult New()
        {
            var viewModel = new DuAnViewModel {
                LoaiDuAns       = _context.LoaiDuAns.ToList(),
                TinhThanhPhos   = _context.TinhThanhPhos.ToList(),
                QuanHuyens      = _context.QuanHuyens.ToList(),
                TrangThaiDuAn   = SelectOptions.getTrangThaiDuAn,
                DoanhNghiepBDSs = _context.DoanhNghiepBDSs.ToList()
            };

            return(View("DuAnForm", viewModel));
        }
        public ActionResult Edit(int id)
        {
            var duAn = _context.DuAns.SingleOrDefault(x => x.Id == id);

            if (duAn == null)
            {
                return(HttpNotFound());
            }

            var viewModel = new DuAnViewModel(duAn)
            {
                LoaiDuAns       = _context.LoaiDuAns.ToList(),
                TinhThanhPhos   = _context.TinhThanhPhos.ToList(),
                QuanHuyens      = _context.QuanHuyens.ToList(),
                TrangThaiDuAn   = SelectOptions.getTrangThaiDuAn,
                DoanhNghiepBDSs = _context.DoanhNghiepBDSs.ToList()
            };

            return(View("DuAnForm", viewModel));
        }
 public HttpResponseMessage Update(HttpRequestMessage request, DuAnViewModel duAnVm)
 {
     return(CreateReponse(request, () =>
     {
         HttpResponseMessage response;
         if (ModelState.IsValid)
         {
             var duanById = _daService.GetById(duAnVm.ID);
             duanById.UpdateDuAn(duAnVm);
             duanById.Updated_at = DateTime.Now;
             duanById.NgayHoanThanh = null;
             _daService.Update(duanById);
             _daService.Save();
             var reposeData = Mapper.Map <DuAn, DuAnViewModel>(duanById);
             response = request.CreateResponse(HttpStatusCode.Created, reposeData);
         }
         else
         {
             response = request.CreateResponse(HttpStatusCode.BadRequest, ModelState);
         }
         return response;
     }));
 }
        public HttpResponseMessage created(HttpRequestMessage request, DuAnViewModel duAnVM)
        {
            return(CreateReponse(request, () =>
            {
                HttpResponseMessage response;

                if (ModelState.IsValid)
                {
                    var newDuan = new DuAn();
                    newDuan.UpdateDuAn(duAnVM);
                    newDuan.Updated_at = null;
                    newDuan.NgayHoanThanh = null;
                    var model = _daService.Add(newDuan);
                    _daService.Save();
                    var responseData = Mapper.Map <DuAn, DuAnViewModel>(model);
                    response = request.CreateResponse(HttpStatusCode.Created, responseData);
                }
                else
                {
                    response = request.CreateResponse(HttpStatusCode.BadRequest, ModelState);
                }
                return response;
            }));
        }
        public ActionResult Save(DuAn duAn)
        {
            if (!ModelState.IsValid)
            {
                //var errors = ModelState.Values.SelectMany(v => v.Errors);
                var viewModel = new DuAnViewModel
                {
                    LoaiDuAns       = _context.LoaiDuAns.ToList(),
                    TinhThanhPhos   = _context.TinhThanhPhos.ToList(),
                    QuanHuyens      = _context.QuanHuyens.ToList(),
                    TrangThaiDuAn   = SelectOptions.getTrangThaiDuAn,
                    DoanhNghiepBDSs = _context.DoanhNghiepBDSs.ToList()
                };
                return(View("DuAnForm", viewModel));
            }

            if (duAn.ImageFile != null)
            {
                string uploadPath = ConfigurationManager.AppSettings["AnhDaiDienDuAn"].ToString();
                duAn.AnhDaiDien = saveFile(duAn.ImageFile, uploadPath);
            }
            else
            {
                string uploadPath = ConfigurationManager.AppSettings["NoPhoto"].ToString();
                duAn.AnhDaiDien = uploadPath + "no-photo-available-300x225.png";
            }

            duAn.GioiThieuDuAn = HttpUtility.HtmlDecode(duAn.GioiThieuDuAn);
            duAn.ViTri         = HttpUtility.HtmlDecode(duAn.ViTri);
            duAn.HaTang        = HttpUtility.HtmlDecode(duAn.HaTang);
            duAn.ThietKe       = HttpUtility.HtmlDecode(duAn.ThietKe);
            duAn.MatBang       = HttpUtility.HtmlDecode(duAn.MatBang);
            duAn.Media         = HttpUtility.HtmlDecode(duAn.Media);
            duAn.HoTroTaiChinh = HttpUtility.HtmlDecode(duAn.HoTroTaiChinh);

            if (duAn.Id == 0)
            {
                var userId    = User.Identity.GetUserId();
                var nguoiDang = _context.NhanViens.SingleOrDefault(x => x.AccountId == userId);
                duAn.NguoiDangId    = nguoiDang.Id;
                duAn.NgayDang       = DateTime.Now;
                TempData["success"] = "Thêm mới thành công";
                _context.DuAns.Add(duAn);
            }
            else
            {
                var duAnInDb = _context.DuAns.Single(x => x.Id == duAn.Id);
                duAnInDb.TenDuAn          = duAn.TenDuAn;
                duAnInDb.DiaChi           = duAn.DiaChi;
                duAnInDb.GiaTu            = duAn.GiaTu;
                duAnInDb.ChuDauTu         = duAn.ChuDauTu;
                duAnInDb.DoanhNghiepBDSId = duAn.DoanhNghiepBDSId;
                duAnInDb.TongDienTich     = duAn.TongDienTich;
                duAnInDb.TienDoDuAn       = duAn.TienDoDuAn;
                duAnInDb.QuyMoDuAn        = duAn.QuyMoDuAn;
                duAnInDb.GioiThieuDuAn    = duAn.GioiThieuDuAn;
                duAnInDb.ViTri            = duAn.ViTri;
                duAnInDb.HaTang           = duAn.HaTang;
                duAnInDb.ThietKe          = duAn.ThietKe;
                duAnInDb.MatBang          = duAn.MatBang;
                duAnInDb.Media            = duAn.Media;
                duAnInDb.HoTroTaiChinh    = duAn.HoTroTaiChinh;
                duAnInDb.SoSanPham        = duAn.SoSanPham;
                duAnInDb.LoaiDuAnId       = duAn.LoaiDuAnId;
                duAnInDb.TinhThanhPhoId   = duAn.TinhThanhPhoId;
                duAnInDb.QuanHuyenId      = duAn.QuanHuyenId;
                duAnInDb.TrangThai        = duAn.TrangThai;
                if (!string.IsNullOrEmpty(duAn.AnhDaiDien))
                {
                    // Xóa ảnh cũ
                    deleteFile(duAnInDb.AnhDaiDien);
                    // Thay bằng ảnh mới
                    duAnInDb.AnhDaiDien = duAn.AnhDaiDien;
                }
                TempData["success"] = "Cập nhật thành công";
            }
            _context.SaveChanges();

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