protected void grdMaterials_RowUpdating(object sender, GridViewUpdateEventArgs e) { int projectId = Int32.Parse(hdfProjectId.Value); ProjectGateway projectGateway = new ProjectGateway(); projectGateway.LoadByProjectId(projectId); if (projectGateway.GetCountryID(projectId) == 1) //Canada { Page.Validate("materialsCadEdit"); } else { Page.Validate("materialsUsEdit"); } if (Page.IsValid) { Page.Validate("materialsEdit"); if (Page.IsValid) { int costingSheetId = (int)e.Keys["CostingSheetID"]; int materialId = (int)e.Keys["MaterialID"]; int refId = (int)e.Keys["RefID"]; int companyId = Int32.Parse(hdfCompanyId.Value); string unitOfMeasurement = ((DropDownList)grdMaterials.Rows[e.RowIndex].Cells[0].FindControl("ddlUnitOfMeasurementMaterialsEdit")).SelectedValue; double quantity = double.Parse(((TextBox)grdMaterials.Rows[e.RowIndex].Cells[0].FindControl("tbxQuantityEdit")).Text.Trim()); decimal costCad = 0; decimal totalCostCad = 0; decimal costUsd = 0; decimal totalCostUsd = 0; if (projectGateway.GetCountryID(projectId) == 1) //Canada { costCad = Decimal.Parse(((TextBox)grdMaterials.Rows[e.RowIndex].Cells[0].FindControl("tbxCostCADEdit")).Text.Trim()); totalCostCad = (costCad * decimal.Parse(quantity.ToString())); totalCostCad = Decimal.Round(totalCostCad, 2); } else { costUsd = Decimal.Parse(((TextBox)grdMaterials.Rows[e.RowIndex].Cells[0].FindControl("tbxCostUSDEdit")).Text.Trim()); totalCostUsd = (costUsd * decimal.Parse(quantity.ToString())); totalCostUsd = Decimal.Round(totalCostUsd, 2); } LFSLive.DA.Resources.Materials.MaterialsGateway m = new LiquiForce.LFSLive.DA.Resources.Materials.MaterialsGateway(); m.LoadByMaterialId(materialId, companyId); string process = m.GetType(materialId); string description = m.GetDescription(materialId); DateTime startDate = ((RadDatePicker)grdMaterials.Rows[e.RowIndex].Cells[0].FindControl("tkrdpStartDateEdit")).SelectedDate.Value; DateTime endDate = ((RadDatePicker)grdMaterials.Rows[e.RowIndex].Cells[0].FindControl("tkrdpEndDateEdit")).SelectedDate.Value; // Update data ProjectCostingSheetInformationMaterialsInformation model = new ProjectCostingSheetInformationMaterialsInformation(projectCostingSheetInformationTDS); model.Update(costingSheetId, materialId, refId, unitOfMeasurement, quantity, costCad, totalCostCad, costUsd, totalCostUsd, false, companyId, process, description, startDate, endDate); // Store tables Session.Remove("materialsInformationDummy"); materialsInformation = (ProjectCostingSheetInformationTDS.MaterialsInformationDataTable)model.Table; Session["materialsInformation"] = materialsInformation; Session["projectCostingSheetInformationTDS"] = projectCostingSheetInformationTDS; StepMaterialInformationProcessGrid(); } else { e.Cancel = true; } } else { e.Cancel = true; } }
protected void grdMaterials_RowCommand(object sender, GridViewCommandEventArgs e) { switch (e.CommandName) { case "Add": // Materials Gridview, if the gridview is edition mode if (grdMaterials.EditIndex >= 0) { grdMaterials.UpdateRow(grdMaterials.EditIndex, true); } // Validate general data int projectId = Int32.Parse(hdfProjectId.Value); ProjectGateway projectGateway = new ProjectGateway(); projectGateway.LoadByProjectId(projectId); if (projectGateway.GetCountryID(projectId) == 1) //Canada { Page.Validate("materialsCadNew"); } else { Page.Validate("materialsUsdNew"); } if (Page.IsValid) { Page.Validate("materialsNew"); if (Page.IsValid) { int companyId = Int32.Parse(hdfCompanyId.Value); string description = ((DropDownList)grdMaterials.FooterRow.FindControl("ddlDescriptionNew")).SelectedItem.Text; int materialId = Int32.Parse(((DropDownList)grdMaterials.FooterRow.FindControl("ddlDescriptionNew")).SelectedValue); string unitOfMeasurement = ((DropDownList)grdMaterials.FooterRow.FindControl("ddlUnitOfMeasurementMaterialsNew")).SelectedValue; double quantity = double.Parse(((TextBox)grdMaterials.FooterRow.FindControl("tbxQuantityNew")).Text.Trim()); decimal costCad = 0; decimal totalCostCad = 0; decimal costUsd = 0; decimal totalCostUsd = 0; if (projectGateway.GetCountryID(projectId) == 1) //Canada { costCad = Decimal.Parse(((TextBox)grdMaterials.FooterRow.FindControl("tbxCostCADNew")).Text.Trim()); totalCostCad = (costCad * decimal.Parse(quantity.ToString())); totalCostCad = Decimal.Round(totalCostCad, 2); } else { costUsd = Decimal.Parse(((TextBox)grdMaterials.FooterRow.FindControl("tbxCostUSDNew")).Text.Trim()); totalCostUsd = (costUsd * decimal.Parse(quantity.ToString())); totalCostUsd = Decimal.Round(totalCostUsd, 2); } LFSLive.DA.Resources.Materials.MaterialsGateway m = new LiquiForce.LFSLive.DA.Resources.Materials.MaterialsGateway(); m.LoadByMaterialId(materialId, companyId); string process = m.GetType(materialId); DateTime startDate = ((RadDatePicker)grdMaterials.FooterRow.FindControl("tkrdpStartDateNew")).SelectedDate.Value; DateTime endDate = ((RadDatePicker)grdMaterials.FooterRow.FindControl("tkrdpEndDateNew")).SelectedDate.Value; ProjectCostingSheetInformationMaterialsInformation model = new ProjectCostingSheetInformationMaterialsInformation(projectCostingSheetInformationTDS); model.Insert(0, materialId, unitOfMeasurement, quantity, costCad, totalCostCad, costUsd, totalCostUsd, false, companyId, process, description, startDate, endDate); // Store tables Session.Remove("materialsInformationDummy"); materialsInformation = (ProjectCostingSheetInformationTDS.MaterialsInformationDataTable)model.Table; Session["materialsInformation"] = materialsInformation; Session["projectCostingSheetInformationTDS"] = projectCostingSheetInformationTDS; grdMaterials.DataBind(); StepMaterialInformationProcessGrid(); } } break; } }
protected void grdMaterials_RowDeleting(object sender, GridViewDeleteEventArgs e) { // Materials Gridview, if the gridview is edition mode if (grdMaterials.EditIndex >= 0) { grdMaterials.UpdateRow(grdMaterials.EditIndex, true); } // Delete material int costingSheetId = (int)e.Keys["CostingSheetID"]; int materialId = (int)e.Keys["MaterialID"]; int refId = (int)e.Keys["RefID"]; ProjectCostingSheetInformationMaterialsInformation model = new ProjectCostingSheetInformationMaterialsInformation(projectCostingSheetInformationTDS); // Delete cost model.Delete(costingSheetId, materialId, refId); // Store tables Session.Remove("materialsInformationDummy"); materialsInformation = (ProjectCostingSheetInformationTDS.MaterialsInformationDataTable)model.Table; Session["materialsInformation"] = materialsInformation; Session["projectCostingSheetInformationTDS"] = projectCostingSheetInformationTDS; StepMaterialInformationProcessGrid(); }
private void UpdateDatabase() { int companyId = Int32.Parse(hdfCompanyId.Value); int costingSheetId = Int32.Parse(hdfCostingSheetId.Value); DB.Open(); DB.BeginTransaction(); try { ProjectCostingSheetInformationBasicInformation projectCostingSheetInformationBasicInformation = new ProjectCostingSheetInformationBasicInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationBasicInformation.Save(companyId); // Save costs information ProjectCostingSheetInformationLabourHoursInformation projectCostingSheetInformationLabourHoursInformation = new ProjectCostingSheetInformationLabourHoursInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationLabourHoursInformation.Save(companyId, costingSheetId); ProjectCostingSheetInformationUnitsInformation projectCostingSheetInformationUnitsInformation = new ProjectCostingSheetInformationUnitsInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationUnitsInformation.Save(companyId, costingSheetId); ProjectCostingSheetInformationMaterialsInformation projectCostingSheetInformationMaterialsInformation = new ProjectCostingSheetInformationMaterialsInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationMaterialsInformation.Save(companyId, costingSheetId); ProjectCostingSheetInformationOtherCostsInformation projectCostingSheetInformationOtherCostsInformation = new ProjectCostingSheetInformationOtherCostsInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationOtherCostsInformation.Save(companyId, costingSheetId); ProjectCostingSheetInformationSubcontractorsInformation projectCostingSheetInformationSubcontractorsInformation = new ProjectCostingSheetInformationSubcontractorsInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationSubcontractorsInformation.Save(companyId, costingSheetId); ProjectCostingSheetInformationHotelsInformation projectCostingSheetInformationHotelsInformation = new ProjectCostingSheetInformationHotelsInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationHotelsInformation.Save(companyId, costingSheetId); ProjectCostingSheetInformationBondingsInformation projectCostingSheetInformationBondingsInformation = new ProjectCostingSheetInformationBondingsInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationBondingsInformation.Save(companyId, costingSheetId); ProjectCostingSheetInformationInsurancesInformation projectCostingSheetInformationInsurancesInformation = new ProjectCostingSheetInformationInsurancesInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationInsurancesInformation.Save(companyId, costingSheetId); ProjectCostingSheetInformationOtherCategoryInformation projectCostingSheetInformationOtherCategoryInformation = new ProjectCostingSheetInformationOtherCategoryInformation(projectCostingSheetInformationTDS); projectCostingSheetInformationOtherCategoryInformation.Save(companyId, costingSheetId); DB.CommitTransaction(); // Store datasets projectCostingSheetInformationTDS.AcceptChanges(); Session["lfsProjectTDS"] = projectTDS; Session["projectCostingSheetInformationTDS"] = projectCostingSheetInformationTDS; Session["labourHoursInformation"] = projectCostingSheetInformationTDS.LabourHoursInformation; Session["unitsInformation"] = projectCostingSheetInformationTDS.UnitsInformation; Session["subcontractorsInformation"] = projectCostingSheetInformationTDS.SubcontractorsInformation; Session["materialsInformation"] = projectCostingSheetInformationTDS.MaterialsInformation; Session["otherCostsInformation"] = projectCostingSheetInformationTDS.OtherCostsInformation; Session["hotelssInformation"] = projectCostingSheetInformationTDS.HotelsInformation; Session["bondingsInformation"] = projectCostingSheetInformationTDS.BondingsInformation; Session["insurancesInformation"] = projectCostingSheetInformationTDS.InsurancesInformation; Session["otherCategoryInformation"] = projectCostingSheetInformationTDS.OtherCategoryInformation; } catch (Exception ex) { DB.RollbackTransaction(); string url = string.Format("./../../error_page.aspx?error={0}", ex.Message.Replace('\n', ' ')); Response.Redirect(url); } }