コード例 #1
0
        public List <DealFlowItem> GetDealFlow()
        {
            List <DealFlowItem> dfItems = new List <DealFlowItem>();

            var allItems             = _entrustSecurityBLL.GetAllCombine();
            var entrustedNoDealItems = allItems.Where(p => p.DealStatus == DealStatus.Completed);

            foreach (var item in entrustedNoDealItems)
            {
                DealFlowItem dfItem = new DealFlowItem
                {
                    CommandNo      = item.CommandId,
                    SecuCode       = item.SecuCode,
                    PriceType      = item.PriceType.ToString(),
                    FundNo         = item.AccountCode,
                    FundName       = item.AccountName,
                    PortfolioCode  = item.PortfolioCode,
                    PortfolioName  = item.PortfolioName,
                    EntrustPrice   = item.EntrustPrice,
                    DealAmount     = item.TotalDealAmount,
                    DealTime       = DateFormat.Format(item.ModifiedDate, ConstVariable.DateFormat1),
                    EntrustBatchNo = item.BatchNo.ToString(),
                    InstanceId     = item.InstanceId.ToString(),
                    InstanceNo     = item.InstanceCode,
                    DealNo         = item.EntrustNo.ToString(),
                };

                dfItems.Add(dfItem);
            }

            return(dfItems);
        }
コード例 #2
0
        private List <DealFlowItem> GetDealItems(CallerToken token, List <UFXQueryDealResponse> responseItems)
        {
            List <DealFlowItem> dealItems = new List <DealFlowItem>();

            if (responseItems == null || responseItems.Count == 0)
            {
                return(dealItems);
            }

            Portfolio portfolio     = (Portfolio)token.InArgs;
            string    portfolioCode = string.Empty;
            string    portfolioName = string.Empty;
            string    fundCode      = string.Empty;
            string    fundName      = string.Empty;

            if (portfolio != null)
            {
                portfolioCode = portfolio.PortfolioNo;
                portfolioName = portfolio.PortfolioName;
                fundCode      = portfolio.FundCode;
                fundName      = portfolio.FundName;
            }

            Dictionary <int, Model.UI.TradeInstance> cmdInstMap = new Dictionary <int, Model.UI.TradeInstance>();

            foreach (var responseItem in responseItems)
            {
                int commandId = 0;
                int submitId = 0;
                int requestId = 0;
                int temp1, temp2, temp3;
                if (EntrustRequestHelper.TryParseThirdReff(responseItem.ThirdReff, out temp1, out temp2, out temp3))
                {
                    commandId = temp1;
                    submitId  = temp2;
                    requestId = temp3;
                }

                int    instanceId   = 0;
                string instanceCode = string.Empty;
                if (!cmdInstMap.ContainsKey(commandId))
                {
                    var tradeInstance = _tradeCommandBLL.GetTradeInstance(commandId);
                    if (tradeInstance != null)
                    {
                        instanceId   = tradeInstance.InstanceId;
                        instanceCode = tradeInstance.InstanceCode;
                        cmdInstMap.Add(commandId, tradeInstance);
                    }
                }
                else
                {
                    instanceId   = cmdInstMap[commandId].InstanceId;
                    instanceCode = cmdInstMap[commandId].InstanceCode;
                }

                var marketCode       = UFXTypeConverter.GetMarketCode(responseItem.MarketNo);
                var entrustDirection = UFXTypeConverter.GetEntrustDirection(responseItem.EntrustDirection);

                DealFlowItem efItem = new DealFlowItem
                {
                    CommandNo       = commandId,
                    SecuCode        = responseItem.StockCode,
                    FundNo          = responseItem.AccountCode,
                    FundName        = fundName,
                    PortfolioCode   = responseItem.CombiNo,
                    PortfolioName   = portfolioName,
                    EDirection      = EntrustDirectionConverter.GetSecurityEntrustDirection(entrustDirection),
                    DealPrice       = responseItem.DealPrice,
                    DealAmount      = responseItem.DealAmount,
                    DealMoney       = responseItem.DealBalance,
                    DealTime        = string.Format("{0}", responseItem.DealTime),
                    ShareHolderCode = responseItem.StockHolderId,
                    EntrustNo       = string.Format("{0}", responseItem.EntrustNo),
                    DealNo          = string.Format("{0}", responseItem.DealNo),
                    ExchangeCode    = UFXTypeConverter.GetMarketCode(marketCode),
                    InstanceId      = instanceId.ToString(),
                    InstanceNo      = instanceCode,
                };

                dealItems.Add(efItem);
            }

            return(dealItems);
        }