Ejemplo n.º 1
0
        private ArrayList getListValue(object obj, CellExt leftHead, CellExt topHead, bool dispValue)
        {
            ArrayList o = null;

            if (obj is ArrayList)
            {
                o = (ArrayList)obj;
            }
            else if (obj is CSVar)
            {
                CSVar   var    = (CSVar)obj;
                CellExt source = var.Source;
                CellExt ext2   = var.LeftHead;
                CellExt ext3   = var.TopHead;
                CellExt ext4   = ext2.Source;
                CellExt ext5   = ext3.Source;
                if (((leftHead == null) || !ext4.isLeftHeadOf(leftHead.Source)) || !leftHead.Source.isLeftHeadOf(source))
                {
                    leftHead = ext2;
                }
                if (((topHead == null) || !ext5.isTopHeadOf(topHead.Source)) || !topHead.Source.isTopHeadOf(source))
                {
                    topHead = ext3;
                }
                o = var.getCells(leftHead, topHead, null);
            }
            else
            {
                o = new ArrayList(1);
                o.Add(obj);
            }
            return((ArrayList)ConvertTool.getValue(o, dispValue));
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 查询已发送数量
 /// </summary>
 public int GetSendQuantity(out string code)
 {
     //检查是否设置好短信账号
     if (!Exists())
     {
         code = "115";
         return(0);
     }
     try
     {
         string   result = Utils.HttpPost(sysConfig.smsapiurl, "cmd=se&uid=" + sysConfig.smsusername + "&pwd=" + sysConfig.smspassword);
         string[] strArr = result.Split(new string[] { "||" }, StringSplitOptions.None);
         if (strArr[0] != "100")
         {
             code = strArr[0];
             return(0);
         }
         code = strArr[0];
         return(ConvertTool.ToInt(strArr[1], 0));
     }
     catch
     {
         code = "115";
         return(0);
     }
 }
Ejemplo n.º 3
0
        public override object calculate()
        {
            if (base.paramList.Count < 4)
            {
                throw new ReportError("barcode函数参数数目应为4或以上");
            }
            ArrayList list = new ArrayList();
            int       num  = 0;

            while (num < base.paramList.Count)
            {
                object obj4 = ConvertTool.getValue(((ExpParse)base.paramList[num]).calculate());
                if (((num != 4) && (num != 5)) && !(obj4 is string))
                {
                    goto Label_0173;
                }
                list.Add(obj4);
                num++;
            }
            try
            {
                return(BarcodeWeb.CreateBarcodes((string)list[0], (string)list[1], (string)list[2], (string)list[3], Convert.ToString(list[4]), Convert.ToString(list[5]), (string)list[6], (string)list[7], (string)list[8], (string)list[9], (string)list[10], (string)list[11], (string)list[12], (string)list[13], (string)list[14], (string)list[15], (string)list[16]));
            }
            catch (Exception exception)
            {
                throw new ReportError("生成条形码计算异常:" + exception.Message.ToString().ToString(), exception);
            }
Label_0173:
            throw new ReportError("barcode函数参数" + (num + 1) + "应为字符串");
        }
Ejemplo n.º 4
0
Archivo: IfNull.cs Proyecto: ikvm/test
        public override object calculate()
        {
            if (base.paramList.Count < 2)
            {
                throw new ReportError("ifnull函数参数数目应为2");
            }
            ExpParse parse = (ExpParse)base.paramList[0];

            if (parse == null)
            {
                throw new ReportError("ifnull函数出现无效参数");
            }
            object obj2 = ConvertTool.getValue(parse.calculate());

            if ((obj2 != null) && (obj2 != DBNull.Value))
            {
                return(obj2);
            }
            ExpParse parse2 = (ExpParse)base.paramList[1];

            if (parse2 != null)
            {
                return(ConvertTool.getValue(parse2.calculate()));
            }
            return(null);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// page
        /// </summary>
        /// <typeparam name="T">entity type</typeparam>
        /// <param name="countSqlId">count sql id</param>
        /// <param name="pageSqlId">page sql id</param>
        /// <param name="pageIndex">page index</param>
        /// <param name="pageSize">page size</param>
        /// <param name="pmsDict">parameters</param>
        /// <param name="total">total</param>
        /// <returns>rows</returns>
        public List <T> Page <T>(string countSqlId, string pageSqlId, int pageIndex, int pageSize, out int total, Dictionary <string, object> pmsDict = null) where T : class
        {
            pmsDict = pmsDict == null ? new Dictionary <string, object>() : pmsDict;
            if (pmsDict.Keys.Contains("pageIndex"))
            {
                pmsDict["pageIndex"] = pageIndex;
            }
            else
            {
                pmsDict.Add("pageIndex", pageIndex);
            }
            if (pmsDict.Keys.Contains("pageSize"))
            {
                pmsDict["pageSize"] = pageSize;
            }
            else
            {
                pmsDict.Add("pageSize", pageSize);
            }
            total = ConvertTool.GetInt(QueryObj(FetchSqlFileNameByType <T>(), countSqlId, pmsDict));
            List <T> res = Read <T>(pageSqlId, pmsDict);

            if (total > 0 && res != null && res.Count > 0)
            {
                return(res);
            }
            else
            {
                total = 0;
                return(null);
            }
        }
Ejemplo n.º 6
0
        public override object calculate()
        {
            if (base.paramList.Count < 3)
            {
                throw new ReportError("条件函数参数数目应为3");
            }
            ExpParse parse = (ExpParse)base.paramList[0];

            if (parse == null)
            {
                throw new ReportError("条件函数出现无效参数");
            }
            object obj2 = ConvertTool.getValue(parse.calculate());

            if (!(obj2 is bool))
            {
                throw new ReportError("条件函数参数1应为布尔值");
            }
            if (obj2.Equals(true))
            {
                ExpParse parse2 = (ExpParse)base.paramList[1];
                if (parse2 == null)
                {
                    throw new ReportError("条件函数出现无效参数");
                }
                return(parse2.calculate());
            }
            ExpParse parse3 = (ExpParse)base.paramList[2];

            if (parse3 == null)
            {
                throw new ReportError("条件函数出现无效参数");
            }
            return(parse3.calculate());
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 생성자
        /// </summary>
        /// <param name="line">FTP에서 전송한 directory 정보</param>
        /// <param name="path">현재 디렉토리 경로</param>
        public FtpFileInfo(string line, string path)
        {
            if (IsDebugEnabled)
            {
                log.Debug("Create a new instance of FtpFileInfo with line=[{0}], path=[{1}]", line.EllipsisChar(48),
                          path.EllipsisPath(48));
            }

            var match = GetMatchingRegex(line);

            if (match == null)
            {
                throw new FtpException("Unable to parse line=" + line);
            }

            Filename   = match.Groups["name"].Value;
            FilePath   = path;
            FullName   = string.Concat(FilePath, "/", Filename);
            Permission = match.Groups["permission"].Value;
            Size       = match.Groups["size"].Value.AsLong(0L);

            string dir = match.Groups["dir"].Value;

            FileKind = (dir != string.Empty && dir != "-") ? FtpEntryKind.Directory : FtpEntryKind.File;

            var timestamp = match.Groups["timestamp"].AsText();

            if (timestamp.IsNotWhiteSpace())
            {
                FileDateTime = ConvertTool.ConvertValue(timestamp, typeof(DateTime), English).AsDateTimeNullable();
            }
        }
Ejemplo n.º 8
0
        public override object calculate()
        {
            if (base.paramList.Count != 2)
            {
                throw new ReportError("map函数参数数目应为2");
            }
            ExpParse parse2 = (ExpParse)base.paramList[0];
            ExpParse parse  = (ExpParse)base.paramList[1];

            if ((parse2 == null) || (parse == null))
            {
                throw new ReportError("map函数参数为空");
            }
            object obj7 = parse2.calculate();
            object obj3 = parse.calculate();

            if ((obj7 is ArrayList) && (obj3 is ArrayList))
            {
                ArrayList list  = (ArrayList)obj7;
                ArrayList list2 = (ArrayList)obj3;
                object    obj6  = base.cs.Current.GetValue(false);
                for (int i = 0; i < list.Count; i++)
                {
                    object obj5 = ConvertTool.getValue(list[i]);
                    if (ConvertTool.equals(obj6, obj5) && (list2.Count > i))
                    {
                        return(ConvertTool.getValue(list2[i]));
                    }
                }
            }
            return(null);
        }
Ejemplo n.º 9
0
        public override object calculate()
        {
            if (base.paramList.Count == 0)
            {
                throw new ReportError("tobigint函数参数为空");
            }
            object obj2 = ConvertTool.getValue(((ExpParse)base.paramList[0]).calculate());

            if (obj2 == null)
            {
                return(null);
            }
            if (!(obj2 is string))
            {
                if (!(obj2 is decimal))
                {
                    throw new ReportError("tobigint函数参数1应为合法字符串或数字");
                }
                return(Convert.ToInt64(obj2));
            }
            try
            {
                return(decimal.Parse((string)obj2));
            }
            catch (FormatException)
            {
                return(new ReportError("tobigint函数不能将非法字符串转换成大整数"));
            }
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 지정한 인스턴스의 필드 값을 설정한다.
        /// </summary>
        /// <param name="target"></param>
        /// <param name="fieldName"></param>
        /// <param name="fieldValue"></param>
        public virtual void SetFieldValue(object target, string fieldName, object fieldValue)
        {
            if (IsDebugEnabled)
            {
                log.Debug("필드 값을 설정합니다... TargetType=[{0}], fieldName=[{1}], fieldValue=[{2}]", TargetType.Name, fieldName, fieldValue);
            }

            var fName = GetFieldName(fieldName);

            var @exceptionAction =
                SuppressError
                    ? (Action <Exception>)(ex => { })
                    : ex => {
                if (log.IsWarnEnabled)
                {
                    log.Warn("필드[{0}]에 값[{1}] 설정에 실패했습니다.", fieldName, fieldValue);
                    log.Warn(ex);
                }
            };

            var fieldSetter = FieldSetterMap.GetOrAddFieldSetter(TargetType, fName, @exceptionAction);

            if (fieldSetter != null)
            {
                With.TryAction(() => fieldSetter(target, ConvertTool.IsNullOrDbNull(fieldValue) ? null : fieldValue),
                               @exceptionAction);
            }
        }
Ejemplo n.º 11
0
        /// <summary>
        /// 지정한 인스턴스의 속성 값을 설정한다.
        /// </summary>
        /// <param name="target"></param>
        /// <param name="propertyName"></param>
        /// <param name="propertyValue"></param>
        public virtual void SetPropertyValue(object target, string propertyName, object propertyValue)
        {
            if (IsDebugEnabled)
            {
                log.Debug("속성 값을 설정합니다... TargetType=[{0}], propertyName=[{1}], propertyValue=[{2}]", TargetType.Name, propertyName,
                          propertyValue);
            }

            var pName = GetPropertyName(propertyName);

            var @exceptionAction =
                SuppressError
                    ? (Action <Exception>)(ex => { })
                    : ex => {
                if (log.IsWarnEnabled)
                {
                    log.Warn("속성[{0}]에 값[{1}] 설정에 실패했습니다.", propertyName, propertyValue);
                    log.Warn(ex);
                }
            };

            var propertySetter = PropertySetterMap.GetOrAddPropertySetter(TargetType, pName, @exceptionAction);

            if (propertySetter != null)
            {
                With.TryAction(() => propertySetter(target, ConvertTool.IsNullOrDbNull(propertyValue) ? null : propertyValue),
                               @exceptionAction);
            }
        }
Ejemplo n.º 12
0
 /// <summary>
 /// load button background
 /// </summary>
 private void LoadBtnBackground()
 {
     if (btnSetupOrUninstallService.IsEnabled)
     {
         btnSetupOrUninstallService.Background = new SolidColorBrush(Color.FromRgb((byte)42, (byte)72, (byte)254));
     }
     else
     {
         btnSetupOrUninstallService.Background = new SolidColorBrush(Color.FromRgb((byte)212, (byte)208, (byte)200));
     }
     if (btnStartOrStopService.IsEnabled)
     {
         btnStartOrStopService.Background = new SolidColorBrush(Color.FromRgb((byte)42, (byte)72, (byte)254));
     }
     else
     {
         btnStartOrStopService.Background = new SolidColorBrush(Color.FromRgb((byte)212, (byte)208, (byte)200));
     }
     if (ConvertTool.GetBool(XmlTool.GetNodeValueByXPath(_xPathIsLogging, _path)))
     {
         btnStartOrStopLog.Content = "停用日志";
     }
     else
     {
         btnStartOrStopLog.Content = "启用日志";
     }
 }
Ejemplo n.º 13
0
        public int big_num_compare(string a, string b, int radix)
        {
            try
            {
                a = ConvertTool.RemoveSpace(a);
                b = ConvertTool.RemoveSpace(b);

                BigInteger bignum_a = new BigInteger(a, radix);
                BigInteger bignum_b = new BigInteger(b, radix);
                if (bignum_a == bignum_b)
                {
                    return(0);
                }
                else if (bignum_a > bignum_b)
                {
                    return(1);
                }
                else
                {
                    return(-1);
                }
            }
            catch (Exception ex)
            {
                error(ex.Message);
                return(-1);
            }
        }
Ejemplo n.º 14
0
        public object calculate(CellExt1 cs, DataSet ds, Env env, string param)
        {
            UnitSet set;

            this.cs  = cs;
            this.ds  = ds;
            this.env = env;
            string str = (string)ConvertTool.getValue(new ExpParse(cs, ds, env, param).calculate());

            if ((str != null) && (str.Trim().Length > 0))
            {
                set = new UnitSet(Escape.removeEscAndQuote(str), true, '&');
            }
            else
            {
                set = new UnitSet("", true, '&');
            }
            string expStr = Escape.unescape(set["dataXml"]);
            object obj2   = ConvertTool.getValue(new ExpParse(cs, ds, env, expStr).calculate());

            this.pDataXml = (string)obj2;
            CellExt       current = cs.Current;
            StringBuilder sb      = new StringBuilder();
            object        obj3    = null;

            try
            {
                obj3 = this.cal(set, sb);
            }
            catch (Exception exception)
            {
                throw new ReportError("统计图计算异常:" + exception.Message.ToString().ToString(), exception);
            }
            return(obj3);
        }
Ejemplo n.º 15
0
        public override object calculate()
        {
            if (base.paramList.Count == 0)
            {
                throw new ReportError("istime函数参数为空");
            }
            object obj2 = ConvertTool.getValue(((ExpParse)base.paramList[0]).calculate());

            if (obj2 != null)
            {
                if (obj2 is string)
                {
                    try
                    {
                        DateTime.Parse((string)obj2);
                        return(true);
                    }
                    catch (FormatException)
                    {
                        return(false);
                    }
                }
                throw new ReportError("istime函数参数1应为字符串");
            }
            return(false);
        }
Ejemplo n.º 16
0
Archivo: Left.cs Proyecto: ikvm/test
        public override object calculate()
        {
            if (base.paramList.Count < 2)
            {
                throw new ReportError("left函数参数数目应为2");
            }
            object obj3 = ConvertTool.getValue(((ExpParse)base.paramList[0]).calculate());

            if (obj3 != null)
            {
                if (!(obj3 is string))
                {
                    throw new ReportError("left函数参数1应为字符串");
                }
                object o = ConvertTool.getValue(((ExpParse)base.paramList[1]).calculate());
                if (!ConvertTool.isNumber(o))
                {
                    throw new ReportError("left函数参数2应为数字");
                }
                int num = ConvertTool.intValue(o);
                if (num < 0)
                {
                    throw new ReportError("left函数参数2应大于或等于0");
                }
                string str = (string)obj3;
                if (num > str.Length)
                {
                    return(obj3);
                }
                return(str.Substring(0, num));
            }
            return(obj3);
        }
Ejemplo n.º 17
0
        public override object calculate()
        {
            SubReportList subRptList = base.cs.Env.SubRptList;

            if (subRptList == null)
            {
                throw new ReportError("当前报表没有引入子报表,不能进行子报表运算");
            }
            if ((base.paramList.Count < 3) || (base.paramList.Count > 4))
            {
                throw new ReportError("子报表运算函数的参数格式应为subreport(rpt, List1, List2) 或者 subreport(rpt, List1, List2,importOrEmbed)");
            }
            ExpParse parse4 = (ExpParse)base.paramList[0];

            if (parse4 == null)
            {
                throw new ReportError("子报表运算函数出现无效参数");
            }
            object obj2 = ConvertTool.getValue(parse4.calculate());
            int    num  = 0;

            if (base.paramList.Count == 4)
            {
                ExpParse parse3 = (ExpParse)base.paramList[3];
                if (parse3 == null)
                {
                    throw new ReportError("子报表运算函数出现无效参数");
                }
                object obj6 = ConvertTool.getValue(parse3.calculate());
                try
                {
                    num = (int)obj6;
                }
                catch (Exception)
                {
                    num = 0;
                }
            }
            if (!(obj2 is string))
            {
                throw new ReportError("子报表运算函数第一个参数应为引入的子报表名");
            }
            string       str    = subRptList.getAddress((string)obj2);
            string       str2   = subRptList.getType((string)obj2);
            ReportDefine define = this.method_0(str, str2);
            ExpParse     parse  = (ExpParse)base.paramList[1];
            ExpParse     parse2 = (ExpParse)base.paramList[2];

            if ((parse != null) && (parse2 != null))
            {
                object obj5 = ConvertTool.getValue(parse.calculate());
                object obj4 = ConvertTool.getValue(parse2.calculate());
                if ((obj5 is ArrayList) && (obj4 is ArrayList))
                {
                    return(this.method_1(define, (ArrayList)obj5, (ArrayList)obj4, num));
                }
                return(this.method_1(define, null, null, num));
            }
            return(this.method_1(define, null, null, num));
        }
Ejemplo n.º 18
0
        public override object calculate()
        {
            if (base.paramList.Count < 2)
            {
                throw new ReportError("fill函数参数数目应为2");
            }
            object obj3 = ConvertTool.getValue(((ExpParse)base.paramList[0]).calculate());

            if (obj3 != null)
            {
                if (!(obj3 is string))
                {
                    throw new ReportError("fill函数参数1应为字符串");
                }
                object o = ConvertTool.getValue(((ExpParse)base.paramList[1]).calculate());
                if (!ConvertTool.isNumber(o))
                {
                    throw new ReportError("fill函数参数2应为数字");
                }
                int num2 = ConvertTool.intValue(o);
                if (num2 < 0)
                {
                    throw new ReportError("fill函数参数2应大于或等于0");
                }
                string        str     = (string)obj3;
                int           num3    = str.Length;
                StringBuilder builder = new StringBuilder(num2 * num3);
                for (int i = 0; i < num2; i++)
                {
                    builder.Append(str);
                }
                return(builder.ToString());
            }
            return(obj3);
        }
Ejemplo n.º 19
0
Archivo: Index.cs Proyecto: ikvm/test
        private void method_0(Row row_0)
        {
            BTree tree   = this.btree_0;
            BTree child  = null;
            int   length = this.int_0.Length;

            for (int i = 0; i < length; i++)
            {
                object obj2 = row_0.getData(this.int_0[i]);
                if (tree.numOfChild() == 0)
                {
                    child = new BTree(i, obj2);
                    tree.addChild(child);
                }
                else
                {
                    child = tree.MaxChild;
                    object obj3 = child.GetValue(false);
                    if (ConvertTool.compare2(obj2, obj3) != 0)
                    {
                        child = new BTree(i, obj2);
                        tree.addChild(child);
                    }
                }
                tree = child;
            }
            tree.addRow(row_0);
        }
Ejemplo n.º 20
0
        public override object calculate()
        {
            if (base.paramList.Count < 2)
            {
                throw new ReportError("afterdays函数参数数目应为2");
            }
            ExpParse parse  = (ExpParse)base.paramList[0];
            ExpParse parse2 = (ExpParse)base.paramList[1];
            object   obj3   = ConvertTool.getValue(parse.calculate());
            object   o      = ConvertTool.getValue(parse2.calculate());

            if ((obj3 != null) && (o != null))
            {
                if (obj3 is string)
                {
                    obj3 = ConvertTool.parseDate((string)obj3);
                    if (!(obj3 is DateTime))
                    {
                        throw new ReportError(new StringBuilder("字符串").Append(obj3).Append("不能转换成日期").ToString().ToString());
                    }
                }
                if (!(obj3 is DateTime) || !ConvertTool.isNumber(o))
                {
                    throw new ReportError("afterdays函数参数类型不正确");
                }
                long num  = ((System.DateTime)obj3).Ticks;
                long num2 = (((ConvertTool.longValue(o) * 24) * 3600) * 1000) * 10000;
                return(new System.DateTime(num + num2));
            }
            return(null);
        }
Ejemplo n.º 21
0
Archivo: And.cs Proyecto: ikvm/test
        public override object calculate()
        {
            if (base.unit_0 == null)
            {
                throw new ReportError("and操作缺少左操作数");
            }
            if (base.unit_1 == null)
            {
                throw new ReportError("and操作缺少右操作数");
            }
            object obj2 = ConvertTool.getValue(base.unit_0.calculate());

            if (!(obj2 is bool))
            {
                throw new ReportError("and操作左操作数应为布尔值");
            }
            bool flag = false;

            if (!flag.Equals(obj2))
            {
                obj2 = ConvertTool.getValue(base.unit_1.calculate());
                if (!(obj2 is bool))
                {
                    throw new ReportError("and操作右操作数应为布尔值");
                }
                return(obj2);
            }
            return(false);
        }
Ejemplo n.º 22
0
        private void send(string sapdu)
        {
            sapdu = xTool.ConvertTool.RemoveSpace(sapdu);

            string apdu = this.claChannel(sapdu.Substring(0, 2)) + sapdu.Substring(2);

            this.Command = apdu;
            byte[] temp = this.send(ConvertTool.String2Bytes(apdu));
            string resp = ConvertTool.Bytes2String(temp);

            if ((resp.Length == 4) && (this.autoRes != 0))
            {
                if (resp.Substring(0, 2) == "6C" || resp.Substring(0, 2) == "6c")
                {
                    temp = this.send(ConvertTool.String2Bytes(apdu.Substring(0, apdu.Length - 2) + resp.Substring(2, 2)));
                    resp = ConvertTool.Bytes2String(temp);
                }
                else if (resp.Substring(0, 2) == "61")
                {
                    temp = this.send(ConvertTool.String2Bytes(this.claChannel("00") + "C00000" + resp.Substring(2, 2)));
                    resp = ConvertTool.Bytes2String(temp);
                    while (resp.Substring(0, 2) == "61") //61xx
                    {
                        temp = this.send(ConvertTool.String2Bytes(this.claChannel("00") + "C00000" + resp.Substring(2, 2)));
                        resp = ConvertTool.Bytes2String(temp);
                    }
                }
            }
            this.Response = resp;
        }
Ejemplo n.º 23
0
Archivo: Asc.cs Proyecto: ikvm/test
        public override object calculate()
        {
            if (base.paramList.Count == 0)
            {
                throw new ReportError("asc函数参数列表为空");
            }
            object obj4 = ConvertTool.getValue(((ExpParse)base.paramList[0]).calculate());

            if (!(obj4 is string))
            {
                throw new ReportError("asc函数参数1应为字符串");
            }
            int num = 1;

            if (base.paramList.Count > 1)
            {
                object o = ConvertTool.getValue(((ExpParse)base.paramList[1]).calculate());
                if (!ConvertTool.isNumber(o))
                {
                    throw new ReportError("asc函数参数2应为正整数");
                }
                num = Convert.ToInt32(o);
            }
            string str = (string)obj4;

            if ((str.Length < num) || (num <= 0))
            {
                return(null);
            }
            return(str[num - 1]);
        }
Ejemplo n.º 24
0
Archivo: DSSum1.cs Proyecto: ikvm/test
        public override object calculate()
        {
            if (base.paramList.Count == 0)
            {
                throw new ReportError("sum函数参数列表为空");
            }
            ExpParse exp    = (ExpParse)base.paramList[0];
            ExpParse parse2 = null;

            if (base.paramList.Count > 1)
            {
                parse2 = (ExpParse)base.paramList[1];
            }
            Group  group    = base.ds.CurrentGroup.filter(parse2);
            int    rowCount = group.RowCount;
            double num2     = 0.0;

            for (int i = 0; i < rowCount; i++)
            {
                object o = ConvertTool.getSingleValue(group.getRow(i).evaluate(exp));
                if (o != null)
                {
                    num2 += ConvertTool.doubleValue(o);
                }
            }
            return(num2);
        }
Ejemplo n.º 25
0
        public static string RSACRTde(string data, string p, string q, string dp, string dq, string invq)
        {
            data = ConvertTool.RemoveSpace(data);
            p    = ConvertTool.RemoveSpace(p);
            q    = ConvertTool.RemoveSpace(q);
            dp   = ConvertTool.RemoveSpace(dp);
            dq   = ConvertTool.RemoveSpace(dq);
            invq = ConvertTool.RemoveSpace(invq);

            BigInteger cipher = new BigInteger(ConvertTool.String2Bytes(data));
            BigInteger rsaP = new BigInteger(ConvertTool.String2Bytes(p));
            BigInteger rsaQ = new BigInteger(ConvertTool.String2Bytes(q));
            BigInteger rsaDP = new BigInteger(ConvertTool.String2Bytes(dp));
            BigInteger rsaDQ = new BigInteger(ConvertTool.String2Bytes(dq));
            BigInteger rsaINVQ = new BigInteger(ConvertTool.String2Bytes(invq));
            BigInteger m, m1, m2, h;

            m1 = cipher.modPow(rsaDP, rsaP);
            m2 = cipher.modPow(rsaDQ, rsaQ);
            var temp = m1 - m2;

            while (temp < 0)
            {
                temp += rsaP;
            }
            h = (rsaINVQ * temp) % rsaP;
            m = m2 + (h * rsaQ);

            return(m.ToHexString());
        }
Ejemplo n.º 26
0
        public Model.AjaxResult Like(HttpContext context, Model.AjaxResult ajax)
        {
            int channel_id = ConvertTool.ToInt(DTRequest.GetString("channel_id"), 0);

            if (channel_id <= 0)
            {
                return(ErrorAjaxResult(ajax, @"频道错误"));
            }

            int article_id = ConvertTool.ToInt(DTRequest.GetString("article_id"), 0);

            if (article_id <= 0)
            {
                return(ErrorAjaxResult(ajax, @"文章错误"));
            }

            BLL.article bllarticle = new BLL.article();
            string      fieldname  = ReflexHelp.Name(() => new Model.article().like_count);
            bool        issu       = bllarticle.UpdateField(channel_id, article_id, string.Format("{0} = {0} + 1", fieldname));

            if (!issu)
            {
                return(ErrorAjaxResult(ajax, @"点赞失败!"));
            }

            ajax.Status = Model.AjaxResult.StatusValue.Success;
            ajax.Msg    = @"点赞成功!";
            return(ajax);
        }
Ejemplo n.º 27
0
        /// <summary>
        /// 条件比较
        /// </summary>
        private static bool GetTFilterOk(string where, int quoteIndex, string sign, Op op, MDataColumn mdc, out TFilter tFilter)
        {
            bool result = false;

            tFilter = null;
            int index = where.ToLower().IndexOf(sign, 0, quoteIndex > 0 ? quoteIndex : where.Length);

            if (index > 0)
            {
                string columnAName  = where.Substring(0, index).Trim();
                int    columnAIndex = mdc.GetIndex(columnAName);
                string valueB       = where.Substring(index + sign.Length).Trim(' ', '\'').Replace("''", "'");
                if (op == Op.In || op == Op.NotIn)
                {
                    valueB = ',' + valueB.TrimStart('(', ')').Replace("'", "") + ",";//去除单引号。
                }
                int columnBIndex = -1;
                if (quoteIndex == 0 && mdc.Contains(valueB)) //判断右侧的是否列名。
                {
                    columnBIndex = mdc.GetIndex(valueB);
                }
                tFilter = new TFilter(Ao.None, columnAName, columnAIndex, op, valueB, columnBIndex);
                if (columnBIndex == -1 && !string.IsNullOrEmpty(Convert.ToString(valueB)))      //右侧是值类型,转换值的类型。
                {
                    if (columnAIndex > -1 && DataType.GetGroup(mdc[columnAIndex].SqlType) == 3) //bool型
                    {
                        switch (Convert.ToString(tFilter._valueB).ToLower())
                        {
                        case "true":
                        case "1":
                        case "on":
                            tFilter._valueB = true;
                            break;

                        case "false":
                        case "0":
                        case "":
                            tFilter._valueB = false;
                            break;

                        default:
                            tFilter._valueB = null;
                            break;
                        }
                    }
                    else
                    {
                        try
                        {
                            tFilter._valueB = ConvertTool.ChangeType(tFilter._valueB, columnAIndex > -1 ? typeof(string) : mdc[columnAIndex].ValueType);
                        }
                        catch
                        {
                        }
                    }
                }
                result = true;
            }
            return(result);
        }
Ejemplo n.º 28
0
        public override object calculate()
        {
            if (base.paramList.Count == 0)
            {
                throw new ReportError("quaterend函数参数列表为空");
            }
            object obj2 = ConvertTool.getValue(((ExpParse)base.paramList[0]).calculate());

            if (obj2 != null)
            {
                if (obj2 is string)
                {
                    obj2 = ConvertTool.parseDate((string)obj2);
                    if (!(obj2 is DateTime))
                    {
                        throw new ReportError(new StringBuilder("字符串").Append(obj2).Append("不能转换成日期").ToString().ToString());
                    }
                }
                if (!(obj2 is DateTime))
                {
                    throw new ReportError("quaterend函数参数类型不正确,应为日期型或字符型");
                }
                return(base.env.DateFactory.quaterEnd((System.DateTime)obj2));
            }
            return(obj2);
        }
Ejemplo n.º 29
0
        private bool DoAdd()
        {
            bool result = false;

            Model.payment model = new Model.payment();
            BLL.payment   bll   = new BLL.payment();

            model.title           = txtTitle.Text.Trim();
            model.img_url         = txtImgUrl.Text.Trim();
            model.remark          = txtRemark.Text;
            model.type            = int.Parse(rblType.SelectedValue);
            model.poundage_type   = int.Parse(rblPoundageType.SelectedValue);
            model.poundage_amount = decimal.Parse(txtPoundageAmount.Text.Trim());
            model.api_path        = txtApiPath.Text.Trim();
            model.redirect_url    = txtRedirectUrl.Text.Trim();
            model.return_url      = txtReturnUrl.Text.Trim();
            model.notify_url      = txtNotifyUrl.Text.Trim();
            if (cbIsLock.Checked == true)
            {
                model.is_lock = 0;
            }
            else
            {
                model.is_lock = 1;
            }
            model.sort_id = ConvertTool.ToInt(txtSortId.Text.Trim(), 99);

            if (bll.Add(model) > 0)
            {
                AddAdminLog(DTEnums.ActionEnum.Add.ToString(), "添加支付平台:" + model.title); //记录日志
                result = true;
            }
            return(result);
        }
Ejemplo n.º 30
0
Archivo: Sum.cs Proyecto: ikvm/test
        public override object calculate()
        {
            if (base.paramList.Count == 0)
            {
                throw new ReportError("sum函数参数列表为空");
            }
            ExpParse parse = (ExpParse)base.paramList[0];

            if (parse == null)
            {
                throw new ReportError("sum函数出现无效参数");
            }
            object obj3 = ConvertTool.getValue(parse.calculate());
            double num2 = 0.0;

            if (!(obj3 is ArrayList))
            {
                return(obj3);
            }
            ArrayList list = (ArrayList)obj3;

            for (int i = 0; i < list.Count; i++)
            {
                object o = ConvertTool.getSingleValue(list[i]);
                if (o != null)
                {
                    num2 += ConvertTool.doubleValue(o);
                }
            }
            return(num2);
        }