/// <summary> /// Добавляем операцию и предоперационный протокол /// </summary> /// <param name="toHospitalizationWorker"></param> /// <param name="fromOperationWorker"></param> /// <param name="toOperationWorker"></param> /// <param name="fromOperationProtocolWorker"></param> /// <param name="toOperationProtocolWorker"></param> /// <param name="fromOperationId"></param> /// <param name="toHospitalizationId"></param> public static void AddOperationAndProtocol( CHospitalizationWorker toHospitalizationWorker, COperationWorker fromOperationWorker, COperationWorker toOperationWorker, COperationProtocolWorker fromOperationProtocolWorker, COperationProtocolWorker toOperationProtocolWorker, int fromOperationId, int toHospitalizationId) { CHospitalization toHospitalization = toHospitalizationWorker.GetById(toHospitalizationId); var toOperation = new COperation(fromOperationWorker.GetById(fromOperationId)) { Id = toOperationWorker.GetNewID(), PatientId = toHospitalization.PatientId, HospitalizationId = toHospitalizationId }; toOperationWorker.Update(toOperation); // Добавляем предоперационный протокол toOperationProtocolWorker.GetByOperationId(toOperation.Id); var toOperationProtocol = new COperationProtocol( fromOperationProtocolWorker.GetByOperationId(fromOperationId)) { OperationId = toOperation.Id }; toOperationProtocolWorker.Update(toOperationProtocol); }
/// <summary> /// Добавить новую операцию /// </summary> /// <param name="sender">Объект, пославший сообщение</param> /// <param name="e">Объект, содержащий данные посланного сообщения</param> private void buttonAdd_Click(object sender, EventArgs e) { if (_addNewOperationForm == null || _addNewOperationForm.IsDisposed) { try { var operationInfo = new COperation(_operationWorker.GetNewID(), _hospitalizationInfo.Id, _patientInfo.Id) { HeAnaesthetist = _workersKeeper.GlobalSettings.HeAnaesthetist, SheAnaesthetist = _workersKeeper.GlobalSettings.SheAnaesthetist }; _operationWorker.AddWithoutSaving(operationInfo); _addNewOperationForm = new OperationViewForm(_workersKeeper, _patientInfo, _hospitalizationInfo, operationInfo, this, AddUpdate.Add) { MdiParent = MdiParent }; _addNewOperationForm.Show(); } catch (Exception ex) { MessageBox.ShowDialog("Внутренняя ошибка программы при добавлении новой операции:" + ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { _addNewOperationForm.Focus(); } }