public void ConvertUnits(Period period, List <UnitIndexInPeriodDTO> unitIndexInperiodListParam) { Console.WriteLine("Starting units Convert progress..."); unitIndexInperiodList = unitIndexInperiodListParam; root = unitDataProvider.GetRoot(); totalUnitsCount = unitDataProvider.GetCount(); convertUnit_Rec(root, period.Id, null); publisher.Publish(new UnitConverted(unitList)); }
private UnitDTO createDestinationUnit(UnitIntegrationDTO sourceUnit) { var res = new UnitDTO { Name = sourceUnit.UnitName, CustomFields = new List <CustomFieldDTO>(), DictionaryName = sourceUnit.ID.ToString(), TransferId = sourceUnit.TransferId }; return(res); }
private void convertUnit_Rec(UnitIntegrationDTO sourceUnitDTO, long periodId, long?unitParentIdParam) { var unit = unitService.GetByTransferId(sourceUnitDTO.TransferId); if (unit == null) { var desUnitDTO = createDestinationUnit(sourceUnitDTO); unit = unitService.AddUnit(desUnitDTO); } var unitInPriodAssignment = createDestinationUnitInPeriod(unit, unitParentIdParam); var res = unitInPeriodServiceWrapper.AddUnitInPeriod(periodId, unitInPriodAssignment); unitList.Add(unit); var unitDataChildIdList = unitDataProvider.GetChildIDs(sourceUnitDTO.ID); foreach (var unitDataChildId in unitDataChildIdList) { var unitdataChid = unitDataProvider.GetUnitDetail(unitDataChildId); convertUnit_Rec(unitdataChid, periodId, res.UnitId); } Console.WriteLine("Unit convert progress state: " + unitList.Count + " From " + totalUnitsCount.ToString()); }