public async Task <IActionResult> Put(int id, InventoryTransactionLines model) { if (id != model.Id) { return(BadRequest()); } _context.Entry(model).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!IdExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> PostTransaction([FromBody] InventoryTransactionLines transactionApi) { APIResponse response = new APIResponse(); try { Models.InventoryTransactionLines transactionLines = new Models.InventoryTransactionLines(); transactionLines.InventoryTransactionId = transactionApi.InventoryTransactionId; transactionLines.ArticleId = transactionApi.ArticleId; transactionLines.ArticleName = transactionApi.ArticleName; transactionLines.Qty = transactionApi.Qty; _context.InventoryTransactionLines.Add(transactionLines); await _context.SaveChangesAsync(); response.code = "1"; response.message = "Sucess Add Data"; } catch (Exception ex) { response.code = "0"; response.message = ex.ToString(); } return(Ok(response)); }
public IActionResult getMutasi(String StoreCode) { List <InventoryTransactionLines> listtransline = _context.InventoryTransactionLines.ToList(); List <Item> listitem = _context.Item.ToList(); List <MutasiOrder> deliveryOrders = new List <MutasiOrder>(); List <InventoryTransaction> dos = _context.InventoryTransaction.Where(c => c.WarehouseOriginal == StoreCode && c.TransactionTypeId == RetailEnum.MutasiOrderOut && c.InforBypass == true).ToList(); foreach (InventoryTransaction intrans in dos) { // tambah ini InventoryTransaction inventory = intrans; //======== //Select For Header MutasiOrder doObj = new MutasiOrder { date = DateTime.Now.ToString("yyyy-MM-dd"), id = inventory.Id, mutasiOrderId = inventory.TransactionId, status = inventory.StatusId.HasValue ? inventory.StatusId.Value : 0, totalQty = inventory.TotalQty.HasValue ? inventory.TotalQty.Value : 0, mutasiFromWarehouse = inventory.WarehouseOriginal, mutasiToWarehouse = inventory.WarehouseDestination, isPbmPbk = inventory.InforBypass.HasValue ? inventory.InforBypass.Value : false, totalAmount = _context.InventoryTransactionLines.Where(c => c.InventoryTransactionId == inventory.Id).Sum(d => d.ValueSalesPrice), }; List <MutasiOrderLine> deliveryOrderLines = new List <MutasiOrderLine>(); int sumLines = 0; // List<InventoryTransactionLines> dosLines = _context.InventoryTransactionLines.Where(c => c.InventoryTransactionId == intrans.Id).ToList(); List <InventoryTransactionLines> dosLines = _context.InventoryTransactionLines.Where(c => c.InventoryTransactionId == inventory.Id).ToList(); foreach (InventoryTransactionLines doObjLines in dosLines) { // int idx2 = indexttransline(doObjLines.Id, listtransline); InventoryTransactionLines invenlines = listtransline[idx2]; int idx3 = indextitems(invenlines.ArticleId, listitem); Item item = listitem[idx3]; MutasiOrderLine doLine = new MutasiOrderLine { id = invenlines.Id, article = new Article { articleId = item.ItemId, articleIdAlias = item.ItemIdAlias, articleName = invenlines.ArticleName }, articleIdFk = item.Id, mutasiOrderIdFk = inventory.Id, mutasiOrderId = inventory.TransactionId, quantity = invenlines.Qty.Value }; deliveryOrderLines.Add(doLine); } doObj.totalQty = inventory.TotalQty.Value; doObj.mutasiOrderLines = deliveryOrderLines; deliveryOrders.Add(doObj); } return(Ok(deliveryOrders)); }
public List <Article> getArticle(String customerCode) { List <Article> allArticle = new List <Article>(); try { Customer customer = _context.Customer.Where(c => c.CustId == customerCode).First(); Store store = _context.Store.Where(c => c.Id == customer.StoreId).First(); List <Article> listArtice = new List <Article>(); var priceMaster = _context.PriceList; var itemMaster = _context.Item; var inventoryMaster = _context.InventoryLines.Where(c => c.WarehouseId == store.Code); var itemPrice = from price in priceMaster join item in itemMaster on price.ItemId equals item.ItemIdAlias join inventoryLines in inventoryMaster on item.Id equals inventoryLines.ItemId select new Article { id = item.Id, price = price.SalesPrice, articleId = item.ItemId, articleIdAlias = item.ItemIdAlias, articleName = item.Name, itemGroup = item.ItemGroup, unit = "PCS", isService = item.IsServiceItem.HasValue ? item.IsServiceItem.Value : false }; allArticle = itemPrice.ToList(); // List<InventoryTransaction> deliveryOrder = _context.InventoryTransaction.Where(c => c.WarehouseDestination == store.Code && c.TransactionTypeId == Config.RetailEnum.doTransaction && c.StatusId == Config.RetailEnum.doStatusPending).ToList(); List <InventoryTransaction> deliveryOrder = _context.InventoryTransaction.Where(c => c.WarehouseDestination == store.Code && c.TransactionTypeId == Config.RetailEnum.doTransaction).ToList(); if (deliveryOrder.Count > 0) { for (int i = 0; i < deliveryOrder.Count; i++) { InventoryTransaction inventoryTransaction = deliveryOrder[i]; List <InventoryTransactionLines> list = _context.InventoryTransactionLines.Where(c => c.InventoryTransactionId == inventoryTransaction.Id).ToList(); for (int j = 0; j < list.Count; j++) { InventoryTransactionLines inventoryTransactionLines = list[j]; try { //check if exist in current item; bool isItemExistInCurrent = allArticle.Any(c => c.articleIdAlias == list[j].ArticleId); //sebelum ny c.artileid //ganti itemprice.any jadi allitem.any if (!isItemExistInCurrent) { Item item = itemMaster.Where(c => c.ItemIdAlias == inventoryTransactionLines.ArticleId).First();// sbelum ny c.ItemId Article article = new Article(); article.id = item.Id; if (priceMaster.Any(c => c.ItemId == item.ItemIdAlias)) { article.price = priceMaster.Where(c => c.ItemId == item.ItemIdAlias).First().SalesPrice; } else { article.price = 0; } article.articleId = item.ItemId; article.articleIdAlias = item.ItemIdAlias; article.articleName = item.Name; article.unit = "PCS"; allArticle.Add(article); } } catch { } } } } } catch (Exception ex) { } return(allArticle); }