public JsonResult CreateLinesSimplifiedRequisition([FromBody] SimplifiedRequisitionLineViewModel item) { UnidadeDeArmazenamento product = DBStockkeepingUnit.GetById(item.Code); SimplifiedRequisitionLineViewModel result = new SimplifiedRequisitionLineViewModel(); if (item != null) { item.CreateUser = User.Identity.Name; item.CreateDate = DateTime.Now; result = DBSimplifiedRequisitionLines.ParseToViewModel(DBSimplifiedRequisitionLines.Create(DBSimplifiedRequisitionLines.ParseToDatabase(item))); if (result != null) { result.eReasonCode = 100; result.eMessage = "Linha de Requisição Simplificada criada com sucesso."; } else { result.eReasonCode = 101; result.eMessage = "Ocorreu um erro ao criar a Requisição Simplificada."; } } return(Json(result)); }
public JsonResult FinishSimplifiedRequisition([FromBody] List <SimplifiedRequisitionLineViewModel> items) { if (items != null && items.Count > 0) { mensage.eReasonCode = 100; foreach (var item in items) { UnidadeDeArmazenamento product = DBStockkeepingUnit.GetById(item.Code); if (product.Bloqueado == true) { mensage.eReasonCode = 101; mensage.eMessage = "A linha Nº:" + item.LineNo + " contem o produto " + item.Description + " bloqueado"; break; } item.QuantityApproved = item.QuantityToRequire; item.Status = 2; } if (mensage.eReasonCode == 100) { items.ForEach(x => { x.QuantityApproved = x.QuantityToRequire; x.Status = 2; DBSimplifiedRequisitionLines.Update(DBSimplifiedRequisitionLines.ParseToDatabase(x)); }); SimplifiedRequisitionViewModel requisitionSimpli = DBSimplifiedRequisitions.ParseToViewModel(DBSimplifiedRequisitions.GetById(items[0].RequisitionNo)); requisitionSimpli.Status = 2; requisitionSimpli.Finished = true; requisitionSimpli.ApprovalResponsible = User.Identity.Name; requisitionSimpli.ApprovalDate = DateTime.Now.ToString(); requisitionSimpli.ApprovalTime = DateTime.Now.ToString("HH:mm:ss"); DBSimplifiedRequisitions.Update(DBSimplifiedRequisitions.ParseToDatabase(requisitionSimpli)); mensage.eReasonCode = 100; mensage.eMessage = "Requisição terminada com Sucesso"; } } else { mensage.eReasonCode = 101; mensage.eMessage = "Nessecita de linhas de requisição ao terminar!!"; } return(Json(mensage)); }
public JsonResult GetUnitStockeepingId([FromBody] string idStock) { StockkeepingUnitViewModel result = DBStockkeepingUnit.ParseToViewModel(DBStockkeepingUnit.GetById(idStock)); return(Json(result)); }
public JsonResult UpdateCreate_UnidadesArmazenamento([FromBody] List <StockkeepingUnitViewModel> data) { List <StockkeepingUnitViewModel> results = DBStockkeepingUnit.ParseToViewModel(DBStockkeepingUnit.GetAll()); data.RemoveAll(x => results.Any( u => u.ProductNo == x.ProductNo && u.Description == x.Description && u.Code == x.Code && u.Inventory == x.Inventory && u.ShelfNo == x.ShelfNo && u.Blocked == x.Blocked && u.CodeWareHouse == x.CodeWareHouse && u.WareHouseValue == x.WareHouseValue && u.VendorNo == x.VendorNo && u.VendorItemNo == x.VendorItemNo && u.CodeUnitMeasure == x.CodeUnitMeasure && u.UnitCost == x.UnitCost && u.LastCostDirect == x.LastCostDirect && u.PriceSale == x.PriceSale )); data.ForEach(x => { if (!string.IsNullOrEmpty(x.ProductNo) && DBFichaProduto.GetById(x.ProductNo) != null) { UnidadeDeArmazenamento toCreate = DBStockkeepingUnit.ParseToDb(x); UnidadeDeArmazenamento toUpdate = DBStockkeepingUnit.ParseToDb(x); UnidadeDeArmazenamento toSearch = DBStockkeepingUnit.GetById(x.ProductNo); FichaProdutoViewModel product = DBFichaProduto.ParseToViewModel(DBFichaProduto.GetById(x.ProductNo)); LocationViewModel localizacao = DBLocations.ParseToViewModel(DBLocations.GetById(x.Code)); NAVVendorViewModel fornecedor = DBNAV2017Vendor.GetVendor(_config.NAVDatabaseName, _config.NAVCompanyName).Where(y => y.No_ == x.VendorNo).FirstOrDefault(); UnidadeMedidaViewModel unidadeMedida = DBUnidadeMedida.ParseToViewModel(DBUnidadeMedida.GetById(x.CodeUnitMeasure)); if (toSearch == null) { toCreate.NºProduto = x.ProductNo; toCreate.Descrição = product.Descricao; if (localizacao != null) { toCreate.CódLocalização = x.Code; } else { toCreate.CódLocalização = null; } toCreate.Inventário = x.Inventory; toCreate.NºPrateleira = x.ShelfNo; toCreate.Bloqueado = x.Blocked.HasValue ? x.Blocked.ToString().ToLower() == "sim" ? true : false : false; toCreate.ArmazémPrincipal = x.CodeWareHouse.HasValue ? x.CodeWareHouse.ToString().ToLower() == "sim" ? true : false : false; toCreate.ValorEmArmazem = x.WareHouseValue; if (fornecedor != null) { toCreate.NºFornecedor = x.VendorNo; } else { toCreate.NºFornecedor = null; } toCreate.CódProdForn = x.VendorItemNo; if (unidadeMedida != null) { toCreate.CódUnidadeMedidaProduto = x.CodeUnitMeasure; } else { toCreate.CódUnidadeMedidaProduto = null; } toCreate.CustoUnitário = x.UnitCost; toCreate.UltimoCustoDirecto = x.LastCostDirect; toCreate.PreçoDeVenda = x.PriceSale; toCreate.UtilizadorCriação = User.Identity.Name; toCreate.DataHoraCriação = DateTime.Now; DBStockkeepingUnit.Create(toCreate); } else { toUpdate.NºProduto = x.ProductNo; toUpdate.Descrição = product.Descricao; if (localizacao != null) { toUpdate.CódLocalização = x.Code; } else { toUpdate.CódLocalização = null; } toUpdate.Inventário = x.Inventory; toUpdate.NºPrateleira = x.ShelfNo; toUpdate.Bloqueado = x.Blocked.HasValue ? x.Blocked.ToString().ToLower() == "sim" ? true : false : false; toUpdate.ArmazémPrincipal = x.CodeWareHouse.HasValue ? x.CodeWareHouse.ToString().ToLower() == "sim" ? true : false : false; toUpdate.ValorEmArmazem = x.WareHouseValue; if (fornecedor != null) { toUpdate.NºFornecedor = x.VendorNo; } else { toUpdate.NºFornecedor = null; } toUpdate.CódProdForn = x.VendorItemNo; if (unidadeMedida != null) { toUpdate.CódUnidadeMedidaProduto = x.CodeUnitMeasure; } else { toUpdate.CódUnidadeMedidaProduto = null; } toUpdate.CustoUnitário = x.UnitCost; toUpdate.UltimoCustoDirecto = x.LastCostDirect; toUpdate.PreçoDeVenda = x.PriceSale; toUpdate.UtilizadorModificação = User.Identity.Name; toUpdate.DataHoraModificação = DateTime.Now; DBStockkeepingUnit.Update(toUpdate); } } }); return(Json(data)); }