private void populateCompanyProducts()
    {
        cblProducts.Items.Clear();
        int tmp = 0;
        int i   = 0;
        List <CompanyProducts> CP = CompanyProducts.GetAll();

        foreach (CompanyProducts P in CP)
        {
            if (tmp != Convert.ToInt32(P.ParentID))
            {
                cblProducts.Items.Add(new ListItem("<u><b style=\"font-size: large\">" + P.ProductName + "</b></u>", "0"));
            }
            tmp = Convert.ToInt32(P.ParentID);
            cblProducts.Items.Add(new ListItem(P.CategoryProductName, P.ChildID.ToString()));
        }

        for (i = 0; i < cblProducts.Items.Count; i++)
        {
            if (cblProducts.Items[i].Value == "0")
            {
                cblProducts.Items[i].Enabled = false;
            }
        }
    }
Esempio n. 2
0
        public IActionResult GetProductSalesAgents(string CompanyId, string ProductSupplierId)
        {
            try
            {
                AgentDetails model = new AgentDetails();
                request = new AgentGetReq()
                {
                    CompanyId = CompanyId
                };
                AgentGetRes response = agentProviders.GetAgentDetailedInfo(request, token).Result;
                model.CompanyId  = CompanyId;
                model.Issupplier = response.AgentDetails.Issupplier ?? false;
                CompanyProducts product = response.AgentDetails.Products.Where(x => x.ProductSupplier_Id == ProductSupplierId).FirstOrDefault();

                List <Branches> lst = new List <Branches>();
                foreach (var s in product.SalesAgent)
                {
                    Branches prod = new Branches();
                    prod.ParentCompanyId   = s.Company_Id;
                    prod.BranchCompanyId   = s.ProductSupplierSalesAgent_Id;                   // Array Id assigned
                    prod.BranchCompanyName = s.Company_Name;
                    prod.BranchCompanyCode = s.Company_Code;
                    lst.Add(prod);
                }
                model.Branches          = lst.OrderBy(x => x.BranchCompanyName).ToList();
                model.IsForSalesAgent   = true;
                model.ProductSupplierId = ProductSupplierId;
                return(PartialView("_AgentDetailsBranches", model));
            }
            catch (Exception ex)
            {
                throw;
            }
        }
    private void populateCheckedCompanyProducts()
    {
        int selectedID             = Convert.ToInt32(Request.Form["ctl00$ContentPlaceHolder1$ddExporter"]);
        List <CompanyProducts> CPC = CompanyProducts.GetProductCategories(selectedID);

        txtLocation.Text = "";
        if (CPC.Count > 0)
        {
            txtLocation.Text = CPC[0].Location;
            int j = 0;
            for (int i = 0; i < cblProducts.Items.Count; i++)
            {
                if (Convert.ToInt32(cblProducts.Items[i].Value) == CPC[j].ChildEquipID)
                {
                    cblProducts.Items[i].Selected = true;
                    if (j < CPC.Count - 1)
                    {
                        j++;
                    }
                }
            }
        }
    }
        public async Task <IActionResult> CreateForCompany(int companyId, [Bind("Id,CompanyId,ProductId")] CompanyProducts companyProducts)
        {
            companyProducts.CompanyId = companyId;
            if (ModelState.IsValid)
            {
                var comp_prod = _context.CompanyProducts.Where(c => c.ProductId == companyProducts.ProductId).Where(c => c.CompanyId == companyId).FirstOrDefault();
                if (comp_prod != null)
                {
                    ModelState.AddModelError("Error", "Для цієї компанії вже існує дана категорія");
                }
                else
                {
                    _context.Add(companyProducts);
                    await _context.SaveChangesAsync();

                    //return RedirectToAction(nameof(Index));
                    return(RedirectToAction("IndexForCompany", "CompanyProducts", new { id = companyId, name = _context.Companies.Where(c => c.Id == companyId).FirstOrDefault().Name }));
                }
            }
            //ViewData["CompanyId"] = new SelectList(_context.Companies, "Id", "Name", companyProducts.CompanyId);
            ViewData["ProductId"] = new SelectList(_context.Products, "Id", "Name", companyProducts.ProductId);
            //return View(companyProducts);
            return(RedirectToAction("IndexForCompany", "CompanyProducts", new { id = companyId, name = _context.Companies.Where(c => c.Id == companyId).FirstOrDefault().Name }));
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id,CompanyId,ProductId")] CompanyProducts companyProducts)
        {
            if (id != companyProducts.Id)
            {
                return(NotFound());
            }


            string?productName = _context.Products.Where(c => c.Id == companyProducts.ProductId).FirstOrDefault().Name;

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(companyProducts);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!CompanyProductsExists(companyProducts.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                //return RedirectToAction(nameof(Index));
                return(RedirectToAction("Index", "CompanyProducts", new { id = companyProducts.ProductId, name = productName }));
            }
            ViewData["CompanyId"] = new SelectList(_context.Companies, "Id", "Name", companyProducts.CompanyId);
            ViewData["ProductId"] = new SelectList(_context.Products, "Id", "Name", companyProducts.ProductId);
            return(RedirectToAction("Index", "CompanyProducts", new { id = companyProducts.ProductId, name = productName }));
            //return View(companyProducts);
        }
Esempio n. 6
0
        public async Task <IActionResult> Import(IFormFile fileExcel)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    if (fileExcel == null)
                    {
                        throw new FileLoadException("Файл не обрано");
                    }
                    if (fileExcel != null)
                    {
                        using (var stream = new FileStream(fileExcel.FileName, FileMode.Create))
                        {
                            await fileExcel.CopyToAsync(stream);

                            using (XLWorkbook workBook = new XLWorkbook(stream, XLEventTracking.Disabled))
                            {
                                foreach (IXLWorksheet worksheet in workBook.Worksheets)
                                {
                                    Products newCategory;
                                    var      c = (from cat in _context.Products
                                                  where cat.Name.Contains(worksheet.Name)
                                                  select cat).ToList();
                                    if (c.Count > 0)
                                    {
                                        newCategory = c[0];
                                    }
                                    else
                                    {
                                        if (Regex.IsMatch(worksheet.Name, _regexCategory) == false)
                                        {
                                            throw new Exception("Некоректна назва аркуша");
                                        }
                                        newCategory      = new Products();
                                        newCategory.Name = worksheet.Name;
                                        _context.Products.Add(newCategory);
                                    }
                                    //await _context.SaveChangesAsync();

                                    CheckNameRow(worksheet); //проверка рядка с названиями столбцов
                                                             //просмотр всех рядков
                                    foreach (IXLRow row in worksheet.RowsUsed().Skip(1))
                                    {
                                        if (Regex.IsMatch(row.Cell(1).Value.ToString(), _regexModel) == false)
                                        {
                                            throw new Exception("Некоректна назва товару");
                                        }
                                        ModelsOfProduct Model = new ModelsOfProduct();
                                        Model.Name = row.Cell(1).Value.ToString();
                                        if (Model.Name == "")
                                        {
                                            throw new Exception("Порожнє поле назви товару");
                                        }
                                        if (row.Cell(3).Value.ToString() != "")
                                        {
                                            try
                                            {
                                                Model.Price = Convert.ToDouble(row.Cell(3).Value);
                                            }
                                            catch (Exception)
                                            {
                                                throw new Exception("Некоректне поле ціни");
                                            }
                                        }
                                        else
                                        {
                                            throw new Exception("Порожнє поле ціни");
                                        }
                                        Model.Information = row.Cell(4).Value.ToString();

                                        if (row.Cell(2).Value.ToString().Length > 0)
                                        {
                                            Companies Company;
                                            var       comp = (from cmp in _context.Companies
                                                              where cmp.Name.Contains(row.Cell(2).Value.ToString())
                                                              select cmp).ToList();
                                            if (comp.Count > 0)
                                            {
                                                Company = comp[0];
                                            }
                                            else
                                            {
                                                if (Regex.IsMatch(row.Cell(2).Value.ToString(), _regexCompany) == false)
                                                {
                                                    throw new Exception("Некоректна назва компанії");
                                                }
                                                Company      = new Companies();
                                                Company.Name = row.Cell(2).Value.ToString();
                                                _context.Companies.Add(Company);
                                            }
                                            //await _context.SaveChangesAsync();

                                            if (row.Cell(5).Value.ToString().Length > 0)
                                            {
                                                Colors Color;
                                                var    clr = (from col in _context.Colors
                                                              where col.Name.Contains(row.Cell(5).Value.ToString())
                                                              select col).ToList();
                                                if (clr.Count > 0)
                                                {
                                                    Color = clr[0];
                                                }
                                                else
                                                {
                                                    if (Regex.IsMatch(row.Cell(5).Value.ToString(), _regexColor) == false)
                                                    {
                                                        throw new Exception("Некоректна назва кольору");
                                                    }
                                                    Color      = new Colors();
                                                    Color.Name = row.Cell(5).Value.ToString();
                                                    _context.Colors.Add(Color);
                                                }
                                                Model.Color = Color;

                                                CompanyProducts companyProducts;
                                                if (!IsExistCompanyInProduct(newCategory, Company))
                                                {
                                                    companyProducts         = new CompanyProducts();
                                                    companyProducts.Product = newCategory;
                                                    companyProducts.Company = Company;
                                                    _context.CompanyProducts.Add(companyProducts);
                                                }
                                                else
                                                {
                                                    companyProducts = _context.CompanyProducts.Where(c => c.CompanyId == Company.Id && c.ProductId == newCategory.Id).FirstOrDefault();
                                                }
                                                await _context.SaveChangesAsync();

                                                Model.CompProdId = companyProducts.Id;
                                            }
                                            else
                                            {
                                                throw new Exception("Порожнє поле кольору");
                                            }
                                        }
                                        else
                                        {
                                            throw new Exception("Порожня назва компанії");
                                        }
                                        if (!IsExistModel(Model))
                                        {
                                            _context.ModelsOfProduct.Add(Model);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                catch (ArgumentException ex)
                {
                    //неправильное название столбцов
                    return(RedirectToAction("Index", "Products", new { searchString = "", errorString = ex.Message }));
                }
                catch (FileLoadException ex)
                {
                    //ошибка загрузки файла или файл не выбран
                    return(RedirectToAction("Index", "Products", new { errorString = ex.Message }));
                }
                catch (Exception ex)
                {
                    //некоретные данные
                    if (ex.Message == "")
                    {
                        return(RedirectToAction("Index", "Products", new { errorString = "Помилка завантаження файлу" }));
                    }
                    return(RedirectToAction("Index", "Products", new { errorString = ex.Message }));
                }


                await _context.SaveChangesAsync();
            }
            return(RedirectToAction(nameof(Index)));
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Request.QueryString["expid"] != "0")
        {
            List <CompanyProducts> CP  = CompanyProducts.GetProductsByCompanyID(Convert.ToInt32(Request.QueryString["expid"]));
            List <BIRegistration>  BIU = BIRegistration.GetAll();

            string[] arrProdInterest = new string[10];
            string   strTemp = "";
            int      i, j, k, l;
            int      counter        = 0;
            bool     check          = false;
            bool     newLine        = false;
            string[] arrPhraseWords = new string[2];


            if (CP.Count > 0)
            {
                VisitorsPlaceHolder.Text += "<center><b style='font-size: 16pt'><u>" + CP[0].CompanyName + "</u></b></center><br />";
                VisitorsPlaceHolder.Text += "<br />";

                for (i = 0; i < BIU.Count; i++)
                {
                    strTemp         = BIU[i].ProductInterest;
                    arrProdInterest = strTemp.Split(';');
                    for (l = 0; l < arrProdInterest.Length; l++)
                    {
                        if (arrProdInterest[l] != null)
                        {
                            counter++;
                        }
                    }

                    for (j = 0; j < counter; j++)
                    {
                        for (k = 0; k < CP.Count; k++)
                        {
                            if (arrProdInterest[j] == Convert.ToString(CP[k].ParentID))
                            {
                                if (check == false)
                                {
                                    VisitorsPlaceHolder.Text += "<strong><u>" + Translator.DirectTranslation(BIU[i].FirstName) + " " + Translator.DirectTranslation(BIU[i].LastName) + "</u></strong><br />";
                                    VisitorsPlaceHolder.Text += "Job Title " + Translator.DictionaryTranslation(BIU[i].JobTitle) + " Company " + Translator.DictionaryTranslation(BIU[i].Company) + "<br />";
                                    VisitorsPlaceHolder.Text += "Country " + Translator.DictionaryTranslation(BIU[i].Country) + " City " + Translator.DictionaryTranslation(BIU[i].City) + "<br />";
                                    VisitorsPlaceHolder.Text += "Email " + BIU[i].Email + " Web Site " + BIU[i].Website + "<br />";
                                    VisitorsPlaceHolder.Text += "Phone: " + BIU[i].Phone + " Fax: " + BIU[i].Fax + "<br /><br />";
                                    VisitorsPlaceHolder.Text += "<strong>Interested Products:</strong><br/>";
                                    check   = true;
                                    newLine = true;
                                }

                                strTemp                   = CP[k].ProductName;
                                arrPhraseWords            = strTemp.Split('(');
                                VisitorsPlaceHolder.Text += " * " + arrPhraseWords[0] + "<br />";
                            }
                        }
                    }
                    check   = false;
                    counter = 0;
                    if (newLine == true)
                    {
                        VisitorsPlaceHolder.Text += "<br />";
                        newLine = false;
                    }
                }
            }
            else
            {
                VisitorsPlaceHolder.Text += "<b>Equipment was not chosen for the company</b>";
            }
        }
        else
        {
            VisitorsPlaceHolder.Text += "<b>The company was not chosen</b>";
        }
    }
    protected void btnSaveData_Click(object sender, EventArgs e)
    {
        List <CompanyProducts> CPC = CompanyProducts.GetProductCategories(Convert.ToInt32(Request.Form["ctl00$ContentPlaceHolder1$ddExporter"]));
        int i;
        int j = 0;


        SqlConnection conn    = ConnectionHelper.GetSQLConnection();
        SqlCommand    command = new SqlCommand("UPDATE Exporters SET Location= @Location WHERE ExporterID = @ExpID", conn);

        command.Parameters.AddWithValue("@Location", txtLocation.Text);
        command.Parameters.AddWithValue("@ExpID", Convert.ToInt32(Request.Form["ctl00$ContentPlaceHolder1$ddExporter"]));
        command.Connection.Open();
        SqlDataReader rs = command.ExecuteReader();

        rs.Read();
        rs.Close();

        if (CPC.Count > 0)
        {
            for (i = 0; i < cblProducts.Items.Count; i++)
            {
                if ((Convert.ToInt32(cblProducts.Items[i].Value) == CPC[j].ChildEquipID) && (cblProducts.Items[i].Selected == false))
                {
                    CompanyProducts.Delete(CPC[j].ChildEquipID);
                    if (j < CPC.Count - 1)
                    {
                        j++;
                    }
                }
                else if ((Convert.ToInt32(cblProducts.Items[i].Value) == CPC[j].ChildEquipID) && (cblProducts.Items[i].Selected == true))
                {
                    if (j < CPC.Count - 1)
                    {
                        j++;
                    }
                }
            }

            j = 0;
            for (i = 0; i < cblProducts.Items.Count; i++)
            {
                if ((cblProducts.Items[i].Selected == true) && (Convert.ToInt32(cblProducts.Items[i].Value) != CPC[j].ChildEquipID))
                {
                    CompanyProducts.Insert(Convert.ToInt32(Request.Form["ctl00$ContentPlaceHolder1$ddExporter"]), Convert.ToInt32(cblProducts.Items[i].Value));
                    //ProductsPlaceHolder.Text += cblProducts.Items[i].Value + "<br />";
                }
                else if ((cblProducts.Items[i].Selected == true) && (Convert.ToInt32(cblProducts.Items[i].Value) == CPC[j].ChildEquipID))
                {
                    if (j < CPC.Count - 1)
                    {
                        j++;
                    }
                }
            }
        }
        else
        {
            for (i = 0; i < cblProducts.Items.Count; i++)
            {
                if (cblProducts.Items[i].Selected == true)
                {
                    CompanyProducts.Insert(Convert.ToInt32(Request.Form["ctl00$ContentPlaceHolder1$ddExporter"]), Convert.ToInt32(cblProducts.Items[i].Value));
                }
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        int            i;
        BIRegistration bir = new BIRegistration(Convert.ToInt32(Request.QueryString["id"]));

        string[] arrProdInterest = new string[11];
        string   strTemp         = bir.ProductInterest;

        arrProdInterest = strTemp.Split(';');
        int counter = 0;

        for (i = 0; i < arrProdInterest.Length; i++)
        {
            if (arrProdInterest[i] != null)
            {
                counter++;
            }
        }

        int tmpExpID    = 0;
        int tmpParentID = 0;

        if ((Request.QueryString["id"] != null) && (Request.QueryString["view"] == "0"))
        {
            List <CompanyProducts> CP = CompanyProducts.GetAllDataForReport(0);
            if (Request.QueryString["translator"] == "0")
            {
                ProductsPlaceHolder.Text += "<center><b style='font-size: 16pt'>Visitor's name:  <u>" + bir.FirstName + " " + bir.LastName + "</u></b></center><br />";
            }
            else if (Request.QueryString["translator"] == "1")
            {
                ProductsPlaceHolder.Text += "<center><b style='font-size: 16pt'>Visitor's name:  <u>" + Translator.DirectTranslation(bir.FirstName) + " " + Translator.DirectTranslation(bir.LastName) + "</u></b></center><br />";
            }

            for (i = 0; i < CP.Count; i++)
            {
                if (CP[i].ExpID != tmpExpID)
                {
                    if (SearchCompany(arrProdInterest, counter, CP, CP[i].ExpID) == true)
                    {
                        ProductsPlaceHolder.Text += "<br /><br />";
                        ProductsPlaceHolder.Text += "<u><b>" + CP[i].CompanyName + "</b></u><br />";
                        ProductsPlaceHolder.Text += "<b>Products description:</b> " + CP[i].ProductDescription + "<br />";
                        ProductsPlaceHolder.Text += "<b>Contact:</b> " + CP[i].ContactPersonName + "<br/><b>Phone:</b> " + CP[i].Phone + ", ";
                        if (CP[i].Fax != "")
                        {
                            ProductsPlaceHolder.Text += " <b>Fax:</b> " + CP[i].Fax + ",";
                        }
                        if (CP[i].CellPhone != "")
                        {
                            ProductsPlaceHolder.Text += " <b>Cell:</b> " + CP[i].CellPhone;
                        }
                        ProductsPlaceHolder.Text += "<br /><b>Email:</b> " + CP[i].Email;
                        ProductsPlaceHolder.Text += "<br /><b>Location on Big Iron:</b> " + CP[i].Location + "<br /><br /> <b>Products produced by the company:</b> <br />";
                    }
                    tmpExpID    = CP[i].ExpID;
                    tmpParentID = 0;
                }
                if (SearchVisitorProduct(arrProdInterest, counter, Convert.ToString(CP[i].ParentID)) == true)
                {
                    if (tmpParentID != CP[i].ParentID)
                    {
                        ProductsPlaceHolder.Text += CP[i].ProductName + "<br />";
                        tmpParentID = CP[i].ParentID;
                    }
                    ProductsPlaceHolder.Text += "&nbsp;&nbsp; * <i>" + CP[i].CategoryProductName + "</i><br />";
                }
            }
        }
        else if ((Request.QueryString["id"] != null) && (Request.QueryString["view"] == "1"))
        {
            List <CompanyProducts> CP = CompanyProducts.GetAllDataForReport(1);
            int numOutputs            = 1;

            if (Request.QueryString["translator"] == "0")
            {
                ProductsPlaceHolder.Text += "<center><b style='font-size: 16pt'>Visitor's name:  <u>" + bir.FirstName + " " + bir.LastName + "</u></b></center><br />";
            }
            else if (Request.QueryString["translator"] == "1")
            {
                ProductsPlaceHolder.Text += "<center><b style='font-size: 16pt'>Visitor's name:  <u>" + Translator.DirectTranslation(bir.FirstName) + " " + Translator.DirectTranslation(bir.LastName) + "</u></b></center><br />";
            }

            for (i = 0; i < CP.Count; i++)
            {
                if (SearchVisitorProduct(arrProdInterest, counter, Convert.ToString(CP[i].ParentID)) == true)
                {
                    if (tmpExpID != CP[i].ExpID)
                    {
                        tmpParentID = 0;
                        tmpExpID    = CP[i].ExpID;
                        numOutputs  = 1;
                    }

                    if (tmpParentID != CP[i].ParentID)
                    {
                        ProductsPlaceHolder.Text += "<u><b>" + CP[i].ProductName + "</b></u><br />";
                        tmpParentID = CP[i].ParentID;
                        numOutputs  = 1;
                    }
                    ProductsPlaceHolder.Text += "&nbsp;&nbsp; * <i>" + CP[i].CategoryProductName + "</i>" + GetNumberOfSubcotegories(CP, CP[i].ParentID, CP[i].ExpID) + " " + CP[i].ParentID + " " + CP[i].ExpID + "<br />";
                    if (GetNumberOfSubcotegories(CP, CP[i].ParentID, CP[i].ExpID) == numOutputs)
                    {
                        ProductsPlaceHolder.Text += "<br />";
                        ProductsPlaceHolder.Text += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>" + CP[i].CompanyName + "</b><br />";
                        ProductsPlaceHolder.Text += "<table><tr><td>&nbsp;&nbsp;&nbsp;</td><td><b>Products description:</b> " + CP[i].ProductDescription + "<br /></td></tr></table>";
                        ProductsPlaceHolder.Text += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>Contact:</b> " + CP[i].ContactPersonName + "<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>Phone:</b> " + CP[i].Phone + ", ";
                        if (CP[i].Fax != "")
                        {
                            ProductsPlaceHolder.Text += " <b>Fax:</b> " + CP[i].Fax + ",";
                        }
                        if (CP[i].CellPhone != "")
                        {
                            ProductsPlaceHolder.Text += " <b>Cell:</b> " + CP[i].CellPhone;
                        }
                        ProductsPlaceHolder.Text += "<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>Email:</b> " + CP[i].Email;
                        ProductsPlaceHolder.Text += "<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>Location on Big Iron:</b> " + CP[i].Location + "<br /><br /> ";

                        numOutputs  = 0;
                        tmpParentID = 0;
                    }
                    numOutputs++;
                }
            }
        }
    }