private string GetLotNumber(int orderId)
        {
            var context = new OmsContext();

            _orderRepository = new OrderRepository(context);
            _labelRepository = new LabelRepository(context);
            var order = _orderRepository.Get(orderId);

            if (order.LotNumber != null)
            {
                return(order.LotNumber);
            }
            var year  = DateTime.Now.Year;
            var today = year + DateTime.Now.DayOfYear.ToString(CultureInfo.InvariantCulture).PadLeft(3, '0');
            var max   = _labelRepository.Query().Include(x => x.LotNumber)
                        .Where(x => x.LotNumber.StartsWith(today))
                        .Select(x => x.LotNumber)
                        .DefaultIfEmpty(today + "00")
                        .Max();

            var lotNumber = (int.Parse(max) + 1).ToString(CultureInfo.InvariantCulture);

            order.LotNumber = lotNumber;
            _orderRepository.Update(order);
            context.Dispose();
            return(lotNumber);
        }
Beispiel #2
0
        private void Init()
        {
            var context = new OmsContext();

            _orderRepository            = new OrderRepository(context);
            _customerLocationRepository = new CustomerLocationRepository(context);
            var customerRepository = new CustomerRepository(context);

            _customerProductDataRepository = new CustomerProductDataRepository(context);
            _orderService                    = new OrderService(_orderRepository, customerRepository, _customerLocationRepository, _coldWeightRepository);
            _orderDetailService              = new OrderDetailService(_orderDetailRepository, _orderRepository, _productRepository, _customerLocationRepository, new SpeciesRepository(context), _customerProductDataRepository);
            _labelService                    = new LabelService();
            _labelCreateService              = new LabelCreateService();
            _productRepository               = new ProductRepository(context);
            _coldWeightRepository            = new ColdWeightEntryRepository(context);
            _offalRepository                 = new OffalRepository(context);
            _orderComboRepository            = new OrderComboRepository(context);
            _orderOffalRepository            = new OrderOffalRepository(context);
            _orderDetailRepository           = new OrderDetailRepository(context);
            _animalOrderDetailRepository     = new AnimalOrderDetailRepository(context);
            _coldWeightEntryRepository       = new ColdWeightEntryRepository(context);
            _qualityGradeRepository          = new QualityGradeRepository(context);
            _animalLabelRepository           = new AnimalLabelRepository(context);
            _coldWeightEntryDetailRepository = new ColdWeightEntryDetailRepository(context);
        }
        public void ProduceLabel(int orderDetailId, double poundWeight, OmsLabelType labelType, int quantity = 1, DateTime?processDate = null, QualityGrade qualityGrade = null, AnimalLabelsViewModel animalLabel = null, CaseSize customCaseSize = null)
        {
            var context = new OmsContext();

            _orderDetailRepository = new OrderDetailRepository(context);
            var orderDetail = _orderDetailRepository.GetLabelInfo(orderDetailId);
            var model       = GetLabelLayoutViewModel(poundWeight, orderDetail, labelType, false, qualityGrade, animalLabel, customCaseSize);

            for (var i = 0; i < quantity; i++)
            {
                ProduceLabel(labelType, model, orderDetail, false, processDate);
            }
            context.Dispose();
        }
        private string GetSerialNumber()
        {
            var context = new OmsContext();

            _labelRepository = new LabelRepository(context);
            var today = DateTime.Now.DayOfYear.ToString(CultureInfo.InvariantCulture).PadLeft(3, '0');
            var max   = _labelRepository.Query().Include(x => x.SerialNumber)
                        .Where(x => x.SerialNumber.StartsWith(today))
                        .Select(x => x.SerialNumber)
                        .DefaultIfEmpty(today + "0000")
                        .Max();

            var result = (int.Parse(max) + 1).ToString(CultureInfo.InvariantCulture).PadLeft(7, '0');

            context.Dispose();
            return(result);
        }
Beispiel #5
0
        private void Init()
        {
            var context = new OmsContext();

            _labelRepository                 = new LabelRepository(context);
            _orderRepository                 = new OrderRepository(context);
            _orderDetailRepository           = new OrderDetailRepository(context);
            _coldWeightEntryRepository       = new ColdWeightEntryRepository(context);
            _coldWeightEntryDetailRepository = new ColdWeightEntryDetailRepository(context);
            _customerLocationRepository      = new CustomerLocationRepository(context);
            _animalOrderDetailRepository     = new AnimalOrderDetailRepository(context);
            _productRepository               = new ProductRepository(context);
            _customerRepository              = new CustomerRepository(context);
            _labelCreateService              = new LabelCreateService();
            _primalCutRepository             = new PrimalCutRepository(context);
            _speciesRepository               = new SpeciesRepository(context);
        }
 public ProductRepository(OmsContext db)
 {
     _db = db;
 }
        private void CreateLabel(LabelOutputViewModel model)
        {
            var context = new OmsContext();

            _labelRepository = new LabelRepository(context);
            var label = new Label
            {
                OrderDetailId       = model.OrderDetailId,
                TypeId              = model.Type,
                ItemCode            = model.ItemCode,
                LotNumber           = model.LotNumber,
                Description         = model.Description,
                PoundWeight         = model.PoundWeight,
                KilogramWeight      = model.KilogramWeight,
                ProcessDate         = model.ProcessDate.ToString("d"),
                SlaughterDate       = model.SlaughterDate.ToString("d"),
                BestBeforeDate      = model.BestBeforeDate,
                SpeciesBugPath      = model.SpeciesBugPath,
                LogoPath            = model.LogoPath,
                BornIn              = model.BornInRegionName,
                RaisedIn            = model.RaisedInRegionName,
                ProductOf           = model.ProductOfRegionName,
                SlaughteredIn       = model.SlaughteredInRegionName,
                DistributedBy       = model.DistributedBy,
                GermanDescription   = model.GermanDescription,
                FrenchDescription   = model.FrenchDescription,
                ItalianDescription  = model.ItalianDescription,
                SwedishDescription  = model.SwedishDescription,
                IsPrinted           = model.IsPrinted,
                CreatedDate         = model.WeighedDate,
                LabelFile           = model.LabelFile,
                Customer            = model.Customer,
                CustomerPO          = model.CustomerPO,
                CustomerProductCode = model.CustomerProductCode,
                GradeName           = model.GradeName,
                SerialNumber        = model.SerialNumber,
                Organic             = model.Organic,
                Primal              = model.Primal,
                SubPrimal           = model.SubPrimal,
                AnimalName          = model.AnimalName,
                Species             = model.Species,
                Trim                       = model.Trim,
                Refrigeration              = model.Refrigeration,
                PackedFor                  = model.PackedFor,
                JulianProductionDate       = model.JulianProductionDate,
                VarCustomerJobValue        = model.VarCustomerJobValue,
                CustomerProductDescription = model.VarCustomerProductValue,
                Gtin                       = model.Gtin,
                PricePerPound              = model.PricePerPound,
                Price                      = model.Price,
                Printer                    = model.Printer,
                TareWeight                 = model.TareWeight,
                NutritionDescription       = model.NutritionDescription,
                NutritionServingSize       = model.NutritionServingSize,
                NutritionServingContainer  = model.NutritionServingContainer,
                NutritionCalories          = model.NutritionCalories,
                NutritionCaloriesFat       = model.NutritionCaloriesFat,
                NutritionTotalFat          = model.NutritionTotalFat,
                NutritionSatFat            = model.NutritionSatFat,
                NutritionTransFat          = model.NutritionTransFat,
                NutritionPolyFat           = model.NutritionPolyFat,
                NutritionMonoFat           = model.NutritionMonoFat,
                NutritionCholesterol       = model.NutritionCholesterol,
                NutritionSodium            = model.NutritionSodium,
                NutritionCarbs             = model.NutritionCarbs,
                NutritionProtein           = model.NutritionProtein,
                NutritionVitA              = model.NutritionVitA,
                NutritionVitC              = model.NutritionVitC,
                NutritionCalcium           = model.NutritionCalcium,
                NutritionIron              = model.NutritionIron,
                CustomerStateCode          = model.CustomerStateCode,
                CustomerName               = model.CustomerName,
                CustomerPhone              = model.CustomerPhone,
                CustomerEmail              = model.CustomerEmail,
                CustomerCity               = model.CustomerCity,
                CustomerZipCode            = model.CustomerZipCode,
                CustomerFax                = model.CustomerFax,
                CustomerAddress2           = model.CustomerAddress2,
                CustomerAddress1           = model.CustomerAddress1
            };

            Logger.Debug(string.Format("OrderDetailId:{0}; PoundWeight:{1}; KiloWeight:{2}; LabelFile:{3}; LogoPath:{4}; ",
                                       label.OrderDetailId,
                                       label.PoundWeight,
                                       label.KilogramWeight,
                                       label.LabelFile,
                                       label.LogoPath));

            _labelRepository.Add(label);
            _labelRepository.Save();
            context.Dispose();
        }
 public OrderRepository(OmsContext db)
 {
     _db = db;
 }