using System;
using System.Collections.Generic; 
using System.Data;
using DSWeb.SoftMng.Model;
// ReSharper disable once CheckNamespace
namespace DSWeb.SoftMng.BLL {
	 	//user_baseinfo
		public partial class user_baseinfoBLL
	{ 
		private readonly DAL.user_baseinfoDAL dal=new DAL.user_baseinfoDAL();
		#region  Method
		/// <summary>
		/// 是否存在该记录
		/// </summary>
		public bool Exists(string GID)
		{
			return dal.Exists(GID);
		}
		/// <summary>
		/// 增加一条数据
		/// </summary>
		public int  Add(user_baseinfo model)
		{
			return dal.Add(model);			
		}
		/// <summary>
		/// 更新一条数据
		/// </summary>
		public int Update(user_baseinfo model)
		{
			return dal.Update(model);
		}
		/// <summary>
		/// 删除一条数据
		/// </summary>
		public int Delete(string GID)
		{
			return dal.Delete(GID);
		}
				/// <summary>
		/// 按条件批量删除(有风险)
		/// </summary>
		public int DeleteListWhere(string strWhere)
		{
		  	return dal.DeleteListWhere(strWhere);
		}
		/// <summary>
		/// 得到一个对象实体
		/// </summary>
		public user_baseinfo GetModel(string GID)
		{
			DataSet ds = dal.GetModel(GID);
			if(ds.Tables.Count> 0){
			    var dt = ds.Tables[0];
				if(dt.Rows.Count>0){
				    var dr = dt.Rows[0];
					return DataRowToModel(dr);
				}
				return null;
			}
			return null;
		}
		/// <summary>
		/// 获得数据列表
		/// </summary>
		public DataSet GetList(string strWhere)
		{
			return dal.GetList(strWhere);
		}
		/// <summary>
		/// 获得前几行数据
		/// </summary>
		public DataSet GetList(int Top,string strWhere,string filedOrder)
		{
			return dal.GetList(Top,strWhere,filedOrder);
		}
		/// <summary>
		/// 获得数据列表
		/// </summary>
		public List<user_baseinfo> GetModelList(string strWhere)
		{
			DataSet ds = dal.GetList(strWhere);
			return DataTableToList(ds.Tables[0]);
		}
		/// <summary>
		/// 获得数据列表
		/// </summary>
		public List<user_baseinfo> DataTableToList(DataTable dt)
		{
			List<user_baseinfo> modelList = new List<user_baseinfo>();
			int rowsCount = dt.Rows.Count;
			if (rowsCount > 0)
			{
				for (int n = 0; n < rowsCount; n++)
				{
					var model = DataRowToModel(dt.Rows[n]);
					modelList.Add(model);
				}
			}
			return modelList;
		}
		/// <summary>
		/// 获得数据
		/// </summary>
		public user_baseinfo DataRowToModel(DataRow dr)
		{
		    var model = new user_baseinfo();					
													model.GID= dr["GID"].ToString();																						model.USERID= dr["USERID"].ToString();																						model.COMPANYNAME= dr["COMPANYNAME"].ToString();																						model.DEPTNAME= dr["DEPTNAME"].ToString();																						model.OFFICEPHONE= dr["OFFICEPHONE"].ToString();																						model.HOMEPHONE= dr["HOMEPHONE"].ToString();																						model.MOBILE= dr["MOBILE"].ToString();																						model.FAX= dr["FAX"].ToString();																						model.EMAIL1= dr["EMAIL1"].ToString();																						model.EMAIL2= dr["EMAIL2"].ToString();																						model.HOMEADDRESS= dr["HOMEADDRESS"].ToString();																						model.REMARK= dr["REMARK"].ToString();																						model.CREATEUSER= dr["CREATEUSER"].ToString();																		if(dr["CREATETIME"].ToString()!="")
				model.CREATETIME=DateTime.Parse(dr["CREATETIME"].ToString());
																												model.MODIFIEDUSER= dr["MODIFIEDUSER"].ToString();																		if(dr["MODIFIEDTIME"].ToString()!="")
				model.MODIFIEDTIME=DateTime.Parse(dr["MODIFIEDTIME"].ToString());
																												model.EMERGUSER= dr["EMERGUSER"].ToString();																						model.EMERGPHONE= dr["EMERGPHONE"].ToString();																						model.EMERGEMAIL= dr["EMERGEMAIL"].ToString();																						model.POSTCODE= dr["POSTCODE"].ToString();																						model.QQ= dr["QQ"].ToString();																						model.MSN= dr["MSN"].ToString();																								if(dr["SIGNATURE"].ToString()!="")
				model.SIGNATURE= (byte[])dr["SIGNATURE"];
																						model.FINANCESOFTCODE= dr["FINANCESOFTCODE"].ToString();																						model.IMAGEURL= dr["IMAGEURL"].ToString();																						model.SIGNATUREURL= dr["SIGNATUREURL"].ToString();														
			return model;
		}
		/// <summary>
		/// 获得数据列表
		/// </summary>
		public DataSet GetAllList()
		{
			return GetList("");
		}
		/// <summary>
        /// 分页获取数据列表
        /// </summary>
        /// <param name="startIndex"></param>
        /// <param name="limit"></param>
        /// <param name="strWhere"></param>
        /// <param name="orderby"></param>
        /// <returns></returns>
        public List<user_baseinfo> GetModelList(int startIndex, int limit, string strWhere, string orderby)
        {
            int endIndex = startIndex + limit;
        	DataSet ds = dal.GetListByPage(strWhere,orderby,startIndex,endIndex);
        	return DataTableToList(ds.Tables[0]);
        }
		/// <summary>
		/// 获取记录总数
		/// </summary>
		public int GetRecordCount(string strWhere)
		{
			return dal.GetRecordCount(strWhere);
		}
#endregion
	}
}