示例#1
0
        /// <summary>
        /// Loads Work Cycles with true flag from database
        /// </summary>
        public async void LoadWorkCycles()
        {
            string errorMessage = null;

            try
            {
                var workCyclesInDb = _unitOfWork.WorkCycles.GetWorkCycles().ToList();
                var wpfWorkCycles  = RestproMapper.MapWorkCycleListToWpfWorkCycleList(workCyclesInDb);
                WorkCycles = new ObservableCollection <WpfWorkCycle>(wpfWorkCycles);
            }
            catch (Exception e)
            {
                Debug.WriteLine(e);
                errorMessage = e.Message;
            }

            if (errorMessage == null)
            {
                return;
            }

            await dialogCoordinator
            .ShowMessageAsync(this, "Error"
                              , "Fatal Error Occured. You're probably screwed!\n" +
                              errorMessage);
        }
        private async void OnDeleteClick(WpfRawMaterialCategory wpfCategory)
        {
            if (wpfCategory == null)
            {
                return;
            }

            var    rawMaterialInDb = RestproMapper.MapWpfRawMaterialCategoryToRawMaterialCategory(wpfCategory);
            string errorMessage    = null;

            try
            {
                Categories.Remove(wpfCategory);
                if (wpfCategory.Id != 0)
                {
                    _unitOfWork.RawMaterialCategories.FakeDelete(rawMaterialInDb);
                }
                await dialogCoordinator.ShowMessageAsync(this, "Success", "Raw Material Deleted Successfully. Good Bye :(");
            }
            catch (Exception e)
            {
                Debug.WriteLine(e);
                errorMessage = e.Message;
            }

            if (errorMessage == null)
            {
                return;
            }

            await dialogCoordinator
            .ShowMessageAsync(this, "Error"
                              , "Fatal Error Occured. You're Screwed!\n" +
                              errorMessage);
        }
示例#3
0
        public async void LoadPurchaseOrders()
        {
            string errorMessage = null;

            try
            {
                var purchaseOrders    = _unitOfWork.PurchaseOrders.GetPurchaseOrdersWithoutLines().ToList();
                var wpfPurchaseOrders = RestproMapper.MapPurchaseOrderListToWpfPurchaseOrderList(purchaseOrders);
                PurchaseOrders = new ObservableCollection <WpfPurchaseOrder>(wpfPurchaseOrders);
            }
            catch (Exception e)
            {
                Debug.WriteLine(e);
                errorMessage = e.Message;
            }

            if (errorMessage == null)
            {
                return;
            }

            await dialogCoordinator
            .ShowMessageAsync(this, "Error"
                              , "Fatal Error Occured. You're probably screwed!\n" +
                              errorMessage);
        }
        private async void OnSave()
        {
            var categoriesToDb = RestproMapper
                                 .MapWpfRawMaterialCategoryListToRawMaterialCategoryList(Categories.ToList());
            string errorMessage = null;

            try
            {
                _unitOfWork.RawMaterialCategories.AddOrUpdate(categoriesToDb);
                LoadCategories();
                await dialogCoordinator.ShowMessageAsync(this, "Success", "Items Saved Successfully. You Rock!");
            }
            catch (Exception e)
            {
                Debug.WriteLine(e.Message);
                errorMessage = e.Message;
            }

            if (errorMessage == null)
            {
                return;
            }

            await dialogCoordinator
            .ShowMessageAsync(this, "Error"
                              , "Fatal Error Occured. You're Screwed!\n" +
                              errorMessage);
        }
示例#5
0
        private async void OnDeleteClick(WpfSupplier supplier)
        {
            if (supplier == null)
            {
                return;
            }

            var    supplierToDb = RestproMapper.MapWpfSupplierToSupplier(supplier);
            string errorMessage = null;

            try
            {
                _unitOfWork.Suppliers.FakeDeleteSupplier(supplierToDb);
                Suppliers.Remove(supplier);
                await dialogCoordinator.ShowMessageAsync(this, "Success", "Supplier Deleted Successfully. We're so done with them!");
            }
            catch (Exception e)
            {
                Debug.WriteLine(e);
                errorMessage = e.Message;
            }

            if (errorMessage == null)
            {
                return;
            }

            await dialogCoordinator
            .ShowMessageAsync(this, "Error"
                              , "Fatal Error Occured. You're Screwed!\n" +
                              errorMessage);
        }
        private async void OnDeleteClick(WpfLocation location)
        {
            if (location == null)
            {
                return;
            }

            var    locationToDb = RestproMapper.MapWpfLocationToLocation(location);
            string errorMessage = null;

            try
            {
                Locations.Remove(location);
                if (location.LocationId != null)
                {
                    _unitOfWork.Locations.FakeDelete(locationToDb);
                }
                await dialogCoordinator.ShowMessageAsync(this, "Success", "Raw Material Deleted Successfully. Good Bye :(");
            }
            catch (Exception e)
            {
                Debug.WriteLine(e);
                errorMessage = e.Message;
            }

            if (errorMessage == null)
            {
                return;
            }

            await dialogCoordinator
            .ShowMessageAsync(this, "Error"
                              , "Fatal Error Occured. You're Screwed!\n" +
                              errorMessage);
        }
        public async void LoadRawMaterials()
        {
            string errorMessage = null;

            try
            {
                var rawMaterialsInDb    = _unitOfWork.RawMaterials.GetRawMaterials().ToList();
                var rawMaterialsForView = RestproMapper.MapRawMaterialListToWpfRawMaterialList(rawMaterialsInDb);
                RawMaterials = new BindingList <WpfRawMaterial>(rawMaterialsForView);
            }
            catch (Exception e)
            {
                Debug.WriteLine(e);
                errorMessage = e.Message;
            }

            if (errorMessage == null)
            {
                return;
            }

            await dialogCoordinator
            .ShowMessageAsync(this, "Error"
                              , "Fatal Error Occured. You're probably screwed!\n" +
                              errorMessage);
        }
        /// <summary>
        /// Sets Working Cycle
        /// </summary>
        /// <param name="wCycle">Work Cycle Passed</param>
        public void SetWorkingCycle(WpfWorkCycle wCycle)
        {
            WorkCycle = wCycle;

            if (EditMode)
            {
                var workCycleWithLines = _unitOfWork
                                         .WorkCycles
                                         .GetWorkCycleByWorkCycleName(WorkCycle.Name, true);

                if (workCycleWithLines == null)
                {
                    throw new ApplicationException("Invalid Work Cycle");
                }

                WorkCycle.Lines = new BindingList <WpfWorkCycleLines>(
                    RestproMapper.MapWorkCycleLinesToWpfWorkCycleList(workCycleWithLines
                                                                      .WorkCycleLines.ToList()));
            }
            else
            {
                wCycle.UserId   = CurrentUser.Id;
                WorkCycle.Lines = new BindingList <WpfWorkCycleLines>();
            }

            if (WorkCycle != null)
            {
                WorkCycle.ErrorsChanged -= RaiseCanExecuteChanged;
            }

            WorkCycle.ErrorsChanged          += RaiseCanExecuteChanged;
            this.WorkCycle.Lines.ListChanged += this.OnListChanged;
        }
示例#9
0
        public void LoadSuppliers()
        {
            var suppliers = _unitOfWork.Suppliers.GetSuppliers().ToList();

            var wpfSuppliers = RestproMapper.MapSupplierListToWpfSupplierList(suppliers);

            Suppliers = new BindingList <WpfSupplier>(wpfSuppliers);
        }
        public void LoadCategories()
        {
            var categoriesInDb = _unitOfWork.RawMaterialCategories
                                 .GetAll().ToList();

            var categoriesForView =
                RestproMapper.MapRawMaterialCategoryListToWpfRawMaterialCategoryList(categoriesInDb);

            Categories = new BindingList <WpfRawMaterialCategory>(categoriesForView);
        }
        public void LoadLocations()
        {
            var locationsInDb = _unitOfWork
                                .Locations
                                .GetLocations().ToList();

            var locationsForView = RestproMapper.MapLocationListToWpfLocationList(locationsInDb);

            Locations = new BindingList <WpfLocation>(locationsForView);
        }
        public void SetPurchaseOrder(WpfPurchaseOrder wpfPurchaseOrder)
        {
            PurchaseOrder = wpfPurchaseOrder;

            if (EditMode)
            {
                var purchaseOrderWithLines = _unitOfWork
                                             .PurchaseOrders
                                             .GetPurchaseOrderByPurchaseOrderNumber(wpfPurchaseOrder.PurchaseOrderNumber, true);

                if (purchaseOrderWithLines == null)
                {
                    throw new ApplicationException("Invalid Purchase Order");
                }

                PurchaseOrder.Lines = new BindingList <WpfPurchaseOrderLine>(
                    RestproMapper.MapPurchaseOrderLineListToWpfPurchaseOrderLineList(purchaseOrderWithLines
                                                                                     .PurchaseOrderLines.ToList()));
            }
            else
            {
                PurchaseOrder.Lines               = new BindingList <WpfPurchaseOrderLine>();
                PurchaseOrder.CreatedBy           = _unitOfWork.Users.SingleOrDefault(x => x.Id == CurrentUser.Id).Id;
                PurchaseOrder.PurchaseOrderNumber = GenerateNewPurchaseOrderNumber().ToString();
                PurchaseOrder.StatusId            = Statuses.New.ToString();
                PurchaseOrder.Active              = true;
                PurchaseOrder.DateCreated         = DateTime.Today;

                _unitOfWork.PurchaseOrders
                .AddPurchaseOrder(
                    RestproMapper.MapWpfPurchaseOrderToPurchaseOrderWithLines(PurchaseOrder));

                PurchaseOrder.Id = _unitOfWork.PurchaseOrders
                                   .SingleOrDefault(p => p.PurchaseOrderNumber == PurchaseOrder.PurchaseOrderNumber).Id;
            }


            if (PurchaseOrder != null)
            {
                PurchaseOrder.ErrorsChanged -= RaiseCanExecuteChanged;
            }

            PurchaseOrder.ErrorsChanged          += RaiseCanExecuteChanged;
            this.PurchaseOrder.Lines.ListChanged += this.OnListChanged;
        }
示例#13
0
        private async void DeleteWorkCycle(WpfWorkCycle wpfWorkCycle)
        {
            var workCycleEntity = RestproMapper.MapWpfWorkCycleToWorkCycle(wpfWorkCycle);

            if (workCycleEntity == null)
            {
                await dialogCoordinator.ShowMessageAsync(this, "WARNING", "KINDLY SELECT A WORK CYCLE");

                return;
            }

            workCycleEntity = _unitOfWork.WorkCycles.SingleOrDefault(
                w => w.Id == workCycleEntity.Id);

            _unitOfWork.WorkCycles.Remove(workCycleEntity);
            _unitOfWork.Complete();

            WorkCycles.Remove(wpfWorkCycle);
        }
        private async void OnSave()
        {
            var purchaseOrderEntity = RestproMapper.MapWpfPurchaseOrderToPurchaseOrderWithLines(PurchaseOrder);

            if (_editMode)
            {
                _unitOfWork.PurchaseOrders.UpdatePurchaseOrder(purchaseOrderEntity);
            }
            else
            {
                _unitOfWork.PurchaseOrders.UpdatePurchaseOrder(purchaseOrderEntity);
                _unitOfWork.Complete();
            }

            var controller = await dialogCoordinator.ShowMessageAsync(this, "Success", "Items Saved Successfully. You Rock!");

            if (controller == MessageDialogResult.Affirmative)
            {
                Done(CurrentUser);
            }
        }
        private async void OnSave()
        {
            WorkCycle = AppendCurrentUser(WorkCycle);

            var workCycleEntity = RestproMapper.MapWpfWorkCycleToWorkCycleAndHandleLines(WorkCycle);

            if (_editMode)
            {
                _unitOfWork.WorkCycles.UpdateWorkCycle(workCycleEntity);
            }
            else
            {
                workCycleEntity.Active = true;
                _unitOfWork.WorkCycles.AddWorkingCycle(workCycleEntity);
                _unitOfWork.Complete();
            }

            var controller = await dialogCoordinator.ShowMessageAsync(this, "Success", "Items Saved Successfully. You Rock!");

            if (controller == MessageDialogResult.Affirmative)
            {
                Done(CurrentUser);
            }
        }