Ejemplo n.º 1
0
        public List <Dividend_Detail_simpleEF> Get_dvdDetail_list(string reclaimFeeType)
        {
            List <Dividend_Detail_simpleEF> list = new List <Dividend_Detail_simpleEF>();

            DB_select    selt  = new DB_select(Dividend_Detail_simpleEF.Get_cmdTP());
            SQL_relation rela0 = new SQL_relation("DividendIndex", RelationalOperator.Equals, this.DividendIndex);

            if (string.IsNullOrEmpty(reclaimFeeType))
            {
                selt.SetCondition(rela0);
            }
            else
            {
                SQL_relation  rela1 = new SQL_relation("ReclaimFeesType", RelationalOperator.Equals, reclaimFeeType);
                SQL_condition cond  = new SQL_condition(rela0, ConditionalOperator.And, rela1);
                selt.SetCondition(cond);
            }

            DB_reader reader = new DB_reader(selt, Utility.Get_DRWIN_hDB());

            while (reader.Read())
            {
                Dividend_Detail_simpleEF dd = new Dividend_Detail_simpleEF();
                dd.Init_from_reader(reader);
                list.Add(dd);
            }
            reader.Close();

            return(list);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Check if DividendDetail is OK for counting in Election File
        /// </summary>
        private bool Check_DD_forEle(Dividend_Detail_simpleEF dd, Dividend dvd)
        {
            if (dd.Status.Value.StartsWith("Reject", StringComparison.OrdinalIgnoreCase))
            {
                return(false);
            }

            if (!dvd.Sponsored.Value)//for Unsponsored events only
            {
                int custID = dd.CustodianID.Value;
                if (!this.dvdCus_dic_all.ContainsKey(custID))
                {
                    return(false);
                }
                else
                {
                    DividendCustodian dc = this.dvdCus_dic_all[custID];
                    if (!dc.Depositary.Value.Equals(this.dvdCust.Depositary.Value, StringComparison.OrdinalIgnoreCase))
                    {
                        return(false);
                    }
                }
            }

            if (dd.ReclaimFeesType.Value.Equals("At-Source", StringComparison.OrdinalIgnoreCase))
            {
                return(true);
            }
            else if (dd.ReclaimFeesType.Value.Equals("Quick-Refund", StringComparison.OrdinalIgnoreCase))
            {
                return(dd.PaidViaDTCC.Value);
            }
            else
            {
                return(false);
            }
        }