コード例 #1
0
ファイル: PrizeRemote.cs プロジェクト: rongxiong/Scut
        private void DoQuery()
        {
            List<SqlParameter> paramValues = new List<SqlParameter>();
            string condition = "Where 1=1";
            JsonTable jsonTable = new JsonTable();
            if (GetParam("GameUserID").Length > 0)
            {
                condition += " and UserID=@UserID";
                paramValues.Add(SqlParamHelper.MakeInParam("@UserID", SqlDbType.VarChar, 0, GetParam("GameUserID")));
            }
            if (GetParam("IsTasked").Length > 0)
            {
                condition += " and IsTasked=@IsTasked";
                paramValues.Add(SqlParamHelper.MakeInParam("@IsTasked", SqlDbType.Bit, 0, GetParamAsInt("IsTasked")));
            }
            if (GetParam("FromDate").Length > 0)
            {
                condition += " and CreateDate>=@fromDate";
                paramValues.Add(SqlParamHelper.MakeInParam("@fromDate", SqlDbType.VarChar, 0, GetParam("FromDate")));
            }
            if (GetParam("ToDate").Length > 0)
            {
                condition += " and CreateDate<=@toDate";
                paramValues.Add(SqlParamHelper.MakeInParam("@toDate", SqlDbType.VarChar, 0, GetParam("ToDate")));
            }

            var service = new DdzDataService(GameID, ServerID);
            AppendPageParam(paramValues, PageIndex, PageSize);
            var getter = service.Get<PrizeGetter>(condition, PageIndex, PageSize, paramValues);

            jsonTable.rows = getter.GetData();
            jsonTable.total = getter.RecordCount;

            _context.Response.Write(jsonTable.ToJson());
        }
コード例 #2
0
        public void Map_Null_ReturnsNull()
        {
            var mapper = CreateMapper();

            JsonTable actual = mapper.Map(null);

            Check.That(actual).IsNull();
        }
コード例 #3
0
 public Column(RectTransform container, string title)
 {
     cells               = new List <Cell>();
     lblHeader           = JsonTable.CreateInstance(container);
     lblHeader.fontStyle = FontStyles.Bold;
     lblHeader.text      = title;
     lblHeader.name      = $"Column - {title}";
     trColumn            = lblHeader.GetComponent <RectTransform>();
 }
コード例 #4
0
 public JsonTableExcelResult(JsonExcelParameter parameter)
 {
     _arg            = parameter;
     _jTable         = _arg.Table;
     _workbook       = new Workbook();
     _worksheet      = _workbook.Worksheets[0];
     _worksheet.Name = _arg.TableName.Length > 30 ? _arg.TableName.Substring(0, 30) : _arg.TableName;
     _cells          = _worksheet.Cells;
     BuildStyle();
 }
コード例 #5
0
        private void DoQuery()
        {
            List <SqlParameter> paramValues = new List <SqlParameter>();
            string    condition             = "Where 1=1";
            JsonTable jsonTable             = new JsonTable();

            if (GetParam("NickName").Length > 0)
            {
                condition += " and NickName like @NickName";
                paramValues.Add(SqlParamHelper.MakeInParam("@NickName", SqlDbType.VarChar, 0, "%" + GetParam("NickName") + "%"));
            }
            if (GetParam("Pid").Length > 0)
            {
                condition += " and Pid=@Pid";
                paramValues.Add(SqlParamHelper.MakeInParam("@Pid", SqlDbType.VarChar, 0, GetParam("Pid")));
            }
            if (GetParam("UserStatus").Length > 0)
            {
                condition += " and UserStatus=@UserStatus";
                paramValues.Add(SqlParamHelper.MakeInParam("@UserStatus", SqlDbType.VarChar, 0, GetParam("UserStatus")));
            }
            if (GetParam("MsgState").Length > 0)
            {
                condition += " and MsgState=@MsgState";
                paramValues.Add(SqlParamHelper.MakeInParam("@MsgState", SqlDbType.VarChar, 0, GetParam("MsgState")));
            }
            if (GetParam("fromDate").Length > 0)
            {
                condition += " and CreateDate>=@fromDate";
                paramValues.Add(SqlParamHelper.MakeInParam("@fromDate", SqlDbType.VarChar, 0, GetParam("fromDate")));
            }
            if (GetParam("toDate").Length > 0)
            {
                condition += " and CreateDate<=@toDate";
                paramValues.Add(SqlParamHelper.MakeInParam("@toDate", SqlDbType.VarChar, 0, GetParam("toDate")));
            }
            if (IsChannel)
            {
                condition += " and RetailID=@ChannelID";
                paramValues.Add(SqlParamHelper.MakeInParam("@ChannelID", SqlDbType.VarChar, 0, EmpRetailId));
            }

            var service = new DdzDataService(GameID, ServerID);

            AppendPageParam(paramValues, PageIndex, PageSize);
            var getter = service.Get <UserGetter>(condition, PageIndex, PageSize, paramValues);

            jsonTable.rows  = getter.GetData();
            jsonTable.total = getter.RecordCount;

            _context.Response.Write(jsonTable.ToJson());
        }
コード例 #6
0
ファイル: UserRemote.cs プロジェクト: rongxiong/Scut
        private void DoQuery()
        {
            List<SqlParameter> paramValues = new List<SqlParameter>();
            string condition = "Where 1=1";
            JsonTable jsonTable = new JsonTable();
            if (GetParam("NickName").Length > 0)
            {
                condition += " and NickName like @NickName";
                paramValues.Add(SqlParamHelper.MakeInParam("@NickName", SqlDbType.VarChar, 0, "%" + GetParam("NickName") + "%"));
            }
            if (GetParam("Pid").Length > 0)
            {
                condition += " and Pid=@Pid";
                paramValues.Add(SqlParamHelper.MakeInParam("@Pid", SqlDbType.VarChar, 0, GetParam("Pid")));
            }
            if (GetParam("UserStatus").Length > 0)
            {
                condition += " and UserStatus=@UserStatus";
                paramValues.Add(SqlParamHelper.MakeInParam("@UserStatus", SqlDbType.VarChar, 0, GetParam("UserStatus")));
            }
            if (GetParam("MsgState").Length > 0)
            {
                condition += " and MsgState=@MsgState";
                paramValues.Add(SqlParamHelper.MakeInParam("@MsgState", SqlDbType.VarChar, 0, GetParam("MsgState")));
            }
            if (GetParam("fromDate").Length > 0)
            {
                condition += " and CreateDate>=@fromDate";
                paramValues.Add(SqlParamHelper.MakeInParam("@fromDate", SqlDbType.VarChar, 0, GetParam("fromDate")));
            }
            if (GetParam("toDate").Length > 0)
            {
                condition += " and CreateDate<=@toDate";
                paramValues.Add(SqlParamHelper.MakeInParam("@toDate", SqlDbType.VarChar, 0, GetParam("toDate")));
            }
            if (IsChannel)
            {
                condition += " and RetailID=@ChannelID";
                paramValues.Add(SqlParamHelper.MakeInParam("@ChannelID", SqlDbType.VarChar, 0, EmpRetailId));

            }

            var service = new DdzDataService(GameID, ServerID);
            AppendPageParam(paramValues, PageIndex, PageSize);
            var getter = service.Get<UserGetter>(condition, PageIndex, PageSize, paramValues);

            jsonTable.rows = getter.GetData();
            jsonTable.total = getter.RecordCount;

            _context.Response.Write(jsonTable.ToJson());
        }
コード例 #7
0
ファイル: Serialization.cs プロジェクト: lnunezp/API_Net-Gale
        public static string ToJson(object Target)
        {
            var s = new System.Web.Script.Serialization.JavaScriptSerializer();

            s.MaxJsonLength = int.MaxValue; //Change to Max Length  (Huge 4 MB!!!)

            if (Target != null && Target.GetType().Equals(typeof(System.Data.DataSet)))
            {
                #region Serializacion Especial para un Dataset
                System.Data.DataSet dsToFragment = (System.Data.DataSet)Target;

                List <JsonTable> JsonDataset = new List <JsonTable>();
                foreach (System.Data.DataTable dtable in dsToFragment.Tables)
                {
                    JsonTable _jsonTable = new JsonTable();

                    //--------------------------------------------------------------------------------------------------
                    //----[ Add Reference to Columns
                    _jsonTable.columns = new List <JsonTable.JsonColumn>();
                    foreach (System.Data.DataColumn col in dtable.Columns)
                    {
                        JsonTable.JsonColumn column = new JsonTable.JsonColumn();
                        column.datattype = col.DataType.ToString();
                        column.name      = col.ColumnName;
                        _jsonTable.columns.Add(column);
                    }
                    //--------------------------------------------------------------------------------------------------


                    //--------------------------------------------------------------------------------------------------
                    //----[ Add rows data
                    _jsonTable.rows = new List <object[]>();
                    foreach (System.Data.DataRow row in dtable.Rows)
                    {
                        _jsonTable.rows.Add(row.ItemArray);
                    }
                    //--------------------------------------------------------------------------------------------------


                    JsonDataset.Add(_jsonTable);
                }
                return((s).Serialize(JsonDataset));

                #endregion
            }
            else
            {
                return((s).Serialize(Target));
            }
        }
コード例 #8
0
 public JsonTableGroupExcelResult(JsonExcelParameter parameter)
 {
     _arg                = parameter;
     _jTable             = _arg.Table;
     _workbook           = new Workbook();
     _worksheet          = _workbook.Worksheets[0];
     _worksheet.Name     = _arg.TableName.Length > 30 ? _arg.TableName.Substring(0, 30) : _arg.TableName;
     _cells              = _worksheet.Cells;
     _isSumRowColumnName = parameter.totalColumns;
     _sumGroupColumnName = parameter.sumGroupColumnName;
     _isTotal            = parameter.isTotal;
     if (!string.IsNullOrEmpty(_sumGroupColumnName))
     {
         GroupJtable(_sumGroupColumnName, _isTotal, _isSumRowColumnName);
     }
     BuildStyle();
 }
コード例 #9
0
ファイル: LanguageData.cs プロジェクト: rufreakde/RacesRTS
    /// <summary>
    /// Parse the language out of a JSON string.
    /// </summary>
    /// <param name="_JSON">The JSON string to load.</param>
    public bool Load(string _JSON)
    {
        if (_JSON.Length <= 2)
        {
            return(false);
        }

        JsonObject obj = Json.Decode(_JSON);
        JsonTable  tbl = obj.ToTable();

        foreach (string key in tbl.Keys)
        {
            texts.Add(key, (string)tbl[key]);
        }

        return(true);
    }
コード例 #10
0
ファイル: BondReportController.cs プロジェクト: radtek/ThomRe
        private JsonTable BuildBondIssuMaturesTopTable(DataTable table)
        {
            var jTable  = new JsonTable();
            var headers = GetIssuMaturesTopTableHeaders();
            var columns = GetIssuMaturesTopTableColumns();

            for (int i = 0; i < headers.Length; i++)
            {
                jTable.ColumTemplate.Add(new JsonColumn {
                    ColumnName = columns[i], Name = headers[i]
                });
            }
            var typeName    = "TypeCn";
            var subTypeName = "SubTypeCn";

            if (CultureHelper.IsEnglishCulture())
            {
                typeName    = "TypeEn";
                subTypeName = "SubTypeEn";
            }
            foreach (DataRow row in table.Rows)
            {
                var currentRow = new Dictionary <string, string>
                {
                    { "TypeValue", row["Type"].ToString() },
                    { "Type", row[typeName].ToString() },
                    { "SubType", row[subTypeName].ToString() },
                    { "SubTypeValue", row["SubType"].ToString() },
                    { "isParent", row["isParent"].ToString() },
                    { "EndBalance", UIGenerator.FormatCellValue(row["EndBalance"], "decimal") },
                    { "InitialBalance", UIGenerator.FormatCellValue(row["InitialBalance"], "decimal") },
                    { "Issues", row["Issues"].ToString() },
                    { "IssuesPercent", UIGenerator.FormatCellValue(row["IssuesPercent"], "decimal") },
                    { "IssuesAmount", UIGenerator.FormatCellValue(row["IssuesAmount"], "decimal") },
                    { "IssuesAmountPercent", UIGenerator.FormatCellValue(row["IssuesAmountPercent"], "decimal") },
                    { "MaturityBonds", row["MaturityBonds"].ToString() },
                    { "MaturityAmount", UIGenerator.FormatCellValue(row["MaturityAmount"], "decimal") },
                    { "EndIssues", row["EndIssues"].ToString() },
                    { "EndIssuesPercent", UIGenerator.FormatCellValue(row["EndIssuesPercent"], "decimal") }
                };
                jTable.RowData.Add(currentRow);
            }
            return(jTable);
        }
コード例 #11
0
    private IEnumerator SendScores(bool _Multiplayer, string _Mode, CScoreEntry[] _Entries)
    {
        // Generate json table
        JsonTable info = new JsonTable();

        info.Add("multiplayer", _Multiplayer);
        info.Add("mode", _Mode);
        info.Add("count", _Entries.Length);

        JsonTable entry;

        for (int i = 0; i < _Entries.Length; i++)
        {
            entry = new JsonTable();
            entry.Add("name", _Entries[i].Name.Replace(" ", ""));
            entry.Add("score", _Entries[i].Score);
            entry.Add("time", Mathf.Round(_Entries[i].TotalTime * 100.0f) / 100.0f);
            info.Add("entry" + i, entry);
        }

        //Debug.Log("Json: " + info.ToJson());

        // Get complete url
        string json = UploadScoresURL + "?json=" + info.ToJson();

        Debug.Log("URL: " + json);

        // Send string to server
        WWW post = new WWW(json);

        //Debug.Log("URL: " + post.url);

        // Await response
        yield return(post);

        if (post.error != null)
        {
            Debug.LogError("CScoreCommunicator::SendScores - Error uploading scores to '" + UploadScoresURL + "' with data '" + info.ToJson() + "'. Error: " + post.error);
        }
        else
        {
            Debug.Log("CScoreCommunicator::SendScores - Uploaded scores with result: " + post.text);
        }
    }
コード例 #12
0
ファイル: CNEController.cs プロジェクト: radtek/ThomRe
        public JsonTable BuidJsonTable(DataTable table)
        {
            var jTable  = new JsonTable();
            var columns = new string[table.Columns.Count];

            for (int i = 0; i < table.Columns.Count; i++)
            {
                columns[i] = table.Columns[i].ColumnName;
            }
            foreach (DataRow row in table.Rows)
            {
                var currentRow = new Dictionary <string, string>();
                foreach (var column in columns)
                {
                    currentRow.Add(column, row[column].ToString());
                }
                jTable.RowData.Add(currentRow);
            }
            return(jTable);
        }
コード例 #13
0
        public ActionResult CategorySidevar(int datavalue)
        {
            List <JsonTable> jsonData = new List <JsonTable>();
            var data = _repo.GetCategoryWithDeptId(datavalue).ToList();

            for (var i = 0; i < data.Count(); i++)
            {
                var       id      = data[i].Id.ToString();
                JsonTable datanew = new JsonTable()
                {
                    Id   = data[i].Id.ToString(),
                    Name = data[i].Name
                };
                jsonData.Add(datanew);
            }



            return(Json(jsonData, JsonRequestBehavior.AllowGet));
        }
コード例 #14
0
ファイル: HomeController.cs プロジェクト: radtek/ThomRe
        private JsonTable BuildHomeItemTable(DataTable table, int total, int startPage, int pageSize)
        {
            var jTable = new JsonTable();

            jTable.CurrentPage = startPage;
            jTable.PageSize    = pageSize;
            jTable.Total       = total;
            jTable.ColumTemplate.Add(new JsonColumn {
                ColumnName = "MODULENAME", Name = "MODULENAME", ColumnType = "text"
            });
            jTable.ColumTemplate.Add(new JsonColumn {
                ColumnName = "NAMECN", Name = "NAMECN", ColumnStyle = "width: 200px; overflow: hidden; text-overflow: ellipsis; display: inline-block;", ColumnType = "text"
            });
            jTable.ColumTemplate.Add(new JsonColumn {
                ColumnName = "NAMEEN", Name = "NAMEEN", ColumnStyle = "width: 200px; overflow: hidden; text-overflow: ellipsis; display: inline-block;", ColumnType = "text"
            });
            jTable.ColumTemplate.Add(new JsonColumn {
                ColumnName = "TYPE", Name = "TYPE", ColumnType = "text"
            });
            jTable.ColumTemplate.Add(new JsonColumn {
                ColumnName = "TYPEVALUE", Name = "TYPEVALUE", ColumnStyle = "width: 200px; overflow: hidden; text-overflow: ellipsis; display: inline-block;", ColumnType = "text"
            });
            jTable.ColumTemplate.Add(new JsonColumn {
                ColumnName = "MTIME", Name = "MTIME", ColumnType = "text"
            });
            jTable.ColumTemplate.Add(new JsonColumn {
                ColumnName = "ID", Name = "ID"
            });
            for (int j = 0; j < table.Rows.Count; j++)
            {
                var currentRow = new Dictionary <string, string>();
                for (int i = 0; i < jTable.ColumTemplate.Count; i++)
                {
                    currentRow.Add(jTable.ColumTemplate[i].ColumnName, table.Rows[j][jTable.ColumTemplate[i].ColumnName].ToString());
                }
                jTable.RowData.Add(currentRow);
            }
            return(jTable);
        }
コード例 #15
0
ファイル: PrizeRemote.cs プロジェクト: dongliang/Scut
        private void DoQuery()
        {
            List <SqlParameter> paramValues = new List <SqlParameter>();
            string    condition             = "Where 1=1";
            JsonTable jsonTable             = new JsonTable();

            if (GetParam("GameUserID").Length > 0)
            {
                condition += " and UserID=@UserID";
                paramValues.Add(SqlParamHelper.MakeInParam("@UserID", SqlDbType.VarChar, 0, GetParam("GameUserID")));
            }
            if (GetParam("IsTasked").Length > 0)
            {
                condition += " and IsTasked=@IsTasked";
                paramValues.Add(SqlParamHelper.MakeInParam("@IsTasked", SqlDbType.Bit, 0, GetParamAsInt("IsTasked")));
            }
            if (GetParam("FromDate").Length > 0)
            {
                condition += " and CreateDate>=@fromDate";
                paramValues.Add(SqlParamHelper.MakeInParam("@fromDate", SqlDbType.VarChar, 0, GetParam("FromDate")));
            }
            if (GetParam("ToDate").Length > 0)
            {
                condition += " and CreateDate<=@toDate";
                paramValues.Add(SqlParamHelper.MakeInParam("@toDate", SqlDbType.VarChar, 0, GetParam("ToDate")));
            }

            var service = new DdzDataService(GameID, ServerID);

            AppendPageParam(paramValues, PageIndex, PageSize);
            var getter = service.Get <PrizeGetter>(condition, PageIndex, PageSize, paramValues);

            jsonTable.rows  = getter.GetData();
            jsonTable.total = getter.RecordCount;

            _context.Response.Write(jsonTable.ToJson());
        }
コード例 #16
0
ファイル: PartnersController.cs プロジェクト: radtek/ThomRe
        private new JsonTable BuidJsonTable(DataTable table, IEnumerable <REPORTCOLUMNDEFINITION> colTemplate, int total, int currentPage, int pageSize)
        {
            var jTable = new JsonTable();

            jTable.CurrentPage = currentPage;
            jTable.PageSize    = pageSize;
            jTable.Total       = total;
            foreach (var column in colTemplate)
            {
                jTable.ColumTemplate.Add(new JsonColumn {
                    ColumnName = column.COLUMN_NAME, ColumnType = column.COLUMN_TYPE, Name = column.DisplayName
                });
            }
            var columns = new string[table.Columns.Count];

            for (int i = 0; i < table.Columns.Count; i++)
            {
                columns[i] = table.Columns[i].ColumnName;
            }
            foreach (DataRow row in table.Rows)
            {
                var currentRow = new Dictionary <string, string>();
                foreach (var column in columns)
                {
                    if (column == "PUBLISHED")
                    {
                        currentRow.Add(column, Convert.ToDateTime(row[column]).ToString("yyyy-MM-dd HH:mm:ss"));
                    }
                    else
                    {
                        currentRow.Add(column, row[column].ToString());
                    }
                }
                jTable.RowData.Add(currentRow);
            }
            return(jTable);
        }
コード例 #17
0
 public DimSumBondData(List <Dictionary <string, string> > topTable, ChartData chart, JsonTable bottomTable)
 {
     this.TopTable    = topTable;
     this.Chart       = chart;
     this.BottomTable = bottomTable;
 }
コード例 #18
0
        /// <summary>
        /// Converts Google.Analytics.DataFeed into a JsonDataTable
        /// </summary>
        /// <param name="jsKey">a unique key for the javascript variable.  variable is created as var {jsKey}_JsonTable = {};</param>
        /// <returns></returns>
        public string ResultsAsJsonTable(string jsKey)
        {
            string x = queryResults.ToString();

            if (queryResults.Entries.Count == 0)
            {
                return("{}");
            }

            JsonTable tab = new JsonTable(jsKey);
            int       idx = 0;

            foreach (DataEntry entry in queryResults.Entries)
            {
                JsonRow row = new JsonRow();
                foreach (Dimension dimension in entry.Dimensions)
                {
                    if (idx == 0)
                    {
                        tab.Columns.Add(new JsonColumn()
                        {
                            ID = dimension.Name, Label = getLabelFriendlyName(dimension.Name), Type = JsonType.STRING
                        });
                    }
                    JsonCell cell = new JsonCell();
                    cell.Type = JsonType.STRING;
                    int valAsNumDate;
                    if (int.TryParse(dimension.Value, out valAsNumDate))
                    {
                        string year  = dimension.Value.Substring(0, 4);
                        string month = dimension.Value.Substring(4, 2);
                        string day   = dimension.Value.Substring(6);
                        cell.Value = month + '/' + day + '/' + year;
                    }
                    else
                    {
                        cell.Value = dimension.Value;
                    }
                    row.Cells.Add(cell);
                }
                foreach (Metric metric in entry.Metrics)
                {
                    if (idx == 0)
                    {
                        tab.Columns.Add(new JsonColumn()
                        {
                            ID = metric.Name, Label = getLabelFriendlyName(metric.Name), Type = JsonType.NUMBER
                        });
                    }
                    JsonCell cell = new JsonCell();
                    cell.Type  = JsonType.NUMBER;
                    cell.Value = metric.Value;
                    row.Cells.Add(cell);
                }

                idx++;
                tab.Rows.Add(row);
            }

            return(tab.ToString());
        }
コード例 #19
0
ファイル: IssueTrendData.cs プロジェクト: radtek/ThomRe
 public IssueTrendData(JsonTable topTable, object chart, JsonTable bottomTable)
 {
     TopTable    = topTable;
     Chart       = chart;
     BottomTable = bottomTable;
 }
コード例 #20
0
        private JsonTable BuildDetailJsonTable(string period, string viewBy, int years, string unit, int id, string page)
        {
            var issuerFundamental = _repository.GetFoundamentalData(page, id, period, viewBy, years, unit);

            if (issuerFundamental == null || issuerFundamental.Count() == 0)
            {
                return(new JsonTable());
            }

            var startYear = issuerFundamental.Min(f => f.EndDate).Year;
            var endYear   = issuerFundamental.Max(f => f.EndDate).Year;
            var jTable    = new JsonTable();

            jTable.RowData = ConvertToRowData(issuerFundamental, page, period);
            if (period == "Y")
            {
                jTable.ColumTemplate.Add(new JsonColumn {
                    Name = Resources.Global.Fundation_PeriodEndDate, ColumnName = "Item"
                });
                for (int i = endYear; i >= startYear; i--)
                {
                    var endDates = issuerFundamental.Where(f => f.EndDate.Year == i).Select(f => f.EndDate).FirstOrDefault();
                    if (endDates == null)
                    {
                        continue;
                    }
                    jTable.ColumTemplate.Add(new JsonColumn {
                        Name = endDates.ToString("yyyy-MM-dd"), ColumnName = "Y" + i.ToString()
                    });
                }
            }
            else
            {
                jTable.ExtraHeaders = new List <JsonExtraColumn> {
                    new JsonExtraColumn {
                        Name = string.Empty, ColSpan = 1
                    }
                };
                jTable.ColumTemplate.Add(new JsonColumn {
                    Name = Resources.Global.Fundation_PeriodEndDate, ColumnName = "Item"
                });
                for (var i = endYear; i >= startYear; i--)
                {
                    var endDates = issuerFundamental.Where(f => f.EndDate.Year == i).OrderByDescending(f => f.EndDate).Select(f => f.EndDate).ToList();
                    if (endDates == null)
                    {
                        continue;
                    }

                    jTable.ExtraHeaders.Add(new JsonExtraColumn {
                        Name = i.ToString(), ColSpan = endDates.Count()
                    });
                    for (var j = 0; j < endDates.Count(); j++)
                    {
                        jTable.ColumTemplate.Add(new JsonColumn
                        {
                            Name       = endDates.ElementAt(j).ToString("yyyy-MM-dd"),
                            ColumnName =
                                "Y" + i + "Q" +
                                (Convert.ToInt32(endDates.ElementAt(j).Month) / 3)
                        });
                    }
                }
            }
            return(jTable);
        }
コード例 #21
0
        private static string GetIsaBreakdownJson(string isaCsv)
        {
            if (isaCsv == null)
            {
                return(null);
            }

            var tableRows = new List <JsonTableRow>();

            using (var reader = new StringReader(isaCsv))
                using (var csv = new CsvReader(reader, new CsvHelper.Configuration.Configuration {
                    HasHeaderRecord = false
                }))
                {
                    while (csv.Read())
                    {
                        var field0 = csv.GetField(0);

                        string field1, field2, field3, field4;
                        if (field0.Contains("label"))
                        {
                            field1 = field2 = field3 = field4 = "";
                        }
                        else
                        {
                            field1 = csv.GetField(1);
                            field2 = csv.GetField(2);
                            field3 = csv.GetField(3);
                            field4 = csv.GetField(4);
                        }

                        tableRows.Add(new JsonTableRow
                        {
                            Data = new[]
                            {
                                field0,
                                field1,
                                field2,
                                field3,
                                field4
                                //csv.GetField(5),
                            }
                        });
                    }
                }

            var table = new JsonTable
            {
                Header = new JsonTableRow
                {
                    Data = new[]
                    {
                        "Offset",
                        "OpCode",
                        "Parameters",
                        "Category",
                        "Cycles",
                        //"Binary"
                    }
                },

                Rows = tableRows
            };

            return(table.ToJson());
        }
コード例 #22
0
ファイル: BondReportController.cs プロジェクト: radtek/ThomRe
        private JsonTable BuildBondIssuMaturesChartDataForExcel(string rate, string columnType, DateTime start, DateTime end, string category, string itemList, string unit, int isUseSubCategory = 0, string subCategory = "Bond_Class", string subCategoryValue = "", bool isTotal = false)
        {
            var jTable      = new JsonTable();
            var typeName    = "TypeCn";
            var subTypeName = "SubTypeCn";

            if (CultureHelper.IsEnglishCulture())
            {
                typeName    = "TypeEn";
                subTypeName = "SubTypeEn";
            }

            var yearsDic = new Dictionary <string, DataTable>();
            var dates    = PopulateRateTimes(start, end, rate);

            for (var i = 0; i < dates.Count; i += 2)
            {
                var currentStart = dates[i];
                var currentEnd   = dates[i + 1];
                var summaryData  = BondReportRepository.GetBondDepositoryBalanceChart(columnType, currentStart, currentEnd, category, itemList, unit, isUseSubCategory, subCategory, subCategoryValue);
                yearsDic.Add(rate == "y" ? currentEnd.ToString("yyyy") : currentEnd.ToString("yyyy-M"), summaryData);
            }
            var    rows     = yearsDic.FirstOrDefault().Value.Rows;
            var    typeList = new Dictionary <string, string>();
            string header;

            foreach (DataRow row in rows)
            {
                header = (string.IsNullOrEmpty(subCategoryValue) || subCategoryValue == "undefined")
                    ? row[typeName].ToString()
                    : String.Format("{0}({1})", row[typeName], row[subTypeName]);
                typeList.Add(row["Type"].ToString(), header);
            }

            jTable.ColumTemplate.Add(new JsonColumn {
                Name = Resources.Global.Date, ColumnName = "Date"
            });
            if (!isTotal)
            {
                foreach (var t in typeList)
                {
                    jTable.ColumTemplate.Add(new JsonColumn {
                        Name = t.Value, ColumnName = t.Key + "_" + t.Value
                    });
                }
            }
            else
            {
                jTable.ColumTemplate.Add(new JsonColumn {
                    Name = Resources.Global.Total, ColumnName = "Total"
                });
            }


            foreach (var f in yearsDic)
            {
                var currentRow = new Dictionary <string, string>();
                currentRow.Add("Date", f.Key);
                if (isTotal)
                {
                    double total = 0;
                    foreach (DataRow v in f.Value.Rows)
                    {
                        total += Convert.ToDouble(v[columnType]);
                    }
                    currentRow.Add("Total", total.ToString(CultureInfo.InvariantCulture));
                }
                else
                {
                    foreach (DataRow v in f.Value.Rows)
                    {
                        var name = (string.IsNullOrEmpty(subCategoryValue) || subCategoryValue == "undefined")
                            ? v[typeName]
                            : String.Format("{0}({1})", v[typeName], v[subTypeName]);
                        currentRow.Add(v["Type"] + "_" + name, v[columnType].ToString());
                    }
                }

                jTable.RowData.Add(currentRow);
            }
            return(jTable);
        }
コード例 #23
0
ファイル: CDCController.cs プロジェクト: radtek/ThomRe
        public JsonTable buildJsonTable(BaseReport report)
        {
            var table = new JsonTable();

            switch (report.GetType().Name)
            {
            case "StandardReport":
                var data = (StandardReport)report;
                if (data.ResultDataTable.Rows.Count > 0)
                {
                    table.ReportDate = ((DateTime)data.ResultDataTable.Rows[0]["REDATE"]).ToString("yyyy-MM");
                }

                foreach (var column in data.Columns)
                {
                    table.ColumTemplate.Add(new JsonColumn()
                    {
                        ColumnName  = column.ColumnName.ToLower(),
                        ColumnStyle = column.ColumnStyle,
                        ColumnType  = column.ColumnType,
                        Name        = column.Culture == "zh-CN" ? column.ColumnHeaderCN : column.ColumnHeaderEN
                    });
                }

                table.ExtraHeaders = new List <JsonExtraColumn>();
                foreach (var extraHeader in data.ExtraHeaderCollection)
                {
                    table.ExtraHeaders.Add(new JsonExtraColumn()
                    {
                        Name        = extraHeader.Culture == "zh-CN" ? extraHeader.HeaderTextCN : extraHeader.HeaderTextEN,
                        ColumnStyle = extraHeader.HeaderStyle,
                        ColSpan     = extraHeader.HeaderColumnSpan,
                        HeaderLevel = extraHeader.HeaderLevel
                    });
                }

                table.RowData = new List <Dictionary <string, string> >();

                foreach (DataRow row in data.ResultDataTable.Rows)
                {
                    var currentRow = new Dictionary <string, string>();

                    foreach (var column in data.Columns)
                    {
                        if (!currentRow.Keys.Contains(column.ColumnName))
                        {
                            currentRow.Add(column.ColumnName.ToLower(), UIGenerator.FormatCellValue(row, column));
                        }
                    }
                    if (row.Table.Columns.Contains("id"))
                    {
                        currentRow.Add("id", row["id"].ToString());
                    }
                    if (row.Table.Columns.Contains("last_update"))
                    {
                        currentRow.Add("last_update", row["last_update"].ToString());
                    }
                    if (row.Table.Columns.Contains("row_index"))
                    {
                        currentRow.Add("row_index", row["row_index"].ToString());
                    }
                    if (row.Table.Columns.Contains("chart_source"))
                    {
                        currentRow.Add("chart_source", row["chart_source"].ToString());
                    }
                    if (row.Table.Columns.Contains("row_level"))
                    {
                        currentRow.Add("row_level", row["row_level"].ToString());
                    }

                    table.RowData.Add(currentRow);
                }

                break;
            }
            return(table);
        }
コード例 #24
0
    private IEnumerator RequestScores(bool _Multiplayer, string _Mode, int _Amount, ScoreDownloadHandler _Callback)
    {
        // Create JsonTable with necessary data
        JsonTable info = new JsonTable();

        info.Add("multiplayer", _Multiplayer);
        info.Add("mode", _Mode);
        info.Add("amount", _Amount);

        //Debug.Log("Json: " + info.ToJson());

        // Attach info to url
        string json = GetScoresURL + "?json=" + info.ToJson();

        //Debug.Log("URL: " + json);

        // Load url
        WWW get = new WWW(json);

        // Await response
        yield return(get);

        if (get.error != null)
        {
            Debug.LogError("CScoreCommunicator::RequestScores - Error getting scores from '" + GetScoresURL + "' with data '" + info.ToJson() + "'. Error: " + get.error);
            if (_Callback != null)
            {
                _Callback(null);
            }
            yield break;
        }

        json = get.text;
        //Debug.Log("CScoreCommunicator::RequestScores - Recieved scores: " + text);

        List <CScoreEntry> result = new List <CScoreEntry>(_Amount);

        if (json.Length > 2)
        {
            JsonObject obj = Json.Decode(json);
            info = obj.ToTable();
            JsonTable entry;
            for (int i = 0; i < _Amount; i++)
            {
                entry = info.GetSubtable("entry" + i);
                if (entry != null)
                {
                    result.Add(new CScoreEntry(entry.ToString("name"),
                                               (float)entry.ToDouble("score"),
                                               (float)entry.ToDouble("time"),
                                               _Multiplayer,
                                               _Mode,
                                               i));
                    //Debug.Log("Entry " + i + ": " + entry["name"] + ", " + entry["score"] + ", " + entry["time"]);
                }
                else
                {
                    result.Add(new CScoreEntry(_Multiplayer, _Mode[0].ToString().ToUpper(), i, false));
                    //Debug.Log("Entry " + i + ": No entry available.");
                }
            }
        }
        else
        {
            for (int i = 0; i < _Amount; i++)
            {
                result.Add(new CScoreEntry(_Multiplayer, _Mode[0].ToString().ToUpper(), i, false));
                //Debug.Log("Entry " + i + ": No entry available.");
            }
        }


        if (_Callback != null)
        {
            _Callback(result.ToArray());
        }
    }