Exemple #1
0
        public static async Task <RO <string> > CardReplace(ReplacementCardData replacementCards)
        {
            var ro = new RO <string> {
                ReturnValue = string.Empty, ReturnCode = 0, Message = string.Empty
            };

            var cards   = _db.GetCollection <DBCard>("cards");
            var clients = _db.GetCollection <DBClient>("clients");

            var card = new DBCard {
                RFID = replacementCards.RFID
            };

            cards.Insert(card);

            var client = clients.FindById(int.Parse(replacementCards.CustomerKey));

            client.Cards.Add(card);
            clients.Update(client);

            card         = cards.FindOne(c => c.RFID.Equals(replacementCards.ReplacementRFID));
            card.Blocked = true;
            card.Deleted = true;
            cards.Update(card);

            card = client.Cards.Find(c => c.RFID == replacementCards.ReplacementRFID);
            client.Cards.Remove(card);
            clients.Update(client);

            return(await Task.FromResult(ro));
        }
        public async Task <RO <string> > CardReplace([FromBody] ReplacementCardData cards)
        {
            var ro = new RO <string>();

            if (ModelState.IsValid)
            {
                //ro = await VendorDL.CardReplace(cards);
                VendorInterface vendor = new VendorInterface();
                ro = await vendor.CardReplace(cards);
            }
            else
            {
                var message = string.Join(" | ", ModelState.Values.SelectMany(v => v.Errors).Select(e => e.ErrorMessage));
                ro.ReturnCode = 100;
                ro.Message    = $"Bad request - CardReplace - Incorrect parameters: {message}";
            }
            //#endif
            return(ro);
        }
 /// <summary>
 ///
 /// </summary>
 /// <param name="cards"></param>
 /// <returns></returns>
 public async Task <BossIDWS.Vendor.REST.ReturnObjects.RO <string> > CardReplace(ReplacementCardData cards)
 {
     BossIDWS.Vendor.REST.ReturnObjects.RO <string> roc = new ReturnObjects.RO <string>();
     try
     {
         VendorEngine engine   = new VendorEngine();
         VendorRO     vendorro = engine.CardReplace(cards.InstallationID, cards.CustomerKey, cards.ReplacementRFID, cards.RFID);
         roc.ReturnCode  = vendorro.ReturnCode;
         roc.ReturnValue = vendorro.ReturnValue;
         roc.Message     = vendorro.Message;
     }
     catch (Exception e)
     {
         roc.ReturnCode = 1024;
         roc.Message    = "CardReplace failure - " + e.ToString();
     }
     return(await Task.FromResult(roc));
 }