示例#1
0
        public static bool CheckProcessByPort(int port)
        {
            if (port < 1024 && port > 49151)
            {
                return(false);
            }
            string        keyWord  = "LISTENING";
            string        command  = "netstat";
            string        argument = $" -nao";
            List <string> result   = ExecuteCommandAndGetOutput(command, argument);

            if (result.Count == 0)
            {
                return(false);
            }
            var line = result.FirstOrDefault(q => q.Contains(keyWord) && q.Contains(port.ToString()));

            if (line == null)
            {
                return(false);
            }
            int pid = TryConvert.String2Int(line.Substring(line.IndexOf(keyWord) + keyWord.Length).Trim());

            if (pid == 0)
            {
                return(false);
            }
            return(true);
        }
示例#2
0
        public Tuan800Api(string apiUrl)
        {
            urlset data = new urlset().GetRemoteData(apiUrl);

            if (data.url.Count > 0)
            {
                TuanGouList = new List <TuanGou>();
                foreach (url m in data.url)
                {
                    TuanGou tuanGou = new TuanGou();
                    tuanGou.CityID        = Utils.CityToID(m.data.display.city);
                    tuanGou.Title         = m.data.display.title;
                    tuanGou.ImageUrl      = m.data.display.image;
                    tuanGou.ImageThumbUrl = m.data.display.image;
                    tuanGou.BeginTime     = TryConvert.ToDateTime(m.data.display.startTime);
                    tuanGou.EndTime       = TryConvert.ToDateTime(m.data.display.endTime);
                    tuanGou.MarketPrice   = m.data.display.value;
                    tuanGou.TuanPrice     = m.data.display.price;
                    tuanGou.Rebate        = (float)Math.Round((tuanGou.TuanPrice / tuanGou.MarketPrice) * 10, 2);
                    tuanGou.TotalCount    = m.data.display.maxQuota;
                    tuanGou.BuyCount      = m.data.display.bought;
                    tuanGou.TuanUrl       = m.loc;
                    tuanGou.Description   = m.data.display.tip;
                    tuanGou.TuanDetail    = m.data.display.detail;
                    tuanGou.MerchantName  = m.data.shops.shop.name;
                    tuanGou.MerchantPhone = m.data.shops.shop.tel;
                    tuanGou.AddDate       = DateTime.Now;

                    TuanGouList.Add(tuanGou);
                }
            }
        }
示例#3
0
        public SelectManyInputNode(string name, string varName, List <T> options,
                                   IMetaMessage <MetaInlineKeyboardMarkup> metaMessage = null,
                                   string checkedSymbol = defaultChecked, string uncheckedSymbol = defaultUnchecked, Func <T, string> btnCallbackFunc = null,
                                   byte pageSize        = 6, FlipperArrowsType flipperArrows     = FlipperArrowsType.Double, bool needBack = true, bool useGlobalCallbacks = false)
            : base(name, options,
                   (session, element) => (session.Vars.GetVar <List <T> >(varName)?.Contains(element) ?? false ? // если элемент есть,
                                          checkedSymbol : uncheckedSymbol) + element.ToString(session),          // то добавляем checkedSymbol, иначе uncheckedSymbol
                   btnCallbackFunc, metaMessage ?? new MetaDoubleKeyboardedMessage(name),
                   pageSize, needBack, flipperArrows, useGlobalCallbacks)
        {
            VarName  = varName ?? throw new ArgumentNullException(nameof(varName));
            Children = new List <ITreeNode>(1);
            if (collection.Count == 0)
            {
                throw new ArgumentException(nameof(options));
            }

            Dictionary <string, T> callbackToValue = new Dictionary <string, T>(collection.Count);

            foreach (T element in collection)
            {
                callbackToValue.Add(callbackFunc(element), element);
            }

            Converter = (string text, out T variable) => callbackToValue.TryGetValue(text, out variable);
        }
示例#4
0
        public LashouOldApi(string apiUrl)
        {
            urlset data = new urlset().GetRemoteData(apiUrl);

            if (data.goods.Count > 0)
            {
                TuanGouList = new List <TuanGou>();
                foreach (goods m in data.goods)
                {
                    TuanGou tuanGou = new TuanGou();
                    tuanGou.CityID        = Utils.CityToID(data.cityname);
                    tuanGou.Title         = m.goods_title;
                    tuanGou.ImageUrl      = m.goods_image_url;
                    tuanGou.ImageThumbUrl = m.goods_image_url;
                    tuanGou.BeginTime     = TryConvert.ToDateTime(m.goods_start_time);
                    tuanGou.EndTime       = TryConvert.ToDateTime(m.goods_deadline);
                    tuanGou.MarketPrice   = m.goods_value;
                    tuanGou.TuanPrice     = m.goods_price;
                    tuanGou.Rebate        = m.goods_rebate;
                    tuanGou.BuyCount      = m.goods_bought;
                    tuanGou.TuanUrl       = m.goods_site_url;
                    tuanGou.Description   = m.goods_rules;
                    tuanGou.TuanDetail    = m.goods_description;
                    tuanGou.AddDate       = DateTime.Now;

                    TuanGouList.Add(tuanGou);
                }
            }
        }
示例#5
0
        public Hao123Api(string apiUrl)
        {
            urlset data = new urlset().GetRemoteData(apiUrl);

            if (data.url.Count > 0)
            {
                TuanGouList = new List <TuanGou>();
                foreach (url m in data.url)
                {
                    TuanGou tuanGou = new TuanGou();
                    tuanGou.CityID        = Utils.CityToID(m.data.display.city);
                    tuanGou.Title         = m.data.display.title;
                    tuanGou.ImageUrl      = m.data.display.image;
                    tuanGou.ImageThumbUrl = m.data.display.image;
                    tuanGou.BeginTime     = TryConvert.ToDateTime(m.data.display.startTime);
                    tuanGou.EndTime       = TryConvert.ToDateTime(m.data.display.endTime);
                    tuanGou.MarketPrice   = m.data.display.value;
                    tuanGou.TuanPrice     = m.data.display.price;
                    tuanGou.Rebate        = m.data.display.rebate;
                    tuanGou.BuyCount      = m.data.display.bought;
                    tuanGou.TuanUrl       = m.loc;
                    tuanGou.AddDate       = DateTime.Now;

                    TuanGouList.Add(tuanGou);
                }
            }
        }
示例#6
0
        public static DateTime?ToNullableDateTime([NotNull] this string dateTimeString)
        {
            if (TryConvert.ToDate(dateTimeString, out var dateTime))
            {
                return(dateTime);
            }

            return(null);
        }
示例#7
0
        static void ProcessFilter(SearchContext context, Dictionary <string, object> request)
        {
            foreach (var filter in context.textFilters)
            {
                var filterTokens = filter.Split(':');
                var qp           = k_QueryParams.Find(p => p.name == filterTokens[0]);
                if (qp == null || (filterTokens.Length != 2 && qp.type != QueryParamType.kBoolean))
                {
                    continue;
                }
                switch (qp.type)
                {
                case QueryParamType.kBoolean:
                {
                    var isOn = false;
                    if (filterTokens.Length == 2)
                    {
                        isOn = TryConvert.ToBool(filterTokens[1]);
                    }
                    else
                    {
                        isOn = true;
                    }
                    request.Add(qp.queryName, isOn);
                    break;
                }

                case QueryParamType.kInteger:
                {
                    var value = TryConvert.ToInt(filterTokens[1]);
                    request.Add(qp.queryName, value);
                    break;
                }

                case QueryParamType.kFloat:
                {
                    var value = TryConvert.ToFloat(filterTokens[1]);
                    request.Add(qp.queryName, value);
                    break;
                }

                case QueryParamType.kString:
                {
                    request.Add(qp.queryName, filterTokens[1]);
                    break;
                }

                case QueryParamType.kStringArray:
                {
                    request.Add(qp.queryName, new object[] { filterTokens[1] });
                    break;
                }
                }
            }
        }
 public UsualInputNode(string name, string varName, TryConvert <T> converter,
                       IMetaMessage metaMessage = null, bool required = true, bool needBack = true, bool useCallbacks = false)
     : base(name, metaMessage, needBack)
 {
     VarName  = varName ?? throw new ArgumentNullException(nameof(varName));
     Children = new List <ITreeNode>(1);
     Required = required;
     //Memoization = needSave;
     Converter      = converter ?? throw new ArgumentNullException(nameof(converter));
     usingCallbacks = useCallbacks;
 }
    internal static void Example(string someString)
    {
        // Name your poison. :-)
        int i = TryConvert.ToInt32(someString, -1);
        int j = TryConvert.ToNullableInt32(someString) ?? -1;
        // This avoids the issue of a sentinel value.
        int?k = TryConvert.ToNullableInt32(someString);

        if (k.HasValue)
        {
            // do something
        }
    }
示例#10
0
        protected void btn_AddSite_Click(object sender, EventArgs e)
        {
            if (Session["User"] == null)
            {
                if (txt_UserName.Text == "")
                {
                    JScript.ShowMessage(this, "请先登陆!");
                    return;
                }
                else
                {
                    CheckUser();
                }
            }
            TuanSite model = new TuanSite();

            model.UserID   = TryConvert.ToInt32(Session["User"]);
            model.CityID   = Utils.GetFormInt("ddl_City");
            model.SiteName = txt_SiteName.Value;
            model.SiteUrl  = txt_SiteUrl.Value;
            if (model.SiteUrl.EndsWith("/"))
            {
                model.SiteUrl = model.SiteUrl.TrimEnd('/');
            }
            model.LogoUrl  = txt_LogoUrl.Value;
            model.ApiUrl   = txt_ApiUrl.Value;
            model.QQ       = txt_QQ.Value;
            model.SiteType = rdb_SiteType_1.Checked == true ? (byte)1 : (byte)0;
            model.Rank     = TryConvert.ToByte(txt_Rank.Value);
            model.Trust    = TryConvert.ToByte(txt_Trust.Value);

            model.Description   = string.Empty;
            model.Master        = string.Empty;
            model.ContactPerson = string.Empty;
            model.Phone         = string.Empty;
            model.Email         = string.Empty;
            model.OpenDate      = DateTime.Now;
            model.AddDate       = DateTime.Now;
            model.IsVerify      = (byte)1;

            int ret = TuanSiteDAO.Instance.Add(model);

            if (ret > 0)
            {
                JScript.ShowMessage(this, "添加成功!");
            }
            else
            {
                JScript.ShowMessage(this, "添加失败!");
            }
        }
示例#11
0
        public static Process GetProcessByPort(int port)
        {
            if (port < 1024 && port > 49151)
            {
                return(null);
            }
            //if (Configuration.IsWindows)
            //{
            string        keyWord  = "LISTENING";
            string        command  = "netstat";
            string        argument = $" -nao";
            List <string> result   = ExecuteCommandAndGetOutput(command, argument);

            if (result.Count == 0)
            {
                return(null);
            }
            var line = result.FirstOrDefault(q => q.Contains(keyWord) && q.Contains(port.ToString()));

            if (line == null)
            {
                return(null);
            }
            int pid = TryConvert.String2Int(line.Substring(line.IndexOf(keyWord) + keyWord.Length).Trim());

            if (pid == 0)
            {
                return(null);
            }
            return(Process.GetProcessById(pid));
            //}
            //else
            //{
            //    string keyWord = "LISTEN";
            //    string command = "netstat";
            //    string argument = "-tnlp";
            //    List<string> result = ExecuteCommandAndGetOutput(command, argument);
            //    if (result.Count == 0)
            //        return null;
            //    var line = result.FirstOrDefault(q => q.Contains(keyWord) && q.Contains(port.ToString()));
            //    if (line == null)
            //        return null;
            //    string pidName = Utility.GetStringArrayValue(line, 6, " ");
            //    if (string.IsNullOrEmpty(pidName))
            //        return null;
            //    int pid = Utility.TryParseInt(pidName.Split("/").FirstOrDefault());
            //    if (pid == 0)
            //        return null;
            //    return Process.GetProcessById(pid);
            //}
        }
示例#12
0
        public spDrug GetData()
        {
            drug.Barcode           = edBarcode.Text;
            drug.Name              = edName.Text;
            drug.InternationalName = edInternationalName.Text;
            drug.Dose              = edDoza.Text;

            var s = edSumText.Text;

            while (s.IndexOf("  ") > 0)
            {
                s = s.Replace("  ", " ");
            }

            drug.Description = s;


            if (TryConvert.ToInt(edPiece.Text, out var p))
            {
                drug.Piece = p;
            }

            if (TryConvert.ToGuid(cbDrugCategory.EditValue, out var g))
            {
                drug.DrugCategoryId = g;
            }

            if (TryConvert.ToGuid(cbPharmGroup.EditValue, out g))
            {
                drug.PharmGroupId = g;
            }

            if (TryConvert.ToGuid(cbManufacturer.EditValue, out g))
            {
                drug.ManufacturerId = g;
            }

            if (TryConvert.ToInt(cbUnit.EditValue, out p))
            {
                drug.UnitId = p;
            }

            if (pcPhoto.Image != null)
            {
                var filename = Guid.NewGuid().ToString() + ".png";
                pcPhoto.Image.Save(Vars.ImagesPath + filename, System.Drawing.Imaging.ImageFormat.Png);
                drug.Photo = filename;
            }
            return(drug);
        }
示例#13
0
        private void AddTuanGou()
        {
            TuanGou tuanGou = new TuanGou();

            tuanGou.Title           = Utils.GetFormString("txt_Title");
            tuanGou.CityID          = Utils.GetFormInt("ddl_City");
            tuanGou.SiteID          = Utils.GetFormInt("hid_SiteID");
            tuanGou.CategoryID      = Utils.GetFormInt("ddl_Category");
            tuanGou.Description     = Utils.GetFormString("txt_Description"); //如果有包含html标记需要htmldecode
            tuanGou.MarketPrice     = TryConvert.ToDecimal(Request.Form["txt_MarketPrice"]);
            tuanGou.TuanPrice       = TryConvert.ToDecimal(Request.Form["txt_TuanPrice"]);
            tuanGou.Rebate          = TryConvert.ToSingle(Request.Form["txt_Rebate"]);
            tuanGou.TotalCount      = Utils.GetFormInt("txt_TotalCount");
            tuanGou.BuyCount        = Utils.GetFormInt("txt_BuyCount");
            tuanGou.ClickCount      = Utils.GetFormInt("txt_ClickCount");
            tuanGou.CommentCount    = Utils.GetFormInt("txt_CommentCount");
            tuanGou.PointCount      = Utils.GetFormInt("txt_PointCount");
            tuanGou.BeginTime       = Convert.ToDateTime(Request.Form["txt_BeginTime"]);
            tuanGou.EndTime         = Convert.ToDateTime(Request.Form["txt_EndTime"]);
            tuanGou.TuanUrl         = Utils.GetFormString("txt_TuanUrl");
            tuanGou.ImageThumbUrl   = Utils.GetFormString("txt_ImageThumbUrl");
            tuanGou.ImageUrl        = Utils.GetFormString("txt_ImageUrl");
            tuanGou.MerchantName    = Utils.GetFormString("txt_MerchantName");
            tuanGou.MerchantPhone   = Utils.GetFormString("txt_MerchantPhone");
            tuanGou.MerchantAddress = Utils.GetFormString("txt_MerchantAddress");
            tuanGou.Longitude       = TryConvert.ToDouble(Request.Form["txt_Longitude"]);
            tuanGou.Latitude        = TryConvert.ToDouble(Request.Form["txt_Latitude"]);
            tuanGou.Rank            = TryConvert.ToByte(Request.Form["txt_Rank"]);
            tuanGou.OrderID         = Utils.GetFormInt("txt_OrderID");
            tuanGou.Statu           = TryConvert.ToByte(Request.Form["rdo_Statu"]);
            tuanGou.AddDate         = DateTime.Now;

            int result;

            tuanID = Utils.GetQueryInt("ID");
            if (tuanID < 1)
            {
                tuanGou.UserID = loginUser.UserID;
                result         = TuanGouDAO.Instance.Add(tuanGou);
            }
            else
            {
                tuanGou.TuanID = tuanID;
                result         = TuanGouDAO.Instance.Update(tuanGou);
            }

            Ajax.Message(result);
        }
示例#14
0
        private void AddSite()
        {
            TuanSite model = new TuanSite();

            model.SiteID   = Utils.GetQueryInt("ID");
            model.UserID   = loginUser.UserID;
            model.CityID   = Utils.GetFormInt("ddl_City");
            model.SiteName = Utils.GetFormString("txt_SiteName");
            model.SiteUrl  = Utils.GetFormString("txt_SiteUrl");
            if (model.SiteUrl.EndsWith("/"))
            {
                model.SiteUrl = model.SiteUrl.TrimEnd('/');
            }
            model.LogoUrl   = Utils.GetFormString("txt_LogoUrl");
            model.ApiTypeID = (byte)Utils.GetFormInt("ddl_ApiTypeID");
            model.ApiUrl    = Utils.GetFormString("txt_ApiUrl");
            model.QQ        = Utils.GetFormString("txt_QQ");
            model.SiteType  = 1; //Utils.GetFormString("rdo_SiteType");
            model.Rank      = TryConvert.ToByte(Utils.GetFormInt("txt_Rank"));
            model.Trust     = TryConvert.ToByte(Utils.GetFormInt("txt_Trust"));

            model.Description   = string.Empty;
            model.Master        = string.Empty;
            model.ContactPerson = string.Empty;
            model.Phone         = string.Empty;
            model.Email         = string.Empty;
            model.OpenDate      = DateTime.Now;
            model.AddDate       = DateTime.Now;
            model.IsVerify      = 1;

            int result = 0;

            if (model.SiteID > 0)
            {
                result = TuanSiteDAO.Instance.Update(model);
            }
            else
            {
                result = TuanSiteDAO.Instance.Add(model);
            }
            Ajax.Message(result);
        }
示例#15
0
        public MetaValuedContainerInputNode(string name, string varName, List <MetaValued <T> > options, IMetaMessage <MetaInlineKeyboardMarkup> metaMessage = null,
                                            Action <ISession, MetaValuedContainer <T> > endAction = null, Func <ISession, MetaValued <T>, string> btnNameFunc = null, Func <MetaValued <T>, string> btnCallbackFunc = null,
                                            byte pageSize = 6, FlipperArrowsType flipperArrows = FlipperArrowsType.Double, bool needBack = true, bool useGlobalCallbacks = false)
            : base(name, options, btnNameFunc, btnCallbackFunc ?? ((element) => DefaultStrings.DoNothing), metaMessage ?? new MetaDoubleKeyboardedMessage(name),
                   pageSize, needBack, flipperArrows, useGlobalCallbacks)
        {
            VarName  = varName ?? throw new ArgumentNullException(nameof(varName));
            Children = new List <ITreeNode>(1);
            if (collection.Count == 0)
            {
                throw new ArgumentException(nameof(options));
            }

            Dictionary <string, MetaValued <T> > callbackToValue = new Dictionary <string, MetaValued <T> >(collection.Count);

            foreach (MetaValued <T> element in collection)
            {
                callbackToValue.Add(element.ToString(), element);
            }

            Converter   = (string text, out MetaValued <T> variable) => callbackToValue.TryGetValue(text, out variable);
            finalisator = endAction;
        }
示例#16
0
 public FromString8Converter(object defaultValue, TryConvert tryConvert)
 {
     _tryConvert   = tryConvert;
     _defaultValue = (T)(TypeConverterFactory.ConvertSingle(defaultValue, typeof(T)) ?? default(T));
 }
 public TextInputNode(string name, string varName, TryConvert <string> converter,
                      IMetaMessage metaMessage = null, bool required = true, bool needBack = true, bool useCallbacks = false)
     : base(name, varName, converter, metaMessage, required, needBack, useCallbacks)
 {
 }
 public TextInputNode(string name, string varName, TryConvert <string> converter,
                      string description, bool required = true, bool needBack = true, bool useCallbacks = false)
     : this(name, varName, converter, new MetaMessage(description ?? name), required, needBack, useCallbacks)
 {
 }
示例#19
0
 public static string ToExpressionTarget <TObject, TProperty>(
     this Expression <Func <TObject, TProperty> > expression)
 => TryConvert.ToExpressionString(expression);
示例#20
0
 public static DateTime ToDateTime([NotNull] this string dateTimeString)
 {
     TryConvert.ToDate(dateTimeString, out var dateTime);
     return(dateTime);
 }