Esempio n. 1
0
        public Estimate Create(Guid profileGuid, DateTime createDate, ERPCore.Enterprise.Models.Transactions.Enums.PurchasePurposes purpose)
        {
            var newPurchaseEstimate = new PurchaseEstimate()
            {
                TransactionType = TransactionTypes.PurchaseEstimate,
                Id                = Guid.NewGuid(),
                No                = this.NextNumber,
                ProfileGuid       = profileGuid,
                TransactionDate   = createDate,
                PurchasePurposes  = purpose,
                TaxCode           = organization.TaxCodes.GetDefaultInput,
                SelfProfileGuid   = organization.SelfProfile.Id,
                ExpiredInDayCount = 90,
            };

            erpNodeDBContext.PurchaseEstimates.Add(newPurchaseEstimate);
            erpNodeDBContext.SaveChanges();

            return(newPurchaseEstimate);
        }
Esempio n. 2
0
        public PurchaseEstimate Copy(PurchaseEstimate originalPurchaseEstimate, DateTime trDate)
        {
            var clonePurchaseEstimate = this.erpNodeDBContext.PurchaseEstimates
                                        .AsNoTracking()
                                        .Include(p => p.Items)
                                        .FirstOrDefault(x => x.Id == originalPurchaseEstimate.Id);

            clonePurchaseEstimate.Id = Guid.NewGuid();
            clonePurchaseEstimate.TransactionDate = trDate;
            clonePurchaseEstimate.Reference       = "Clone-" + clonePurchaseEstimate.Reference;
            clonePurchaseEstimate.No     = organization.PurchaseEstimates.NextNumber;
            clonePurchaseEstimate.Status = EstimateStatus.Quote;
            clonePurchaseEstimate.Items.ToList().ForEach(ci => ci.Id = Guid.NewGuid());


            this.erpNodeDBContext.PurchaseEstimates.Add(clonePurchaseEstimate);
            this.erpNodeDBContext.SaveChanges();

            return(clonePurchaseEstimate);
        }
Esempio n. 3
0
        public PurchaseEstimate Save(PurchaseEstimate est)
        {
            var existEst = erpNodeDBContext.PurchaseEstimates.Find(est.Id);

            if (existEst != null)
            {
                existEst.Reference = est.Reference;
                existEst.Memo      = est.Memo;

                existEst.ProjectGuid      = est.ProjectGuid;
                existEst.TransactionDate  = est.TransactionDate;
                existEst.PaymentTermGuid  = est.PaymentTermGuid;
                existEst.ShippingTermGuid = est.ShippingTermGuid;

                existEst.TaxCodeGuid = est.TaxCodeGuid;
                existEst.TaxCode     = organization.TaxCodes.Find(est.TaxCodeGuid);

                existEst.Calculate();
                erpNodeDBContext.SaveChanges();
                return(est);
            }

            return(null);
        }
Esempio n. 4
0
 public void Remove(PurchaseEstimate entity) => erpNodeDBContext.PurchaseEstimates.Remove(entity);