public static bool put_PRO_DonXinNghiemThu(AppEntities db, int ID, DTO_PRO_DonXinNghiemThu item, string Username)
        {
            bool result = false;
            var  dbitem = db.tbl_PRO_DonXinNghiemThu.Find(ID);

            if (dbitem != null)
            {
                dbitem.IDDeTai                = item.IDDeTai;
                dbitem.HoTenChuNhiem          = item.HoTenChuNhiem;
                dbitem.DonVi                  = item.DonVi;
                dbitem.DiaChi                 = item.DiaChi;
                dbitem.DienThoai              = item.DienThoai;
                dbitem.TenDeTai               = item.TenDeTai;
                dbitem.TenDonViChuTri         = item.TenDonViChuTri;
                dbitem.DiaChiDonVi            = item.DiaChiDonVi;
                dbitem.DienThoaiDonVi         = item.DienThoaiDonVi;
                dbitem.DiaDiemNghienCuu       = item.DiaDiemNghienCuu;
                dbitem.ThoiGianNghienCuu      = item.ThoiGianNghienCuu;
                dbitem.TuNgay                 = item.TuNgay;
                dbitem.DenNgay                = item.DenNgay;
                dbitem.BaoCaoTomTat           = item.BaoCaoTomTat;
                dbitem.BaoCaoTongKet          = item.BaoCaoTongKet;
                dbitem.ThuyetMinhDeTai        = item.ThuyetMinhDeTai;
                dbitem.QuyetDinhChapThuanHDDD = item.QuyetDinhChapThuanHDDD;
                dbitem.QuyetDinhGiaoNhiemVu   = item.QuyetDinhGiaoNhiemVu;
                dbitem.HopDongThucHienDeTai   = item.HopDongThucHienDeTai;
                dbitem.BangGiaiNganKinhPhi    = item.BangGiaiNganKinhPhi;
                dbitem.BaiDangBao             = item.BaiDangBao;
                dbitem.HTML                  = item.HTML;
                dbitem.IsDisabled            = item.IsDisabled;
                dbitem.IsDeleted             = item.IsDeleted;
                dbitem.NgayKy_Ngay           = item.NgayKy_Ngay;
                dbitem.NgayKy_Thang          = item.NgayKy_Thang;
                dbitem.NgayKy_Nam            = item.NgayKy_Nam;
                dbitem.NgayKy_ChuKy          = item.NgayKy_ChuKy;
                dbitem.FormConfig            = item.FormConfig;
                dbitem.NgayKy_ChuKyThuTruong = item.NgayKy_ChuKyThuTruong;

                dbitem.ModifiedBy   = Username;
                dbitem.ModifiedDate = DateTime.Now;

                try
                {
                    db.SaveChanges();

                    BS_CUS_Version.update_CUS_Version(db, null, "DTO_PRO_DonXinNghiemThu", DateTime.Now, Username);

                    result = true;
                }
                catch (DbEntityValidationException e)
                {
                    errorLog.logMessage("put_PRO_DonXinNghiemThu", e);
                    result = false;
                }
            }
            return(result);
        }
        public IHttpActionResult Get(int id)
        {
            DTO_PRO_DonXinNghiemThu tbl_PRO_DonXinNghiemThu = BS_PRO_DonXinNghiemThu.get_PRO_DonXinNghiemThu(db, id);

            if (tbl_PRO_DonXinNghiemThu == null)
            {
                return(NotFound());
            }

            return(Ok(tbl_PRO_DonXinNghiemThu));
        }
        public IHttpActionResult Post(DTO_PRO_DonXinNghiemThu tbl_PRO_DonXinNghiemThu)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            DTO_PRO_DonXinNghiemThu result = BS_PRO_DonXinNghiemThu.save_PRO_DonXinNghiemThu(db, tbl_PRO_DonXinNghiemThu, Username);


            if (result != null)
            {
                return(CreatedAtRoute("get_PRO_DonXinNghiemThu", new { id = result.ID }, result));
            }
            return(Conflict());
        }
        public IHttpActionResult GetCustom(int idDeTai, bool?isInput = false)
        {
            DTO_PRO_DonXinNghiemThu tbl_PRO_DonXinNghiemThu = BS_PRO_DonXinNghiemThu.get_PRO_DonXinNghiemThuByDeTai(db, idDeTai);

            string html      = "";
            string htmlPrint = "";

            using (System.IO.StreamReader r = new System.IO.StreamReader(System.Web.Hosting.HostingEnvironment.MapPath("~/Content/FormTemplate/DonXinNghiemThu.html")))
            {
                htmlPrint = r.ReadToEnd();
            }
            using (System.IO.StreamReader r = new System.IO.StreamReader(System.Web.Hosting.HostingEnvironment.MapPath("~/Content/FormTemplate/DonXinNghiemThu_Input.html")))
            {
                html = r.ReadToEnd();
            }
            tbl_PRO_DonXinNghiemThu.HTML      = html;
            tbl_PRO_DonXinNghiemThu.HTMLPrint = htmlPrint;

            return(Ok(tbl_PRO_DonXinNghiemThu));
        }
        public IHttpActionResult Put(int id, DTO_PRO_DonXinNghiemThu tbl_PRO_DonXinNghiemThu)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != tbl_PRO_DonXinNghiemThu.ID)
            {
                return(BadRequest());
            }

            var result = BS_PRO_DonXinNghiemThu.save_PRO_DonXinNghiemThu(db, tbl_PRO_DonXinNghiemThu, Username);

            if (result != null)
            {
                return(StatusCode(HttpStatusCode.NoContent));
            }
            else
            {
                return(NotFound());
            }
        }
        public static DTO_PRO_DonXinNghiemThu save_PRO_DonXinNghiemThu(AppEntities db, DTO_PRO_DonXinNghiemThu item, string Username)
        {
            var dbitem = db.tbl_PRO_DonXinNghiemThu.FirstOrDefault(c => c.IDDeTai == item.IDDeTai && c.IsDeleted == false);

            if (dbitem == null)
            {
                dbitem               = new tbl_PRO_DonXinNghiemThu();
                dbitem.CreatedBy     = Username;
                dbitem.CreatedDate   = DateTime.Now;
                dbitem.TenDeTai      = item.TenDeTai;
                dbitem.HoTenChuNhiem = item.HoTenChuNhiem;
                dbitem.DiaChi        = item.DiaChi;
                dbitem.DienThoai     = item.DienThoai;
                db.tbl_PRO_DonXinNghiemThu.Add(dbitem);
            }
            dbitem.IDDeTai                = item.IDDeTai;
            dbitem.DonVi                  = item.DonVi;
            dbitem.TenDonViChuTri         = item.TenDonViChuTri;
            dbitem.DiaChiDonVi            = item.DiaChiDonVi;
            dbitem.DienThoaiDonVi         = item.DienThoaiDonVi;
            dbitem.DiaDiemNghienCuu       = item.DiaDiemNghienCuu;
            dbitem.ThoiGianNghienCuu      = item.ThoiGianNghienCuu;
            dbitem.TuNgay                 = item.TuNgay;
            dbitem.DenNgay                = item.DenNgay;
            dbitem.BaoCaoTomTat           = item.BaoCaoTomTat;
            dbitem.BaoCaoTongKet          = item.BaoCaoTongKet;
            dbitem.ThuyetMinhDeTai        = item.ThuyetMinhDeTai;
            dbitem.QuyetDinhChapThuanHDDD = item.QuyetDinhChapThuanHDDD;
            dbitem.QuyetDinhGiaoNhiemVu   = item.QuyetDinhGiaoNhiemVu;
            dbitem.HopDongThucHienDeTai   = item.HopDongThucHienDeTai;
            dbitem.BangGiaiNganKinhPhi    = item.BangGiaiNganKinhPhi;
            dbitem.BaiDangBao             = item.BaiDangBao;
            dbitem.HTML                  = item.HTML;
            dbitem.IsDisabled            = item.IsDisabled;
            dbitem.IsDeleted             = item.IsDeleted;
            dbitem.NgayKy_Ngay           = item.NgayKy_Ngay;
            dbitem.NgayKy_Thang          = item.NgayKy_Thang;
            dbitem.NgayKy_Nam            = item.NgayKy_Nam;
            dbitem.NgayKy_ChuKy          = item.NgayKy_ChuKy;
            dbitem.FormConfig            = item.FormConfig;
            dbitem.NgayKy_ChuKyThuTruong = item.NgayKy_ChuKyThuTruong;

            dbitem.CreatedBy   = Username;
            dbitem.CreatedDate = DateTime.Now;

            dbitem.ModifiedBy   = Username;
            dbitem.ModifiedDate = DateTime.Now;


            try
            {
                db.SaveChanges();

                BS_CUS_Version.update_CUS_Version(db, null, "DTO_PRO_DonXinNghiemThu", DateTime.Now, Username);


                item.ID = dbitem.ID;

                item.CreatedBy   = dbitem.CreatedBy;
                item.CreatedDate = dbitem.CreatedDate;

                item.ModifiedBy   = dbitem.ModifiedBy;
                item.ModifiedDate = dbitem.ModifiedDate;
            }
            catch (DbEntityValidationException e)
            {
                errorLog.logMessage("save_PRO_DonXinNghiemThu", e);
                item = null;
            }
            return(item);
        }
        public static DTO_PRO_DonXinNghiemThu get_PRO_DonXinNghiemThuByDeTai(AppEntities db, int deTaiId)
        {
            var query = db.tbl_PRO_DonXinNghiemThu.Where(d => d.IDDeTai == deTaiId && d.IsDeleted == false).Select(s => new DTO_PRO_DonXinNghiemThu
            {
                ID                     = s.ID,
                IDDeTai                = s.IDDeTai,
                HoTenChuNhiem          = s.HoTenChuNhiem,
                DonVi                  = s.DonVi,
                DiaChi                 = s.DiaChi,
                DienThoai              = s.DienThoai,
                TenDeTai               = s.TenDeTai,
                TenDonViChuTri         = s.TenDonViChuTri,
                DiaChiDonVi            = s.DiaChiDonVi,
                DienThoaiDonVi         = s.DienThoaiDonVi,
                DiaDiemNghienCuu       = s.DiaDiemNghienCuu,
                ThoiGianNghienCuu      = s.ThoiGianNghienCuu,
                TuNgay                 = s.TuNgay,
                DenNgay                = s.DenNgay,
                BaoCaoTomTat           = s.BaoCaoTomTat,
                BaoCaoTongKet          = s.BaoCaoTongKet,
                ThuyetMinhDeTai        = s.ThuyetMinhDeTai,
                QuyetDinhChapThuanHDDD = s.QuyetDinhChapThuanHDDD,
                QuyetDinhGiaoNhiemVu   = s.QuyetDinhGiaoNhiemVu,
                HopDongThucHienDeTai   = s.HopDongThucHienDeTai,
                BangGiaiNganKinhPhi    = s.BangGiaiNganKinhPhi,
                BaiDangBao             = s.BaiDangBao,
                HTML                   = s.HTML,
                IsDisabled             = s.IsDisabled,
                IsDeleted              = s.IsDeleted,
                CreatedDate            = s.CreatedDate,
                CreatedBy              = s.CreatedBy,
                ModifiedDate           = s.ModifiedDate,
                ModifiedBy             = s.ModifiedBy,
                NgayKy_Ngay            = s.NgayKy_Ngay,
                NgayKy_Thang           = s.NgayKy_Thang,
                NgayKy_Nam             = s.NgayKy_Nam,
                NgayKy_ChuKy           = s.NgayKy_ChuKy,
                FormConfig             = s.FormConfig,
                NgayKy_ChuKyThuTruong  = s.NgayKy_ChuKyThuTruong
            }).FirstOrDefault();

            if (query == null)
            {
                query = new DTO_PRO_DonXinNghiemThu
                {
                    IDDeTai = deTaiId
                };
                var detai = db.tbl_PRO_DeTai.FirstOrDefault(c => c.ID == deTaiId);
                if (detai != null)
                {
                    query.TenDeTai = detai.TenTiengViet;

                    var chunhiem = db.tbl_CUS_HRM_STAFF_NhanSu.FirstOrDefault(c => c.ID == detai.IDChuNhiem);
                    if (chunhiem != null)
                    {
                        query.HoTenChuNhiem = chunhiem.Name;
                        query.DiaChi        = chunhiem.DiaChi;
                        query.DienThoai     = chunhiem.SoDienThoai;
                    }
                }
            }

            return(query);
        }