Exemple #1
0
        private void 导入ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DialogResult DialogResult1 = this.openFileDialog1.ShowDialog();

            if (DialogResult1 != System.Windows.Forms.DialogResult.OK)
            {
                return;
            }


            string[] FileContent = File.ReadAllLines(this.openFileDialog1.FileName, Encoding.Default);

            StringBuilder sbErr = new StringBuilder(128);

            Task.Run(() =>
            {
                AASClient.AASServiceReference.DbDataSet.平台用户DataTable 平台用户DataTable1 = Program.AASServiceClient.QueryUser();
                for (int i = 1; i < FileContent.Length; i++)
                {
                    string[] Data = FileContent[i].Split(',');
                    try
                    {
                        string stockID = UpdateStockCode(Data[1].Trim());
                        买模式 买模式1       = (买模式)Enum.Parse(typeof(买模式), Data[6], false);
                        卖模式 卖模式1       = (卖模式)Enum.Parse(typeof(卖模式), Data[7], false);
                        byte 市场        = byte.Parse(Data[3].Replace("深圳", "0").Replace("上海", "1"));
                        decimal 交易额度   = decimal.Parse(Data[8]);
                        decimal 手续费率   = decimal.Parse(Data[9]);

                        var userInfo = 平台用户DataTable1.FirstOrDefault(r => r.用户名.Equals(Data[0].Trim()));
                        if (userInfo != null)
                        {
                            Program.AASServiceClient.AddTradeLimit(Data[0], Data[1], Data[2], 市场, Data[4], Data[5], 买模式1, 卖模式1, 交易额度, 手续费率);
                        }
                        else
                        {
                            this.Invoke(new Action(() => { labelLoading.Text = string.Format("导入第{0}条记录[{1} {2}]失败,未找到该用户", i, Data[0], Data[1]); }));
                        }
                    }
                    catch (Exception ex)
                    {
                        this.Invoke(new Action(() => { MessageBox.Show(string.Format("导入第{0}条记录[{1} {2}]异常,{3}", i, Data[0], Data[1], ex.Message)); }));
                        break;
                    }
                }
                var dt = Program.AASServiceClient.QueryTradeLimit();
                this.Invoke(new Action(() =>
                {
                    this.bindingSource交易额度.DataSource = dt;
                }));
            });
        }
Exemple #2
0
        private void backgroundWorker报价_ProgressChanged(object sender, ProgressChangedEventArgs e)
        {
            switch (e.ProgressPercentage)
            {
            case 0:
                this.toolStripStatusLabel时间.Text = DateTime.Now.ToString("HH:mm:ss");

                break;

            case 1:
                AASClient.AASServiceReference.DbDataSet.平台用户DataTable 平台用户DataTable1 = e.UserState as AASClient.AASServiceReference.DbDataSet.平台用户DataTable;
                Tool.RefreshDrcjDataTable(Program.serverDb.平台用户, 平台用户DataTable1, new string[] { "用户名" });
                Program.Current平台用户 = Program.serverDb.平台用户.First(r => r.用户名 == Program.Current平台用户.用户名);
                break;

            case 2:
                AASClient.AASServiceReference.DbDataSet.额度分配DataTable TradeLimitDataTable = e.UserState as AASClient.AASServiceReference.DbDataSet.额度分配DataTable;
                Tool.RefreshDrcjDataTable(Program.serverDb.额度分配, TradeLimitDataTable, new string[] { "证券代码" });

                foreach (HqForm HqForm1 in this.hqForm)
                {
                    HqForm1.comboBox代码.AutoCompleteCustomSource.Clear();

                    foreach (AASClient.AASServiceReference.DbDataSet.额度分配Row 交易额度Row1 in Program.serverDb.额度分配)
                    {
                        HqForm1.comboBox代码.AutoCompleteCustomSource.Add(string.Format("{0} {1} {2}", 交易额度Row1.证券代码, 交易额度Row1.拼音缩写, 交易额度Row1.证券名称));
                        HqForm1.comboBox代码.AutoCompleteCustomSource.Add(string.Format("{0} {1} {2}", 交易额度Row1.拼音缩写, 交易额度Row1.证券代码, 交易额度Row1.证券名称));
                    }
                }
                break;

            case 3:

                break;

            case 4:
                AASClient.AASServiceReference.JyDataSet.成交DataTable 成交DataTable1 = e.UserState as AASClient.AASServiceReference.JyDataSet.成交DataTable;
                Tool.RefreshDrcjDataTable(Program.jyDataSet.成交, 成交DataTable1, new string[] { "组合号", "委托编号", "成交编号" });
                break;

            case 5:
                RefreshOrder(e);

                break;

            case 6:
                AASClient.AASServiceReference.DbDataSet.订单DataTable 订单DataTable1 = e.UserState as AASClient.AASServiceReference.DbDataSet.订单DataTable;
                Tool.RefreshDrcjDataTable(Program.serverDb.订单, 订单DataTable1, new string[] { "组合号", "证券代码" });
                break;

            case 7:
                AASClient.AASServiceReference.DbDataSet.已平仓订单DataTable 已平仓订单DataTable1 = e.UserState as AASClient.AASServiceReference.DbDataSet.已平仓订单DataTable;
                Program.serverDb.已平仓订单.Clear();
                Program.serverDb.已平仓订单.Merge(已平仓订单DataTable1);

                Refresh业绩();
                break;

            default:
                break;
            }
        }
Exemple #3
0
        private void backgroundWorker报价_DoWork(object sender, DoWorkEventArgs e)
        {
            while (!this.backgroundWorker报价.CancellationPending)
            {
                this.backgroundWorker报价.ReportProgress(0);


                try
                {
                    if (DateTime.Now >= this.LastFetchDay.AddDays(1).AddHours(1))
                    {
                        Program.AASServiceClient.FectchAllTable(Program.Current平台用户.用户名);
                        this.LastFetchDay = DateTime.Today;
                    }



                    成交DataTableChanged 成交DataTableChanged1;
                    if (Program.成交表通知.TryDequeue(out 成交DataTableChanged1))
                    {
                        AASClient.AASServiceReference.JyDataSet.成交DataTable 成交DataTable1 = 成交DataTableChanged1.TableChanged as AASClient.AASServiceReference.JyDataSet.成交DataTable;
                        this.backgroundWorker报价.ReportProgress(4, 成交DataTable1);
                    }


                    委托DataTableChanged 委托DataTableChanged1;
                    if (Program.委托表通知.TryDequeue(out 委托DataTableChanged1))
                    {
                        AASClient.AASServiceReference.JyDataSet.委托DataTable 委托DataTable1 = 委托DataTableChanged1.TableChanged as AASClient.AASServiceReference.JyDataSet.委托DataTable;
                        this.backgroundWorker报价.ReportProgress(5, 委托DataTable1);
                    }

                    平台用户DataTableChanged 平台用户DataTableChanged1;
                    if (Program.平台用户表通知.TryDequeue(out 平台用户DataTableChanged1))
                    {
                        AASClient.AASServiceReference.DbDataSet.平台用户DataTable 平台用户DataTable1 = 平台用户DataTableChanged1.TableChanged as AASClient.AASServiceReference.DbDataSet.平台用户DataTable;
                        this.backgroundWorker报价.ReportProgress(1, 平台用户DataTable1);
                    }

                    额度分配DataTableChanged 额度分配DataTableChanged1;
                    if (Program.额度分配表通知.TryDequeue(out 额度分配DataTableChanged1))
                    {
                        AASClient.AASServiceReference.DbDataSet.额度分配DataTable 额度分配DataTable1 = 额度分配DataTableChanged1.TableChanged as AASClient.AASServiceReference.DbDataSet.额度分配DataTable;
                        this.backgroundWorker报价.ReportProgress(2, 额度分配DataTable1);
                    }

                    订单DataTableChanged 订单DataTableChanged1;
                    if (Program.订单表通知.TryDequeue(out 订单DataTableChanged1))
                    {
                        AASClient.AASServiceReference.DbDataSet.订单DataTable 订单DataTable1 = 订单DataTableChanged1.TableChanged as AASClient.AASServiceReference.DbDataSet.订单DataTable;

                        foreach (AASClient.AASServiceReference.DbDataSet.订单Row 订单Row1 in 订单DataTable1)
                        {
                            if (Program.HqDataTable.ContainsKey(订单Row1.证券代码))
                            {
                                DataTable DataTable1 = Program.HqDataTable[订单Row1.证券代码];
                                DataRow   DataRow1   = DataTable1.Rows[0];
                                decimal   XJ         = decimal.Parse((DataRow1["现价"] as string));
                                decimal   ZS         = decimal.Parse((DataRow1["昨收"] as string));
                                订单Row1.当前价位 = Math.Round((XJ == 0 ? ZS : XJ), L2Api.Get精度(订单Row1.证券代码), MidpointRounding.AwayFromZero);


                                //订单Row1.刷新浮动盈亏(Program.Current平台用户.手续费率);
                                订单Row1.刷新浮动盈亏();
                            }
                        }

                        this.backgroundWorker报价.ReportProgress(6, 订单DataTable1);
                    }

                    已平仓订单DataTableChanged 已平仓订单DataTableChanged1;
                    if (Program.已平仓订单表通知.TryDequeue(out 已平仓订单DataTableChanged1))
                    {
                        AASClient.AASServiceReference.DbDataSet.已平仓订单DataTable 已平仓订单DataTable1 = 已平仓订单DataTableChanged1.TableChanged as AASClient.AASServiceReference.DbDataSet.已平仓订单DataTable;
                        this.backgroundWorker报价.ReportProgress(7, 已平仓订单DataTable1);
                    }



                    Notify Notify1;
                    if (Program.交易通知.TryDequeue(out Notify1))
                    {
                        Program.logger.LogJy(Notify1.操作员, Notify1.证券代码, Notify1.证券名称, Notify1.委托编号, Notify1.买卖方向, Notify1.委托数量, Notify1.委托价格, Notify1.信息);
                    }



                    Thread.Sleep(100);
                }
                catch (Exception ex)
                {
                    Program.logger.LogRunning("报价线程异常:{0} {1}", ex.Message, ex.StackTrace);

                    Thread.Sleep(1000);
                }
            }
        }
Exemple #4
0
        private void backgroundWorker报价_ProgressChanged(object sender, ProgressChangedEventArgs e)
        {
            switch (e.ProgressPercentage)
            {
            case 0:
                this.toolStripStatusLabel时间.Text = DateTime.Now.ToString("HH:mm:ss");
                break;

            case 1:
                AASClient.AASServiceReference.DbDataSet.平台用户DataTable 平台用户DataTable1 = e.UserState as AASClient.AASServiceReference.DbDataSet.平台用户DataTable;
                Tool.RefreshDrcjDataTable(Program.serverDb.平台用户, 平台用户DataTable1, new string[] { "用户名" });
                Program.Current平台用户 = Program.serverDb.平台用户.First(r => r.用户名 == Program.Current平台用户.用户名);
                break;

            case 2:
                AASClient.AASServiceReference.DbDataSet.额度分配DataTable TradeLimitDataTable = e.UserState as AASClient.AASServiceReference.DbDataSet.额度分配DataTable;
                Tool.RefreshDrcjDataTable(Program.serverDb.额度分配, TradeLimitDataTable, new string[] { "证券代码" });

                foreach (HqForm HqForm1 in this.hqForm)
                {
                    HqForm1.comboBox代码.AutoCompleteCustomSource.Clear();

                    foreach (AASClient.AASServiceReference.DbDataSet.额度分配Row 交易额度Row1 in Program.serverDb.额度分配)
                    {
                        HqForm1.comboBox代码.AutoCompleteCustomSource.Add(string.Format("{0}", 交易额度Row1.证券代码));
                    }
                }
                break;

            case 3:

                break;

            case 4:
                AASClient.AASServiceReference.JyDataSet.成交DataTable 成交DataTable1 = e.UserState as AASClient.AASServiceReference.JyDataSet.成交DataTable;
                Tool.RefreshDrcjDataTable(Program.jyDataSet.成交, 成交DataTable1, new string[] { "组合号", "委托编号", "成交编号" });
                break;

            case 5:
                RefreshOrder(e);

                break;

            case 6:
                AASClient.AASServiceReference.DbDataSet.订单DataTable 订单DataTable1 = e.UserState as AASClient.AASServiceReference.DbDataSet.订单DataTable;
                foreach (AASClient.AASServiceReference.DbDataSet.订单Row 订单Row1 in 订单DataTable1)
                {
                    if (Program.HqDataTable.ContainsKey(订单Row1.证券代码))
                    {
                        DataTable DataTable1 = Program.HqDataTable[订单Row1.证券代码];
                        DataRow   DataRow1   = DataTable1.Rows[0];
                        decimal   XJ         = decimal.Parse((DataRow1["现价"] as string));
                        decimal   ZS         = decimal.Parse((DataRow1["昨收"] as string));
                        订单Row1.当前价位 = Math.Round((XJ == 0 ? ZS : XJ), 8, MidpointRounding.AwayFromZero);


                        //订单Row1.刷新浮动盈亏(Program.Current平台用户.手续费率);
                        订单Row1.刷新浮动盈亏();
                    }
                }
                Tool.RefreshDrcjDataTable(Program.serverDb.订单, 订单DataTable1, new string[] { "组合号", "证券代码" });
                break;

            case 7:
                AASClient.AASServiceReference.DbDataSet.已平仓订单DataTable 已平仓订单DataTable1 = e.UserState as AASClient.AASServiceReference.DbDataSet.已平仓订单DataTable;
                Program.serverDb.已平仓订单.Clear();
                Program.serverDb.已平仓订单.Merge(已平仓订单DataTable1);


                AASClient.AASServiceReference.JyDataSet.业绩统计DataTable 业绩统计DataTable2 = this.Generate业绩统计();
                Tool.RefreshDrcjDataTable(Program.jyDataSet.业绩统计, 业绩统计DataTable2, new string[] { "证券代码" });
                break;

            default:
                break;
            }
        }
Exemple #5
0
        private void backgroundWorker报价_DoWork(object sender, DoWorkEventArgs e)
        {
            while (!this.backgroundWorker报价.CancellationPending)
            {
                this.backgroundWorker报价.ReportProgress(0);

                try
                {
                    if (DateTime.Now >= this.LastFetchDay.AddDays(1).AddHours(1))
                    {
                        Program.AASServiceClient.FectchAllTable(Program.Current平台用户.用户名);
                        this.LastFetchDay = DateTime.Today;
                    }

                    成交DataTableChanged 成交DataTableChanged1;
                    if (Program.成交表通知.TryDequeue(out 成交DataTableChanged1))
                    {
                        AASClient.AASServiceReference.JyDataSet.成交DataTable 成交DataTable1 = 成交DataTableChanged1.TableChanged as AASClient.AASServiceReference.JyDataSet.成交DataTable;
                        this.backgroundWorker报价.ReportProgress(4, 成交DataTable1);
                    }


                    委托DataTableChanged 委托DataTableChanged1;
                    if (Program.委托表通知.TryDequeue(out 委托DataTableChanged1))
                    {
                        AASClient.AASServiceReference.JyDataSet.委托DataTable 委托DataTable1 = 委托DataTableChanged1.TableChanged as AASClient.AASServiceReference.JyDataSet.委托DataTable;
                        this.backgroundWorker报价.ReportProgress(5, 委托DataTable1);
                    }

                    平台用户DataTableChanged 平台用户DataTableChanged1;
                    if (Program.平台用户表通知.TryDequeue(out 平台用户DataTableChanged1))
                    {
                        AASClient.AASServiceReference.DbDataSet.平台用户DataTable 平台用户DataTable1 = 平台用户DataTableChanged1.TableChanged as AASClient.AASServiceReference.DbDataSet.平台用户DataTable;
                        this.backgroundWorker报价.ReportProgress(1, 平台用户DataTable1);
                    }

                    额度分配DataTableChanged 额度分配DataTableChanged1;
                    if (Program.额度分配表通知.TryDequeue(out 额度分配DataTableChanged1))
                    {
                        AASClient.AASServiceReference.DbDataSet.额度分配DataTable 额度分配DataTable1 = 额度分配DataTableChanged1.TableChanged as AASClient.AASServiceReference.DbDataSet.额度分配DataTable;
                        this.backgroundWorker报价.ReportProgress(2, 额度分配DataTable1);
                    }

                    订单DataTableChanged 订单DataTableChanged1;
                    if (Program.订单表通知.TryDequeue(out 订单DataTableChanged1))
                    {
                        AASClient.AASServiceReference.DbDataSet.订单DataTable 订单DataTable1 = 订单DataTableChanged1.TableChanged as AASClient.AASServiceReference.DbDataSet.订单DataTable;
                        this.backgroundWorker报价.ReportProgress(6, 订单DataTable1);
                    }

                    已平仓订单DataTableChanged 已平仓订单DataTableChanged1;
                    if (Program.已平仓订单表通知.TryDequeue(out 已平仓订单DataTableChanged1))
                    {
                        AASClient.AASServiceReference.DbDataSet.已平仓订单DataTable 已平仓订单DataTable1 = 已平仓订单DataTableChanged1.TableChanged as AASClient.AASServiceReference.DbDataSet.已平仓订单DataTable;
                        this.backgroundWorker报价.ReportProgress(7, 已平仓订单DataTable1);
                    }



                    Notify Notify1;
                    if (Program.交易通知.TryDequeue(out Notify1))
                    {
                        Program.logger.LogJy(Notify1.操作员, Notify1.证券代码, Notify1.证券名称, Notify1.委托编号, Notify1.买卖方向, Notify1.委托数量, Notify1.委托价格, Notify1.信息);
                    }



                    Thread.Sleep(100);
                }
                catch (Exception ex)
                {
                    Program.logger.LogRunning("报价线程异常:{0} {1}", ex.Message, ex.StackTrace);

                    Thread.Sleep(1000);
                }
            }
        }
Exemple #6
0
        private void 导入ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DialogResult DialogResult1 = this.openFileDialog1.ShowDialog();

            if (DialogResult1 != System.Windows.Forms.DialogResult.OK)
            {
                return;
            }


            string[] FileContent = File.ReadAllLines(this.openFileDialog1.FileName, Encoding.Default);

            StringBuilder                       sbErr           = new StringBuilder(128);
            Dictionary <string, int>            dictIndex       = new Dictionary <string, int>();
            Dictionary <string, List <string> > dictTraderStock = new Dictionary <string, List <string> >();

            for (int i = 0; i < FileContent.Length; i++)
            {
                var      item = FileContent[i];
                string[] Data = FileContent[i].Split(',');
                if (dictTraderStock.ContainsKey(Data[0]))
                {
                    if (!dictTraderStock[Data[0]].Contains(Data[1]))
                    {
                        dictIndex.Add(Data[0] + "_" + Data[1], i);
                        dictTraderStock[Data[0]].Add(Data[1]);
                    }
                    else
                    {
                        var index = dictIndex[Data[0] + "_" + Data[1]];
                        sbErr.AppendFormat("交易员{0} 对应股票{1} 在{2}行数据有重复项, 与第{3}行数据发生冲突", Data[0], Data[1], i.ToString(), index).Append(Environment.NewLine);
                    }
                }
                else
                {
                    dictTraderStock.Add(Data[0], new List <string>()
                    {
                        Data[1]
                    });
                    dictIndex.Add(Data[0] + "_" + Data[1], i);
                }
            }
            if (sbErr.Length > 0)
            {
                Program.logger.LogInfo(sbErr.ToString());
                sbErr.Append("请修改至无重复项再导入!");
                MessageBox.Show(sbErr.ToString());
            }
            else
            {
                AASClient.AASServiceReference.DbDataSet.平台用户DataTable 平台用户DataTable1 = Program.AASServiceClient.QueryUser();
                for (int i = 1; i < FileContent.Length; i++)
                {
                    string[] Data = FileContent[i].Split(',');

                    买模式 买模式1 = (买模式)Enum.Parse(typeof(买模式), Data[6], false);
                    卖模式 卖模式1 = (卖模式)Enum.Parse(typeof(卖模式), Data[7], false);

                    try
                    {
                        foreach (AASClient.AASServiceReference.DbDataSet.平台用户Row 平台用户Row1 in 平台用户DataTable1.Where(r => r.用户名.Equals(Data[0].Trim())))
                        {
                            Program.AASServiceClient.AddTradeLimit(Data[0], Data[1], Data[2], byte.Parse(Data[3]), Data[4], Data[5], 买模式1, 卖模式1, int.Parse(Data[8]), decimal.Parse(Data[9]));
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(string.Format("导入第{0}条记录[{1} {2}]失败,{3}", i, Data[0], Data[1], ex.Message));
                        break;
                    }
                }
            }

            this.bindingSource交易额度.DataSource = Program.AASServiceClient.QueryTradeLimit();
        }
Exemple #7
0
        private void 导入ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DialogResult DialogResult1 = this.openFileDialog1.ShowDialog();

            if (DialogResult1 != System.Windows.Forms.DialogResult.OK)
            {
                return;
            }


            string[] FileContent = File.ReadAllLines(this.openFileDialog1.FileName, Encoding.Default);

            StringBuilder                       sbErr           = new StringBuilder(128);
            Dictionary <string, int>            dictIndex       = new Dictionary <string, int>();
            Dictionary <string, List <string> > dictTraderStock = new Dictionary <string, List <string> >();

            //for (int i = 0; i < FileContent.Length; i++)
            //{
            //    var item = FileContent[i];
            //    string[] Data = FileContent[i].Split(',');
            //    if (dictTraderStock.ContainsKey(Data[0]))
            //    {
            //        if (!dictTraderStock[Data[0]].Contains(Data[1]))
            //        {
            //            dictIndex.Add(Data[0] + "_" + Data[1], i);
            //            dictTraderStock[Data[0]].Add(Data[1]);
            //        }
            //        else
            //        {
            //            var index = dictIndex[Data[0] + "_" + Data[1]];
            //            sbErr.AppendFormat("交易员{0} 对应股票{1} 在{2}行数据有重复项, 与第{3}行数据发生冲突", Data[0], Data[1], i.ToString(), index).Append(Environment.NewLine);
            //        }
            //    }
            //    else
            //    {
            //        dictTraderStock.Add(Data[0], new List<string>() { Data[1] });
            //        dictIndex.Add(Data[0] + "_" + Data[1], i);
            //    }
            //}
            //if (sbErr.Length > 0)
            //{
            //    Program.logger.LogInfo(sbErr.ToString());
            //    sbErr.Append("请修改至无重复项再导入!");
            //    MessageBox.Show(sbErr.ToString());
            //}
            //else
            Task.Run(() =>
            {
                AASClient.AASServiceReference.DbDataSet.平台用户DataTable 平台用户DataTable1 = Program.AASServiceClient.QueryUser();
                for (int i = 1; i < FileContent.Length; i++)
                {
                    string[] Data = FileContent[i].Split(',');


                    try
                    {
                        买模式 买模式1     = (买模式)Enum.Parse(typeof(买模式), Data[6], false);
                        卖模式 卖模式1     = (卖模式)Enum.Parse(typeof(卖模式), Data[7], false);
                        byte 市场      = byte.Parse(Data[3].Replace("深圳", "0").Replace("上海", "1"));
                        decimal 交易额度 = decimal.Parse(Data[8]);
                        decimal 手续费率 = decimal.Parse(Data[9]);

                        var userInfo = 平台用户DataTable1.FirstOrDefault(r => r.用户名.Equals(Data[0].Trim()));
                        if (userInfo != null)
                        {
                            Program.AASServiceClient.AddTradeLimit(Data[0], Data[1], Data[2], 市场, Data[4], Data[5], 买模式1, 卖模式1, 交易额度, 手续费率);
                        }
                        else
                        {
                            this.Invoke(new Action(() => { MessageBox.Show(string.Format("导入第{0}条记录[{1} {2}]失败,未找到该用户", i, Data[0], Data[1])); }));
                        }
                        //foreach (AASClient.AASServiceReference.DbDataSet.平台用户Row 平台用户Row1 in 平台用户DataTable1.Where(r => r.用户名.Equals(Data[0].Trim())))
                        //{
                        //    Program.AASServiceClient.AddTradeLimit(Data[0], Data[1], Data[2], 市场, Data[4], Data[5], 买模式1, 卖模式1, 交易额度, 手续费率);
                        //}
                    }
                    catch (Exception ex)
                    {
                        this.Invoke(new Action(() => { MessageBox.Show(string.Format("导入第{0}条记录[{1} {2}]失败,{3}", i, Data[0], Data[1], ex.Message)); }));
                        break;
                    }
                }
                var dt = Program.AASServiceClient.QueryTradeLimit();
                this.Invoke(new Action(() =>
                {
                    this.bindingSource交易额度.DataSource = dt;
                }));
            });
        }