public async Task <ActionResult> Create(DeTaiNghienCuuViewModel vmodel) { 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, IdgiangVien = long.Parse(User.Identity.Name), NgayLap = DateTime.Now, TinhTrangDangKy = (int)StatusDangKyDeTai.Con, TinhTrangDeTai = (int)StatusDeTai.MoiTao, Loai = LoaiDeTai.CoSan }; if (await UpLoadFile(vmodel.Files, model) == false) { return(Json(new { status = false, mess = MessageResult.UpLoadFileFail })); } try { var isAuthorize = await _authorizationService.AuthorizeAsync(User, model, DeTaiNghienCuuOperation.Create); if (!isAuthorize.Succeeded) { return(Ok(new { status = false, toastr = MessageResult.AccessDenied })); } await _service.Add(model); return(Json(new { status = true, create = true, data = new { NgayLap = DateTime.Now.ToString("dd/MM/yyyy"), Id = vmodel.Id, TenTep = model.TenTep }, mess = MessageResult.CreateSuccess })); } catch (Exception e) { return(Json(new { status = false, mess = e.ToString() })); } }
public async Task <IActionResult> CreateEdit() { DeTaiNghienCuuViewModel model = new DeTaiNghienCuuViewModel(); var entity = await _service.GetEntity(x => x.IdNguoiDangKy == long.Parse(User.Identity.Name) && x.Loai == LoaiDeTai.DeXuat); if (entity == null) { return(PartialView("_CreateEditPopup")); } else { model = _mapper.Map <DeTaiNghienCuu, DeTaiNghienCuuViewModel>(entity); return(PartialView("_CreateEditPopup", model)); } }
public async Task <ActionResult> Edit(long?id) { DeTaiNghienCuuViewModel model = new DeTaiNghienCuuViewModel(); if (id.HasValue) { var entity = await _service.GetById(id.Value); model.Id = entity.Id; model.TenDeTai = entity.TenDeTai; model.MoTa = entity.MoTa; model.TenTep = entity.TenTep; //if (entity.TepDinhKem != null && entity.TepDinhKem.Length > 0) //{ var stream = new MemoryStream(entity.TepDinhKem); // var ext = Path.GetExtension(entity.TenTep).ToLowerInvariant(); // model.Files = new FormFile(stream, 0, entity.TepDinhKem.Length, "Files", entity.TenTep); //} } return(PartialView("_CreateEditPopup", model)); }
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 })); } }
public async Task <ActionResult> Edit(DeTaiNghienCuuViewModel model) { if (ModelState.IsValid) { var entity = await _service.GetById(model.Id); if (entity == null) { return(Ok(new { status = false, toastr = MessageResult.NotFoundObject })); } var isAuthorize = await _authorizationService.AuthorizeAsync(User, entity, DeTaiNghienCuuOperation.Update); if (!isAuthorize.Succeeded) { return(Ok(new { status = false, toastr = MessageResult.AccessDenied })); } else { if (entity.TinhTrangDeTai == (int)StatusDeTai.MoiTao) { if (await UpLoadFile(model.Files, entity) == false) { return(Ok(new { status = false, mess = MessageResult.UpLoadFileFail })); } entity.TenDeTai = model.TenDeTai; entity.MoTa = model.MoTa; await _service.Update(entity); return(Ok(new { status = true, mess = MessageResult.UpdateSuccess })); } else { YCChinhSuaDeTai yCChinhSua = new YCChinhSuaDeTai { MoTa = model.MoTa, TenDeTai = model.TenDeTai, }; YeuCauPheDuyet yeuCau = new YeuCauPheDuyet { LoaiYeuCau = (int)LoaiYeuCauPheDuyet.ChinhSua, NgayTao = DateTime.Now, }; if (await UpLoadFileYCChinhSua(model.Files, yCChinhSua) == false) { return(Ok(new { status = false, mess = MessageResult.UpLoadFileFail })); } var yeuCauHT = entity.YeuCauPheDuyet.FirstOrDefault(x => x.LoaiYeuCau == (int)LoaiYeuCauPheDuyet.ChinhSua && x.Status == 0); var yCChinhSuaHT = entity.YCChinhSuaDeTai.FirstOrDefault(x => x.Status == 0); entity.YeuCauPheDuyet.Remove(yeuCauHT); entity.YCChinhSuaDeTai.Remove(yCChinhSuaHT); entity.YeuCauPheDuyet.Add(yeuCau); entity.YCChinhSuaDeTai.Add(yCChinhSua); entity.TinhTrangPheDuyet = (int)StatusPheDuyet.GuiChinhSua; await _service.Update(entity); return(Ok(new { status = true, mess = "Gửi yêu cầu chỉnh sửa thành công" })); } } } else { return(Ok(new { status = false, mess = MessageResult.Fail })); } }