protected abstract void OutBlock(ResModel resModel, IXAQuery query, CsvHelper.CsvWriter writer);
Exemplo n.º 2
0
        protected override void OutBlock(ResModel resModel, IXAQuery query, CsvHelper.CsvWriter writer)
        {
            var szTrCode = resModel.Name;
            var block    = resModel.Blocks[szTrCode + "OutBlock"];

            writer.WriteHeader <_t8435OutBlock>();
            for (var i = 0; i < query.GetBlockCount(block.Name); i++)
            {
                var result = new _t8435OutBlock()
                {
                    hname   = query.GetFieldData(block.Name, "hname", i),
                    shcode  = query.GetFieldData(block.Name, "shcode", i),
                    expcode = query.GetFieldData(block.Name, "expcode", i),
                };
                writer.NextRecord();
                writer.WriteRecord(result);
                switch (_inBlock.gubun)
                {
                case "MF":
                    Constants.CodeFutures.Add(result.shcode, new CodeFutures()
                    {
                        UnderlyingAssetsCategory = "KOSPI200",
                        UnderlyingAssetsCode     = "101",
                        Category     = "MF",
                        Name         = result.hname,
                        Code         = result.shcode,
                        ExpandedCode = result.expcode,
                        //TODO Listing, Expirationdate
                        ListingDate    = "",
                        ExpirationDate = "",
                    });
                    break;

                case "MO":
                    Constants.CodeOptions.Add(result.shcode, new CodeOptions()
                    {
                        UnderlyingAssetsCategory = "KOSPI200",
                        UnderlyingAssetsCode     = "101",
                        Category     = "OP",
                        Name         = result.hname,
                        Code         = result.shcode,
                        ExpandedCode = result.expcode,
                        //TODO Listing, Expirationdate
                        ListingDate    = "",
                        ExpirationDate = "",
                    });
                    break;

                case "WK":
                    Constants.CodeOptions.Add(result.shcode, new CodeOptions()
                    {
                        UnderlyingAssetsCategory = "KOSPI200",
                        UnderlyingAssetsCode     = "101",
                        Category     = "WK",
                        Name         = result.hname,
                        Code         = result.shcode,
                        ExpandedCode = result.expcode,
                        //TODO Listing, Expirationdate
                        ListingDate    = "",
                        ExpirationDate = "",
                    });
                    break;

                default:
                    break;
                }
            }
        }