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 { /// /// 处理菜单模块的业务数据 /// public class PartMasterGYDal : BaseApp { public PartMasterGYDal(RemotingProxy remotingProxy) : base(remotingProxy) { } #region 成员方法 /// /// 根据传入条件获得菜单列表数据 /// public DataTable getList(string strWhere, string filedOrder) { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append(" select * from dbo.sys_part "); 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()); } } /// /// 根据分页条件获取分页数据列表 /// public Hashtable getListByPage(String part_type,int PageSize, int PageIndex, string strWhere, string OrderBy) { lock (_remotingProxy) { Hashtable result = new Hashtable(); List parameters = new List(); 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", "sys_part a left join sys_model b on a.model_id=b.model_id left join sys_route c on a.route_id=c.route_id left join sys_locate d on a.locate_id=d.locate_id LEFT JOIN dbo.sys_enum AS e ON e.enum_value=a.part_location LEFT JOIN dbo.sys_emp f ON a.update_userid = f.emp_id LEFT JOIN dbo.sys_emp g ON a.create_userid = g.emp_id")); parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Column", "a.*, b.model_name,c.route_name,d.locate_name,e.enum_desc,f.emp_name,g.emp_name as create_name")); 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 + " and a.part_type='" + part_type + "'")); 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; } } ///// ///// 获取下拉框菜单数据 ///// ///// //public DataTable getSelectPartMaster() //{ // StringBuilder strSql = new StringBuilder(); // strSql.Append("select PartMaster_id as [value],name as [key] from dbo.sys_web_PartMaster where parent_id = 0 AND enabled = 'Y' "); // return _remotingProxy.GetDataTable(strSql.ToString()); //} /// /// 插入菜单数据 /// /// /// public int savePartMaster(Hashtable htParams) { lock (_remotingProxy) { StringBuilder SqlStringBuilder = new StringBuilder(1024); SqlStringBuilder.Append("INSERT INTO sys_part (part_spec "); SqlStringBuilder.Append(" , part_no "); SqlStringBuilder.Append(" ,part_type "); SqlStringBuilder.Append(" ,part_location "); SqlStringBuilder.Append(" ,model_id "); SqlStringBuilder.Append(" ,version "); SqlStringBuilder.Append(" ,cust_part_no "); SqlStringBuilder.Append(" ,mfger_part_no "); SqlStringBuilder.Append(" ,vendor_part_no "); SqlStringBuilder.Append(" ,erp_part_no "); SqlStringBuilder.Append(" ,uom "); SqlStringBuilder.Append(" ,part_class "); SqlStringBuilder.Append(" ,part_no_3c "); SqlStringBuilder.Append(" ,label_file "); SqlStringBuilder.Append(" ,label_type "); SqlStringBuilder.Append(" ,locate_id "); SqlStringBuilder.Append(" ,default_box_qty "); SqlStringBuilder.Append(" ,default_reel_qty "); SqlStringBuilder.Append(" ,default_set_qty "); SqlStringBuilder.Append(" ,min_pack_qty "); SqlStringBuilder.Append(" ,min_stock_qty "); SqlStringBuilder.Append(" ,max_stock_qty "); SqlStringBuilder.Append(" ,indate "); //SqlStringBuilder.Append(" ,is_sort "); //SqlStringBuilder.Append(" ,sort_qty "); //SqlStringBuilder.Append(" ,sort_type "); SqlStringBuilder.Append(" ,batch_control "); SqlStringBuilder.Append(" ,split_flag "); SqlStringBuilder.Append(" ,over_request "); SqlStringBuilder.Append(" ,indate_flag "); SqlStringBuilder.Append(" ,burnin_time "); SqlStringBuilder.Append(" ,subboard_qty "); SqlStringBuilder.Append(" ,upc_code "); SqlStringBuilder.Append(" ,ucc_code "); SqlStringBuilder.Append(" ,ean_code "); SqlStringBuilder.Append(" ,create_userid "); SqlStringBuilder.Append(" ,create_ymd "); SqlStringBuilder.Append(" ,create_hms) "); SqlStringBuilder.Append(" VALUES(@part_spec "); SqlStringBuilder.Append(" ,@part_no "); SqlStringBuilder.Append(" ,@part_type "); SqlStringBuilder.Append(" ,@part_location "); SqlStringBuilder.Append(" ,@model_id "); SqlStringBuilder.Append(" ,@version "); SqlStringBuilder.Append(" ,@cust_part_no "); SqlStringBuilder.Append(" ,@mfger_part_no "); SqlStringBuilder.Append(" ,@vendor_part_no "); SqlStringBuilder.Append(" ,@erp_part_no "); SqlStringBuilder.Append(" ,@uom "); SqlStringBuilder.Append(" ,@part_class "); SqlStringBuilder.Append(" ,@part_no_3c "); SqlStringBuilder.Append(" ,@label_file "); SqlStringBuilder.Append(" ,@label_type "); SqlStringBuilder.Append(" ,@locate_id "); SqlStringBuilder.Append(" ,@default_box_qty "); SqlStringBuilder.Append(" ,@default_reel_qty "); SqlStringBuilder.Append(" ,@default_set_qty "); SqlStringBuilder.Append(" ,@min_pack_qty "); SqlStringBuilder.Append(" ,@min_stock_qty "); SqlStringBuilder.Append(" ,@max_stock_qty "); SqlStringBuilder.Append(" ,@indate "); //SqlStringBuilder.Append(" ,@is_sort "); //SqlStringBuilder.Append(" ,@sort_qty "); //SqlStringBuilder.Append(" ,@sort_type "); SqlStringBuilder.Append(" ,@batch_control "); SqlStringBuilder.Append(" ,@split_flag "); SqlStringBuilder.Append(" ,@over_request "); SqlStringBuilder.Append(" ,@indate_flag "); SqlStringBuilder.Append(" ,@burnin_time "); SqlStringBuilder.Append(" ,@subboard_qty "); SqlStringBuilder.Append(" ,@upc_code "); SqlStringBuilder.Append(" ,@ucc_code "); SqlStringBuilder.Append(" ,@ean_code "); SqlStringBuilder.Append(" ,@create_userid "); SqlStringBuilder.Append(" , CONVERT(VARCHAR(10),GETDATE(),23) "); SqlStringBuilder.Append(" , CONVERT(VARCHAR(10),GETDATE(),108)) "); return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams); } } /// /// 更新零件数据 /// /// /// public int updatePartMaster(Hashtable htParams) { lock (_remotingProxy) { StringBuilder SqlStringBuilder = new StringBuilder(1024); SqlStringBuilder.Append("update sys_part "); SqlStringBuilder.Append("SET part_spec=@part_spec "); SqlStringBuilder.Append(" , part_type=@part_type "); SqlStringBuilder.Append(" , part_location=@part_location "); SqlStringBuilder.Append(" , model_id=@model_id "); SqlStringBuilder.Append(" , version=@version "); SqlStringBuilder.Append(" , cust_part_no=@cust_part_no "); SqlStringBuilder.Append(" , mfger_part_no=@mfger_part_no "); SqlStringBuilder.Append(" , vendor_part_no=@vendor_part_no "); SqlStringBuilder.Append(" , erp_part_no=@erp_part_no "); SqlStringBuilder.Append(" , uom=@uom "); SqlStringBuilder.Append(" , part_class=@part_class "); SqlStringBuilder.Append(" , part_no_3c=@part_no_3c "); SqlStringBuilder.Append(" , label_file=@label_file "); SqlStringBuilder.Append(" , label_type=@label_type "); SqlStringBuilder.Append(" , locate_id=@locate_id "); SqlStringBuilder.Append(" , default_box_qty=@default_box_qty "); SqlStringBuilder.Append(" , default_reel_qty=@default_reel_qty "); SqlStringBuilder.Append(" , default_set_qty=@default_set_qty "); SqlStringBuilder.Append(" , min_pack_qty=@min_pack_qty "); SqlStringBuilder.Append(" , min_stock_qty=@min_stock_qty "); SqlStringBuilder.Append(" , max_stock_qty=@max_stock_qty "); SqlStringBuilder.Append(" , indate=@indate "); //SqlStringBuilder.Append(" , is_sort=@is_sort "); //SqlStringBuilder.Append(" , sort_qty=@sort_qty "); //SqlStringBuilder.Append(" , sort_type=@sort_type "); SqlStringBuilder.Append(" , batch_control=@batch_control "); SqlStringBuilder.Append(" , split_flag=@split_flag "); SqlStringBuilder.Append(" , over_request=@over_request "); SqlStringBuilder.Append(" , indate_flag=@indate_flag "); SqlStringBuilder.Append(" , burnin_time=@burnin_time "); SqlStringBuilder.Append(" , subboard_qty=@subboard_qty "); SqlStringBuilder.Append(" , upc_code=@upc_code "); SqlStringBuilder.Append(" , ucc_code=@ucc_code "); SqlStringBuilder.Append(" , ean_code=@ean_code "); SqlStringBuilder.Append(" , update_userid=@update_userid "); SqlStringBuilder.Append(" , update_ymd=CONVERT(VARCHAR(10),GETDATE(),23) "); SqlStringBuilder.Append(" , update_hms=CONVERT(VARCHAR(10),GETDATE(),108) "); SqlStringBuilder.Append("WHERE part_id=@part_id "); return _remotingProxy.ExecuteNonQuery(SqlStringBuilder.ToString(), htParams); } } /// /// 删除菜单数据 /// /// /// public int deletePartMaster(String part_id) { lock (_remotingProxy) { Hashtable htparams = new Hashtable(); htparams.Add("@part_id", part_id); String delStr = "delete from sys_part where part_id = @part_id"; return _remotingProxy.ExecuteNonQuery(delStr, htparams); } } /// /// 判断零件号是否存在 /// /// /// public DataTable ifPartNo(String partNo) { lock (_remotingProxy) { Hashtable htparams = new Hashtable(); htparams.Add("@partNo", partNo); String delStr = "SELECT * FROM dbo.sys_part WHERE part_no=@partNo"; return _remotingProxy.GetDataTable(delStr, htparams); } } /// /// /// /// public DataTable selectEnumValue(string enumDesc) { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT TOP 1 * FROM dbo.sys_enum WHERE enum_desc='" + enumDesc + "' "); return _remotingProxy.GetDataTable(strSql.ToString()); } } /// /// /// /// public DataTable selectRouteId(string routeName) { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT TOP 1 * FROM dbo.sys_route WHERE route_name='" + routeName + "'"); return _remotingProxy.GetDataTable(strSql.ToString()); } } /// /// 获取下拉框菜单数据 /// /// public DataTable getSelectPartMaster() { 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()); } } /// /// 获取配置数据 /// /// public DataTable getSelectPartMaster_Model_name() { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("select model_id as [value],model_name as [key] from dbo.sys_model where enabled='Y'"); return _remotingProxy.GetDataTable(strSql.ToString()); } } /// /// 获取车型数据 /// /// public DataTable getSelectPartLocation() { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("select enum_value as [value], (enum_value+'-'+enum_desc) as [key] from dbo.sys_enum where enum_type='sys_part_location'"); return _remotingProxy.GetDataTable(strSql.ToString()); } } /// /// 获取单位数据 /// /// public DataTable getSelectPartMaster_Enum() { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("select enum_id as [value],enum_value as [key] from dbo.sys_enum where enum_type='sys_part_uom'"); return _remotingProxy.GetDataTable(strSql.ToString()); } } /// /// 获取默认库位数据 /// /// public DataTable getSelectPartMaster_Locate() { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("select locate_id as [value],locate_name as [key] from dbo.sys_locate where enabled='Y'"); return _remotingProxy.GetDataTable(strSql.ToString()); } } /// /// 获取条码规则数据 /// /// public DataTable getSelectPartMaster_TMGZ() { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("select enum_id as [value],enum_value as [key] from dbo.sys_enum where enum_type='sys_create_sn_proc' "); return _remotingProxy.GetDataTable(strSql.ToString()); } } /// /// 获取工艺流程数据 /// /// public DataTable getSelectPartMaster_Route() { lock (_remotingProxy) { StringBuilder strSql = new StringBuilder(); strSql.Append("select route_id as [value],route_name as [key] from dbo.sys_route where enabled='Y'"); return _remotingProxy.GetDataTable(strSql.ToString()); } } /// /// 获取分页数据列表 /// /// 一页显示多少条数据 /// 当前第几页 /// 条件 /// 排序字段 /// public DataTable getTableListByPage(String part_type, int PageSize, int PageIndex, string strWhere, string OrderBy) { lock (_remotingProxy) { Hashtable result = new Hashtable(); List parameters = new List(); 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", "sys_part a left join sys_model b on a.model_id=b.model_id left join sys_route c on a.route_id=c.route_id left join sys_locate d on a.locate_id=d.locate_id LEFT JOIN dbo.sys_enum AS e ON a.part_location=e.enum_value AND enum_type='sys_part_location'")); parameters.Add(new StoreProcedureParameter(DbType.String, ParameterDirection.Input, "@Column", "a.*, b.model_name,c.route_name,d.locate_name,e.enum_desc")); 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 + " and a.part_type='" + part_type + "'")); Hashtable values = new Hashtable(2); DataTable dt = new DataTable(); dt = _remotingProxy.ExecuteSotreProcedure("Com_Pagination", parameters, ref values); return dt; } } /// /// /// /// /// /// public bool InsertData(List SqlStrings, List Parameters) { lock (_remotingProxy) { return _remotingProxy.ExecuteSqlTransaction(SqlStrings, Parameters); } } #endregion 成员方法 } }