public VehicleDutyDTO DomainToDTO(VehicleDuty vehicleDuty) { var tripDTOList = new List <TripDTO> (); foreach (var trip in vehicleDuty.tripsList) { var tripDTO = _tripMapper.DomainToDTO(trip); tripDTOList.Add(tripDTO); } var workBlockDTOList = new List <WorkBlockDTO> (); foreach (var wb in vehicleDuty.workBlockList) { var wbDTO = _workBlockMapper.DomainToDTO(wb); workBlockDTOList.Add(wbDTO); } var vehicleDutyDTO = new VehicleDutyDTO( vehicleDuty.Id.AsGuid(), vehicleDuty.vehicleDutyCode.ToString(), tripDTOList, workBlockDTOList ); return(vehicleDutyDTO); }
public async void GetAll() { var vehicleDutyServiceMock = new Mock <IVehicleDutyService>(); var workBlockServiceMock = new Mock <IWorkBlockService>(); var wbList = new List <WorkBlockDTO>(); var vdCode = "vd1"; var vehicleDutyDTO = new VehicleDutyDTO(Guid.NewGuid(), vdCode, wbList); var vehicleDutiesDTO = new List <VehicleDutyDTO>() { vehicleDutyDTO }; vehicleDutyServiceMock.Setup(_ => _.GetAll()).ReturnsAsync(vehicleDutiesDTO); var controller = new VehicleDutyController(vehicleDutyServiceMock.Object, workBlockServiceMock.Object); var actual = await controller.GetAll(); Assert.Equal(vehicleDutiesDTO, actual.Value); }
private async Task <List <ImportedWorkBlockDTO> > ImportVehicleDutiesAndWorkblocks(XmlDocument doc, List <ImportedTripDTO> importedTrips) { string xmlns = doc.DocumentElement.Attributes["xmlns"].Value; XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable); nsmgr.AddNamespace("file", xmlns); var importedWorkBlockList = new List <ImportedWorkBlockDTO>(); XmlNodeList vehicleDuties = doc.GetElementsByTagName("VehicleDuty"); foreach (XmlNode vehicleDuty in vehicleDuties) { List <string> tripList = new List <string>(); foreach (XmlNode refKey in vehicleDuty.ChildNodes[1].ChildNodes) { string keyString = refKey.Attributes["key"].Value; ImportedTripDTO tripDTO = getImportedTripFromKey(importedTrips, keyString); if (tripDTO != null) { tripList.Add(tripDTO.Id.ToString()); } } string vdCode = vehicleDuty.Attributes["Name"].Value; CreatingVehicleDutyDTO cVDDTO = new CreatingVehicleDutyDTO(vdCode, tripList); var createdVDDTO = await this._vehicleDutyService.AddVehicleDuty(cVDDTO); XmlNodeList workblocksKeys = vehicleDuty.FirstChild.ChildNodes; List <WorkBlockDTO> cWBList = new List <WorkBlockDTO>(); foreach (XmlNode workblockKey in workblocksKeys) { string key = workblockKey.Attributes["key"].Value; XmlNode workblock = doc.SelectSingleNode($"//file:WorkBlock[@key='{key}']", nsmgr); List <string> wbTripList = new List <string>(); foreach (XmlNode refKey in workblock.FirstChild.ChildNodes) { string keyString = refKey.Attributes["key"].Value; ImportedTripDTO tripDTO = getImportedTripFromKey(importedTrips, keyString); if (tripDTO != null) { wbTripList.Add(tripDTO.Id.ToString()); } } string startingTime = TimeUtils.fromSecToString(Int32.Parse(workblock.Attributes["StartTime"].Value)); string endingTime = TimeUtils.fromSecToString(Int32.Parse(workblock.Attributes["EndTime"].Value)); CreatingWorkBlockDTO cWBDTO = new CreatingWorkBlockDTO(wbTripList, startingTime, endingTime); var wbDTO = await this._workBlockService.AddWorkBlock(cWBDTO); cWBList.Add(wbDTO); importedWorkBlockList.Add(new ImportedWorkBlockDTO(key, wbDTO)); } VehicleDutyDTO createdVDDTOWithWorkBlocks = await this._vehicleDutyService.AddWorkBlocksToVehicleDuty(cWBList, new VehicleDutyId(createdVDDTO.Id)); } return(importedWorkBlockList); }