Exemplo n.º 1
0
        public IList <string> AddOfficeToForm(ICorierServiceContext dbContext)
        {
            var result = new List <string>();

            string cityNameOffice = null;
            string addressOffice  = null;
            int    officeId       = 0;

            var allOffices = from offis in dbContext.Offices
                             join citi in dbContext.Cities
                             on offis.CityId equals citi.Id
                             select new
            {
                offceId  = offis.Id,
                address  = offis.Address,
                cityName = citi.CityName
            };

            var officeIdList = new List <int>();

            foreach (var item in allOffices.OrderBy(t => t.cityName).ThenBy(f => f.offceId))
            {
                ConsoleOutput.PrintLine($"  {item.offceId} {item.cityName}  {item.address}");
                officeIdList.Add(item.offceId);
            }

            var officeChosen = commandParser.CommandParse(officeIdList, "Offices");

            if (officeChosen == 0)
            {
                return(null);
            }

            foreach (var item in allOffices)
            {
                if (item.offceId == officeChosen)
                {
                    officeId       = item.offceId;
                    cityNameOffice = item.cityName;
                    addressOffice  = item.address;
                    break;
                }
            }
            result.Add(officeId.ToString());
            result.Add(cityNameOffice);
            result.Add(addressOffice);

            return(result);
        }
Exemplo n.º 2
0
        public int Header()
        {
            ConsoleOutput.PrintLine("*****************************************");
            ConsoleOutput.PrintLine("   Choose service");
            ConsoleOutput.PrintLine("-----------------------------------------");
            ConsoleOutput.PrintLine(" 1 Declare an item for delivery");
            ConsoleOutput.PrintLine(" 2 Get / Release an Item of distribution (Fixer)");

            var parsedCommand = comandParser.CommandParse("Service");

            if (parsedCommand == 0)
            {
                return(parsedCommand);
            }
            return(parsedCommand);
        }
        public void CloseDistribution(ICorierServiceContext dbContext, IQueriesFixer distributions, ICommandParser comandParser, int userId)
        {
            var notClosedItemsId = new List <int>();

            Console.OutputEncoding = System.Text.Encoding.Unicode;
            Console.InputEncoding  = System.Text.Encoding.Unicode;

            var distribClose = dbContext.Services
                               .Where(g => g.UserFixerId == userId).Where(t => t.IsCompleted == false)
                               .Select(s => new { s.Id, s.Details, s.City.CityName, s.ServiceOption, s.City }).ToList();

            foreach (var item in distribClose)
            {
                Console.WriteLine(" {0}  {1} --> {2}", item.Id, item.Details, item.CityName);
                notClosedItemsId.Add(item.Id);
            }

            Console.WriteLine();
            Console.WriteLine(" Please enter distribution to close");
            Console.WriteLine("------------------------------------------");
            var serviceItemToClose = comandParser.CommandParse(notClosedItemsId, "Destribution");
            int servOptId          = 0;
            int citiIdd            = 0;

            foreach (var item in distribClose)
            {
                if (serviceItemToClose == item.Id)
                {
                    Console.WriteLine(" You want to close distribution -->  Y / N");
                    Console.WriteLine("-------------------------------------------");
                    Console.WriteLine(" | {0} --> {1} |", item.Details, item.CityName);
                    servOptId = item.ServiceOption.Id;
                    citiIdd   = item.City.Id;
                }
            }
            if (Console.ReadLine().ToLower() == "y")
            {
                var n = dbContext.Services.Find(serviceItemToClose);
                n.IsCompleted   = true;
                n.ServiceOption = dbContext.ServiceOptions.Find(servOptId);
                n.City          = dbContext.Cities.Find(citiIdd);

                dbContext.SaveChanges();
                Console.WriteLine(" Your order is processed");
                Console.WriteLine();
            }
            else
            {
                Console.WriteLine(" If you what to exit this service type \" EXIT \" ");
                if (Console.ReadLine().ToLower() == "exit")
                {
                    return;
                }
            }
        }
Exemplo n.º 4
0
        public void PickUpDistribution(ICorierServiceContext dbContext, IQueriesFixer distributions, ICommandParser comandParser, int userId)
        {
            var serviceIdList = distributions.AvailableDistributionItems(dbContext);

            if (serviceIdList.Count == 0)
            {
                Console.WriteLine("There is not available items for distribution");
                return;
            }
            else
            {
                Console.WriteLine("Get more detail by number");
            }

            var serviceId  = comandParser.CommandParse(serviceIdList, "Service Options");
            var serviceAll = dbContext.Services
                             .Where(s => s.Id == serviceId)
                             .Select(t => new { t.ServiceOption, t.City })
                             .ToList();

            distributions.ServiceOptionDetails(dbContext, serviceAll[0].ServiceOption.Id);
            Console.WriteLine("Commit to Distribution -->  Y / N");

            if (Console.ReadLine().ToLower() == "y")
            {
                var n = dbContext.Services.Find(serviceId);
                n.IsTaken       = true;
                n.UserFixerId   = userId;
                n.ServiceOption = dbContext.ServiceOptions.Find(serviceAll[0].ServiceOption.Id);
                n.City          = dbContext.Cities.Find(serviceAll[0].City.Id);

                dbContext.SaveChanges();
                Console.WriteLine(" Your order is processed");
                Console.WriteLine();
            }
            else
            {
                Console.WriteLine(" If you what to exit this service type \" EXIT \" ");
                if (Console.ReadLine().ToLower() == "exit")
                {
                    return;
                }
            }
        }