Example #1
0
        public OrderLookupResponse DeleteOrder(int orderNumber, string date)
        {
            Validation validate = new Validation();

            OrderDateExist dateExist = new OrderDateExist();

            dateExist.IsDateFormatOk     = validate.ValidFormat(date);
            dateExist.DoesOrderDateExist = _orderRepository.FindDate(date);

            OrderLookupResponse response = new OrderLookupResponse();

            response.Order = _orderRepository.LoadOrder(orderNumber);

            if (dateExist.IsDateFormatOk == false)
            {
                response.Message = "Order date format was invalid.";
                return(response);
            }

            if (dateExist.DoesOrderDateExist && response.Order != null)
            {
                response.Success = true;

                response.Order = _orderRepository.DeleteOrder(orderNumber, date);

                return(response);
            }
            else
            {
                response.Success = false;
                response.Message = $"Order Number: {orderNumber} does not exist in file.";
            }

            return(response);
        }
Example #2
0
        public OrderEditResponse EditOrder(int orderNumber, string date, string customerName, string state,
                                           string productType, decimal area)
        {
            Validation validate = new Validation();

            OrderDateExist dateExist = new OrderDateExist();

            dateExist.IsAreaCorrect = validate.Area(area);
            dateExist.IsNameCorrect = validate.CharactersValidation(customerName);


            OrderEditResponse response = new OrderEditResponse();

            if (!dateExist.IsAreaCorrect)
            {
                response.Success = false;
                response.Message = "Area is not over 100";
                return(response);
            }

            if (!dateExist.IsNameCorrect)
            {
                response.Success = false;
                response.Message = "Invalid characters for name";
                return(response);
            }

            response.Order = _orderRepository.SaveOrder(orderNumber, date, customerName, state,
                                                        productType, area);

            response.Success = true;

            return(response);
        }
Example #3
0
        //if date not exist > create new file, else if exist use file. OrderNumber cannot be used more than once.
        public OrderAddToListResponse AddOrder(string date, string customerName, string state,
                                               string productType, decimal area)
        {
            Validation validate = new Validation();

            OrderDateExist dateExist = new OrderDateExist();

            dateExist.IsDateFormatOk     = validate.ValidFormat(date);
            dateExist.IsFutureDate       = validate.FutureDate(date);
            dateExist.IsNameCorrect      = validate.CharactersValidation(customerName);
            dateExist.IsAreaCorrect      = validate.Area(area);
            dateExist.DoesOrderDateExist = _orderRepository.FindDate(date);

            OrderAddToListResponse response = new OrderAddToListResponse();

            //response.Order = _orderRepository.LoadOrder(orderNumber);

            if (!dateExist.IsDateFormatOk)
            {
                response.Success = false;
                response.Message = "Date format is invalid";
                return(response);
            }

            if (!dateExist.IsFutureDate)
            {
                response.Success = false;
                response.Message = "Date is not future date";
                return(response);
            }

            if (!dateExist.IsNameCorrect)
            {
                response.Success = false;
                response.Message = "Invalid characters for name";
                return(response);
            }

            if (!dateExist.IsAreaCorrect)
            {
                response.Success = false;
                response.Message = "Area is not over 100.00";
                return(response);
            }

            //Date not exist and no ordernumber OR date exist and no order number
            if (!dateExist.DoesOrderDateExist && response.Order == null ||
                dateExist.DoesOrderDateExist && response.Order == null)
            {
                bool confirmOrder = false;

                response.Order = _orderRepository.AddOrder(date, customerName, state,
                                                           productType, area, confirmOrder);

                return(response);
            }

            else
            {
                response.Success = false;
                response.Message = "An error occured, please contact IT.";
            }

            return(response);
        }