Пример #1
0
        public ActionResult Edit([Bind(Include = "PYC_IDPhieuYeuCau,BD_SoThe,TL_SoDangKyCaBiet,NV_ID,PYC_NgayMuon,PYC_NgayTra,PYC_Tre,PYC_TrangThai")] PhieuYeuCau phieuYeuCau)
        {
            string id         = Request["PYC_IDPhieuYeuCau"];
            string SoThe      = Request["BD_SoThe"];
            string SDKCB      = Request["TL_SoDangKyCaBiet"];
            string selectIDNV = db.Database.SqlQuery <string>("select NV_ID FROM NHANVIEN WHERE NV_EMAIL = '" + Session["MaNV"] + "'").FirstOrDefault();

            if ((SoThe.Length == 0) || (SDKCB.Length == 0))
            {
                ModelState.AddModelError("", "Số thể và số đăng ký cá biệt không được rỗng");
            }
            else
            {
                string KTSoThe  = db.Database.SqlQuery <string>("select BD_SoThe from BanDoc where BD_SoThe ='" + SoThe + "'").FirstOrDefault();
                string KTMaSach = db.Database.SqlQuery <string>("select TL_SoDangKyCaBiet from TaiLieu where TL_SoDangKyCaBiet ='" + SDKCB + "'").FirstOrDefault();
                if (KTMaSach != null && KTSoThe != null)
                {
                    if (ModelState.IsValid)
                    {
                        phieuYeuCau.NV_ID           = selectIDNV;
                        db.Entry(phieuYeuCau).State = EntityState.Modified;
                        db.SaveChanges();
                        return(RedirectToAction("Index"));
                    }
                }
                else
                {
                    ModelState.AddModelError("", "Số thẻ hoặc số đăng ký cá biệt sai !");
                }
            }
            ViewBag.BD_SoThe          = new SelectList(db.BanDocs, "BD_SoThe", "BD_HoVaTen", phieuYeuCau.BD_SoThe);
            ViewBag.NV_ID             = new SelectList(db.NhanViens, "NV_ID", "NV_HOTEN", phieuYeuCau.NV_ID);
            ViewBag.TL_SoDangKyCaBiet = new SelectList(db.TaiLieux, "TL_SoDangKyCaBiet", "TL_TieuDe", phieuYeuCau.TL_SoDangKyCaBiet);
            return(View(phieuYeuCau));
        }
Пример #2
0
        public bool CapNhatPhieuYeuCau(PhieuYeuCau pycobj)
        {
            try
            {
                if (conn.State != System.Data.ConnectionState.Open)
                {
                    conn.Open();
                }

                string     statement = "EXEC PHIEUYEUCAU_Upd @MaPYC, @Ngaytao, @MaNV";
                SqlCommand cmd       = new SqlCommand(statement, conn);
                cmd.Parameters.Add("@MaPYC", System.Data.SqlDbType.VarChar).Value   = pycobj.MiMaPYC.ToString();
                cmd.Parameters.Add("@Ngaytao", System.Data.SqlDbType.VarChar).Value = pycobj.MdtNgaytao.ToString();
                cmd.Parameters.Add("@MaNV", System.Data.SqlDbType.VarChar).Value    = pycobj.MiMaNV.ToString();
                cmd.ExecuteNonQuery();

                conn.Close();
                return(true);
            }
            catch (Exception)
            {
                conn.Close();
                return(false);
            }
        }
Пример #3
0
        public PhieuYeuCau PhieuYeuCauByMaPYC(string sMaPYC)
        {
            try
            {
                if (conn.State != System.Data.ConnectionState.Open)
                {
                    conn.Open();
                }

                SqlCommand cmd = new SqlCommand("EXEC PHIEUYEUCAU_ById @MaPYC ", conn);
                cmd.Parameters.Add("@MaPYC", SqlDbType.VarChar).Value = sMaPYC;
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                DataTable      dt = new DataTable();
                da.Fill(dt);
                conn.Close();
                PhieuYeuCau result = new PhieuYeuCau(Int32.Parse(dt.Rows[0][0].ToString()),
                                                     Convert.ToDateTime(dt.Rows[0][1].ToString()),
                                                     Int32.Parse(dt.Rows[0][2].ToString()),
                                                     Int32.Parse(dt.Rows[0][3].ToString()));
                return(result);
            }
            catch (Exception)
            {
                conn.Close();
                return(null);
            }
        }
Пример #4
0
        public ActionResult DeleteConfirmed(int id)
        {
            //ChuyenTrangThai(Request["TL_SoDangKyCaBiet"], 0);
            PhieuYeuCau phieuYeuCau = db.PhieuYeuCaus.Find(id);

            db.PhieuYeuCaus.Remove(phieuYeuCau);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #5
0
        public RedirectToRouteResult ChuyenTrangThai(int id, short id2, string id3)
        {
            PhieuYeuCau phieuYeuCau = db.PhieuYeuCaus.FirstOrDefault(m => m.PYC_IDPhieuYeuCau == id);

            if (phieuYeuCau != null)
            {
                phieuYeuCau.PYC_TrangThai = id2;
                db.SaveChanges();
            }
            return(RedirectToAction(""));
        }
Пример #6
0
        public IActionResult Detail(int ID)
        {
            PhieuYeuCau model = new PhieuYeuCau();

            model.NgayTao = DateTime.Now;
            model.DaGui   = true;
            if (ID > 0)
            {
                model = _phieuYeuCauRepository.GetByID(ID);
            }
            return(View(model));
        }
Пример #7
0
        //public ActionResult CreatePYC()
        //{
        //    return View();
        //}

        //[HttpPost]
        public ActionResult CreatePYC([Bind(Include = "BD_SoThe,TL_SoDangKyCaBiet,NV_ID,PYC_NgayMuon,PYC_NgayTra")] PhieuYeuCau phieuYeuCau)
        {
            ViewBag.ST  = Session["SoThe"];
            ViewBag.SDK = Session["SDKCB"];
            string SDKKB = ViewBag.SDK;
            string SoThe = ViewBag.ST;

            if (SDKKB.Length > 0 && SoThe.Length > 0)
            {
                int MaTT = db.Database.SqlQuery <int>("select 1 from PhieuYeuCau where TL_SoDangKyCaBiet ='" + SDKKB + "' and PYC_TrangThai=1").FirstOrDefault();

                if (MaTT == 1)
                {
                    ModelState.AddModelError("", "Sách " + Session["SDKCB"] + " đã được mượn trước !");
                }
                else
                {
                    short SLCoTheMuon = db.Database.SqlQuery <short>("select BD_GioiHanMuon from BanDoc where BD_SoThe ='" + SoThe + "'").SingleOrDefault();

                    int SLDaMuon = db.Database.SqlQuery <int>("select count(*) from PhieuYeuCau where BD_SoThe ='" + SoThe + "' and PYC_TrangThai = 1").SingleOrDefault();

                    if (SLDaMuon >= SLCoTheMuon)
                    {
                        ModelState.AddModelError("", "Bạn đã đạt giới hạn mượn");
                    }
                    //string selectIDNV = db.Database.SqlQuery<string>("select NV_ID FROM NHANVIEN WHERE NV_EMAIL = '" + Session["MaNV"] + "'").FirstOrDefault();



                    ViewBag.min = DateTime.Now;
                    var sl = from p in db.PhieuYeuCaus select p;
                    if (ModelState.IsValid)
                    {
                        phieuYeuCau.NV_ID             = Comand.NV_ID;
                        phieuYeuCau.PYC_NgayMuon      = DateTime.Now;
                        phieuYeuCau.PYC_NgayTra       = DateTime.Now.AddDays(+7);
                        phieuYeuCau.PYC_IDPhieuYeuCau = autoMaPYC(sl.Count());
                        phieuYeuCau.BD_SoThe          = SoThe;
                        phieuYeuCau.TL_SoDangKyCaBiet = SDKKB;
                        phieuYeuCau.PYC_TrangThai     = 1;
                        db.PhieuYeuCaus.Add(phieuYeuCau);
                        db.SaveChanges();
                        return(RedirectToAction("getListDaMuon", new { id = SoThe }));
                    }
                }
                //else ModelState.AddModelError("", "Số thẻ hoặc số đăng ký cá biệt sai !");
            }
            else
            {
                ModelState.AddModelError("", "Số thể và mã sách không được rỗng !");
            }
            return(View());
        }
Пример #8
0
        // GET: PhieuYeuCaus/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            PhieuYeuCau phieuYeuCau = db.PhieuYeuCaus.Find(id);

            if (phieuYeuCau == null)
            {
                return(HttpNotFound());
            }
            return(View(phieuYeuCau));
        }
Пример #9
0
        // GET: PhieuYeuCaus/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            PhieuYeuCau phieuYeuCau = db.PhieuYeuCaus.Find(id);

            if (phieuYeuCau == null)
            {
                return(HttpNotFound());
            }
            ViewBag.BD_SoThe          = new SelectList(db.BanDocs, "BD_SoThe", "BD_HoVaTen", phieuYeuCau.BD_SoThe);
            ViewBag.NV_ID             = new SelectList(db.NhanViens, "NV_ID", "NV_HOTEN", phieuYeuCau.NV_ID);
            ViewBag.TL_SoDangKyCaBiet = new SelectList(db.TaiLieux, "TL_SoDangKyCaBiet", "TL_TieuDe", phieuYeuCau.TL_SoDangKyCaBiet);
            return(View(phieuYeuCau));
        }
Пример #10
0
        public ActionResult XacNhanTra(int?id, string id2)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            PhieuYeuCau phieuYeuCau = db.PhieuYeuCaus.Find(id);

            if (phieuYeuCau == null)
            {
                return(HttpNotFound());
            }
            //string masach = db.Database.SqlQuery<string>("select TL_SoDangKyCaBiet from PhieuYeuCau where PYC_IDPhieuYeuCau ='" + id + "'").SingleOrDefault();
            //ChuyenTrangThai(phieuYeuCau.PYC_IDPhieuYeuCau, 0, phieuYeuCau.);
            db.SaveChanges();
            return(View());
        }
Пример #11
0
        public ActionResult Create([Bind(Include = "BD_SoThe,TL_SoDangKyCaBiet,NV_ID,PYC_NgayMuon,PYC_NgayTra")] PhieuYeuCau phieuYeuCau)
        {
            string SDKKB = Request["TL_SoDangKyCaBiet"];
            string SoThe = Request["BD_SoThe"];

            //string SDKCB = Request["TL_SoDangKyCaBiet"];
            if ((SoThe.Length == 0) || (SDKKB.Length == 0))
            {
                ModelState.AddModelError("", "Số thể và số đăng ký cá biệt không được rỗng");
            }
            else
            {
                string KTSoThe    = db.Database.SqlQuery <string>("select BD_SoThe from BanDoc where BD_SoThe ='" + SoThe + "'").FirstOrDefault();
                string KTMaSach   = db.Database.SqlQuery <string>("select TL_SoDangKyCaBiet from TaiLieu where TL_SoDangKyCaBiet ='" + SDKKB + "'").FirstOrDefault();
                string selectIDNV = db.Database.SqlQuery <string>("select NV_ID FROM NHANVIEN WHERE NV_EMAIL = '" + Session["MaNV"] + "'").FirstOrDefault();
                if (KTMaSach != null && KTSoThe != null)
                {
                    ViewBag.min = DateTime.Now;
                    var sl = from p in db.PhieuYeuCaus select p;
                    if (ModelState.IsValid)
                    {
                        phieuYeuCau.NV_ID             = selectIDNV;
                        phieuYeuCau.PYC_IDPhieuYeuCau = autoMaPYC(sl.Count());
                        phieuYeuCau.BD_SoThe          = SoThe;
                        phieuYeuCau.TL_SoDangKyCaBiet = SDKKB;
                        db.PhieuYeuCaus.Add(phieuYeuCau);
                        db.SaveChanges();
                        return(RedirectToAction("Index"));
                    }
                }
                else
                {
                    ModelState.AddModelError("", "Số thẻ hoặc số đăng ký cá biệt sai !");
                }
            }
            ViewBag.BD_SoThe          = new SelectList(db.BanDocs, "BD_SoThe", "BD_HoVaTen", phieuYeuCau.BD_SoThe);
            ViewBag.NV_ID             = new SelectList(db.NhanViens, "NV_ID", "NV_HOTEN", phieuYeuCau.NV_ID);
            ViewBag.TL_SoDangKyCaBiet = new SelectList(db.TaiLieux, "TL_SoDangKyCaBiet", "TL_TieuDe", phieuYeuCau.TL_SoDangKyCaBiet);
            return(View(phieuYeuCau));
        }
Пример #12
0
        public IActionResult SavePhieuYeuCau_ThuocTinh(PhieuYeuCauViewModel model)
        {
            if ((model.PhieuYeuCauDataTransfer.ID > 0) && (model.PhieuYeuCau_ThuocTinhDataTransfer != null))
            {
                PhieuYeuCau phieuYeuCau = _phieuYeuCauRepository.GetByID(model.PhieuYeuCauDataTransfer.ID);
                if (phieuYeuCau != null)
                {
                    phieuYeuCau.DangXuLy  = model.PhieuYeuCau_ThuocTinhDataTransfer.DangXuLy001;
                    phieuYeuCau.HoanThanh = model.PhieuYeuCau_ThuocTinhDataTransfer.HoanThanh001;
                    _phieuYeuCauRepository.Update(phieuYeuCau.ID, phieuYeuCau);
                    PhieuYeuCau_ThuocTinh phieuYeuCau_ThuocTinhBinhLuan = model.PhieuYeuCau_ThuocTinhDataTransfer;
                    phieuYeuCau_ThuocTinhBinhLuan.NguoiTaoID    = RequestUserID;
                    phieuYeuCau_ThuocTinhBinhLuan.NgayTao       = DateTime.Now;
                    phieuYeuCau_ThuocTinhBinhLuan.PhieuYeuCauID = model.PhieuYeuCauDataTransfer.ID;
                    phieuYeuCau_ThuocTinhBinhLuan.ParentID      = model.PhieuYeuCauDataTransfer.ID;
                    phieuYeuCau_ThuocTinhBinhLuan.Code          = AppGlobal.PhieuYeuCauPhanHoi;
                    if (phieuYeuCau_ThuocTinhBinhLuan.ID > 0)
                    {
                        phieuYeuCau_ThuocTinhBinhLuan.Initialization(InitType.Update, RequestUserID);
                        _phieuYeuCau_ThuocTinhRepository.Update(phieuYeuCau_ThuocTinhBinhLuan.ID, phieuYeuCau_ThuocTinhBinhLuan);
                    }
                    else
                    {
                        phieuYeuCau_ThuocTinhBinhLuan.Initialization(InitType.Insert, RequestUserID);
                        _phieuYeuCau_ThuocTinhRepository.Create(phieuYeuCau_ThuocTinhBinhLuan);
                    }
                    if (phieuYeuCau_ThuocTinhBinhLuan.ID > 0)
                    {
                        if (Request.Form.Files.Count > 0)
                        {
                            StringBuilder txt = new StringBuilder();
                            for (int i = 0; i < Request.Form.Files.Count; i++)
                            {
                                var file = Request.Form.Files[i];
                                if (file != null)
                                {
                                    string fileExtension = Path.GetExtension(file.FileName);
                                    string fileName      = Path.GetFileNameWithoutExtension(file.FileName);
                                    fileName = AppGlobal.SetName(model.PhieuYeuCauDataTransfer.TieuDe);
                                    fileName = phieuYeuCau_ThuocTinhBinhLuan.PhieuYeuCauID + "-" + phieuYeuCau_ThuocTinhBinhLuan.ID + "-" + fileName + "-" + AppGlobal.DateTimeCode + fileExtension;
                                    var physicalPath = Path.Combine(_hostingEnvironment.WebRootPath, AppGlobal.URLPhieuYeuCau, fileName);
                                    using (var stream = new FileStream(physicalPath, FileMode.Create))
                                    {
                                        file.CopyTo(stream);
                                        PhieuYeuCau_ThuocTinh phieuYeuCau_ThuocTinh = new PhieuYeuCau_ThuocTinh();
                                        phieuYeuCau_ThuocTinh.Initialization(InitType.Insert, RequestUserID);
                                        phieuYeuCau_ThuocTinh.Code          = AppGlobal.PhieuYeuCauDinhKem;
                                        phieuYeuCau_ThuocTinh.NguoiTaoID    = RequestUserID;
                                        phieuYeuCau_ThuocTinh.NgayTao       = DateTime.Now;
                                        phieuYeuCau_ThuocTinh.PhieuYeuCauID = phieuYeuCau_ThuocTinhBinhLuan.PhieuYeuCauID;
                                        phieuYeuCau_ThuocTinh.ParentID      = phieuYeuCau_ThuocTinhBinhLuan.ID;
                                        phieuYeuCau_ThuocTinh.Title         = fileName;
                                        _phieuYeuCau_ThuocTinhRepository.Create(phieuYeuCau_ThuocTinh);

                                        if ((fileExtension.Contains(@".png") == true) || (fileExtension.Contains(@".jpg") == true) || (fileExtension.Contains(@".gif") == true) || (fileExtension.Contains(@".ipeg") == true) || (fileExtension.Contains(@".webp") == true))
                                        {
                                            string url = "/" + AppGlobal.URLPhieuYeuCau + "/" + fileName;
                                            txt.AppendLine("<br/>");
                                            txt.AppendLine("<img src='" + url + "' class='img-thumbnail' alt='" + model.PhieuYeuCauDataTransfer.TieuDe + "' title='" + model.PhieuYeuCauDataTransfer.TieuDe + "' />");
                                        }
                                    }
                                }
                            }
                            phieuYeuCau_ThuocTinhBinhLuan.Title = phieuYeuCau_ThuocTinhBinhLuan.Title + txt.ToString();
                            _phieuYeuCau_ThuocTinhRepository.Update(phieuYeuCau_ThuocTinhBinhLuan.ID, phieuYeuCau_ThuocTinhBinhLuan);
                        }
                    }
                }
            }
            string controller = "PhieuYeuCau";
            string action     = "InfoByNhanVienID";

            if (RequestUserID > 0)
            {
                Membership membership = _membershipRepository.GetByID(RequestUserID);
                if (membership != null)
                {
                    if (membership.ParentID == AppGlobal.QuanTriID)
                    {
                        action = "Detail";
                    }
                }
            }
            return(RedirectToAction(action, controller, new { ID = model.PhieuYeuCauDataTransfer.ID }));
        }
Пример #13
0
        public IActionResult SavePhieuYeuCau(PhieuYeuCau model)
        {
            model.NgayTao = new DateTime(model.NgayTao.Value.Year, model.NgayTao.Value.Month, model.NgayTao.Value.Day, DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second);
            if (model.ID > 0)
            {
                model.Initialization(InitType.Update, RequestUserID);
                _phieuYeuCauRepository.Update(model.ID, model);
            }
            else
            {
                model.Initialization(InitType.Insert, RequestUserID);
                _phieuYeuCauRepository.Create(model);
            }
            if (model.ID > 0)
            {
                if (Request.Form.Files.Count > 0)
                {
                    StringBuilder txt = new StringBuilder();
                    for (int i = 0; i < Request.Form.Files.Count; i++)
                    {
                        var file = Request.Form.Files[i];
                        if (file != null)
                        {
                            string fileExtension = Path.GetExtension(file.FileName);
                            string fileName      = Path.GetFileNameWithoutExtension(file.FileName);
                            fileName = AppGlobal.SetName(model.TieuDe);
                            fileName = model.ID + "-" + fileName + "-" + AppGlobal.DateTimeCode + fileExtension;
                            var physicalPath = Path.Combine(_hostingEnvironment.WebRootPath, AppGlobal.URLPhieuYeuCau, fileName);
                            using (var stream = new FileStream(physicalPath, FileMode.Create))
                            {
                                file.CopyTo(stream);
                                PhieuYeuCau_ThuocTinh phieuYeuCau_ThuocTinh = new PhieuYeuCau_ThuocTinh();
                                phieuYeuCau_ThuocTinh.Initialization(InitType.Insert, RequestUserID);
                                phieuYeuCau_ThuocTinh.Code          = AppGlobal.PhieuYeuCauDinhKem;
                                phieuYeuCau_ThuocTinh.NguoiTaoID    = RequestUserID;
                                phieuYeuCau_ThuocTinh.NgayTao       = DateTime.Now;
                                phieuYeuCau_ThuocTinh.PhieuYeuCauID = model.ID;
                                phieuYeuCau_ThuocTinh.ParentID      = model.ID;
                                phieuYeuCau_ThuocTinh.Title         = fileName;
                                phieuYeuCau_ThuocTinh.URL           = AppGlobal.DomainSub + "/" + AppGlobal.URLPhieuYeuCau + "/" + phieuYeuCau_ThuocTinh.Title;
                                _phieuYeuCau_ThuocTinhRepository.Create(phieuYeuCau_ThuocTinh);
                                if ((fileExtension.Contains(@".png") == true) || (fileExtension.Contains(@".jpg") == true) || (fileExtension.Contains(@".gif") == true) || (fileExtension.Contains(@".ipeg") == true) || (fileExtension.Contains(@".webp") == true))
                                {
                                    txt.AppendLine("<br/>");
                                    txt.AppendLine("<img src='" + phieuYeuCau_ThuocTinh.URL + "' class='img-thumbnail' alt='" + model.TieuDe + "' title='" + model.TieuDe + "' />");
                                }
                            }
                        }
                    }
                    model.NoiDung = model.NoiDung + txt.ToString();
                    _phieuYeuCauRepository.Update(model.ID, model);
                }
            }
            string controller = "PhieuYeuCau";
            string action     = "DetailByNhanVienID";

            if (RequestUserID > 0)
            {
                Membership membership = _membershipRepository.GetByID(RequestUserID);
                if (membership != null)
                {
                    if (membership.ParentID == AppGlobal.QuanTriID)
                    {
                        action = "Detail";
                    }
                }
            }
            return(RedirectToAction(action, controller, new { ID = model.ID }));
        }