|
|
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;
|
|
|
|
|
|
namespace Estsh.Core.Repositories
|
|
|
{
|
|
|
|
|
|
/***********************************************************
|
|
|
* 工站管制信息管理
|
|
|
*
|
|
|
* NOAH
|
|
|
*
|
|
|
************************************************************/
|
|
|
public class TerminalControlDefineDal : BaseApp
|
|
|
{
|
|
|
public TerminalControlDefineDal(RemotingProxy remotingProxy)
|
|
|
: base(remotingProxy)
|
|
|
{
|
|
|
}
|
|
|
#region 成员方法
|
|
|
/// <summary>
|
|
|
/// 获得菜单列表数据
|
|
|
/// </summary>
|
|
|
public DataTable getList(string strWhere,string filedOrder)
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
strSql.Append("SELECT b.terminal_name ,c.view_board_name ,a.* FROM dbo.sys_terminal_control a LEFT JOIN dbo.sys_terminal b ON a.terminal_id = b.terminal_id LEFT JOIN dbo.g_view_board c ON a.view_board_id = c.view_board_id ");
|
|
|
if (!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(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(6);
|
|
|
|
|
|
Params.Add("@TotalCount", 100);
|
|
|
Params.Add("@TotalPage", 100);
|
|
|
Params.Add("@GroupColumn", "");
|
|
|
Params.Add("@Table", "dbo.sys_terminal_control a LEFT JOIN dbo.sys_terminal b ON a.terminal_id = b.terminal_id LEFT JOIN dbo.g_view_board c ON a.view_board_id = c.view_board_id");
|
|
|
Params.Add("@Column", "b.terminal_name ,c.view_board_name ,a.*");
|
|
|
Params.Add("@PageSize", PageSize);
|
|
|
Params.Add("@CurrentPage", PageIndex);
|
|
|
Params.Add("@Condition", strWhere);
|
|
|
Params.Add("@OrderColumn", OrderBy);
|
|
|
Params.Add("@Group", 0);
|
|
|
|
|
|
String strProcedure = "EXEC Com_Pagination @TotalCount, @TotalPage, @Table, @Column,@OrderColumn,@GroupColumn,@PageSize, @CurrentPage,@Group,@Condition";
|
|
|
return _remotingProxy.GetDataTable(strProcedure, Params);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取分页记录总数
|
|
|
/// </summary>
|
|
|
public int getCountWhere(string strWhere)
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
strSql.Append("select count(*) as Total FROM dbo.sys_terminal_control a LEFT JOIN dbo.sys_terminal b ON a.terminal_id = b.terminal_id LEFT JOIN dbo.g_view_board c ON a.view_board_id = c.view_board_id");
|
|
|
if (strWhere.Trim() != "")
|
|
|
{
|
|
|
strSql.Append(" " + strWhere);
|
|
|
}
|
|
|
int i = 0;
|
|
|
DataTable dt = _remotingProxy.GetDataTable(strSql.ToString());
|
|
|
if (dt.Rows.Count > 0)
|
|
|
{
|
|
|
if (dt.Rows[0]["Total"].ToString() != "")
|
|
|
{
|
|
|
i = int.Parse(dt.Rows[0]["Total"].ToString());
|
|
|
}
|
|
|
}
|
|
|
return i;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 插入菜单数据
|
|
|
/// </summary>
|
|
|
/// <param name="htParams"></param>
|
|
|
/// <returns></returns>
|
|
|
public int saveTerminalControl(Hashtable htParams)
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
SqlStringBuilder.Append("INSERT INTO dbo.sys_terminal_control(terminal_id,unlock_pwd,station_name,station_ip,view_board_id,enabled,view_part_location,create_userid,create_ymd,create_hms) values");
|
|
|
SqlStringBuilder.Append("(@terminal_id,@unlock_pwd,@station_name,@station_ip,@view_board_id,@enabled,@view_part_location,@create_userid,Convert(varchar(10),getdate(),23),Convert(varchar(10),getdate(),108))");
|
|
|
|
|
|
return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 更新菜单数据
|
|
|
/// </summary>
|
|
|
/// <param name="htParams"></param>
|
|
|
/// <returns></returns>
|
|
|
public int updateTerminalControl(Hashtable htParams)
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
StringBuilder SqlStringBuilder = new StringBuilder(1024);
|
|
|
SqlStringBuilder.Append("UPDATE sys_terminal_control SET view_part_location=@view_part_location, ");
|
|
|
SqlStringBuilder.Append("terminal_id=@terminal_id,unlock_pwd=@unlock_pwd,station_name=@station_name,station_ip=@station_ip,view_board_id=@view_board_id,enabled=@enabled,update_userid=@update_userid,update_ymd=Convert(varchar(10),getdate(),23),update_hms=Convert(varchar(10),getdate(),108) ");
|
|
|
SqlStringBuilder.Append("WHERE terminal_id=@terminal_id_bak ");
|
|
|
|
|
|
return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 删除菜单数据
|
|
|
/// </summary>
|
|
|
/// <param name="terminal_id"></param>
|
|
|
/// <returns></returns>
|
|
|
public int deleteTerminalControl(String terminal_id )
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
String delStr = "DELETE FROM sys_terminal_control WHERE terminal_id = @terminal_id";
|
|
|
Hashtable htparams = new Hashtable();
|
|
|
htparams.Add("@terminal_id", terminal_id);
|
|
|
return _remotingProxy.ExecuteNonQuery(delStr, htparams);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
#endregion 成员方法
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取 站点 信息
|
|
|
/// BY NOAH
|
|
|
/// </summary>
|
|
|
/// <returns></returns>
|
|
|
public DataTable getTerminalName()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
strSql.Append("SELECT DISTINCT terminal_id as [value],terminal_name as [key] from sys_terminal WHERE terminal_id IN (SELECT terminal_id FROM dbo.sys_terminal EXCEPT SELECT terminal_id FROM dbo.sys_terminal_control) and enabled = 'Y'");
|
|
|
return _remotingProxy.GetDataTable(strSql.ToString());
|
|
|
}
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 获取 看板 信息
|
|
|
/// BY NOAH
|
|
|
/// </summary>
|
|
|
/// <returns></returns>
|
|
|
public DataTable getBoardName()
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
|
strSql.Append("SELECT DISTINCT view_board_id as [value],view_board_name as [key] from g_view_board WHERE enabled = 'Y'");
|
|
|
return _remotingProxy.GetDataTable(strSql.ToString());
|
|
|
}
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 判断用户输入的零件号是否存在
|
|
|
/// BY NOAH
|
|
|
/// </summary>
|
|
|
/// <param name="part_no"></param>
|
|
|
/// <returns></returns>
|
|
|
public String isExsitPart_no(String part_no)
|
|
|
{
|
|
|
lock (_remotingProxy)
|
|
|
{
|
|
|
string part_id = null;
|
|
|
string SqlString = "select top 1 part_id from sys_part where enabled='Y' and part_no=@part_no";
|
|
|
Hashtable Params = new Hashtable(1);
|
|
|
Params.Add("@part_no", part_no);
|
|
|
DataTable dt = _remotingProxy.GetDataTable(SqlString, Params);
|
|
|
if (dt.Rows.Count < 1)
|
|
|
{
|
|
|
return part_id;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
part_id = dt.Rows[0][0].ToString();
|
|
|
return part_id;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 获取汇总信息
|
|
|
/// </summary>
|
|
|
/// <param name="aWhere">查询条件</param>
|
|
|
/// <returns></returns>
|
|
|
public DataTable GetSumMessage(string aWhere, ref Pager pager)
|
|
|
{
|
|
|
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));
|
|
|
StringBuilder table = new StringBuilder();
|
|
|
table.Append(" dbo.sys_terminal_control a LEFT JOIN dbo.sys_terminal b ON a.terminal_id = b.terminal_id ");
|
|
|
table.Append(" LEFT JOIN dbo.g_view_board c ON a.view_board_id = c.view_board_id ");
|
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Table", table.ToString()));
|
|
|
|
|
|
StringBuilder column = new StringBuilder();
|
|
|
column.Append(" a.terminal_id,");
|
|
|
column.Append(" b.terminal_name,");
|
|
|
column.Append(" a.unlock_pwd ,");
|
|
|
column.Append(" a.station_name,");
|
|
|
column.Append(" a.station_ip,");
|
|
|
column.Append(" c.view_board_name ,");
|
|
|
column.Append(" a.view_part_location, ");
|
|
|
column.Append(" a.enabled,");
|
|
|
column.Append(" a.create_ymd ");
|
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Column", column.ToString()));
|
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@OrderColumn", "a.create_ymd"));
|
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@GroupColumn", ""));
|
|
|
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", 0));
|
|
|
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Condition", aWhere));
|
|
|
Hashtable values = new Hashtable(2);
|
|
|
DataTable dt = null;
|
|
|
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;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|