示例#1
0
        public static List <HighQualityListModel> QueryHighQualityListForSlot()
        {
            List <QueryHighQualityListForSlot_Result> SpHighQualityList = new List <QueryHighQualityListForSlot_Result>();
            List <HighQualityListModel> HighQualityList = new List <HighQualityListModel>();

            var config = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <QueryHighQualityList_Result, HighQualityListModel>();
            });

            IMapper iMapper = config.CreateMapper();

            using (StockEntities db = new StockEntities())
            {
                SpHighQualityList = db.QueryHighQualityListForSlot(0.05).ToList();
            }

            SpHighQualityList.ForEach(t =>
            {
                HighQualityListModel r = iMapper.Map <QueryHighQualityListForSlot_Result, HighQualityListModel>(t);
                HighQualityList.Add(r);
            });

            for (int i = 0; i < HighQualityList.Count; i = i + 100)
            {
                var items = HighQualityList.Skip(i).Take(100);

                ReceiveByHighQualityListReqModel r = new ReceiveByHighQualityListReqModel();

                r.HighQualityStock = items.ToList <HighQualityListModel>();

                var jsonText = "{\"ReqParam\" : " + JsonConvert.SerializeObject(r) + @"}";
                LogHelper.doLog("StableStockServices_QueryHighQualityListForSlot", "==發送(" + r.HighQualityStock.Count().ToString() + "筆)==\r\n" + jsonText);
                WebClient client = new WebClient();
                client.Encoding = Encoding.UTF8;
                client.Headers.Add(HttpRequestHeader.ContentType, "application/json");
                client.Headers.Add("PowerAdmin", Setting.AppSettings("PowerAdmin"));
                var    response  = client.UploadData(Common.Tools.Setting.AppSettings("ReceiveByHighQualityList"), "POST", Encoding.UTF8.GetBytes(jsonText));
                string resResult = Encoding.UTF8.GetString(response);
                LogHelper.doLog("StableStockServices_QueryHighQualityListForSlot", "==接收==\r\n" + resResult);
            }

            LogHelper.doLog("StableStockServices_QueryHighQualityListForSlot", JsonConvert.SerializeObject(HighQualityList));
            return(HighQualityList);
        }
示例#2
0
        /// <summary>
        /// [接收高品質高股訊息][修改LiteDB]
        /// </summary>
        /// <returns></returns>
        public ActionResult ReceiveByHighQualityList(ReceiveByHighQualityListReqModel ReqParam)
        {
            BaseResModel<HighQualityResModel> result = new BaseResModel<HighQualityResModel>();
            try
            {
                Common.Tools.AuthHelper.IsPowerAdmin(Request);
                int SuccCount = 0;
                int FailCount = 0;
                // Open database (or create if not exits)
                using (var db = new LiteDatabase(LazySlotDBPath))
                {
                    // Get customer collection
                    var HighQualityStock = db.GetCollection<HighQualityResModel>("HighQualityStock");

                    var lists = HighQualityStock.FindAll();
                    foreach (var row in lists)
                        HighQualityStock.Delete(row.StockNum);

                    for (int i = 0; i < ReqParam.HighQualityStock.Count; i++)
                    {
                        HighQualityResModel items = ReqParam.HighQualityStock[i];
                        try
                        {
                            HighQualityStock.Insert(items.StockNum, items);
                            SuccCount++;
                        }
                        catch
                        {
                            FailCount++;
                        }
                    }
                }

                result.Message = "成功:" + SuccCount.ToString() + ",失敗:" + FailCount.ToString();
                result.Code = ResponseCodeEnum.Success;
            }
            catch (Exception e)
            {
                result.Code = ResponseCodeEnum.Failed;
                result.Message = e.Message;
            }
            return Json(result, JsonRequestBehavior.AllowGet);
        }