85 lines
4.6 KiB
C#
85 lines
4.6 KiB
C#
using Net.Business.Entities.ServicesLayer.Items;
|
|||
|
|
using Sap.Data.Hana;
|
||
|
|
using System;
|
||
|
|
using System.Collections.Generic;
|
||
|
|
using System.Data;
|
||
|
|
|
||
|
|
namespace Net.Data.HelperData.Stock
|
||
|
|
{
|
||
|
|
public class HelperStock
|
||
|
|
{
|
||
|
|
public static List<BE_ItemStock> Get(string ItemCode, string FromWarehouseCode)
|
||
|
|
{
|
||
|
|
List<BE_ItemStock> ListaStock = new List<BE_ItemStock>();
|
||
|
|
DataTable dt = new DataTable();
|
||
|
|
using (HanaConnection con = new HanaConnection(LocalData.ConnectionString))
|
||
|
|
{
|
||
|
|
con.Open();
|
||
|
|
HanaCommand cmd = new HanaCommand($"CALL\"{LocalData.Schema}\".\"ITCA_WMS_SAP_GetStock\"(?, ?)", con);
|
||
|
|
cmd.Parameters.Add("ItemCode", HanaDbType.VarChar).Value = ItemCode ?? "";
|
||
|
|
cmd.Parameters.Add("FromWarehouseCode", HanaDbType.VarChar).Value = FromWarehouseCode ?? "";
|
||
|
|
HanaDataAdapter da = new HanaDataAdapter(cmd);
|
||
|
|
if (da != null)
|
||
|
|
{
|
||
|
|
da.Fill(dt);
|
||
|
|
}
|
||
|
|
con.Close();
|
||
|
|
}
|
||
|
|
|
||
|
|
for (int x = 0; x < dt.Rows.Count; x++)
|
||
|
|
{
|
||
|
|
ListaStock.Add(new BE_ItemStock()
|
||
|
|
{
|
||
|
|
BinCode = (dt.Rows[x]["BinCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["BinCode"]) : string.Empty,
|
||
|
|
DistNumber = (dt.Rows[x]["DistNumber"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["DistNumber"]) : string.Empty,
|
||
|
|
ExpDate = (dt.Rows[x]["ExpDate"] != DBNull.Value) ? Convert.ToDateTime(dt.Rows[x]["ExpDate"]) : DateTime.Now,
|
||
|
|
ItemCode = (dt.Rows[x]["ItemCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["ItemCode"]) : string.Empty,
|
||
|
|
ItemName = (dt.Rows[x]["ItemName"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["ItemName"]) : string.Empty,
|
||
|
|
OnHandQty = (dt.Rows[x]["OnHandQty"] != DBNull.Value) ? Convert.ToDouble(dt.Rows[x]["OnHandQty"]) : 0,
|
||
|
|
WhsCode = (dt.Rows[x]["WhsCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["WhsCode"]) : string.Empty,
|
||
|
|
WhsName = (dt.Rows[x]["WhsName"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["WhsName"]) : string.Empty,
|
||
|
|
});
|
||
|
|
}
|
||
|
|
|
||
|
|
return ListaStock;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
public static List<BE_ItemStock> GetConsolidado(string ItemCode, string FromWarehouseCode)
|
||
|
|
{
|
||
|
|
List<BE_ItemStock> ListaStock = new List<BE_ItemStock>();
|
||
|
|
DataTable dt = new DataTable();
|
||
|
|
using (HanaConnection con = new HanaConnection(LocalData.ConnectionString))
|
||
|
|
{
|
||
|
|
con.Open();
|
||
|
|
HanaCommand cmd = new HanaCommand($"CALL\"{LocalData.Schema}\".\"ITCA_WMS_SAP_GetStockConsolidado\"(?, ?)", con);
|
||
|
|
cmd.Parameters.Add("ItemCode", HanaDbType.VarChar).Value = ItemCode ?? "";
|
||
|
|
cmd.Parameters.Add("FromWarehouseCode", HanaDbType.VarChar).Value = FromWarehouseCode ?? "";
|
||
|
|
HanaDataAdapter da = new HanaDataAdapter(cmd);
|
||
|
|
if (da != null)
|
||
|
|
{
|
||
|
|
da.Fill(dt);
|
||
|
|
}
|
||
|
|
con.Close();
|
||
|
|
}
|
||
|
|
|
||
|
|
for (int x = 0; x < dt.Rows.Count; x++)
|
||
|
|
{
|
||
|
|
ListaStock.Add(new BE_ItemStock()
|
||
|
|
{
|
||
|
|
BinCode = (dt.Rows[x]["BinCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["BinCode"]) : string.Empty,
|
||
|
|
DistNumber = (dt.Rows[x]["DistNumber"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["DistNumber"]) : string.Empty,
|
||
|
|
ExpDate = (dt.Rows[x]["ExpDate"] != DBNull.Value) ? Convert.ToDateTime(dt.Rows[x]["ExpDate"]) : DateTime.Now,
|
||
|
|
ItemCode = (dt.Rows[x]["ItemCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["ItemCode"]) : string.Empty,
|
||
|
|
ItemName = (dt.Rows[x]["ItemName"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["ItemName"]) : string.Empty,
|
||
|
|
OnHandQty = (dt.Rows[x]["OnHandQty"] != DBNull.Value) ? Convert.ToDouble(dt.Rows[x]["OnHandQty"]) : 0,
|
||
|
|
WhsCode = (dt.Rows[x]["WhsCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["WhsCode"]) : string.Empty,
|
||
|
|
WhsName = (dt.Rows[x]["WhsName"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["WhsName"]) : string.Empty,
|
||
|
|
AvgPrice = (dt.Rows[x]["AvgPrice"] != DBNull.Value) ? Convert.ToDouble(dt.Rows[x]["AvgPrice"]) : 0,
|
||
|
|
});
|
||
|
|
}
|
||
|
|
|
||
|
|
return ListaStock;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|