public DocElectronicServiceStageDO(DocElectronicServiceStage d) { if (d != null) { this.DocElectronicServiceStageId = d.DocElectronicServiceStageId; this.DocId = d.DocId; this.ElectronicServiceStageId = d.ElectronicServiceStageId; this.StartingDate = d.StartingDate; this.ExpectedEndingDate = d.ExpectedEndingDate; this.EndingDate = d.EndingDate; this.IsCurrentStage = d.IsCurrentStage; this.Version = d.Version; if (d.ElectronicServiceStage != null) { this.ElectronicServiceStageAlias = d.ElectronicServiceStage.Alias; this.ElectronicServiceStageName = d.ElectronicServiceStage.Name; this.ElectronicServiceStageDuration = d.ElectronicServiceStage.Duration ?? 0; this.ElectronicServiceStageDocTypeId = d.ElectronicServiceStage.DocTypeId; if (d.ElectronicServiceStage.ElectronicServiceStageExecutors != null && d.ElectronicServiceStage.ElectronicServiceStageExecutors.Any(e => e.IsActive)) { StringBuilder sb = new StringBuilder(); var executors = d.ElectronicServiceStage.ElectronicServiceStageExecutors.Where(e => e.IsActive).ToList(); foreach (var executor in executors) { if (executor.Unit != null) { if (sb.Length > 0) { sb.Append("<br/>"); } sb.Append(executor.Unit.Name); } } this.ElectronicServiceStageExecutors = sb.ToString(); } } } }
private void AddCheckRegularityServiceStage(int docTypeId, Doc doc) { var electronicServiceStage = this.unitOfWork.DbContext.Set<ElectronicServiceStage>().SingleOrDefault(e => e.Alias == "CheckRegularity" && e.DocTypeId == docTypeId); if (electronicServiceStage != null) { DocElectronicServiceStage serviceStage = new DocElectronicServiceStage(); serviceStage.DocId = doc.DocId; serviceStage.ElectronicServiceStageId = electronicServiceStage.ElectronicServiceStageId; serviceStage.StartingDate = DateTime.Now; serviceStage.ExpectedEndingDate = electronicServiceStage.Duration.HasValue ? serviceStage.StartingDate.AddDays(electronicServiceStage.Duration.Value) : (DateTime?)null; serviceStage.EndingDate = null; serviceStage.IsCurrentStage = true; this.unitOfWork.DbContext.Set<DocElectronicServiceStage>().Add(serviceStage); } }
private DocElectronicServiceStage AddBeginningServiceStage(int docTypeId, Doc doc) { DocElectronicServiceStage serviceStage = null; var electronicServiceStage = this.unitOfWork.DbContext.Set<ElectronicServiceStage>() .SingleOrDefault(e => e.Alias == "AcceptApplication" && e.DocTypeId == docTypeId); if (electronicServiceStage != null) { serviceStage = new DocElectronicServiceStage(); serviceStage.DocId = doc.DocId; serviceStage.ElectronicServiceStageId = electronicServiceStage.ElectronicServiceStageId; serviceStage.StartingDate = DateTime.Now; serviceStage.ExpectedEndingDate = DateTime.Now; serviceStage.EndingDate = null; serviceStage.IsCurrentStage = true; serviceStage.EndingDate = DateTime.Now; serviceStage.IsCurrentStage = false; this.unitOfWork.DbContext.Set<DocElectronicServiceStage>().Add(serviceStage); } return serviceStage; }