public void Execute() { if (!viewModel.ValidatableView.Validate()) { return; } if (!DateCheck()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } if (viewModel.Joint.LoweringDate == DateTime.MinValue) { viewModel.Joint.LoweringDate = null; } var joints = repo.RepoJoint.GetActiveByNumber(viewModel.Joint); foreach (var joint in joints) { repo.RepoJoint.Evict(joint); } if (joints != null && joints.Count > 0) { notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.Joint_Duplicate), viewModel.Number), Program.LanguageManager.GetString(StringResources.Joint_DuplicateHeader)); viewModel.Number = string.Empty; } else { if (viewModel.Joint.Status == Domain.Entity.Construction.JointStatus.Withdrawn) { viewModel.SaveOrUpdateJointCommand.Execute(); } else if (viewModel.MakeTheConnection()) { viewModel.SaveOrUpdateJointCommand.Execute(); } else { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.Joint_IncorrectDiameter), Program.LanguageManager.GetString(StringResources.Joint_IncorrectDiameterHeader)); } viewModel.NewJoint(); } RefreshVisualStateEvent(); }
public void Execute() { if (((viewModel.StartJoint != null && viewModel.EndJoint != null) || (viewModel.startPK != int.MinValue && viewModel.endPK != int.MinValue))) { if (viewModel.startPK <= viewModel.endPK) { viewModel.canCreateReport = true; PipelineTracing(); if (path != null) { if (viewModel.ReportType == ReportType.TracingReport) { viewModel.ReportDataSource = tracingDataList; } else if (viewModel.ReportType == ReportType.UsedProductReport) { GetUsedProduct(); IEnumerable <PartData> sortedList = resultUsedProductList.OrderBy(_ => _.PartType).ThenBy(_ => _.Number); viewModel.ReportDataSource = sortedList; } path = null; } else { viewModel.canCreateReport = false; notify.ShowInfo(Program.LanguageManager.GetString(StringResources.TracingReport_PointNotConnectedMessage), Program.LanguageManager.GetString(StringResources.TracingReport_PointNotConnectedHeader)); log.Warn(viewModel.ReportType.ToString() + " report was empty because start and end point doesn't connected"); } } else { viewModel.canCreateReport = false; notify.ShowInfo(Program.LanguageManager.GetString(StringResources.TracingReport_KPSwappedMessage), Program.LanguageManager.GetString(StringResources.TracingReport_KPSwappedHeader)); log.Warn("KP limits not valid!" + "Diapason: start KP= " + viewModel.StartPK.ToString() + " end KP= " + viewModel.EndPK.ToString()); } } else { viewModel.canCreateReport = false; notify.ShowInfo(Program.LanguageManager.GetString(StringResources.TracingReport_DiapasonIsEmptyMessage), Program.LanguageManager.GetString(StringResources.TracingReport_DiapasonIsEmptyHeader)); log.Warn(viewModel.ReportType.ToString() + " diapason for this report was empty"); } }
public void Execute() { if (CanExecute()) { string sourceFile = Path.Combine(Directories.TargetPath, viewModel.SelectedFile.NewName); string tempFile = Path.Combine(Directories.TargetPathForView, Guid.NewGuid() + viewModel.SelectedFile.FileName.Substring(viewModel.SelectedFile.FileName.LastIndexOf('.'))); if (!Directory.Exists(Directories.TargetPathForView)) { Directory.CreateDirectory(Directories.TargetPathForView); DirectoryInfo directoryInfo = new DirectoryInfo(Directories.TargetPathForView); directoryInfo.Attributes |= FileAttributes.Hidden; } if (File.Exists(sourceFile)) { File.Copy(sourceFile, tempFile); System.Diagnostics.Process.Start(tempFile); } } else { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.ExternalFiles_FileViewDownloadFail), Program.LanguageManager.GetString(StringResources.ExternalFiles_FileViewDownloadFailHeader)); } }
public void Execute() { if (Prizm.Main.Common.DateExtension.CheckDiapason(viewModel.StartDate, viewModel.EndDate)) { try { data = repo.GetPipesFromInspection(viewModel.StartDate, viewModel.EndDate); IncomingReportsXtraReport report = new IncomingReportsXtraReport(); SetDataSortByColumn("number"); data.TranslateStatus <PartInspectionStatus>(SQLProvider.TableNameForInspectionReport, SQLProvider.ColumnNameForInspectionStatus, viewModel.localizedInspectionStatus); report.DataSource = data; report.FootersVisibility = viewModel.IsFooterVisible; report.CreateDocument(); var tool = new ReportPrintTool(report); tool.AutoShowParametersPanel = false; tool.ShowPreview(); } catch (RepositoryException ex) { log.Error(string.Concat(ex.InnerException.Message, ex.Message)); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.Message_FailureReportDate), Program.LanguageManager.GetString(StringResources.Message_FailureReportDateHeader)); log.Warn("Date limits not valid!" + "Diapason: start date= " + viewModel.StartDate.ToString() + " end date= " + viewModel.EndDate.ToString()); } }
public void Execute() { if (!viewModel.InspectionTestResults.All(x => x.Date.IsValid())) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } foreach (InspectionTestResult t in viewModel.InspectionTestResults) { if (t.Status != PartInspectionStatus.Pending && t.Inspectors.Count <= 0) { numberOfOperationWithoutInspectors++; } } if (numberOfOperationWithoutInspectors == 0) { try { viewModel.ConvertedPart.InspectionStatus = viewModel.ConvertedPart.GetPartInspectionStatus(); repo.BeginTransaction(); foreach (InspectionTestResult itr in viewModel.InspectionTestResults) { repo.SaveOrUpdate(itr); } repo.Commit(); foreach (InspectionTestResult itr in viewModel.InspectionTestResults) { repo.Evict(itr); } notify.ShowNotify(string.Concat(Program.LanguageManager.GetString(StringResources.PartInspection_InspectionsSaved), viewModel.SelectedElement.Number), Program.LanguageManager.GetString(StringResources.PartInspection_InspectionsSavedHeader)); log.Info(string.Format("The Inspection Test Results for entity #{0}, id:{1} has been saved in DB.", viewModel.SelectedElement.Number, viewModel.SelectedElement.Id)); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } RefreshVisualStateEvent(); } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResult), Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResultHeader)); numberOfOperationWithoutInspectors = 0; } }
public void Execute() { if (viewModel.Spool.IsAvailableToJoint && viewModel.Spool.ConstructionStatus != PartConstructionStatus.Welded) { if (notify.ShowYesNo( Program.LanguageManager.GetString(StringResources.Spool_DeactivationQuestion), Program.LanguageManager.GetString(StringResources.Spool_DeactivationQuestionHeader))) { try { viewModel.PipeLength = viewModel.PipeLength + viewModel.SpoolLength; viewModel.Spool.IsActive = false; viewModel.ModifiableView.IsModified = true; viewModel.ModifiableView.UpdateState(); notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString( StringResources.Spool_Deactivated), viewModel.SpoolNumber), Program.LanguageManager.GetString( StringResources.Spool_DeactivatedHeader)); log.Info(string.Format("The Spool #{0}, id:{1} has been deactivated.", viewModel.Pipe.Number, viewModel.Pipe.Id)); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { //Refresh property so that binded control become unchecked viewModel.SpoolIsActive = false; viewModel.SpoolIsActive = true; } } else { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.Message_DeactivationConnectedSpool), Program.LanguageManager.GetString(StringResources.Message_DeactivationConnectedSpoolHeader)); //Refresh property so that binded control become unchecked viewModel.SpoolIsActive = false; viewModel.SpoolIsActive = true; } RefreshVisualStateEvent(); }
public void Execute() { if (!IsComponentsConnected(viewModel.Component)) { if (notify.ShowYesNo( Program.LanguageManager.GetString(StringResources.Message_ComponentDeactivationQuestion), Program.LanguageManager.GetString(StringResources.Message_ComponentDeactivationQuestionHeader))) { try { viewModel.ComponentIsActive = false; viewModel.ModifiableView.IsModified = true; viewModel.ModifiableView.UpdateState(); notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString( StringResources.ComponentNewEdit_DeactivatedAction), viewModel.Number), Program.LanguageManager.GetString( StringResources.ComponentNewEdit_DeactivatedActionHeader)); log.Info(string.Format("The entity #{0}, id:{1} has been deactivated.", viewModel.Component.Number, viewModel.Component.Id)); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { //Refresh property so that binded control become unchecked viewModel.ComponentIsActive = false; viewModel.ComponentIsActive = true; } } else { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.Message_DeactivationConnectedComponent), Program.LanguageManager.GetString(StringResources.Message_DeactivationConnectedComponentHeader)); //Refresh property so that binded control become unchecked viewModel.ComponentIsActive = false; viewModel.ComponentIsActive = true; } RefreshVisualStateEvent(); }
public void Execute() { if (CanExecute()) { string sourceFile = Path.Combine(Directories.TargetPath, viewModel.SelectedFile.NewName); if (File.Exists(sourceFile)) { File.Copy(sourceFile, viewModel.SelectedPath); notify.ShowNotify(Program.LanguageManager.GetString(StringResources.ExternalFiles_FileDownloadSuccess), Program.LanguageManager.GetString(StringResources.ExternalFiles_FileDownloadHeader)); } } else { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.ExternalFiles_FileViewDownloadFail), Program.LanguageManager.GetString(StringResources.ExternalFiles_FileViewDownloadFailHeader)); } }
public void Execute() { if (Prizm.Main.Common.DateExtension.CheckDiapason(viewModel.StartDate, viewModel.EndDate)) { if (viewModel.TracingMode == TracingModeEnum.TracingByNumber) { IList <AuditLog> results = new List <AuditLog>(); try { results = repo.GetRecordsByNumber(viewModel.Number, viewModel.StartDate, viewModel.EndDate, viewModel.OperationTypes); } catch (RepositoryException ex) { log.Warn("AuditSearchCommandExecute " + ex.ToString()); notify.ShowWarning(Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Message), Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Header)); } viewModel.AuditResults = new BindingList <AuditLog>(results); } else if (viewModel.TracingMode == TracingModeEnum.TracingByUser) { IList <AuditLog> results = new List <AuditLog>(); try { results = repo.GetRecordsByUser(viewModel.SelectedUser, viewModel.StartDate, viewModel.EndDate, viewModel.OperationTypes); } catch (RepositoryException ex) { log.Warn("AuditSearchCommandExecute " + ex.ToString()); notify.ShowWarning(Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Message), Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Header)); } viewModel.AuditResults = new BindingList <AuditLog>(results); } } else { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!" + "Diapason: start date= " + viewModel.StartDate.ToString() + " end date= " + viewModel.EndDate.ToString()); } }
public void Execute() { if (!viewModel.Date.IsValid()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } if (string.IsNullOrWhiteSpace(viewModel.Order.Number)) { viewModel.IsSaved = false; notify.ShowError( Program.LanguageManager.GetString(StringResources.PurchaseOrder_ValueRequired), Program.LanguageManager.GetString(StringResources.PurchaseOrder_ErrorHeader) ); } else { try { viewModel.Order.Number = viewModel.Order.Number.ToUpper(); repo.BeginTransaction(); repo.SaveOrUpdate(viewModel.Order); repo.Commit(); viewModel.IsSaved = true; log.Info(string.Format("The entity #{0}, id:{1} has been saved in DB.", viewModel.Order.Number, viewModel.Order.Id)); } catch (RepositoryException ex) { log.Error(ex.Message); } } }
public void Execute() { try { if (Prizm.Main.Common.DateExtension.CheckDiapason(viewModel.WeldDateFrom, viewModel.WeldDateTo)) { viewModel.Data = repo.GetPipelineElements(viewModel.WeldDateFrom, viewModel.WeldDateTo); if (viewModel.Data == null || viewModel.Data.Rows.Count <= 0) { log.Warn("Construction report: Data Table for Weld by Date report is NULL or empty"); } var report = new WeldDateXtraReport(); report.DataSource = viewModel.WeldDateReportDataList; report.FootersVisibility = viewModel.IsFooterVisible; var tool = new ReportPrintTool(report); tool.AutoShowParametersPanel = false; tool.ShowPreview(); RefreshVisualStateEvent(); } else { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.Message_FailureReportDate), Program.LanguageManager.GetString(StringResources.Message_FailureReportDateHeader)); log.Warn("Date limits not valid!" + "Diapason: start date= " + viewModel.WeldDateFrom.ToString() + " end date= " + viewModel.WeldDateTo.ToString()); } } catch (RepositoryException ex) { log.Warn(this.GetType().Name + " | " + ex.ToString()); notify.ShowWarning(Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Message), Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Header)); } }
public void Execute() { if (!DateCheck()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } foreach (JointWeldResult w in viewModel.JointWeldResults) { if (w.Welders.Count <= 0) { numberOfWeldOperationWithoutWelders++; } } foreach (JointTestResult t in viewModel.JointTestResults) { if (t.Inspectors.Count <= 0) { numberOfControlOperationWithoutInspectors++; } } if (viewModel.ValidatableView.Validate()) { if (numberOfWeldOperationWithoutWelders == 0) { if (numberOfControlOperationWithoutInspectors == 0) { if (viewModel.Joint.LoweringDate == DateTime.MinValue) { viewModel.Joint.LoweringDate = null; } var joints = repo.RepoJoint.GetActiveByNumber(viewModel.Joint); foreach (var joint in joints) { repo.RepoJoint.Evict(joint); } if (joints != null && joints.Count > 0) { notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.Joint_Duplicate), viewModel.Number), Program.LanguageManager.GetString(StringResources.Joint_DuplicateHeader)); viewModel.Number = string.Empty; } else { numberOfWeldOperationWithoutWelders = 0; numberOfControlOperationWithoutInspectors = 0; if (viewModel.Joint.Status == Domain.Entity.Construction.JointStatus.Withdrawn) { viewModel.SaveOrUpdateJointCommand.Execute(); } else if (viewModel.MakeTheConnection()) { viewModel.SaveOrUpdateJointCommand.Execute(); } else { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.Joint_IncorrectDiameter), Program.LanguageManager.GetString(StringResources.Joint_IncorrectDiameterHeader)); } } RefreshVisualStateEvent(); } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResult), Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResultHeader)); numberOfControlOperationWithoutInspectors = 0; } } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectWeldersForOperation), Program.LanguageManager.GetString(StringResources.SelectWeldersForOperationHeader)); numberOfWeldOperationWithoutWelders = 0; } } }
public void Execute() { if (!viewModel.validatableView.Validate()) { return; } if (!viewModel.Date.IsValid()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } if (string.IsNullOrWhiteSpace(viewModel.Number)) { notify.ShowError(Program.LanguageManager.GetString(StringResources.ReleaseNoteNewEdit_MissingReleaseNoteNumber), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); return; } try { var emptyRailcars = viewModel.Railcars.Where(x => x.Pipes.Count == 0).ToList <SimpleRailcar>(); var empty = viewModel.Railcars.Where(x => x.Pipes.Count == 0).ToList <SimpleRailcar>(); foreach (var item in empty) { viewModel.Railcars.Remove(item); } foreach (var r in viewModel.Railcars) { r.ReleaseNote = viewModel.ReleaseNote; } viewModel.ReleaseNote.Number = viewModel.ReleaseNote.Number.ToUpper(); foreach (var item in viewModel.Railcars) { item.Number = item.Number.ToUpper(); } repos.BeginTransaction(); repos.SimpleNoteRepo.SaveOrUpdate(viewModel.ReleaseNote); var filesViewModel = viewModel.FilesFormViewModel; //saving attached existingDocuments bool fileCopySuccess = true; if (null != filesViewModel) { filesViewModel.FileRepo = repos.FileRepo; viewModel.FilesFormViewModel.Item = viewModel.ReleaseNote.Id; if (!viewModel.FilesFormViewModel.TrySaveFiles(viewModel.ReleaseNote)) { fileCopySuccess = false; repos.Rollback(); } } if (fileCopySuccess) { repos.Commit(); } repos.SimpleNoteRepo.Evict(viewModel.ReleaseNote); viewModel.ModifiableView.IsModified = false; viewModel.ModifiableView.Id = viewModel.ReleaseNote.Id; if (fileCopySuccess) { if (null != filesViewModel) { filesViewModel.DetachFileEntities(); } notify.ShowSuccess(Program.LanguageManager.GetString(StringResources.ReleaseNoteNewEdit_SaveSuccess), Program.LanguageManager.GetString(StringResources.ReleaseNoteNewEdit_SaveSuccessHeader)); log.Info(string.Format("The entity #{0}, id:{1} has been saved in DB.", viewModel.ReleaseNote.Number, viewModel.ReleaseNote.Id)); } else { notify.ShowError(Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied), Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied_Header)); log.Info(string.Format("File for entity #{0}, id:{1} hasn't been saved.", viewModel.ReleaseNote.Number, viewModel.ReleaseNote.Id)); } } catch (RepositoryException ex) { log.Error(String.Format("An error occured on saving release note {0},{1}: {2}", viewModel.ReleaseNote.Id, viewModel.ReleaseNote.Number, ex.Message)); notify.ShowFailure(ex.InnerException.Message, ex.Message); } RefreshVisualStateEvent(); }
public void Execute() { if (viewModel.Pipe.Railcar == null) { if (notify.ShowYesNo( Program.LanguageManager.GetString(StringResources.MillPipe_DeactivatePipeQuestion), Program.LanguageManager.GetString(StringResources.MillPipe_DeactivatePipeQuestionHeader))) { try { viewModel.Pipe.IsActive = false; viewModel.CheckStatus(); viewModel.UpdatePipeSubStatus(); viewModel.Pipe.PipeTestResult = viewModel.PipeTestResults; repo.BeginTransaction(); repo.RepoPipe.SaveOrUpdate(viewModel.Pipe); repo.Commit(); repo.RepoPipe.Evict(viewModel.Pipe); viewModel.ModifiableView.IsEditMode = false; viewModel.ModifiableView.IsModified = false; viewModel.ModifiableView.UpdateState(); notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString( StringResources.Pipe_Deactivated), viewModel.Number), Program.LanguageManager.GetString( StringResources.Pipe_DeactivatedHeader)); log.Info(string.Format("The Pipe #{0}, id:{1} has been deactivated.", viewModel.Pipe.Number, viewModel.Pipe.Id)); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { //Refresh property so that binded control become unchecked viewModel.PipeIsActive = false; viewModel.PipeIsActive = true; } } else if (viewModel.PipeStatus == PipeMillStatus.Shipped) { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.MillPipe_DeactivatePipeShippedError), Program.LanguageManager.GetString(StringResources.MillPipe_DeactivatePipeShippedErrorHeader)); } else { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.MillPipe_DeactivatePipeInRailcarError), Program.LanguageManager.GetString(StringResources.MillPipe_DeactivatePipeInRailcarErrorHeader)); } RefreshVisualStateEvent(); }
public void Execute() { if (!viewModel.ValidatableView.Validate()) { return; } if (!DateValidate()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } //Uppercase for db viewModel.Pipe.Plate.Number = viewModel.Pipe.Plate.Number.ToUpper(); viewModel.Pipe.Number = viewModel.Pipe.Number.ToUpper(); var p = repo.RepoPipe.GetActiveByNumber(viewModel.Pipe); foreach (var pipe in p) { repo.RepoPipe.Evict(pipe); } if (p != null && p.Count > 0) { notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.MillPipe_ExistingNumberError), viewModel.Number), Program.LanguageManager.GetString(StringResources.MillPipe_ExistingNumberErrorHeader)); viewModel.Number = string.Empty; } else { if (viewModel.CheckStatus()) { try { viewModel.UpdatePipeSubStatus(); viewModel.Pipe.PipeTestResult = viewModel.PipeTestResults; repo.BeginTransaction(); repo.RepoPipe.SaveOrUpdate(viewModel.Pipe); var filesViewModel = viewModel.FilesFormViewModel; //saving attached documents bool fileCopySuccess = true; if (null != filesViewModel) { filesViewModel.FileRepo = repo.FileRepo; viewModel.FilesFormViewModel.Item = viewModel.Pipe.Id; if (!viewModel.FilesFormViewModel.TrySaveFiles(viewModel.Pipe)) { fileCopySuccess = false; repo.Rollback(); } } repo.Commit(); repo.RepoPipe.Evict(viewModel.Pipe); if (fileCopySuccess) { if (null != filesViewModel) { filesViewModel.DetachFileEntities(); } notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString(StringResources.MillPipe_PipeSaved), viewModel.Number), Program.LanguageManager.GetString(StringResources.MillPipe_PipeSavedHeader)); } else { notify.ShowError(Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied), Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied_Header)); } viewModel.ModifiableView.IsModified = false; viewModel.ModifiableView.UpdateState(); notify.ShowNotify( string.Concat(Program.LanguageManager.GetString(StringResources.MillPipe_PipeSaved), viewModel.Number), Program.LanguageManager.GetString(StringResources.MillPipe_PipeSavedHeader)); log.Info(string.Format("The entity #{0}, id:{1} has been saved in DB.", viewModel.Pipe.Number, viewModel.Pipe.Id)); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.MillPipe_ErrorEditingInspectionOperationPipeInRailcar), Program.LanguageManager.GetString(StringResources.MillPipe_PipeSavedHeader)); } } RefreshVisualStateEvent(); }
public void Execute() { try { if (Prizm.Main.Common.DateExtension.CheckDiapason(viewModel.FromDate, viewModel.ToDate)) { repo.Clear(); if (viewModel.Statuses.Count > 0) { bool?status; switch (viewModel.Activity) { case ActivityCriteria.StatusActive: status = true; break; case ActivityCriteria.StatusUnactive: status = false; break; default: status = null; break; } IList <Construction.Joint> list = repo.SearchJoint ( viewModel.Number, viewModel.Statuses, viewModel.FromDate, viewModel.ToDate, viewModel.PegNumber, status, Program.ThisWorkstationType ); list.OrderBy(n => n.Number).ToList(); viewModel.Joints.Clear(); foreach (var item in list) { viewModel.Joints.Add(item); } viewModel.Amount = list.Count(); RefreshVisualStateEvent(); } } else { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!" + "Diapason: start date= " + viewModel.FromDate.ToString() + " end date= " + viewModel.ToDate.ToString()); } } catch (RepositoryException ex) { log.Warn(this.GetType().Name + " | " + ex.ToString()); notify.ShowWarning(Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Message), Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Header)); } }
public void Execute() { if (!viewModel.validatableView.Validate()) { notify.ShowError( Program.LanguageManager.GetString(StringResources.Settings_CheckValues), Program.LanguageManager.GetString(StringResources.Settings_ErrorHeader)); return; } if (!DateCheck()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } StringBuilder types = new StringBuilder(); List <string> typesList = new List <string>(); bool controlValidation = true; foreach (PipeMillSizeType s in viewModel.PipeMillSizeType) { if (s.Thickness == 0 || s.SeamType == null || s.Length == 0 || s.Diameter == 0) { typesList.Add(s.Type); controlValidation = false; } foreach (PipeTest t in s.PipeTests) { if (t.Code == string.Empty || t.Name == string.Empty || t.Category == null) { typesList.Add(s.Type); controlValidation = false; } } } if (controlValidation) { try { repos.BeginTransaction(); SaveWelders(); SaveInspectors(); SaveMillSizeTypes(); SavePlateManufacturers(); repos.ProjectRepo.SaveOrUpdate(viewModel.CurrentProjectSettings); SaveRoles(); SaveUsers(); SaveCategories(); SaveJointOperations(); SaveComponentryType(); SaveInspectorCertificateType(); SaveSeamType(); repos.Commit(); EvictMillSizeTypes(); EvictWelders(); EvictInspectors(); EvictPlateManufacturers(); EvictRoles(); EvictUsers(); EvictJointOperations(); repos.ProjectRepo.Evict(viewModel.CurrentProjectSettings); EvictCategories(); EvictComponentryType(); EvictInspectorCertificateType(); EvictSeamType(); viewModel.ModifiableView.IsModified = false; notify.ShowNotify( Program.LanguageManager.GetString(StringResources.Settings_SetupSaves), Program.LanguageManager.GetString(StringResources.Settings_SetupSavedHeader)); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } RefreshVisualStateEvent(); } else { foreach (string s in typesList.Distinct()) { types.Append(s + " "); } notify.ShowError (Program.LanguageManager.GetString(StringResources.Settings_PipeControlOperationValidation) + types.ToString(), Program.LanguageManager.GetString(StringResources.Settings_PipeControlOperationValidationHeader)); } }
public void Execute() { if (!viewModel.ValidatableView.Validate()) { return; } foreach (var result in viewModel.InspectionTestResults) { if (!result.Date.IsValid()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } } var c = repos.ComponentRepo.GetActiveByNumber(viewModel.Component); foreach (var component in c) { repos.ComponentRepo.Evict(component); } var duplicateNumber = repo.GetAllActiveDuplicateEntityByNumber(viewModel.Number, viewModel.Component.Id).Distinct(new DuplicateNumberEntityComparer()).ToList(); String resultString = string.Empty; if (duplicateNumber != null && duplicateNumber.Count > 0) { for (int i = 0; i <= duplicateNumber.Count - 1; i++) { DuplicateNumberEntityType translate = (DuplicateNumberEntityType)Enum.Parse(typeof(DuplicateNumberEntityType), duplicateNumber[i].EntityType); resultString = resultString + viewModel.localizedAllType[(int)((object)translate) - 1] + (i < duplicateNumber.Count - 1 ? ", " : "");; } notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.DuplicateEntity_Message) + resultString), Program.LanguageManager.GetString(StringResources.DuplicateEntity_MessageHeader)); viewModel.Number = string.Empty; } else { foreach (InspectionTestResult t in viewModel.InspectionTestResults) { if (t.Status != PartInspectionStatus.Pending && t.Inspectors.Count <= 0) { numberOfOperationWithoutInspectors++; } } if (numberOfOperationWithoutInspectors == 0) { try { viewModel.Component.InspectionStatus = viewModel.Component.GetPartInspectionStatus(); viewModel.Component.ToExport = true; repos.BeginTransaction(); viewModel.Component.Number = viewModel.Component.Number.ToUpper(); repos.ComponentRepo.SaveOrUpdate(viewModel.Component); var filesViewModel = viewModel.FilesFormViewModel; //saving attached documents bool fileCopySuccess = true; if (null != filesViewModel) { filesViewModel.FileRepo = repos.FileRepo; viewModel.FilesFormViewModel.Item = viewModel.Component.Id; if (!viewModel.FilesFormViewModel.TrySaveFiles(viewModel.Component)) { fileCopySuccess = false; repos.Rollback(); } } if (fileCopySuccess) { repos.Commit(); } repos.ComponentRepo.Evict(viewModel.Component); viewModel.ModifiableView.IsModified = false; viewModel.ModifiableView.Id = viewModel.Component.Id; viewModel.ModifiableView.UpdateState(); if (fileCopySuccess) { if (null != filesViewModel) { filesViewModel.DetachFileEntities(); } notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString(StringResources.ComponentNewEdit_Saved), viewModel.Number), Program.LanguageManager.GetString(StringResources.ComponentNewEdit_SavedHeader)); log.Info(string.Format("The entity #{0}, id:{1} has been saved in DB.", viewModel.Component.Number, viewModel.Component.Id)); } else { notify.ShowError(Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied), Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied_Header)); log.Info(string.Format("File for entity #{0}, id:{1} hasn't been saved ", viewModel.Component.Number, viewModel.Component.Id)); } } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResult), Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResultHeader)); numberOfOperationWithoutInspectors = 0; } } RefreshVisualStateEvent(); }
public void Execute() { bool hasPipeCreteria = false; bool hasRailCarCreteria = false; hasPipeCreteria = viewModel.PipeNumber != string.Empty; hasRailCarCreteria = viewModel.RailcarNumber != string.Empty || viewModel.Certificate != string.Empty || viewModel.Receiver != string.Empty; if (Prizm.Main.Common.DateExtension.CheckDiapason(viewModel.StartDate, viewModel.EndDate)) { try { var projList = viewModel.Projection; projList.Clear(); List <Prizm.Domain.Entity.Mill.ReleaseNote> note = new List <Domain.Entity.Mill.ReleaseNote>();; if (!hasPipeCreteria && !hasRailCarCreteria) { note = repo.SearchReleases(viewModel.ReleaseNoteNumber, viewModel.StartDate, viewModel.EndDate); } else if (!hasPipeCreteria && hasRailCarCreteria) { note = repo.SearchReleasesByRailcar(viewModel.ReleaseNoteNumber, viewModel.StartDate, viewModel.EndDate, viewModel.RailcarNumber, viewModel.Certificate, viewModel.Receiver); } else { note = repo.SearchReleasesAllCreteria(viewModel.ReleaseNoteNumber, viewModel.StartDate, viewModel.EndDate, viewModel.PipeNumber, viewModel.RailcarNumber, viewModel.Certificate, viewModel.Receiver); } foreach (var release in note) { projList.Add(new ReleaseNoteProjection { Id = release.Id, NoteNumber = release.Number, NoteDate = release.Date.ToShortDateString(), Status = release.Shipped }); } viewModel.Projection = new BindingList <ReleaseNoteProjection>(projList); viewModel.Amount = viewModel.Projection.Count(); RefreshVisualStateEvent(); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!" + "Diapason: start date= " + viewModel.StartDate.ToString() + " end date= " + viewModel.EndDate.ToString()); } }
public void Execute() { try { var duplicateNumber = duplicateNumberRepo.GetAllActiveDuplicateEntityByNumber(viewModel.Number, viewModel.Joint.Id).Distinct(new DuplicateNumberEntityComparer()).ToList(); String result = string.Empty; if (duplicateNumber != null && duplicateNumber.Count > 0) { for (int i = 0; i <= duplicateNumber.Count - 1; i++) { DuplicateNumberEntityType translate = (DuplicateNumberEntityType)Enum.Parse(typeof(DuplicateNumberEntityType), duplicateNumber[i].EntityType); result = result + viewModel.localizedAllType[(int)((object)translate) - 1] + (i < duplicateNumber.Count - 1 ? ", " : ""); } notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.DuplicateEntity_Message) + result), Program.LanguageManager.GetString(StringResources.DuplicateEntity_MessageHeader)); viewModel.Number = string.Empty; } else { if (!viewModel.ValidatableView.Validate()) { return; } if (!DateCheck()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } if (viewModel.Joint.LoweringDate == DateTime.MinValue) { viewModel.Joint.LoweringDate = null; } numberOfWeldOperationWithoutWelders = 0; foreach (JointWeldResult w in viewModel.JointWeldResults) { if (w.Welders.Count <= 0 && w.Operation.Type == Prizm.Domain.Entity.Setup.JointOperationType.Weld) { numberOfWeldOperationWithoutWelders++; } } numberOfControlOperationWithoutInspectors = 0; foreach (JointTestResult t in viewModel.JointTestResults) { if (t.Inspectors.Count <= 0) { numberOfControlOperationWithoutInspectors++; } } if (numberOfWeldOperationWithoutWelders == 0) { if (numberOfControlOperationWithoutInspectors == 0) { var joints = repo.RepoJoint.GetActiveByNumber(viewModel.Joint); foreach (var joint in joints) { repo.RepoJoint.Evict(joint); } if (joints != null && joints.Count > 0) { notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.Joint_Duplicate), viewModel.Number), Program.LanguageManager.GetString(StringResources.Joint_DuplicateHeader)); viewModel.Number = string.Empty; } else { if (viewModel.Joint.Status == Domain.Entity.Construction.JointStatus.Withdrawn) { viewModel.SaveOrUpdateJointCommand.Execute(); viewModel.RemovePartDataFromList(viewModel.Joint.FirstElement); viewModel.RemovePartDataFromList(viewModel.Joint.SecondElement); } else if (viewModel.MakeTheConnection()) { viewModel.SaveOrUpdateJointCommand.Execute(); viewModel.RemovePartDataFromList(viewModel.Joint.FirstElement); viewModel.RemovePartDataFromList(viewModel.Joint.SecondElement); } else { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.Joint_IncorrectDiameter), Program.LanguageManager.GetString(StringResources.Joint_IncorrectDiameterHeader)); log.Info(string.Format("There are no suitable diameters or wall thicknesses for the joint #{0}, id:{1} formation", viewModel.Joint.Number, viewModel.Joint.Id)); } viewModel.NewJoint(); viewModel.ModifiableView.Id = viewModel.Joint.Id; viewModel.ModifiableView.IsModified = false; } RefreshVisualStateEvent(); } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResult), Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResultHeader)); numberOfControlOperationWithoutInspectors = 0; log.Warn(string.Format("There are no inspectors for appropriate control operations for the joint #{0}, id:{1} formation", viewModel.Joint.Number, viewModel.Joint.Id)); } } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectWeldersForOperation), Program.LanguageManager.GetString(StringResources.SelectWeldersForOperationHeader)); numberOfWeldOperationWithoutWelders = 0; log.Warn(string.Format("There are no welders for appropriate weld operations for the joint #{0}, id:{1} formation", viewModel.Joint.Number, viewModel.Joint.Id)); } } } catch (RepositoryException ex) { log.Warn(this.GetType().Name + " | " + ex.ToString()); notify.ShowWarning(Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Message), Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Header)); } }
public void Execute() { try { foreach (JointTestResult t in viewModel.JointTestResults) { if (t.Inspectors.Count <= 0) { numberOfOperationWithoutInspectors++; } } if (numberOfOperationWithoutInspectors == 0) { try { var duplicateNumber = duplicateNumberRepo.GetAllActiveDuplicateEntityByNumber(viewModel.Number, viewModel.Joint.Id).Distinct(new DuplicateNumberEntityComparer()).ToList(); String result = string.Empty; if (duplicateNumber != null && duplicateNumber.Count > 0) { for (int i = 0; i <= duplicateNumber.Count - 1; i++) { DuplicateNumberEntityType translate = (DuplicateNumberEntityType)Enum.Parse(typeof(DuplicateNumberEntityType), duplicateNumber[i].EntityType); result = result + ", " + viewModel.localizedAllType[(int)((object)translate) - 1]; } notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.DuplicateEntity_Message) + result), Program.LanguageManager.GetString(StringResources.DuplicateEntity_MessageHeader)); viewModel.Number = string.Empty; } else { viewModel.Joint.Number = viewModel.Joint.Number.ToUpper(); viewModel.Joint.ToExport = true; repo.BeginTransaction(); repo.RepoJoint.SaveOrUpdate(viewModel.Joint); var filesViewModel = viewModel.FilesFormViewModel; bool fileCopySuccess = true; if (null != filesViewModel) { filesViewModel.FileRepo = repo.FileRepo; viewModel.FilesFormViewModel.Item = viewModel.Joint.Id; if (!viewModel.FilesFormViewModel.TrySaveFiles(viewModel.Joint)) { fileCopySuccess = false; repo.Rollback(); } } if (fileCopySuccess) { repo.Commit(); } repo.RepoJoint.Evict(viewModel.Joint); if (fileCopySuccess) { if (null != filesViewModel) { filesViewModel.DetachFileEntities(); } notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString(StringResources.Joint_Saved), viewModel.Number), Program.LanguageManager.GetString(StringResources.Joint_SavedHeader)); log.Info(string.Format("The entity #{0}, id:{1} has been saved in DB.", viewModel.Joint.Number, viewModel.Joint.Id)); } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied), Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied_Header)); log.Info(string.Format("File for entity #{0}, id:{1} hasn't been saved ", viewModel.Joint.Number, viewModel.Joint.Id)); } viewModel.ModifiableView.IsModified = false; viewModel.ModifiableView.Id = viewModel.Joint.Id; viewModel.ModifiableView.UpdateState(); } } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResult), Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResultHeader)); } } catch (RepositoryException ex) { log.Warn(this.GetType().Name + " | " + ex.ToString()); notify.ShowWarning(Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Message), Program.LanguageManager.GetString(StringResources.Notification_Error_Db_Header)); } }
public void Execute() { if (!viewModel.ValidatableView.Validate()) { return; } if (!DateValidate()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } //Uppercase for db viewModel.Pipe.Plate.Number = viewModel.Pipe.Plate.Number.ToUpper(); viewModel.Pipe.Number = viewModel.Pipe.Number.ToUpper(); var p = repo.RepoPipe.GetActiveByNumber(viewModel.Pipe); foreach (var pipe in p) { repo.RepoPipe.Evict(pipe); } var duplicateNumber = duplicateNumberRepo.GetAllActiveDuplicateEntityByNumber(viewModel.Number, viewModel.Pipe.Id).Distinct(new DuplicateNumberEntityComparer()).ToList(); String result = string.Empty; if (duplicateNumber != null && duplicateNumber.Count > 0) { for (int i = 0; i <= duplicateNumber.Count - 1; i++) { DuplicateNumberEntityType translate = (DuplicateNumberEntityType)Enum.Parse(typeof(DuplicateNumberEntityType), duplicateNumber[i].EntityType); result = result + viewModel.localizedAllType[(int)((object)translate) - 1] + (i < duplicateNumber.Count - 1 ? ", " : ""); } notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.DuplicateEntity_Message) + result), Program.LanguageManager.GetString(StringResources.DuplicateEntity_MessageHeader)); viewModel.Number = string.Empty; } else { if (viewModel.CheckStatus()) { try { viewModel.UpdatePipeSubStatus(); viewModel.Pipe.PipeTestResult = viewModel.PipeTestResults; repo.BeginTransaction(); repo.RepoPipe.SaveOrUpdate(viewModel.Pipe); var filesViewModel = viewModel.FilesFormViewModel; //saving attached existingDocuments bool fileCopySuccess = true; if (null != filesViewModel) { filesViewModel.FileRepo = repo.FileRepo; viewModel.FilesFormViewModel.Item = viewModel.Pipe.Id; if (!viewModel.FilesFormViewModel.TrySaveFiles(viewModel.Pipe)) { fileCopySuccess = false; repo.Rollback(); } } if (fileCopySuccess) { repo.Commit(); viewModel.PipeNotifier.UpdateNotifications(viewModel.Pipe); viewModel.SelectiveOperationPipeNotifier.UpdateNotifications(viewModel.Pipe); } repo.RepoPipe.Evict(viewModel.Pipe); if (fileCopySuccess) { if (null != filesViewModel) { filesViewModel.DetachFileEntities(); } notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString(StringResources.MillPipe_PipeSaved), viewModel.Number), Program.LanguageManager.GetString(StringResources.MillPipe_PipeSavedHeader)); log.Info(string.Format("The entity #{0}, id:{1} has been saved in DB.", viewModel.Pipe.Number, viewModel.Pipe.Id)); } else { notify.ShowError(Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied), Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied_Header)); log.Info(string.Format("File for entity #{0}, id:{1} hasn't been saved", viewModel.Pipe.Number, viewModel.Pipe.Id)); } viewModel.ModifiableView.IsModified = false; viewModel.ModifiableView.IsEditMode = viewModel.PipeIsActive; viewModel.ModifiableView.Id = viewModel.Pipe.Id; viewModel.ModifiableView.UpdateState(); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowInfo( Program.LanguageManager.GetString(StringResources.MillPipe_ErrorEditingInspectionOperationPipeInRailcar), Program.LanguageManager.GetString(StringResources.MillPipe_PipeSavedHeader)); } } RefreshVisualStateEvent(); }
public void Execute() { if (!viewModel.ValidatableView.Validate()) { return; } foreach (var result in viewModel.InspectionTestResults) { if (!result.Date.IsValid()) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } } var c = repos.ComponentRepo.GetActiveByNumber(viewModel.Component); foreach (var component in c) { repos.ComponentRepo.Evict(component); } if (c != null && c.Count > 0) { notify.ShowInfo( string.Concat(Program.LanguageManager.GetString(StringResources.ComponentNewEdit_Duplicate), " ", viewModel.Number), Program.LanguageManager.GetString(StringResources.ComponentNewEdit_DuplicateHeader)); viewModel.Number = string.Empty; } else { foreach (InspectionTestResult t in viewModel.InspectionTestResults) { if (t.Status != PartInspectionStatus.Pending && t.Inspectors.Count <= 0) { numberOfOperationWithoutInspectors++; } } if (numberOfOperationWithoutInspectors == 0) { try { viewModel.Component.InspectionStatus = viewModel.Component.GetPartInspectionStatus(); repos.BeginTransaction(); viewModel.Component.Number = viewModel.Component.Number.ToUpper(); repos.ComponentRepo.SaveOrUpdate(viewModel.Component); var filesViewModel = viewModel.FilesFormViewModel; //saving attached documents bool fileCopySuccess = true; if (null != filesViewModel) { filesViewModel.FileRepo = repos.FileRepo; viewModel.FilesFormViewModel.Item = viewModel.Component.Id; if (!viewModel.FilesFormViewModel.TrySaveFiles(viewModel.Component)) { fileCopySuccess = false; repos.Rollback(); } } repos.Commit(); repos.ComponentRepo.Evict(viewModel.Component); viewModel.ModifiableView.IsModified = false; viewModel.ModifiableView.UpdateState(); if (fileCopySuccess) { if (null != filesViewModel) { filesViewModel.DetachFileEntities(); } notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString(StringResources.ComponentNewEdit_Saved), viewModel.Number), Program.LanguageManager.GetString(StringResources.ComponentNewEdit_SavedHeader)); } else { notify.ShowError(Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied), Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied_Header)); } log.Info(string.Format("The entity #{0}, id:{1} has been saved in DB.", viewModel.Component.Number, viewModel.Component.Id)); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResult), Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResultHeader)); numberOfOperationWithoutInspectors = 0; } } RefreshVisualStateEvent(); }
public void Execute() { if (Prizm.Main.Common.DateExtension.CheckDiapason(viewModel.StartDate, viewModel.EndDate)) { try { if (viewModel.SelectedReportType == MillReportType.ByProducing) { data = repo.GetPipes(viewModel.StartDate, viewModel.EndDate); AdditionToTheReport report = new AdditionToTheReport(); BindingList <decimal> counts = repo.CountPipe(viewModel.StartDate, viewModel.EndDate); report.PipesCount = counts[0]; report.PipesLength = counts[1]; report.PipesWeight = counts[2]; SetDataSortByColumn("number"); report.DataSource = data; report.FootersVisibility = viewModel.IsFooterVisible; report.CreateDocument(); var tool = new ReportPrintTool(report); tool.AutoShowParametersPanel = false; tool.ShowPreview(); } else if (viewModel.SelectedReportType == MillReportType.General) { data = repo.CountWeldInf(viewModel.StartDate, viewModel.EndDate); SetDataSortByColumn("productionDate"); GeneralInformationXtraReport report = new GeneralInformationXtraReport(); report.DataSource = data; report.FootersVisibility = viewModel.IsFooterVisible; var tool = new ReportPrintTool(report); tool.AutoShowParametersPanel = false; tool.ShowPreview(); } else if (viewModel.SelectedReportType == MillReportType.ByShipped) { data = repo.GetReleaseNotes(viewModel.StartDate, viewModel.EndDate); LoadingXtraReport report = new LoadingXtraReport(); SetDataSortByColumn("releaseNote"); report.DataSource = data; report.FootersVisibility = viewModel.IsFooterVisible; var tool = new ReportPrintTool(report); tool.AutoShowParametersPanel = false; tool.ShowPreview(); } else { data = repo.GetPipesByStatus(viewModel.StartDate, viewModel.EndDate, viewModel.SearchIds, viewModel.SelectedReportType, viewModel.SearchStatuses); MillReportsXtraReport report = new MillReportsXtraReport(); SetDataSortByColumn("number"); data.TranslateStatus <PipeMillStatus>(SQLProvider.TableNameForMillReport, SQLProvider.ColumnNameForMillReport, viewModel.localizedPipeStatus); report.DataSource = data; report.FootersVisibility = viewModel.IsFooterVisible; report.CreateDocument(); var tool = new ReportPrintTool(report); tool.AutoShowParametersPanel = false; tool.ShowPreview(); } } catch (RepositoryException ex) { log.Error(string.Concat(ex.InnerException.Message, ex.Message)); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.Message_FailureReportDate), Program.LanguageManager.GetString(StringResources.Message_FailureReportDateHeader)); log.Warn("Date limits not valid!" + "Diapason: start date= " + viewModel.StartDate.ToString() + " end date= " + viewModel.EndDate.ToString()); } }
public void Execute() { if (!viewModel.InspectionTestResults.All(x => x.Date.IsValid())) { notify.ShowInfo(Program.LanguageManager.GetString(StringResources.WrongDate), Program.LanguageManager.GetString(StringResources.Message_ErrorHeader)); log.Warn("Date limits not valid!"); return; } if (viewModel.Spool.Length != 0) { if (viewModel.CanCut) { foreach (InspectionTestResult t in viewModel.InspectionTestResults) { if (t.Status != PartInspectionStatus.Pending && t.Inspectors.Count <= 0) { numberOfOperationWithoutInspectors++; } } if (numberOfOperationWithoutInspectors == 0) { try { viewModel.Pipe.ToExport = true; viewModel.Pipe.IsCutOnSpool = true; viewModel.Spool.Number = viewModel.Spool.Number.ToUpper(); viewModel.Spool.InspectionStatus = viewModel.Spool.GetPartInspectionStatus(); repos.BeginTransaction(); repos.PipeRepo.SaveOrUpdate(viewModel.Pipe); repos.SpoolRepo.SaveOrUpdate(viewModel.Spool); var filesViewModel = viewModel.FilesFormViewModel; //saving attached documents bool fileCopySuccess = true; if (null != filesViewModel) { filesViewModel.FileRepo = repos.FileRepo; viewModel.FilesFormViewModel.Item = viewModel.Pipe.Id; if (!viewModel.FilesFormViewModel.TrySaveFiles(viewModel.Pipe)) { fileCopySuccess = false; repos.Rollback(); } } repos.Commit(); repos.PipeRepo.Evict(viewModel.Pipe); repos.SpoolRepo.Evict(viewModel.Spool); if (fileCopySuccess) { if (null != filesViewModel) { filesViewModel.DetachFileEntities(); } notify.ShowSuccess( string.Concat(Program.LanguageManager.GetString(StringResources.Spool_CutSpoolFromPipe), viewModel.Spool.Id), Program.LanguageManager.GetString(StringResources.Spool_CutSpoolFromPipeHeader)); } else { notify.ShowError(Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied), Program.LanguageManager.GetString(StringResources.ExternalFiles_NotCopied_Header)); } viewModel.ModifiableView.IsModified = false; notify.ShowNotify( Program.LanguageManager.GetString(StringResources.Spool_CutSpoolFromPipe), Program.LanguageManager.GetString(StringResources.Spool_CutSpoolFromPipeHeader)); log.Info(string.Format("The entity #{0}, id:{1} has been saved in DB.", viewModel.Spool.Number, viewModel.Spool.Id)); string oldPipeNumber = viewModel.Pipe.Number; viewModel.NewSpool(); viewModel.PipeNumber = oldPipeNumber; RefreshVisualStateEvent(); } catch (RepositoryException ex) { log.Error(ex.Message); notify.ShowFailure(ex.InnerException.Message, ex.Message); } } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResult), Program.LanguageManager.GetString(StringResources.SelectInspectorsForTestResultHeader)); viewModel.ModifiableView.IsEditMode = true; } } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.Spool_SpoolLengtBigerThenPipeLength), Program.LanguageManager.GetString(StringResources.Spool_CutSpoolFromPipeHeader)); viewModel.ModifiableView.IsEditMode = true; numberOfOperationWithoutInspectors = 0; } } else { notify.ShowError( Program.LanguageManager.GetString(StringResources.Spool_NullSpoolLength), Program.LanguageManager.GetString(StringResources.Spool_CutSpoolFromPipeHeader)); viewModel.ModifiableView.IsEditMode = true; } }