/// <summary> /// Обновить информацию о карте обследования /// </summary> /// <param name="obstetricParalysisCardInfo">Информация о карте обследования</param> public void Update(CObstetricParalysisCard obstetricParalysisCardInfo) { int n = GetIndexFromList(obstetricParalysisCardInfo.HospitalizationId, obstetricParalysisCardInfo.VisitId); obstetricParalysisCardInfo.NotInDatabase = false; _obstetricParalysisCardList[n] = new CObstetricParalysisCard(obstetricParalysisCardInfo); Save(); }
public ObstetricParalysisCardForm( CWorkersKeeper workersKeeper, CObstetricParalysisCard obstetricParalysisCard) { InitializeComponent(); _obstetricParalysisCardInfo = obstetricParalysisCard; _obstetricParalysisCardWorker = workersKeeper.ObstetricParalysisCardWorker; _configurationEngine = workersKeeper.ConfigurationEngine; }
/// <summary> /// Получить карту обследования по переданному id госпитализации и id консультации /// </summary> /// <param name="hospitalizationId">id госпитализации</param> /// <param name="visitId">id консультации</param> /// <returns></returns> public CObstetricParalysisCard GetByHospitalizationAndVisitId( int hospitalizationId, int visitId) { int n = GetIndexFromList(hospitalizationId, visitId); if (n == _obstetricParalysisCardList.Count) { var newObstetricParalysisCardInfo = new CObstetricParalysisCard(hospitalizationId, visitId) { NotInDatabase = true }; _obstetricParalysisCardList.Add(newObstetricParalysisCardInfo); return(new CObstetricParalysisCard(newObstetricParalysisCardInfo)); } return(new CObstetricParalysisCard(_obstetricParalysisCardList[n])); }
/// <summary> /// Добавить карту на акушерский паралич /// </summary> /// <param name="fromObstetricParalysisCardWorker">Класс для работы с картами на акушерский паралич в базе, откуда копируется госпитализация</param> /// <param name="toObstetricParalysisCardWorker">Класс для работы с картами на акушерский паралич в базе, куда копируется госпитализация</param> /// <param name="fromHospitalizationId">id госпитализации в базе, откуда копируются карты</param> /// <param name="toHospitalizationId">id новой госпитализации в базе, куда копируются карты</param> /// <param name="fromVisitId">id консультации в базе, откуда копируются карты</param> /// <param name="toVisitId">id новой консультации в базе, куда копируются карты</param> public static void AddObstetricParalysisCard( CObstetricParalysisCardWorker fromObstetricParalysisCardWorker, CObstetricParalysisCardWorker toObstetricParalysisCardWorker, int fromHospitalizationId, int toHospitalizationId, int fromVisitId, int toVisitId) { if (fromObstetricParalysisCardWorker.IsExists(fromHospitalizationId, fromVisitId)) { toObstetricParalysisCardWorker.GetByHospitalizationAndVisitId(toHospitalizationId, toVisitId); var newObstetricParalysisCard = new CObstetricParalysisCard( fromObstetricParalysisCardWorker.GetByHospitalizationAndVisitId(fromHospitalizationId, fromVisitId)) { HospitalizationId = toHospitalizationId, VisitId = toVisitId }; toObstetricParalysisCardWorker.Update(newObstetricParalysisCard); } }
/// <summary> /// Скопировать все карты обследования для указанных id госпитализации и консультации /// </summary> /// <param name="hospitalizationId">id госпитализации</param> /// <param name="visitId">id консультации</param> /// <param name="newHospitalizationId">id новой госпитализации</param> /// <param name="newVisitId">id новой консультации</param> public void CopyByHospitalizationAndVisitId( int hospitalizationId, int visitId, int newHospitalizationId, int newVisitId) { int obstetricParalysisCardListCnt = _obstetricParalysisCardList.Count; for (int i = 0; i < obstetricParalysisCardListCnt; i++) { if (_obstetricParalysisCardList[i].HospitalizationId == hospitalizationId && _obstetricParalysisCardList[i].VisitId == visitId) { var newObstetricParalysisCard = new CObstetricParalysisCard(_obstetricParalysisCardList[i]) { HospitalizationId = newHospitalizationId, VisitId = newVisitId }; _obstetricParalysisCardList.Add(newObstetricParalysisCard); } } Save(); }
/// <summary> /// Загрузить список карт обследования /// </summary> private void Load() { _obstetricParalysisCardList = new List <CObstetricParalysisCard>(); string allDataStr = CDatabaseEngine.UnpackText(_obstetricParalysisCardPath); // Получаем набор объектов string[] objectsStr = allDataStr.Split(new[] { ObjSplitStr }, StringSplitOptions.RemoveEmptyEntries); var errorStr = new StringBuilder(); try { // Проходим по всем объектам foreach (string objectStr in objectsStr) { // Для каждого объекта получаем список значений string[] datasStr = objectStr.Split(new[] { DataSplitStr }, StringSplitOptions.RemoveEmptyEntries); var obstetricParalysisCardInfo = new CObstetricParalysisCard(); foreach (string dataStr in datasStr) { string[] keyValue = dataStr.Split(new[] { '=' }, 2); switch (keyValue[0]) { case "HospitalizationId": obstetricParalysisCardInfo.HospitalizationId = Convert.ToInt32(keyValue[1]); break; case "VisitId": obstetricParalysisCardInfo.VisitId = Convert.ToInt32(keyValue[1]); break; case "CardSide": obstetricParalysisCardInfo.SideOfCard = CConvertEngine.StringToCardSide(keyValue[1]); break; case "GlobalAbductionPicturesSelection": obstetricParalysisCardInfo.GlobalAbductionPicturesSelection = CConvertEngine.StringToBoolArray(keyValue[1]); break; case "GlobalExternalRotationPicturesSelection": obstetricParalysisCardInfo.GlobalExternalRotationPicturesSelection = CConvertEngine.StringToBoolArray(keyValue[1]); break; case "HandToMouthPicturesSelection": obstetricParalysisCardInfo.HandToMouthPicturesSelection = CConvertEngine.StringToBoolArray(keyValue[1]); break; case "HandToNeckPicturesSelection": obstetricParalysisCardInfo.HandToNeckPicturesSelection = CConvertEngine.StringToBoolArray(keyValue[1]); break; case "HandToSpinePicturesSelection": obstetricParalysisCardInfo.HandToSpinePicturesSelection = CConvertEngine.StringToBoolArray(keyValue[1]); break; case "ComboBoxes": obstetricParalysisCardInfo.ComboBoxes = CConvertEngine.StringToStringArray(keyValue[1]); break; } } _obstetricParalysisCardList.Add(obstetricParalysisCardInfo); } } catch (Exception ex) { errorStr.Append(ex.Message + "\r\n"); } if (errorStr.Length != 0) { MessageBox.ShowDialog(errorStr.ToString()); } }