コード例 #1
0
 public static CurrentBalanceDto ConvertFromInitialBalance(InitialBalanceDto initialBalance)
 {
     return(new CurrentBalanceDto()
     {
         Cash = initialBalance.Cash,
         IssuerList = initialBalance.IssuerList
     });
 }
コード例 #2
0
        private OperationResult <SellOrdersRequestDto> MapAndValidateFileStructure(IEnumerable <string> fileLines)
        {
            if (fileLines == null || fileLines.Count() < 2)
            {
                return(new OperationResult <SellOrdersRequestDto>(ErrorDto.BuildUser("Structure file {0}, is incorrect")));
            }

            var fileProcess = fileLines.ToArray();

            var initialBalance = new InitialBalanceDto();
            var orderList      = new List <OrderDto>();

            for (int i = 0; i < fileProcess.Length; i++)
            {
                if (i == 0)
                {
                    var processInitiBalalance = deserialize.Execute <InitialBalanceJsonDto>(fileProcess[i]);
                    if (processInitiBalalance.Failure)
                    {
                        return(new OperationResult <SellOrdersRequestDto>(processInitiBalalance.ErrorList));
                    }
                    initialBalance = processInitiBalalance.Result.InitialBalance;
                }
                else
                {
                    var processOrder = deserialize.Execute <OrderDto>(fileProcess[i]);
                    if (processOrder.Failure)
                    {
                        return(new OperationResult <SellOrdersRequestDto>(processOrder.ErrorList));
                    }
                    if (processOrder.Result != null)
                    {
                        orderList.Add(processOrder.Result);
                    }
                }
            }



            var response = new SellOrdersRequestDto()
            {
                InitialBalance = initialBalance,
                OrderList      = orderList
            };

            return(new OperationResult <SellOrdersRequestDto>(response));
        }