Example #1
0
        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);
        }
Example #2
0
        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));
        }
Example #3
0
        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);
        }
Example #4
0
        //--------------------------------------------------------------------------------------------------------------------------------
        /// <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));
        }
Example #5
0
 //--------------------------------------------------------------------------------------------------------------------------------
 /// <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));
 }
Example #6
0
        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;
                }
            }
        }
Example #7
0
        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));
        }