示例#1
0
        public void AddMarketBaseToSubscriptionTest()
        {
            Subscription      subscriptionsample = context.subscription.Where(x => x.ClientId == demoClientId).FirstOrDefault();
            ClientMarketBases mktbase            = context.ClientMarketBases.Where(x => x.ClientId == demoClientId).FirstOrDefault();

            subscriptionMktDTOTest subscriptionMkt = new subscriptionMktDTOTest();

            subscriptionMkt.subscriptionid = subscriptionsample.SubscriptionId;
            subscriptionMkt.mktbaseid      = new List <int>();
            subscriptionMkt.mktbaseid.Add(mktbase.MarketBaseId);
            subscriptionMkt.clientid = demoClientId;
            JObject request = (JObject)JToken.FromObject(subscriptionMkt);
            var     subscriptionController = new SubscriptionController
            {
                Request       = new System.Net.Http.HttpRequestMessage(),
                Configuration = new HttpConfiguration()
            };

            var response         = subscriptionController.addMarketBase(request);
            int mktbaseID        = subscriptionMkt.mktbaseid[0];
            var subscriptionMkts = context.subscriptionMarket.Where(x => x.SubscriptionId == subscriptionMkt.subscriptionid && x.MarketBaseId == mktbaseID).ToList();

            Assert.IsNotNull(response);
            Assert.IsTrue(response.IsSuccessStatusCode);
            Assert.IsTrue(subscriptionMkts.Count() > 0);
        }
        public async Task <string> SaveMarketBase(int ClientId)
        {
            AuthController objAuth = new AuthController();

            if (objAuth.CheckUserClients(ClientId) == 0)
            {
                return("");
            }
            HttpContent requestContent = Request.Content;
            var         jsonContent    = requestContent.ReadAsStringAsync().Result;
            Guid        Id             = Guid.NewGuid();

            if (jsonContent.Trim() != string.Empty)
            {
                var marketBaseDetails             = JsonConvert.DeserializeObject <MarketbaseDetails>(jsonContent);
                List <DimensionBaseMap> Dimension = marketBaseDetails.Dimension; //to get dimension seperatly.
                List <PxR> PxRCollection          = marketBaseDetails.PxR;       //to get dimension seperatly.

                MarketBase marketBase = marketBaseDetails.MarketBase;
                marketBase.GuiId     = Id.ToString();
                marketBase.LastSaved = DateTime.Now;
                using (var db = new EverestPortalContext())
                {
                    db.MarketBases.Add(marketBase);
                    db.SaveChanges();

                    //to update new marketbase Id
                    await SaveDimensionBaseMap(marketBase.Id, Dimension);
                    await SavePxRBaseMap(marketBase.Id, PxRCollection);
                }
            }
            var objClient = _db.MarketBases.Where(u => u.GuiId == Id.ToString()).ToList <MarketBase>();

            ClientMarketBases clientMarketBases = new ClientMarketBases();

            clientMarketBases.ClientId     = ClientId;
            clientMarketBases.MarketBaseId = objClient.First().Id;
            using (var db = new EverestPortalContext())
            {
                db.ClientMarketBases.Add(clientMarketBases);
                db.SaveChanges();
            }

            //to create new version
            SubmitMarketbaseDetailsInformation(clientMarketBases.MarketBaseId);


            var json = JsonConvert.SerializeObject(objClient, Formatting.Indented,
                                                   new JsonSerializerSettings
            {
                ReferenceLoopHandling = ReferenceLoopHandling.Ignore
            });


            return(json);
        }