예제 #1
0
        private static void PurchaseHistoryIntoSQL(SQLiteConnection DataFile, PurchaseHistoryList PurHisList)
        {
            SQLiteCommand insert = new SQLiteCommand(DataFile);

            for (int i = 0; i < PurHisList.Count; i++)
            {
                insert.CommandText = "insert into PurchaseHistory values(" + PurHisList[i].PurchaseHistoryID.ToString() + ", " + PurHisList[i].ShipmentID.ToString() + ", " + PurHisList[i].ClientID.ToString() + ", " + PurHisList[i].Count.ToString() + ", '" + PurHisList[i].Year.ToString() + "-";
                if (PurHisList[i].Month < 10)
                {
                    insert.CommandText += "0" + PurHisList[i].Month.ToString() + "-";
                }
                else
                {
                    insert.CommandText += PurHisList[i].Month.ToString() + "-";
                }
                if (PurHisList[i].Day < 10)
                {
                    insert.CommandText += "0" + PurHisList[i].Day.ToString() + "')";
                }
                else
                {
                    insert.CommandText += PurHisList[i].Day.ToString() + "')";
                }
                insert.ExecuteNonQuery();
            }
        }
예제 #2
0
        public static bool ShipmentReport(string file, ShipmentList Shipments, PurchaseHistoryList PurHisList)
        {
            List <string> Titles = new List <string>();
            List <int>    Prices = new List <int>();
            List <int>    Counts = new List <int>();
            List <int>    Costs  = new List <int>();

            for (int i = 0; i < Shipments.Count; i++)
            {
                Titles.Add(Shipments[i].ShipmentName);
                Prices.Add(Shipments[i].Price);
                Counts.Add(0);
                foreach (PurchaseHistory PH in PurHisList.ListOfHistory)
                {
                    if (Shipments[i].ShipmentID == PH.ShipmentID)
                    {
                        Counts[i] += PH.Count;
                    }
                }
                Costs.Add(Shipments[i].Price * Counts[i]);
            }

            PDF.CreateShipmentReport(file, Titles, Prices, Counts, Costs);
            return(true);
        }
예제 #3
0
 public BackupClass(ClientList Clients, ProviderList Providers, ShipmentList Shipments, ProviderShipmentList ProviderShipment, PurchaseHistoryList PurchaseHistory)
 {
     this.Clients          = Clients;
     this.Providers        = Providers;
     this.Shipments        = Shipments;
     this.ProviderShipment = ProviderShipment;
     this.PurchaseHistory  = PurchaseHistory;
 }
예제 #4
0
        private void OFD_FileOk(object sender, CancelEventArgs e)
        {
            string file = OFD.FileName;

            BackupClass.BackupClass Backup = InputList.InputList.Backup(file);

            Shipments          = Backup.Shipments;
            Clients            = Backup.Clients;
            Providers          = Backup.Providers;
            ProvidersShipments = Backup.ProviderShipment;
            PurchaseHistoryL   = Backup.PurchaseHistory;

            MessageBox.Show("Списки успешно перезаписаны");
        }
예제 #5
0
        public static PurchaseHistoryList PurchaseHistory(SQLiteConnection DataFile)
        {
            PurchaseHistoryList PurHisList = new PurchaseHistoryList();
            SQLiteCommand       input      = new SQLiteCommand(DataFile);

            input.CommandText = "select * from PurchaseHistory";
            SQLiteDataReader sdr = input.ExecuteReader();

            while (sdr.Read())
            {
                string[] str = sdr.GetValue(4).ToString().Split('-');
                PurHisList.Add(Convert.ToInt32(sdr.GetValue(0)), Convert.ToInt32(sdr.GetValue(1)), Convert.ToInt32(sdr.GetValue(2)), Convert.ToInt32(sdr.GetValue(3)), Convert.ToInt32(str[2]), Convert.ToInt32(str[1]), Convert.ToInt32(str[0]));
            }
            return(PurHisList);
        }
예제 #6
0
        private void StartScreen_Load(object sender, EventArgs e)
        {
            if (!File.Exists("mySQLiteLab.sqlite"))
            {
                SQLiteConnection.CreateFile("mySQLiteLab.sqlite");
            }
            DataFile.Open();

            CreateTable.CreateAll(DataFile);

            Shipments          = InputList.InputList.Shipment(DataFile);
            Providers          = InputList.InputList.Provider(DataFile);
            Clients            = InputList.InputList.Client(DataFile);
            ProvidersShipments = InputList.InputList.ProviderShipment(DataFile);
            PurchaseHistoryL   = InputList.InputList.PurchaseHistory(DataFile);

            MaxShipmentID        = SearchMaxID.SearchMaxID.FindMaxID(DataFile, "prod");
            MaxClientID          = SearchMaxID.SearchMaxID.FindMaxID(DataFile, "cl");
            MaxProviderID        = SearchMaxID.SearchMaxID.FindMaxID(DataFile, "prov");
            MaxPurchaseHistoryID = SearchMaxID.SearchMaxID.FindMaxID(DataFile, "ph");
        }
예제 #7
0
        public static bool PurchaseHistoryReport(string file, ShipmentList Shipments, PurchaseHistoryList PurHisList)
        {
            List <string> Dates  = new List <string>();
            List <int>    Counts = new List <int>();
            List <int>    Costs  = new List <int>();

            for (int i = 0; i < PurHisList.Count; i++)
            {
                if (Dates.Count == 0)
                {
                    Dates.Add(FormatDate.GetDate(PurHisList[i].Day, PurHisList[i].Month, PurHisList[i].Year));
                    Counts.Add(PurHisList[i].Count);
                    foreach (Shipment SH in Shipments.Shipments)
                    {
                        if (SH.ShipmentID == PurHisList[i].ShipmentID)
                        {
                            Costs.Add(PurHisList[i].Count * SH.Price);
                            break;
                        }
                    }
                }
                else
                {
                    int numberOfDate = -1;
                    for (int j = 0; j < Dates.Count; j++)
                    {
                        if (FormatDate.GetDate(PurHisList[i].Day, PurHisList[i].Month, PurHisList[i].Year) == Dates[j])
                        {
                            numberOfDate = j;
                            break;
                        }
                    }
                    if (numberOfDate != -1)
                    {
                        Counts[numberOfDate] += PurHisList[i].Count;
                        foreach (Shipment SH in Shipments.Shipments)
                        {
                            if (SH.ShipmentID == PurHisList[i].ShipmentID)
                            {
                                Costs[numberOfDate] += PurHisList[i].Count * SH.Price;
                                break;
                            }
                        }
                    }
                    else
                    {
                        Dates.Add(FormatDate.GetDate(PurHisList[i].Day, PurHisList[i].Month, PurHisList[i].Year));
                        Counts.Add(PurHisList[i].Count);
                        foreach (Shipment SH in Shipments.Shipments)
                        {
                            if (SH.ShipmentID == PurHisList[i].ShipmentID)
                            {
                                Costs.Add(PurHisList[i].Count * SH.Price);
                                break;
                            }
                        }
                    }
                }
            }

            PDF.CreatePurchaseHistoryReport(file, Dates, Counts, Costs);
            return(true);
        }
예제 #8
0
        public static bool ClientReport(string file, ClientList Clients, ShipmentList Shipments, PurchaseHistoryList PurHisList)
        {
            List <string> Names  = new List <string>();
            List <int>    Counts = new List <int>();
            List <int>    Costs  = new List <int>();

            for (int i = 0; i < Clients.Count; i++)
            {
                Names.Add(Clients[i].ClientLastName + " " + Clients[i].ClientFirstName);
                Counts.Add(0);
                Costs.Add(0);
                foreach (PurchaseHistory PH in PurHisList.ListOfHistory)
                {
                    if (PH.ClientID == Clients[i].ClientID)
                    {
                        Counts[i] += PH.Count;
                        foreach (Shipment SH in Shipments.Shipments)
                        {
                            if (SH.ShipmentID == PH.ShipmentID)
                            {
                                Costs[i] += SH.Price * PH.Count;
                                break;
                            }
                        }
                    }
                }
            }

            PDF.CreateClientReport(file, Names, Counts, Costs);
            return(true);
        }
예제 #9
0
 public static void OutputIntoSQL(SQLiteConnection DataFile, ShipmentList ShipList, ClientList CList, ProviderList ProvList, ProviderShipmentList ProvShipList, PurchaseHistoryList PurHisList)
 {
     ShipmentsIntoSQL(DataFile, ShipList);
     ClientsIntoSQL(DataFile, CList);
     ProvidersIntoSQL(DataFile, ProvList);
     ProviderShipmentsIntoSQL(DataFile, ProvShipList);
     PurchaseHistoryIntoSQL(DataFile, PurHisList);
 }
예제 #10
0
        public static void OutputIntoXML(string file, ShipmentList ShipList, ClientList ClList, ProviderList ProvList, ProviderShipmentList ProvShipList, PurchaseHistoryList PurHisList)
        {
            BackupClass.BackupClass BC      = new BackupClass.BackupClass(ClList, ProvList, ShipList, ProvShipList, PurHisList);
            StreamWriter            NewFile = new StreamWriter(file);
            XmlSerializer           XMLSer  = new XmlSerializer(typeof(BackupClass.BackupClass));

            XMLSer.Serialize(NewFile, BC);
            NewFile.Close();
        }