private void BtnImport_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(txtProductID.Text))
            {
                MessageBox.Show("Please choose a product to import!");
            }
            else if (ValidateChildren(ValidationConstraints.Enabled))
            {
                string id            = txtProductID.Text;
                string dateImport    = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                int    numberPackage = int.Parse(txtNumberPacakge.Text);
                int    numSub        = int.Parse(txtNumberSub.Text);
                float  price         = float.Parse(txtPrice.Text);
                int    numpackeLast  = ProDAO.getNumberPackageByID(id);
                int    numSubLast    = ProDAO.getNumSub(id);
                //create iumportDTO
                Import ip = new Import();
                ip.ImportID            = userID;
                ip.ProductID           = id;
                ip.DateImport          = dateImport;
                ip.ImportFrom          = importFrom;
                ip.NumberPackageImport = numberPackage;
                ip.PriceImport         = price * numberPackage;
                ip.PriceOneImport      = price;
                ip.ProductName         = txtProductName.Text;
                ip.lastPrice           = lastPrice;
                ip.numSub = int.Parse(txtNumberSub.Text);

                bool checkUpdateProduct    = ProDAO.updateProduct(numberPackage + numpackeLast, numSub + numSubLast, price, id);
                bool checkInsertIntoImport = importDAO.insertImport(ip);
                if (checkUpdateProduct && checkInsertIntoImport)
                {
                    MessageBox.Show("Import successfull");
                    listProduct = ProDAO.getListProduct();
                    listImport.Add(ip);
                    txtProductID.Text     = "";
                    txtProductName.Text   = "";
                    txtDescription.Text   = "";
                    txtPackage.Text       = "";
                    txtNumberPacakge.Text = "";
                    txtSubPackage.Text    = "";
                    txtNumberSub.Text     = "";
                    txtPrice.Text         = "";
                }
                else
                {
                    MessageBox.Show("Import fail");
                }
            }
        }
 private void BtnRemove_Click(object sender, EventArgs e)
 {
     if ((dgvSubmit.RowCount - 1) == 0)
     {
         MessageBox.Show("List import is empty");
     }
     else
     {
         flag = dgvSubmit.CurrentCell.RowIndex;
         if (flag != -1)
         {
             string id                   = listImport.ElementAt(flag).ProductID;
             float  lastPrice            = listImport.ElementAt(flag).lastPrice;
             string date                 = listImport.ElementAt(flag).DateImport;
             int    currentNumberPackage = ProDAO.getNumberPackageByID(id);
             int    currentNumSub        = ProDAO.getNumSub(id);
             int    numberImport         = listImport.ElementAt(flag).NumberPackageImport;
             int    numSubImport         = listImport.ElementAt(flag).numSub;
             listImport.RemoveAt(flag);
             bool check      = importDAO.removeImportByDateTime(date);
             bool checkReset = ProDAO.updateProduct(currentNumberPackage - numberImport, currentNumSub - numSubImport, lastPrice, id);
             if (check && checkReset)
             {
                 MessageBox.Show("Remove successful");
                 loadData(listImport);
                 flag = -1;
             }
             else
             {
                 MessageBox.Show("Remove fail");
                 flag = -1;
             }
         }
         else
         {
             MessageBox.Show("Please choose product to Remove");
         }
     }
 }
        private void BtnExport_Click(object sender, EventArgs e)
        {
            if (index == -1)
            {
                MessageBox.Show("Please choose a product to export");
            }
            else
            {
                if (validate())
                {
                    string exportID    = userID;
                    string productID   = txtProductID.Text.Trim();
                    string productName = txtProductName.Text;
                    string dateExport  = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                    int    numPack     = int.Parse(txtNumberPackage.Text);
                    int    numSub      = 0;
                    if (!string.IsNullOrEmpty(txtNumberSub.Text))
                    {
                        numSub = int.Parse(txtNumberSub.Text);
                    }
                    float pricePackageExport   = listProduct.ElementAt(index).PriceToExportPackage;
                    float priceSubExport       = listProduct.ElementAt(index).PriceToExportSub;
                    int   currentNumberPackage = ProDAO.getNumberPackageByID(productID);
                    int   currentNumSub        = ProDAO.getNumSub(productID);
                    int   currentCount         = ProDAO.getCountExport(productID);
                    if (numPack == 0 && numSub == 0)
                    {
                        MessageBox.Show("please input a number of package or dub package to export");
                        return;
                    }
                    if (pricePackageExport != 0)
                    {
                        if (numSub == 0)
                        {
                            if (numPack <= currentNumberPackage && numSub <= currentNumSub)
                            {
                                Export ep = new Export();
                                ep.ExportID              = userID;
                                ep.ProductID             = productID;
                                ep.ProductName           = productName;
                                ep.DateExport            = dateExport;
                                ep.NumberPackageExport   = numPack;
                                ep.NumberSubExport       = numSub;
                                ep.PricePackageExport    = pricePackageExport;
                                ep.PriceSubPackageExport = priceSubExport;
                                ep.PriceExport           = numPack * pricePackageExport;
                                ep.CountExport           = currentCount;

                                bool checkUpdateProdutc = ProDAO.updateProductAtCountExport(0, currentNumberPackage - numPack, productID);
                                bool checkInsertExport  = exportDAO.insertExport(ep);
                                if (checkUpdateProdutc && checkInsertExport)
                                {
                                    MessageBox.Show("Add to export list successful");
                                    listExport.Add(ep);
                                    index                 = -1;
                                    txtProductID.Text     = "";
                                    txtProductName.Text   = "";
                                    txtDesCription.Text   = "";
                                    txtNumberPackage.Text = "";
                                    txtNumberSub.Text     = "";
                                    lbPackage.Text        = "";
                                    lbSub.Text            = "";
                                }
                                else
                                {
                                    MessageBox.Show("Add to export list fail");
                                    index                 = -1;
                                    txtProductID.Text     = "";
                                    txtProductName.Text   = "";
                                    txtDesCription.Text   = "";
                                    txtNumberPackage.Text = "";
                                    txtNumberSub.Text     = "";
                                    lbPackage.Text        = "";
                                    lbSub.Text            = "";
                                }
                            }
                            else
                            {
                                MessageBox.Show("Number export greater than number produts have been, please inmput again");
                            }
                        }
                        else
                        {
                            if (priceSubExport != 0)
                            {
                                if (numSub < currentNumSub && numPack <= currentNumberPackage)
                                {
                                    Export ep = new Export();
                                    ep.ExportID              = userID;
                                    ep.ProductID             = productID;
                                    ep.ProductName           = productName;
                                    ep.DateExport            = dateExport;
                                    ep.NumberPackageExport   = numPack;
                                    ep.NumberSubExport       = numSub;
                                    ep.PricePackageExport    = pricePackageExport;
                                    ep.PriceSubPackageExport = priceSubExport;
                                    ep.PriceExport           = numPack * pricePackageExport + numSub * priceSubExport;
                                    ep.CountExport           = currentCount;

                                    if (numSub + currentCount > currentNumSub)
                                    {
                                        bool checkUpdateProdutc = ProDAO.updateProductAtCountExport((numSub + currentCount - currentNumSub), currentNumberPackage - 1 - numPack, productID);
                                        bool checkInsertExport  = exportDAO.insertExport(ep);
                                        if (checkUpdateProdutc && checkInsertExport)
                                        {
                                            MessageBox.Show("Add to export list successful");
                                            listExport.Add(ep);
                                            index                 = -1;
                                            txtProductID.Text     = "";
                                            txtProductName.Text   = "";
                                            txtDesCription.Text   = "";
                                            txtNumberPackage.Text = "";
                                            txtNumberSub.Text     = "";
                                            lbPackage.Text        = "";
                                            lbSub.Text            = "";
                                        }
                                        else
                                        {
                                            MessageBox.Show("Add to export list fail");
                                            index                 = -1;
                                            txtProductID.Text     = "";
                                            txtProductName.Text   = "";
                                            txtDesCription.Text   = "";
                                            txtNumberPackage.Text = "";
                                            txtNumberSub.Text     = "";
                                            lbPackage.Text        = "";
                                            lbSub.Text            = "";
                                        }
                                    }
                                    else if (numSub + currentCount == currentNumSub)
                                    {
                                        bool checkUpdateProdutc = ProDAO.updateProductAtCountExport(0, currentNumberPackage - 1 - numPack, productID);
                                        bool checkInsertExport  = exportDAO.insertExport(ep);
                                        if (checkUpdateProdutc && checkInsertExport)
                                        {
                                            MessageBox.Show("Add to export list successful");
                                            listExport.Add(ep);
                                            index                 = -1;
                                            txtProductID.Text     = "";
                                            txtProductName.Text   = "";
                                            txtDesCription.Text   = "";
                                            txtNumberPackage.Text = "";
                                            txtNumberSub.Text     = "";
                                            lbPackage.Text        = "";
                                            lbSub.Text            = "";
                                        }
                                        else
                                        {
                                            MessageBox.Show("Add to export list fail");
                                            index                 = -1;
                                            txtProductID.Text     = "";
                                            txtProductName.Text   = "";
                                            txtDesCription.Text   = "";
                                            txtNumberPackage.Text = "";
                                            txtNumberSub.Text     = "";
                                            lbPackage.Text        = "";
                                            lbSub.Text            = "";
                                        }
                                    }
                                    else
                                    {
                                        bool checkUpdateProdutc = ProDAO.updateProductAtCountExport((numSub + currentCount), currentNumberPackage - numPack, productID);
                                        bool checkInsertExport  = exportDAO.insertExport(ep);
                                        if (checkUpdateProdutc && checkInsertExport)
                                        {
                                            MessageBox.Show("Add to export list successful");
                                            listExport.Add(ep);
                                            index                 = -1;
                                            txtProductID.Text     = "";
                                            txtProductName.Text   = "";
                                            txtDesCription.Text   = "";
                                            txtNumberPackage.Text = "";
                                            txtNumberSub.Text     = "";
                                            lbPackage.Text        = "";
                                            lbSub.Text            = "";
                                        }
                                        else
                                        {
                                            MessageBox.Show("Add to export list fail");
                                            index                 = -1;
                                            txtProductID.Text     = "";
                                            txtProductName.Text   = "";
                                            txtDesCription.Text   = "";
                                            txtNumberPackage.Text = "";
                                            txtNumberSub.Text     = "";
                                            lbPackage.Text        = "";
                                            lbSub.Text            = "";
                                        }
                                    }
                                }
                                else
                                {
                                    MessageBox.Show("Please input number sub package less than number sub of one package or yout can export a package");
                                }
                            }
                            else
                            {
                                MessageBox.Show("Price to export had not been input, please input at manage product function");
                            }
                        }
                    }
                    else
                    {
                        MessageBox.Show("Price to export had not been input, please input at manage product function");
                    }
                }
            }
        }
Exemplo n.º 4
0
        private void BtnRemove_Click(object sender, EventArgs e)
        {
            if ((dgvSubmitExport.RowCount - 1) == 0)
            {
                MessageBox.Show("List export is empty");
            }
            else
            {
                flag = dgvSubmitExport.CurrentCell.RowIndex;
                if (flag != -1)
                {
                    string productID      = listExport.ElementAt(flag).ProductID;
                    string dateExport     = listExport.ElementAt(flag).DateExport;
                    int    oldNumPack     = listExport.ElementAt(flag).NumberPackageExport;
                    int    oldNumSub      = listExport.ElementAt(flag).NumberSubExport;
                    int    oldCount       = listExport.ElementAt(flag).CountExport;
                    int    currentPackage = ProDAO.getNumberPackageByID(productID);
                    int    currentSub     = ProDAO.getNumSub(productID);

                    listExport.RemoveAt(flag);
                    if (oldNumSub != 0)
                    {
                        if (oldCount + oldNumSub >= currentSub)
                        {
                            bool checkUpdatePro = ProDAO.updateProductAtCountExport(oldCount, currentPackage + 1 + oldNumPack, productID);
                            bool checkDelete    = exportDAO.removeExportByDateTime(dateExport);
                            if (checkUpdatePro)
                            {
                                MessageBox.Show("Remove successful", "Notification");
                                loadData(listExport);
                                flag = -1;
                            }
                            else
                            {
                                MessageBox.Show("Remove fail", "Warning");
                                flag = -1;
                            }
                        }
                        else
                        {
                            bool checkUpdatePro = ProDAO.updateProductAtCountExport(oldCount, currentPackage + oldNumPack, productID);
                            bool checkDelete    = exportDAO.removeExportByDateTime(dateExport);
                            if (checkUpdatePro)
                            {
                                MessageBox.Show("Remove successful", "Notification");
                                loadData(listExport);
                                flag = -1;
                            }
                            else
                            {
                                MessageBox.Show("Remove fail", "Warning");
                                flag = -1;
                            }
                        }
                    }
                    else
                    {
                        bool checkUpdatePro = ProDAO.updateProductAtCountExport(oldCount, currentPackage + oldNumPack, productID);
                        bool checkDelete    = exportDAO.removeExportByDateTime(dateExport);
                        if (checkUpdatePro)
                        {
                            MessageBox.Show("Remove successful", "Notification");
                            loadData(listExport);
                            flag = -1;
                        }
                        else
                        {
                            MessageBox.Show("Remove fail", "Warning");
                            flag = -1;
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Please choose product to Remove", "Warning");
                }
            }
        }