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;
}
}
}
}