//COMPANY_ID /// <summary> /// Delete /// </summary> /// <param name="projectId">projectId</param> /// <param name="sectionId">sectionId</param> /// <param name="companyId">companyId</param> public void Delete(int projectId, int assetId, int companyId) { WorkRehabAssessmentGateway workRehabAssessmentGateway = new WorkRehabAssessmentGateway(); WorkRehabAssessment workRehabAssessment = new WorkRehabAssessment(workRehabAssessmentGateway.Data); WorkFullLengthLiningGateway workFullLengthLiningGateway = new WorkFullLengthLiningGateway(); WorkFullLengthLining workFullLengthLining = new WorkFullLengthLining(workFullLengthLiningGateway.Data); WorkJunctionLiningSectionGateway workJunctionLiningSectionGateway = new WorkJunctionLiningSectionGateway(); WorkJunctionLiningSection workJunctionLiningSection = new WorkJunctionLiningSection(workJunctionLiningSectionGateway.Data); int workIdRA = GetWorkId(projectId, assetId, "Rehab Assessment", companyId); if (workIdRA != 0) workRehabAssessment.DeleteDirect(workIdRA, companyId); int workIdFL = GetWorkId(projectId, assetId, "Full Length Lining", companyId); if (workIdFL != 0) workFullLengthLining.DeleteDirect(workIdFL, companyId); int workIdJL = GetWorkId(projectId, assetId, "Junction Lining Section", companyId); if (workIdJL != 0) workJunctionLiningSection.DeleteDirect(workIdJL, companyId); LfsAssetSewerSectionGateway lfsAssetSewerSectionGateway = new LfsAssetSewerSectionGateway(); lfsAssetSewerSectionGateway.LoadByAssetId(assetId, companyId); LfsAssetSewerSection lfsAssetSewerSection = new LfsAssetSewerSection(lfsAssetSewerSectionGateway.Data); // Update lfs asset lfsAssetSewerSection.DeleteDirect(assetId, companyId); }
/// <summary> /// DeleteDirect /// </summary> /// <param name="workId">workId</param> /// <param name="companyId">companyId</param> public void DeleteDirect(int workId, int companyId) { WorkFullLengthLiningGateway workFullLengthLiningGateway = new WorkFullLengthLiningGateway(); workFullLengthLiningGateway.LoadByWorkId(workId, companyId); if (workFullLengthLiningGateway.Table.Rows.Count > 0) { // Delete P1 WorkFullLengthLiningP1 workFullLengthLiningP1 = new WorkFullLengthLiningP1(null); workFullLengthLiningP1.DeleteDirect(workId, companyId); // Delete M1 WorkFullLengthLiningM1 workFullLengthLiningM1 = new WorkFullLengthLiningM1(null); workFullLengthLiningM1.DeleteDirect(workId, companyId); // Delete M2 WorkFullLengthLiningM2 workFullLengthLiningM2 = new WorkFullLengthLiningM2(null); workFullLengthLiningM2.DeleteDirect(workId, companyId); // Delete WorkComments WorkComments workComments = new WorkComments(null); workComments.DeleteAllDirect(workId, companyId); // Delete Catalysts // Delete wet out data // delete inversion data // Delete WorkFullLengthLining workFullLengthLiningGateway.Delete(workId, companyId); // Delete work Work work = new Work(null); work.DeleteDirect(workId, companyId); } }
/// <summary> /// Save a Previous FL work /// </summary> /// <param name="projectId">projectId</param> /// <param name="section_assetId">section_assetId</param> /// <param name="companyId">companyId</param> private void SavePreviousFLWork(int projectId, int section_assetId, int companyId) { // Load Previous work - Full Length Lining data (last sections work) string workType = "Full Length Lining"; WorkFullLengthLiningGateway workFullLengthLiningGateway = new WorkFullLengthLiningGateway(); workFullLengthLiningGateway.LoadTop1ByProjectIdAssetIdWorkType(projectId, section_assetId, workType, companyId); int workId = workFullLengthLiningGateway.GetWorkIdTop1(); string clientId = ""; if (workFullLengthLiningGateway.GetClientId(workId) != "") clientId = workFullLengthLiningGateway.GetClientId(workId); DateTime? proposedLiningDate = null; if (workFullLengthLiningGateway.GetProposedLiningDate(workId).HasValue) proposedLiningDate = workFullLengthLiningGateway.GetProposedLiningDate(workId); DateTime? deadlineLiningDate = null; if (workFullLengthLiningGateway.GetDeadlineLiningDate(workId).HasValue) deadlineLiningDate = workFullLengthLiningGateway.GetDeadlineLiningDate(workId); DateTime? p1Date = null; if (workFullLengthLiningGateway.GetP1Date(workId).HasValue) p1Date = workFullLengthLiningGateway.GetP1Date(workId); DateTime? m1Date = null; if (workFullLengthLiningGateway.GetM1Date(workId).HasValue) m1Date = workFullLengthLiningGateway.GetM1Date(workId); DateTime? m2Date = null; if (workFullLengthLiningGateway.GetM2Date(workId).HasValue) m2Date = workFullLengthLiningGateway.GetM2Date(workId); DateTime? installDate = null; if (workFullLengthLiningGateway.GetInstallDate(workId).HasValue) installDate = workFullLengthLiningGateway.GetInstallDate(workId); DateTime? finalVideoDate = null; if (workFullLengthLiningGateway.GetFinalVideoDate(workId).HasValue) finalVideoDate = workFullLengthLiningGateway.GetFinalVideoDate(workId); bool issueIdentified = workFullLengthLiningGateway.GetIssueIdentified(workId); bool issueLfs = workFullLengthLiningGateway.GetIssueLFS(workId); bool issueClient = workFullLengthLiningGateway.GetIssueClient(workId); bool issueSales = workFullLengthLiningGateway.GetIssueSales(workId); bool issueGivenToClient = workFullLengthLiningGateway.GetIssueGivenToClient(workId); bool issueResolved = workFullLengthLiningGateway.GetIssueResolved(workId); bool issueInvestigation = workFullLengthLiningGateway.GetIssueInvestigation(workId); // Load Previous work - Full Length Lining M1 data (last sections work) FullLengthLiningWorkDetailsGateway fullLengthLiningWorkDetailsGateway = new FullLengthLiningWorkDetailsGateway(); fullLengthLiningWorkDetailsGateway.LoadByWorkIdAssetId(workId, section_assetId, companyId); string measurementTakenBy = ""; if (fullLengthLiningWorkDetailsGateway.GetMeasurementTakenBy(workId) != "") measurementTakenBy = fullLengthLiningWorkDetailsGateway.GetMeasurementTakenBy(workId); string trafficControl = ""; if (fullLengthLiningWorkDetailsGateway.GetTrafficControl(workId) != "") trafficControl = fullLengthLiningWorkDetailsGateway.GetTrafficControl(workId); string siteDetails = ""; if (fullLengthLiningWorkDetailsGateway.GetSiteDetails(workId) != "") siteDetails = fullLengthLiningWorkDetailsGateway.GetSiteDetails(workId); string accessType = ""; if (fullLengthLiningWorkDetailsGateway.GetAccessType(workId) != "") accessType = fullLengthLiningWorkDetailsGateway.GetAccessType(workId); bool pipeSizeChange = fullLengthLiningWorkDetailsGateway.GetPipeSizeChange(workId); bool standardByPass = fullLengthLiningWorkDetailsGateway.GetStandardBypass(workId); string standardByPassComments = ""; if (fullLengthLiningWorkDetailsGateway.GetStandardBypassComments(workId) != "") standardByPassComments = fullLengthLiningWorkDetailsGateway.GetStandardBypassComments(workId); string trafficControlDetails = ""; if (fullLengthLiningWorkDetailsGateway.GetTrafficControlDetails(workId) != "") trafficControlDetails = fullLengthLiningWorkDetailsGateway.GetTrafficControlDetails(workId); string measurementType = ""; if (fullLengthLiningWorkDetailsGateway.GetMeasurementType(workId) != "") measurementType = fullLengthLiningWorkDetailsGateway.GetMeasurementType(workId); string measurementFromMH = ""; if (fullLengthLiningWorkDetailsGateway.GetMeasurementFromMh(workId) != "") measurementFromMH = fullLengthLiningWorkDetailsGateway.GetMeasurementFromMh(workId); string videoDoneFromMH = ""; if (fullLengthLiningWorkDetailsGateway.GetVideoDoneFromMh(workId) != "") videoDoneFromMH = fullLengthLiningWorkDetailsGateway.GetVideoDoneFromMh(workId); string videoDoneToMH = ""; if (fullLengthLiningWorkDetailsGateway.GetVideoDoneToMh(workId) != "") videoDoneToMH = fullLengthLiningWorkDetailsGateway.GetVideoDoneToMh(workId); // Load Previous work - Full Length Lining M2 data (last sections work) string videoLength = ""; if (fullLengthLiningWorkDetailsGateway.GetVideoLength(workId) != "") videoLength = fullLengthLiningWorkDetailsGateway.GetVideoLength(workId); string measurementTakenBy2 = ""; if (fullLengthLiningWorkDetailsGateway.GetMeasurementTakenByM2(workId) != "") measurementTakenBy2 = fullLengthLiningWorkDetailsGateway.GetMeasurementTakenByM2(workId); bool dropPipe = fullLengthLiningWorkDetailsGateway.GetDropPipe(workId); string dropPipeInvertDepth = ""; if (fullLengthLiningWorkDetailsGateway.GetDropPipeInvertDepth(workId) != "") dropPipeInvertDepth = fullLengthLiningWorkDetailsGateway.GetDropPipeInvertDepth(workId); int? cappedLaterals = null; if (fullLengthLiningWorkDetailsGateway.GetCappedLaterals(workId).HasValue) cappedLaterals = fullLengthLiningWorkDetailsGateway.GetCappedLaterals(workId); string lineWithID = ""; if (fullLengthLiningWorkDetailsGateway.GetLineWithId(workId) != "") lineWithID = fullLengthLiningWorkDetailsGateway.GetLineWithId(workId); string hydrantAddress = ""; if (fullLengthLiningWorkDetailsGateway.GetHydrantAddress(workId) != "") hydrantAddress = fullLengthLiningWorkDetailsGateway.GetHydrantAddress(workId); string hydroWireWithin10FtOfInversionMH = ""; if (fullLengthLiningWorkDetailsGateway.GetHydroWiredWithin10FtOfInversionMH(workId) != "") hydroWireWithin10FtOfInversionMH = fullLengthLiningWorkDetailsGateway.GetHydroWiredWithin10FtOfInversionMH(workId); string distanceToInversionMH = ""; if (fullLengthLiningWorkDetailsGateway.GetDistanceToInversionMh(workId) != "") distanceToInversionMH = fullLengthLiningWorkDetailsGateway.GetDistanceToInversionMh(workId); string surfaceGrade = ""; if (fullLengthLiningWorkDetailsGateway.GetSurfaceGrade(workId) != "") surfaceGrade = fullLengthLiningWorkDetailsGateway.GetSurfaceGrade(workId); bool hydroPulley = fullLengthLiningWorkDetailsGateway.GetHydroPulley(workId); bool fridgeCart = fullLengthLiningWorkDetailsGateway.GetFridgeCart(workId); bool twoPump = fullLengthLiningWorkDetailsGateway.GetTwoPump(workId); bool sixBypass = fullLengthLiningWorkDetailsGateway.GetSixBypass(workId); bool scaffolding = fullLengthLiningWorkDetailsGateway.GetScaffolding(workId); bool winchExtention = fullLengthLiningWorkDetailsGateway.GetWinchExtension(workId); bool extraGenerator = fullLengthLiningWorkDetailsGateway.GetExtraGenerator(workId); bool greyCableExtension = fullLengthLiningWorkDetailsGateway.GetGreyCableExtension(workId); bool easementMats = fullLengthLiningWorkDetailsGateway.GetEasementMats(workId); bool rampRequired = fullLengthLiningWorkDetailsGateway.GetRampRequired(workId); bool cameraSkid = fullLengthLiningWorkDetailsGateway.GetCameraSkid(workId); // Load Previous work - Full Length Lining P1 data (last sections work) int? cxisRemoved = null; if (fullLengthLiningWorkDetailsGateway.GetCxisRemoved(workId).HasValue) fullLengthLiningWorkDetailsGateway.GetCxisRemoved(workId); bool roboticPrepCompleted = fullLengthLiningWorkDetailsGateway.GetRoboticPrepCompleted(workId); DateTime? roboticPrepCompletedDate = fullLengthLiningWorkDetailsGateway.GetRoboticPrepCompletedDate(workId); bool p1Completed = fullLengthLiningWorkDetailsGateway.GetP1Completed(workId); // Load Previous work - General work data WorkGateway workGateway = new WorkGateway(); workGateway.LoadByWorkId(workId, companyId); int? libraryCategoriesId = null; if (workGateway.GetLibraryCategoriesId(workId).HasValue) libraryCategoriesId = workGateway.GetLibraryCategoriesId(workId); string comments = workGateway.GetComments(workId); string history = workGateway.GetHistory(workId); // Save new work WorkFullLengthLining workFullLengthLining = new WorkFullLengthLining(null); int newSectionWorkId = workFullLengthLining.InsertDirectFullWork(projectId, section_assetId, libraryCategoriesId, clientId, proposedLiningDate, deadlineLiningDate, p1Date, m1Date, m2Date, installDate, finalVideoDate, issueIdentified, issueLfs, issueClient, issueSales, issueGivenToClient, issueResolved, false, companyId, issueInvestigation, comments, history, cxisRemoved, roboticPrepCompleted, roboticPrepCompletedDate, measurementTakenBy, trafficControl, siteDetails, pipeSizeChange, standardByPass, standardByPassComments, trafficControlDetails, measurementType, measurementFromMH, videoDoneFromMH, videoDoneToMH, videoLength, measurementTakenBy2, dropPipe, dropPipeInvertDepth, cappedLaterals, lineWithID, hydrantAddress, hydroWireWithin10FtOfInversionMH, distanceToInversionMH, surfaceGrade, hydroPulley, fridgeCart, twoPump, sixBypass, scaffolding, winchExtention, extraGenerator, greyCableExtension, easementMats, rampRequired, cameraSkid, accessType, p1Completed); // Load Previous work - Save fl laterals WorkFullLengthLiningM1LateralGateway workFullLengthLiningM1LateralGateway = new WorkFullLengthLiningM1LateralGateway(); workFullLengthLiningM1LateralGateway.LoadByWorkId(workId, companyId); foreach (WorkTDS.LFS_WORK_FULLLENGTHLINING_M1_LATERALRow lateralRow in (WorkTDS.LFS_WORK_FULLLENGTHLINING_M1_LATERALDataTable)workFullLengthLiningM1LateralGateway.Table) { int lateral = lateralRow.Lateral; string videoDistance = ""; if (!lateralRow.IsVideoDistanceNull()) videoDistance = lateralRow.VideoDistance; string clockPosition = ""; if (!lateralRow.IsClockPositionNull()) clockPosition = lateralRow.ClockPosition; string distanceToCentre = ""; if (!lateralRow.IsDistanceToCentreNull()) distanceToCentre = lateralRow.DistanceToCentre; string timeOpened = ""; if (!lateralRow.IsTimeOpenedNull()) timeOpened = lateralRow.TimeOpened; string reverseSetup = ""; if (!lateralRow.IsReverseSetupNull()) reverseSetup = lateralRow.ReverseSetup; DateTime? reinstate = null; if (!lateralRow.IsReinstateNull()) reinstate = lateralRow.Reinstate; string lateralComments = ""; if (!lateralRow.IsCommentsNull()) lateralComments = lateralRow.Comments; string clientInspectionNo = ""; if (!lateralRow.IsClientInspectionNoNull()) clientInspectionNo = lateralRow.ClientInspectionNo; DateTime? v1Inspection = null; if (!lateralRow.IsV1InspectionNull()) v1Inspection = lateralRow.V1Inspection; bool requiresRoboticPrep = lateralRow.RequiresRoboticPrep; DateTime? requiresRoboticPrepDate = null; if (!lateralRow.IsRequiresRoboticPrepDateNull()) requiresRoboticPrepDate = lateralRow.RequiresRoboticPrepDate; bool holdClientIssue = lateralRow.HoldClientIssue; bool holdLFSIssue = lateralRow.HoldLFSIssue; bool lineLateral = lateralRow.LineLateral; bool dyeTestReq = lateralRow.DyeTestReq; DateTime? dyeTestComplete = null; if (!lateralRow.IsDyeTestCompleteNull()) dyeTestComplete = lateralRow.DyeTestComplete; string contractYear = lateralRow.ContractYear; WorkFullLengthLiningM1Lateral workFullLengthLiningM1Lateral = new WorkFullLengthLiningM1Lateral(); workFullLengthLiningM1Lateral.InsertDirect(newSectionWorkId, lateral, videoDistance, clockPosition, distanceToCentre, timeOpened, reverseSetup, reinstate, lateralComments, false, companyId, clientInspectionNo, v1Inspection, requiresRoboticPrep, requiresRoboticPrepDate, holdClientIssue, holdLFSIssue, lineLateral, dyeTestReq, dyeTestComplete, contractYear); } // Load Previous work - Comments and History SavePreviousComments(workId, workType, companyId, newSectionWorkId); SavePreviousHistory(workId, workType, companyId, newSectionWorkId); }
// //////////////////////////////////////////////////////////////////////// // PRIVATE METHODS // /// <summary> /// UpdateFllWork /// </summary> /// <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="workId">workId</param> /// <param name="originalClientId">originalClientId</param> /// <param name="originalProposedLiningDate">originalProposedLiningDate</param> /// <param name="originalDeadlineLiningDate">originalDeadlineLiningDate</param> /// <param name="originalP1Date">originalP1Date</param> /// <param name="originalM1Date">originalM1Date</param> /// <param name="originalM2Date">originalM2Date</param> /// <param name="originalInstallDate">originalInstallDate</param> /// <param name="originalFinalVideoDate">originalFinalVideoDate</param> /// <param name="originalIssueIdentified">originalIssueIdentified</param> /// <param name="originalIssueLFS">originalIssueLFS</param> /// <param name="originalIssueClient">originalIssueClient</param> /// <param name="originalIssueSales">originalIssueSales</param> /// <param name="originalIssueGivenToClient">originalIssueGivenToClient</param> /// <param name="originalIssueResolved">originalIssueResolved</param> /// <param name="originalIssueInvestigation">originalIssueInvestigation</param> /// <param name="originalCxisRemoved">originalCxisRemoved</param> /// <param name="originalRoboticPrepCompleted">originalRoboticPrepCompleted</param> /// <param name="originalRoboticPrepCompletedDate">originalRoboticPrepCompletedDate</param> /// <param name="originalMeasurementTakenBy">originalMeasurementTakenBy</param> /// <param name="originalMaterials">originalMaterials</param> /// <param name="originalTrafficControl">originalTrafficControl</param> /// <param name="originalSiteDetails">originalSiteDetails</param> /// <param name="originalPipeSizeChange">originalPipeSizeChange</param> /// <param name="originalStandardBypass">originalStandardBypass</param> /// <param name="originalIssue">originalIssue</param> /// <param name="originalStandardBypassComments">originalStandardBypassComments</param> /// <param name="originalTrafficControlDetails">originalTrafficControlDetails</param> /// <param name="originalMeasurementType">originalMeasurementType</param> /// <param name="originalMeasurementFromMh">originalMeasurementFromMh</param> /// <param name="originalVideoDoneFromMh">originalVideoDoneFromMh</param> /// <param name="originalVideoDoneToMh">originalVideoDoneToMh</param> /// <param name="originalRoboticPrepDate">originalRoboticPrepDate</param> /// <param name="originalVideoLength">originalVideoLength</param> /// <param name="originalComments">originalComments</param> /// <param name="originalDeleted">originalDeleted</param> /// <param name="originalCompanyId">originalCompanyId</param> /// <param name="originalAccessType">originalAccessType</param> /// <param name="originalP1Completed">originalP1Completed</param> /// /// <param name="newClientId">newClientId</param> /// <param name="newProposedLiningDate">newProposedLiningDate</param> /// <param name="newDeadlineLiningDate">newDeadlineLiningDate</param> /// <param name="newP1Date">newP1Date</param> /// <param name="newM1Date">newM1Date</param> /// <param name="newM2Date">newM2Date</param> /// <param name="newInstallDate">newInstallDate</param> /// <param name="newFinalVideoDate">newFinalVideoDate</param> /// <param name="newIssueIdentified">newIssueIdentified</param> /// <param name="newIssueLFS">newIssueLFS</param> /// <param name="newIssueClient">newIssueClient</param> /// <param name="newIssueSales">newIssueSales</param> /// <param name="newIssueGivenToClient">newIssueGivenToClient</param> /// <param name="newIssueResolved">newIssueResolved</param> /// <param name="newIssueInvestigation">newIssueInvestigation</param> /// <param name="newCxisRemoved">newCxisRemoved</param> /// <param name="newRoboticPrepCompleted">newRoboticPrepCompleted</param> /// <param name="newRoboticPrepCompletedDate">newRoboticPrepCompletedDate</param> /// <param name="newMeasurementTakenBy">newMeasurementTakenBy</param> /// <param name="newMaterials">newMaterials</param> /// <param name="newTrafficControl">newTrafficControl</param> /// <param name="newSiteDetails">newSiteDetails</param> /// <param name="newPipeSizeChange">newPipeSizeChange</param> /// <param name="newStandardBypass">newStandardBypass</param> /// <param name="newIssue">newIssue</param> /// <param name="newStandardBypassComments">newStandardBypassComments</param> /// <param name="newTrafficControlDetails">newTrafficControlDetails</param> /// <param name="newMeasurementType">newMeasurementType</param> /// <param name="newMeasurementFromMh">newMeasurementFromMh</param> /// <param name="newVideoDoneFromMh">newVideoDoneFromMh</param> /// <param name="newVideoDoneToMh">newVideoDoneToMh</param> ///<param name="newVideoLength">newVideoLength</param> /// <param name="newComments">newComments</param> /// <param name="newDeleted">newDeleted</param> /// <param name="newCompanyId">newCompanyId</param> /// <param name="newAccessType">newAccessType</param> /// <param name="newP1Completed">newP1Completed</param> private void UpdateFllWork(int sectionAssetId, Int64? countryId, Int64? provinceId, Int64? countyId, Int64? cityId, int workId, string originalClientId, DateTime? originalProposedLiningDate, DateTime? originalDeadlineLiningDate, DateTime? originalP1Date, DateTime? originalM1Date, DateTime? originalM2Date, DateTime? originalInstallDate, DateTime? originalFinalVideoDate, bool originalIssueIdentified, bool originalIssueLFS, bool originalIssueClient, bool originalIssueSales, bool originalIssueGivenToClient, bool originalIssueResolved, bool originalIssueInvestigation, int? originalCxisRemoved, bool originalRoboticPrepCompleted, DateTime? originalRoboticPrepCompletedDate, string originalMeasurementTakenBy, string originalTrafficControl, string originalSiteDetails, bool originalPipeSizeChange, bool originalStandardBypass, string originalStandardBypassComments, string originalTrafficControlDetails, string originalMeasurementType, string originalMeasurementFromMh, string originalVideoDoneFromMh, string originalVideoDoneToMh, string originalVideoLength, string originalComments, bool originalDeleted, int originalCompanyId, string originalMaterials, string originalAccessType, bool originalP1Completed, string newClientId, DateTime? newProposedLiningDate, DateTime? newDeadlineLiningDate, DateTime? newP1Date, DateTime? newM1Date, DateTime? newM2Date, DateTime? newInstallDate, DateTime? newFinalVideoDate, bool newIssueIdentified, bool newIssueLFS, bool newIssueClient, bool newIssueSales, bool newIssueGivenToClient, bool newIssueResolved, bool newIssueInvestigation, int? newCxisRemoved, bool newRoboticPrepCompleted, DateTime? newRoboticPrepCompletedDate, string newMeasurementTakenBy, string newMaterials, string newTrafficControl, string newSiteDetails, bool newPipeSizeChange, bool newStandardBypass, string newStandardBypassComments, string newTrafficControlDetails, string newMeasurementType, string newMeasurementFromMh, string newVideoDoneFromMh, string newVideoDoneToMh, string newVideoLength, string newComments, bool newDeleted, int newCompanyId, string newAccessType, bool newP1Completed) { if (newSiteDetails == "(Select a Site Detail)") newSiteDetails = "Not applicable"; // Update P1 fullLengthLining WorkFullLengthLiningP1 workFullLengthLiningP1 = new WorkFullLengthLiningP1(null); workFullLengthLiningP1.UpdateDirect(workId, originalCxisRemoved, originalRoboticPrepCompleted, originalRoboticPrepCompletedDate, originalDeleted, originalCompanyId, originalP1Completed, workId, newCxisRemoved, newRoboticPrepCompleted, newRoboticPrepCompletedDate, newDeleted, newCompanyId, newP1Completed); // Update M1 fullLengthLining WorkFullLengthLiningM1 workFullLengthLiningM1 = new WorkFullLengthLiningM1(null); workFullLengthLiningM1.UpdateDirect(workId, originalMeasurementFromMh, originalTrafficControl, originalSiteDetails, originalPipeSizeChange, originalStandardBypass, originalStandardBypassComments, originalTrafficControlDetails, originalMeasurementType, originalMeasurementFromMh, originalVideoDoneFromMh, originalVideoDoneToMh, originalDeleted, originalCompanyId, originalAccessType, workId, newMeasurementTakenBy, newTrafficControl, newSiteDetails, newPipeSizeChange, newStandardBypass, newStandardBypassComments, newTrafficControlDetails, newMeasurementType, newMeasurementFromMh, newVideoDoneFromMh, newVideoDoneToMh, newDeleted, newCompanyId, newAccessType); // Update M2 fullLengthLining (VideoLength) WorkFullLengthLiningM2 workFullLengthLiningM2 = new WorkFullLengthLiningM2(null); workFullLengthLiningM2.UpdateVideoLengthDirect(sectionAssetId, workId, originalVideoLength, originalDeleted, originalCompanyId, workId, newVideoLength, newDeleted, newCompanyId); // Update fullLengthLining WorkFullLengthLiningGateway workFullLengthLiningGateway = new WorkFullLengthLiningGateway(null); workFullLengthLiningGateway.Update(workId, originalClientId, originalProposedLiningDate, originalDeadlineLiningDate, originalP1Date, originalM1Date, originalM2Date, originalInstallDate, originalFinalVideoDate, originalIssueIdentified, originalIssueLFS, originalIssueClient, originalIssueSales, originalIssueGivenToClient, originalIssueResolved, originalDeleted, originalCompanyId, originalIssueInvestigation, workId, newClientId, newProposedLiningDate, newDeadlineLiningDate, newP1Date, newM1Date, newM2Date, newInstallDate, newFinalVideoDate, newIssueIdentified, newIssueLFS, newIssueClient, newIssueSales, newIssueGivenToClient, newIssueResolved, newIssueInvestigation, newDeleted, newCompanyId); }
/// <summary> /// UpdateDirect /// </summary> /// <param name="sectionAssetId">sectionAssetId</param> /// <param name="originalWorkId">originalWorkId</param> /// <param name="originalClientId">originalClientId</param> /// <param name="originalProposedLiningDate">originalProposedLiningDate</param> /// <param name="originalDeadlineLiningDate">originalDeadlineLiningDate</param> /// <param name="originalP1Date">originalP1Date</param> /// <param name="originalM1Date">originalM1Date</param> /// <param name="originalM2Date">originalM2Date</param> /// <param name="originalInstallDate">originalInstallDate</param> /// <param name="originalFinalVideo">originalFinalVideo</param> /// <param name="originalIssueIdentified">originalIssueIdentified</param> /// <param name="originalLfsIssue">originalLfsIssue</param> /// <param name="originalClientIssue">originalClientIssue</param> /// <param name="originalSalesIssue">originalSalesIssue</param> /// <param name="originalIssueGivenToClient">originalIssueGivenToClient</param> /// <param name="originalIssueResolved">originalIssueResolved</param> /// <param name="originalIssueInvestigation">originalIssueInvestigation</param> /// <param name="originalCxisRemoved">originalCxisRemoved</param> /// <param name="originalRoboticPrepCompleted">originalRoboticPrepCompleted</param> /// <param name="originalRoboticPrepCompletedDate">originalRoboticPrepCompletedDate</param> /// <param name="originalMeasurementsTakenBy">originalMeasurementsTakenBy</param> /// <param name="originalTrafficControl">originalTrafficControl</param> /// <param name="originalSiteDetails">originalSiteDetails</param> /// <param name="originalPipeSizeChange">originalPipeSizeChange</param> /// <param name="originalStandardByPass">originalStandardByPass</param> /// <param name="originalStandardBypassComments">originalStandardBypassComments</param> /// <param name="originalTrafficControlDetails">originalTrafficControlDetails</param> /// <param name="originalMeasurementType">originalMeasurementType</param> /// <param name="originalMeasurementFromMh">originalMeasurementFromMh</param> /// <param name="originalVideoDoneFromMh">originalVideoDoneFromMh</param> /// <param name="originalVideoDoneToMh">originalVideoDoneToMh</param> /// <param name="originalMeasurementTakenByM2">originalMeasurementTakenByM2</param> /// <param name="originalDropPipe">originalDropPipe</param> /// <param name="originalDropPipeInvertDepth">originalDropPipeInvertDepth</param> /// <param name="originalCappedLaterals">originalCappedLaterals</param> /// <param name="originalLineWidthId">originalLineWidthId</param> /// <param name="originalHydrantAddress">originalHydrantAddress</param> /// <param name="originalHydroWireWithin10FtOfInversionMH">originalHydroWireWithin10FtOfInversionMH</param> /// <param name="originalDistanceToInversionMh">originalDistanceToInversionMh</param> /// <param name="originalSurfaceGrade">originalSurfaceGrade</param> /// <param name="originalHydroPulley">originalHydroPulley</param> /// <param name="originalFridgeCart">originalFridgeCart</param> /// <param name="originalTwoPump">originalTwoPump</param> /// <param name="originalSixBypass">originalSixBypass</param> /// <param name="originalScaffolding">originalScaffolding</param> /// <param name="originalWinchExtension">originalWinchExtension</param> /// <param name="originalExtraGenerator">originalExtraGenerator</param> /// <param name="originalGreyCableExtension">originalGreyCableExtension</param> /// <param name="originalEasementMats">originalEasementMats</param> /// <param name="originalRampsRequired">originalRampsRequired</param> /// <param name="originalVideoLength">originalVideoLength</param> /// <param name="originalDeleted">originalDeleted</param> /// <param name="originalCompanyId">originalCompanyId</param> /// <param name="originalCameraSkid">originalCameraSkid</param> /// <param name="originalAccessType">originalAccessType</param> /// <param name="originalP1Completed">originalP1Completed</param> /// /// <param name="newWorkId">newWorkId</param> /// <param name="newClientId">newClientId</param> /// <param name="newProposedLiningDate">newProposedLiningDate</param> /// <param name="newDeadlineLiningDate">newDeadlineLiningDate</param> /// <param name="newP1Date">newP1Date</param> /// <param name="newM1Date">newM1Date</param> /// <param name="newM2Date">newM2Date</param> /// <param name="newInstallDate">newInstallDate</param> /// <param name="newFinalVideo">newFinalVideo</param> /// <param name="newIssueIdentified">newIssueIdentified</param> /// <param name="newLfsIssue">newLfsIssue</param> /// <param name="newClientIssue">newClientIssue</param> /// <param name="newSalesIssue">newSalesIssue</param> /// <param name="newIssueGivenToClient">newIssueGivenToClient</param> /// <param name="newIssueResolved">newIssueResolved</param> /// <param name="newIssueInvestigation">newIssueInvestigation</param> /// <param name="newCxisRemoved">newCxisRemoved</param> /// <param name="newRoboticPrepCompleted">newRoboticPrepCompleted</param> /// <param name="newRoboticPrepCompletedDate">newRoboticPrepCompletedDate</param> /// <param name="newMeasurementsTakenBy">newMeasurementsTakenBy</param> /// <param name="newTrafficControl">newTrafficControl</param> /// <param name="newSiteDetails">newSiteDetails</param> /// <param name="newPipeSizeChange">newPipeSizeChange</param> /// <param name="newStandardByPass">newStandardByPass</param> /// <param name="newStandardBypassComments">newStandardBypassComments</param> /// <param name="newTrafficControlDetails">newTrafficControlDetails</param> /// <param name="newMeasurementType">newMeasurementType</param> /// <param name="newMeasurementFromMh">newMeasurementFromMh</param> /// <param name="newVideoDoneFromMh">newVideoDoneFromMh</param> /// <param name="newVideoDoneToMh">newVideoDoneToMh</param> /// <param name="newMeasurementTakenByM2">newMeasurementTakenByM2</param> /// <param name="newDropPipe">newDropPipe</param> /// <param name="newDropPipeInvertDepth">newDropPipeInvertDepth</param> /// <param name="newCappedLaterals">newCappedLaterals</param> /// <param name="newLineWidthId">newLineWidthId</param> /// <param name="newHydrantAddress">newHydrantAddress</param> /// <param name="newHydroWireWithin10FtOfInversionMH">newHydroWireWithin10FtOfInversionMH</param> /// <param name="newDistanceToInversionMh">newDistanceToInversionMh</param> /// <param name="newSurfaceGrade">newSurfaceGrade</param> /// <param name="newHydroPulley">newHydroPulley</param> /// <param name="newFridgeCart">newFridgeCart</param> /// <param name="newTwoPump">newTwoPump</param> /// <param name="newSixBypass">newSixBypass</param> /// <param name="newScaffolding">newScaffolding</param> /// <param name="newWinchExtension">newWinchExtension</param> /// <param name="newExtraGenerator">newExtraGenerator</param> /// <param name="newGreyCableExtension">newGreyCableExtension</param> /// <param name="newEasementMats">newEasementMats</param> /// <param name="newRampsRequired">newRampsRequired</param> /// <param name="newVideoLength">newVideoLength</param> /// <param name="newDeleted">newDeleted</param> /// <param name="newCompanyId">newCompanyId</param> /// <param name="newCameraSkid">newCameraSkid</param> /// <param name="newAccessType">newAccessType</param> /// <param name="newP1Completed">newP1Completed</param> public void UpdateDirect(int sectionAssetId, int originalWorkId, string originalClientId, DateTime? originalProposedLiningDate, DateTime? originalDeadlineLiningDate, DateTime? originalP1Date, DateTime? originalM1Date, DateTime? originalM2Date, DateTime? originalInstallDate, DateTime? originalFinalVideo, bool originalIssueIdentified, bool originalLfsIssue, bool originalClientIssue, bool originalSalesIssue, bool originalIssueGivenToClient, bool originalIssueResolved, bool originalIssueInvestigation, int? originalCxisRemoved, bool originalRoboticPrepCompleted, DateTime? originalRoboticPrepCompletedDate, string originalMeasurementsTakenBy, string originalTrafficControl, string originalSiteDetails, bool originalPipeSizeChange, bool originalStandardByPass, string originalStandardBypassComments, string originalTrafficControlDetails, string originalMeasurementType, string originalMeasurementFromMh, string originalVideoDoneFromMh, string originalVideoDoneToMh, string originalMeasurementTakenByM2, bool originalDropPipe, string originalDropPipeInvertDepth, int? originalCappedLaterals, string originalLineWidthId, string originalHydrantAddress, string originalHydroWireWithin10FtOfInversionMH, string originalDistanceToInversionMh, string originalSurfaceGrade, bool originalHydroPulley, bool originalFridgeCart, bool originalTwoPump, bool originalSixBypass, bool originalScaffolding, bool originalWinchExtension, bool originalExtraGenerator, bool originalGreyCableExtension, bool originalEasementMats, bool originalRampsRequired, string originalVideoLength, bool originalDeleted, int originalCompanyId, bool originalCameraSkid, string originalAccessType, bool originalP1Completed, int newWorkId, string newClientId, DateTime? newProposedLiningDate, DateTime? newDeadlineLiningDate, DateTime? newP1Date, DateTime? newM1Date, DateTime? newM2Date, DateTime? newInstallDate, DateTime? newFinalVideo, bool newIssueIdentified, bool newLfsIssue, bool newClientIssue, bool newSalesIssue, bool newIssueGivenToClient, bool newIssueResolved, bool newIssueInvestigation, int? newCxisRemoved, bool newRoboticPrepCompleted, DateTime? newRoboticPrepCompletedDate, string newMeasurementsTakenBy, string newTrafficControl, string newSiteDetails, bool newPipeSizeChange, bool newStandardByPass, string newStandardBypassComments, string newTrafficControlDetails, string newMeasurementType, string newMeasurementFromMh, string newVideoDoneFromMh, string newVideoDoneToMh, string newMeasurementTakenByM2, bool newDropPipe, string newDropPipeInvertDepth, int? newCappedLaterals, string newDistanceToInversionMh, string newLineWidthId, string newHydrantAddress, string newHydroWireWithin10FtOfInversionMH, string newSurfaceGrade, bool newHydroPulley, bool newFridgeCart, bool newTwoPump, bool newSixBypass, bool newScaffolding, bool newWinchExtension, bool newExtraGenerator, bool newGreyCableExtension, bool newEasementMats, bool newRampsRequired, string newVideoLength, bool newDeleted, int newCompanyId, bool newCameraSkid, string newAccessType, bool newP1Completed) { // Update P1 fullLengthLining WorkFullLengthLiningP1 workFullLengthLiningP1 = new WorkFullLengthLiningP1(null); workFullLengthLiningP1.UpdateDirect(originalWorkId, originalCxisRemoved, originalRoboticPrepCompleted, originalRoboticPrepCompletedDate, originalDeleted, originalCompanyId, originalP1Completed, newWorkId, newCxisRemoved, newRoboticPrepCompleted, newRoboticPrepCompletedDate, newDeleted, newCompanyId, newP1Completed); // Update M1 fullLengthLining WorkFullLengthLiningM1 workFullLengthLiningM1 = new WorkFullLengthLiningM1(null); workFullLengthLiningM1.UpdateDirect(originalWorkId, originalMeasurementsTakenBy, originalTrafficControl, originalSiteDetails, originalPipeSizeChange, originalStandardByPass, originalStandardBypassComments, originalTrafficControlDetails, originalMeasurementType, originalMeasurementFromMh, originalVideoDoneFromMh, originalVideoDoneToMh, originalDeleted, originalCompanyId, originalAccessType, newWorkId, newMeasurementsTakenBy, newTrafficControl, newSiteDetails, newPipeSizeChange, newStandardByPass, newStandardBypassComments, newTrafficControlDetails, newMeasurementType, newMeasurementFromMh, newVideoDoneFromMh, newVideoDoneToMh, newDeleted, newCompanyId, newAccessType); // Update M2 fullLengthLining WorkFullLengthLiningM2 workFullLengthLiningM2 = new WorkFullLengthLiningM2(null); workFullLengthLiningM2.UpdateDirect(sectionAssetId, originalWorkId, originalVideoLength, originalMeasurementTakenByM2, originalDropPipe, originalDropPipeInvertDepth, originalCappedLaterals, originalLineWidthId, originalHydrantAddress, originalHydroWireWithin10FtOfInversionMH, originalDistanceToInversionMh, originalSurfaceGrade, originalHydroPulley, originalFridgeCart, originalTwoPump, originalSixBypass, originalScaffolding, originalWinchExtension, originalExtraGenerator, originalGreyCableExtension, originalEasementMats, originalRampsRequired, originalDeleted, originalCompanyId, originalCameraSkid, newWorkId, newVideoLength, newMeasurementTakenByM2, newDropPipe, newDropPipeInvertDepth, newCappedLaterals, newLineWidthId, newHydrantAddress, newHydroWireWithin10FtOfInversionMH, newDistanceToInversionMh, newSurfaceGrade, newHydroPulley, newFridgeCart, newTwoPump, newSixBypass, newScaffolding, newWinchExtension, newExtraGenerator, newGreyCableExtension, newEasementMats, newRampsRequired, newDeleted, newCompanyId, newCameraSkid); // Update fullLengthLining WorkFullLengthLiningGateway workFullLengthLiningGateway = new WorkFullLengthLiningGateway(null); workFullLengthLiningGateway.Update(originalWorkId, originalClientId, originalProposedLiningDate, originalDeadlineLiningDate, originalP1Date, originalM1Date, originalM2Date, originalInstallDate, originalFinalVideo, originalIssueIdentified, originalLfsIssue, originalClientIssue, originalSalesIssue, originalIssueGivenToClient, originalIssueResolved, originalDeleted, originalCompanyId, originalIssueInvestigation, newWorkId, newClientId, newProposedLiningDate, newDeadlineLiningDate, newP1Date, newM1Date, newM2Date, newInstallDate, newFinalVideo, newIssueIdentified, newLfsIssue, newClientIssue, newSalesIssue, newIssueGivenToClient, newIssueResolved, newIssueInvestigation, newDeleted, newCompanyId); }
/// <summary> /// Save /// </summary> /// <param name="countryId">countryId</param> /// <param name="provinceId">provinceId</param> /// <param name="countyId">countyId</param> /// <param name="cityId">cityId</param> /// <param name="projectId">projectId</param> /// <param name="companyId">companyId</param> /// <param name="sectionAssetId">sectionAssetId</param> public void Save(Int64? countryId, Int64? provinceId, Int64? countyId, Int64? cityId, int projectId, int companyId, int sectionAssetId) { RehabAssessmentTDS rehabAssessmentChanges = (RehabAssessmentTDS)Data.GetChanges(); if (rehabAssessmentChanges.WorkDetails.Rows.Count > 0) { RehabAssessmentWorkDetailsGateway rehabAssessmentWorkDetailsGateway = new RehabAssessmentWorkDetailsGateway(rehabAssessmentChanges); // Update sections foreach (RehabAssessmentTDS.WorkDetailsRow workDetailsRow in (RehabAssessmentTDS.WorkDetailsDataTable)rehabAssessmentChanges.WorkDetails) { // Unchanged values int workId = workDetailsRow.WorkID; // Original values // ... General string originalClientId = rehabAssessmentWorkDetailsGateway.GetClientIdOriginal(workId); DateTime? originalPreFlushDate = rehabAssessmentWorkDetailsGateway.GetPreFlushDateOriginal(workId); DateTime? originalPreVideoDate = rehabAssessmentWorkDetailsGateway.GetPreVideoDateOriginal(workId); // ... P1 DateTime? originalP1Date = rehabAssessmentWorkDetailsGateway.GetP1DateOriginal(workId); int? originalCxisRemoved = rehabAssessmentWorkDetailsGateway.GetCxisRemovedOriginal(workId); bool originalRoboticPrepCompleted = rehabAssessmentWorkDetailsGateway.GetRoboticPrepCompletedOriginal(workId); DateTime? originalRoboticPrepCompletedDate = rehabAssessmentWorkDetailsGateway.GetRoboticPrepCompletedDateOriginal(workId); bool originalP1Completed = rehabAssessmentWorkDetailsGateway.GetP1CompletedOriginal(workId); // ... M1 DateTime? originalM1Date = rehabAssessmentWorkDetailsGateway.GetM1DateOriginal(workId); string originalMeasurementTakenBy = rehabAssessmentWorkDetailsGateway.GetMeasurementTakenByOriginal(workId); string originalTrafficControl = rehabAssessmentWorkDetailsGateway.GetTrafficControlOriginal(workId); string originalSiteDetails = rehabAssessmentWorkDetailsGateway.GetSiteDetailsOriginal(workId); bool originalPipeSizeChange = rehabAssessmentWorkDetailsGateway.GetPipeSizeChange(workId); bool originalStandardBypass = rehabAssessmentWorkDetailsGateway.GetStandardBypass(workId); string originalStandardBypassComments = rehabAssessmentWorkDetailsGateway.GetStandardBypassCommentsOriginal(workId); string originalTrafficControlDetails = rehabAssessmentWorkDetailsGateway.GetTrafficControlDetailsOriginal(workId); string originalMeasurementType = rehabAssessmentWorkDetailsGateway.GetMeasurementTypeOriginal(workId); string originalMeasurementFromMh = rehabAssessmentWorkDetailsGateway.GetMeasurementFromMhOriginal(workId); string originalVideoDoneFromMh = rehabAssessmentWorkDetailsGateway.GetVideoDoneFromMhOriginal(workId); string originalVideoDoneToMh = rehabAssessmentWorkDetailsGateway.GetVideoDoneToMhOriginal(workId); string originalMaterial = rehabAssessmentWorkDetailsGateway.GetMaterialOriginal(workId); string originalAccessType = rehabAssessmentWorkDetailsGateway.GetAccessTypeOriginal(workId); // ... Comments string originalComments = rehabAssessmentWorkDetailsGateway.GetCommentsOriginal(workId); // ... M2 string originalVideoDistance = rehabAssessmentWorkDetailsGateway.GetVideoDistanceOriginal(workId); // New variables // ... General string newClientId = rehabAssessmentWorkDetailsGateway.GetClientId(workId); // ... P1 DateTime? newP1Date = rehabAssessmentWorkDetailsGateway.GetP1Date(workId); int? newCxisRemoved = rehabAssessmentWorkDetailsGateway.GetCxisRemoved(workId); bool newRoboticPrepCompleted = rehabAssessmentWorkDetailsGateway.GetRoboticPrepCompleted(workId); DateTime? newRoboticPrepCompletedDate = rehabAssessmentWorkDetailsGateway.GetRoboticPrepCompletedDate(workId); bool newP1Completed = rehabAssessmentWorkDetailsGateway.GetP1Completed(workId); // ... M1 DateTime? newM1Date = rehabAssessmentWorkDetailsGateway.GetM1Date(workId); string newMeasurementTakenBy = rehabAssessmentWorkDetailsGateway.GetMeasurementTakenBy(workId); string newTrafficControl = rehabAssessmentWorkDetailsGateway.GetTrafficControl(workId); string newSiteDetails = rehabAssessmentWorkDetailsGateway.GetSiteDetails(workId); bool newPipeSizeChange = rehabAssessmentWorkDetailsGateway.GetPipeSizeChange(workId); bool newStandardBypass = rehabAssessmentWorkDetailsGateway.GetStandardBypass(workId); string newStandardBypassComments = rehabAssessmentWorkDetailsGateway.GetStandardBypassComments(workId); string newTrafficControlDetails = rehabAssessmentWorkDetailsGateway.GetTrafficControlDetails(workId); string newMeasurementType = rehabAssessmentWorkDetailsGateway.GetMeasurementType(workId); string newMeasurementFromMh = rehabAssessmentWorkDetailsGateway.GetMeasurementFromMh(workId); string newVideoDoneFromMh = rehabAssessmentWorkDetailsGateway.GetVideoDoneFromMh(workId); string newVideoDoneToMh = rehabAssessmentWorkDetailsGateway.GetVideoDoneToMh(workId); string newMaterial = rehabAssessmentWorkDetailsGateway.GetMaterial(workId); string newAccessType = rehabAssessmentWorkDetailsGateway.GetAccessType(workId); // ... M2 string newVideoDistance = rehabAssessmentWorkDetailsGateway.GetVideoDistance(workId); // ... Comments string newComments = rehabAssessmentWorkDetailsGateway.GetComments(workId); // ... RA DateTime? newPreFlushDate = rehabAssessmentWorkDetailsGateway.GetPreFlushDate(workId); DateTime? newPreVideoDate = rehabAssessmentWorkDetailsGateway.GetPreVideoDate(workId); // ... FLL WorkID int workIdFll = 0; if (!workDetailsRow.IsWorkIDFllNull()) workIdFll = workDetailsRow.WorkIDFll; if (workIdFll != 0) // ... Has Fll work { WorkFullLengthLiningGateway workFullLengthLiningGateway = new WorkFullLengthLiningGateway(); workFullLengthLiningGateway.LoadByWorkId(workIdFll, companyId); DateTime? originalProposedLiningDate = workFullLengthLiningGateway.GetProposedLiningDate(workIdFll); DateTime? originalDeadlineLiningDate = workFullLengthLiningGateway.GetDeadlineLiningDate(workIdFll); DateTime? originalM2Date = workFullLengthLiningGateway.GetM2Date(workIdFll); DateTime? originalInstallDate = workFullLengthLiningGateway.GetInstallDate(workIdFll); DateTime? originalFinalVideoDate = workFullLengthLiningGateway.GetFinalVideoDate(workIdFll); bool originalIssueIdentified = workFullLengthLiningGateway.GetIssueIdentified(workIdFll); bool originalIssueLFS = workFullLengthLiningGateway.GetIssueLFS(workIdFll); bool originalIssueClient = workFullLengthLiningGateway.GetIssueClient(workIdFll); bool originalIssueSales = workFullLengthLiningGateway.GetIssueSales(workIdFll); bool originalIssueGivenToClient = workFullLengthLiningGateway.GetIssueGivenToClient(workIdFll); bool originalIssueResolved = workFullLengthLiningGateway.GetIssueResolved(workIdFll); bool originalIssueInvestigation = workFullLengthLiningGateway.GetIssueInvestigation(workIdFll); // ... Update work UpdateFllWork(sectionAssetId, countryId, provinceId, countyId, cityId, workIdFll, originalClientId, originalProposedLiningDate, originalDeadlineLiningDate, originalP1Date, originalM1Date, originalM2Date, originalInstallDate, originalFinalVideoDate, originalIssueIdentified, originalIssueLFS, originalIssueClient, originalIssueSales, originalIssueGivenToClient, originalIssueResolved, originalIssueInvestigation, originalCxisRemoved, originalRoboticPrepCompleted, originalRoboticPrepCompletedDate, originalMeasurementTakenBy, originalTrafficControl, originalSiteDetails, originalPipeSizeChange, originalStandardBypass, originalStandardBypassComments, originalTrafficControlDetails, originalMeasurementType, originalMeasurementFromMh, originalVideoDoneFromMh, originalVideoDoneToMh, originalVideoDistance, originalComments, false, companyId, originalMaterial, originalAccessType, originalP1Completed, newClientId, originalProposedLiningDate, originalDeadlineLiningDate, newP1Date, newM1Date, originalM2Date, originalInstallDate, originalFinalVideoDate, originalIssueIdentified, originalIssueLFS, originalIssueClient, originalIssueSales, originalIssueGivenToClient, originalIssueResolved, originalIssueInvestigation, newCxisRemoved, newRoboticPrepCompleted, newRoboticPrepCompletedDate, newMeasurementTakenBy, newMaterial, newTrafficControl, newSiteDetails, newPipeSizeChange, newStandardBypass, newStandardBypassComments, newTrafficControlDetails, newMeasurementType, newMeasurementFromMh, newVideoDoneFromMh, newVideoDoneToMh, newVideoDistance, newComments, false, companyId, newAccessType, newP1Completed); UpdateRaWork(workId, originalPreFlushDate, originalPreVideoDate, newPreFlushDate, newPreVideoDate, companyId); } else { if (newClientId != "" || newP1Date.HasValue || newCxisRemoved.HasValue || newM1Date.HasValue || newMeasurementTakenBy != "" || newMaterial != "" || newTrafficControl != "" || newMeasurementType != "" || newMeasurementFromMh != "" || newVideoDoneFromMh != "" || newVideoDoneToMh != "" || newStandardBypassComments != "" || newTrafficControlDetails != "" || newVideoDistance != "") // Insert Fll work { WorkFullLengthLining workFullLengthLining = new WorkFullLengthLining(null); workIdFll = workFullLengthLining.InsertDirectEmptyWorks(projectId, sectionAssetId, null, "", null, null, null, null, null, null, null, false, false, false, false, false, false, false, companyId, false, "", ""); WorkFullLengthLiningGateway workFullLengthLiningGateway = new WorkFullLengthLiningGateway(); workFullLengthLiningGateway.LoadByWorkId(workIdFll, companyId); DateTime? originalProposedLiningDate = workFullLengthLiningGateway.GetProposedLiningDate(workIdFll); DateTime? originalDeadlineLiningDate = workFullLengthLiningGateway.GetDeadlineLiningDate(workIdFll); DateTime? originalM2Date = workFullLengthLiningGateway.GetM2Date(workIdFll); DateTime? originalInstallDate = workFullLengthLiningGateway.GetInstallDate(workIdFll); DateTime? originalFinalVideoDate = workFullLengthLiningGateway.GetFinalVideoDate(workIdFll); bool originalIssueIdentified = workFullLengthLiningGateway.GetIssueIdentified(workIdFll); bool originalIssueLFS = workFullLengthLiningGateway.GetIssueLFS(workIdFll); bool originalIssueClient = workFullLengthLiningGateway.GetIssueClient(workIdFll); bool originalIssueSales = workFullLengthLiningGateway.GetIssueSales(workIdFll); bool originalIssueGivenToClient = workFullLengthLiningGateway.GetIssueGivenToClient(workIdFll); bool originalIssueResolved = workFullLengthLiningGateway.GetIssueResolved(workIdFll); bool originalIssueInvestigation = workFullLengthLiningGateway.GetIssueInvestigation(workIdFll); // ... Update work UpdateFllWork(sectionAssetId, countryId, provinceId, countyId, cityId, workIdFll, originalClientId, originalProposedLiningDate, originalDeadlineLiningDate, originalP1Date, originalM1Date, originalM2Date, originalInstallDate, originalFinalVideoDate, originalIssueIdentified, originalIssueLFS, originalIssueClient, originalIssueSales, originalIssueGivenToClient, originalIssueResolved, originalIssueInvestigation, originalCxisRemoved, originalRoboticPrepCompleted, originalRoboticPrepCompletedDate, originalMeasurementTakenBy, originalTrafficControl, originalSiteDetails, originalPipeSizeChange, originalStandardBypass, originalStandardBypassComments, originalTrafficControlDetails, originalMeasurementType, originalMeasurementFromMh, originalVideoDoneFromMh, originalVideoDoneToMh, originalVideoDistance, originalComments, false, companyId, originalMaterial, originalAccessType, originalP1Completed, newClientId, originalProposedLiningDate, originalDeadlineLiningDate, newP1Date, newM1Date, originalM2Date, originalInstallDate, originalFinalVideoDate, originalIssueIdentified, originalIssueLFS, originalIssueClient, originalIssueSales, originalIssueGivenToClient, originalIssueResolved, originalIssueInvestigation, newCxisRemoved, newRoboticPrepCompleted, newRoboticPrepCompletedDate, newMeasurementTakenBy, newMaterial, newTrafficControl, newSiteDetails, newPipeSizeChange, newStandardBypass, newStandardBypassComments, newTrafficControlDetails, newMeasurementType, newMeasurementFromMh, newVideoDoneFromMh, newVideoDoneToMh, newVideoDistance, newComments, false, companyId, newAccessType, newP1Completed); UpdateRaWork(workId, originalPreFlushDate, originalPreVideoDate, newPreFlushDate, newPreVideoDate, companyId); } else // ... Do not have Fll work { UpdateRaWork(workId, originalPreFlushDate, originalPreVideoDate, newPreFlushDate, newPreVideoDate, companyId); } } // JL Section WorkID int sectionWorkId = 0; WorkGateway workGatewayForJL = new WorkGateway(); workGatewayForJL.LoadByProjectIdAssetIdWorkType(projectId, sectionAssetId, "Junction Lining Section", companyId); if (workGatewayForJL.Table.Rows.Count > 0) { sectionWorkId = workGatewayForJL.GetWorkId(sectionAssetId, "Junction Lining Section", projectId); WorkJunctionLiningSectionGateway workJunctionLiningSectionGateway = new WorkJunctionLiningSectionGateway(); workJunctionLiningSectionGateway.LoadByWorkId(sectionWorkId, companyId); // get old values of section int numLats = workJunctionLiningSectionGateway.GetNumLats(sectionWorkId); int notLinedYet = workJunctionLiningSectionGateway.GetNotLinedYet(sectionWorkId); bool allMeasured = workJunctionLiningSectionGateway.GetAllMeasured(sectionWorkId); bool deleted = workJunctionLiningSectionGateway.GetDeleted(sectionWorkId); string issueWithLaterals = workJunctionLiningSectionGateway.GetIssueWithLaterals(sectionWorkId); int notMeasuredYet = workJunctionLiningSectionGateway.GetNotMeasuredYet(sectionWorkId); int notDeliveredYet = workJunctionLiningSectionGateway.GetNotDeliveredYet(sectionWorkId); string trafficControl = workJunctionLiningSectionGateway.GetTrafficControl(sectionWorkId); string trafficControlDetails = workJunctionLiningSectionGateway.GetTrafficControlDetails(sectionWorkId); bool standardBypass = workJunctionLiningSectionGateway.GetStandardBypass(sectionWorkId); string standardBypassComments = workJunctionLiningSectionGateway.GetStandardBypassComments(sectionWorkId); int availableToLine = workJunctionLiningSectionGateway.GetAvailableToLine(sectionWorkId); WorkJunctionLiningSection workJunctionLiningSection = new WorkJunctionLiningSection(null); workJunctionLiningSection.UpdateDirect(sectionWorkId, numLats, notLinedYet, allMeasured, deleted, issueWithLaterals, notMeasuredYet, notDeliveredYet, companyId, trafficControl, trafficControlDetails, standardBypass, standardBypassComments, availableToLine, numLats, notLinedYet, allMeasured, issueWithLaterals, notMeasuredYet, notDeliveredYet, newTrafficControl, newTrafficControlDetails, newStandardBypass, newStandardBypassComments, availableToLine); } } } }