public void AddAndUpdateExternalProjectFromFile() { var PDCExcelFileDataService = new Service.PDCExcelFile.Data.DataService(); var externalProjectFromFileList = PDCExcelFileDataService.GetExternalProjectListFromFile(PDCFILEPATH).Enum().Where(x => x.Status == ExternalProjectStatusEnum.InProgress).Enum().ToList(); var orginalExternalProjectList = DBReleaseDataService.GetList <T_E_ExternalProject>().Enum().Select(x => x.Convert()).Enum().ToList(); var comparator = new ListComparator <ExternalProject, ExternalProject>(orginalExternalProjectList, x => x.ProjectNumber.ToLower(), externalProjectFromFileList, x => x.ProjectNumber.ToLower()); //Nouveau foreach (var item in comparator.NewList.Enum()) { item.Type = ExternalProjectTypeEnum.PDC; item.ExternalProjectId = -1; AddExternalProject(item); } //Update foreach (var item in comparator.CommonPairList.Enum()) { var originalIem = item.Key; var newItem = item.Value; newItem.ExternalProjectId = originalIem.ExternalProjectId; newItem.IsProcessed = originalIem.IsProcessed; newItem.Type = originalIem.Type; UpdatexternalProject(newItem); } }
public void MoveUpMainTaskPriority(MainTask iMainTask) { if (iMainTask == null) { throw new Exception("La tâche est nulle"); } if (iMainTask.Priority != null) { if (iMainTask.Priority < 0) { throw new Exception("La priorité doit être positive"); } if (iMainTask.Priority == 1) { throw new Exception("La priorité est déjà maximale"); } } using (var ts = new TransactionScope()) { var theTask = DBReleaseDataService.GetMainTaskById(iMainTask.MainTaskId); int? thePriority = 1; T_E_MainTask previousTask = null; if (theTask.Priority != null) { thePriority = theTask.Priority - 1; previousTask = DBReleaseDataService.GetSingleOrDefault <T_E_MainTask>(x => x.Priority == iMainTask.Priority - 1); } else { previousTask = DBReleaseDataService.GetSingleOrDefault <T_E_MainTask>(x => x.Priority == 1); var taskWithPriority = DBReleaseDataService.GetList <T_E_MainTask>(x => x.Priority != null && x.Priority != 1).Enum().OrderByDescending(x => x.Priority).Enum().Select(x => x.Convert()).Enum().ToList(); foreach (var taskPriority in taskWithPriority.Enum()) { MoveDownMainTaskPriority(taskPriority); } } theTask.Priority = thePriority; DBReleaseDataService.Update(theTask); if (previousTask != null) { previousTask.Priority += 1; DBReleaseDataService.Update(previousTask); } ts.Complete(); } }
public void MoveUpPackagePriority(Package iPackage) { if (iPackage == null) { throw new Exception("La tâche est nulle"); } if (iPackage.Priority != null) { if (iPackage.Priority < 0) { throw new Exception("La priorité doit être positive"); } if (iPackage.Priority == 1) { throw new Exception("La priorité est déjà maximale"); } } using (var ts = new TransactionScope()) { var thePackage = DBReleaseDataService.GetPackageById(iPackage.PackageId); int? thePriority = 1; T_E_Package previousPackage = null; if (thePackage.Priority != null) { //package thePriority = thePackage.Priority - 1; //package précédent previousPackage = DBReleaseDataService.GetSingleOrDefault <T_E_Package>(x => x.Priority == iPackage.Priority - 1); previousPackage.Priority++; DBReleaseDataService.Update(previousPackage); } else { previousPackage = DBReleaseDataService.GetSingleOrDefault <T_E_Package>(x => x.Priority == 1); var packageWithPriority = DBReleaseDataService.GetList <T_E_Package>(x => x.Priority != null && x.Priority != 1).Enum().OrderByDescending(x => x.Priority).Enum().Select(x => x.Convert()).Enum().ToList(); foreach (var packagePriority in packageWithPriority.Enum()) { MoveDownPackagePriority(packagePriority); } } thePackage.Priority = thePriority; DBReleaseDataService.Update(thePackage); ts.Complete(); } }
public List <ProductLine> GetProductLineByMainTaskId(long iMainTaskId) { var result = new List <ProductLine>(); var productLineTaskEntityList = DBReleaseDataService.GetList <T_E_ProductLineTask>(x => x.MainTaskId == iMainTaskId).Enum().ToList(); foreach (var item in productLineTaskEntityList.Enum()) { result.Add(DBProductDataService.GetProductLineById(item.ProductLineId).Convert()); } return(result); }
public void SetTaskPriority(MainTask iMainTask, int iNewPriority) { if (iMainTask == null) { throw new Exception("La tâche est nulle"); } if (iMainTask.Priority < 0) { throw new Exception("La priorité doit être positive"); } if (iMainTask.Priority == iNewPriority) { return; } using (var ts = new TransactionScope()) { var theTask = DBReleaseDataService.GetMainTaskById(iMainTask.MainTaskId); List <T_E_MainTask> upPriorityTasks = null; if (iNewPriority < theTask.Priority) { upPriorityTasks = DBReleaseDataService.GetList <T_E_MainTask>(null).Where(x => x.Priority >= iNewPriority).ToList(); } else { upPriorityTasks = DBReleaseDataService.GetList <T_E_MainTask>(null).Where(x => x.Priority > iNewPriority).ToList(); } //enleve le package concerné si présent upPriorityTasks.RemoveAll(x => x.MainTaskId == theTask.MainTaskId); //incrémente toutes les priorités foreach (var item in upPriorityTasks) { item.Priority = item.Priority + 1; DBReleaseDataService.Update(item); } //the package theTask.Priority = iNewPriority; DBReleaseDataService.Update(theTask); //Nettoyage des trous FillGapTaskPriority(); ts.Complete(); } }
public void SetPackagePriority(Package iPackage, int iNewPriority) { if (iPackage == null) { throw new Exception("Le package est nulle"); } if (iPackage.Priority < 0) { throw new Exception("La priorité doit être positive"); } if (iPackage.Priority == iNewPriority) { return; } using (var ts = new TransactionScope()) { var thePackage = DBReleaseDataService.GetPackageById(iPackage.PackageId); List <T_E_Package> upPriorityPackages = null; if (iNewPriority < thePackage.Priority) { upPriorityPackages = DBReleaseDataService.GetList <T_E_Package>(null).Where(x => x.Priority >= iNewPriority).ToList(); } else { upPriorityPackages = DBReleaseDataService.GetList <T_E_Package>(null).Where(x => x.Priority > iNewPriority).ToList(); } //enleve le package concerné si présent upPriorityPackages.RemoveAll(x => x.PackageId == thePackage.PackageId); //incrémente toutes les priorités foreach (var item in upPriorityPackages) { item.Priority = item.Priority + 1; DBReleaseDataService.Update(item); } //the package thePackage.Priority = iNewPriority; DBReleaseDataService.Update(thePackage); //Nettoyage des trous FillGapPackagePriority(); ts.Complete(); } }
public List <Deployement> GetDeployementList() { return(DBReleaseDataService.GetList <T_E_Deployement>().Enum().Select(x => x.Convert()).Enum().ToList()); }
public List <SubTask> GetSubTaskByMainTaskId(long iMainTask) { return(DBReleaseDataService.GetList <T_E_SubTask>(x => x.MainTaskId == iMainTask).Enum().Select(x => x.Convert()).Enum().ToList()); }