Ejemplo n.º 1
0
        protected string _FormatSuccesSolveStartedMsg(
            Schedule schedule,
            BuildRoutesParameters inputParams)
        {
            string message = string.Format(
                (string)App.Current.FindResource(ORDERS_SUBMITTING_FOR_ROUTING_RESOURCE),
                inputParams.OrdersToAssign.Count,
                schedule.PlannedDate.Value.ToShortDateString());

            return(message);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Gets build routes operation parameters for the specified schedule.
        /// </summary>
        /// <param name="schedule">The schedule to get build routes operation
        /// parameters for.</param>
        /// <returns>Build routes operation parameters.</returns>
        private BuildRoutesParameters _GetBuildRoutesParameters(Schedule schedule)
        {
            var routes = ViolationsHelper.GetBuildRoutes(schedule);

            // get orders planned on schedule's date
            var day = (DateTime)schedule.PlannedDate;

            var orders =
                from order in App.Current.Project.Orders.Search(day)
                where !ConstraintViolationsChecker.IsOrderRouteLocked(order, schedule)
                select order;

            var parameters = new BuildRoutesParameters()
            {
                TargetRoutes   = routes,
                OrdersToAssign = orders.ToList()
            };

            return(parameters);
        }
        /// <summary>
        /// Method gets orders sent for routing operation, if appropriate operation
        /// support orders for assigning.
        /// </summary>
        /// <param name="info">Operation information.</param>
        /// <returns>Collection of orders to assign or null if operation
        /// doesn't support orders to assign.</returns>
        private ICollection <Order> _GetOrdersToAssign(AsyncOperationInfo info)
        {
            Debug.Assert(info != null);

            ICollection <Order> orders = null;

            if (info.OperationType == SolveOperationType.BuildRoutes)
            {
                BuildRoutesParameters parameters = (BuildRoutesParameters)info.InputParams;
                orders = parameters.OrdersToAssign;
            }
            else if (info.OperationType == SolveOperationType.AssignOrders)
            {
                AssignOrdersParams parameters = (AssignOrdersParams)info.InputParams;
                orders = parameters.OrdersToAssign;
            }
            else
            {
                // Do nothing: other operation doesn't support OrdersToAssign.
            }

            return(orders);
        }