Ejemplo n.º 1
0
        public async Task <IActionResult> ReprintLabelsByChassisNo(string chassisNo)
        {
            var printLabels = new PrintLabels();

            // Check chassis number exist in verification table
            if (_context.Verification.Any(x => x.ChassisNo == chassisNo))
            {
                var data = await _context.vGetChassisNumbers.Where(x => x.ChassisNumber == chassisNo).Distinct().ToListAsync();

                await printLabels.PrintDespatchLabels(data, _printing);

                return(Ok(data));
            }
            else
            {
                return(BadRequest("Chassis number does not exist in the verification table"));
            }
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> PrintLabelsByDate(string dateString)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            DateTime date = DateTime.ParseExact(dateString, "dd-MM-yyyy", CultureInfo.InvariantCulture);

            // Get orders for requested date
            List <vGetChassisNumbers> data = await _context.vGetChassisNumbers.Where(x => (x.MLineShipDate == date) && (x.ChassisNumber != null)).Distinct().ToListAsync();

            if (data.Count == 0)
            {
                return(NotFound("No orders found to dispatch on this date!"));
            }

            // Check for duplicates chassis nos on the verification table
            List <vGetChassisNumbers> data2 = new List <vGetChassisNumbers>();
            bool duplicates = false;

            foreach (var i in data)
            {
                if (_context.Verification.Any(x => x.ChassisNo == i.ChassisNumber))
                {
                    duplicates = true;
                }
                else
                {
                    data2.Add(i);
                }
            }

            if (data2.Count == 0)
            {
                return(NotFound("Only duplicate chassis numbers found! No data has been added to the verification table."));
            }

            // Add chassis no's to the verification table
            foreach (var i in data2)
            {
                _context.Verification.Add(new Verification {
                    ChassisNo        = i.ChassisNumber, SalesOrder = i.SalesOrder, CustomerStockCode = i.MCusSupStkCode,
                    StockDescription = i.MStockDes, DispatchDate = i.MLineShipDate, StockCode = i.MStockCode
                });
                _context.SaveChanges();
            }

            // Print Labels
            var printLabels = new PrintLabels();
            await printLabels.PrintDespatchLabels(data2, _printing);

            if (duplicates)
            {
                return(BadRequest("Duplicate chassis number(s) found to exist on the verification table!  These cannot be added to the verification table!"));
            }
            else
            {
                return(Ok(data2));
            }
        }