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.

195 lines
8.5 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Text;
using System.Collections;
using ApServerProvider;
using Estsh.Web.Util;
using DbCommon;
namespace Estsh.Core.Repositories
{
public class EDIRelationshipDefineDal : BaseApp
{
public EDIRelationshipDefineDal(RemotingProxy remotingProxy)
: base(remotingProxy)
{ }
/// <summary>
/// 获取配置名称
/// </summary>
/// <returns></returns>
public ArrayList GetModelName()
{
lock (_remotingProxy)
{
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("select model_name as [value],model_name as [key] from dbo.sys_model where enabled='Y' ");
DataTable dt = _remotingProxy.GetDataTable(SqlStringBuilder.ToString());
return DataTypeConvert.NewObject.DataTableToArrayList(dt);
}
}
public DataTable getList(string strWhere, string filedOrder)
{
lock (_remotingProxy)
{
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append(" SELECT a.*,b.model_name FROM dbo.g_edi_model_relationship AS a ");
SqlStringBuilder.Append(" LEFT JOIN dbo.sys_model AS b ON a.model_id=b.model_id ");
if (!strWhere.Trim().Equals(""))
{
SqlStringBuilder.Append(" where " + strWhere);
}
if (filedOrder != null && !filedOrder.Trim().Equals(""))
{
SqlStringBuilder.Append(" order by " + filedOrder);
}
return this._remotingProxy.GetDataTable(SqlStringBuilder.ToString());
}
}
// <summary>
/// 根据分页条件获取分页数据列表
/// </summary>
public Hashtable getEDIRelationshipListByPage(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.g_edi_model_relationship AS a
LEFT JOIN dbo.sys_model AS b ON a.model_id=b.model_id "));
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Column", " a.ruid,b.model_name,a.edi_model_name "));
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@OrderColumn", OrderBy.Replace("desc", "")));
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);
ArrayList dataList = DataTypeConvert.NewObject.DataTableToArrayList(dt);
result.Add("dataList", dataList);
result.Add("totalCount", values["@TotalCount"].ToString());
return result;
}
}
/// <summary>
/// 插入菜单数据
/// </summary>
/// <param name="htParams"></param>
/// <returns></returns>
public int saveModelType(Hashtable htParams)
{
lock (_remotingProxy)
{
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("INSERT INTO dbo.g_edi_model_relationship ");
SqlStringBuilder.Append(" ( model_id, edi_model_name ) ");
SqlStringBuilder.Append("VALUES ( @model_id, @edi_model_name ) ");
return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams);
}
}
/// <summary>
/// 更新菜单数据
/// </summary>
/// <param name="htParams"></param>
/// <returns></returns>
public int updateModelType(Hashtable htParams)
{
lock (_remotingProxy)
{
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("UPDATE dbo.g_edi_model_relationship ");
SqlStringBuilder.Append("SET model_id = @model_id , ");
SqlStringBuilder.Append(" edi_model_name = @edi_model_name ");
SqlStringBuilder.Append("WHERE ruid = @ruid ");
return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams);
}
}
/// <summary>
/// 删除菜单数据
/// </summary>
/// <param name="type_id"></param>
/// <returns></returns>
public int deleteModelType(String ruid)
{
lock (_remotingProxy)
{
String delStr = "DELETE dbo.g_edi_model_relationship WHERE ruid=@ruid";
Hashtable htparams = new Hashtable();
htparams.Add("@ruid", ruid);
return _remotingProxy.ExecuteNonQuery(delStr, htparams);
}
}
public int GetModelID(string model_name)
{
lock (_remotingProxy)
{
string SqlString = "select model_id from dbo.sys_model where model_name=@model_name";
Hashtable Params = new Hashtable(1);
Params.Add("@model_name", model_name);
object obj = _remotingProxy.GetScalar(SqlString, Params);
return obj != null ? Convert.ToInt32(obj) : 0;
}
}
/// <summary>
/// 根据分页条件获取分页数据列表(导出时使用)
/// </summary>
public DataTable getShippingExport(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", @" g_edi_model_relationship AS a
LEFT JOIN dbo.sys_model AS b ON a.model_id=b.model_id "));
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Column", " a.ruid,b.model_name,a.edi_model_name "));
parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@OrderColumn", OrderBy.Replace("desc","")));
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;
}
}
}
}