protected void fillGrid() { ArrayList rfqProdList = (ArrayList)Session[SessionFactory.ALL_PURCHASE_ALL_RFQ_PROD_QNTY]; ArrayList rfqSpecList = (ArrayList)Session[SessionFactory.ALL_PURCHASE_ALL_RFQ_RFQ_SPEC]; float totalAmountFrom = 0, totalAmountTo = 0; String rfqId = Session[SessionFactory.ALL_PURCHASE_ALL_RFQ_SELECTED_RFQ_ID].ToString(); DataTable dt = new DataTable(); dt.Columns.Add("Hidden"); dt.Columns.Add("CategoryName"); dt.Columns.Add("featureDataTable"); dt.Columns.Add("FromQnty"); dt.Columns.Add("ToQnty"); dt.Columns.Add("FromPrice"); dt.Columns.Add("ToPrice"); dt.Columns.Add("msrmntUnit"); //dt.Columns.Add("HiddenCatId"); dt.Columns.Add("Quote"); // dt.Columns.Add("QuoteUnit"); dt.Columns.Add("Total"); //dt.Columns.Add("Audit"); Dictionary <String, RFQResponseQuotes> rfqRespQuoteDict = BackEndObjects.RFQResponseQuotes. getAllResponseQuotesforRFQandResponseEntityDB(rfqId, Session[SessionFactory.ALL_PURCHASE_ALL_RFQ_SHOW_QUOTE_SELECTED_RESP_ENTITY_ID].ToString()); String contactEntId = ""; for (int i = 0; i < rfqProdList.Count; i++) { BackEndObjects.RFQProdServQnty rfqProdObj = (BackEndObjects.RFQProdServQnty)rfqProdList[i]; dt.Rows.Add(); dt.Rows[i]["Hidden"] = rfqProdObj.getProdCatId(); dt.Rows[i]["CategoryName"] = BackEndObjects.ProductCategory. getProductCategorybyIdwoFeaturesDB(rfqProdObj.getProdCatId()).getProductCategoryName(); //dt.Rows[i]["featureDataTable"] = dtSpec; dt.Rows[i]["FromQnty"] = rfqProdObj.getFromQnty(); dt.Rows[i]["ToQnty"] = rfqProdObj.getToQnty(); dt.Rows[i]["FromPrice"] = rfqProdObj.getFromPrice(); dt.Rows[i]["ToPrice"] = rfqProdObj.getToPrice(); dt.Rows[i]["msrmntUnit"] = rfqProdObj.getMsrmntUnit(); RFQResponseQuotes rfqRespObj = new RFQResponseQuotes(); try { rfqRespObj = rfqRespQuoteDict[rfqProdObj.getProdCatId()]; contactEntId = rfqRespObj.getResponseEntityId(); String respQuote = rfqRespObj.getQuote().Equals("") ? "0" : rfqRespObj.getQuote();; dt.Rows[i]["Quote"] = respQuote; //dt.Rows[i]["QuoteUnit"] = rfqRespObj.getUnitName(); totalAmountFrom = totalAmountFrom + (rfqProdObj.getFromQnty() * float.Parse(respQuote)); totalAmountTo = totalAmountTo + (rfqProdObj.getToQnty() * float.Parse(respQuote)); dt.Rows[i]["Total"] = (rfqProdObj.getFromQnty() * float.Parse(respQuote)) + " to " + (rfqProdObj.getToQnty() * float.Parse(respQuote)); } catch (KeyNotFoundException e) { //If no response given to this RFQ by this entity so far dt.Rows[i]["Quote"] = "0"; dt.Rows[i]["Total"] = "0"; } } Label_RFQ_Name.Text = rfqId; //Label_Vendor.Text = Dictionary <String, Object> contactDict = ActionLibrary.customerDetails.getContactDetails(contactEntId, Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING].ToString()); if (contactDict.ContainsKey(ActionLibrary.customerDetails.RETURN_OBJECT_TYPE_CONTACT_DETAILS)) { Label_Vendor.Text = ((BackEndObjects.Contacts)contactDict[ActionLibrary.customerDetails.RETURN_OBJECT_TYPE_CONTACT_DETAILS]).getContactName(); } else { Label_Vendor.Text = ((BackEndObjects.MainBusinessEntity)contactDict[ActionLibrary.customerDetails.RETURN_OBJECT_TYPE_MAIN_BUSINESS_ENTITY]).getEntityName(); } GridView1.DataSource = dt; GridView1.DataBind(); GridView1.Columns[0].Visible = false; foreach (GridViewRow gVR in GridView1.Rows) { DataTable dtSpec = new DataTable(); dtSpec.Columns.Add("Hidden"); dtSpec.Columns.Add("FeatName"); dtSpec.Columns.Add("SpecText"); dtSpec.Columns.Add("FromSpec"); dtSpec.Columns.Add("ToSpec"); int rowCount = 0; for (int j = 0; j < rfqSpecList.Count; j++) { BackEndObjects.RFQProductServiceDetails rfqSpecObj = (BackEndObjects.RFQProductServiceDetails)rfqSpecList[j]; if (rfqSpecObj.getPrdCatId().Equals(((Label)gVR.Cells[1].FindControl("Label_Hidden")).Text)) { dtSpec.Rows.Add(); String featName = BackEndObjects.Features.getFeaturebyIdwoSpecDB(rfqSpecObj.getFeatId()).getFeatureName(); dtSpec.Rows[rowCount]["Hidden"] = rfqSpecObj.getFeatId(); dtSpec.Rows[rowCount]["FeatName"] = (featName != null ? featName.Trim() : ""); dtSpec.Rows[rowCount]["SpecText"] = rfqSpecObj.getSpecText(); if (!rfqSpecObj.getFromSpecId().Equals("")) { dtSpec.Rows[rowCount]["FromSpec"] = BackEndObjects.Specifications. getSpecificationDetailbyIdDB(rfqSpecObj.getFromSpecId()).getSpecName(); } if (!rfqSpecObj.getToSpecId().Equals("")) { dtSpec.Rows[rowCount]["ToSpec"] = BackEndObjects.Specifications. getSpecificationDetailbyIdDB(rfqSpecObj.getToSpecId()).getSpecName(); } rowCount++; } } ((GridView)gVR.Cells[2].FindControl("GridView1_Inner")).DataSource = dtSpec; ((GridView)gVR.Cells[2].FindControl("GridView1_Inner")).DataBind(); ((GridView)gVR.Cells[2].FindControl("GridView1_Inner")).Visible = true; ((GridView)gVR.Cells[2].FindControl("GridView1_Inner")).Columns[1].Visible = false; } GridView1.Visible = true; Session[SessionFactory.ALL_PURCHASE_ALL_RFQ_RESP_QUOTE_GRID_DATA] = dt; Label_Total.Text = totalAmountFrom + " to " + totalAmountTo; }
protected void loadProductGrid() { String context = Request.QueryString.GetValues("context")[0]; String[] rfqId = Request.QueryString.GetValues("rfqId"); String respEntId = ""; ArrayList rfqSpecList = null; if (context.Equals("client")) { respEntId = Request.QueryString.GetValues("respCompId")[0]; rfqSpecList = (ArrayList)Session[SessionFactory.ALL_PURCHASE_ALL_RFQ_RFQ_SPEC]; } else { respEntId = Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING].ToString(); rfqSpecList = (ArrayList)Session[SessionFactory.ALL_SALE_ALL_POTENTIAL_POTN_SPEC]; } DataTable dt = new DataTable(); dt.Columns.Add("Hidden_Cat_Id"); dt.Columns.Add("Serial"); dt.Columns.Add("Qnty"); dt.Columns.Add("Prod_Name"); dt.Columns.Add("Cat_Name"); dt.Columns.Add("Unit_Price"); dt.Columns.Add("Cat_Total"); float totalAmnt = 0; ArrayList rfqQntyList = BackEndObjects.RFQProdServQnty.getRFQProductServiceQuantityforRFIdDB(rfqId[0]); Dictionary <String, RFQResponseQuotes> respQuoteDict = BackEndObjects.RFQResponseQuotes.getAllResponseQuotesforRFQandResponseEntityDB(rfqId[0], respEntId); int k = 0; for (int i = 0; i < rfqQntyList.Count; i++) { BackEndObjects.RFQProdServQnty rfqQntyObj = (RFQProdServQnty)rfqQntyList[i]; //Preference to toQuantity float qnty = rfqQntyObj.getToQnty() > 0 ? rfqQntyObj.getToQnty() : rfqQntyObj.getFromQnty(); String catId = rfqQntyObj.getProdCatId(); RFQResponseQuotes respQuoteObj = respQuoteDict != null && respQuoteDict.ContainsKey(catId)?respQuoteDict[catId]:null; if (respQuoteObj != null) { String quote = respQuoteObj.getQuote(); String prodName = respQuoteObj.getProductName(); dt.Rows.Add(); dt.Rows[k]["Hidden_Cat_Id"] = catId; dt.Rows[k]["Serial"] = k + 1; dt.Rows[k]["Qnty"] = qnty.ToString(); dt.Rows[k]["Prod_Name"] = prodName; dt.Rows[k]["Cat_Name"] = BackEndObjects.ProductCategory.getProductCategorybyIdwoFeaturesDB(catId).getProductCategoryName(); dt.Rows[k]["Unit_Price"] = quote; dt.Rows[k]["Cat_Total"] = float.Parse(quote) * qnty; totalAmnt += float.Parse(quote) * qnty; k++; } } if (dt != null && dt.Rows.Count > 0) { GridView1.Visible = true; GridView1.DataSource = dt; GridView1.DataBind(); GridView1.Columns[0].Visible = false; foreach (GridViewRow gVR in GridView1.Rows) { DataTable dtSpec = new DataTable(); dtSpec.Columns.Add("Hidden"); dtSpec.Columns.Add("FeatName"); dtSpec.Columns.Add("SpecText"); dtSpec.Columns.Add("FromSpec"); dtSpec.Columns.Add("ToSpec"); int rowCount = 0; for (int j = 0; j < rfqSpecList.Count; j++) { BackEndObjects.RFQProductServiceDetails rfqSpecObj = (BackEndObjects.RFQProductServiceDetails)rfqSpecList[j]; if (rfqSpecObj.getPrdCatId().Equals(((Label)gVR.Cells[1].FindControl("Label_Hidden")).Text)) { dtSpec.Rows.Add(); String featName = BackEndObjects.Features.getFeaturebyIdwoSpecDB(rfqSpecObj.getFeatId()).getFeatureName(); dtSpec.Rows[rowCount]["Hidden"] = rfqSpecObj.getFeatId(); dtSpec.Rows[rowCount]["FeatName"] = (featName != null ? featName.Trim() : ""); dtSpec.Rows[rowCount]["SpecText"] = rfqSpecObj.getSpecText(); if (!rfqSpecObj.getFromSpecId().Equals("")) { dtSpec.Rows[rowCount]["FromSpec"] = BackEndObjects.Specifications.getSpecificationDetailbyIdDB(rfqSpecObj.getFromSpecId()).getSpecName(); } if (!rfqSpecObj.getToSpecId().Equals("")) { dtSpec.Rows[rowCount]["ToSpec"] = BackEndObjects.Specifications.getSpecificationDetailbyIdDB(rfqSpecObj.getToSpecId()).getSpecName(); } rowCount++; } } ((GridView)gVR.Cells[2].FindControl("GridView1_Inner")).DataSource = dtSpec; ((GridView)gVR.Cells[2].FindControl("GridView1_Inner")).DataBind(); ((GridView)gVR.Cells[2].FindControl("GridView1_Inner")).Visible = true; ((GridView)gVR.Cells[2].FindControl("GridView1_Inner")).Columns[0].Visible = false; } Label_Sub_Total_Amount_Value.Visible = true; Label_Sub_Total_Amount_Value.Text = totalAmnt.ToString(); Label_Total_Amount_Value.Visible = true; Label_Total_Amount_Value.Text = updateTotalPOAmount(); } else { //Warning --- no prod specification found GridView1.Visible = false; Label_GridView_Status.Visible = true; if (context.Equals("client")) { Label_GridView_Status.Text = "* No product details added in the RFQ. Only product details added in RFQ will populate in Purchase Order"; } else { Label_GridView_Status.Text = "* No product details added in the Potential. Only product details added in Potential will populate in Sales Order"; } Label_GridView_Status.ForeColor = System.Drawing.Color.Red; } Session[SessionFactory.ALL_PURCHASE_FINALIZE_DEAL_PO_PROD_GRID] = dt; }