You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
295 lines
12 KiB
C#
295 lines
12 KiB
C#
using System;
|
|
using System.Data;
|
|
using System.Text;
|
|
using System.Collections.Generic;
|
|
using System.Data.SqlClient;
|
|
using ApServerProvider;
|
|
using DbCommon;
|
|
using System.Collections;
|
|
using Estsh.Web.Util;
|
|
using Com.Estsh.MES.App;
|
|
|
|
/***************************************************************************************************
|
|
*
|
|
* 作者:王勇
|
|
*
|
|
* *************************************************************************************************/
|
|
namespace Estsh.Core.Repositories
|
|
{
|
|
/// <summary>
|
|
/// 处理菜单模块的业务数据
|
|
/// </summary>
|
|
public class ProcessOutputDal : BaseApp
|
|
{
|
|
public ProcessOutputDal(RemotingProxy remotingProxy)
|
|
: base(remotingProxy)
|
|
{
|
|
}
|
|
#region 成员方法
|
|
|
|
/// <summary>
|
|
/// 根据传入条件获得菜单列表数据
|
|
/// </summary>
|
|
public DataTable getList(string strWhere, string filedOrder)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append(" select * from dbo.sys_part_cust_order ");
|
|
if (strWhere != null && !strWhere.Trim().Equals(""))
|
|
{
|
|
strSql.Append(" where " + strWhere);
|
|
}
|
|
if (filedOrder != null && !filedOrder.Trim().Equals(""))
|
|
{
|
|
strSql.Append(" order by " + filedOrder);
|
|
}
|
|
return this._remotingProxy.GetDataTable(strSql.ToString());
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据分页条件获取分页数据列表
|
|
/// </summary>
|
|
public DataTable getListByPage(ref Pager pager, string strWhere)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
Hashtable result = new Hashtable();
|
|
|
|
List<StoreProcedureParameter> parameters = new List<StoreProcedureParameter>();
|
|
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Output, "@TotalCount", 100));
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Output, "@TotalPage", 100));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Table", "dbo.g_sn_count a LEFT JOIN dbo.sys_part b ON a.part_id = b.part_id LEFT JOIN dbo.sys_pdline c ON a.pdline_id = c.pdline_id LEFT JOIN dbo.sys_process e ON a.process_id = e.process_id LEFT JOIN dbo.sys_shift f ON a.shift_id = f.shift_id "));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Column", "a.workorder_no ,a.work_date ,SUM(a.output_qty) AS output_qty , b.part_no , b.part_spec , c.pdline_name ,e.process_name ,f.shift_name"));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@OrderColumn", "c.pdline_name ,a.work_date ,f.shift_name ,b.part_no ,e.process_name"));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@GroupColumn", "a.workorder_no ,a.work_date ,b.part_no ,b.part_spec ,c.pdline_name ,e.process_name ,f.shift_name"));
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@PageSize", pager.pageSize));
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@CurrentPage", pager.pageNo));
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@Group", 1));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Condition", strWhere));
|
|
|
|
Hashtable values = new Hashtable(2);
|
|
|
|
DataTable dt = new DataTable();
|
|
dt = _remotingProxy.ExecuteSotreProcedure("Com_Pagination", parameters, ref values);
|
|
//ArrayList dataList = DataTypeConvert.NewObject.DataTableToArrayList(dt);
|
|
//result.Add("dataList", dataList);
|
|
//result.Add("totalCount", values["@TotalCount"].ToString());
|
|
pager.totalRows = Convert.ToInt32(values["@TotalCount"]);
|
|
return dt;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 插入菜单数据
|
|
/// </summary>
|
|
/// <param name="htParams"></param>
|
|
/// <returns></returns>
|
|
public int saveProcessOutput(Hashtable htParams)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
SqlStringBuilder.Append("INSERT INTO sys_part_cust_order (part_id ");
|
|
SqlStringBuilder.Append(" , cust_order ");
|
|
SqlStringBuilder.Append(" ,ship_unit) ");
|
|
SqlStringBuilder.Append(" VALUES(@part_id ");
|
|
SqlStringBuilder.Append(" , @cust_order ");
|
|
SqlStringBuilder.Append(" ,@ship_unit)");
|
|
//SqlStringBuilder.Append(" , CONVERT(VARCHAR(10),GETDATE(),23) ");
|
|
//SqlStringBuilder.Append(" , CONVERT(VARCHAR(10),GETDATE(),108)) ");
|
|
|
|
return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 更新菜单数据
|
|
/// </summary>
|
|
/// <param name="htParams"></param>
|
|
/// <returns></returns>
|
|
public int updateProcessOutput(Hashtable htParams)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
SqlStringBuilder.Append("update sys_part_cust_order ");
|
|
SqlStringBuilder.Append("SET cust_order=@cust_order ");
|
|
SqlStringBuilder.Append(" , ship_unit=@ship_unit ");
|
|
SqlStringBuilder.Append("WHERE part_id=@part_id ");
|
|
|
|
|
|
return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除菜单数据
|
|
/// </summary>
|
|
/// <param name="ruid"></param>
|
|
/// <returns></returns>
|
|
public int deleteProcessOutput(String part_id)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
Hashtable htparams = new Hashtable();
|
|
//String strQuery = "SELECT * FROM sys_part_cust_order WHERE part_id = @part_id";
|
|
htparams.Add("@part_id", part_id);
|
|
//bool exist = _remotingProxy.Exists(strQuery, htparams);
|
|
//if (exist)
|
|
//{
|
|
// return -2;
|
|
//}
|
|
String delStr = "delete from sys_part_cust_order where part_id = @part_id";
|
|
return _remotingProxy.ExecuteNonQuery(delStr, htparams);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取下拉框菜单数据
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable getSelectProcessOutput()
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("select part_id as [value] ,part_no as [key] from sys_part where part_type = '1' ");
|
|
return _remotingProxy.GetDataTable(strSql.ToString());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// 获取分页数据列表
|
|
/// </summary>
|
|
/// <param name="PageSize">一页显示多少条数据</param>
|
|
/// <param name="PageIndex">当前第几页</param>
|
|
/// <param name="strWhere">条件</param>
|
|
/// <param name="OrderBy">排序字段</param>
|
|
/// <returns></returns>
|
|
public DataTable getTableListByPage(int PageSize, int PageIndex, string strWhere, string OrderBy)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
Hashtable result = new Hashtable();
|
|
|
|
List<StoreProcedureParameter> parameters = new List<StoreProcedureParameter>();
|
|
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Output, "@TotalCount", 100));
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Output, "@TotalPage", 100));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Table", "dbo.sys_part_cust_order a LEFT JOIN sys_part b ON a.part_id = b.part_id "));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Column", "b.part_no,b.part_spec,a.*,a.part_id as part_id_a"));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@OrderColumn", OrderBy));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@GroupColumn", ""));
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@PageSize", PageSize));
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@CurrentPage", PageIndex));
|
|
parameters.Add(new StoreProcedureParameter(DbType.Int32, ParameterDirection.Input, "@Group", 0));
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Condition", strWhere));
|
|
|
|
Hashtable values = new Hashtable(2);
|
|
|
|
DataTable dt = new DataTable();
|
|
dt = _remotingProxy.ExecuteSotreProcedure("Com_Pagination", parameters, ref values);
|
|
|
|
|
|
return dt;
|
|
}
|
|
}
|
|
|
|
#endregion 成员方法
|
|
|
|
#region
|
|
/// <summary>
|
|
/// 获得产线
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetPdline(string pdName)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
string SqlString = "SELECT pdline_id as [value],pdline_name as [key],pdline_desc FROM sys_pdline WHERE enabled='Y'";
|
|
if (pdName != null && string.IsNullOrEmpty(pdName.Trim()) == false)
|
|
{
|
|
string likeStr = string.Format(" and pdline_name like '%{0}%'", pdName);
|
|
SqlString += likeStr;
|
|
}
|
|
try
|
|
{
|
|
return _remotingProxy.GetDataTable(SqlString);
|
|
}
|
|
catch
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 获得班别
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetShiftData(string shift_name)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
string sqlStr = "select shift_id as [value], shift_name as[key] from sys_shift";
|
|
|
|
if (shift_name != null && string.IsNullOrEmpty(shift_name.Trim()) == false)
|
|
{
|
|
string likeStr = string.Format(" where shift_name like '%{0}%'", shift_name);
|
|
sqlStr += likeStr;
|
|
}
|
|
try
|
|
{
|
|
return _remotingProxy.GetDataTable(sqlStr);
|
|
}
|
|
catch
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
}
|
|
|
|
public DataTable GetProcessData(string process_name)
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
string sqlStr = "select process_id as [value],process_name as [key] from sys_process";
|
|
|
|
if (process_name != null && string.IsNullOrEmpty(process_name.Trim()) == false)
|
|
{
|
|
string likeStr = string.Format(" where process_name like '%{0}%'", process_name);
|
|
sqlStr += likeStr;
|
|
}
|
|
try
|
|
{
|
|
return _remotingProxy.GetDataTable(sqlStr);
|
|
}
|
|
catch
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获得零件号
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetPartNo()
|
|
{
|
|
lock (_remotingProxy)
|
|
{
|
|
string sqlStr = "select part_id as [value],part_no as [key] from sys_part";
|
|
return _remotingProxy.GetDataTable(sqlStr);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
}
|