Пример #1
0
        public Guid Add(Order entity)
        {
            if (entity.BillNo <= 0)
                throw new ArgumentException("Order No cannot be empty!");

            if (entity.CustomerId == Guid.Empty)
                throw new ArgumentException("Order Customer cannot be empty!");

            if (entity.EmployeeId == Guid.Empty)
                throw new ArgumentException("Order Employee cannot be empty!");

            if (CheckDuplicateBillNo(entity.Id, entity.BillNo))
                throw new ArgumentException("Duplicate Order No found!");

            using (OpenPOSDbEntities ctx = new OpenPOSDbEntities())
            {
                try
                {
                    ctx.Orders.MergeOption = MergeOption.NoTracking;
                    ctx.Orders.AddObject(entity);
                    ctx.SaveChanges();
                    var id = entity.Id;
                    ctx.Detach(entity);
                    return id;
                }
                catch (Exception ex)
                {
                    LogService.Error("Error while adding order", ex);
                    throw new ArgumentException("Error while adding new order!", ex);
                }
            }
        }
Пример #2
0
        public Guid Add(Purchase entity)
        {
            if (string.IsNullOrEmpty(entity.BillNo))
                throw new ArgumentException("Purchase No cannot be empty!");

            if (entity.SupplierId == Guid.Empty)
                throw new ArgumentException("Purchase supplier cannot be empty!");

            if (entity.EmployeeId == Guid.Empty)
                throw new ArgumentException("Purchase Employee cannot be empty!");

            if (CheckDuplicateBillNo(entity.Id, entity.BillNo))
                throw new ArgumentException("Duplicate Purchase No found!");

            using (OpenPOSDbEntities ctx = new OpenPOSDbEntities())
            {
                try
                {
                    ctx.Purchases.MergeOption = MergeOption.NoTracking;
                    ctx.Purchases.AddObject(entity);
                    ctx.SaveChanges();
                    var id = entity.Id;
                    ctx.Detach(entity);
                    return id;
                }
                catch (Exception ex)
                {
                    LogService.Error("Error while adding Purchase", ex);
                    throw new ArgumentException("Error while adding new Purchase!", ex);
                }
            }
        }