public IHttpActionResult AddLine(ExpectedReceiptLineBindingModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } long retId; try { if (model.Quantity < 1) { return(Content(HttpStatusCode.Forbidden, "Quantity is must be greater than 0")); } retId = _expectedReceiptService.AddLine(model); if (!string.IsNullOrEmpty(model.Image)) { new Common().ConvertSaveImage(new { ImageString = model.Image, FileName = String.Concat(model.GoodsReceivedNumber, "_", model.ItemCode, ".jpg") }); } Log.Info($"{typeof(ExpectedReceiptController).FullName}||{UserEnvironment}||Add record successful."); } catch (Exception ex) { return(Content(HttpStatusCode.BadRequest, ex.Message)); } var expectedReceiptLine = _expectedReceiptLineService.GetById(retId); var response = this.Request.CreateResponse(HttpStatusCode.Created); string test = JsonConvert.SerializeObject(new { id = retId, itemCode = expectedReceiptLine.ItemCode ?? "", message = "Expected Receipt added" }); response.Content = new StringContent(test, Encoding.UTF8, "appliation/json"); return(ResponseMessage(response)); }
public bool UpdateLine(ExpectedReceiptLineBindingModel bindingModel) { Product product = _productRepository.GetByProductCode(bindingModel.ProductCode); Uom uom = _uomRepository.GetByDescription(bindingModel.UomDescription); Item item = _itemService.GetByItemCode(bindingModel.ItemCode, bindingModel.CustomerId); ExpectedReceiptLine expectedReceiptLine = new ExpectedReceiptLine { Id = (int)bindingModel.Id, ExpectedReceiptId = (int)bindingModel.ExpectedReceiptId, Line = bindingModel.Line, Batch = bindingModel.Batch, ProductId = product?.Id, Quantity = bindingModel.Quantity, BrandId = bindingModel.BrandId, ItemCode = bindingModel.ItemCode, ItemId = item?.Id, ItemDescription = bindingModel.ItemDescription, ExpiryDate = bindingModel.ExpiryDate, UomId = uom?.Id, CustomerId = bindingModel.CustomerId, IsItemExist = bindingModel.IsItemExist, IsActive = bindingModel.IsActive, IsChecked = bindingModel.IsChecked, DateCreated = bindingModel.DateCreated, DateUpdated = bindingModel.DateUpdated, CreatedBy = bindingModel.CreatedBy, UpdatedBy = bindingModel.UpdatedBy, StatusId = bindingModel.StatusId }; //return _expectedReceiptLineRepository.Update(expectedReceiptLine); if (IsDuplicateLine(expectedReceiptLine.ItemCode, expectedReceiptLine.Id, expectedReceiptLine.CustomerId) == false) { return(_expectedReceiptLineRepository.Update(expectedReceiptLine)); } else { return(false); } }
public long AddLine(ExpectedReceiptLineBindingModel bindingModel) { Product product = _productRepository.GetByProductCode(bindingModel.ProductCode); Uom uom = _uomRepository.GetByDescription(bindingModel.UomDescription); var expectedReceiptLine = new ExpectedReceiptLine { ExpectedReceiptId = (int)bindingModel.ExpectedReceiptId, ProductId = product?.Id, UomId = uom?.Id, Quantity = bindingModel.Quantity, BrandId = bindingModel.BrandId, Batch = bindingModel.Batch, ItemCode = bindingModel.ItemCode, ItemId = bindingModel.ItemId, Line = bindingModel.Line, ItemDescription = bindingModel.ItemDescription, ExpiryDate = bindingModel.ExpiryDate, Comments = bindingModel.Comments, Image = bindingModel.Image, CustomerId = bindingModel.CustomerId, IsItemExist = bindingModel.IsItemExist, IsActive = bindingModel.IsActive, IsChecked = bindingModel.IsChecked, DateCreated = bindingModel.DateCreated, DateUpdated = bindingModel.DateUpdated, CreatedBy = bindingModel.CreatedBy, UpdatedBy = bindingModel.UpdatedBy, StatusId = 32 }; //var expectedReceiptLineId = _expectedReceiptLineRepository.Add(expectedReceiptLine); if (IsDuplicateLine(expectedReceiptLine.ItemCode, expectedReceiptLine.Id, expectedReceiptLine.CustomerId) == false) { return(_expectedReceiptLineRepository.Add(expectedReceiptLine)); } else { Expression <Func <ExpectedReceiptLine, bool> > res = x => x.ItemCode.ToLower() == expectedReceiptLine.ItemCode.ToLower() && x.CustomerId == expectedReceiptLine.CustomerId && x.IsActive == false; var getResult = _expectedReceiptLineRepository.Get(res); if (getResult != null) { expectedReceiptLine.Id = getResult.Id; expectedReceiptLine.IsActive = true; expectedReceiptLine.StatusId = 32; _expectedReceiptLineRepository.Detach(expectedReceiptLine); _expectedReceiptLineRepository.Update(expectedReceiptLine); return(expectedReceiptLine.Id); } else { return(0); } } ////Add Quantity on Items assign it to put away //if (expectedReceiptLineId != 0) //{ // Item item = _itemRepository.GetById(bindingModel.Id); // item.Qty += expectedReceiptLine.Quantity; // _itemRepository.Update(item); // //return expectedReceiptLineId; //} //return expectedReceiptLineId; }