示例#1
0
        private void buttonSubmit_Click(object sender, EventArgs e)
        {
            //验证。。。如何验证?考虑首先验证是否有冲突项,如果有,提示是否需要覆盖保存,是,否,或者取消。
            if (ImportData != null && ImportData.Rows.Count > 0)
            {
                //首先验证列是否正常。
                if (!IsColumnValid(ImportData))
                {
                    return;
                }

                //其次确认是否需要删除旧数据
                if (checkBox删除旧数据.Checked == true)
                {
                    Program.AASServiceClient.DeleteAll可用仓位();
                }

                //再次验证是否存在冲突数据
                AASServiceReference.DbDataSet.可用仓位DataTable dtOld = Program.AASServiceClient.QueryTotalPosition();
                if (HasExistData(dtOld, ImportData))
                {
                    var result = MessageBox.Show("存在组合号及证券代码相同的旧数据,覆盖,不覆盖,还是取消操作?", "导入提示", MessageBoxButtons.YesNoCancel);
                    if (result != DialogResult.Cancel)
                    {
                        AddMutiPosition(ImportData, result == DialogResult.Yes);
                    }
                }
                else
                {
                    AddMutiPosition(ImportData, false);
                }
                this.Close();
            }
        }
示例#2
0
        private DbDataSet.可用仓位DataTable ChangeToStandardDataTable(DataTable dt)
        {
            var standardDT = new AASServiceReference.DbDataSet.可用仓位DataTable();

            foreach (DataRow item in dt.Rows)
            {
                var newRow = standardDT.New可用仓位Row();
                newRow.组合号  = item["组合号"].ToString();
                newRow.证券代码 = item["证券代码"].ToString();
                newRow.证券名称 = item["证券名称"].ToString();
                newRow.总仓位  = decimal.Parse(item["总仓位"].ToString());
                standardDT.Add可用仓位Row(newRow);
            }
            return(standardDT);
        }
示例#3
0
 private void AddMutiPosition(DataTable dt, bool isCoverExist)
 {
     Task.Run(() =>
     {
         try
         {
             AASServiceReference.DbDataSet.可用仓位DataTable fixedData = ChangeToStandardDataTable(dt);
             Program.AASServiceClient.AddMuti可用仓位(fixedData, isCoverExist);
             this.Invoke(new Action(() => { MessageBox.Show(string.Format("保存成功!")); }));
         }
         catch (Exception ex)
         {
             this.Invoke(new Action(() => { MessageBox.Show(string.Format("保存异常!", ex.Message)); }));
         }
     });
 }
示例#4
0
 private bool HasExistData(AASServiceReference.DbDataSet.可用仓位DataTable dtOld, DataTable importData)
 {
     foreach (DataRow row in importData.Rows)
     {
         string name      = row["组合号"].ToString();
         string stockCode = row["证券代码"].ToString();
         foreach (var item in dtOld)
         {
             if (item.组合号 == name && item.证券代码 == stockCode)
             {
                 return(true);
             }
         }
     }
     return(false);
 }