Пример #1
0
        public static ShipmentStatus DoPartnerShipment(PartnerShipment shipment)
        {
            Stock stock = Global.Database.SelectOne <Stock>("stock", new Dictionary <string, object>()
            {
                { "ItemID", shipment.ItemID },
                { "WarehouseID", shipment.WarehouseID }
            });

            if (stock == null)
            {
                return(ShipmentStatus.DatabaseError);
            }

            if (shipment.IsSell && stock.Count < shipment.Count)
            {
                return(ShipmentStatus.InvalidItemCount);
            }

            if (shipment.IsSell)
            {
                stock.Count -= shipment.Count;
            }
            else
            {
                stock.Count += shipment.Count;
            }

            if (!Global.Database.Update <Stock>("stock", stock))
            {
                return(ShipmentStatus.DatabaseError);
            }

            return(ShipmentStatus.OK);
        }
Пример #2
0
        public static PartnerShipmentSummary GetPartnerShipmentSummary(PartnerShipment source)
        {
            List <PartnerShipmentSummary> data = Global.Database.Select <PartnerShipmentSummary>(
                _partnerShipmentDetailedSummaryQuery,
                new OdbcParameter("@PartnerID", source.PartnerID),
                new OdbcParameter("@ItemID", source.ItemID),
                new OdbcParameter("@WarehouseID", source.WarehouseID),
                new OdbcParameter("@Date", OdbcType.Date)
            {
                Value = source.Date
            }
                );

            if (data != null && data.Count > 0)
            {
                return(data[0]);
            }

            return(null);
        }
Пример #3
0
        private void btnNewPShipment_Click(object sender, EventArgs e)
        {
            using (NewPartnerShipmentForm newPartnerShipment = new NewPartnerShipmentForm())
            {
                if (newPartnerShipment.ShowDialog(this) == DialogResult.OK)
                {
                    PartnerShipment pshipment = newPartnerShipment.NewShipment;

                    if (!Global.Database.InsertInto <PartnerShipment>("partnershipment", pshipment))
                    {
                        Error("Hiba a szállítmány létrehozása közben!", "Hiba");
                        return;
                    }

                    PartnerShipmentSummary newSummary = ComplexQueries.GetPartnerShipmentSummary(pshipment);

                    if (newSummary == null)
                    {
                        Error("Hiba a szállítmány létrehozása közben!", "Hiba");
                        return;
                    }

                    switch (ComplexQueries.DoPartnerShipment(newSummary))
                    {
                    case ComplexQueries.ShipmentStatus.DatabaseError:
                        Error("Adatbázis hiba!", "Hiba");
                        break;

                    case ComplexQueries.ShipmentStatus.InvalidItemCount:
                        Error("Nincs elég a szállított tárgyból a raktárban!", "Hiba");
                        break;

                    case ComplexQueries.ShipmentStatus.OK:
                        DataGridManager.AddDataGridEntry <PartnerShipmentSummary>(gridPartnerShipment, newSummary);

                        LoadStockTab();
                        break;
                    }
                }
            }
        }