Пример #1
0
        public void Update(ReturnedSaleDTO dto, int userId)
        {
            //var sale = new SaleDalFacade().GetSale(dto.SaleId);
            var workPlaceId          = new UserDalFacade().GetAccountUser(userId).WorkPlace.Id.Value;
            var existingReturnedSale = GetReturnedSale(dto.Id);
            var dasd = existingReturnedSale.Quantity - existingReturnedSale.DefectedQuantity;
            var diff = (dto.Quantity - dto.DefectedQuantity) - dasd; // quantity - deffectedQuantity !!!(So quantity is general for both)

            var productInStockFrom = new ProductStockDalFacade().GetProductStockByPlaceAndProduct(workPlaceId, dto.ProductId);

            productInStockFrom.Quantity += diff;

            new ProductStockDalFacade().Update(productInStockFrom);

            new ReturnedSaleDalFacade().Update(dto);
            //

            var existingReturnSale  = new ReturnedSaleBL().GetReturnedSale(dto.Id);
            var lostInMoneyInInsert = existingReturnSale.ReturnedPrice * existingReturnSale.Quantity;
            var lostInMoneyInUpdate = dto.ReturnedPrice * dto.Quantity;
            var lostInMoney         = lostInMoneyInInsert - lostInMoneyInUpdate;
            var quantity            = existingReturnSale.Quantity - dto.Quantity;
            //var sale2 = new SaleDalFacade().GetSale(dto.SaleId);
            //sale2.SalesPrice -= lostInMoney;
            //sale2.Quantity -= quantity;
            //new SaleDalFacade().Update(sale2);

            //var order = new OrderDalFacade().GetClientOrder(sale.OrderId);
            //order.OverallPrice -= lostInMoney;
            //order.PaymentByCash -= lostInMoney;
            //new OrderDalFacade().Update(order);
        }
Пример #2
0
        public void Update(ReturnedSaleDTO dto)
        {
            var element = (from c in db.ReturnedSales where c.Id == dto.Id select c).FirstOrDefault();

            element.Cause            = dto.Cause;
            element.DefectedQuantity = dto.DefectedQuantity;
            element.Quantity         = dto.Quantity;
            element.ReturnDate       = dto.ReturnDate;
            element.ReturnedPrice    = dto.ReturnedPrice;
            element.ReturnedMoney    = dto.ReturnedMoney;
            element.UpdatedDate      = DateTime.Now;
            db.SubmitChanges();
        }
 public HttpResponseMessage Add(ReturnedSaleDTO element)
 {
     try
     {
         var userId = AuthHelper.GetUserIdFromClaims(User.Identity as ClaimsIdentity);
         new ReturnedSaleBL().Add(element, userId);
         return(Request.CreateResponse(HttpStatusCode.OK, true));
     }
     catch (Exception ex)
     {
         LogManager.Instance.Error(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, false));
     }
 }
Пример #4
0
        public void UpdateProductStock(ReturnedSaleDTO dto, int userId)
        {
            var workplaceId = new UserDalFacade().GetAccountUser(userId).WorkPlace.Id.Value;

            var productInStockAdd =
                new ProductStockDalFacade().GetProductStockByPlaceAndProduct(workplaceId, dto.ProductId, true);

            if (productInStockAdd == null)
            {
                AddProductStock(workplaceId, dto.ProductId, dto.Quantity - dto.DefectedQuantity);
            }
            else
            {
                productInStockAdd.Quantity += dto.Quantity - dto.DefectedQuantity;
                new ProductStockDalFacade().Update(productInStockAdd);
            }
        }
Пример #5
0
        public void Add(ReturnedSaleDTO c, int workPlaceId)
        {
            var element = new ReturnedSale()
            {
                Id               = c.Id,
                SaleId           = c.SaleId,
                ProductId        = c.ProductId,
                Cause            = c.Cause,
                DefectedQuantity = c.DefectedQuantity,
                Quantity         = c.Quantity,
                ReturnDate       = c.ReturnDate,
                ReturnedPrice    = c.ReturnedPrice,
                ReturnedMoney    = c.ReturnedMoney,
                WorkplaceId      = workPlaceId,
            };

            db.ReturnedSales.InsertOnSubmit(element);
            db.SubmitChanges();
        }
 public HttpResponseMessage Update(ReturnedSaleDTO dto)
 {
     try
     {
         var userId = AuthHelper.GetUserIdFromClaims(User.Identity as ClaimsIdentity);
         new ReturnedSaleBL().Update(dto, userId);
         return(Request.CreateResponse(HttpStatusCode.OK, true));
     }
     catch (ArgumentOutOfRangeException ex)
     {
         LogManager.Instance.Error(ex);
         return(Request.CreateResponse(HttpStatusCode.BadRequest, ex.Message));
     }
     catch (Exception ex)
     {
         LogManager.Instance.Error(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, false));
     }
 }
Пример #7
0
        public void Add(ReturnedSaleDTO dto, int userId)
        {
            var workPlaceId = new UserDalFacade().GetAccountUser(userId).WorkPlace.Id.Value;

            if (dto.SaleId == 0)
            {
                dto.SaleId = null;
            }
            new ProductStockBL().UpdateProductStock(dto, userId);
            new ReturnedSaleDalFacade().Add(dto, workPlaceId);

            var lostInMoney = dto.ReturnedPrice * dto.Quantity;
            //var sale = new SaleDalFacade().GetSale(dto.SaleId);
            //sale.Quantity -= dto.Quantity;
            //sale.SalesPrice -= lostInMoney;
            //new SaleDalFacade().Update(sale);

            //var order = new OrderDalFacade().GetClientOrder(sale.OrderId);
            //order.OverallPrice -= lostInMoney;
            //order.PaymentByCash -= lostInMoney;
            //new OrderDalFacade().Update(order);
        }