|
|
using System;
|
|
|
using System.Data;
|
|
|
using System.Text;
|
|
|
using System.Collections.Generic;
|
|
|
using System.Data.SqlClient;
|
|
|
using ApServerProvider;
|
|
|
using DbCommon;
|
|
|
using System.Collections;
|
|
|
|
|
|
namespace Estsh.Core.Repositories
|
|
|
{
|
|
|
|
|
|
/***************************************************
|
|
|
* DPS管理
|
|
|
*
|
|
|
* NOAH
|
|
|
*
|
|
|
***************************************************/
|
|
|
public class CartonDetailQueryDal : BaseApp
|
|
|
{
|
|
|
public CartonDetailQueryDal(RemotingProxy remotingProxy)
|
|
|
: base(remotingProxy)
|
|
|
{
|
|
|
}
|
|
|
#region 成员方法
|
|
|
/// <summary>
|
|
|
/// 获得菜单列表数据
|
|
|
/// </summary>
|
|
|
public DataTable getList(string strWhere, string filedOrder)
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
strSql.Append("SELECT a.*,c.part_no as sys_part_no ,c.part_spec from dbo.g_dps a left join sys_part c on a.part_id=c.part_id ");
|
|
|
if (!strWhere.Trim().Equals(""))
|
|
|
{
|
|
|
strSql.Append(" where " + strWhere);
|
|
|
}
|
|
|
|
|
|
try
|
|
|
{
|
|
|
if (filedOrder != null && !filedOrder.Trim().Equals(""))
|
|
|
{
|
|
|
strSql.Append(" order by " + filedOrder);
|
|
|
}
|
|
|
}
|
|
|
catch { }
|
|
|
|
|
|
return this._remotingProxy.GetDataTable(strSql.ToString());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取分页数据列表
|
|
|
/// </summary>
|
|
|
public DataTable getListByPage(int PageSize, int PageIndex, string strWhere, string OrderBy)
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
if (strWhere.Trim() != "")
|
|
|
{
|
|
|
strWhere = strWhere.Remove(0, 6);//因为存储过程中已经有where,这里需要把之前加入的where去掉,这里截除前六个字符
|
|
|
}
|
|
|
if (OrderBy.Trim() != "")
|
|
|
{
|
|
|
OrderBy = " " + OrderBy; //排序
|
|
|
}
|
|
|
Hashtable Params = new Hashtable();
|
|
|
|
|
|
Params.Add("@TotalCount", 100);
|
|
|
Params.Add("@TotalPage", 100);
|
|
|
StringBuilder SqlStringBuilderTable = new StringBuilder(1024);
|
|
|
SqlStringBuilderTable.Append(" sys_stock s ");
|
|
|
SqlStringBuilderTable.Append(" LEFT JOIN dbo.sys_part p ON s.part_id = p.part_id ");
|
|
|
SqlStringBuilderTable.Append(" LEFT JOIN dbo.sys_locate l ON s.locate_id = l.locate_id ");
|
|
|
SqlStringBuilderTable.Append(" LEFT JOIN dbo.sys_vendor v ON s.vendor_id = v.vendor_id ");
|
|
|
SqlStringBuilderTable.Append(" LEFT JOIN dbo.sys_emp ce ON s.create_userid = ce.emp_id ");
|
|
|
SqlStringBuilderTable.Append(" LEFT JOIN dbo.sys_emp e ON s.update_userid = e.emp_id ");
|
|
|
SqlStringBuilderTable.Append(" LEFT JOIN dbo.sys_enum em1 ON s.type = em1.enum_value ");
|
|
|
SqlStringBuilderTable.Append(" AND em1.enum_type = 'sys_stock_type' ");
|
|
|
SqlStringBuilderTable.Append(" LEFT JOIN dbo.sys_enum ef ON s.enabled = ef.enum_value AND ef.enum_type = 'sys_stock_enabled' ");
|
|
|
|
|
|
Params.Add("@Table", SqlStringBuilderTable.ToString());
|
|
|
StringBuilder SqlStringBuilderColumn = new StringBuilder(1024);
|
|
|
SqlStringBuilderColumn.Append(" ef.enum_desc AS isenabled , ");
|
|
|
SqlStringBuilderColumn.Append(" s.carton_no , ");
|
|
|
SqlStringBuilderColumn.Append(" s.se_date , ");
|
|
|
SqlStringBuilderColumn.Append(" s.se_time , ");
|
|
|
SqlStringBuilderColumn.Append(" v.vendor_code + v.vendor_name AS vendor_name , ");
|
|
|
SqlStringBuilderColumn.Append(" dbo.get_carton_status(s.carton_no) AS status , ");
|
|
|
SqlStringBuilderColumn.Append(" em1.enum_desc type , ");
|
|
|
SqlStringBuilderColumn.Append(" p.part_no , ");
|
|
|
SqlStringBuilderColumn.Append(" p.part_spec , ");
|
|
|
SqlStringBuilderColumn.Append(" p.option3 AS type_name , ");
|
|
|
SqlStringBuilderColumn.Append(" s.buy_no , ");
|
|
|
SqlStringBuilderColumn.Append(" l.locate_name , ");
|
|
|
SqlStringBuilderColumn.Append(" e.emp_name , ");
|
|
|
SqlStringBuilderColumn.Append(" s.update_ymd , ");
|
|
|
SqlStringBuilderColumn.Append(" s.update_hms , ");
|
|
|
SqlStringBuilderColumn.Append(" s.qty , ");
|
|
|
SqlStringBuilderColumn.Append(" s.snp_qty , ");
|
|
|
SqlStringBuilderColumn.Append(" s.plan_qty , ");
|
|
|
SqlStringBuilderColumn.Append(" s.lot_no , ");
|
|
|
SqlStringBuilderColumn.Append(" ce.emp_name AS emp_name1 , ");
|
|
|
SqlStringBuilderColumn.Append(" s.create_ymd , ");
|
|
|
SqlStringBuilderColumn.Append(" s.create_hms , ");
|
|
|
SqlStringBuilderColumn.Append(" s.pick_no , s.date_code ");
|
|
|
Params.Add("@Column", SqlStringBuilderColumn.ToString());
|
|
|
Params.Add("@PageSize", PageSize);
|
|
|
Params.Add("@CurrentPage", PageIndex);
|
|
|
|
|
|
string _strWhere = " ";
|
|
|
//if (!string.IsNullOrEmpty(strWhere))
|
|
|
//{
|
|
|
// _strWhere = " where 1= 1 and " + strWhere;
|
|
|
//}
|
|
|
|
|
|
Params.Add("@OrderColumn", " p.part_no , s.lot_no ,s.update_ymd,s.update_hms ");
|
|
|
Params.Add("@Condition", strWhere);
|
|
|
|
|
|
Params.Add("@GroupColumn", " ");
|
|
|
Params.Add("@Group", 0);
|
|
|
//Params.Add("@Condition", "");
|
|
|
|
|
|
String strProcedure = "EXEC Com_Pagination @TotalCount, @TotalPage, @Table, @Column,@OrderColumn,@GroupColumn,@PageSize, @CurrentPage,@Group,@Condition";
|
|
|
return _remotingProxy.GetDataTable(strProcedure, Params);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//public DataTable getListByPage(int PageSize, int PageIndex, string strWhere, string OrderBy)
|
|
|
//{
|
|
|
// StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
// SqlStringBuilder.Append("SELECT top 10000 ef.enum_desc AS isenabled , ");
|
|
|
// SqlStringBuilder.Append(" s.carton_no , ");
|
|
|
// SqlStringBuilder.Append(" s.se_date , ");
|
|
|
// SqlStringBuilder.Append(" s.se_time , ");
|
|
|
// SqlStringBuilder.Append(" v.vendor_code + v.vendor_name AS vendor_name , ");
|
|
|
// SqlStringBuilder.Append(" dbo.get_carton_status(s.carton_no) AS status , ");
|
|
|
// SqlStringBuilder.Append(" em1.enum_desc type , ");
|
|
|
// SqlStringBuilder.Append(" p.part_no , ");
|
|
|
// SqlStringBuilder.Append(" p.part_spec , ");
|
|
|
// SqlStringBuilder.Append(" p.option3 AS type_name , ");
|
|
|
// SqlStringBuilder.Append(" s.buy_no , ");
|
|
|
// SqlStringBuilder.Append(" l.locate_name , ");
|
|
|
// SqlStringBuilder.Append(" e.emp_name , ");
|
|
|
// SqlStringBuilder.Append(" s.update_ymd , ");
|
|
|
// SqlStringBuilder.Append(" s.update_hms , ");
|
|
|
// SqlStringBuilder.Append(" s.qty , ");
|
|
|
// SqlStringBuilder.Append(" s.snp_qty , ");
|
|
|
// SqlStringBuilder.Append(" s.plan_qty , ");
|
|
|
// SqlStringBuilder.Append(" s.lot_no , ");
|
|
|
// SqlStringBuilder.Append(" ce.emp_name AS emp_name1 , ");
|
|
|
// SqlStringBuilder.Append(" s.create_ymd , ");
|
|
|
// SqlStringBuilder.Append(" s.create_hms , ");
|
|
|
// SqlStringBuilder.Append(" s.pick_no , s.date_code ");
|
|
|
// SqlStringBuilder.Append("FROM sys_stock s ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_part p ON s.part_id = p.part_id ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_locate l ON s.locate_id = l.locate_id ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_vendor v ON s.vendor_id = v.vendor_id ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_emp ce ON s.create_userid = ce.emp_id ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_emp e ON s.update_userid = e.emp_id ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_enum em1 ON s.type = em1.enum_value ");
|
|
|
// SqlStringBuilder.Append(" AND em1.enum_type = 'sys_stock_type' ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_enum ef ON s.enabled = ef.enum_value AND ef.enum_type = 'sys_stock_enabled' ");
|
|
|
// SqlStringBuilder.Append("WHERE 1 = 1 ");
|
|
|
|
|
|
|
|
|
// //if (!string.IsNullOrEmpty(strWhere))
|
|
|
// //{
|
|
|
// // SqlStringBuilder.Append(strWhere);
|
|
|
// //}
|
|
|
|
|
|
// SqlStringBuilder.Append(" ORDER BY p.part_no , s.lot_no ,s.update_ymd,s.update_hms ");
|
|
|
|
|
|
// return _remotingProxy.GetDataTable(SqlStringBuilder.ToString());
|
|
|
//}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取分页记录总数
|
|
|
/// </summary>
|
|
|
//public int getCountWhere(string strWhere)
|
|
|
//{
|
|
|
|
|
|
// StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
// SqlStringBuilder.Append("SELECT e.enum_desc AS warehouse_type, w.warehouse_name, w.warehouse_desc, ");
|
|
|
// SqlStringBuilder.Append(" p.part_no,i.enum_desc as part_type, p.part_spec, ISNULL(p.option3,'') AS option3, SUM(s.qty) AS qty, ");
|
|
|
// SqlStringBuilder.Append(" ed.enum_desc AS stock_type, w.erp_warehouse, s.unit,p.uom ,SUM(dbo.uom_convert(p.part_no,s.unit, s.qty,p.uom)) AS bzqty ");
|
|
|
// SqlStringBuilder.Append("FROM dbo.sys_stock s ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_locate l ON s.locate_id = l.locate_id ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_warehouse w ON w.warehouse_id = l.warehouse_id ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_part p ON s.part_id = p.part_id ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_enum e ON e.enum_value = w.warehouse_type ");
|
|
|
// SqlStringBuilder.Append(" AND e.enum_type = 'sys_warehouse_type' ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN dbo.sys_enum ed ON s.enabled = ed.enum_value ");
|
|
|
// SqlStringBuilder.Append(" AND ed.enum_type = 'sys_stock_enabled' ");
|
|
|
// SqlStringBuilder.Append(" LEFT JOIN sys_enum i ON p.part_type = i.enum_value ");
|
|
|
// SqlStringBuilder.Append(" AND i.enum_type = 'sys_part_type' ");
|
|
|
// SqlStringBuilder.Append("WHERE w.enabled = 'Y' AND s.qty > 0 ");
|
|
|
// SqlStringBuilder.Append(" AND ( s.status IN ( ");
|
|
|
// SqlStringBuilder.Append(" SELECT ISNULL(col,'') ");
|
|
|
// SqlStringBuilder.Append(" FROM dbo.f_split(( SELECT param_value ");
|
|
|
// SqlStringBuilder.Append(" FROM dbo.sys_base ");
|
|
|
// SqlStringBuilder.Append(" WHERE param_name = 'IsInventStatus' ");
|
|
|
// SqlStringBuilder.Append(" ), ',') ) ");
|
|
|
// SqlStringBuilder.Append(" OR ( s.status = 'F' ");
|
|
|
// SqlStringBuilder.Append(" AND s.type = 'C' ");
|
|
|
// SqlStringBuilder.Append(" ) ");
|
|
|
// SqlStringBuilder.Append(" ) ");
|
|
|
// SqlStringBuilder.Append(" AND ISNULL(l.locate_id, 0) <> 0 ");
|
|
|
// SqlStringBuilder.Append(" AND w.erp_warehouse NOT IN ( ");
|
|
|
// SqlStringBuilder.Append(" SELECT ISNULL(col,'') ");
|
|
|
// SqlStringBuilder.Append(" FROM dbo.f_split(( SELECT param_value ");
|
|
|
// SqlStringBuilder.Append(" FROM dbo.sys_base ");
|
|
|
// SqlStringBuilder.Append(" WHERE param_name = 'NotInventLgort' ");
|
|
|
// SqlStringBuilder.Append(" ), ',') ) "+strWhere);
|
|
|
// SqlStringBuilder.Append("GROUP BY w.warehouse_name, w.warehouse_desc, p.part_no,i.enum_desc, p.part_spec, p.option3, ");
|
|
|
// SqlStringBuilder.Append(" e.enum_desc, ed.enum_desc, w.erp_warehouse, s.unit,p.uom ");
|
|
|
// SqlStringBuilder.Append("ORDER BY e.enum_desc, p.option3, w.warehouse_name, w.warehouse_desc, p.part_no, ");
|
|
|
// SqlStringBuilder.Append(" p.part_spec, ed.enum_desc, s.unit,p.uom ");
|
|
|
|
|
|
// //if (strWhere.Trim() != "")
|
|
|
// //{
|
|
|
// // SqlStringBuilder.Append(" " + strWhere);
|
|
|
// //}
|
|
|
// int i = 0;
|
|
|
// DataTable dt = _remotingProxy.GetDataTable(SqlStringBuilder.ToString());
|
|
|
// if (dt.Rows.Count > 0)
|
|
|
// {
|
|
|
|
|
|
// i = dt.Rows.Count;
|
|
|
|
|
|
// }
|
|
|
// return i;
|
|
|
//}
|
|
|
|
|
|
public int getCountWhere(string strWhere)
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
SqlStringBuilder.Append("SELECT p.part_no , s.lot_no ,s.update_ymd,s.update_hms ");
|
|
|
SqlStringBuilder.Append(" FROM sys_stock s ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_part p ON s.part_id = p.part_id ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_locate l ON s.locate_id = l.locate_id ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_vendor v ON s.vendor_id = v.vendor_id ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_emp ce ON s.create_userid = ce.emp_id ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_emp e ON s.update_userid = e.emp_id ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_enum em1 ON s.type = em1.enum_value ");
|
|
|
SqlStringBuilder.Append(" AND em1.enum_type = 'sys_stock_type' ");
|
|
|
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_enum ef ON s.enabled = ef.enum_value AND ef.enum_type = 'sys_stock_enabled' ");
|
|
|
SqlStringBuilder.Append(" where 1=1 " + strWhere);
|
|
|
|
|
|
|
|
|
SqlStringBuilder.Append(" ORDER BY p.part_no , s.lot_no ,s.update_ymd,s.update_hms ");
|
|
|
DataTable dt = _remotingProxy.GetDataTable(SqlStringBuilder.ToString());
|
|
|
if (dt.Rows.Count > 0)
|
|
|
{
|
|
|
return dt.Rows.Count;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
return 0;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#endregion 成员方法
|
|
|
|
|
|
#region 下拉框
|
|
|
public DataTable GetVendor()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
string sql = "SELECT vendor_id as [value] ,vendor_name as [key] FROM dbo.sys_vendor ORDER BY vendor_name";
|
|
|
|
|
|
return _remotingProxy.GetDataTable(sql);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public DataTable GetPart()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
string sql = "SELECT part_id as [value] ,part_no as [key] FROM dbo.sys_part ORDER BY part_no";
|
|
|
|
|
|
return _remotingProxy.GetDataTable(sql);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public DataTable GetModelType()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
string sql = "SELECT type_id as [value] ,type_name as [key] FROM dbo.sys_model_type ORDER BY type_name";
|
|
|
|
|
|
return _remotingProxy.GetDataTable(sql);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public DataTable GetStatus()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
string sql = "SELECT enum_value as [value] ,enum_desc as [key] FROM dbo.sys_enum WHERE enum_type = 'sys_stock_status' ORDER BY enum_value";
|
|
|
|
|
|
return _remotingProxy.GetDataTable(sql);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public DataTable GetEnabled()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
string sql = "SELECT enum_value as [value] ,enum_desc as [key] FROM dbo.sys_enum WHERE enum_type = 'sys_stock_enabled'";
|
|
|
|
|
|
return _remotingProxy.GetDataTable(sql);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public DataTable GetLocate()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
string sql = "select locate_id as [value] , locate_name as [key] from sys_locate";
|
|
|
|
|
|
return _remotingProxy.GetDataTable(sql);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
#endregion 下拉框
|
|
|
|
|
|
public string GetServer()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
string sql = "dbo.get_ymd()";
|
|
|
|
|
|
return _remotingProxy.GetScalar(sql).ToString();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|