using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using WMS.Model.Stock;
using WMS.IData;using Oracle.ManagedDataAccess.Client;
using WMS.IData.IReport;
namespace WMS.SqlServerData.ReportData
{
public class MIStockSearchData : IMIStockSearch
{
///
/// 此查询 用于库存查看功能 查询
///
///
///
public DataTable GetMiStockForLookUp(MIStockModel model)
{
StringBuilder strSql = new StringBuilder();
//T_VIEW_MISTOCKSEARCH 视图
strSql.Append(@"select t.*,(case t.STS when '0' then '正常库存' when '1' then '冻结库存' end )as STS from t_mi_stock t where 1 = 1 ");
strSql.AppendLine(" order by WARE_DATE desc");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
public DataTable GetMiStockForLookUp(MIStockModel model,string tasksts)
{
StringBuilder strSql = new StringBuilder();
//T_VIEW_MISTOCKSEARCH 视图
strSql.Append(@" select t.*,(case t.STS when '0' then '正常库存' when '1' then '冻结库存' end )as locsts ,(case t.status when '9' then '预出库库位' else '正常库位' end )as locstatus from T_VIEW_MISTOCKSEARCH t where storage_id='JXJWYCK'and 1 = 1 ");
strSql.AppendLine(" order by WARE_DATE desc");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
///
/// 某年统计月库存报表 例2013年全年12个月 某商品库存变化
///
///
///
public DataTable MonthReportData(MIStockBackModel mo)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"select operator_date Dat,sum(change_num) NumC from T_MI_STOCK_BACK where goods_id='" + mo.GOODS_ID +@"'
and operator_date between convert(varchar(100),'" + mo.TIMESTART.ToString("yyyy-MM-dd") + "','23') and convert(varchar(100),'" + mo.TIMEEND.ToString("yyyy-MM-dd") +@"','23')
group by operator_date ;");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
//某个月 每天详细库存
public DataTable DayReportData(MIStockBackModel mo)
{
StringBuilder strSql = new StringBuilder();
// strSql.Append(" select OPERATOR_DATE,change_num from T_MI_STOCK_BACK where goods_id='" + mo.GOODS_ID +@"'
// and operator_date between to_date('" + mo.TIMESTART.ToString("yyyy-MM-dd") + "','yyyy-MM-dd') and to_date('" + mo.TIMEEND.ToString("yyyy-MM-dd") +@"','yyyy-MM-dd') ");
// return SystemDataObject.Instance.GetDataTable(strSql.ToString());
//OPERATOR_DATE,change_num
strSql.Append(" select * from T_VIEW_MISTOCKBACKSEARCH where goods_id='" + mo.GOODS_ID +@"'
and operator_date between convert(varchar(100),'" + mo.TIMESTART + "',20) and convert(varchar(100),'" + mo.TIMEEND + "',20) ");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
public DataTable GetVendorsSite()
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"select * from cux_wms_po_vendor_sites_itf_zh");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
public DataTable GetVendors()
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"select * from cux_wms_po_vendors_intf_zh");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
public DataTable GetSubinventory()
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"select * from cux_wms_subinventory_itf_zh");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
public DataTable GetItems()
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"select * from cux_wms_system_items_intf_zh");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
public DataTable GetReason()
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"select * from t_scrap_reason");
return SystemDataObject.Instance.GetDataTable(strSql.ToString());
}
public string DeleteReason(string id,string reason)
{
string errtext = string.Empty;
string strSQL = string.Empty;
try
{
strSQL = "delete from t_scrap_reason where id = '" + id + "' and reason='" + reason + "'";
SystemDataObject.Instance.ExecuteSqlCommit(strSQL);
}
catch (Exception ex)
{
errtext= ex.ToString();
}
return errtext;
}
public void AddReason(string id,string reason)
{
string strSQL = string.Empty;
strSQL = "insert into t_scrap_reason (id,reason) values('"+id+"','"+reason+"')";
SystemDataObject.Instance.ExecuteSqlCommit(strSQL);
}
public DataTable GetMoveLot(string row, string cln, string layer, string area)
{
string sqlStr = @"select location_id,abs(cln-" + cln + ") as c,abs(remark-" + area + ") as a from T_BASE_STORAGE_AREA_LOCATION where cln!='" + cln + "' and layer1='" + layer + "' and status='0' and location_id not in (select location_id from t_mi_stock where location_id is not null) AND OUTSTAND1='0' order by a asc,c asc ,sort asc ";
return SystemDataObject.Instance.GetDataTable(sqlStr.ToString());
}
public DataTable GetMoveLot2(string row, string cln, string layer, string area, string ABC_ID)
{
string sqlStr = "";
if (ABC_ID == "A")
{
sqlStr = @"select location_id,abs(cln-" + cln + ") as c,abs(remark-" + area + ") as a from T_BASE_STORAGE_AREA_LOCATION where remark>'" + area + "' and layer1='" + layer + "' and status='0' and location_id not in (select location_id from t_mi_stock where location_id is not null) AND OUTSTAND1='0' order by a asc,c asc ,sort asc ";
}
else
{
sqlStr = @"select location_id,abs(cln-" + cln + ") as c,abs(remark-" + area + ") as a from T_BASE_STORAGE_AREA_LOCATION where remark<'" + area + "' and layer1='" + layer + "' and status='0' and location_id not in (select location_id from t_mi_stock where location_id is not null) AND OUTSTAND1='0' order by a asc,c asc ,sort asc ";
}
return SystemDataObject.Instance.GetDataTable(sqlStr.ToString());
}
}
}