コード例 #1
0
        public async Task <IHttpActionResult> AddJournal(oJournal jrnal)
        {
            try
            {
                if (!GlobalInstance.Instance.IsConnected)
                {
                    GlobalInstance.Instance.InitializeSboComObject();
                }

                var j = await repo.GetByTransId(jrnal.TransId);

                if (j != null)
                {
                    errMsg = string.Format("Journal {0} already exist.", jrnal.TransId);
                    var resp = new HttpResponseMessage(HttpStatusCode.Conflict);
                    resp.Content      = new StringContent(errMsg);
                    resp.ReasonPhrase = "Object already exist.";
                    var err = ErrorLogger.Log(new ErrorLog
                    {
                        ErrorCode  = (int)HttpStatusCode.Conflict,
                        Message    = errMsg,
                        StackTrace = Environment.StackTrace
                    });

                    transactionLogger.LogJournalTransaction(jrnal, false, err);
                    throw new HttpResponseException(resp);
                }

                if (repo.Add(jrnal) != 0)
                {
                    errMsg = GlobalInstance.Instance.SBOErrorMessage;
                    var resp = new HttpResponseMessage(HttpStatusCode.Conflict);
                    resp.Content      = new StringContent(errMsg);
                    resp.ReasonPhrase = "SBO Error";
                    var err = ErrorLogger.Log(new ErrorLog {
                        ErrorCode  = GlobalInstance.Instance.SBOErrorCode,
                        Message    = errMsg,
                        StackTrace = Environment.StackTrace
                    });

                    transactionLogger.LogJournalTransaction(jrnal, false, err);
                    throw new HttpResponseException(resp);
                }

                transactionLogger.LogJournalTransaction(jrnal, true);
                return(Ok(string.Format("Journal {0} succesfully added.", jrnal.TransId)));
            }
            catch (HttpResponseException ex)
            {
                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }
        }
コード例 #2
0
        public ActionResult Create(AddJournalViewModel model)
        {
            var journal = new Journal
            {
                ExecutingDate = model.ExecutingDate,
                DoctorId      = model.DoctorId,
                ProcedureId   = model.ProcedureId,
                MedRecordId   = model.MedRecordId
            };

            _journalRepository.Add(journal);

            return(RedirectToAction(nameof(Index)));
        }
コード例 #3
0
 public void Execute(object parameter)
 {
     if (_uncheckedRecord.CheckModel())
     {
         if (_uncheckedRecord.IsNewRecord)
         {
             ((AddCommand)_viewModel.AddCommand).StoredWorkArea = _uncheckedRecord.WorkArea;
             ((AddCommand)_viewModel.AddCommand).StoredDate     = _uncheckedRecord.DateShift.Date;
             ((AddCommand)_viewModel.AddCommand).StoredShift    = _uncheckedRecord.DateShift.Shift;
             _journalRepository.Add(_uncheckedRecord.Model);
         }
         else
         {
             _journalRepository.Save(_viewModel.SelectedRecord.Model, _uncheckedRecord.Model);
         }
         _uncheckedRecord.Model = null;
         _viewModel.RefreshJournalRecords();
         _viewModel.RefreshTotals();
     }
 }
コード例 #4
0
        public async Task <object> AddJournal(oJournal jrnal)
        {
            HttpResponseMessage _resp = new HttpResponseMessage();

            try
            {
                if (!GlobalInstance.Instance.IsConnected)
                {
                    GlobalInstance.Instance.InitializeSboComObject();
                }
                var j = await repo.GetByRDTransId(jrnal.TransactionId);

                string validationStr = ModelValidator.ValidateModel(jrnal);

                if (!string.IsNullOrEmpty(validationStr))
                {
                    errMsg = string.Format(validationStr);
                    var resp = new HttpResponseMessage(HttpStatusCode.Conflict);
                    resp.Content      = new StringContent(errMsg);
                    resp.ReasonPhrase = "Object property validation error";

                    ErrorLog _err = new ErrorLog();
                    _err.ErrorCode  = (int)HttpStatusCode.Conflict;
                    _err.Message    = errMsg;
                    _err.StackTrace = Environment.StackTrace;

                    var err = ErrorLogger.Log(_err);

                    transactionLogger.LogJournalTransaction(jrnal, false, "A", HttpContext.Current.Request.UserHostAddress, _err);
                    _resp = resp;
                    throw new HttpResponseException(resp);
                }

                if (j != null)
                {
                    errMsg = string.Format("Journal {0} already exist.", jrnal.TransactionId);
                    var resp = new HttpResponseMessage(HttpStatusCode.Conflict);
                    resp.Content      = new StringContent(errMsg);
                    resp.ReasonPhrase = "Object already exist.";

                    ErrorLog _err = new ErrorLog();
                    _err.ErrorCode  = (int)HttpStatusCode.Conflict;
                    _err.Message    = errMsg;
                    _err.StackTrace = Environment.StackTrace;

                    var err = ErrorLogger.Log(_err);

                    transactionLogger.LogJournalTransaction(jrnal, false, "A", HttpContext.Current.Request.UserHostAddress, _err);
                    _resp = resp;
                    throw new HttpResponseException(resp);
                }

                if (repo.Add(jrnal) != 0)
                {
                    errMsg = GlobalInstance.Instance.SBOErrorMessage;
                    var resp = new HttpResponseMessage(HttpStatusCode.Conflict);
                    resp.Content      = new StringContent(errMsg);
                    resp.ReasonPhrase = "SBO Error";
                    ErrorLog _err = new ErrorLog();
                    _err.ErrorCode  = (int)HttpStatusCode.Conflict;
                    _err.Message    = errMsg;
                    _err.StackTrace = Environment.StackTrace;

                    var err = ErrorLogger.Log(_err);

                    transactionLogger.LogJournalTransaction(jrnal, false, "A", HttpContext.Current.Request.UserHostAddress, _err);
                    _resp = resp;
                    throw new HttpResponseException(resp);
                }

                transactionLogger.LogJournalTransaction(jrnal, true, "A", HttpContext.Current.Request.UserHostAddress);
                var _j = await repo.GetByRDTransId(jrnal.TransactionId);

                return(new { SAPTransactionId = _j.TransId, ReturnMessage = $"Journal {jrnal.TransactionId} successfully added." });
            }
            catch (HttpResponseException ex)
            {
                throw new HttpResponseException(ex.Response);
            }
        }