using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using MySql.Data.MySqlClient; namespace FangYar.OracleDAL.TBL { public class SysUsersDAL : FangYar.IDAL.TBL.SysUsersIDAL { #region 私有方法 /// /// DataRow转model实体类对象 /// /// /// private void DataRowToModel(Model.TBL.TBL_SYS_USERS_Model model, DataRow dr) { if (!DBNull.Value.Equals(dr["USERS_UID"])) model.USERS_UID = dr["USERS_UID"].ToString(); if (!DBNull.Value.Equals(dr["USERS_PWD"])) model.USERS_PWD = dr["USERS_PWD"].ToString(); if (!DBNull.Value.Equals(dr["USERS_NAME"])) model.USERS_NAME = dr["USERS_NAME"].ToString(); if (!DBNull.Value.Equals(dr["USERS_WEEK"])) model.USERS_WEEK = dr["USERS_WEEK"].ToString(); if (!DBNull.Value.Equals(dr["USERS_TIME"])) model.USERS_TIME = dr["USERS_TIME"].ToString(); if (!DBNull.Value.Equals(dr["USERS_STATE"])) model.USERS_STATE = dr["USERS_STATE"].ToString(); if (!DBNull.Value.Equals(dr["USERS_EMAIL"])) model.USERS_EMAIL = dr["USERS_EMAIL"].ToString(); if (!DBNull.Value.Equals(dr["USERS_MOBILE"])) model.USERS_MOBILE = dr["USERS_MOBILE"].ToString(); if (!DBNull.Value.Equals(dr["ORG_ID"])) model.ORG_ID = dr["ORG_ID"].ToString(); if (!DBNull.Value.Equals(dr["EMP_ID"])) model.EMP_ID = dr["EMP_ID"].ToString(); if (!DBNull.Value.Equals(dr["EMP_ID"])) model.EMP_ID = dr["EMP_ID"].ToString(); if (!DBNull.Value.Equals(dr["IS_THIS"])) model.IS_THIS = dr["IS_THIS"].ToString(); if (!DBNull.Value.Equals(dr["IS_SUPER"])) model.IS_SUPER = dr["IS_SUPER"].ToString(); model.ID = dr["ID"] + ""; } /// /// DataRow转model实体类对象 /// /// /// private Model.TBL.TBL_SYS_USERS_Model DataRowToModel(DataRow dr) { Model.TBL.TBL_SYS_USERS_Model model = new Model.TBL.TBL_SYS_USERS_Model(); if (!DBNull.Value.Equals(dr["USERS_UID"])) model.USERS_UID = dr["USERS_UID"].ToString(); if (!DBNull.Value.Equals(dr["USERS_PWD"])) model.USERS_PWD = dr["USERS_PWD"].ToString(); if (!DBNull.Value.Equals(dr["USERS_NAME"])) model.USERS_NAME = dr["USERS_NAME"].ToString(); if (!DBNull.Value.Equals(dr["USERS_WEEK"])) model.USERS_WEEK = dr["USERS_WEEK"].ToString(); if (!DBNull.Value.Equals(dr["USERS_TIME"])) model.USERS_TIME = dr["USERS_TIME"].ToString(); if (!DBNull.Value.Equals(dr["USERS_STATE"])) model.USERS_STATE = dr["USERS_STATE"].ToString(); if (!DBNull.Value.Equals(dr["USERS_EMAIL"])) model.USERS_EMAIL = dr["USERS_EMAIL"].ToString(); if (!DBNull.Value.Equals(dr["USERS_MOBILE"])) model.USERS_MOBILE = dr["USERS_MOBILE"].ToString(); if (!DBNull.Value.Equals(dr["ORG_ID"])) model.ORG_ID = dr["ORG_ID"].ToString(); if (!DBNull.Value.Equals(dr["EMP_ID"])) model.EMP_ID = dr["EMP_ID"].ToString(); if (!DBNull.Value.Equals(dr["EMP_ID"])) model.EMP_ID = dr["EMP_ID"].ToString(); if (!DBNull.Value.Equals(dr["IS_THIS"])) model.IS_THIS = dr["IS_THIS"].ToString(); if (!DBNull.Value.Equals(dr["IS_SUPER"])) model.IS_SUPER = dr["IS_SUPER"].ToString(); return model; } /// /// 把DataTable行转成实体类List集合 /// private List DataTableToList(DataTable dt) { List modellist = new List(); if (dt.Rows.Count > 0) { foreach (DataRow myRow in dt.Rows) { modellist.Add(DataRowToModel(myRow)); } } return modellist; } #endregion #region 基本方法 /// /// 根据ID获取model /// public FangYar.Model.TBL.TBL_SYS_USERS_Model GetModelByID(string ID) { Model.TBL.TBL_SYS_USERS_Model model = null; string sql = "select * from TBL_SYS_USERS where ID=@ID"; MySqlParameter[] paras = { new MySqlParameter("@ID", ID) }; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { model = new Model.TBL.TBL_SYS_USERS_Model(); DataRowToModel(model, dt.Rows[0]); return model; } else { return null; } } /// /// 根据ID获取model /// public FangYar.Model.TBL.TBL_SYS_USERS_Model GetModelByUID(string UID) { Model.TBL.TBL_SYS_USERS_Model model = null; string sql = "select * from TBL_SYS_USERS where USERS_UID=@USERS_UID"; MySqlParameter[] paras ={ new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50) }; paras[0].Value = UID; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { model = new Model.TBL.TBL_SYS_USERS_Model(); DataRowToModel(model, dt.Rows[0]); return model; } else { return null; } } /// /// 根据ID获取LoginUserModel /// public Model.LoginUserModel GetLoginUserModelByUID(string UID) { string sql = "select t.USERS_UID,t.USERS_NAME,t.USERS_STATE,t.ORG_ID,e.EMP_MOBILE,t.IS_THIS,t.IS_SUPER,e.dept_id,(select o.org_name from fire_org o where org_id = t.ORG_ID) as org_name,(select o.CITY from fire_org o where org_id = e.org_id) as CityCode ,(select o.org_name from fire_org o where org_id = e.dept_id) as dept_name from TBL_SYS_USERS t left join TBL_SYS_EMP e on e.USERS_UID = t.USERS_UID where t.USERS_UID=@USERS_UID"; MySqlParameter[] paras ={ new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50) }; paras[0].Value = UID; FangYar.Model.LoginUserModel model = null; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { DataRow dr = dt.Rows[0]; model = new Model.LoginUserModel(); //DataRowToModel(user, dt.Rows[0]); //只取部分属性写入cookie(防止某些列特别长,例如description,导致cookie过长): model.UserCode = dr["USERS_UID"] + ""; model.USERS_NAME = dr["USERS_NAME"] + ""; model.USERS_MOBILE = dr["EMP_MOBILE"] + ""; model.state = dr["USERS_STATE"] + ""; model.OrgID = dr["ORG_ID"] + ""; model.DeptID = dr["DEPT_ID"] + ""; model.IS_THIS = dr["IS_THIS"] + ""; model.IS_SUPER = dr["IS_SUPER"] + ""; model.OrgName = dr["ORG_NAME"] + ""; model.DeptName = dr["DEPT_NAME"] + ""; model.CityCode = dr["CityCode"] + ""; return model; } return model; } /// /// 新表(train_emp)根据ID获取LoginUserModel /// public Model.LoginUserModel NewTrainEmpGetLoginUserModelByUID(string UID) { string sql = "select e.ID as EMP_ID,t.USERS_UID,t.USERS_NAME,t.USERS_STATE,t.ORG_ID,e.EMP_MOBILE,t.IS_THIS,t.IS_SUPER,e.dept_id,(select o.org_name from fire_org o where org_id = t.ORG_ID) as org_name,(select o.CITY from fire_org o where org_id = e.org_id) as CityCode ,(select o.org_name from fire_org o where org_id = e.dept_id) as dept_name from TBL_SYS_USERS t left join TBL_SYS_EMP e on e.USERS_UID = t.USERS_UID where t.USERS_UID=@USERS_UID"; MySqlParameter[] paras ={ new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50) }; paras[0].Value = UID; FangYar.Model.LoginUserModel model = null; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { DataRow dr = dt.Rows[0]; model = new Model.LoginUserModel(); //DataRowToModel(user, dt.Rows[0]); //只取部分属性写入cookie(防止某些列特别长,例如description,导致cookie过长): model.EmpId = dr["EMP_ID"] + ""; model.UserCode = dr["USERS_UID"] + ""; model.USERS_NAME = dr["USERS_NAME"] + ""; model.USERS_MOBILE = dr["EMP_MOBILE"] + ""; model.state = dr["USERS_STATE"] + ""; model.OrgID = dr["ORG_ID"] + ""; model.DeptID = dr["DEPT_ID"] + ""; model.IS_THIS = dr["IS_THIS"] + ""; model.IS_SUPER = dr["IS_SUPER"] + ""; model.OrgName = dr["ORG_NAME"] + ""; model.DeptName = dr["DEPT_NAME"] + ""; model.CityCode = dr["CityCode"] + ""; return model; } return model; } /// /// 添加 /// public bool Add(FangYar.Model.TBL.TBL_SYS_USERS_Model model) { StringBuilder strsql = new StringBuilder(); strsql.Append("insert into TBL_SYS_USERS (ID,USERS_UID,USERS_PWD,USERS_NAME,USERS_WEEK,USERS_TIME,USERS_STATE,USERS_EMAIL,USERS_MOBILE,ORG_ID,EMP_ID,IS_THIS,IS_SUPER)"); strsql.Append("values"); strsql.Append("(UUID(),@USERS_UID,@USERS_PWD,@USERS_NAME,@USERS_WEEK,@USERS_TIME,@USERS_STATE,@USERS_EMAIL,@USERS_MOBILE,@ORG_ID,@EMP_ID,@IS_THIS,@IS_SUPER)"); MySqlParameter[] paras ={ new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_PWD",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_NAME",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_WEEK",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_TIME",MySqlDbType.VarChar,30), new MySqlParameter("@USERS_STATE",MySqlDbType.VarChar,1), new MySqlParameter("@USERS_EMAIL",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_MOBILE",MySqlDbType.VarChar,50), new MySqlParameter("@ORG_ID",MySqlDbType.VarChar,36), new MySqlParameter("@EMP_ID",MySqlDbType.VarChar,36), new MySqlParameter("@IS_THIS",MySqlDbType.VarChar,1), new MySqlParameter("@IS_SUPER",MySqlDbType.VarChar,20) }; paras[0].Value = model.USERS_UID; paras[1].Value = model.USERS_PWD; paras[2].Value = model.USERS_NAME; paras[3].Value = model.USERS_WEEK; paras[4].Value = model.USERS_TIME; paras[5].Value = model.USERS_STATE; paras[6].Value = model.USERS_EMAIL; paras[7].Value = model.USERS_MOBILE; paras[8].Value = model.ORG_ID; paras[9].Value = model.EMP_ID; paras[10].Value = model.IS_THIS; paras[11].Value = model.IS_SUPER; int i = 0; try { i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras); } catch (Exception e) { return false; } if (i > 0) { return true; } else { return false; } } /// /// 删除 /// public bool Delete(string IDList) { string sql = "delete from TBL_SYS_USERS where USERS_UID in('" + IDList + "')"; try { int i = FangYar.Common.MySqlHelper.ExecuteSql(sql); if (i > 0) { return true; } else { return false; } } catch { return false; } } /// /// 编辑 /// public bool Edit(FangYar.Model.TBL.TBL_SYS_USERS_Model model) { StringBuilder strsql = new StringBuilder(); strsql.Append("update TBL_SYS_USERS set "); strsql.Append("USERS_PWD=@USERS_PWD,"); strsql.Append("USERS_NAME=@USERS_NAME,"); strsql.Append("USERS_WEEK=@USERS_WEEK,"); strsql.Append("USERS_TIME=@USERS_TIME,"); strsql.Append("USERS_STATE=@USERS_STATE,"); strsql.Append("USERS_EMAIL=@USERS_EMAIL,"); strsql.Append("USERS_MOBILE=@USERS_MOBILE,"); strsql.Append("USERS_UID=@USERS_UID,"); strsql.Append("ORG_ID=@ORG_ID,"); strsql.Append("IS_THIS=@IS_THIS, "); strsql.Append("IS_SUPER=@IS_SUPER "); strsql.Append(" where ID=@ID"); MySqlParameter[] paras ={ new MySqlParameter("@USERS_PWD",model.USERS_PWD), new MySqlParameter("@USERS_NAME",model.USERS_NAME), new MySqlParameter("@USERS_WEEK",model.USERS_WEEK), new MySqlParameter("@USERS_TIME",model.USERS_TIME), new MySqlParameter("@USERS_STATE",model.USERS_STATE), new MySqlParameter("@USERS_EMAIL",model.USERS_EMAIL), new MySqlParameter("@USERS_MOBILE",model.USERS_MOBILE), new MySqlParameter("@USERS_UID",model.USERS_UID), new MySqlParameter("@ORG_ID",model.ORG_ID), new MySqlParameter("@IS_THIS",model.IS_THIS), new MySqlParameter("@IS_SUPER",model.IS_SUPER), new MySqlParameter("@ID",model.ID) }; int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras); if (i > 0) { return true; } else { return false; } } /// /// 获取记录数 /// public int Count(string strwhere) { string sql = "select count(1) from TBL_SYS_USERS "; if (strwhere != null && strwhere != "") { sql += " where " + strwhere; } try { return FangYar.Common.MySqlHelper.GetCount(sql); } catch { return 0; } } #endregion #region 分页 /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public string QueryJsonList(int PageIndex, int PageSize, string strwhere) { return FangYar.Common.JsonHelper.ToJson(QueryPage(PageIndex, PageSize, strwhere)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public string QueryJsonList(int PageIndex, int PageSize, string strwhere, string order) { return FangYar.Common.JsonHelper.ToJson(QueryPage(PageIndex, PageSize, strwhere, order)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public List QueryList(int PageIndex, int PageSize, string strwhere) { return DataTableToList(QueryPage(PageIndex, PageSize, strwhere)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public List QueryList(int PageIndex, int PageSize, string strwhere, string order) { return DataTableToList(QueryPage(PageIndex, PageSize, strwhere, order)); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// public DataTable QueryPage(int PageIndex, int PageSize, string strwhere) { return FangYar.Common.MySqlHelper.QueryPage(PageIndex, PageSize, "TBL_SYS_USERS", strwhere); } /// /// 分页无排序 /// /// 页面索引 /// 页面大小 /// 查询条件 /// 排序 /// public DataTable QueryPage(int PageIndex, int PageSize, string strwhere, string order) { return FangYar.Common.MySqlHelper.QueryPage(PageIndex, PageSize, "TBL_SYS_USERS", strwhere, order); } /// /// 存储过程分页 /// /// 页面索引 /// 页面大小 /// 查询条件 /// 排序 /// public void QueryProc(int PageIndex, int PageSize, string strwhere, string order) { int totalcount = 0; FangYar.Common.SqlPagerHelperOra.Select(PageSize, PageIndex, out totalcount, "TBL_SYS_USERS", "*", null, null, null); } #endregion #region 扩展业务方法 /// /// 修改密码 /// public bool ChangePwd(Model.TBL.TBL_SYS_USERS_Model user) { string sql = "update TBL_SYS_USERS set USERS_PWD =@USERS_PWD where USERS_UID =@USERS_UID"; MySqlParameter[] paras = { new MySqlParameter("@USERS_PWD",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50) }; paras[0].Value = user.USERS_PWD; paras[1].Value = user.USERS_UID; int i = FangYar.Common.MySqlHelper.ExecuteSql(sql, paras); ; if (i > 0) return true; else return false; } /// /// 用户登录 /// public Model.LoginUserModel UserLogin(string loginID, string loginPwd) { StringBuilder sbSql = new StringBuilder(); sbSql.Append(@"select e.id as emp_id,e.IS_UPD_ORG,e.IS_ADD_EMP,e.IS_SYNC_ICC,e.IS_SYNC_Dining,e.IS_CAMER_PARAM ,(select o.EXTENDCODE1 from fire_org o where org_id = t.ORG_ID) as ORG_TYPE ,e.IS_MANAGE_CADRE,e.ADMIN_LEVEL ,(SELECT count(1) from fire_org WHERE pid=t.ORG_ID and TYPE='0') SubOrgCount ,t.USERS_UID,t.USERS_NAME,t.USERS_STATE ,t.ORG_ID,e.EMP_MOBILE,t.IS_THIS,t.IS_SUPER,e.dept_id ,(select o.org_name from fire_org o where org_id = t.ORG_ID) as org_name ,(select o.CITY from fire_org o where org_id = e.org_id) as CityCode ,(select o.org_name from fire_org o where org_id = e.dept_id) as dept_name ,e.EMP_SEX,substr(e.IDNUMBER, 7, 8) as birthday ,if (find_in_set('b4ef39f204ac477e8ac86794224169ed',get_Org_Parent_list(t.ORG_ID))>0,'xj','xz') OrgCityType ,e.IS_ADMIN_DB IsAdmin,e.CID,e.OPENID ,(select o.pid from fire_org o where org_id = t.ORG_ID) as pid from TBL_SYS_USERS t left join TBL_SYS_EMP e on e.USERS_UID = t.USERS_UID "); //sbSql.Append("select t.*,h.org_name from tbl_sys_users t left join fire_org h on t.org_id=h.org_id "); sbSql.Append(" where t.USERS_UID=@USERS_UID and t.USERS_PWD=@USERS_PWD"); MySqlParameter[] paras = { new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_PWD",MySqlDbType.VarChar,50) }; paras[0].Value = loginID; paras[1].Value = loginPwd; FangYar.Model.LoginUserModel model = null; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sbSql.ToString(), paras); if (dt.Rows.Count > 0) { DataRow dr = dt.Rows[0]; model = new Model.LoginUserModel(); //DataRowToModel(user, dt.Rows[0]); //只取部分属性写入cookie(防止某些列特别长,例如description,导致cookie过长): model.EmpId = dr["EMP_ID"] + ""; model.IS_UPD_ORG = dr["IS_UPD_ORG"] + ""; model.IS_ADD_EMP = dr["IS_ADD_EMP"] + ""; model.IS_SYNC_ICC = dr["IS_SYNC_ICC"] + ""; model.IS_SYNC_Dining = dr["IS_SYNC_Dining"] + ""; model.IS_CAMER_PARAM = dr["IS_CAMER_PARAM"] + ""; model.IS_MANAGE_CADRE = dr["IS_MANAGE_CADRE"] + ""; model.AdminLevel = dr["ADMIN_LEVEL"] + ""; model.UserCode = dr["USERS_UID"] + ""; model.USERS_NAME = dr["USERS_NAME"] + ""; model.state = dr["USERS_STATE"] + ""; model.OrgID = dr["ORG_ID"] + ""; model.USERS_MOBILE = dr["EMP_MOBILE"] + ""; model.IS_THIS = dr["IS_THIS"] + ""; model.IS_SUPER = dr["IS_SUPER"] + ""; model.DeptID = dr["DEPT_ID"] + ""; model.OrgName = dr["ORG_NAME"] + ""; model.DeptName = dr["DEPT_NAME"] + ""; model.CityCode = dr["CityCode"] + ""; model.OrgCityType = dr["OrgCityType"] + ""; model.EmpSex = dr["EMP_SEX"] + ""; model.Birthday = dr["BIRTHDAY"] + ""; model.Cid = dr["CID"] + ""; model.OpenId = dr["OPENID"] + ""; model.Pid = dr["PID"] + ""; model.IsAdmin = dr["IsAdmin"] + ""; int.TryParse(dr["SubOrgCount"] + "", out int SubOrgCount); model.SubOrgCount = SubOrgCount; return model; } return model; } /// /// 用户登录 /// public Model.LoginUserModel UserLogin2(string loginID) { StringBuilder sbSql = new StringBuilder(); sbSql.Append(@"select e.id as emp_id,e.IS_UPD_ORG,e.IS_ADD_EMP,e.IS_SYNC_ICC,e.IS_SYNC_Dining,e.IS_CAMER_PARAM ,(select o.EXTENDCODE1 from fire_org o where org_id = t.ORG_ID) as ORG_TYPE ,e.IS_MANAGE_CADRE,e.ADMIN_LEVEL ,(SELECT count(1) from fire_org WHERE pid=t.ORG_ID and TYPE='0') SubOrgCount ,t.USERS_UID,t.USERS_NAME,t.USERS_STATE ,t.ORG_ID,e.EMP_MOBILE,t.IS_THIS,t.IS_SUPER,e.dept_id ,(select o.org_name from fire_org o where org_id = t.ORG_ID) as org_name ,(select o.CITY from fire_org o where org_id = e.org_id) as CityCode ,(select o.org_name from fire_org o where org_id = e.dept_id) as dept_name ,e.EMP_SEX,substr(e.IDNUMBER, 7, 8) as birthday ,if (find_in_set('b4ef39f204ac477e8ac86794224169ed',get_Org_Parent_list(t.ORG_ID))>0,'xj','xz') OrgCityType ,e.IS_ADMIN_DB IsAdmin,e.CID,e.OPENID ,(select o.pid from fire_org o where org_id = t.ORG_ID) as pid from TBL_SYS_USERS t left join TBL_SYS_EMP e on e.USERS_UID = t.USERS_UID "); //sbSql.Append("select t.*,h.org_name from tbl_sys_users t left join fire_org h on t.org_id=h.org_id "); sbSql.Append(" where t.USERS_UID=@USERS_UID "); MySqlParameter[] paras = { new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50) }; paras[0].Value = loginID; FangYar.Model.LoginUserModel model = null; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sbSql.ToString(), paras); if (dt.Rows.Count > 0) { DataRow dr = dt.Rows[0]; model = new Model.LoginUserModel(); //DataRowToModel(user, dt.Rows[0]); //只取部分属性写入cookie(防止某些列特别长,例如description,导致cookie过长): model.EmpId = dr["EMP_ID"] + ""; model.IS_UPD_ORG = dr["IS_UPD_ORG"] + ""; model.IS_ADD_EMP = dr["IS_ADD_EMP"] + ""; model.IS_SYNC_ICC = dr["IS_SYNC_ICC"] + ""; model.IS_SYNC_Dining = dr["IS_SYNC_Dining"] + ""; model.IS_CAMER_PARAM = dr["IS_CAMER_PARAM"] + ""; model.IS_MANAGE_CADRE = dr["IS_MANAGE_CADRE"] + ""; model.AdminLevel = dr["ADMIN_LEVEL"] + ""; model.UserCode = dr["USERS_UID"] + ""; model.USERS_NAME = dr["USERS_NAME"] + ""; model.state = dr["USERS_STATE"] + ""; model.OrgID = dr["ORG_ID"] + ""; model.USERS_MOBILE = dr["EMP_MOBILE"] + ""; model.IS_THIS = dr["IS_THIS"] + ""; model.IS_SUPER = dr["IS_SUPER"] + ""; model.DeptID = dr["DEPT_ID"] + ""; model.OrgName = dr["ORG_NAME"] + ""; model.DeptName = dr["DEPT_NAME"] + ""; model.CityCode = dr["CityCode"] + ""; model.OrgCityType = dr["OrgCityType"] + ""; model.EmpSex = dr["EMP_SEX"] + ""; model.Birthday = dr["BIRTHDAY"] + ""; model.Cid = dr["CID"] + ""; model.OpenId = dr["OPENID"] + ""; model.Pid = dr["PID"] + ""; model.IsAdmin = dr["IsAdmin"] + ""; int.TryParse(dr["SubOrgCount"] + "", out int SubOrgCount); model.SubOrgCount = SubOrgCount; return model; } return model; } /// /// 获取用户登录信息 /// public Model.LoginUserModel UserLoginByUID(string loginID) { StringBuilder sbSql = new StringBuilder(); sbSql.Append("select t.USERS_UID,t.USERS_NAME,t.USERS_STATE,t.ORG_ID,e.EMP_MOBILE,t.IS_THIS,t.IS_SUPER,e.dept_id,(select o.org_name from fire_org o where org_id = t.ORG_ID) as org_name,(select o.org_name from fire_org o where org_id = e.dept_id) as dept_name from TBL_SYS_USERS t left join TBL_SYS_EMP e on e.USERS_UID = t.USERS_UID "); //sbSql.Append("select t.*,h.org_name from tbl_sys_users t left join fire_org h on t.org_id=h.org_id "); sbSql.Append(" where t.USERS_UID=@USERS_UID "); MySqlParameter[] paras = { new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50) }; paras[0].Value = loginID; FangYar.Model.LoginUserModel model = null; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sbSql.ToString(), paras); if (dt.Rows.Count > 0) { DataRow dr = dt.Rows[0]; model = new Model.LoginUserModel(); //DataRowToModel(user, dt.Rows[0]); //只取部分属性写入cookie(防止某些列特别长,例如description,导致cookie过长): if (!DBNull.Value.Equals(dr["USERS_UID"])) model.UserCode = dr["USERS_UID"].ToString(); if (!DBNull.Value.Equals(dr["USERS_NAME"])) model.USERS_NAME = dr["USERS_NAME"].ToString(); if (!DBNull.Value.Equals(dr["USERS_STATE"])) model.state = dr["USERS_STATE"].ToString(); if (!DBNull.Value.Equals(dr["ORG_ID"])) model.OrgID = dr["ORG_ID"].ToString(); if (!DBNull.Value.Equals(dr["EMP_MOBILE"])) model.USERS_MOBILE = dr["EMP_MOBILE"].ToString(); if (!DBNull.Value.Equals(dr["IS_THIS"])) model.IS_THIS = dr["IS_THIS"].ToString(); if (!DBNull.Value.Equals(dr["IS_SUPER"])) model.IS_SUPER = dr["IS_SUPER"].ToString(); if (!DBNull.Value.Equals(dr["DEPT_ID"])) model.DeptID = dr["DEPT_ID"].ToString(); if (!DBNull.Value.Equals(dr["ORG_NAME"])) model.OrgName = dr["ORG_NAME"].ToString(); if (!DBNull.Value.Equals(dr["DEPT_NAME"])) model.DeptName = dr["DEPT_NAME"].ToString(); return model; } return model; } /// /// 根据用户ID判断用户是否可用 /// public Model.TBL.TBL_SYS_USERS_Model CheckLoginByUserID(string USERS_UID) { string sql = " select * from TBL_SYS_USERS where USERS_UID=@USERS_UID"; FangYar.Model.TBL.TBL_SYS_USERS_Model user = null; MySqlParameter[] paras = { new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50) }; paras[0].Value = USERS_UID; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras); if (dt.Rows.Count > 0) { user = new FangYar.Model.TBL.TBL_SYS_USERS_Model(); DataRowToModel(user, dt.Rows[0]); return user; } else { return null; } } /// /// 添加用户返回添加用户SQL以及参数(事务回滚) /// public FangYar.Model.OA.CommonSql getAddUsersSql(FangYar.Model.TBL.TBL_SYS_USERS_Model model) { StringBuilder strsql = new StringBuilder(); strsql.Append("insert into TBL_SYS_USERS (USERS_UID,USERS_PWD,USERS_NAME,USERS_WEEK,USERS_TIME,USERS_STATE,USERS_EMAIL,USERS_MOBILE,ORG_ID,EMP_ID,IS_THIS,IS_SUPER)"); strsql.Append("values"); strsql.Append("(@USERS_UID,@USERS_PWD,@USERS_NAME,@USERS_WEEK,@USERS_TIME,@USERS_STATE,@USERS_EMAIL,@USERS_MOBILE,@ORG_ID,@EMP_ID,@IS_THIS,@IS_SUPER)"); MySqlParameter[] paras ={ new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_PWD",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_NAME",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_WEEK",MySqlDbType.VarChar,13), new MySqlParameter("@USERS_TIME",MySqlDbType.VarChar), new MySqlParameter("@USERS_STATE",MySqlDbType.VarChar,1), new MySqlParameter("@USERS_EMAIL",MySqlDbType.VarChar,50), new MySqlParameter("@USERS_MOBILE",MySqlDbType.VarChar,50), new MySqlParameter("@ORG_ID",MySqlDbType.VarChar,36), new MySqlParameter("@EMP_ID",MySqlDbType.VarChar,36), new MySqlParameter("@IS_THIS",MySqlDbType.VarChar), new MySqlParameter("@IS_SUPER",MySqlDbType.VarChar) }; paras[0].Value = model.USERS_UID; paras[1].Value = model.USERS_PWD; paras[2].Value = model.USERS_NAME; paras[3].Value = model.USERS_WEEK; paras[4].Value = model.USERS_TIME; paras[5].Value = model.USERS_STATE; paras[6].Value = model.USERS_EMAIL; paras[7].Value = model.USERS_MOBILE; paras[8].Value = model.ORG_ID; paras[9].Value = model.EMP_ID; paras[10].Value = model.IS_THIS; paras[11].Value = model.IS_SUPER; FangYar.Model.OA.CommonSql comm = new FangYar.Model.OA.CommonSql(); comm.sql = strsql.ToString(); comm.param = paras; return comm; } #endregion /// 根据机构ID获取所有员工(包含子机构) public DataTable GetListTreeByOrgId(string orgId) { string sql = "select o.org_id as pid, u.users_uid,u.users_name,o.CHILDSLENGTH from tbl_sys_users u left join fire_org o on u.org_id = o.org_id where (o.type = 2 or o.org_id = '" + orgId + "') and o.org_id in ( select o1.org_id from fire_org o1,(select get_Org_child_list('" + orgId + "') cids ) s where find_in_set(o1.org_id,cids))order by o.sort desc "; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql); return dt; } /// 根据机构ID获取当前机构下员工(不包含下级部门员工) public List GetChilds(string orgId) { string sql = "select * from tbl_sys_users where org_id = '" + orgId + "'"; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql); return DataTableToList(dt); } /// 根据机构ID获取所有员工 public List GetListByOrgId(string orgId) { string sql = "select u.* from tbl_sys_users u where u.org_id in ( select o.org_id from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where (o.type = 2 or o.org_id = '" + orgId + "') and find_in_set(org_id,cids) ) "; DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql); return DataTableToList(dt); } /// /// 修改所属营区 /// public bool UpdateOrgId(string uid, string orgId) { string sql = "update TBL_SYS_USERS set ORG_ID = '" + orgId + "' where USERS_UID = '" + uid + "'"; try { int i = FangYar.Common.MySqlHelper.ExecuteSql(sql); if (i > 0) { return true; } else { return false; } } catch { return false; } } } }