Exemplo n.º 1
0
        private void btnAddNhom_Click(object sender, EventArgs e)
        {
            SetErrorProvider();
            if (cbLoaiDoAn.Text != "" && txtTenNhom.Text != "" && txtThanhVienNhom.Text != "" &&
                cbMaMonHoc.Text != "" && cbMaChuyenNganh.Text != "")
            {
                using (var _context = new DBLapTrinhWin())
                {
                    if (cbLoaiDoAn.SelectedIndex == 0) ///  Tạo ID nhóm đồ án môn học
                    {
                        string s   = "DAMH" + "-" + cbMaMonHoc.Text;
                        var    stt = from u in _context.NhomSinhViens
                                     where u.IDNhom.Contains(s)
                                     select u;
                        int    sttcuoicung = stt.Count();
                        string Stt         = NhomController.SoThuTuTiepTheo(sttcuoicung);
                        txtIDNhom.Text = NhomController.CreateIDNhom("DAMH", cbMaMonHoc.Text, Stt);
                    }
                    else if (cbLoaiDoAn.SelectedIndex == 1) /// tạo ID nhóm tiểu luận chuyên ngành
                    {
                        string s   = "TLCN" + "-" + cbMaChuyenNganh.Text;
                        var    stt = from u in _context.NhomSinhViens
                                     where u.IDNhom.Contains(s)
                                     select u;
                        int    sttcuoicung = stt.Count();
                        string Stt         = NhomController.SoThuTuTiepTheo(sttcuoicung);
                        txtIDNhom.Text = NhomController.CreateIDNhom("TLCN", cbMaChuyenNganh.Text, Stt);
                    }
                    else if (cbLoaiDoAn.SelectedIndex == 2)
                    {
                        string s   = "DATN" + "-" + cbMaChuyenNganh.Text;
                        var    stt = from u in _context.NhomSinhViens
                                     where u.IDNhom.Contains(s)
                                     select u;
                        int    sttcuoicung = stt.Count();
                        string Stt         = NhomController.SoThuTuTiepTheo(sttcuoicung);
                        txtIDNhom.Text = NhomController.CreateIDNhom("DATN", cbMaChuyenNganh.Text, Stt);
                    }
                }

                NhomSinhVien nhom = new NhomSinhVien();
                nhom.IDNhom    = txtIDNhom.Text;
                nhom.TenNhom   = txtTenNhom.Text;
                nhom.ThanhVien = txtThanhVienNhom.Text;
                using (var _context = new DBLapTrinhWin())
                {
                    _context.NhomSinhViens.Add(nhom);
                    _context.SaveChanges();
                }

                DangKyNhomThanhCongEventArgs arg = new DangKyNhomThanhCongEventArgs {
                    IdNhom = txtIDNhom.Text
                };
                OnDangKyNhomThanhCong(arg);
                this.Close();
            }
        }
Exemplo n.º 2
0
        public async Task <IActionResult> LoadCurrentDeTai()
        {
            NhomSinhVien nhom = await _serviceNhomSV.GetEntity(x => x.IdsinhVien == long.Parse(User.Identity.Name) && x.IdnhomNavigation.Status == (int)BaseStatus.Active);

            if (nhom == null)
            {
                return(Ok());
            }
            var DeTai = await _service.GetEntity(x => x.Id == nhom.IddeTai && x.TinhTrangDeTai == (int)StatusDeTai.DaDangKy);

            return(PartialView("_LoadDeTaiDaDangKy", DeTai));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> LuuDeTai(long id)
        {
            var DeTai = await _service.GetById(id);

            if (DeTai.TinhTrangDangKy == (int)StatusDangKyDeTai.Het)
            {
                return(Ok(new
                {
                    status = false,
                    mess = "Đề tài đã hết"
                }));
            }
            NhomSinhVien nhomSinhVien = new NhomSinhVien
            {
                IdsinhVien = long.Parse(User.Identity.Name),
                IddeTai    = DeTai.Id
            };

            if (DeTai != null)
            {
                Nhom nhom = new Nhom();
                nhom.Status = (int)BaseStatus.Active;
                nhom.NhomSinhVien.Add(nhomSinhVien);
                await _serviceNhom.Add(nhom);

                DeTai.NgayDangKy      = DateTime.Now;
                DeTai.TinhTrangDangKy = (int)StatusDangKyDeTai.Het;
                DeTai.IdNguoiDangKy   = long.Parse(User.Identity.Name);
                DeTai.TinhTrangDeTai  = (int)StatusDeTai.DaDangKy;
                await _service.Update(DeTai);

                return(Json(new
                {
                    status = true,
                    data = DeTai,
                    mess = "Lưu đề tài thành công"
                }));
            }
            else
            {
                return(Ok(new
                {
                    status = false,
                }));
            }
        }
Exemplo n.º 4
0
        public async Task <IActionResult> Index()
        {
            var listNhom = await _serviceNhomSV.GetAll(x => x.IdsinhVien == long.Parse(User.Identity.Name));

            if (!listNhom.Any())
            {
                return(View());
            }
            NhomSinhVien          nhom          = listNhom.SingleOrDefault(x => x.IdnhomNavigation.Status == (int)BaseStatus.Active);
            IEnumerable <BaiPost> baiPostsRieng = await _serviceBaiPost.GetAll(x => x.IddeTaiNghienCuu == nhom.IddeTai && x.Status.Value == (int)BaseStatus.Active);

            IEnumerable <BaiPost> baiPostsChung = await _serviceBaiPost.GetAll(x => x.IdnguoiTao == nhom.IddeTaiNavigation.IdgiangVien &&
                                                                               x.IddeTaiNghienCuu == DefaultValue.IddeTaiNghienCuu &&
                                                                               x.Status.Value == (int)BaseStatus.Active);

            ViewBag.DeTai     = nhom.IddeTaiNavigation;
            ViewBag.ListDeTai = listNhom.Select(x => x.IddeTaiNavigation);
            return(View(baiPostsRieng.Concat(baiPostsChung).OrderByDescending(y => y.NgayPost)));
        }
Exemplo n.º 5
0
        public async Task <IActionResult> DangKyNhom(long idDeTai, string mssv)
        {
            long masv = 0;

            long.TryParse(mssv, out masv);
            var SV = await _serviceSV.GetById(masv);

            if (SV == null)
            {
                return(Ok(new
                {
                    status = false,
                    mess = MessageResult.NotFoundSV
                }));
            }
            var checkSV = SV.NhomSinhVien.Where(x => x.IdnhomNavigation.Status == (int)BaseStatus.Active);

            if (checkSV.Any())
            {
                return(Ok(new
                {
                    status = false,
                    mess = MessageResult.ExistDeTai
                }));
            }
            var DeTai = await _service.GetById(idDeTai);

            var          Nhom   = DeTai.NhomSinhVien.SingleOrDefault(x => x.IddeTai == DeTai.Id);
            NhomSinhVien nhomSV = new NhomSinhVien {
                IddeTai = DeTai.Id, Idnhom = Nhom.Idnhom, IdsinhVien = SV.Mssv
            };
            await _serviceNhomSV.Add(nhomSV);

            return(Ok(new
            {
                status = true,
                mess = MessageResult.RegisterSuccess
            }));
        }
Exemplo n.º 6
0
        public async Task <ActionResult> DeXuatDeTai(DeTaiNghienCuuViewModel vmodel)
        {
            var SV = await _serviceSV.GetById(long.Parse(User.Identity.Name));

            if (SV == null)
            {
                return(Ok(new
                {
                    status = false,
                    mess = MessageResult.NotFoundSV
                }));
            }
            if (vmodel.IdgiangVien == 0)
            {
                vmodel.IdgiangVien = null;
            }
            //Update DeTai
            if (vmodel.Id > 0)
            {
                var DeTai = await _service.GetById(vmodel.Id);

                DeTai.IdgiangVien = vmodel.IdgiangVien;
                DeTai.MoTa        = vmodel.MoTa;
                DeTai.TenDeTai    = vmodel.TenDeTai;
                if (await UpLoadFile(vmodel.Files, DeTai) == false)
                {
                    return(Json(new { status = false, mess = MessageResult.UpLoadFileFail }));
                }
                await _service.Update(DeTai);

                return(Ok(new { status = true, mess = MessageResult.UpdateSuccess }));
            }
            //Kiểm tra SV đã có đề tài?
            var nhomSV = SV.NhomSinhVien.SingleOrDefault(x => x.IdnhomNavigation.Status == (int)BaseStatus.Active);

            if (nhomSV != null)
            {
                return(Ok(new
                {
                    status = false,
                    mess = MessageResult.ExistDeTai
                }));
            }
            IEnumerable <DeTaiNghienCuu> list = await _service.GetAll();

            if (list.Count() != 0)
            {
                DeTaiNghienCuu LastE = list.OrderBy(x => x.Id).LastOrDefault();
                vmodel.Id = _service.KhoiTaoMa(LastE);
            }
            else
            {
                vmodel.Id = long.Parse(DateTime.Now.Year.ToString() + "001");
            }

            var model = new DeTaiNghienCuu()
            {
                Id              = vmodel.Id,
                TenDeTai        = vmodel.TenDeTai,
                MoTa            = vmodel.MoTa,
                NgayDangKy      = DateTime.Now,
                IdNguoiDangKy   = long.Parse(User.Identity.Name),
                IdgiangVien     = vmodel.IdgiangVien,
                NgayLap         = DateTime.Now,
                TinhTrangDangKy = (int)StatusDangKyDeTai.Het,
                TinhTrangDeTai  = (int)StatusDeTai.DaDangKy,
                Loai            = LoaiDeTai.DeXuat
            };

            if (await UpLoadFile(vmodel.Files, model) == false)
            {
                return(Json(new { status = false, mess = MessageResult.UpLoadFileFail }));
            }
            try
            {
                Nhom nhom = new Nhom();
                await _serviceNhom.Add(nhom);

                NhomSinhVien nhomSinhVien = new NhomSinhVien {
                    Idnhom = nhom.Id, IdsinhVien = SV.Mssv
                };
                model.NhomSinhVien.Add(nhomSinhVien);
                await _service.Add(model);

                return(Json(new { status = true, create = true, data = model, mess = MessageResult.CreateSuccess }));
            }
            catch
            {
                return(Json(new { status = false, mess = MessageResult.Fail }));
            }
        }