// [Audit] public ActionResult Create([Bind(Include = "MaNhomThuoc,TenNhomThuoc,KyHieuNhomThuoc")] NhomThuoc nhomThuoc) { if (ModelState.IsValid) { try { var nhaThuoc = this.GetNhaThuoc(); var maNhaThuoc = nhaThuoc.MaNhaThuoc; var maNhaThuocCha = nhaThuoc.MaNhaThuocCha; var item = unitOfWork.NhomThuocRepository.Get(c => (c.NhaThuoc.MaNhaThuoc == maNhaThuoc || c.NhaThuoc.MaNhaThuoc == maNhaThuocCha) && c.TenNhomThuoc == nhomThuoc.TenNhomThuoc).FirstOrDefault(); if (item != null) { ModelState.AddModelError("TenNhomThuoc", "Tên nhóm thuốc này đã tồn tại. Vui lòng nhập tên nhóm thuốc khác"); } else { nhomThuoc.NhaThuoc = unitOfWork.NhaThuocRepository.GetById(maNhaThuocCha); nhomThuoc.TenNhomThuoc = nhomThuoc.TenNhomThuoc; nhomThuoc.KyHieuNhomThuoc = nhomThuoc.KyHieuNhomThuoc; nhomThuoc.Created = DateTime.Now; nhomThuoc.CreatedBy = unitOfWork.UserProfileRepository.GetById(WebSecurity.GetCurrentUserId); unitOfWork.NhomThuocRepository.Insert(nhomThuoc); unitOfWork.Save(); return(RedirectToAction("Index")); } } catch (Exception e) { ModelState.AddModelError("TenNhomThuoc", e.Message); } } return(View(nhomThuoc)); }
public ActionResult DeleteConfirmed(string id) { NhomThuoc nhomThuoc = db.NhomThuocs.Find(id); db.NhomThuocs.Remove(nhomThuoc); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "MaNhom,TenNhom")] NhomThuoc nhomThuoc) { if (ModelState.IsValid) { db.Entry(nhomThuoc).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(nhomThuoc)); }
public ActionResult Create([Bind(Include = "MaNhom,TenNhom")] NhomThuoc nhomThuoc) { if (ModelState.IsValid) { db.NhomThuocs.Add(nhomThuoc); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(nhomThuoc)); }
// GET: NhomThuocs/Delete/5 public ActionResult Delete(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } NhomThuoc nhomThuoc = db.NhomThuocs.Find(id); if (nhomThuoc == null) { return(HttpNotFound()); } return(View(nhomThuoc)); }
public static Result CheckNhomThuocExistCode(string nhomThuocGUID, string code) { Result result = new Result(); MMOverride db = null; try { db = new MMOverride(); NhomThuoc nt = null; if (nhomThuocGUID == null || nhomThuocGUID == string.Empty) { nt = db.NhomThuocs.SingleOrDefault <NhomThuoc>(n => n.MaNhomThuoc.ToLower() == code.ToLower()); } else { nt = db.NhomThuocs.SingleOrDefault <NhomThuoc>(n => n.MaNhomThuoc.ToLower() == code.ToLower() && n.NhomThuocGUID.ToString() != nhomThuocGUID); } if (nt == null) { result.Error.Code = ErrorCode.NOT_EXIST; } else { result.Error.Code = ErrorCode.EXIST; } } catch (System.Data.SqlClient.SqlException se) { result.Error.Code = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT; result.Error.Description = se.ToString(); } catch (Exception e) { result.Error.Code = ErrorCode.UNKNOWN_ERROR; result.Error.Description = e.ToString(); } finally { if (db != null) { db.Dispose(); db = null; } } return(result); }
public async Task <ActionResult> Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var nhaThuoc = this.GetNhaThuoc(); var maNhaThuoc = nhaThuoc.MaNhaThuoc; var maNhaThuocCha = nhaThuoc.MaNhaThuocCha; NhomThuoc nhomThuoc = await unitOfWork.NhomThuocRepository.GetMany( e => e.MaNhomThuoc == id && (e.NhaThuoc.MaNhaThuoc == maNhaThuoc || e.NhaThuoc.MaNhaThuoc == maNhaThuocCha)).FirstAsync(); if (nhomThuoc == null) { return(HttpNotFound()); } return(View(nhomThuoc)); }
public int SaveDrugGroup(string maNhaThuoc, int userId, GroupDrugInfo model) { int retval = -1; NhomThuoc newNhomThuoc = new NhomThuoc { MaNhaThuoc = maNhaThuoc, CreatedBy_UserId = userId, Created = DateTime.Now, TenNhomThuoc = model.TenNhomThuoc, KyHieuNhomThuoc = model.KyHieuNhomThuoc }; var nhomThuocRepo = IoC.Container.Resolve <BaseRepositoryV2 <MedDbContext, NhomThuoc> >(); nhomThuocRepo.Insert(newNhomThuoc); nhomThuocRepo.Commit(); retval = newNhomThuoc.MaNhomThuoc; return(retval); }
// [Audit] public async Task <ActionResult> Edit([Bind(Include = "MaNhomThuoc,TenNhomThuoc,KyHieuNhomThuoc,MaNhaThuoc")] NhomThuoc nhomThuoc) { if (ModelState.IsValid) { try { var nhaThuoc = this.GetNhaThuoc(); var maNhaThuoc = nhaThuoc.MaNhaThuoc; var maNhaThuocCha = nhaThuoc.MaNhaThuocCha; var existItem = unitOfWork.NhomThuocRepository.Get(c => c.TenNhomThuoc == nhomThuoc.TenNhomThuoc && c.MaNhomThuoc != nhomThuoc.MaNhomThuoc && (c.NhaThuoc.MaNhaThuoc == maNhaThuoc || c.NhaThuoc.MaNhaThuoc == maNhaThuocCha)).FirstOrDefault(); if (existItem != null) { ModelState.AddModelError("TenNhomThuoc", "Tên nhóm thuốc này đã tồn tại. Vui lòng nhập tên nhóm thuốc khác."); return(View(nhomThuoc)); } else { var nThuoc = await unitOfWork.NhomThuocRepository.GetMany(e => e.MaNhomThuoc == nhomThuoc.MaNhomThuoc && (e.NhaThuoc.MaNhaThuoc == maNhaThuoc || e.NhaThuoc.MaNhaThuoc == maNhaThuocCha)).FirstAsync(); if (nThuoc != null) { nThuoc.TenNhomThuoc = nhomThuoc.TenNhomThuoc; nThuoc.KyHieuNhomThuoc = nhomThuoc.KyHieuNhomThuoc; nThuoc.Modified = DateTime.Now; nThuoc.ModifiedBy = unitOfWork.UserProfileRepository.GetById(WebSecurity.GetCurrentUserId); unitOfWork.NhomThuocRepository.Update(nThuoc); unitOfWork.Save(); } } } catch (Exception e) { ModelState.AddModelError("TenNhomThuoc", e.Message); return(View(nhomThuoc)); } return(RedirectToAction("Index")); } return(View(nhomThuoc)); }
public static Result InsertNhomThuoc(NhomThuoc nhomThuoc, List <string> addedThuocList, List <string> deletedThuocList) { Result result = new Result(); MMOverride db = null; try { db = new MMOverride(); string desc = string.Empty; using (TransactionScope t = new TransactionScope(TransactionScopeOption.RequiresNew)) { //Insert if (nhomThuoc.NhomThuocGUID == null || nhomThuoc.NhomThuocGUID == Guid.Empty) { nhomThuoc.NhomThuocGUID = Guid.NewGuid(); db.NhomThuocs.InsertOnSubmit(nhomThuoc); db.SubmitChanges(); desc += string.Format("- Nhóm thuốc: GUID: '{0}', Mã nhóm thuốc: '{1}', Tên nhóm thuốc: '{2}'\n", nhomThuoc.NhomThuocGUID.ToString(), nhomThuoc.MaNhomThuoc, nhomThuoc.TenNhomThuoc); //Thuoc if (addedThuocList != null && addedThuocList.Count > 0) { desc += string.Format("- Danh sách thuốc được thêm:\n"); foreach (string key in addedThuocList) { NhomThuoc_Thuoc ntt = db.NhomThuoc_Thuocs.SingleOrDefault <NhomThuoc_Thuoc>(n => n.ThuocGUID.ToString() == key && n.NhomThuocGUID.ToString() == nhomThuoc.NhomThuocGUID.ToString()); if (ntt == null) { ntt = new NhomThuoc_Thuoc(); ntt.NhomThuoc_ThuocGUID = Guid.NewGuid(); ntt.NhomThuocGUID = nhomThuoc.NhomThuocGUID; ntt.ThuocGUID = Guid.Parse(key); ntt.CreatedDate = DateTime.Now; ntt.CreatedBy = Guid.Parse(Global.UserGUID); ntt.Status = (byte)Status.Actived; db.NhomThuoc_Thuocs.InsertOnSubmit(ntt); db.SubmitChanges(); } else { ntt.Status = (byte)Status.Actived; ntt.UpdatedDate = DateTime.Now; ntt.UpdatedBy = Guid.Parse(Global.UserGUID); db.SubmitChanges(); } desc += string.Format(" + GUID: '{0}', Thuốc:'{1}'\n", ntt.NhomThuoc_ThuocGUID.ToString(), ntt.Thuoc.TenThuoc); } } //Tracking desc = desc.Substring(0, desc.Length - 1); Tracking tk = new Tracking(); tk.TrackingGUID = Guid.NewGuid(); tk.TrackingDate = DateTime.Now; tk.DocStaffGUID = Guid.Parse(Global.UserGUID); tk.ActionType = (byte)ActionType.Add; tk.Action = "Thêm thông tin nhóm thuốc"; tk.Description = desc; tk.TrackingType = (byte)TrackingType.None; tk.ComputerName = Utility.GetDNSHostName(); db.Trackings.InsertOnSubmit(tk); db.SubmitChanges(); } else //Update { NhomThuoc nt = db.NhomThuocs.SingleOrDefault <NhomThuoc>(n => n.NhomThuocGUID.ToString() == nhomThuoc.NhomThuocGUID.ToString()); if (nt != null) { nt.MaNhomThuoc = nhomThuoc.MaNhomThuoc; nt.TenNhomThuoc = nhomThuoc.TenNhomThuoc; nt.Note = nhomThuoc.Note; nt.CreatedDate = nhomThuoc.CreatedDate; nt.CreatedBy = nhomThuoc.CreatedBy; nt.UpdatedDate = nhomThuoc.UpdatedDate; nt.UpdatedBy = nhomThuoc.UpdatedBy; nt.DeletedDate = nhomThuoc.DeletedDate; nt.DeletedBy = nhomThuoc.DeletedBy; nt.Status = nhomThuoc.Status; desc += string.Format("- Nhóm thuốc: GUID: '{0}', Mã nhóm thuốc: '{1}', Tên nhóm thuốc: '{2}'\n", nt.NhomThuocGUID.ToString(), nt.MaNhomThuoc, nt.TenNhomThuoc); } //Delete Thuoc if (deletedThuocList != null && deletedThuocList.Count > 0) { desc += string.Format("- Danh sách thuốc được xóa:\n"); foreach (string key in deletedThuocList) { NhomThuoc_Thuoc ntt = db.NhomThuoc_Thuocs.SingleOrDefault <NhomThuoc_Thuoc>(n => n.ThuocGUID.ToString() == key && n.NhomThuocGUID.ToString() == nhomThuoc.NhomThuocGUID.ToString()); if (ntt != null) { ntt.Status = (byte)Status.Deactived; ntt.DeletedDate = DateTime.Now; ntt.DeletedBy = Guid.Parse(Global.UserGUID); desc += string.Format(" + GUID: '{0}', Thuốc: '{1}'\n", ntt.NhomThuoc_ThuocGUID.ToString(), ntt.Thuoc.TenThuoc); } } db.SubmitChanges(); } //Add Thuoc if (addedThuocList != null && addedThuocList.Count > 0) { desc += string.Format("- Danh sách thuốc được thêm:\n"); foreach (string key in addedThuocList) { NhomThuoc_Thuoc ntt = db.NhomThuoc_Thuocs.SingleOrDefault <NhomThuoc_Thuoc>(n => n.ThuocGUID.ToString() == key && n.NhomThuocGUID.ToString() == nhomThuoc.NhomThuocGUID.ToString()); if (ntt == null) { ntt = new NhomThuoc_Thuoc(); ntt.NhomThuoc_ThuocGUID = Guid.NewGuid(); ntt.NhomThuocGUID = nhomThuoc.NhomThuocGUID; ntt.ThuocGUID = Guid.Parse(key); ntt.CreatedDate = DateTime.Now; ntt.CreatedBy = Guid.Parse(Global.UserGUID); ntt.Status = (byte)Status.Actived; db.NhomThuoc_Thuocs.InsertOnSubmit(ntt); db.SubmitChanges(); } else { ntt.Status = (byte)Status.Actived; ntt.UpdatedDate = DateTime.Now; ntt.UpdatedBy = Guid.Parse(Global.UserGUID); db.SubmitChanges(); } desc += string.Format(" + GUID: '{0}', Thuốc:'{1}'\n", ntt.NhomThuoc_ThuocGUID.ToString(), ntt.Thuoc.TenThuoc); } } //Tracking desc = desc.Substring(0, desc.Length - 1); Tracking tk = new Tracking(); tk.TrackingGUID = Guid.NewGuid(); tk.TrackingDate = DateTime.Now; tk.DocStaffGUID = Guid.Parse(Global.UserGUID); tk.ActionType = (byte)ActionType.Edit; tk.Action = "Sửa thông tin nhóm thuốc"; tk.Description = desc; tk.TrackingType = (byte)TrackingType.None; tk.ComputerName = Utility.GetDNSHostName(); db.Trackings.InsertOnSubmit(tk); db.SubmitChanges(); } t.Complete(); } } catch (System.Data.SqlClient.SqlException se) { result.Error.Code = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT; result.Error.Description = se.ToString(); } catch (Exception e) { result.Error.Code = ErrorCode.UNKNOWN_ERROR; result.Error.Description = e.ToString(); } finally { if (db != null) { db.Dispose(); db = null; } } return(result); }
public static Result DeleteNhomThuoc(List <string> nhomThuocKeys) { Result result = new Result(); MMOverride db = null; try { db = new MMOverride(); using (TransactionScope t = new TransactionScope(TransactionScopeOption.RequiresNew)) { string desc = string.Empty; foreach (string key in nhomThuocKeys) { NhomThuoc nhomThuoc = db.NhomThuocs.SingleOrDefault <NhomThuoc>(n => n.NhomThuocGUID.ToString() == key); if (nhomThuoc != null) { nhomThuoc.DeletedDate = DateTime.Now; nhomThuoc.DeletedBy = Guid.Parse(Global.UserGUID); nhomThuoc.Status = (byte)Status.Deactived; desc += string.Format("- GUID: '{0}', Mã nhóm thuốc: '{1}', Tên nhóm thuốc: '{2}'\n", nhomThuoc.NhomThuocGUID.ToString(), nhomThuoc.MaNhomThuoc, nhomThuoc.TenNhomThuoc); } } //Tracking desc = desc.Substring(0, desc.Length - 1); Tracking tk = new Tracking(); tk.TrackingGUID = Guid.NewGuid(); tk.TrackingDate = DateTime.Now; tk.DocStaffGUID = Guid.Parse(Global.UserGUID); tk.ActionType = (byte)ActionType.Delete; tk.Action = "Xóa thông tin nhóm thuốc"; tk.Description = desc; tk.TrackingType = (byte)TrackingType.None; tk.ComputerName = Utility.GetDNSHostName(); db.Trackings.InsertOnSubmit(tk); db.SubmitChanges(); t.Complete(); } } catch (System.Data.SqlClient.SqlException se) { result.Error.Code = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT; result.Error.Description = se.ToString(); } catch (Exception e) { result.Error.Code = ErrorCode.UNKNOWN_ERROR; result.Error.Description = e.ToString(); } finally { if (db != null) { db.Dispose(); db = null; } } return(result); }