/// <summary> /// DeleteDirect /// </summary> /// <param name="assetId">assetId</param> /// <param name="companyId">companyId</param> /// <returns></returns> public bool DeleteDirect(int assetId, int companyId) { // Verify in use if (!InUse(assetId, companyId)) { // Delete laterals // ... Define initial models LfsAssetSewerLateral lfsAssetSewerLateral = new LfsAssetSewerLateral(null); // ... Load laterals AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.LoadBySectionId(assetId, companyId); // ... Delete laterals foreach (AssetsTDS.AM_ASSET_SEWER_LATERALRow rowLateral in (AssetsTDS.AM_ASSET_SEWER_LATERALDataTable)assetSewerLateralGateway.Table) { lfsAssetSewerLateral.DeleteDirect(rowLateral.AssetID, companyId); } // Get MHs for deleted AssetSewerSectionGateway assetSewerSectionGateway = new AssetSewerSectionGateway(); assetSewerSectionGateway.LoadByAssetId(assetId, companyId); int? usmh_assetId = assetSewerSectionGateway.GetUSMH(assetId); int? dsmh_assetId = assetSewerSectionGateway.GetDSMH(assetId); // Delete section LfsAssetSewerSectionGateway lfsAssetSewerSectionGateway = new LfsAssetSewerSectionGateway(null); lfsAssetSewerSectionGateway.Delete(assetId, companyId); LfsAssetSewer lfsAssetSewer = new LfsAssetSewer(null); lfsAssetSewer.DeleteDirect(assetId, companyId); LfsAsset lfsAsset = new LfsAsset(null); lfsAsset.DeleteDirect(assetId, companyId); // delete section in AM tables AssetSewerSection assetSewerSection = new AssetSewerSection(null); assetSewerSection.DeleteDirect(assetId, companyId); // Delete USMH (if not in use) if (usmh_assetId.HasValue) { LfsAssetSewerMH lfsAssetSewerUsmh = new LfsAssetSewerMH(null); lfsAssetSewerUsmh.DeleteDirect((int)usmh_assetId, companyId); } // Delete DSMH (if not in use) if (dsmh_assetId.HasValue) { LfsAssetSewerMH lfsAssetSewerDsmh = new LfsAssetSewerMH(null); lfsAssetSewerDsmh.DeleteDirect((int)dsmh_assetId, companyId); } return true; } else { return false; } }
/// <summary> /// DeleteDirect /// </summary> /// <param name="assetId">assetId</param> /// <param name="companyId">companyId</param> public bool DeleteDirect(int assetId, int companyId) { // Delete laterals // ... Define initial models AssetSewerLateral assetSewerLateral = new AssetSewerLateral(null); // ... Load laterals AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.LoadBySectionId(assetId, companyId); // ... Delete laterals foreach (AssetsTDS.AM_ASSET_SEWER_LATERALRow rowLateral in (AssetsTDS.AM_ASSET_SEWER_LATERALDataTable)assetSewerLateralGateway.Table) { assetSewerLateral.DeleteDirect(rowLateral.AssetID, companyId); } // Delete section AssetSewerSectionGateway assetSewerSectionGateway = new AssetSewerSectionGateway(null); assetSewerSectionGateway.Delete(assetId, companyId); AssetSewer assetSewer = new AssetSewer(null); assetSewer.DeleteDirect(assetId, companyId); Asset asset = new Asset(null); asset.DeleteDirect(assetId, companyId); return true; }
/// <summary> /// DeleteDirect /// </summary> /// <param name="assetId">assetId</param> /// <param name="companyId">companyId</param> public bool DeleteDirect(int assetId, int companyId) { // Get initial data AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.LoadByAssetId(assetId, companyId); int section_ = assetSewerLateralGateway.GetSection(assetId); string state = assetSewerLateralGateway.GetState(assetId); // Delete lateral assetSewerLateralGateway.Delete(assetId, companyId); AssetSewer assetSewer = new AssetSewer(null); assetSewer.DeleteDirect(assetId, companyId); Asset asset = new Asset(null); asset.DeleteDirect(assetId, companyId); // Update Section // ... Load section AssetSewerSectionGateway assetSewerSectionGateway = new AssetSewerSectionGateway(); assetSewerSectionGateway.LoadByAssetId(section_, companyId); // ... Get old values of section string sectionIdS = assetSewerSectionGateway.GetSectionId(section_); string streetS = assetSewerSectionGateway.GetStreet(section_); int? usmhIdS = assetSewerSectionGateway.GetUSMH(section_); int? dsmhIdS = assetSewerSectionGateway.GetDSMH(section_); string mapSizeS = assetSewerSectionGateway.GetMapSize(section_); string size_S = assetSewerSectionGateway.GetSize_(section_); string mapLengthS = assetSewerSectionGateway.GetMapSize(section_); string lengthS = assetSewerSectionGateway.GetLength(section_); int? lateralsS = assetSewerSectionGateway.GetLaterals(section_); int? liveLateralsS = assetSewerSectionGateway.GetLiveLaterals(section_); string flowDirectionS = assetSewerSectionGateway.GetFlowDirection(section_); string usmhDepthS = assetSewerSectionGateway.GetUSMHDepth(section_); string dsmhDepthS = assetSewerSectionGateway.GetDSMHDepth(section_); bool deletedS = assetSewerSectionGateway.GetDeleted(section_); string flowOrderIdS = assetSewerSectionGateway.GetFlowOrderID(section_); // ... Calculate new values of section int? newLaterals = lateralsS - 1; int? newLiveLaterals = liveLateralsS; if ((newLiveLaterals.HasValue) && (state == "Live")) { newLiveLaterals = newLiveLaterals - 1; } // ... Update section AssetSewerSection assetSewerSection = new AssetSewerSection(assetSewerSectionGateway.Data); assetSewerSection.UpdateDirect(section_, sectionIdS, streetS, usmhIdS, dsmhIdS, mapSizeS, size_S, mapLengthS, lengthS, lateralsS, liveLateralsS, flowDirectionS, usmhDepthS, dsmhDepthS, deletedS, companyId, flowOrderIdS, section_, sectionIdS, streetS, usmhIdS, dsmhIdS, mapSizeS, size_S, mapLengthS, lengthS, newLaterals, newLiveLaterals, flowDirectionS, usmhDepthS, dsmhDepthS, deletedS, companyId, flowOrderIdS); return true; }
/// <summary> /// UpdateFieldsForSections /// </summary> /// <param name="companyId">companyId</param> /// <param name="currentProjectId">currentProjectId</param> private void UpdateFieldsForSections(int companyId, int currentProjectId) { AssetSewerSectionGateway assetSewerFindSectionGateway = new AssetSewerSectionGateway(); AssetSewerMHGateway assetSewerFindMHGateway = new AssetSewerMHGateway(); WorkGateway workGateway = new WorkGateway(); foreach (ProjectSectionsNavigatorTDS.LFS_PROJECT_SECTIONS_NAVIGATORRow row in (ProjectSectionsNavigatorTDS.LFS_PROJECT_SECTIONS_NAVIGATORDataTable)Table) { //General data for asset assetSewerFindSectionGateway.LoadByAssetId(row.AssetID, companyId); //COMPANY_ID // ... For usmh row.USMHDescription = ""; if (!row.IsUSMHNull()) { assetSewerFindMHGateway.LoadByAssetId(row.USMH, companyId); row.USMHDescription = assetSewerFindMHGateway.GetMHID(row.USMH); } // ... For dsmh row.DSMHDescription = ""; if (!row.IsDSMHNull()) { assetSewerFindMHGateway.LoadByAssetId(row.DSMH, companyId); row.DSMHDescription = assetSewerFindMHGateway.GetMHID(row.DSMH); } // ... For Works row.RehabAssessment = workGateway.ExistsProjectIdAssetIdWorkTypeCompanyId(row.AssetID, currentProjectId, "Rehab Assessment", companyId); row.FullLengthLining = workGateway.ExistsProjectIdAssetIdWorkTypeCompanyId(row.AssetID, currentProjectId, "Full Length Lining", companyId); row.JunctionLining = workGateway.ExistsProjectIdAssetIdWorkTypeCompanyId(row.AssetID, currentProjectId, "Junction Lining Section", companyId); row.WorksDescription = ""; if (row.RehabAssessment) row.WorksDescription = row.WorksDescription + "Rehab Assessment"; if (row.FullLengthLining) { if (row.WorksDescription.Trim().Length > 0) { row.WorksDescription = row.WorksDescription + ", Full Length Lining"; } else { row.WorksDescription = row.WorksDescription + "Full Length Lining"; } } if (row.JunctionLining) { if (row.WorksDescription.Trim().Length > 0) { row.WorksDescription = row.WorksDescription + ", Junction Lining"; } else { row.WorksDescription = row.WorksDescription + "Junction Lining"; } } // ... For Laterals AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.LoadBySectionId(row.AssetID, companyId); AssetSewerLateral assetSewerLateral = new AssetSewerLateral(assetSewerLateralGateway.Data); row.LateralsDescription = assetSewerLateral.GetAllLaterals(row.AssetID, companyId); } }
// //////////////////////////////////////////////////////////////////////// // EVENTS // protected void Page_Load(object sender, EventArgs e) { // Register client scripts this.RegisterClientScripts(); if (!IsPostBack) { // Security check if (!Convert.ToBoolean(Session["sgLFS_PROJECTS_VIEW"])) { Response.Redirect("./../../error_page.aspx?error=" + "You are not authorized to view this page. Contact your system administrator."); } // Validate query string if (Request.QueryString["source_page"] == null) { Response.Redirect("./../../error_page.aspx?error=" + "Invalid query string in projects2.aspx"); } // Tag page hdfCompanyId.Value = Session["companyID"].ToString(); hdfProjectId.Value = Request.QueryString["project_id"]; hdfAssetID.Value = Request.QueryString["asset_id"]; Session.Remove("projectSectionsNavigatorLateralsNewDummy"); Session.Remove("projectSectionsNavigatorLaterals"); // Initialize data projectTDS = (ProjectTDS)Session["lfsProjectTDS"]; assetsTDS = new AssetsTDS(); lfsAssetsTDS = new LfsAssetsTDS(); workTDS = new WorkTDS(); projectSectionsNavigatorTDS = new ProjectSectionsNavigatorTDS(); // Load data int companyId = Int32.Parse(hdfCompanyId.Value); int assetId = Int32.Parse(hdfAssetID.Value); int projectId = Int32.Parse(hdfProjectId.Value); AssetSewerSectionGateway assetSewerSectionGateway = new AssetSewerSectionGateway(); assetSewerSectionGateway.LoadByAssetId(assetId, companyId); if (assetSewerSectionGateway.Table.Rows.Count > 0) { tbxSectionId.Text = assetSewerSectionGateway.GetFlowOrderID(assetId); tbxStreet.Text = assetSewerSectionGateway.GetStreet(assetId); // ... For usmh if (assetSewerSectionGateway.GetUSMH(assetId).HasValue) { AssetSewerMHGateway assetSewerFindMHGateway = new AssetSewerMHGateway(); int USMH = (int)assetSewerSectionGateway.GetUSMH(assetId); assetSewerFindMHGateway.LoadByAssetId(USMH, companyId); tbxUSMH.Text = assetSewerFindMHGateway.GetMHID(USMH); } // ... For usmh if (assetSewerSectionGateway.GetDSMH(assetId).HasValue) { AssetSewerMHGateway assetSewerFindMHGateway = new AssetSewerMHGateway(); int DSMH = (int)assetSewerSectionGateway.GetDSMH(assetId); assetSewerFindMHGateway.LoadByAssetId(DSMH, companyId); tbxDSMH.Text = assetSewerFindMHGateway.GetMHID(DSMH); } // ... For Works WorkGateway workGateway = new WorkGateway(); if (workGateway.ExistsProjectIdAssetIdWorkTypeCompanyId(assetId, projectId, "Rehab Assessment", companyId)) ckbxRehabAssessment.Checked = true; if (workGateway.ExistsProjectIdAssetIdWorkTypeCompanyId(assetId, projectId, "Full Length Lining", companyId)) ckbxFullLengthLining.Checked = true; if (workGateway.ExistsProjectIdAssetIdWorkTypeCompanyId(assetId, projectId, "Junction Lining Section", companyId)) ckbxJunctionLining.Checked = true; // ... For Laterals if (assetSewerSectionGateway.GetLaterals(int.Parse(hdfAssetID.Value)).HasValue) { tbxTotalLaterals.Text = ((int)assetSewerSectionGateway.GetLaterals(assetId)).ToString(); } else { tbxTotalLaterals.Text = "0"; } ProjectSectionsNavigatorLateralsGateway projectSectionsNavigatorLateralsGateway = new ProjectSectionsNavigatorLateralsGateway(projectSectionsNavigatorTDS); projectSectionsNavigatorLateralsGateway.LoadBySection_ProjectId(assetId, projectId, companyId); AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(assetsTDS); assetSewerLateralGateway.LoadBySectionProjectId(assetId, projectId, companyId); // ... store datasets Session["projectSectionsNavigatorTDS"] = projectSectionsNavigatorTDS; projectSectionsNavigatorLaterals = projectSectionsNavigatorTDS.ProjectSectionNavigatorLaterals; Session["projectSectionsNavigatorLaterals"] = projectSectionsNavigatorLaterals; } } else { // Restore dataset projectTDS = (ProjectTDS)Session["lfsProjectTDS"]; projectSectionsNavigatorTDS = (ProjectSectionsNavigatorTDS)Session["lfsProjectSectionsNavigatorTDS"]; projectSectionsNavigatorLaterals = (ProjectSectionsNavigatorTDS.ProjectSectionNavigatorLateralsDataTable)Session["projectSectionsNavigatorLaterals"]; assetsTDS = (AssetsTDS)Session["assetsTDS"]; lfsAssetsTDS = (LfsAssetsTDS)Session["lfsAssetsTDS"]; workTDS = (WorkTDS)Session["workTDS"]; } }
/// <summary> /// Verify if new length <= distance from usmh's laterals /// </summary> /// <param name="newLength">newLength</param> /// <param name="assetId">assetId</param> /// <param name="companyId">companyId</param> /// <returns></returns> public bool VerifyNewLengthByAssetId(string newLength, int assetId, int companyId) { Distance newLengthDistance = new Distance(newLength); AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.LoadAllBySectionId(assetId, companyId); foreach(AssetsTDS.AM_ASSET_SEWER_LATERALRow lateralRow in (AssetsTDS.AM_ASSET_SEWER_LATERALDataTable) assetSewerLateralGateway.Table) { Distance distanceFromUsmh = new Distance(assetSewerLateralGateway.GetDistanceFromUSMH(lateralRow.AssetID)); Distance diference = newLengthDistance - distanceFromUsmh; if (diference.ToDoubleInEng3() < 0) { return false; } } return true; }
/// <summary> /// Update Lateral /// </summary> /// <param name="row">row</param> /// <param name="projectId">projectId</param> /// <param name="sectionAssetId">sectionAssetId</param> /// <param name="countryId">countryId</param> /// <param name="provinceId">provinceId</param> /// <param name="countyId">countyId</param> /// <param name="cityId">cityId</param> /// <param name="videoLength">videoLength</param> /// <param name="companyId">companyId</param> private void UpdateLateral(FullLengthLiningTDS.LateralDetailsRow row, int projectId, int sectionAssetId, Int64 countryId, Int64? provinceId, Int64? countyId, Int64? cityId, string videoLength, int companyId) { // not modified variables FullLengthLiningTDS fullLengthLining = (FullLengthLiningTDS)Data; FullLengthLiningLateralDetailsGateway fullLengthLiningLateralDetailsGateway = new FullLengthLiningLateralDetailsGateway(fullLengthLining); int lateral = row.Lateral; AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.LoadByAssetId(lateral, companyId); int section_ = assetSewerLateralGateway.GetSection(lateral); string address = assetSewerLateralGateway.GetAddress(lateral); string lateralId = assetSewerLateralGateway.GetLateralId(lateral); string latitudeAtSection = assetSewerLateralGateway.GetLatitudeAtSection(lateral); string longitudeAtSection = assetSewerLateralGateway.GetLongitudeAtSection(lateral); string latitudeAtPropertyLine = assetSewerLateralGateway.GetLatitudeAtPropertyLine(lateral); string longitudeAtPropertyLine = assetSewerLateralGateway.GetLongitudeAtPropertyLine(lateral); string mapSize = assetSewerLateralGateway.GetMapSize(lateral); // original values string originalState = fullLengthLiningLateralDetailsGateway.GetLiveOriginal(lateral); string originalSize = fullLengthLiningLateralDetailsGateway.GetSizeOriginal(lateral); string originalDistanceFromUsmh = fullLengthLiningLateralDetailsGateway.GetDistanceFromUSMHOriginal(lateral); string originalDistanceFromDsmh = fullLengthLiningLateralDetailsGateway.GetDistanceFromDSMHOriginal(lateral); string originalConnectionType = fullLengthLiningLateralDetailsGateway.GetConnectionTypeOriginal(lateral); string originalAddress = fullLengthLiningLateralDetailsGateway.GetMnOriginal(lateral); // new values string newState = fullLengthLiningLateralDetailsGateway.GetLive(lateral); string newSize = fullLengthLiningLateralDetailsGateway.GetSize(lateral); string newDistanceFromUsmh = fullLengthLiningLateralDetailsGateway.GetDistanceFromUSMH(lateral); string newDistanceFromDsmh = fullLengthLiningLateralDetailsGateway.GetDistanceFromDSMH(lateral); string newConnectionType = fullLengthLiningLateralDetailsGateway.GetConnectionType(lateral); string newAddress = fullLengthLiningLateralDetailsGateway.GetMn(lateral); // update asset laterals AssetSewerLateral assetSewerLateral = new AssetSewerLateral(null); assetSewerLateral.UpdateDirect(lateral, section_, originalAddress, lateralId, latitudeAtSection, longitudeAtSection, latitudeAtPropertyLine, longitudeAtPropertyLine, originalState, originalSize, originalDistanceFromUsmh, originalDistanceFromDsmh, mapSize, false, companyId, originalConnectionType, lateral, section_, newAddress, lateralId, latitudeAtSection, longitudeAtSection, latitudeAtPropertyLine, longitudeAtPropertyLine, newState, newSize, newDistanceFromUsmh, newDistanceFromDsmh, mapSize, false, companyId, newConnectionType); }
/// <summary> /// LateralUpdate /// </summary> /// <param name="currentProjectId">currentProjectId</param> /// <param name="assetId">assetId</param> /// <param name="distanceFromDsmh">distanceFromDsmh</param> /// <param name="distanceFromUsmh">distanceFromUsmh</param> /// <param name="mapSize">mapSize</param> /// <param name="companyId">companyId</param> /// <param name="clientLateralId">clientLateralId</param> /// <param name="address">address</param> /// <param name="connectionType">connectionType</param> private void LateralUpdate(int currentProjectId, int assetId, string distanceFromDsmh, string distanceFromUsmh, string mapSize, int companyId, string clientLateralId, string address, string connectionType) { AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.LoadByAssetId(assetId, companyId); // original values int originalSection_ = assetSewerLateralGateway.GetSection(assetId); string originalAddress = assetSewerLateralGateway.GetAddress(assetId); string originalLateralId = assetSewerLateralGateway.GetLateralId(assetId); string originalLatitudeAtSection = assetSewerLateralGateway.GetLatitudeAtSection(assetId); string originalLongitudeAtSection = assetSewerLateralGateway.GetLongitudeAtSection(assetId); string originalLatitudeAtPropertyLine = assetSewerLateralGateway.GetLatitudeAtPropertyLine(assetId); string originalLongitudeAtPropertyLine = assetSewerLateralGateway.GetLongitudeAtPropertyLine(assetId); string originalState = assetSewerLateralGateway.GetState(assetId); string originalSize_ = assetSewerLateralGateway.GetSize(assetId); string originalDistanceFromUsmh = assetSewerLateralGateway.GetDistanceFromUSMH(assetId); string originalDistanceFromDsmh = assetSewerLateralGateway.GetDistanceFromDSMH(assetId); string originalMapSize = assetSewerLateralGateway.GetMapSize(assetId); bool originalDelete = assetSewerLateralGateway.GetDeleted(assetId); int originalCompanyId = assetSewerLateralGateway.GetCompanyId(assetId); string originalConnectionType = assetSewerLateralGateway.GetConnectionType(assetId); // new values string newAddress = address; string newDistanceFromUsmh = originalDistanceFromUsmh; string newDistanceFromDsmh = originalDistanceFromDsmh; string newMapSize = mapSize; string newConnectionType = connectionType; // Update Sewer lateral AssetSewerLateral assetSewerLateral = new AssetSewerLateral(null); assetSewerLateral.UpdateDirect(assetId, originalSection_, originalAddress, originalLateralId, originalLatitudeAtSection, originalLongitudeAtSection, originalLatitudeAtPropertyLine, originalLongitudeAtPropertyLine, originalState, originalSize_, originalDistanceFromUsmh, originalDistanceFromDsmh, originalMapSize, originalDelete, originalCompanyId, originalConnectionType, assetId, originalSection_, newAddress, originalLateralId, originalLatitudeAtSection, originalLongitudeAtSection, originalLatitudeAtPropertyLine, originalLongitudeAtPropertyLine, originalState, originalSize_, newDistanceFromUsmh, newDistanceFromDsmh, newMapSize, originalDelete, originalCompanyId, newConnectionType); ProjectGateway projectGateway = new ProjectGateway(); projectGateway.LoadByProjectId(currentProjectId); int clientId = projectGateway.GetClientID(currentProjectId); LfsAssetSewerLateralClientGateway lfsAssetSewerLateralClientGateway = new LfsAssetSewerLateralClientGateway(); lfsAssetSewerLateralClientGateway.LoadAllByAssetIdClientId(assetId, clientId, companyId); if (lfsAssetSewerLateralClientGateway.Table.Rows.Count == 0) { LfsAssetSewerLateralClient lfsAssetSewerLateralClient = new LfsAssetSewerLateralClient(null); lfsAssetSewerLateralClient.InsertDirect(assetId, clientId, clientLateralId, false, companyId); } else { LfsAssetSewerLateralClient lfsAssetSewerLateralClient = new LfsAssetSewerLateralClient(null); string originalClientLateralId = lfsAssetSewerLateralClientGateway.GetClientLateralId(assetId, clientId); string newClientLateralId = clientLateralId; lfsAssetSewerLateralClient.UpdateDirect(assetId, clientId, originalClientLateralId, false, companyId, assetId, clientId, newClientLateralId, false, companyId); } }
/// <summary> /// UpdateDirect /// </summary> /// <param name="originalAssetId">originalAssetId</param> /// <param name="originalSection_">originalSection_</param> /// <param name="originalAddress">originalAddress</param> /// <param name="originalLateralId">originalLateralId</param> /// <param name="originalLatitudeAtSection">originalLatitudeAtSection</param> /// <param name="originalLongitudeAtSection">originalLongitudeAtSection</param> /// <param name="originalLatitudeAtPropertyLine">originalLatitudeAtPropertyLine</param> /// <param name="originalLongitudeAtPropertyLine">originalLongitudeAtPropertyLine</param> /// <param name="originalState">originalState</param> /// <param name="orignalSize">orignalSize</param> /// <param name="originalDistanceFromUsmh">originalDistanceFromUsmh</param> /// <param name="originalDistanceFromDsmh">originalDistanceFromDsmh</param> /// <param name="originalMapSize">originalMapSize</param> /// <param name="originalDeleted">originalDeleted</param> /// <param name="originalCompanyId">originalCompanyId</param> /// <param name="originalConnectionType">originalConnectionType</param> /// /// <param name="newAssetId">newAssetId</param> /// <param name="newSection_">newSection_</param> /// <param name="newAddress">newAddress</param> /// <param name="newLateralId">newLateralId</param> /// <param name="newLatitudeAtSection">newLatitudeAtSection</param> /// <param name="newLongitudeAtSection">newLongitudeAtSection</param> /// <param name="newLatitudeAtPropertyLine">newLatitudeAtPropertyLine</param> /// <param name="newLongitudeAtPropertyLine">newLongitudeAtPropertyLine</param> /// <param name="newState">newState</param> /// <param name="newSize">newSize</param> /// <param name="newDistanceFromUsmh">newDistanceFromUsmh</param> /// <param name="newDistanceFromDsmh">newDistanceFromDsmh</param> /// <param name="newMapSize">newMapSize</param> /// <param name="newDeleted">newDeleted</param> /// <param name="newCompanyId">newCompanyId</param> /// <param name="newConnectionType">newConnectionType</param> public void UpdateDirect(int originalAssetId, int originalSection_, string originalAddress, string originalLateralId, string originalLatitudeAtSection, string originalLongitudeAtSection, string originalLatitudeAtPropertyLine, string originalLongitudeAtPropertyLine, string originalState, string orignalSize, string originalDistanceFromUsmh, string originalDistanceFromDsmh, string originalMapSize, bool originalDeleted, int originalCompanyId, string originalConnectionType, int newAssetId, int newSection_, string newAddress, string newLateralId, string newLatitudeAtSection, string newLongitudeAtSection, string newLatitudeAtPropertyLine, string newLongitudeAtPropertyLine, string newState, string newSize, string newDistanceFromUsmh, string newDistanceFromDsmh, string newMapSize, bool newDeleted, int newCompanyId, string newConnectionType) { AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.Update(originalAssetId, originalSection_, originalAddress, originalLateralId, originalLatitudeAtSection, originalLongitudeAtSection, originalLatitudeAtPropertyLine, originalLongitudeAtPropertyLine, originalState, orignalSize, originalDistanceFromUsmh, originalDistanceFromDsmh, originalMapSize, originalDeleted, originalCompanyId, originalConnectionType, newAssetId, newSection_, newAddress, newLateralId, newLatitudeAtSection, newLongitudeAtSection, newLatitudeAtPropertyLine, newLongitudeAtPropertyLine, newState, newSize, newDistanceFromUsmh, newDistanceFromDsmh, newMapSize, newDeleted, newCompanyId, newConnectionType); // Update section if ((originalState != newState) && ((newState == "Live") || (originalState == "Live"))) { // ... Load section AssetSewerSectionGateway assetSewerSectionGateway = new AssetSewerSectionGateway(); assetSewerSectionGateway.LoadByAssetId(originalSection_, originalCompanyId); // ... Get old values of section string sectionIdS = assetSewerSectionGateway.GetSectionId(originalSection_); string streetS = assetSewerSectionGateway.GetStreet(originalSection_); int? usmhIdS = assetSewerSectionGateway.GetUSMH(originalSection_); int? dsmhIdS = assetSewerSectionGateway.GetDSMH(originalSection_); string mapSizeS = assetSewerSectionGateway.GetMapSize(originalSection_); string size_S = assetSewerSectionGateway.GetSize_(originalSection_); string mapLengthS = assetSewerSectionGateway.GetMapSize(originalSection_); string lengthS = assetSewerSectionGateway.GetLength(originalSection_); int? lateralsS = assetSewerSectionGateway.GetLaterals(originalSection_); int? liveLateralsS = assetSewerSectionGateway.GetLiveLaterals(originalSection_); string flowDirectionS = assetSewerSectionGateway.GetFlowDirection(originalSection_); string usmhDepthS = assetSewerSectionGateway.GetUSMHDepth(originalSection_); string dsmhDepthS = assetSewerSectionGateway.GetDSMHDepth(originalSection_); bool deletedS = assetSewerSectionGateway.GetDeleted(originalSection_); string flowOrderIdS = assetSewerSectionGateway.GetFlowOrderID(originalSection_); // ... Calculate new values of section int? newLiveLaterals = liveLateralsS; if (originalState == "Live") { newLiveLaterals = newLiveLaterals - 1; } if (newState == "Live") { newLiveLaterals = newLiveLaterals + 1; } // ... Update section AssetSewerSection assetSewerSection = new AssetSewerSection(assetSewerSectionGateway.Data); assetSewerSection.UpdateDirect(originalSection_, sectionIdS, streetS, usmhIdS, dsmhIdS, mapSizeS, size_S, mapLengthS, lengthS, lateralsS, liveLateralsS, flowDirectionS, usmhDepthS, dsmhDepthS, deletedS, originalCompanyId, flowOrderIdS, originalSection_, sectionIdS, streetS, usmhIdS, dsmhIdS, mapSizeS, size_S, mapLengthS, lengthS, lateralsS, newLiveLaterals, flowDirectionS, usmhDepthS, dsmhDepthS, deletedS, originalCompanyId, flowOrderIdS); } }
// //////////////////////////////////////////////////////////////////////// // PUBLIC METHODS // /// <summary> /// InsertDirect /// </summary> /// <param name="countryId">countryId</param> /// <param name="provinceId">provinceId</param> /// <param name="countyId">countyId</param> /// <param name="cityId">cityId</param> /// <param name="section_">section_</param> /// <param name="address">address</param> /// <param name="lateralID">lateralID</param> /// <param name="latitudeAtSection">latitudeAtSection</param> /// <param name="longitudeAtSection">longitudeAtSection</param> /// <param name="latitudeAtPropertyLine">latitudeAtPropertyLine</param> /// <param name="longitudeAtPropertyLine">longitudeAtPropertyLine</param> /// <param name="state">state</param> /// <param name="size_">size_</param> /// <param name="distanceFromUSMH">distanceFromUSMH</param> /// <param name="distanceFromDSMH">distanceFromDSMH</param> /// <param name="mapSize">mapSize</param> /// <param name="deleted">deleted</param> /// <param name="companyId">companyId</param> /// <param name="connectionType">connectionType</param> /// <returns></returns> public int InsertDirect(Int64? countryId, Int64? provinceId, Int64? countyId, Int64? cityId, int section_, string address, string lateralID, string latitudeAtSection, string longitudeAtSection, string latitudeAtPropertyLine, string longitudeAtPropertyLine, string state, string size_, string distanceFromUSMH, string distanceFromDSMH, string mapSize, bool deleted, int companyId, string connectionType) { AssetSewerLateralGateway assetSewerLateralGateway = new AssetSewerLateralGateway(); assetSewerLateralGateway.LoadBySectionLateralId(section_, lateralID, companyId); int lateral_assetId = 0; if (assetSewerLateralGateway.Table.Rows.Count == 0) { // Insert Asset lateral_assetId = new Asset(new DataSet()).InsertDirect("Sewer", countryId, provinceId, countyId, cityId, deleted, companyId); new AssetSewer(new DataSet()).InsertDirect(lateral_assetId, "Lateral", deleted, companyId); assetSewerLateralGateway.Insert(lateral_assetId, section_, address, lateralID, latitudeAtSection, longitudeAtSection, latitudeAtPropertyLine, longitudeAtPropertyLine, state, size_, distanceFromUSMH, distanceFromDSMH, mapSize, deleted, companyId, connectionType); // Update Section // ... load section AssetSewerSectionGateway assetSewerSectionGateway = new AssetSewerSectionGateway(); assetSewerSectionGateway.LoadByAssetId(section_, companyId); // ... get old values of section string sectionIdS = assetSewerSectionGateway.GetSectionId(section_); string streetS = assetSewerSectionGateway.GetStreet(section_); int? usmhIdS = assetSewerSectionGateway.GetUSMH(section_); int? dsmhIdS = assetSewerSectionGateway.GetDSMH(section_); string mapSizeS = assetSewerSectionGateway.GetMapSize(section_); string size_S = assetSewerSectionGateway.GetSize_(section_); string mapLengthS = assetSewerSectionGateway.GetMapSize(section_); string lengthS = assetSewerSectionGateway.GetLength(section_); int? lateralsS = assetSewerSectionGateway.GetLaterals(section_); int? liveLateralsS = assetSewerSectionGateway.GetLiveLaterals(section_); string flowDirectionS = assetSewerSectionGateway.GetFlowDirection(section_); string usmhDepthS = assetSewerSectionGateway.GetUSMHDepth(section_); string dsmhDepthS = assetSewerSectionGateway.GetDSMHDepth(section_); string flowOrderIdS = assetSewerSectionGateway.GetFlowOrderID(section_); // ... calculate new values of section int? newLaterals = lateralsS; if (newLaterals.HasValue) { newLaterals = newLaterals + 1; } else { newLaterals = 1; } int? newLiveLaterals = liveLateralsS; if (state == "Live") { if (newLiveLaterals.HasValue) { newLiveLaterals = newLiveLaterals + 1; } else { newLiveLaterals = 1; } } else { newLiveLaterals = 0; } // ... update section AssetSewerSection assetSewerSection = new AssetSewerSection(assetSewerSectionGateway.Data); assetSewerSection.UpdateDirect(section_, sectionIdS, streetS, usmhIdS, dsmhIdS, mapSizeS, size_S, mapLengthS, lengthS, lateralsS, liveLateralsS, flowDirectionS, usmhDepthS, dsmhDepthS, deleted, companyId, flowOrderIdS, section_, sectionIdS, streetS, usmhIdS, dsmhIdS, mapSizeS, size_S, mapLengthS, lengthS, newLaterals, newLiveLaterals, flowDirectionS, usmhDepthS, dsmhDepthS, deleted, companyId, flowOrderIdS); } else { lateral_assetId = assetSewerLateralGateway.GetAssetID(section_, lateralID); } return lateral_assetId; }