Exemplo n.º 1
0
 public static AccountGroup DecorateAccountGroup(ACCOUNT_GROUP ag, DEALER_GROUP dealerGroup)
 {
     var group = DecorateAccountGroup(ag);
     if (dealerGroup == null) return group;
     group.MessageQueue = dealerGroup.MessageQueue;
     group.SessionName = dealerGroup.SessionName;
     group.HedgingAccount = dealerGroup.HedgingAccount;
     group.SenderCompId = dealerGroup.SenderCompId;
     group.Markup = (AccountGroup.MarkupType)ag.MarkupType;
     group.DefaultMarkupPoints = (float)ag.DefaultMarkupPoints;
     group.Dealer = new DealerDescription { Code = dealerGroup.Dealer };
     return group;
 }
Exemplo n.º 2
0
        public static AccountGroup DecorateAccountGroup(ACCOUNT_GROUP ag, DEALER_GROUP dealerGroup)
        {
            var group = DecorateAccountGroup(ag);

            if (dealerGroup == null)
            {
                return(group);
            }
            group.MessageQueue        = dealerGroup.MessageQueue;
            group.SessionName         = dealerGroup.SessionName;
            group.HedgingAccount      = dealerGroup.HedgingAccount;
            group.SenderCompId        = dealerGroup.SenderCompId;
            group.Markup              = (AccountGroup.MarkupType)ag.MarkupType;
            group.DefaultMarkupPoints = (float)ag.DefaultMarkupPoints;
            group.Dealer              = new DealerDescription {
                Code = dealerGroup.Dealer
            };
            return(group);
        }
Exemplo n.º 3
0
 /// <summary>
 /// обновление данных о том, какой дилер управляет группой счетов 
 /// ищем в "DEALER_GROUP" завись с "AccountGroup == groupCode" и меняем её "Dealer" на указанный "dealerCode"
 /// </summary>
 /// <param name="groupCode">Новая группа счетов для дилера</param>
 /// <param name="dealerCode">Код дилера</param>
 public bool UpdateDealerForAccountGroup(string groupCode, string dealerCode)
 {
     Logger.Info(string.Format("попытка обновления группы счетов {0} дилера {1}", groupCode, dealerCode));
     try
     {
         using (var ctx = DatabaseContext.Instance.Make())
         {
             var dealerGroup = ctx.DEALER_GROUP.FirstOrDefault(x => x.ACCOUNT_GROUP.Code == groupCode);
             #region
             if (dealerGroup == null)
             {
                 ctx.DEALER_GROUP.Add(new DEALER_GROUP
                     {
                         Dealer = dealerCode,
                         AccountGroup = groupCode
                     });
             }
             else
             {
                 var newDealerGroup = new DEALER_GROUP
                     {
                         Dealer = dealerCode,
                         AccountGroup = groupCode,
                         HedgingAccount = dealerGroup.HedgingAccount,
                         MessageQueue = dealerGroup.MessageQueue,
                         SenderCompId = dealerGroup.SenderCompId,
                         SessionName = dealerGroup.SessionName
                     };
                 try
                 {
                     ctx.DEALER_GROUP.Remove(dealerGroup);
                     ctx.DEALER_GROUP.Add(newDealerGroup);
                 }
                 catch (Exception ex)
                 {
                     Logger.Error(string.Format("Не удалось обновить дилера {0}", groupCode), ex);
                     return false;
                 }
             }
             #endregion
             ctx.SaveChanges();
             Logger.Info(string.Format("В группе {1} удачно обновлён дилер на {0}", dealerCode, groupCode));
             return true;
         }
     }
     catch (Exception ex)
     {
         Logger.Error(string.Format("Не удалось обновить в группе счетов {0} дилера {1}", groupCode, dealerCode), ex);
         return false;
     }
 }