public async Task <RO <AccessPointDetailList> > AccessPointDetails(AccessPointData accessPoint) { var ro = new RO <AccessPointDetailList>(); if (ModelState.IsValid) { #if SESAM VendorInterface vendor = new VendorInterface(); ro = await vendor.AccessPointDetails(accessPoint); #else var accesspoints = await VendorDL.AccessPointDetails(accessPoint); ro.ReturnCode = 0; ro.ReturnValue = accesspoints; #endif } else { var message = string.Join(" | ", ModelState.Values.SelectMany(v => v.Errors).Select(e => e.ErrorMessage)); ro.ReturnCode = 100; ro.Message = $"Bad request - AccessPointDetails - Incorrect parameters: {message}"; } return(ro); }
public static async Task <AccessPointDetailList> AccessPointDetails(AccessPointData accesspointData) { var accesspointsList = _db.GetCollection <DBAccessPoint>("accesspoints"); var accesspointDetailList = _db.GetCollection <DBAccessPointDetail>("accesspointDetails"); var accessPoints = new List <string>(); switch (accesspointData.Type) { case AccessPointData.AccessPointType.ID: accessPoints = accesspointsList.Find(a => a.accesspointid.Equals(accesspointData.AccessPoint)).Select(x => x.accesspointid).ToList(); break; case AccessPointData.AccessPointType.TAG: accessPoints = accesspointsList.Find(a => a.tag.Equals(accesspointData.AccessPoint)).Select(x => x.accesspointid).ToList(); break; case AccessPointData.AccessPointType.NAME: accessPoints = accesspointsList.Find(a => a.name.Equals(accesspointData.AccessPoint)).Select(x => x.accesspointid).ToList(); break; case AccessPointData.AccessPointType.ALL: accessPoints = accesspointsList.FindAll().Select(x => x.accesspointid).ToList(); break; } var allDetails = accessPoints.Select(ap => accesspointDetailList.FindOne(x => x.accesspointid.Equals(ap))).ToList().Select(dbap => new AccessPointDetail { installationid = dbap.installationid, accesspointid = dbap.accesspointid, accesspointguid = dbap.accesspointguid, barcode = dbap.barcode, batterylevel = dbap.batterylevel, batterytype = dbap.batterytype, cameraurl = dbap.cameraurl, serial = dbap.serial, error = dbap.error, filllevel = dbap.filllevel, height = dbap.height, length = dbap.length, pictureurl = dbap.pictureurl, pointtype = dbap.pointtype, tag = dbap.tag, temperature = dbap.temperature, volume = dbap.volume, warning = dbap.warning, weight = dbap.weight, width = dbap.weight }).ToList(); var detailsList = new AccessPointDetailList(); detailsList.AccessPoints = allDetails; return(await Task.FromResult(detailsList)); }
public static AccessPointData CreateAPIntersection(float inputLocation, int cycleLengthSec) // Creates an Access Point within a Link { AccessPointData newAP = new AccessPointData( // Placeholder Values rightTurnEquivalency: 0, decelRate: 0, arrivalFlowRate: new float[2, cycleLengthSec], blockTime: new int[3], portionTimeBlocked: new float[12], probInsideLaneBlocked: 0, thruDelay: 0, location: inputLocation); return(newAP); }
//-------------------------------------------------------------------------------------------------------------------------------- /// <summary> /// Not supported /// </summary> /// <param name="accesspointdata"></param> /// <returns></returns> //-------------------------------------------------------------------------------------------------------------------------------- public async Task <BossIDWS.Vendor.REST.ReturnObjects.RO <AccessPointDetailList> > AccessPointDetails(AccessPointData accesspointdata) { var roc = new BossIDWS.Vendor.REST.ReturnObjects.RO <AccessPointDetailList>(100, "Not supported", new AccessPointDetailList()); return(await Task.FromResult(roc)); }
//-------------------------------------------------------------------------------------------------------------------------------- /// <summary> /// For this one Sesam returns an XML that is transfomed to the REST accesspoint object /// </summary> /// <param name="accesspointdata"></param> /// <returns></returns> //-------------------------------------------------------------------------------------------------------------------------------- public async Task <BossIDWS.Vendor.REST.ReturnObjects.RO <BossIDWS.Vendor.REST.ReturnObjects.AccessPointList> > AccessPoints(AccessPointData accesspointdata) { BossIDWS.Vendor.REST.ReturnObjects.RO <BossIDWS.Vendor.REST.ReturnObjects.AccessPointList> ror = new ReturnObjects.RO <BossIDWS.Vendor.REST.ReturnObjects.AccessPointList>(); try { VendorEngine engine = new VendorEngine(); List <VendorPoint> points = engine.AccessPoints(accesspointdata.InstallationID, accesspointdata.Type.ToString(), accesspointdata.AccessPoint); ror.ReturnCode = 0; ror.ReturnValue = TransformToAccessPointList(accesspointdata.InstallationID, points); ror.Message = string.Empty; ror.Message = "OOPS -" + points.Count.ToString(); } catch (VendorException se) { VendorRO ro = se.ReturObjekt; ror.ReturnCode = ro.ReturnCode; ror.Message = ro.Message; } catch (Exception e) { ror.ReturnCode = 1024; ror.Message = "AccessPoints failure - " + e.ToString(); } return(await Task.FromResult(ror)); }
private static void InitializeTestData() { /************************************************** * Testparameters spesific to current test **************************************************/ Type = TestType.REST; _installationID = "123"; //Add accesspoints - at least 3 AvailableAccessPoints = new List <AccessPoint>(); var ap1 = new AccessPoint { accesspointid = "1718", tag = "", name = "1" }; AvailableAccessPoints.Add(ap1); var ap2 = new AccessPoint { accesspointid = "1719", tag = "", name = "2" }; AvailableAccessPoints.Add(ap2); var ap3 = new AccessPoint { accesspointid = "1720", tag = "", name = "3" }; AvailableAccessPoints.Add(ap3); /************************************************** * Generic testparameters - no need to touch..... **************************************************/ _allAccessPoints = new AccessPointData { InstallationID = InstallationID, Type = AccessPointData.AccessPointType.ALL }; _accessPointsByID = new AccessPointData { InstallationID = InstallationID, Type = AccessPointData.AccessPointType.ID, AccessPoint = ap1.accesspointid }; _accessPointsByName = new AccessPointData { InstallationID = InstallationID, Type = AccessPointData.AccessPointType.NAME, AccessPoint = ap2.name }; _accessPointsByTag = new AccessPointData { InstallationID = InstallationID, Type = AccessPointData.AccessPointType.TAG, AccessPoint = ap3.tag }; _apOutOfOrder = new AccessPointOutOfOrderData { InstallationID = TestSetup.InstallationID, AccessPoint = ap1.name, Message = "Out of Order", Type = AccessPointData.AccessPointType.NAME }; if (Type == TestType.LiteDB) { AvailableAccessPoints.Add(VendorDL.GetRandomAccessPoint()); AvailableAccessPoints.Add(VendorDL.GetRandomAccessPoint()); AvailableAccessPoints.Add(VendorDL.GetRandomAccessPoint()); } _availableCards = new Stack <string>(); // Generate RFID cards for (var i = 0; i < 50; i++) { _availableCards.Push(Utils.GetRandomHexString()); } HouseHoldClient = new HouseHoldClientData { Customerguid = Guid.NewGuid().ToString(), Customerid = Utils.GetRandomNumber(1001, 1000000).ToString(), Description = "sample client description", Primary = AvailableAccessPoints[0].accesspointid, Secondary1 = AvailableAccessPoints[1].accesspointid, Propertyunit = "Propertyunitstring", Streetaddress = "Customer address", RFID = _availableCards.Pop() + ";" + _availableCards.Pop(), InstallationID = InstallationID }; HouseHoldClient2 = new HouseHoldClientData { Customerguid = Guid.NewGuid().ToString(), Customerid = Utils.GetRandomNumber(1001, 1000000).ToString(), Description = "testclient - to be deleted during test", Primary = AvailableAccessPoints[0].accesspointid, Secondary1 = AvailableAccessPoints[1].accesspointid, Propertyunit = "Propertyunitstring", Streetaddress = "Customer address", RFID = _availableCards.Pop() + ";" + _availableCards.Pop(), InstallationID = InstallationID }; CommercialClient = new CommercialClientData { Name = "Commercial name", Customerguid = Guid.NewGuid().ToString(), Customerid = new Random().Next(1001, 1000000).ToString(), Description = "sample client description", Primary = AvailableAccessPoints[0].accesspointid, Secondary1 = AvailableAccessPoints[1].accesspointid, Propertyunit = "Propertyunitstring", Streetaddress = "Customer address", RFID = _availableCards.Pop() + ";" + _availableCards.Pop(), InstallationID = InstallationID }; RequestAllEvents = new EventsData { Customerkey = "ALL", FromDate = DateTime.Now.AddDays(-100), ToDate = DateTime.Now, InstallationID = InstallationID }; if (Client1 == null) { var c1 = JsonConvert.DeserializeObject <Client>(Utils.GetSetting("Client1")); if (c1 != null) { Client1 = c1; } var c2 = JsonConvert.DeserializeObject <Client>(Utils.GetSetting("Client2")); if (c2 != null) { Client2 = c2; } } }
public static async Task <BossIDWS.Vendor.REST.ReturnObjects.AccessPointList> AccessPoints(AccessPointData accesspointData) { var accesspointsList = _db.GetCollection <DBAccessPoint>("accesspoints"); var accessPoints = new List <DBAccessPoint>(); switch (accesspointData.Type) { case AccessPointData.AccessPointType.ID: accessPoints = accesspointsList.Find(a => a.accesspointid.Equals(accesspointData.AccessPoint)).ToList(); break; case AccessPointData.AccessPointType.TAG: accessPoints = accesspointsList.Find(a => a.tag.Equals(accesspointData.AccessPoint)).ToList(); break; case AccessPointData.AccessPointType.NAME: accessPoints = accesspointsList.Find(a => a.name.Equals(accesspointData.AccessPoint)).ToList(); break; case AccessPointData.AccessPointType.ALL: accessPoints = accesspointsList.FindAll().ToList(); break; } var ap = accessPoints.Select(a => new BossIDWS.Vendor.REST.ReturnObjects.AccessPoint { //accesspointguid = a.accesspointguid, accesspointid = a.accesspointid, installationid = a.installationid, name = a.name }).ToList(); var apList = new BossIDWS.Vendor.REST.ReturnObjects.AccessPointList(); // TJM fixed from list to array - assign with convert to array apList.AccessPoints = ap.ToArray(); return(await Task.FromResult(apList)); }