Esempio n. 1
0
        //Upon user selected options, display appropriate data.
        public IActionResult GetState(MerchandiseViewModel model)
        {
            model.countries       = _countries;
            model.cards           = _cards;
            model.networks        = _networks;
            model.SelectedCountry = (from c in model.countries
                                     where c.Value == model.SelectedCountryId.ToString()
                                     select new Country
            {
                CountryId = int.Parse(c.Value),
                CountryName = c.Text
            }).FirstOrDefault();

            model.SelectedCard = (from d in model.cards
                                  where d.Value == model.SelectedCardId.ToString()
                                  select new Card
            {
                CardId = int.Parse(d.Value),
                CardLetter = d.Text
            }).FirstOrDefault();

            model.SelectedNetwork = (from n in model.networks
                                     where n.Value == model.SelectedNetworkId.ToString()
                                     select new Network
            {
                NetworkId = int.Parse(n.Value),
                NetworkName = n.Text
            }).FirstOrDefault();

            NetworkId = model.SelectedNetworkId;
            CompanyId = model.SelectedCountryId;
            CardId    = model.SelectedCardId;

            string countryName = FindCountryName(model.SelectedCountry.CountryId);
            string cardLetter  = GetCard(model.SelectedCard.CardId);
            int    countryCode = FindCountryCode(model.SelectedCountry.CountryId);
            var    bucket      = _bucketProvider.GetBucket(countryName);
            var    n1ql        = @"SELECT g.*, META(g).id
                        FROM `" + countryName + "` g " +
                                 "WHERE g.companyId = " + countryCode + " " +
                                 "AND g.showCd = '" + cardLetter + "' " +
                                 "AND g.networkId = " + model.SelectedNetwork.NetworkId + " " +
                                 "LIMIT 20;";

            var query   = QueryRequest.Create(n1ql);
            var results = bucket.Query <Merchandise>(query);

            try
            {
                model.merchandise = results.Rows;
            }
            catch (global::System.Exception)
            {
                throw;
            }
            return(View(model));
        }
Esempio n. 2
0
        public IActionResult SelectDDView()
        {
            var model = new MerchandiseViewModel {
                countries = _countries
            };

            GetMerchandise(model);
            return(View(model));
        }
Esempio n. 3
0
        public async Task <BaseResponse <bool> > EditMerchandise(MerchandiseViewModel merchandise)
        {
            try
            {
                if (merchandise == null)
                {
                    throw new ArgumentNullException(nameof(merchandise));
                }

                var beenModifiedData = context.Merchandise.Where(data => data.MerchandiseId == merchandise.MerchandiseId).FirstOrDefault();
                beenModifiedData.MerchandiseTitle   = merchandise.MerchandiseTitle;
                beenModifiedData.MerchandiseContent = merchandise.MerchandiseContent;


                var beenModifiedSpecData = context.MerchandiseSpec.Where(data => data.MerchandiseId == merchandise.MerchandiseId).ToList();
                if (beenModifiedSpecData != null)
                {
                    int totalAmount = 0;
                    for (int i = 0; i < merchandise.MerchandiseSpec.Count; i++)
                    {
                        MerchandiseSpecViewModel newData = merchandise.MerchandiseSpec[i];
                        totalAmount += newData.RemainingQty;
                        beenModifiedSpecData[i].RemainingQty = newData.RemainingQty;
                    }

                    beenModifiedData.RemainingQty = totalAmount;
                }

                context.SaveChanges();
                return(new BaseResponse <bool>(true, "修改商品資料完成", true));
            }
            catch (Exception ex)
            {
                return(new BaseResponse <bool>(false, "edit failed", default));
            }
        }
Esempio n. 4
0
        //Return ShowCard to bucket query for DateTime.Now
        private string GetTime(DateTime date, MerchandiseViewModel model)
        {
            int hour = date.Hour;

            switch (hour)
            {
            case 0:
                return("A");

            case 1:
                return("B");

            case 2:
                return("C");

            case 3:
                return("D");

            case 4:
                return("E");

            case 5:
                return("F");

            case 6:
                return("G");

            case 7:
                return("H");

            case 8:
                return("I");

            case 9:
                return("J");

            case 10:
                return("K");

            case 11:
                return("L");

            case 12:
                return("M");

            case 13:
                return("N");

            case 14:
                return("O");

            case 15:
                return("P");

            case 16:
                return("Q");

            case 17:
                return("R");

            case 18:
                return("S");

            case 19:
                return("T");

            case 20:
                return("U");

            case 21:
                return("V");

            case 22:
                return("W");

            case 23:
                return("X");

            default:
                break;
            }
            return("A");
        }
Esempio n. 5
0
 public IActionResult SelectDDView(MerchandiseViewModel model)
 {
     GetState(model);
     return(View(model));
 }
Esempio n. 6
0
 public async Task <BaseResponse <bool> > EditBSMerchandise([FromBody] MerchandiseViewModel merchandise)
 {
     return(await merchandiseService.EditMerchandise(merchandise).ConfigureAwait(false));
 }