Example #1
0
 private void LoadOrdersData()
 {
     ordersService             = Program.kernel.Get <IOrdersService>();
     contractorsService        = Program.kernel.Get <IContractorsService>();
     receiptsService           = Program.kernel.Get <IReceiptsService>();
     receiptAcceptancesService = Program.kernel.Get <IReceiptAcceptancesService>();
 }
 private void LoadDataKits(int receiptId)
 {
     receiptAcceptancesService         = Program.kernel.Get <IReceiptAcceptancesService>();
     receiptAcceptancesList            = receiptAcceptancesService.GetReceiptAcceptanceByReceiptId(receiptId).ToList();
     receiptAcceptancesBS.DataSource   = receiptAcceptancesList;
     receiptAcceptancesGrid.DataSource = receiptAcceptancesBS;
 }
Example #3
0
        public KitsFm(ReceiptsDTO receipt)
        {
            InitializeComponent();
            receiptBS.DataSource      = receipt;
            receiptDTO                = receipt;
            receiptAcceptancesService = Program.kernel.Get <IReceiptAcceptancesService>();

            orderNumberTBox.DataBindings.Add("EditValue", receiptBS, "OrderNumber");
            orderDateEdit.DataBindings.Add("EditValue", receiptBS, "OrderDate");
            articleTBox.DataBindings.Add("EditValue", receiptBS, "Article");
            nameTBox.DataBindings.Add("EditValue", receiptBS, "Name");
            quantityTBox.DataBindings.Add("EditValue", receiptBS, "Quantity");

            quantityInKitTBox.EditValue = receipt.Quantity;
            kitsControl.Controls["quantityInKitTBox"].Focus();
            saveBtn.Enabled = false;
        }
        private void saveBtn_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (receiptsList.Any(r => r.Checked))
            {
                if (MessageBox.Show("Сохранить изменения?", "Сохранение", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    int curOrderId = 0;

                    ordersService             = Program.kernel.Get <IOrdersService>();
                    receiptsService           = Program.kernel.Get <IReceiptsService>();
                    receiptAcceptancesService = Program.kernel.Get <IReceiptAcceptancesService>();

                    foreach (var checkReceipt in receiptsList.Where(r => r.Checked))
                    {
                        if (curOrderId != checkReceipt.OrderId)
                        {
                            curOrderId = checkReceipt.OrderId;
                            var orderItem = ordersService.GetOrderById(curOrderId);
                            orderItem.StatusId = 2;
                            ordersService.OrderUpdate(orderItem);
                        }

                        var receiptItem = receiptsService.GetReceiptById(checkReceipt.ReceiptId);
                        receiptItem.StatusId = 6;
                        receiptsService.ReceiptUpdate(receiptItem);

                        var curReceiptAcceptancesList = receiptAcceptancesService.GetReceiptAcceptanceByReceiptId(checkReceipt.ReceiptId).Select(ra => { ra.StatusId = 6; return(ra); }).ToList();
                        receiptAcceptancesService.UpdateRange(curReceiptAcceptancesList);
                    }

                    receiptsGridView.BeginDataUpdate();
                    LoadReceiptsData((int)statusItem.EditValue);
                    receiptsGridView.EndDataUpdate();

                    if (receiptsBS.Count > 0)
                    {
                        receiptsGridView.FocusedRowHandle = 0;
                        receiptsGridView.ExpandAllGroups();
                    }
                }
            }
            else
            {
                MessageBox.Show("Не выбраны данные для принятия!", "Принятие прихода", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
        private void cancelAcceptanceBtn_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            receiptAcceptancesService = Program.kernel.Get <IReceiptAcceptancesService>();
            receiptsService           = Program.kernel.Get <IReceiptsService>();
            ordersService             = Program.kernel.Get <IOrdersService>();

            if (receiptsBS.List.Count == 0)
            {
                return;
            }

            var currentReceipt = (ReceiptsForAcceptanceDTO)receiptsBS.Current;

            if ((currentReceipt.StatusId == 6) && (!receiptAcceptancesList.Any(ra => ra.StatusId > 6))) // отменить прием можно если статус Принят и нет не одной записи в receiptAcceptances со статусом Выше (хранение, частично обработан или отгружен)
            {
                if (MessageBox.Show("Отменить прием выбранной номенклатуры?", "Сохранение", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    if (receiptsService.GetReceiptsForAcceptance().Any(m => m.OrderId == currentReceipt.OrderId && m.StatusId == 6 && m.ReceiptId != currentReceipt.ReceiptId))
                    {
                        var orderItem = ordersService.GetOrderById(currentReceipt.OrderId);
                        orderItem.StatusId = 1;
                        ordersService.OrderUpdate(orderItem);
                    }

                    var receiptItem = receiptsService.GetReceiptById(currentReceipt.ReceiptId);
                    receiptItem.StatusId = 5;
                    receiptsService.ReceiptUpdate(receiptItem);

                    receiptAcceptancesService.UpdateRange(receiptAcceptancesList.Select(ra => { ra.StatusId = 5; return(ra); }).ToList());

                    receiptsGridView.BeginDataUpdate();

                    LoadReceiptsData((int)statusItem.EditValue);

                    receiptsGridView.EndDataUpdate();

                    int handle = receiptsGridView.LocateByValue("ReceiptId", currentReceipt.ReceiptId);
                    receiptsGridView.FocusedRowHandle = handle;
                }
            }
            else
            {
                MessageBox.Show("Нельзя отменить принятие, поскольку один или несколько комплектов находятся на хранении.", "Отменить принятие прихода", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
Example #6
0
        private bool TakeKeeping(KeepingMaterialsDTO model)
        {
            receiptsService           = Program.kernel.Get <IReceiptsService>();
            receiptAcceptancesService = Program.kernel.Get <IReceiptAcceptancesService>();
            ordersService             = Program.kernel.Get <IOrdersService>();
            keepingsService           = Program.kernel.Get <IKeepingsService>();
            expendituresService       = Program.kernel.Get <IExpendituresService>();

            int wareHouseId = model.WareHouseId;

            if (wareHouseId > 0)
            {
                firstWindDefaultCell = wareHouseId;

                if ((int)barEditItem1.EditValue == 0)
                {
                    if (cellPresenceList == null)
                    {
                        cellPresenceList = wareHousesService.GetCellPresence(wareHouseId).ToList();
                    }

                    keepingsFirtWndBS.DataSource     = cellPresenceList;
                    keepingsFirstWindGrid.DataSource = keepingsFirtWndBS;

                    WareHousesDTO cellInfo = wareHousesService.GetCellInfo(wareHouseId);
                    numberCellFirstLbl.Text         = cellInfo.NumberCell.ToString();
                    cellCompletedFirstChk.EditValue = (cellInfo.LoadingStatusId == 3 ? true : false);

                    bool canEdit = true;

                    ConfirmQuantityDTO kdto = new ConfirmQuantityDTO
                    {
                        Quantity     = (decimal)model.QuantityStore,
                        Article      = model.Article,
                        MaterialName = model.MaterialName,
                        KeepingId    = model.KeepingId
                    };

                    //using (ConfirmQuantityFm confirmQuantityFm = new ConfirmQuantityFm(kdto, canEdit))
                    //{
                    //    if (confirmQuantityFm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    //    {
                    //        kdto = confirmQuantityFm.Return();

                    //        keepingsFirstWindGridView.BeginDataUpdate();
                    //        cellPresenceList.Where(c => c.KeepingId == (int)kdto.KeepingId).Select(c => { c.QuantityStore = (c.QuantityStore - kdto.Quantity); c.QuantityChanged = c.QuantityChanged + kdto.Quantity; return c; }).ToList();
                    //        keepingsFirstWindGridView.EndDataUpdate();

                    //        expendituresGridView.BeginDataUpdate();
                    //        keepingMaterials.Where(c => c.KeepingId == (int)kdto.KeepingId).Select(k => { k.QuantityStore = (k.QuantityStore - kdto.Quantity); return k; }).ToList();
                    //        expendituresGridView.EndDataUpdate();

                    //        int rowHandle = keepingsFirstWindGridView.LocateByValue("KeepingId", model.KeepingId);
                    //        keepingsFirstWindGridView.FocusedRowHandle = rowHandle;
                    //    }
                    //}
                }

                return(true);
            }
            else
            {
                return(false);
            }
        }