Exemple #1
0
        public ListEntity <PayOrderDetail> GetPayOrderDetails(string payOrderCode, string currentPageNumber)
        {
            try
            {
                string url      = ModelFactory.Url + "/companyInterface/pay/getPayOrderDetail";
                var    postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "payOrderCode", payOrderCode },
                    { "currentPageNumber", currentPageNumber }
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ListEntityCommon <PayOrderDetail>().CheckReturnCode(result, out int rcode);
                if (rcode == 0)
                {
                    return(GetPayOrderDetails(payOrderCode, currentPageNumber));
                }

                return(list);
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return(null);
            }
        }
Exemple #2
0
        public void Execute(IJobExecutionContext context)
        {
            var           dbName      = ConfigurationManager.AppSettings["ReductDbName"];
            var           openAway    = ConfigurationManager.AppSettings["ReductOpenAway"];
            var           dbName_Data = ConfigurationManager.AppSettings["ReductDataPath"];
            var           dbName_Log  = ConfigurationManager.AppSettings["ReductLogPath"];
            var           movePath    = ConfigurationManager.AppSettings["ReductMovePath"];
            IReductSqlBLL bll         = new ReductSqlBLL();

            try
            {
                var dbFile = FileOperate.GetLatestFileTimeInfo(openAway, ".bak");
                if (dbFile != null)
                {
                    FlashLogger.Info(string.Format("最新备份文件[{0}],\r\n数据库[{1}]\r\n正在还原中...", dbFile.FullName, dbName));
                    FlashLogger.Info(bll.ReductGo(dbName, dbFile.FullName));
                    FlashLogger.Info(string.Format("开始移动数据库备份文件,\r\n[{0}]\r\n   --->\r\n[{1}]", dbFile.FullName, movePath + dbFile.Name));
                    FileOperate.FileMove(dbFile.FullName, movePath + dbFile.Name);
                    FlashLogger.Info("删除目录下多余的备份文件!");
                    FileOperate.DeleteFolderFiles(openAway);
                    FlashLogger.Info("备份文件还原完毕!");
                }
                else
                {
                    FlashLogger.Error("未找到数据库备份文件,还原失败");
                }
            }
            catch (Exception ex)
            {
                FlashLogger.Error("ReductSqlJob_Execute:" + ex.Message);
            }
        }
Exemple #3
0
        public void Execute(IJobExecutionContext context)
        {
            ICompanySCBLL  companyBll  = new CompanySCBLL();
            List <Company> companyList = null;
            DateTime       dateTimeM   = DateTime.Now;

            FlashLogger.Error(string.Format("下载生产企业信息【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            while (dateTimeM > Convert.ToDateTime("2016-03-01"))
            {
                var listEntity = companyBll.GetCompanys("", dateTimeM.ToString("yyyy-MM"), "1");
                if (listEntity == null)
                {
                    break;
                }
                companyList = listEntity.DataList;
                if (companyList != null && companyList.Count > 0)
                {
                    for (int i = 1; i <= listEntity.TotalPageCount; i++)
                    {
                        companyBll.AddCompanys(companyList);
                        FlashLogger.Warn(string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条生产企业信息.【{4}】", dateTimeM.ToString("yyyy-MM"),
                                                       i, listEntity.TotalPageCount, companyList.Count, System.Threading.Thread.CurrentThread.ManagedThreadId));
                        companyList = companyBll.GetCompanys("", dateTimeM.ToString("yyyy-MM"), (i + 1).ToString()).DataList;
                    }
                }
                dateTimeM = dateTimeM.AddMonths(-1);
            }
            FlashLogger.Error(string.Format("下载完毕【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
        }
Exemple #4
0
        //starts the sender algorithm
        private void DoStart()
        {
            senderThread = new Thread(() =>
            {
                try
                {
                    while (!stopped)
                    {
                        //wait until explicitely (re)started
                        startLatch.Wait();
                        paused = false;
                        SenderAlgorithm();
                    }
                }

                catch (IOException ex)
                {
                    FlashLogger.Error("", ex);
                }
                FlashLogger.Info("STOPPING SENDER for " + session);
            });

            senderThread.Name         = UDTThreadFactory.Instance.NewThreadName();
            senderThread.IsBackground = true;

            senderThread.Start();
        }
Exemple #5
0
        public ListEntity <Procurecatalog> CheckExist(string procureCatalogInfo)
        {
            try
            {
                string url      = ModelFactory.Url + "/companyInterface/drug/procurecatalog/checkExist";
                var    postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "procureCatalogInfo", procureCatalogInfo },
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ListEntityCommon <Procurecatalog>().CheckReturnCode(result, out int rcode);
                if (rcode == 0)
                {
                    return(CheckExist(procureCatalogInfo));
                }

                return(list);
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return(null);
            }
        }
        public ListEntity <Order> GetOrders(DateTime startTime, DateTime endTime, string currentPageNumber)
        {
            try
            {
                string url      = ModelFactory.Url + "/companyInterface/drug/purchaseOrder/getOrder";
                var    postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "startTime", startTime.ToString("yyyy-MM-dd hh:mm:ss") },
                    { "endTime", endTime.ToString("yyyy-MM-dd hh:mm:ss") },
                    { "currentPageNumber", currentPageNumber }
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ListEntityCommon <Order>().CheckReturnCode(result, out int rcode);
                if (rcode == 0)
                {
                    return(GetOrders(startTime, endTime, currentPageNumber));
                }

                return(list);
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return(null);
            }
        }
        public ReturnEntity <ErrorListEntity_Order, Order> Response(string orderDetailInfo)
        {
            try
            {
                string url      = ModelFactory.Url + "/companyInterface/drug/purchaseOrder/response";
                var    postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "orderDetailInfo", orderDetailInfo },
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ReturnEntityCommon <ErrorListEntity_Order, Order>().CheckReturnCode(result, out int rcode);
                if (rcode == 0)
                {
                    return(Read(orderDetailInfo));
                }

                return(list);
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return(null);
            }
        }
Exemple #8
0
        public ReturnEntity <ErrorListEntity_Sale, Sale> AddSale(string saleInfo)
        {
            try
            {
                string url      = ModelFactory.Url + "/companyInterface/drug/saleList/addSale";
                var    postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "saleInfo", saleInfo },
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ReturnEntityCommon <ErrorListEntity_Sale, Sale>().CheckReturnCode(result, out int rcode);
                if (rcode == 0)
                {
                    return(AddSale(saleInfo));
                }

                return(list);
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return(null);
            }
        }
Exemple #9
0
        public ListEntity <WareHouse> GetWareHouses(string distributeInfo, string currentPageNumber)
        {
            try
            {
                string url      = ModelFactory.Url + "/companyInterface/drug/wareHouse/getWareHouse";
                var    postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "distributeInfo", distributeInfo },
                    { "currentPageNumber", currentPageNumber }
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ListEntityCommon <WareHouse>().CheckReturnCode(result, out int rcode);
                if (rcode == 0)
                {
                    return(GetWareHouses(distributeInfo, currentPageNumber));
                }

                return(list);
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return(null);
            }
        }
Exemple #10
0
        public ListEntity <Company> GetCompanys(string companyIds, string month, string currentPageNumber)
        {
            try
            {
                string url      = ModelFactory.Url + "/companyInterface/companySc/getCompanySc";
                var    postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "companyIds", companyIds },
                    { "month", month },
                    { "currentPageNumber", currentPageNumber }
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ListEntityCommon <Company>().CheckReturnCode(result, out int rcode);
                if (rcode == 0)
                {
                    return(GetCompanys(companyIds, month, currentPageNumber));
                }

                return(list);
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return(null);
            }
        }
Exemple #11
0
        public ListEntity<Hospital> GetHospitals(string hospitalIds, string month, string currentPageNumber)
        {
            try
            {
                string url = ModelFactory.Url + "/companyInterface/hospital/getHospital";
                var postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "hospitalIds", hospitalIds },
                    { "month", month },
                    { "currentPageNumber", currentPageNumber }
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ListEntityCommon<Hospital>().CheckReturnCode(result, out int rcode);
                if (rcode == 0) return GetHospitals(hospitalIds, month, currentPageNumber);

                return list;
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return null;
            }
        }
Exemple #12
0
        private static void Test()
        {
            string userCommand = "";

            while (userCommand != "exit")
            {
                IConnectionBLL connectionBll = new ConnectionBLL();
                var            baseEntity    = connectionBll.TestConnection();
                FlashLogger.Error("药械平台接口连接测试");
                WriteLine(baseEntity.ResultJson);

                IAccessTokeBLL accessTokeBll     = new AccessTokeBLL();
                var            accessTokenEntity = accessTokeBll.GetAccessTokenEntity();
                if (accessTokenEntity == null || string.IsNullOrEmpty(accessTokenEntity.AccessToken))
                {
                    FlashLogger.Error("有效令牌凭据不存在,重新获取令牌");
                    accessTokenEntity = accessTokeBll.GetToken();
                    accessTokeBll.SaveToken(accessTokenEntity);
                }
                else
                {
                    FlashLogger.Error("从数据库成功获取有效令牌凭据");
                }
                WriteLine(accessTokenEntity.ResultJson);
                //WriteLine(string.Format("过期时间:{0}",
                //    ((DateTime)accessTokenEntity.CurrentTime).AddSeconds((double)accessTokenEntity.ExpiresIn).ToString("yyyy-MM-dd HH:mm")));

                IProcurecatalogBLL procurecatalogBll = new ProcurecatalogBLL();
                var procurecatalogIdList             = new List <object>
                {
                    new { procurecatalogId = 1 },
                    new { procurecatalogId = 2 },
                    new { procurecatalogId = 3 }
                };
                var procurecatalogIds = JsonConvert.SerializeObject(new { list = procurecatalogIdList });
                List <Entity.QuartzLog.Procurecatalog> procurecatalogList = null;
                DateTime dateTimeM = DateTime.Now;
                FlashLogger.Error("下载商品信息");
                while (dateTimeM > Convert.ToDateTime("2017-09-01"))
                {
                    var listEntity = procurecatalogBll.GetProcurecatalogs("", dateTimeM.ToString("yyyy-MM"), "1");
                    procurecatalogList = listEntity.DataList;
                    if (procurecatalogList != null && procurecatalogList.Count > 0)
                    {
                        for (int i = 1; i <= listEntity.TotalPageCount; i++)
                        {
                            //procurecatalogBll.AddProcurecatalogs(procurecatalogList);
                            FlashLogger.Fatal(string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条商品信息.", dateTimeM.ToString("yyyy-MM"),
                                                            i, listEntity.TotalPageCount, procurecatalogList.Count));
                            procurecatalogList = procurecatalogBll.GetProcurecatalogs("", dateTimeM.ToString("yyyy-MM"), (i + 1).ToString()).DataList;
                        }
                    }
                    dateTimeM = dateTimeM.AddMonths(-1);
                }
                Console.WriteLine("请输入您的指令");
                userCommand = Console.ReadLine();
            }
            Console.ReadKey();
        }
Exemple #13
0
        public void TestWriteLog()
        {
            FlashLogger.Instance().Register();

            FlashLogger.Debug("Debug");
            FlashLogger.Debug("Debug", new Exception("testexception"));
            FlashLogger.Info("Info");
            FlashLogger.Fatal("Fatal");
            FlashLogger.Error("Error");
            FlashLogger.Warn("Warn", new Exception("testexception"));
        }
        //http://www.cnblogs.com/emrys5/p/6693454.html
        static void Main(string[] args)
        {
            FlashLogger.Instance().Register();

            FlashLogger.Debug("Debug");
            FlashLogger.Debug("Debug", new Exception("testexception"));
            FlashLogger.Info("Info");
            FlashLogger.Fatal("Fatal");
            FlashLogger.Error("Error");
            FlashLogger.Warn("Warn", new Exception("testexception"));
        }
Exemple #15
0
        public ActionResult Index()
        {
            ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application.";
            FlashLogger.Debug("Debug");
            FlashLogger.Debug("Debug", new Exception("testexception"));
            FlashLogger.Info("Info");
            FlashLogger.Fatal("Fatal");
            FlashLogger.Error("Error");
            FlashLogger.Warn("Warn", new Exception("testexception"));

            return(View());
        }
Exemple #16
0
        public static void Error(object message)
        {
            switch (LogEngineType)
            {
            case LogEngineTypeEnum.DefaultLogger:
                DefaultLogger.Error(message);
                break;

            case LogEngineTypeEnum.FlashLogger:
                FlashLogger.Error(message);
                break;
            }
        }
Exemple #17
0
 /**
  * re-submits an entry from the sender loss list
  * @param entry
  */
 protected void HandleResubmit(long seqNumber)
 {
     try {
         //retransmit the packet and remove it from  the list
         DataPacket pktToRetransmit = null;
         sendBuffer.TryGetValue(seqNumber, out pktToRetransmit);
         if (pktToRetransmit != null)
         {
             endpoint.DoSend(pktToRetransmit);
             statistics.incNumberOfRetransmittedDataPackets();
         }
     }catch (Exception e) {
         FlashLogger.Error("", e);
     }
 }
        public void Submit()
        {
            if (ThreadLocked)
            {
                return;
            }
            FlashLogger.Info(string.Format("MaxId:{0}", MaxId));
            List <SaleBill> saleBills = dalMySql.GetTopFive(MaxId);

            if (saleBills.Count > 0)
            {
                ThreadLocked = true;
                FlashLogger.Warn("$$$ [ ThreadLocked ] $$$");
                MaxId = saleBills[saleBills.Count - 1].SaleBillID;
                saleBills.ForEach(s => {
                    var insMsg = dalSqlServer.InsertBill(s);
                    if (insMsg.IndexOf("单据写入失败") > -1)
                    {
                        FlashLogger.Error(insMsg);
                        MaxId        = 0;
                        ThreadLocked = false;
                        FlashLogger.Warn("$$$ [ ThreadUnLocked ] $$$");
                        return;
                    }
                    else
                    {
                        FlashLogger.Info(insMsg);
                        if (dalMySql.SetInvalid(s.SaleBillID) > 0)
                        {
                            FlashLogger.Info("CacheID:" + s.SaleBillID);
                        }
                        else
                        {
                            FlashLogger.Error("ErrorCacheID:" + s.SaleBillID);
                        }
                    }
                });
                ThreadLocked = false;
                FlashLogger.Warn("$$$ [ ThreadUnLocked ] $$$");
            }
            else
            {
                FlashLogger.Warn("$$$ [ Heartbeat - ThreadUnLocked ] $$$");
            }
        }
        public override void OnException(ExceptionContext filterContext)
        {
            string          controllerName = (string)filterContext.RouteData.Values["controller"];
            string          actionName     = (string)filterContext.RouteData.Values["action"];
            HandleErrorInfo info           = new HandleErrorInfo(filterContext.Exception, controllerName, actionName);
            HttpRequestBase request        = filterContext.RequestContext.HttpContext.Request;
            string          broser         = request.Browser.Browser;
            string          broserVersion  = request.Browser.Version;
            string          system         = request.Browser.Platform;
            string          errorBaseInfo  = $"Broser={broser},broserVersion={broserVersion},system={system},action={actionName},controller={controllerName}";

            //写入日志
            FlashLogger.Error(errorBaseInfo, filterContext.Exception);
            if (!filterContext.ExceptionHandled)
            {
                if (filterContext.HttpContext.IsCustomErrorEnabled)
                {
                    filterContext.HttpContext.Response.Clear();
                    HttpException httpex = filterContext.Exception as HttpException;
                    if (httpex != null)
                    {
                        filterContext.HttpContext.Response.StatusCode = httpex.GetHttpCode();
                    }
                    else
                    {
                        filterContext.HttpContext.Response.StatusCode = 500;
                    }
                    filterContext.Result = new ViewResult {
                        ViewName = "/Views/Shared/Error.cshtml", ViewData = new ViewDataDictionary <HandleErrorInfo>(info)
                    };
                    filterContext.ExceptionHandled = true;
                    filterContext.HttpContext.Response.TrySkipIisCustomErrors = true;
                }
                else
                {
                    //当customErrors=Off时
                    //当customErrors = RemoteOnly,且在本地调试时
                    filterContext.HttpContext.Response.Redirect("/ErrorPage.html");
                    filterContext.ExceptionHandled = true;
                    filterContext.HttpContext.Response.TrySkipIisCustomErrors = true;
                }
            }
            base.OnException(filterContext);
        }
Exemple #20
0
        public void Start(bool serverSocketModeEnabled)
        {
            serverSocketMode = serverSocketModeEnabled;
            //start receive thread
            Thread receive = new Thread(() =>
            {
                try
                {
                    DoReceive();
                }
                catch (Exception ex)
                {
                    FlashLogger.Error("", ex);
                }
            });

            receive.Name         = "Recv";
            receive.IsBackground = true;
            receive.Start();
        }
Exemple #21
0
        public string Read([FromBody] string value)
        {
            ReturnEntity <ErrorListEntity_Order, Order> checkList = null;

            try
            {
                checkList = purchaseOrderBLL.Read(value);
                if (checkList != null)
                {
                    return(JsonConvert.SerializeObject(new { ResultCode = 1, ResultMsg = "Success", ResultData = checkList }));
                }
                else
                {
                    return(JsonConvert.SerializeObject(new { ResultCode = 0, ResultMsg = "Fail", ResultData = checkList }));
                }
            }
            catch (Exception ex)
            {
                FlashLogger.Error(string.Format("api/order/read\r\n{0}\r\n{1}", ex.Message, value));
                return(JsonConvert.SerializeObject(new { ResultCode = 0, ResultMsg = string.Format("Error:{0}", ex.Message), ResultData = checkList }));
            }
        }
Exemple #22
0
 //starts the sender algorithm
 private void Start()
 {
     receiverThread = new Thread(() => {
         try {
             nextACK     = Util.getCurrentTime() + ackTimerInterval;
             nextNAK     = (long)(Util.getCurrentTime() + 1.5 * nakTimerInterval);
             nextEXP     = Util.getCurrentTime() + 2 * expTimerInterval;
             ackInterval = session.CongestionControl.GetAckInterval();
             while (!stopped)
             {
                 ReceiverAlgorithm();
             }
         }
         catch (Exception ex) {
             FlashLogger.Error("", ex);
         }
         FlashLogger.Info("STOPPING RECEIVER for " + session);
     });
     receiverThread.Name         = UDTThreadFactory.Instance.NewThreadName();
     receiverThread.IsBackground = true;
     receiverThread.Start();
 }
Exemple #23
0
        public void Execute(IJobExecutionContext context)
        {
            IHospitalBLL    hospitalBll  = new HospitalBLL();
            List <Hospital> hospitalList = null;
            DateTime        dateTimeM    = DateTime.Now;

            FlashLogger.Error(string.Format("下载医疗机构信息【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            while (dateTimeM > Convert.ToDateTime("2016-03-01"))
            {
                var listEntity = hospitalBll.GetHospitals("", dateTimeM.ToString("yyyy-MM"), "1");
                if (listEntity == null)
                {
                    break;
                }
                hospitalList = listEntity.DataList;
                if (hospitalList != null && hospitalList.Count > 0)
                {
                    for (int i = 1; i <= listEntity.TotalPageCount; i++)
                    {
                        hospitalBll.AddHospitals(hospitalList);
                        var log = string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条医疗机构信息.【{4}】", dateTimeM.ToString("yyyy-MM"),
                                                i, listEntity.TotalPageCount, hospitalList.Count, System.Threading.Thread.CurrentThread.ManagedThreadId);
                        FlashLogger.Warn(log);
                        hospitalList = hospitalBll.GetHospitals("", dateTimeM.ToString("yyyy-MM"), (i + 1).ToString()).DataList;
                    }
                }
                dateTimeM = dateTimeM.AddMonths(-1);
            }
            FlashLogger.Error(string.Format("下载完毕【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            //测试
            var hospitalIdList = new List <object>
            {
                new { hospitalId = "12319" },
                new { hospitalId = "2" },
                new { hospitalId = "10679" }
            };
            var hospitalIds = JsonConvert.SerializeObject(new { list = hospitalIdList });
            var checkList   = hospitalBll.CheckExist(hospitalIds);
        }
Exemple #24
0
        public string Maintenance([FromBody] string value)
        {
            ReturnEntity <ErrorListEntity_Return, Return> checkList = null;

            try
            {
                checkList = returnBLL.Response(value);
                if (checkList != null)
                {
                    return(JsonConvert.SerializeObject(new { ResultCode = 1, ResultMsg = "Success", ResultData = checkList }));
                }
                else
                {
                    return(JsonConvert.SerializeObject(new { ResultCode = 0, ResultMsg = "Fail", ResultData = checkList }));
                }
            }
            catch (Exception ex)
            {
                FlashLogger.Error(string.Format("api/return/maintenance\r\n{0}\r\n{1}", ex.Message, value));
                return(JsonConvert.SerializeObject(new { ResultCode = 0, ResultMsg = string.Format("Error:{0}", ex.Message), ResultData = checkList }));
            }
        }
Exemple #25
0
        public void Execute(IJobExecutionContext context)
        {
            IProcurecatalogBLL    procurecatalogBll  = new ProcurecatalogBLL();
            List <Procurecatalog> procurecatalogList = null;
            DateTime dateTimeM = DateTime.Now;

            FlashLogger.Error(string.Format("下载商品信息【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            while (dateTimeM > Convert.ToDateTime("2016-03-01"))
            {
                var listEntity = procurecatalogBll.GetProcurecatalogs("", dateTimeM.ToString("yyyy-MM"), "1");
                if (listEntity == null)
                {
                    break;
                }
                procurecatalogList = listEntity.DataList;
                if (procurecatalogList != null && procurecatalogList.Count > 0)
                {
                    for (int i = 1; i <= listEntity.TotalPageCount; i++)
                    {
                        procurecatalogBll.AddProcurecatalogs(procurecatalogList);
                        FlashLogger.Warn(string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条商品信息.【{4}】", dateTimeM.ToString("yyyy-MM"),
                                                       i, listEntity.TotalPageCount, procurecatalogList.Count, System.Threading.Thread.CurrentThread.ManagedThreadId));
                        procurecatalogList = procurecatalogBll.GetProcurecatalogs("", dateTimeM.ToString("yyyy-MM"), (i + 1).ToString()).DataList;
                    }
                }
                dateTimeM = dateTimeM.AddMonths(-1);
            }
            FlashLogger.Error(string.Format("下载完毕【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            //测试
            var procurecatalogIdList = new List <object>
            {
                new { procurecatalogId = 12319 },
                new { procurecatalogId = 2 },
                new { procurecatalogId = 10679 }
            };
            var procurecatalogIds = JsonConvert.SerializeObject(new { list = procurecatalogIdList });
            var checkList         = procurecatalogBll.CheckExist(procurecatalogIds);
        }
Exemple #26
0
        public void Execute(IJobExecutionContext context)
        {
            IPurchaseOrderBLL orderBll  = new PurchaseOrderBLL();
            List <Order>      orderList = null;
            DateTime          dateTimeM = DateTime.Now;

            FlashLogger.Error(string.Format("下载采购订单【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            while (dateTimeM > Convert.ToDateTime("2016-03-01"))
            {
                var listEntity = orderBll.GetOrders(TimeHelper.GetStartDateTime(dateTimeM),
                                                    TimeHelper.GetEndDateTime(dateTimeM), "1");
                if (listEntity == null)
                {
                    break;
                }
                orderList = listEntity.DataList;
                if (orderList != null && orderList.Count > 0)
                {
                    for (int i = 1; i <= listEntity.TotalPageCount; i++)
                    {
                        orderBll.AddOrders(orderList);
                        FlashLogger.Warn(string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条采购订单信息.【{4}】", dateTimeM.ToString("yyyy-MM-dd"),
                                                       i, listEntity.TotalPageCount, orderList.Count, System.Threading.Thread.CurrentThread.ManagedThreadId));
                        orderList = orderBll.GetOrders(TimeHelper.GetStartDateTime(dateTimeM),
                                                       TimeHelper.GetEndDateTime(dateTimeM), (i + 1).ToString()).DataList;
                    }
                }
                //else
                //{
                //    FlashLogger.Warn(string.Format("{0} : 无采购订单信息.【{1}】", dateTimeM.ToString("yyyy-MM-dd"),
                //            System.Threading.Thread.CurrentThread.ManagedThreadId));
                //}
                dateTimeM = dateTimeM.AddDays(-1);
                //System.Threading.Thread.Sleep(3000);
            }
            FlashLogger.Error(string.Format("采购订单下载完毕【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            //测试
        }
Exemple #27
0
        public ListEntity<Hospital> CheckExist(string hospitalInfo)
        {
            try
            {
                string url = ModelFactory.Url + "/companyInterface/hospital/checkExist";
                var postVars = new NameValueCollection
                {
                    { "accessToken", AccessTokeBLL.AccessToken.AccessToken },
                    { "hospitalInfo", hospitalInfo },
                };
                string result = WebClientHttp.Post(url, postVars);
                FlashLogger.Info(result);
                var list = new ListEntityCommon<Hospital>().CheckReturnCode(result, out int rcode);
                if (rcode == 0) return CheckExist(hospitalInfo);

                return list;
            }
            catch (Exception ex)
            {
                FlashLogger.Error(ex.Message);
                return null;
            }
        }
Exemple #28
0
        public override void Received(IUDTPacket packet, Destination peer)
        {
            lastPacket = packet;
            if (packet is ConnectionHandshake)
            {
                ConnectionHandshake connectionHandshake = (ConnectionHandshake)packet;
                FlashLogger.Info("Received " + connectionHandshake);


                if (State <= ready)
                {
                    destination.SocketID = connectionHandshake.SocketID;
                    if (State <= handshaking)
                    {
                        State = handshaking;
                    }
                    try {
                        HandleHandShake(connectionHandshake);
                        n_handshake++;
                        try {
                            //理论上应该先检验cookie

                            State  = ready;
                            socket = new UDTSocket(endPoint, this);
                            cc.Init();
                        } catch (Exception uhe) {
                            //session is invalid

                            FlashLogger.Error("", uhe);

                            State = invalid;
                        }
                    } catch (IOException ex) {
                        //session invalid

                        FlashLogger.Warn("Error processing ConnectionHandshake", ex);

                        State = invalid;
                    }
                    return;
                }
                else
                {
                    //cd  回复
                    try {
                        HandleHandShake(connectionHandshake);
                    } catch (IOException e) {
                    }
                }
            }
            else if (packet is KeepAlive)
            {
                socket.GetReceiver().ResetEXPTimer();
                active = true;
                return;
            }

            if (State == ready)
            {
                active = true;

                if (packet is KeepAlive)
                {
                    //nothing to do here
                    return;
                }
                else if (packet is Shutdown)
                {
                    try {
                        socket.GetReceiver().Stop();
                    } catch (IOException ex) {
                        FlashLogger.Warn("", ex);
                    }
                    State = shutdown;
                    Console.WriteLine("SHUTDOWN ***");
                    active = false;
                    FlashLogger.Info("Connection shutdown initiated by the other side.");
                    return;
                }

                else
                {
                    try {
                        Console.WriteLine("收到数据包");
                        if (packet.ForSender())
                        {
                            socket.GetSender().Receive(packet);
                        }
                        else
                        {
                            socket.GetReceiver().Receive(packet);
                        }
                    } catch (Exception ex) {
                        //session invalid
                        FlashLogger.Error("", ex);
                        State = invalid;
                        // setState(invalid);
                    }
                }
                return;
            }
        }
Exemple #29
0
            public void Run()
            {
                try
                {
                    FlashLogger.Info("Handling request from " + socket.GetSession().Destination);
                    UDTInputStream  intStream = socket.GetInputStream();
                    UDTOutputStream outStream = socket.GetOutputStream();
                    byte[]          readBuf   = new byte[32768];

                    //read file name info
                    while (intStream.Read(readBuf) == 0)
                    {
                        Thread.Sleep(100);
                    }

                    //how many bytes to read for the file name
                    byte[] len = new byte[4];
                    //bb.get(len);

                    Array.Copy(readBuf, 0, len, 0, 4);//文件名称长度
                    if (verbose)
                    {
                        StringBuilder sb = new StringBuilder();
                        for (int i = 0; i < len.Length; i++)
                        {
                            sb.Append((len[i]).ToString());
                            sb.Append(" ");
                        }
                        Console.WriteLine("[SendFile] name length data: " + sb.ToString());
                    }
                    long length = Decode(len, 0);
                    if (verbose)
                    {
                        Console.WriteLine("[SendFile] name length     : " + length);
                    }
                    byte[] fileName = new byte[(int)length];
                    //读取文件名称
                    Array.Copy(readBuf, 4, fileName, 0, fileName.Length);
                    FileInfo file = new FileInfo(Encoding.UTF8.GetString(fileName));//兼容java
                    Console.WriteLine("[SendFile] File requested: '" + file.FullName + "'");

                    FileStream fis = null;
                    try
                    {
                        long size = file.Length;
                        Console.WriteLine("[SendFile] File size: " + size);
                        //send size info
                        outStream.Write(Encode64(size)); //先写入大小
                        outStream.Flush();               //传输完成

                        long start = DateTime.Now.Ticks;
                        fis = new FileStream(file.FullName, FileMode.Open);

                        CopyFile(fis, outStream, size, false);
                        Console.WriteLine("[SendFile] Finished sending data.");
                        long end = DateTime.Now.Ticks;
                        Console.WriteLine(socket.GetSession().Statistics.toString());
                        double rate = 1000.0 * size / 1024 / 1024 / (end - start);
                        Console.WriteLine("[SendFile] Rate: " + rate.ToString(format) + " MBytes/sec. " + (8 * rate).ToString(format) + " MBit/sec.");
                    }
                    finally
                    {
                        socket.GetSender().Stop();
                        if (fis != null)
                        {
                            fis.Close();
                        }
                    }
                    FlashLogger.Info("Finished request from " + socket.GetSession().Destination);
                }
                catch (Exception ex)
                {
                    FlashLogger.Error(ex.Message);
                }
            }
Exemple #30
0
        public override void Received(IUDTPacket packet, Destination peer)
        {
            lastPacket = packet;

            if (packet is ConnectionHandshake)
            {
                ConnectionHandshake hs = (ConnectionHandshake)packet;
                FlashLogger.Info("Received connection handshake from " + peer + "\n" + hs);
                if (State != ready)
                {
                    if (hs.ConnectionType == 1)
                    {
                        try {
                            //TODO validate parameters sent by peer
                            // long peerSocketID = hs.SocketID;
                            // DestinationID = peerSocketID;
                            // destination(peerSocketID);
                            destination.SocketID = hs.SocketID;
                            SendConfirmation(hs);
                        } catch (Exception ex) {
                            FlashLogger.Warn("Error creating socket", ex);

                            State = invalid;
                        }
                        return;
                    }
                    else
                    {
                        try {
                            //TODO validate parameters sent by peer
                            //理论上这里是getConnectionType==-1
                            // long peerSocketID = hs.getSocketID();
                            // destination.SetSocketID(peerSocketID);
                            // setState(ready);
                            destination.SocketID = hs.SocketID;
                            State = ready;
                            Thread.Sleep(50);
                            //多个握手序列,使用接收的第一个
                            this.initialSequenceNumber = hs.InitialSeqNo;//cd 必须重置
                            socket = new UDTSocket(endPoint, this);
                        } catch (Exception ex) {
                            FlashLogger.Warn("Error creating socket", ex);

                            State = invalid;
                        }
                        return;
                    }
                }
            }

            if (State == ready)
            {
                if (packet is Shutdown)
                {
                    State  = shutdown;
                    active = false;
                    FlashLogger.Info("Connection shutdown initiated by the other side.");
                    return;
                }
                active = true;
                try {
                    if (packet.ForSender())
                    {
                        socket.GetSender().Receive(lastPacket);
                    }
                    else
                    {
                        socket.GetReceiver().Receive(lastPacket);
                    }
                } catch (Exception ex) {
                    //session is invalid
                    FlashLogger.Error("Error in " + toString(), ex);
                    //setState(invalid);
                    State = invalid;
                }
                return;
            }
        }