Example #1
0
        public ViewModelCancelOperations(NavigationController controller) : base(controller)
        {
            MessageBus.Default.Subscribe("GetOperationIDForAddCancel", GetOperationid);

            MessageBus.Default.Subscribe("SetFunctionsToReturnToOpOwervier", SetFunctionsToReturnToOpOwervier);
            MessageBus.Default.Subscribe("SetFunctionsToReturnToOpCreation", SetFunctionsToReturnToOpCreation);
            HasNavigation      = false;
            OtherReasonCommand = new DelegateCommand(
                () =>
            {
                IsOtherReason           = "Yes";
                VisibilityOfOtherReason = Visibility.Visible;
                VisibilityOfReasons     = Visibility.Hidden;
            }
                );
            ToOperationCommand = new DelegateCommand(
                () =>
            {
                var buf = new CancelOperation();
                if (IsOtherReason != "Yes")
                {
                    buf.Reason = ReasonSelected + 1;
                }
                else
                {
                    ReasonsOfCancelOperation buf1 = new ReasonsOfCancelOperation();
                    if (OtherReasonText == null)
                    {
                        OtherReasonText = "";
                    }
                    buf1.Str = OtherReasonText;
                    Data.ReasonsOfCancleOperation.Add(buf1);
                    buf.Reason = buf1.Id;
                    Data.Complete();
                }
                buf.TransferDate = DateTime.Now;
                Data.CancelOperation.Add(buf);
                Operation.cancel_operations = buf.Id;
                Data.Complete();
                if (Operation.Datetime_id != null && Operation.Datetime_id != 0)
                {
                    var opDate          = Data.OperationDateTime.Get(Operation.Datetime_id.Value);
                    opDate.Doctor_id    = null;
                    opDate.Note         = "Время свободно";
                    opDate.Operation_id = null;
                    Data.Complete();
                }
                MessageBus.Default.Call("SetCurrentACCOp", this, null);
                MessageBus.Default.Call("GetOperationForOverwiev", this, operationId);
                Controller.NavigateTo <ViewModelOperationOverview>();
            }
                );
            ToOperationOverviewCommand = new DelegateCommand(
                () =>
            {
                MessageBus.Default.Call("GetOperationForOverwiev", this, operationId);
                Controller.NavigateTo <ViewModelOperationOverview>();
            }
                );
        }
Example #2
0
        private void SetFunctionsToReturnToOpCreation(object sender, object data)
        {
            ToOperationCommand = new DelegateCommand(
                () =>
            {
                var buf = new CancelOperation();
                if (IsOtherReason != "Yes")
                {
                    buf.Reason = ReasonSelected + 1;
                }
                else
                {
                    ReasonsOfCancelOperation buf1 = new ReasonsOfCancelOperation();
                    if (OtherReasonText == null)
                    {
                        OtherReasonText = "";
                    }
                    buf1.Str = OtherReasonText;
                    Data.ReasonsOfCancleOperation.Add(buf1);
                    buf.Reason = buf1.Id;
                    Data.Complete();
                }
                buf.TransferDate = DateTime.Now;
                Data.CancelOperation.Add(buf);
                Operation.cancel_operations = buf.Id;
                Data.Complete();
                if (Operation.Datetime_id != null && Operation.Datetime_id != 0)
                {
                    var opDate          = Data.OperationDateTime.Get(Operation.Datetime_id.Value);
                    opDate.Doctor_id    = null;
                    opDate.Note         = "Время свободно";
                    opDate.Operation_id = null;
                    Data.Complete();

                    var timeItem = Data.OperationDateTime.Where(e => e.Operation_id != null && e.Datetime.Year == opDate.Datetime.Year && e.Datetime.Month == opDate.Datetime.Month && e.Datetime.Day == opDate.Datetime.Day).FirstOrDefault();
                    if (timeItem == null)
                    {
                        foreach (var opDate1 in Data.OperationDateTime.Where(e => e.Datetime.Year == opDate.Datetime.Year && e.Datetime.Month == opDate.Datetime.Month && e.Datetime.Day == opDate.Datetime.Day))
                        {
                            Data.OperationDateTime.Remove(Data.OperationDateTime.Get(opDate1.Id));
                        }
                    }
                    Data.Complete();
                }
                MessageBus.Default.Call("SetCurrentACCOp", this, null);
                MessageBus.Default.Call("ConfirmCancle", null, null);
                //MessageBus.Default.Call("GetOperationForOverwiev", this, operationId);
                Controller.NavigateTo <ViewModelAddOperation>();
            }
                );
            ToOperationOverviewCommand = new DelegateCommand(
                () =>
            {
                //MessageBus.Default.Call("GetOperationForOverwiev", this, operationId);
                Controller.NavigateTo <ViewModelAddOperation>();
            }
                );
        }