软测单独项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1902 lines
105 KiB

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using FangYar.Model.TBL;
using MySql.Data.MySqlClient;
namespace FangYar.OracleDAL.TBL
{
public class SysEmpDAL : FangYar.IDAL.TBL.SysEmpIDAL
{
#region 私有方法
/// <summary>
/// DataRow转model实体类对象
/// </summary>
/// <param name="dr"></param>
/// <returns></returns>
private FangYar.Model.TBL.TBL_SYS_EMP_Model DataRowToModel(DataRow dr)
{
FangYar.Model.TBL.TBL_SYS_EMP_Model model = new FangYar.Model.TBL.TBL_SYS_EMP_Model();
if (dr != null)
{
if (!DBNull.Value.Equals(dr["ID"]))
model.ID = dr["ID"].ToString();
if (!DBNull.Value.Equals(dr["USERS_UID"]))
model.USERS_UID = dr["USERS_UID"].ToString();
if (!DBNull.Value.Equals(dr["EMP_NAME"]))
model.EMP_NAME = dr["EMP_NAME"].ToString();
if (!DBNull.Value.Equals(dr["EMP_NUM"]))
model.EMP_NUM = dr["EMP_NUM"].ToString();
if (!DBNull.Value.Equals(dr["EMP_SEX"]))
model.EMP_SEX = dr["EMP_SEX"].ToString();
if (!DBNull.Value.Equals(dr["BLOOD_TYPE"]))
model.BLOOD_TYPE = dr["BLOOD_TYPE"].ToString();
if (!DBNull.Value.Equals(dr["ORG_ID"]))
model.ORG_ID = dr["ORG_ID"].ToString();
if (!DBNull.Value.Equals(dr["DEPT_ID"]))
model.DEPT_ID = dr["DEPT_ID"].ToString();
if (!DBNull.Value.Equals(dr["EMP_EMAIL"]))
model.EMP_EMAIL = dr["EMP_EMAIL"].ToString();
if (!DBNull.Value.Equals(dr["EMP_MOBILE"]))
model.EMP_MOBILE = dr["EMP_MOBILE"].ToString();
if (!DBNull.Value.Equals(dr["IDNUMBER"]))
model.IDNUMBER = dr["IDNUMBER"].ToString();
if (!DBNull.Value.Equals(dr["FIRE_PRO"]))
model.FIRE_PRO = dr["FIRE_PRO"].ToString();
if (!DBNull.Value.Equals(dr["CERT"]))
model.CERT = dr["CERT"].ToString();
if (!DBNull.Value.Equals(dr["NATION"]))
model.NATION = dr["NATION"].ToString();
if (!DBNull.Value.Equals(dr["FACE"]))
model.FACE = dr["FACE"].ToString();
if (!DBNull.Value.Equals(dr["MAR"]))
model.MAR = dr["MAR"].ToString();
if (!DBNull.Value.Equals(dr["IS_WORK"]))
model.IS_WORK = dr["IS_WORK"].ToString();
if (!DBNull.Value.Equals(dr["PROF"]))
model.PROF = dr["PROF"].ToString();
if (!DBNull.Value.Equals(dr["POL"]))
model.POL = dr["POL"].ToString();
if (dr.Table.Columns.Contains("POL_NAME"))
{
if (!DBNull.Value.Equals(dr["POL_NAME"]))
model.POL_NAME = dr["POL_NAME"].ToString();
}
if (!DBNull.Value.Equals(dr["IS_DEL"]))
model.IS_DEL = dr["IS_DEL"].ToString();
if (dr.Table.Columns.Contains("ORG_NAME"))
{
if (!DBNull.Value.Equals(dr["ORG_NAME"]))
model.ORG_NAME = dr["ORG_NAME"].ToString();
}
if (dr.Table.Columns.Contains("DEPT_NAME"))
{
if (!DBNull.Value.Equals(dr["DEPT_NAME"]))
model.DEPT_NAME = dr["DEPT_NAME"].ToString();
}
if (dr.Table.Columns.Contains("IS_WORK_NAME"))
{
if (!DBNull.Value.Equals(dr["IS_WORK_NAME"]))
model.IS_WORK_NAME = dr["IS_WORK_NAME"].ToString();
}
if (dr.Table.Columns.Contains("NATION_NAME"))
{
if (!DBNull.Value.Equals(dr["NATION_NAME"]))
model.NATION_NAME = dr["NATION_NAME"].ToString();
}
if (dr.Table.Columns.Contains("FACE_NAME"))
{
if (!DBNull.Value.Equals(dr["FACE_NAME"]))
model.FACE_NAME = dr["FACE_NAME"].ToString();
}
if (dr.Table.Columns.Contains("CERT_NAME"))
{
if (!DBNull.Value.Equals(dr["CERT_NAME"]))
model.CERT_NAME = dr["CERT_NAME"].ToString();
}
if (dr.Table.Columns.Contains("MAR_NAME"))
{
if (!DBNull.Value.Equals(dr["MAR_NAME"]))
model.MAR_NAME = dr["MAR_NAME"].ToString();
}
if (!DBNull.Value.Equals(dr["PHOTO"]))
model.PHOTO = dr["PHOTO"].ToString();
if (!DBNull.Value.Equals(dr["IS_LEADER"]))
model.IS_LEADER = dr["IS_LEADER"].ToString();
if (dr.Table.Columns.Contains("PROF_NAME"))
{
if (!DBNull.Value.Equals(dr["PROF_NAME"]))
model.PROF_NAME = dr["PROF_NAME"].ToString();
}
if (!DBNull.Value.Equals(dr["ENLISTED_TIME"]))
model.ENLISTED_TIME = dr["ENLISTED_TIME"].ToString();
if (!DBNull.Value.Equals(dr["IS_ACCESS"]))
model.IS_ACCESS = dr["IS_ACCESS"].ToString();
if (!DBNull.Value.Equals(dr["DURING_ACCESS_PERIOD"]))
model.DURING_ACCESS_PERIOD = dr["DURING_ACCESS_PERIOD"].ToString();
//驾驶员信息
if (!DBNull.Value.Equals(dr["ISDRIVER"]))
model.ISDRIVER = dr["ISDRIVER"].ToString();
if (!DBNull.Value.Equals(dr["FILENUM"]))
model.FILENUM = dr["FILENUM"].ToString();
if (!DBNull.Value.Equals(dr["PERMISSIONNUM"]))
model.PERMISSIONNUM = dr["PERMISSIONNUM"].ToString();
if (!DBNull.Value.Equals(dr["FIRSTCARD"]))
model.FIRSTCARD = dr["FIRSTCARD"].ToString();
if (!DBNull.Value.Equals(dr["EFFECTIVETIME"]))
model.EFFECTIVETIME = dr["EFFECTIVETIME"].ToString();
if (!DBNull.Value.Equals(dr["PERMITTEDORGAN"]))
model.PERMITTEDORGAN = dr["PERMITTEDORGAN"].ToString();
if (!DBNull.Value.Equals(dr["BIRTHDAY"]))
model.BIRTHDAY = dr["BIRTHDAY"].ToString();
if (!DBNull.Value.Equals(dr["FAMILYADDR"]))
model.FAMILYADDR = dr["FAMILYADDR"].ToString();
if (dr.Table.Columns.Contains("ALL_ANNUAL_LEAVE"))
{
if (dr["ALL_ANNUAL_LEAVE"] != null && dr["ALL_ANNUAL_LEAVE"].ToString() != "")
{
model.ALL_ANNUAL_LEAVE = decimal.Parse(dr["ALL_ANNUAL_LEAVE"].ToString());
}
}
if (dr.Table.Columns.Contains("AVAILABLE_ANNUAL_LEAVE"))
{
if (dr["AVAILABLE_ANNUAL_LEAVE"] != null && dr["AVAILABLE_ANNUAL_LEAVE"].ToString() != "")
{
model.AVAILABLE_ANNUAL_LEAVE = decimal.Parse(dr["AVAILABLE_ANNUAL_LEAVE"].ToString());
}
}
if (dr.Table.Columns.Contains("CID"))
{
if (dr["CID"] != null)
{
model.CID = dr["CID"].ToString();
}
}
if (!DBNull.Value.Equals(dr["TAGS"]))
model.TAGS = dr["TAGS"].ToString();
if (!DBNull.Value.Equals(dr["POSTS"]))
model.POSTS = dr["POSTS"].ToString();
model.IS_ADMIN = dr["IS_ADMIN"] + "";
if (!DBNull.Value.Equals(dr["DURING_ACCESS_PERIOD2"]))
model.DURING_ACCESS_PERIOD2 = dr["DURING_ACCESS_PERIOD2"].ToString();
if (dr.Table.Columns.Contains("ACCESSALLOWEDMODE"))
{
if (dr["ACCESSALLOWEDMODE"] != null && dr["ACCESSALLOWEDMODE"].ToString() != "")
{
model.ACCESSALLOWEDMODE = int.Parse(dr["ACCESSALLOWEDMODE"].ToString());
}
}
if (dr.Table.Columns.Contains("OPENID"))
{
if (dr["OPENID"] != null)
{
model.OPENID = dr["OPENID"].ToString();
}
}
if (dr.Table.Columns.Contains("IS_SUBCAMPVIDEO"))
{
if (dr["IS_SUBCAMPVIDEO"] != null)
{
model.IS_SUBCAMPVIDEO = dr["IS_SUBCAMPVIDEO"].ToString();
}
}
}
return model;
}
/// <summary>
/// 把DataTable行转成实体类List集合
/// </summary>
private List<FangYar.Model.TBL.TBL_SYS_EMP_Model> DataTableToList(DataTable dt)
{
List<FangYar.Model.TBL.TBL_SYS_EMP_Model> emplist = new List<FangYar.Model.TBL.TBL_SYS_EMP_Model>();
if (dt.Rows.Count > 0)
{
foreach (DataRow myRow in dt.Rows)
{
emplist.Add(DataRowToModel(myRow));
}
}
return emplist;
}
#endregion 私有方法
#region 基本方法
/// <summary>
/// 根据ID获取model
/// </summary>
public FangYar.Model.TBL.TBL_SYS_EMP_Model GetModelByID(string ID)
{
Model.TBL.TBL_SYS_EMP_Model model = null;
string sql = "select * from TBL_SYS_EMP where ID=@ID";
MySqlParameter[] paras ={
new MySqlParameter("@ID",MySqlDbType.VarChar,36)
};
paras[0].Value = ID;
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras);
if (dt.Rows.Count > 0)
{
model = DataRowToModel2(dt.Rows[0]);
return model;
}
else
{
return null;
}
}
/// <summary>
/// 根据ID获取model
/// </summary>
public FangYar.Model.TBL.TBL_SYS_EMP_Model GetModelByUID(string USERS_UID)
{
Model.TBL.TBL_SYS_EMP_Model model = null;
string sql = "select e.*,(select o.org_name from fire_org o where o.org_id = e.org_id) org_name,(select o.org_name from fire_org o where o.org_id = e.dept_id) dept_name from TBL_SYS_EMP e where e.IS_ADMIN='0' and e.USERS_UID=@USERS_UID";
MySqlParameter[] paras ={
new MySqlParameter("@USERS_UID",MySqlDbType.VarChar,36)
};
paras[0].Value = USERS_UID;
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras);
if (dt.Rows.Count > 0)
{
model = DataRowToModel2(dt.Rows[0]);
return model;
}
else
{
return null;
}
}
/// <summary>
/// 根据username获取model
/// </summary>
public FangYar.Model.TBL.TBL_SYS_EMP_Model GetModelByName(string orgid, string username)
{
Model.TBL.TBL_SYS_EMP_Model model = null;
string sql = "select * from TBL_SYS_EMP where EMP_NAME=@EMP_NAME and ORG_ID=@ORG_ID";
MySqlParameter[] paras ={
new MySqlParameter("@EMP_NAME",MySqlDbType.VarChar,100),
new MySqlParameter("@ORG_ID",MySqlDbType.VarChar,36)
};
paras[0].Value = username;
paras[1].Value = orgid;
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras);
if (dt.Rows.Count > 0)
{
model = DataRowToModel2(dt.Rows[0]);
return model;
}
else
{
return null;
}
}
/// <summary>
/// 添加菜单
/// </summary>
public bool Add(FangYar.Model.TBL.TBL_SYS_EMP_Model model)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("insert into TBL_SYS_EMP (ID,USERS_UID,EMP_NAME,EMP_NUM,EMP_SEX,ORG_ID,DEPT_ID,EMP_EMAIL,EMP_MOBILE,IS_DEL,PHOTO)");
strsql.Append("values");
strsql.Append("(@ID,@USERS_UID,@EMP_NAME,@EMP_NUM,@EMP_SEX,@ORG_ID,@DEPT_ID,@EMP_EMAIL,@EMP_MOBILE,@IS_DEL,@PHOTO)");
MySqlParameter[] paras ={
new MySqlParameter("@ID",Guid.NewGuid().ToString("N")),
new MySqlParameter("@USERS_UID",model.USERS_UID),
new MySqlParameter("@EMP_NAME",model.EMP_NAME),
new MySqlParameter("@EMP_NUM",model.EMP_NUM),
new MySqlParameter("@EMP_SEX",model.EMP_SEX),
new MySqlParameter("@ORG_ID",model.ORG_ID),
new MySqlParameter("@DEPT_ID",model.DEPT_ID),
new MySqlParameter("@EMP_EMAIL",model.EMP_EMAIL),
new MySqlParameter("@EMP_MOBILE",model.EMP_MOBILE),
new MySqlParameter("@IS_DEL",model.IS_DEL),
new MySqlParameter("@PHOTO",model.PHOTO),
};
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 删除
/// </summary>
public bool Delete(string IDList)
{
string sql = "delete from TBL_SYS_EMP where ID in('" + IDList + "')";
try
{
FangYar.Common.MySqlHelper.ExecuteSql(sql);
return true;
}
catch
{
return false;
}
}
/// <summary>
/// 编辑
/// </summary>
public bool Edit(FangYar.Model.TBL.TBL_SYS_EMP_Model model)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("update TBL_SYS_EMP set ");
strsql.Append("USERS_UID=@USERS_UID,");
strsql.Append("EMP_NAME=@EMP_NAME,");
strsql.Append("EMP_NUM=@EMP_NUM,");
strsql.Append("EMP_SEX=@EMP_SEX,");
strsql.Append("ORG_ID=@ORG_ID,");
strsql.Append("DEPT_ID=@DEPT_ID,");
strsql.Append("EMP_EMAIL=@EMP_EMAIL,");
strsql.Append("EMP_MOBILE=@EMP_MOBILE,");
strsql.Append("IS_DEL=@IS_DEL, ");
strsql.Append("PHOTO=@PHOTO ");
strsql.Append(" where ID=@ID");
MySqlParameter[] paras ={
new MySqlParameter("@USERS_UID",model.USERS_UID),
new MySqlParameter("@EMP_NAME",model.EMP_NAME),
new MySqlParameter("@EMP_NUM",model.EMP_NUM),
new MySqlParameter("@EMP_SEX",model.EMP_SEX),
new MySqlParameter("@ORG_ID",model.ORG_ID),
new MySqlParameter("@DEPT_ID",model.DEPT_ID),
new MySqlParameter("@EMP_EMAIL",model.EMP_EMAIL),
new MySqlParameter("@EMP_MOBILE",model.EMP_MOBILE),
new MySqlParameter("@IS_DEL",model.IS_DEL),
new MySqlParameter("@PHOTO",model.PHOTO),
new MySqlParameter("@ID",model.ID)
};
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0) { return true; }
else { return false; }
}
public bool UPDPOLByID(string POL, string ID)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("update TBL_SYS_EMP set ");
strsql.Append("POL=@POL ");
strsql.Append(" where ID=@ID");
MySqlParameter[] paras = { new MySqlParameter("@POL", POL), new MySqlParameter("@ID", ID), };
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0) { return true; }
else { return false; }
}
#endregion
#region 2019_05_27 swr 新增方法
/// <summary>
/// Tree列表展示(机构-部门)
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public DataTable getOrgTree(string orgId)
{
//机构-部门
//string sql = "select o.id id,o.org_name name , '0' pid ,'org' type from tbl_sys_org o where o.id = '" + orgId + "' " +
// "union select d.id id,d.dept_name name ,d.org_id pid ,'dept' type from tbl_sys_dept d where d.org_id = '" + orgId + "' ";
//消防机构-消防队站
//string sql = "select o.org_id id,o.org_name name , o.pid pid, 'org' type from fire_org o where o.org_id = '" + orgId + "' or o.pid = '" + orgId + "'" +
// "union select s.sta_id id,s.sta_name name,s.org_id pid ,'dept' type from fire_station s where s.org_id in ( select o.org_id id from fire_org o where o.pid = '" + orgId + "') ";
//消防机构
string sql = "select o.org_id id,o.org_name name , o.pid pid, 'org' type from fire_org o where o.org_id = '" + orgId + "' or o.pid = '" + orgId + "'";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// Tree列表展示(机构-部门-员工)
/// (包含父级机构下属消防站)
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public DataTable getOrgTree2(string orgId)
{
//消防机构-消防队站
string sql = "select o.org_id id,o.org_name name , o.pid pid, 'org' type from fire_org o where o.org_id = '" + orgId + "' or o.pid = '" + orgId + "'" +
"union select s.sta_id id,s.sta_name name,s.org_id pid ,'dept' type from fire_station s where s.org_id in ( select o.org_id id from fire_org o where o.org_id = '" + orgId + "' or o.pid = '" + orgId + "') ORDER BY o.EXTENDCODE4 ";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// Tree列表展示(机构-部门-员工)
/// (包含所在机构下部门)
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public DataTable getOrgDeptTree(string orgId)
{
////消防机构-消防部门
//string sql = "select o.org_id id,o.org_name name , o.pid pid, 'org' type from fire_org o where o.org_id = '" + orgId + "' or o.pid = '" + orgId + "'" +
// "union select d.id id,d.name name,d.org_id pid ,'dept' type from fire_dept d where d.org_id in ( select o.org_id id from fire_org o where o.org_id = '" + orgId + "' or o.pid = '" + orgId + "') and (is_del <> '1' or is_del is null)";
//return FangYar.Common.MySqlHelper.QueryTable(sql);
//消防机构-消防部门
string sql = "select o.org_id as ID,o.org_name as NAME,o.PID, case o.type when 1 then 'dept' else 'org' end as TYPE from fire_org o ,(select get_Org_child_list('" + orgId + "') cids) s where find_in_set(o.org_id,cids) order by sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// Tree列表展示(机构-部门-员工)
/// (下属机构树+当前机构部门树)
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public DataTable getOrgAndDeptTree(string orgId)
{
//消防机构-消防部门(递归)
string sql = "select o.org_id ID, o.org_name NAME, o.pid PID, case o.type when 0 then 'org' when 1 then 'dept' else o.type end as TYPE,o.sort SORT from fire_org o ,(select get_Org_child_list('" + orgId + "') cids) s where find_in_set(ORG_ID, cids) order by EXTENDCODE4 , sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// Tree列表展示,只获取单位
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public DataTable getOrgOnlyTree(string orgId)
{
//消防机构
string sql = "select o.org_id id, o.org_name name, o.pid pid, case o.type when 0 then 'org' when 1 then 'dept' else o.type end as type,o.sort sort from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where o.TYPE=0 and find_in_set(o.org_id,cids) order by EXTENDCODE4, sort desc,type ";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
//机构及所有下属机构(包含行政区划编码)
public DataTable getOrgCityOnlyTree(string orgId)
{
string sql = "select o.org_id id, o.org_name name, o.CITY cityCode, o.pid pid, case o.type when 0 then 'org' when 1 then 'dept' else o.type end as type,o.sort sort from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where o.TYPE=0 and find_in_set(o.org_id,cids) order by EXTENDCODE4, sort desc,type ";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// 机构部门人员树
/// (下属机构树+当前机构部门树+机构部门下人员树)
/// </summary>
/// <param name="orgId">机构ID</param>
public DataTable getOrgAndDeptAndEmpTree(string orgId)
{
StringBuilder sqlStr = new StringBuilder();
sqlStr.Append("select e.USERS_UID , e.id id,e.emp_name name,IF((ISNULL(e.dept_id) > 0 or LENGTH(trim(e.dept_id))=0),e.org_id,e.dept_id) pid,'emp' type,e.emp_num sort ");
sqlStr.Append("from tbl_sys_emp e,(select get_Org_child_list('" + orgId + "') cids ) s");
sqlStr.Append(" where is_del = '0' and find_in_set(e.org_id,cids) ");
sqlStr.Append("union all ");
sqlStr.Append("select '' USERS_UID, o.org_id id,o.org_name name,o.pid,'org' type,o.sort sort from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s ");
sqlStr.Append(" where find_in_set(o.org_id,cids) ");
sqlStr.Append("order by sort asc,type ");
return FangYar.Common.MySqlHelper.QueryTable(sqlStr.ToString());
}
/// <summary>
/// 获取记录总数
/// </summary>
public int GetRecordCount(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select count(1) FROM TBL_SYS_EMP ");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
object obj = FangYar.Common.MySqlHelper.GetSingle(strSql.ToString());
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 获取记录总数
/// </summary>
public int GetRecordCount(string strWhere, string pOrgID)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select count(1) FROM TBL_SYS_EMP,(select get_Org_child_list('" + pOrgID + "') cids) s ");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
object obj = FangYar.Common.MySqlHelper.GetSingle(strSql.ToString());
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
//获取人员
public DataTable GetTable(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select * FROM TBL_SYS_EMP where IS_ADMIN='0' ");
if (strWhere.Trim() != "")
{
strSql.Append(" and " + strWhere);
}
return FangYar.Common.MySqlHelper.QueryTable(strSql.ToString());
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public List<TBL_SYS_EMP_Model> QueryEmp(int PageIndex, int PageSize, string strwhere, string order)
{
return DataTableToList(QueryEmpPage(PageIndex, PageSize, strwhere, order));
}
public List<TBL_SYS_EMP_Model> QueryList(int PageIndex, int PageSize, string strwhere, string order)
{
return DataTableToList(QueryPage(PageIndex, PageSize, strwhere, order));
}
public List<TBL_SYS_EMP_Model> QueryList(int PageIndex, int PageSize, string strwhere, string order, string orgId)
{
return DataTableToList(QueryPage(PageIndex, PageSize, strwhere, order, orgId));
}
public List<TBL_SYS_EMP_Model> QueryListByOrgIdOrDeptId(string param)
{
return DataTableToList(QueryTableByOrgIdOrDeptId(param));
}
public DataTable QueryTableByOrgIdOrDeptId(string param)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select *from TBL_SYS_EMP where IS_ADMIN='0' and IS_DEL='0' ");
if (!String.IsNullOrWhiteSpace(param))
{
strSql.Append(string.Format(" and (org_id='{0}' or dept_id='{1}')", param, param));
}
return Common.MySqlHelper.QueryTable(strSql.ToString());
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public DataTable QueryEmpPage(int PageIndex, int PageSize, string strwhere, string order)
{
int startnum = (PageIndex - 1) * PageSize;
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT t.*, ");
strSql.Append(" (select o.org_name from fire_org o where o.org_id = t.org_id ) org_name , ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'NATIONTYPE' and dic_value = t.NATION ) NATION_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'FACETYPE' and dic_value = t.FACE ) FACE_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'CERTTYPE' and dic_value = t.CERT ) CERT_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'MARTYPE' and dic_value = t.MAR ) MAR_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'PROFTYPE' and dic_value = t.prof ) prof_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'POLTYPE' and dic_value = t.pol ) pol_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'IS_WORKTYPE' and dic_value = t.is_work ) is_work_name, ");
strSql.Append(" t.is_leader sort ");
strSql.Append(" ");
strSql.Append(" FROM TBL_SYS_EMP t where ");
if (strwhere != null && strwhere != "")
{
strSql.Append(strwhere);
}
//if (order != null && order != "")
//{
//strSql.Append(" ORDER BY " + order);
//}
strSql.Append(" limit " + startnum + ", " + PageSize);
return Common.MySqlHelper.QueryTable(strSql.ToString());
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public DataTable QueryPage(int PageIndex, int PageSize, string strwhere, string order)
{
int startnum = (PageIndex - 1) * PageSize;
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT t.*, ");
strSql.Append(" (select o.org_name from fire_org o where o.org_id = t.org_id ) org_name , ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'NATIONTYPE' and dic_value = t.NATION ) NATION_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'FACETYPE' and dic_value = t.FACE ) FACE_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'CERTTYPE' and dic_value = t.CERT ) CERT_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'MARTYPE' and dic_value = t.MAR ) MAR_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'PROFTYPE' and dic_value = t.prof ) prof_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'POLTYPE' and dic_value = t.pol ) pol_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'IS_WORKTYPE' and dic_value = t.is_work ) is_work_name, ");
strSql.Append(" t.is_leader sort ");
strSql.Append(" ");
strSql.Append(" FROM TBL_SYS_EMP t where IS_ADMIN='0' ");
if (strwhere != null && strwhere != "")
{
strSql.Append(" and " + strwhere);
}
//if (order != null && order != "")
//{
//strSql.Append(" ORDER BY " + order);
//}
strSql.Append(" limit " + startnum + ", " + PageSize);
return Common.MySqlHelper.QueryTable(strSql.ToString());
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public DataTable QueryPage(int PageIndex, int PageSize, string strwhere, string order, string orgId)
{
int startnum = (PageIndex - 1) * PageSize;
StringBuilder strSql = new StringBuilder();
strSql.Append(" SELECT t.*, ");
strSql.Append(" (select o.org_name from fire_org o where o.org_id = t.org_id ) org_name , ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'NATIONTYPE' and dic_value = t.NATION ) NATION_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'FACETYPE' and dic_value = t.FACE ) FACE_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'CERTTYPE' and dic_value = t.CERT ) CERT_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'MARTYPE' and dic_value = t.MAR ) MAR_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'PROFTYPE' and dic_value = t.prof ) prof_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'POLTYPE' and dic_value = t.pol ) pol_name, ");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'IS_WORKTYPE' and dic_value = t.is_work ) is_work_name, ");
strSql.Append(" t.is_leader sort ");
strSql.Append(" FROM TBL_SYS_EMP t ,(select get_Org_child_list('" + orgId + "') cids) s where 1=1 ");
if (strwhere != null && strwhere != "")
{
strSql.Append(" and " + strwhere);
}
if (order != null && order != "")
{
strSql.Append(" ORDER BY " + order);
}
strSql.Append(" limit " + startnum + ", " + PageSize);
return Common.MySqlHelper.QueryTable(strSql.ToString());
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public DataTable expExcel(int PageIndex, int PageSize, string strwhere, string order)
{
int startnum = (PageIndex - 1) * PageSize;
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT EMP_NAME,EMP_NUM,EMP_SEX,ORG_NAME,DEPT_NAME,EMP_EMAIL,EMP_MOBILE,IDNUMBER,POL_NAME,prof_name,CERT_NAME,NATION_NAME,FACE_NAME,MAR_NAME,is_work_name,ENLISTED_TIME,case IS_ACCESS when '0' then '允许' when '1' then '禁止' end as IS_ACCESS, DURING_ACCESS_PERIOD ");
strSql.Append(" FROM ( ");
strSql.Append(" SELECT t.*,(select o.org_name from fire_org o where o.org_id = t.org_id) org_name,(select o.org_name from fire_org o where o.org_id = t.dept_id) dept_name,");
strSql.Append("(select dic_text from tbl_sys_dicdetail where mod_code = 'POLTYPE' and dic_value = t.POL) POL_NAME,");
strSql.Append("(select dic_text from tbl_sys_dicdetail where mod_code = 'CERTTYPE' and dic_value = t.CERT) CERT_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'NATIONTYPE' and dic_value = t.NATION) NATION_NAME, (select dic_text from tbl_sys_dicdetail where mod_code = 'FACETYPE' and dic_value = t.FACE) FACE_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'MARTYPE' and dic_value = t.MAR) MAR_NAME, (select dic_text from tbl_sys_dicdetail where mod_code = 'IS_WORKTYPE' and dic_value = t.is_work) is_work_name,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'PROFTYPE' and dic_value = t.prof) prof_name, t.is_leader sort FROM TBL_SYS_EMP t where IS_ADMIN='0'");
if (strwhere != null && strwhere != "")
{
strSql.Append(" and " + strwhere);
}
if (order != null && order != "")
{
strSql.Append(" ORDER BY " + order);
}
strSql.Append(" limit " + startnum + ", " + PageSize);
return FangYar.Common.MySqlHelper.QueryTable(strSql.ToString());
}
/// <summary>
/// 分页无排序
/// </summary>
/// <param name="PageIndex">页面索引</param>
/// <param name="PageSize">页面大小</param>
/// <param name="strwhere">查询条件</param>
/// <returns></returns>
public DataTable expExcel(int PageIndex, int PageSize, string strwhere, string order, string pOrgID)
{
int startnum = (PageIndex - 1) * PageSize;
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT EMP_NAME,EMP_NUM,EMP_SEX,ORG_NAME,DEPT_NAME,EMP_EMAIL,EMP_MOBILE,IDNUMBER,POL_NAME,PROF_NAME,CERT_NAME,NATION_NAME,FACE_NAME,IS_WORK_NAME,ENLISTED_TIME,if(IS_ACCESS='0','允许','禁止') IS_ACCESS, DURING_ACCESS_PERIOD,BLOOD_TYPE,FAMILYADDR,TAGS "); //,ISDRIVER,FILENUM,PERMISSIONNUM,FIRSTCARD,EFFECTIVETIME,PERMITTEDORGAN,BIRTHDAY,FAMILYADDR
strSql.Append(" FROM ( ");
strSql.Append(" SELECT t.*,cids,(select o.org_name from fire_org o where o.org_id = t.org_id) org_name,(select o.org_name from fire_org o where o.org_id = t.dept_id) dept_name,");
strSql.Append("(select dic_text from tbl_sys_dicdetail where mod_code = 'POLTYPE' and dic_value = t.POL) POL_NAME,");
strSql.Append("(select dic_text from tbl_sys_dicdetail where mod_code = 'CERTTYPE' and dic_value = t.CERT) CERT_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'NATIONTYPE' and dic_value = t.NATION) NATION_NAME, (select dic_text from tbl_sys_dicdetail where mod_code = 'FACETYPE' and dic_value = t.FACE) FACE_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'IS_WORKTYPE' and dic_value = t.is_work) is_work_name,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'PROFTYPE' and dic_value = t.prof) prof_name, t.is_leader sort FROM TBL_SYS_EMP t ,(select get_Org_child_list('" + pOrgID + "') cids) s ) ss where IS_ADMIN='0' ");
if (strwhere != null && strwhere != "")
{
strSql.Append(" and " + strwhere);
}
if (order != null && order != "")
{
strSql.Append(" ORDER BY " + order);
}
strSql.Append(" limit " + startnum + ", " + PageSize);
return FangYar.Common.MySqlHelper.QueryTable(strSql.ToString());
}
/// <summary>
/// 获取可以绑定的登录账号
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public DataTable getUseruId(string orgId, string usersUid)
{
string sql = "select u.users_uid ,u.users_name from tbl_sys_users u where users_uid not in (select e.users_uid from tbl_sys_emp e where e.IS_ADMIN='0' and e.org_id = '" + orgId + "' and users_uid <> '" + usersUid + "' and e.users_uid is not null ) and u.org_id = '" + orgId + "' ";
if (usersUid == null || usersUid == "" || usersUid == "null" || usersUid == "undefined")
{
sql = "select u.users_uid ,u.users_name from tbl_sys_users u where users_uid not in (select e.users_uid from tbl_sys_emp e where e.IS_ADMIN='0' and e.org_id = '" + orgId + "' and e.users_uid is not null ) and u.org_id = '" + orgId + "' ";
}
//消防机构-消防队站
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// 添加人员
/// </summary>
public bool AddEmp(FangYar.Model.TBL.TBL_SYS_EMP_Model model)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("insert into TBL_SYS_EMP (USERS_UID,EMP_NAME,EMP_NUM,EMP_SEX,ORG_ID,DEPT_ID,EMP_EMAIL,EMP_MOBILE,IDNUMBER,FIRE_PRO,CERT,NATION,FACE,MAR,IS_WORK,PROF,POL,IS_DEL,PHOTO,IS_LEADER,ENLISTED_TIME,IS_ACCESS,IS_SUBCAMPVIDEO,DURING_ACCESS_PERIOD,ISDRIVER,FILENUM,PERMISSIONNUM,FIRSTCARD,EFFECTIVETIME,PERMITTEDORGAN,BIRTHDAY,FAMILYADDR,ALL_ANNUAL_LEAVE,AVAILABLE_ANNUAL_LEAVE,TAGS,POSTS,ID,IS_ADMIN,DURING_ACCESS_PERIOD2,ACCESSALLOWEDMODE,BLOOD_TYPE)");
strsql.Append("values");
strsql.Append("(@USERS_UID,@EMP_NAME,@EMP_NUM,@EMP_SEX,@ORG_ID,@DEPT_ID,@EMP_EMAIL,@EMP_MOBILE,@IDNUMBER,@FIRE_PRO,@CERT,@NATION,@FACE,@MAR,@IS_WORK,@PROF,@POL,@IS_DEL,@PHOTO,@IS_LEADER,@ENLISTED_TIME,@IS_ACCESS,@IS_SUBCAMPVIDEO,@DURING_ACCESS_PERIOD,@ISDRIVER,@FILENUM,@PERMISSIONNUM,@FIRSTCARD,@EFFECTIVETIME,@PERMITTEDORGAN,@BIRTHDAY,@FAMILYADDR,@ALL_ANNUAL_LEAVE,@AVAILABLE_ANNUAL_LEAVE,@TAGS,@POSTS,@ID,@IS_ADMIN,@DURING_ACCESS_PERIOD2,@ACCESSALLOWEDMODE,@BLOOD_TYPE)");
MySqlParameter[] paras ={
new MySqlParameter("@USERS_UID",model.USERS_UID),
new MySqlParameter("@EMP_NAME",model.EMP_NAME),
new MySqlParameter("@EMP_NUM",model.EMP_NUM),
new MySqlParameter("@EMP_SEX",model.EMP_SEX),
new MySqlParameter("@ORG_ID", model.ORG_ID),
new MySqlParameter("@DEPT_ID", model.DEPT_ID),
new MySqlParameter("@EMP_EMAIL", model.EMP_EMAIL),
new MySqlParameter("@EMP_MOBILE",model.EMP_MOBILE),
new MySqlParameter("@IDNUMBER",model.IDNUMBER),
new MySqlParameter("@FIRE_PRO",model.FIRE_PRO),
new MySqlParameter("@CERT",model.CERT),
new MySqlParameter("@NATION", model.NATION),
new MySqlParameter("@FACE", model.FACE),
new MySqlParameter("@MAR",model.MAR),
new MySqlParameter("@IS_WORK", model.IS_WORK),
new MySqlParameter("@PROF",model.PROF),
new MySqlParameter("@POL", model.POL),
new MySqlParameter("@IS_DEL",model.IS_DEL),
new MySqlParameter("@PHOTO",model.PHOTO),
new MySqlParameter("@IS_LEADER",model.IS_LEADER),
new MySqlParameter("@ENLISTED_TIME",model.ENLISTED_TIME),
new MySqlParameter("@IS_ACCESS",model.IS_ACCESS),
new MySqlParameter("@IS_SUBCAMPVIDEO",model.IS_SUBCAMPVIDEO),
new MySqlParameter("@DURING_ACCESS_PERIOD",model.DURING_ACCESS_PERIOD),
new MySqlParameter("@ISDRIVER",model.ISDRIVER),
new MySqlParameter("@FILENUM",model.FILENUM),
new MySqlParameter("@PERMISSIONNUM", model.PERMISSIONNUM),
new MySqlParameter("@FIRSTCARD",model.FIRSTCARD),
new MySqlParameter("@EFFECTIVETIME",model.EFFECTIVETIME),
new MySqlParameter("@PERMITTEDORGAN",model.PERMITTEDORGAN),
new MySqlParameter("@BIRTHDAY",model.BIRTHDAY),
new MySqlParameter("@FAMILYADDR",model.FAMILYADDR),
new MySqlParameter("@ALL_ANNUAL_LEAVE",model.ALL_ANNUAL_LEAVE),
new MySqlParameter("@AVAILABLE_ANNUAL_LEAVE", model.AVAILABLE_ANNUAL_LEAVE),
new MySqlParameter("@TAGS",model.TAGS),
new MySqlParameter("@POSTS", model.POSTS),
new MySqlParameter("@ID",Guid.NewGuid().ToString("N")),
new MySqlParameter("@IS_ADMIN",model.IS_ADMIN),
new MySqlParameter("@DURING_ACCESS_PERIOD2",model.DURING_ACCESS_PERIOD2),
new MySqlParameter("@ACCESSALLOWEDMODE",model.ACCESSALLOWEDMODE),
new MySqlParameter("@BLOOD_TYPE",model.BLOOD_TYPE),
};
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 修改人员信息
/// </summary>
public bool EditEmp(FangYar.Model.TBL.TBL_SYS_EMP_Model model)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("update TBL_SYS_EMP set ");
strsql.Append("USERS_UID=@USERS_UID,");
strsql.Append("EMP_NAME=@EMP_NAME,");
strsql.Append("EMP_NUM=@EMP_NUM,");
strsql.Append("EMP_SEX=@EMP_SEX,");
strsql.Append("BLOOD_TYPE=@BLOOD_TYPE,");
strsql.Append("ORG_ID=@ORG_ID,");
strsql.Append("DEPT_ID=@DEPT_ID,");
strsql.Append("EMP_EMAIL=@EMP_EMAIL,");
strsql.Append("EMP_MOBILE=@EMP_MOBILE,");
strsql.Append("IDNUMBER=@IDNUMBER,");
strsql.Append("FIRE_PRO=@FIRE_PRO,");
strsql.Append("CERT=@CERT,");
strsql.Append("NATION=@NATION,");
strsql.Append("FACE=@FACE,");
strsql.Append("MAR=@MAR,");
strsql.Append("IS_WORK=@IS_WORK,");
strsql.Append("PROF=@PROF,");
strsql.Append("POL=@POL,");
strsql.Append("IS_DEL=@IS_DEL,");
strsql.Append("PHOTO=@PHOTO,");
strsql.Append("IS_LEADER=@IS_LEADER,");
strsql.Append("ENLISTED_TIME=@ENLISTED_TIME, ");
strsql.Append("IS_ACCESS=@IS_ACCESS, ");
strsql.Append("DURING_ACCESS_PERIOD=@DURING_ACCESS_PERIOD, ");
strsql.Append("ISDRIVER=@ISDRIVER, ");
strsql.Append("FILENUM=@FILENUM, ");
strsql.Append("PERMISSIONNUM=@PERMISSIONNUM ,");
strsql.Append("FIRSTCARD=@FIRSTCARD, ");
strsql.Append("EFFECTIVETIME=@EFFECTIVETIME ,");
strsql.Append("PERMITTEDORGAN=@PERMITTEDORGAN ,");
strsql.Append("IS_SUBCAMPVIDEO=@IS_SUBCAMPVIDEO ,");
strsql.Append("BIRTHDAY=@BIRTHDAY ,");
strsql.Append("FAMILYADDR=@FAMILYADDR , ");
strsql.Append("ALL_ANNUAL_LEAVE=@ALL_ANNUAL_LEAVE, ");
strsql.Append("AVAILABLE_ANNUAL_LEAVE=@AVAILABLE_ANNUAL_LEAVE, ");
strsql.Append("TAGS=@TAGS,");
strsql.Append("IS_ADMIN=@IS_ADMIN,");
strsql.Append("POSTS=@POSTS, ");
strsql.Append("DURING_ACCESS_PERIOD2=@DURING_ACCESS_PERIOD2, ");
strsql.Append("ACCESSALLOWEDMODE=@ACCESSALLOWEDMODE ");
strsql.Append(" where ID=@ID");
MySqlParameter[] paras ={
new MySqlParameter("@USERS_UID",model.USERS_UID),
new MySqlParameter("@EMP_NAME",model.EMP_NAME),
new MySqlParameter("@EMP_NUM",model.EMP_NUM),
new MySqlParameter("@EMP_SEX",model.EMP_SEX),
new MySqlParameter("@BLOOD_TYPE",model.BLOOD_TYPE),
new MySqlParameter("@ORG_ID",model.ORG_ID),
new MySqlParameter("@DEPT_ID",model.DEPT_ID),
new MySqlParameter("@EMP_EMAIL",model.EMP_EMAIL),
new MySqlParameter("@EMP_MOBILE",model.EMP_MOBILE),
new MySqlParameter("@IDNUMBER",model.IDNUMBER),
new MySqlParameter("@FIRE_PRO",model.FIRE_PRO),
new MySqlParameter("@CERT",model.CERT),
new MySqlParameter("@NATION",model.NATION),
new MySqlParameter("@FACE",model.FACE),
new MySqlParameter("@MAR",model.MAR),
new MySqlParameter("@IS_WORK",model.IS_WORK),
new MySqlParameter("@PROF",model.PROF),
new MySqlParameter("@POL",model.POL),
new MySqlParameter("@IS_DEL",model.IS_DEL),
new MySqlParameter("@PHOTO",model.PHOTO),
new MySqlParameter("@IS_LEADER",model.IS_LEADER),
new MySqlParameter("@ENLISTED_TIME",model.ENLISTED_TIME),
new MySqlParameter("@IS_ACCESS",model.IS_ACCESS),
new MySqlParameter("@DURING_ACCESS_PERIOD",model.DURING_ACCESS_PERIOD),
new MySqlParameter("@ISDRIVER",model.ISDRIVER),
new MySqlParameter("@FILENUM",model.FILENUM),
new MySqlParameter("@PERMISSIONNUM",model.PERMISSIONNUM),
new MySqlParameter("@FIRSTCARD",model.FIRSTCARD),
new MySqlParameter("@EFFECTIVETIME",model.EFFECTIVETIME),
new MySqlParameter("@PERMITTEDORGAN",model.PERMITTEDORGAN),
new MySqlParameter("@IS_SUBCAMPVIDEO",model.IS_SUBCAMPVIDEO),
new MySqlParameter("@BIRTHDAY",model.BIRTHDAY),
new MySqlParameter("@FAMILYADDR",model.FAMILYADDR),
new MySqlParameter("@ALL_ANNUAL_LEAVE",model.ALL_ANNUAL_LEAVE),
new MySqlParameter("@AVAILABLE_ANNUAL_LEAVE",model.AVAILABLE_ANNUAL_LEAVE),
new MySqlParameter("@TAGS",model.TAGS),
new MySqlParameter("@IS_ADMIN",model.IS_ADMIN),
new MySqlParameter("@POSTS",model.POSTS),
new MySqlParameter("@DURING_ACCESS_PERIOD2",model.DURING_ACCESS_PERIOD2),
new MySqlParameter("@ACCESSALLOWEDMODE",model.ACCESSALLOWEDMODE),
new MySqlParameter("@ID",model.ID)
};
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0) { return true; }
else { return false; }
}
///// <summary>
///// 删除
///// </summary>
//public bool DelEmp(string EmpList)
//{
// string sql = "update TBL_SYS_EMP set IS_DEL = '1' where ID in(" + EmpList + ")";
// try
// {
// FangYar.Common.MySqlHelper.ExecuteSql(sql);
// return true;
// }
// catch
// {
// return false;
// }
//}
/// <summary>
/// 请/销假审批(根据ID修改员工表在岗情况)
/// </summary>
public FangYar.Model.OA.CommonSql getEditIsWorkSql(FangYar.Model.TBL.TBL_SYS_EMP_Model model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("update TBL_SYS_EMP set ");
strSql.Append("IS_WORK=@IS_WORK");
strSql.Append(" where ID=@ID ");
MySqlParameter[] parameters = {
new MySqlParameter("@IS_WORK",MySqlDbType.VarChar,36),
new MySqlParameter("@ID", MySqlDbType.VarChar,36)};
parameters[0].Value = model.IS_WORK;
parameters[1].Value = model.ID;
FangYar.Model.OA.CommonSql comm = new FangYar.Model.OA.CommonSql();
comm.sql = strSql.ToString();
comm.param = parameters;
return comm;
}
/// <summary>
/// 请/销假审批(根据USERS_UID修改员工表在岗情况)
/// </summary>
public FangYar.Model.OA.CommonSql getEditIsWorkSql2(FangYar.Model.TBL.TBL_SYS_EMP_Model model)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("update TBL_SYS_EMP set ");
strSql.Append("IS_WORK=@IS_WORK");
strSql.Append(" where USERS_UID=@USERS_UID ");
MySqlParameter[] parameters = {
new MySqlParameter("@IS_WORK",MySqlDbType.VarChar,36),
new MySqlParameter("@USERS_UID", MySqlDbType.VarChar,36)};
parameters[0].Value = model.IS_WORK;
parameters[1].Value = model.USERS_UID;
FangYar.Model.OA.CommonSql comm = new FangYar.Model.OA.CommonSql();
comm.sql = strSql.ToString();
comm.param = parameters;
return comm;
}
/// <summary>
/// 根据User_ID获取model
/// </summary>
public FangYar.Model.TBL.TBL_SYS_EMP_Model GetModelByUserID(string OrgId, string UserId)
{
Model.TBL.TBL_SYS_EMP_Model model = null;
string sql = "select e.*, (select o.org_name from fire_org o where o.org_id = e.org_id ) org_name, (select o.org_name from fire_org o where o.org_id = e.dept_id ) dept_name from TBL_SYS_EMP e where e.USERS_UID=@USERS_UID";
MySqlParameter[] paras = {
new MySqlParameter("@USERS_UID",MySqlDbType.VarChar)
};
paras[0].Value = UserId;
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras);
if (dt.Rows.Count > 0)
{
model = DataRowToModel2(dt.Rows[0]);
return model;
}
else
{
return null;
}
}
/// <summary>
/// 营区政工接口
/// 根据User_ID获取model
/// </summary>
public FangYar.Model.TBL.TBL_SYS_EMP_Model GetModelByUserIDZG(string UserId)
{
Model.TBL.TBL_SYS_EMP_Model model = null;
string sql = "select e.emp_sex, e.photo,(select d.dic_text from tbl_sys_dicdetail d where d.mod_code = 'NATIONTYPE' and d.dic_value = e.nation) nation_name, " +
"(select d.dic_text from tbl_sys_dicdetail d where d.mod_code = 'CERTTYPE' and d.dic_value = e.cert) cert_name, " +
"(select d.dic_text from tbl_sys_dicdetail d where d.mod_code = 'FACETYPE' and d.dic_value = e.face) face_name, " +
"(select d.dic_text from tbl_sys_dicdetail d where d.mod_code = 'PROFTYPE' and d.dic_value = e.prof) prof_name from TBL_SYS_EMP e where e.USERS_UID=@USERS_UID";
MySqlParameter[] paras = {
new MySqlParameter("@USERS_UID",MySqlDbType.VarChar)
};
paras[0].Value = UserId;
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras);
if (dt.Rows.Count > 0)
{
if (dt.Rows[0] != null)
{
if (!DBNull.Value.Equals(dt.Rows[0]["EMP_SEX"]))
model.EMP_SEX = dt.Rows[0]["EMP_SEX"].ToString();
if (!DBNull.Value.Equals(dt.Rows[0]["PHOTO"]))
model.PHOTO = dt.Rows[0]["PHOTO"].ToString();
if (!DBNull.Value.Equals(dt.Rows[0]["NATION_NAME"]))
model.NATION_NAME = dt.Rows[0]["NATION_NAME"].ToString();
if (!DBNull.Value.Equals(dt.Rows[0]["CERT_NAME"]))
model.CERT_NAME = dt.Rows[0]["CERT_NAME"].ToString();
if (!DBNull.Value.Equals(dt.Rows[0]["FACE_NAME"]))
model.FACE_NAME = dt.Rows[0]["FACE_NAME"].ToString();
if (!DBNull.Value.Equals(dt.Rows[0]["PROF_NAME"]))
model.PROF_NAME = dt.Rows[0]["PROF_NAME"].ToString();
}
return model;
}
else
{
return null;
}
}
/// <summary>
/// 根据IDnumber(身份证号)获取model
/// </summary>
public FangYar.Model.TBL.TBL_SYS_EMP_Model GetModelByIDnumber(string OrgId, string IDnumber)
{
Model.TBL.TBL_SYS_EMP_Model model = null;
string sql = "select * from TBL_SYS_EMP where IDNUMBER=@IDNUMBER";
MySqlParameter[] paras = { new MySqlParameter("@IDNUMBER", IDnumber) };
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(sql, paras);
if (dt.Rows.Count > 0)
{
model = DataRowToModel2(dt.Rows[0]);
return model;
}
else
{
return null;
}
}
/// <summary>
/// DataRow转model实体类对象(不包含子查询字段)
/// </summary>
/// <param name="dr"></param>
/// <returns></returns>
private FangYar.Model.TBL.TBL_SYS_EMP_Model DataRowToModel2(DataRow dr)
{
FangYar.Model.TBL.TBL_SYS_EMP_Model model = new FangYar.Model.TBL.TBL_SYS_EMP_Model();
if (dr != null)
{
if (!DBNull.Value.Equals(dr["ID"]))
model.ID = dr["ID"].ToString();
if (!DBNull.Value.Equals(dr["USERS_UID"]))
model.USERS_UID = dr["USERS_UID"].ToString();
if (!DBNull.Value.Equals(dr["EMP_NAME"]))
model.EMP_NAME = dr["EMP_NAME"].ToString();
if (!DBNull.Value.Equals(dr["EMP_NUM"]))
model.EMP_NUM = dr["EMP_NUM"].ToString();
if (!DBNull.Value.Equals(dr["EMP_SEX"]))
model.EMP_SEX = dr["EMP_SEX"].ToString();
if (!DBNull.Value.Equals(dr["ORG_ID"]))
model.ORG_ID = dr["ORG_ID"].ToString();
if (!DBNull.Value.Equals(dr["DEPT_ID"]))
model.DEPT_ID = dr["DEPT_ID"].ToString();
if (!DBNull.Value.Equals(dr["EMP_EMAIL"]))
model.EMP_EMAIL = dr["EMP_EMAIL"].ToString();
if (!DBNull.Value.Equals(dr["EMP_MOBILE"]))
model.EMP_MOBILE = dr["EMP_MOBILE"].ToString();
if (!DBNull.Value.Equals(dr["IDNUMBER"]))
model.IDNUMBER = dr["IDNUMBER"].ToString();
if (!DBNull.Value.Equals(dr["FIRE_PRO"]))
model.FIRE_PRO = dr["FIRE_PRO"].ToString();
if (!DBNull.Value.Equals(dr["CERT"]))
model.CERT = dr["CERT"].ToString();
if (!DBNull.Value.Equals(dr["NATION"]))
model.NATION = dr["NATION"].ToString();
if (!DBNull.Value.Equals(dr["FACE"]))
model.FACE = dr["FACE"].ToString();
if (!DBNull.Value.Equals(dr["MAR"]))
model.MAR = dr["MAR"].ToString();
if (!DBNull.Value.Equals(dr["IS_WORK"]))
model.IS_WORK = dr["IS_WORK"].ToString();
if (!DBNull.Value.Equals(dr["PROF"]))
model.PROF = dr["PROF"].ToString();
if (!DBNull.Value.Equals(dr["POL"]))
model.POL = dr["POL"].ToString();
if (!DBNull.Value.Equals(dr["IS_DEL"]))
model.IS_DEL = dr["IS_DEL"].ToString();
if (!DBNull.Value.Equals(dr["PHOTO"]))
model.PHOTO = dr["PHOTO"].ToString();
if (!DBNull.Value.Equals(dr["ENLISTED_TIME"]))
model.ENLISTED_TIME = dr["ENLISTED_TIME"].ToString();
if (!DBNull.Value.Equals(dr["ISDRIVER"]))
model.ISDRIVER = dr["ISDRIVER"].ToString();
if (!DBNull.Value.Equals(dr["FILENUM"]))
model.FILENUM = dr["FILENUM"].ToString();
if (!DBNull.Value.Equals(dr["PERMISSIONNUM"]))
model.PERMISSIONNUM = dr["PERMISSIONNUM"].ToString();
if (!DBNull.Value.Equals(dr["FIRSTCARD"]))
model.FIRSTCARD = dr["FIRSTCARD"].ToString();
if (!DBNull.Value.Equals(dr["EFFECTIVETIME"]))
model.EFFECTIVETIME = dr["EFFECTIVETIME"].ToString();
if (!DBNull.Value.Equals(dr["PERMITTEDORGAN"]))
model.PERMITTEDORGAN = dr["PERMITTEDORGAN"].ToString();
if (!DBNull.Value.Equals(dr["BIRTHDAY"]))
model.BIRTHDAY = dr["BIRTHDAY"].ToString();
if (!DBNull.Value.Equals(dr["FAMILYADDR"]))
model.FAMILYADDR = dr["FAMILYADDR"].ToString();
if (dr.Table.Columns.Contains("ORG_NAME"))
{
if (!DBNull.Value.Equals(dr["ORG_NAME"]))
model.ORG_NAME = dr["ORG_NAME"].ToString();
}
if (dr.Table.Columns.Contains("DEPT_NAME"))
{
if (!DBNull.Value.Equals(dr["DEPT_NAME"]))
model.DEPT_NAME = dr["DEPT_NAME"].ToString();
}
if (dr.Table.Columns.Contains("ALL_ANNUAL_LEAVE"))
{
if (dr["ALL_ANNUAL_LEAVE"] != null && dr["ALL_ANNUAL_LEAVE"].ToString() != "")
{
model.ALL_ANNUAL_LEAVE = decimal.Parse(dr["ALL_ANNUAL_LEAVE"].ToString());
}
}
if (dr.Table.Columns.Contains("AVAILABLE_ANNUAL_LEAVE"))
{
if (dr["AVAILABLE_ANNUAL_LEAVE"] != null && dr["AVAILABLE_ANNUAL_LEAVE"].ToString() != "")
{
model.AVAILABLE_ANNUAL_LEAVE = decimal.Parse(dr["AVAILABLE_ANNUAL_LEAVE"].ToString());
}
}
if (dr.Table.Columns.Contains("CID"))
{
if (dr["CID"] != null)
{
model.CID = dr["CID"].ToString();
}
}
if (dr.Table.Columns.Contains("POSTS"))
{
if (dr["POSTS"] != null)
{
model.POSTS = dr["POSTS"].ToString();
}
}
if (dr.Table.Columns.Contains("TAGS"))
{
if (dr["TAGS"] != null)
{
model.TAGS = dr["TAGS"].ToString();
}
}
model.IS_ADMIN = dr["IS_ADMIN"] + "";
if (dr.Table.Columns.Contains("TAGS_BAK"))
{
if (dr["TAGS_BAK"] != null)
{
model.TAGS_BAK = dr["TAGS_BAK"].ToString();
}
}
}
return model;
}
/// <summary>
/// 根据deptId查询人员列表(序列,登录账号,名称)
/// </summary>
/// <param name="deptId">部门ID</param>
/// <returns></returns>
public DataTable deptIdGetEmpList(string deptId)
{
string sql = "select e.is_leader as id,e.emp_name as label,e.users_uid as value from tbl_sys_emp e where e.IS_ADMIN='0' and e.dept_id = '" + deptId + "' order by id";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// 根据USERS_UID修改人员在岗状态
/// </summary>
public bool EditEmpIswork(FangYar.Model.TBL.TBL_SYS_EMP_Model model)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("update TBL_SYS_EMP set ");
strsql.Append("IS_WORK=@IS_WORK ");
strsql.Append(" where USERS_UID=@USERS_UID");
MySqlParameter[] paras ={
new MySqlParameter("@IS_WORK",model.IS_WORK),
new MySqlParameter("@USERS_UID",model.USERS_UID)
};
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0) { return true; }
else { return false; }
}
/// 根据多个USERS_UID修改人员在岗状态(xx,xx,xx格式)
public bool EditEmpIsworks(string usersUids, string state)
{
string sql = "update tbl_sys_emp set IS_WORK='" + state + "' where instr(concat(',',replace('" + usersUids + "', 'u_', ''),','),concat(',',USERS_UID,','))<>0";
return FangYar.Common.MySqlHelper.ExecuteSql(sql) > 0;
}
/// 根据多个USERS_UID修改人员在岗状态(xx,xx,xx格式),同时修改年休假剩余天数
public bool EditEmpIsworks2(string usersUids, string state, decimal l_num)
{
string sql = "update tbl_sys_emp set IS_WORK='" + state + "', AVAILABLE_ANNUAL_LEAVE = '" + l_num + "' where instr(concat(',',replace('" + usersUids + "', 'u_', ''),','),concat(',',USERS_UID,','))<>0";
return FangYar.Common.MySqlHelper.ExecuteSql(sql) > 0;
}
/// <summary>
/// 营区政工接口
/// 根据orgId获取:机构+部门+人员 Tree结构(获取组织机构)
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public DataTable getProcOrganization(string orgId)
{
string sql = "select o.org_id id, o.org_name name, o.pid pid, case o.type when 0 then 'org' when 1 then 'dept' else o.type end as type,o.sort sort from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where find_in_set(o.org_id,cids) union all select e.users_uid,e.emp_name,case when e.dept_id is null then e.org_id else e.dept_id end as pid,'emp' type,e.emp_num from tbl_sys_emp e where e.IS_ADMIN='0' and e.users_uid is not null and ( e.org_id in ( select o.org_id id from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where o.type = '0' and find_in_set(o.org_id,cids)) or e.dept_id in (select o.org_id id from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where o.type = '1' and find_in_set(o.org_id,cids))) order by sort desc,type";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// 人员统计
///
/// </summary>
public DataTable personSta(string strWhere)
{
StringBuilder sql = new StringBuilder();
sql.Append("select IFNULL(sum(p.ZG), 0) ZG,IFNULL(sum(p.JY), 0) JY ,IFNULL(sum(p.XJ), 0) XJ ,IFNULL(sum(p.QJ), 0) QJ ,IFNULL(sum(p.XX), 0) XX ,IFNULL(sum(p.PX), 0) PX ,IFNULL(sum(p.BG), 0) BG ,IFNULL(sum(p.ZY), 0) ZY ,IFNULL(sum(p.CC), 0) CC ,IFNULL(sum(p.CG), 0) CG ,IFNULL(sum(p.ZLBD), 0) ZLBD ,IFNULL(sum(p.QT), 0) QT ,IFNULL(sum(p.KONG), 0) KONG,IFNULL(sum(p.zs), 0) ZS ");
sql.Append(" from(select ");
sql.Append("CASE WHEN e.IS_WORK ='1' THEN 1 ELSE 0 END ZG");
sql.Append(",CASE WHEN e.IS_WORK ='2' THEN 1 ELSE 0 END JY");
sql.Append(",CASE WHEN e.IS_WORK ='3' THEN 1 ELSE 0 END XJ");
sql.Append(",CASE WHEN e.IS_WORK ='4' THEN 1 ELSE 0 END QJ");
sql.Append(",CASE WHEN e.IS_WORK ='5' THEN 1 ELSE 0 END XX");
sql.Append(",CASE WHEN e.IS_WORK ='6' THEN 1 ELSE 0 END PX");
sql.Append(",CASE WHEN e.IS_WORK ='7' THEN 1 ELSE 0 END BG");
sql.Append(",CASE WHEN e.IS_WORK ='8' THEN 1 ELSE 0 END ZY");
sql.Append(",CASE WHEN e.IS_WORK ='9' THEN 1 ELSE 0 END CC");
sql.Append(",CASE WHEN e.IS_WORK ='10' THEN 1 ELSE 0 END CG");
sql.Append(",CASE WHEN e.IS_WORK ='11' THEN 1 ELSE 0 END ZLBD");
sql.Append(",CASE WHEN e.IS_WORK ='12' THEN 1 ELSE 0 END QT");
sql.Append(",CASE WHEN e.IS_WORK ='' THEN 1 ELSE 0 END KONG ");
sql.Append(",1 zs ");
sql.Append("from tbl_sys_emp e where IS_ADMIN='0' and ");
sql.Append(strWhere);
sql.Append(" ) p ");
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 人员统计
///
/// </summary>
public DataTable personStaAll(string strWhere)
{
StringBuilder sql = new StringBuilder();
sql.Append("select IFNULL(sum(p.ZG), 0) ZG,IFNULL(sum(p.JY), 0) JY ,IFNULL(sum(p.XJ), 0) XJ ,IFNULL(sum(p.QJ), 0) QJ ,IFNULL(sum(p.XX), 0) XX ,IFNULL(sum(p.PX), 0) PX ,IFNULL(sum(p.BG), 0) BG ,IFNULL(sum(p.ZY), 0) ZY ,IFNULL(sum(p.CC), 0) CC ,IFNULL(sum(p.CG), 0) CG ,IFNULL(sum(p.ZLBD), 0) ZLBD ,IFNULL(sum(p.QT), 0) QT ,IFNULL(sum(p.KONG), 0) KONG,IFNULL(sum(p.zs), 0) ZS ");
sql.Append(" from(select ");
sql.Append("CASE WHEN e.IS_WORK ='1' THEN 1 ELSE 0 END ZG");
sql.Append(",CASE WHEN e.IS_WORK ='2' THEN 1 ELSE 0 END JY");
sql.Append(",CASE WHEN e.IS_WORK ='3' THEN 1 ELSE 0 END XJ");
sql.Append(",CASE WHEN e.IS_WORK ='4' THEN 1 ELSE 0 END QJ");
sql.Append(",CASE WHEN e.IS_WORK ='5' THEN 1 ELSE 0 END XX");
sql.Append(",CASE WHEN e.IS_WORK ='6' THEN 1 ELSE 0 END PX");
sql.Append(",CASE WHEN e.IS_WORK ='7' THEN 1 ELSE 0 END BG");
sql.Append(",CASE WHEN e.IS_WORK ='8' THEN 1 ELSE 0 END ZY");
sql.Append(",CASE WHEN e.IS_WORK ='9' THEN 1 ELSE 0 END CC");
sql.Append(",CASE WHEN e.IS_WORK ='10' THEN 1 ELSE 0 END CG");
sql.Append(",CASE WHEN e.IS_WORK ='11' THEN 1 ELSE 0 END ZLBD");
sql.Append(",CASE WHEN e.IS_WORK ='12' THEN 1 ELSE 0 END QT");
sql.Append(",CASE WHEN e.IS_WORK ='' THEN 1 ELSE 0 END KONG ");
sql.Append(",1 zs ");
sql.Append("from tbl_sys_emp e where IS_ADMIN='0' and ");
sql.Append(strWhere);
sql.Append(" ) p ");
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 人员在岗统计_手机端
///
/// </summary>
public DataTable personSta3(string orgId, string findDate, string EXTENDCODE1, string ISORG)
{
StringBuilder sql = new StringBuilder();
//sql.Append("select o.org_id,o.org_name,o.PID,");
//sql.Append("(select count(e.id) from tbl_sys_emp e where e.IS_ADMIN='0' and e.org_id = o.org_id and e.is_del = '0') sumNum,");
//sql.Append("(select count(distinct l.ppl_id) from oa_leave l where l.ppl_id in (select ee.users_uid from tbl_sys_emp ee where ee.IS_ADMIN='0' and ee.org_id = o.org_id) and STATE = '1' ");
//sql.Append("and date_format(S_TIME,'%Y-%m-%d %H:%i:%s') >= date_format('" + findDate + " 00:00:00','%Y-%m-%d %H:%i:%s') ");
//sql.Append("and date_format(E_TIME,'%Y-%m-%d %H:%i:%s') <= date_format('" + findDate + " 23:59:59','%Y-%m-%d %H:%i:%s')) as lNum,");
//sql.Append("(select count(distinct t.ppl_id) from oa_tolerance t where t.ppl_id in (select ee.users_uid from tbl_sys_emp ee where ee.IS_ADMIN='0' and ee.org_id = o.org_id) and STATE = '1' ");
//sql.Append("and date_format(S_TIME,'%Y-%m-%d %H:%i:%s') >= date_format('" + findDate + " 00:00:00','%Y-%m-%d %H:%i:%s') ");
//sql.Append("and date_format(E_TIME,'%Y-%m-%d %H:%i:%s') <= date_format('" + findDate + " 23:59:59','%Y-%m-%d %H:%i:%s')) as tNum ");
//sql.Append("from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where type = '0' and find_in_set(o.org_id,cids) ORDER BY o.ORG_ID = '" + orgId + "' desc ");
if (EXTENDCODE1 == "1" || EXTENDCODE1 == "2" || ISORG == "1" || orgId == "36e8032be5f54a3cb994c4ac74ac3f77")
{
sql.Append(" SELECT o.org_id,o.org_name,o.PID,");
sql.Append(" (SELECT count(e.id) FROM tbl_sys_emp e WHERE e.IS_ADMIN = '0'");
sql.Append(" AND e.org_id =o.org_id ");
sql.Append(" AND e.is_del = '0') sumNum,");
sql.Append(" ( SELECT count(DISTINCT l.ppl_id) FROM oa_leave l WHERE");
sql.Append(" l.ppl_id IN(SELECT ee.users_uid FROM tbl_sys_emp ee WHERE ee.IS_ADMIN = '0' AND ee.org_id = o.org_id ) ");
sql.Append(" AND STATE = '1' AND date_format(S_TIME, '%Y-%m-%d %H:%i:%s' ) >= date_format('" + findDate + " 00:00:00', '%Y-%m-%d %H:%i:%s')");
sql.Append(" AND date_format(E_TIME, '%Y-%m-%d %H:%i:%s' ) <= date_format('" + findDate + " 23:59:59', '%Y-%m-%d %H:%i:%s')) AS lNum,(");
sql.Append(" SELECT count(DISTINCT t.ppl_id) FROM oa_tolerance t WHERE");
sql.Append(" t.ppl_id IN(SELECT ee.users_uid FROM tbl_sys_emp ee WHERE ee.IS_ADMIN = '0' AND ee.org_id = o.org_id ) ");
sql.Append(" AND STATE = '1' AND date_format(S_TIME, '%Y-%m-%d %H:%i:%s' ) >= date_format('" + findDate + " 00:00:00', '%Y-%m-%d %H:%i:%s')");
sql.Append(" AND date_format(E_TIME, '%Y-%m-%d %H:%i:%s' ) <= date_format('" + findDate + " 23:59:59', '%Y-%m-%d %H:%i:%s')) AS tNum");
sql.Append(" FROM fire_org o WHERE type = '0' AND (o.PID = '" + orgId + "' or o.ORG_ID = '" + orgId + "')");
sql.Append(" order by field(o.EXTENDCODE1,'3','0','2','1'),field(o.ISORG,'0','1') ");
}
else
{
sql.Append(" SELECT o.org_id,o.org_name,o.PID,");
sql.Append(" (SELECT count(e.id) FROM tbl_sys_emp e WHERE e.IS_ADMIN = '0'");
sql.Append(" AND e.org_id in (select org_id from fire_org, (SELECT get_Org_child_list(o.org_id) cids) t where find_in_set(ORG_ID, cids)) ");
sql.Append(" AND e.is_del = '0') sumNum,");
sql.Append(" ( SELECT count(DISTINCT l.ppl_id) FROM oa_leave l WHERE");
sql.Append(" l.ppl_id IN(SELECT ee.users_uid FROM tbl_sys_emp ee WHERE ee.IS_ADMIN = '0' AND ee.org_id in (select org_id from fire_org, (SELECT get_Org_child_list(o.org_id) cids) t where find_in_set(ORG_ID, cids)) ) ");
sql.Append(" AND STATE = '1' AND date_format(S_TIME, '%Y-%m-%d %H:%i:%s' ) >= date_format('" + findDate + " 00:00:00', '%Y-%m-%d %H:%i:%s')");
sql.Append(" AND date_format(E_TIME, '%Y-%m-%d %H:%i:%s' ) <= date_format('" + findDate + " 23:59:59', '%Y-%m-%d %H:%i:%s')) AS lNum,(");
sql.Append(" SELECT count(DISTINCT t.ppl_id) FROM oa_tolerance t WHERE");
sql.Append(" t.ppl_id IN(SELECT ee.users_uid FROM tbl_sys_emp ee WHERE ee.IS_ADMIN = '0' AND ee.org_id in (select org_id from fire_org, (SELECT get_Org_child_list(o.org_id) cids) t where find_in_set(ORG_ID, cids)) ) ");
sql.Append(" AND STATE = '1' AND date_format(S_TIME, '%Y-%m-%d %H:%i:%s' ) >= date_format('" + findDate + " 00:00:00', '%Y-%m-%d %H:%i:%s')");
sql.Append(" AND date_format(E_TIME, '%Y-%m-%d %H:%i:%s' ) <= date_format('" + findDate + " 23:59:59', '%Y-%m-%d %H:%i:%s')) AS tNum");
//sql.Append(" FROM fire_org o WHERE type = '0' AND (o.PID = '" + orgId + "' or o.ORG_ID = '" + orgId + "')");
sql.Append(" FROM fire_org o WHERE type = '0' AND o.PID = '" + orgId + "'");
sql.Append(" order by field(o.EXTENDCODE1,'3','0','2','1'),field(o.ISORG,'0','1') ");
}
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
// <summary>
// 人员在岗统计
//
// </summary>
public DataTable personSta2(string orgId, string findDate)
{
StringBuilder sql = new StringBuilder();
sql.Append("select o.org_id,o.org_name,o.PID,");
sql.Append("(select count(e.id) from tbl_sys_emp e where e.IS_ADMIN='0' and e.org_id = o.org_id and e.is_del = '0') sumNum,");
sql.Append("(select count(distinct l.ppl_id) from oa_leave l where l.ppl_id in (select ee.users_uid from tbl_sys_emp ee where ee.IS_ADMIN='0' and ee.org_id = o.org_id) and STATE = '1' ");
sql.Append("and date_format(S_TIME,'%Y-%m-%d %H:%i:%s') >= date_format('" + findDate + " 00:00:00','%Y-%m-%d %H:%i:%s') ");
sql.Append("and date_format(E_TIME,'%Y-%m-%d %H:%i:%s') <= date_format('" + findDate + " 23:59:59','%Y-%m-%d %H:%i:%s')) as lNum,");
sql.Append("(select count(distinct t.ppl_id) from oa_tolerance t where t.ppl_id in (select ee.users_uid from tbl_sys_emp ee where ee.IS_ADMIN='0' and ee.org_id = o.org_id) and STATE = '1' ");
sql.Append("and date_format(S_TIME,'%Y-%m-%d %H:%i:%s') >= date_format('" + findDate + " 00:00:00','%Y-%m-%d %H:%i:%s') ");
sql.Append("and date_format(E_TIME,'%Y-%m-%d %H:%i:%s') <= date_format('" + findDate + " 23:59:59','%Y-%m-%d %H:%i:%s')) as tNum ");
sql.Append("from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where type = '0' and find_in_set(o.org_id,cids) ORDER BY o.ORG_ID = '" + orgId + "' desc ");
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 人员统计
///
/// </summary>
public DataTable personStrengthSta(string strWhere)
{
StringBuilder sql = new StringBuilder();
sql.Append("select SUM(case PROF when 15 then 1 else 0 END) ZZY,SUM(case PROF when 16 then 1 else 0 END) HTZXFY,SUM(case PROF when 17 then 1 else 0 END) XFWY,SUM(case PROF when 18 then 1 else 0 END) GQGWRY from tbl_sys_emp where IS_ADMIN='0' and ");
sql.Append(strWhere);
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 人员实力统计(消防要事日记)
///
/// </summary>
public DataTable personStrengthSta2(string strWhere)
{
StringBuilder sql = new StringBuilder();
sql.Append(@"SELECT
IFNULL(SUM(case PROF when 15 then 1 else 0 end),0) ZZY
,IFNULL(SUM(case PROF when 16 then 1 else 0 end),0) HTZXFY
,IFNULL(SUM(case PROF when 17 then 1 else 0 end),0) XFWY
,IFNULL(SUM(case PROF when 18 then 1 else 0 end),0) GQGWRY
,IFNULL(SUM(case PROF when 19 then 1 else 0 end),0) XFY
from( ");
sql.Append(" select PROF from tbl_sys_emp where IS_ADMIN='0' and");
sql.Append(strWhere);
sql.Append(" ) t ");
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
#endregion 2019_05_27 swr 新增方法
//三维可视化平台提供接口:根据机构ID统计下属机构所拥有车辆数
public DataTable getPerNumByOrgId(string orgId)
{
string sql = "select count(1) countNum,e.org_id, (select o.extendcode3 from fire_org o where o.org_id = e.org_id ) org_name from tbl_sys_emp e,(select get_Org_child_list('" + orgId + "') cids ) s where e.IS_ADMIN='0' and e.is_del != '1' and find_in_set(e.org_id,cids) group by e.org_id ";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// 查询当前登录用户所属机构人员
/// </summary>
/// <param name="orgId"></param>
/// <returns></returns>
public DataTable QueryCurrentUserUnitPersonNumByOrgId(string orgId)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(@"SELECT COUNT(1) countNum,e.org_id,
(SELECT o.org_name FROM fire_org o WHERE o.org_id = e.org_id) org_name
FROM tbl_sys_emp e WHERE e.IS_ADMIN='0' and e.is_del != '1'");
strSql.Append("AND e.org_id = '" + orgId + "' GROUP BY e.org_id");
return Common.MySqlHelper.QueryTable(strSql.ToString());
}
/// <summary>
/// 删除
/// </summary>
public bool DelEmp(string EmpList, string UserUidList)
{
List<string> SQLStringList = new List<string>();
string sql_emp = "update TBL_SYS_EMP set IS_DEL = '1' where ID in(" + EmpList + ")";
string sql_user = "update TBL_SYS_USERS set USERS_STATE = '9' where USERS_UID in(" + UserUidList + ")";
SQLStringList.Add(sql_emp);
SQLStringList.Add(sql_user);
try
{
return FangYar.Common.MySqlHelper.ExecuteSqlTran(SQLStringList);
}
catch
{
return false;
}
}
/// <summary>
/// 恢复删除
/// </summary>
public bool ClearDel(string EmpList, string UserUidList)
{
List<string> SQLStringList = new List<string>();
string sql_emp = "update TBL_SYS_EMP set IS_DEL = '0' where ID in(" + EmpList + ")";
string sql_user = "update TBL_SYS_USERS set USERS_STATE = '0' where USERS_UID in(" + UserUidList + ")";
SQLStringList.Add(sql_emp);
SQLStringList.Add(sql_user);
try
{
return FangYar.Common.MySqlHelper.ExecuteSqlTran(SQLStringList);
}
catch
{
return false;
}
}
/// <summary>
/// 重置密码
/// </summary>
public bool ResetPwd(string PwdStr, string UserUidList)
{
try
{
List<string> SQLStringList = new List<string>();
string sql_user = "update TBL_SYS_USERS set USERS_PWD = '" + PwdStr + "' where USERS_UID in(" + UserUidList + ")";
SQLStringList.Add(sql_user);
return FangYar.Common.MySqlHelper.Execute(sql_user) > 0;
}
catch
{
return false;
}
}
//获取机构下人员
public List<FangYar.Model.TBL.TBL_SYS_EMP_Model> getEmpListByOrgId(string orgId, string isUid)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT t.* ");
strSql.Append("FROM TBL_SYS_EMP t ");
strSql.Append(" where (t.IS_ADMIN = '0' or t.IS_ADMIN is null) and t.org_id = '" + orgId + "' and t.is_del != '1' ");
if (isUid == "1")
{
strSql.Append("and users_uid is not null ");
}
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(strSql.ToString());
return DataTableToList(dt);
}
//获取机构下人员(有部门ID的不查询)
public List<FangYar.Model.TBL.TBL_SYS_EMP_Model> getEmpListByOrgIdAndDeptisNull(string orgId, string isUid)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT t.* ");
strSql.Append("FROM TBL_SYS_EMP t ");
strSql.Append(" where (t.IS_ADMIN = '0' or t.IS_ADMIN is null) and t.org_id = '" + orgId + "' and (dept_id is null or dept_id = null or dept_id = '') and t.is_del != '1' ");
if (isUid == "1")
{
strSql.Append("and users_uid is not null ");
}
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(strSql.ToString());
return DataTableToList(dt);
}
//获取部门下人员
public List<FangYar.Model.TBL.TBL_SYS_EMP_Model> getEmpListByDeptId(string deptId, string isUid)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT t.* ");
strSql.Append("FROM TBL_SYS_EMP t ");
strSql.Append(" where t.IS_ADMIN='0' and t.dept_id = '" + deptId + "' and t.is_del != '1' ");
if (isUid == "1")
{
strSql.Append("and users_uid is not null ");
}
DataTable dt = FangYar.Common.MySqlHelper.QueryTable(strSql.ToString());
return DataTableToList(dt);
}
//获取机构下所有在职人员Tree(绑定账号的人员)
public DataTable getOrgDeptEmpTreeByOrgId(string orgId)
{
string sql = "SELECT o.org_id id, o.org_name name, o.pid pid, CASE o.TYPE WHEN 0 THEN 'org' WHEN 1 THEN 'dept' ELSE o.TYPE END AS TYPE, o.sort sort FROM fire_org o WHERE o.org_id = '" + orgId + "' OR o.org_id IN ( SELECT oo.org_id FROM fire_org oo,(select get_Org_child_list('" + orgId + "') cids ) s where find_in_set(oo.pid,cids) and oo.type='1') union select e.users_uid id,e.emp_name name, case when e.dept_id is null or e.dept_id = '' then e.org_id else e.dept_id end as pid, 'emp' type, (case when e.is_leader is not null then e.is_leader else 1 end) sort from tbl_sys_emp e where e.IS_ADMIN='0' and e.org_id = '" + orgId + "' and e.users_uid is not null and e.is_del != '1' order by type, sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
//APP点名打卡人员选择(专属方法)
public DataTable getOrgDeptEmpTreeByOrgId2(string orgId)
{
string sql = "SELECT o.org_id id, o.org_name name, o.pid pid, CASE o.TYPE WHEN 0 THEN 'org' WHEN 1 THEN 'dept' ELSE o.TYPE END AS TYPE, o.sort sort FROM fire_org o WHERE o.org_id = '" + orgId + "' OR o.org_id IN ( SELECT oo.org_id FROM fire_org oo,(select get_Org_child_list('" + orgId + "') cids ) s where find_in_set(oo.pid,cids) and oo.type='1') union select e.users_uid id,e.emp_name name, case when e.dept_id is null or e.dept_id = '' then e.org_id else e.dept_id end as pid, 'emp' type, (case when e.is_leader is not null then e.is_leader else 1 end) sort from tbl_sys_emp e where e.IS_ADMIN='0' and (e.org_id = '" + orgId + "' or e.dept_id = '" + orgId + "') and e.users_uid is not null and e.is_del != '1' order by type, sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
//判断本级以及下级机构是否包含人员
public DataTable getEmpCountByOrgId(string orgId)
{
string sql = "select (select count(1) from tbl_sys_emp e,(select get_Org_child_list(o.org_id) cids ) s where e.is_del != '1' and find_in_set(e.dept_id,cids)) total, o.org_name,o.org_id from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where type = '1' and find_in_set(o.org_id,cids) order by o.sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 根据ID获取dt
/// </summary>
public DataTable GetDTByUID(string USERS_UID)
{
string sql = "select e.*,fo.ORG_NAME from tbl_sys_emp e LEFT JOIN FIRE_ORG fo ON e.IS_ADMIN='0' and e.ORG_ID =fo .ORG_ID where e.USERS_UID = '" + USERS_UID + "'";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 根据USERS_UID修改人员年休假总天数、剩余年休假天数
/// </summary>
public bool EditAnnualLeave(FangYar.Model.TBL.TBL_SYS_EMP_Model model)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("update TBL_SYS_EMP set ");
strsql.Append("ALL_ANNUAL_LEAVE=@ALL_ANNUAL_LEAVE, ");
strsql.Append("AVAILABLE_ANNUAL_LEAVE=@AVAILABLE_ANNUAL_LEAVE ");
strsql.Append(" where USERS_UID=@USERS_UID");
MySqlParameter[] paras ={
new MySqlParameter("@ALL_ANNUAL_LEAVE",model.ALL_ANNUAL_LEAVE),
new MySqlParameter("@AVAILABLE_ANNUAL_LEAVE",model.AVAILABLE_ANNUAL_LEAVE),
new MySqlParameter("@USERS_UID",model.USERS_UID)
};
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0) { return true; }
else { return false; }
}
/// <summary>
/// 根据ID获取dt
/// </summary>
public string GetEmpNum()
{
string sql = "select SEQ_EQU_ORG.nextVal from dual";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString()).Rows[0][0].ToString();
}
/// <summary>
/// 获取人员通讯录
/// </summary>
public DataTable getPerPhoneListByOrgId(string orgId)
{
string sql = "select o.org_id id, o.org_name name,'' as emp_mobile, o.pid pid, case o.type when 0 then 'org' when 1 then 'dept' else o.type end as type,o.sort sort from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where (type = '1' or o.org_id = '" + orgId + "') and find_in_set(o.org_id,cids) union all select e.users_uid,e.emp_name,e.emp_mobile as emp_mobile,case when e.dept_id is null then e.org_id else e.dept_id end as pid,'emp' type,e.is_leader as sort from tbl_sys_emp e where e.is_del != '1' and IS_ADMIN='0' and ( e.org_id in ( select o.org_id id from fire_org o where o.org_id = '" + orgId + "' ) or e.dept_id in (select o.org_id id from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where o.type = '1' and find_in_set(o.org_id,cids))) order by sort desc,type";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// 根据USERS_UID修改人员cid
public bool updateCid(string uid, string cid)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("update TBL_SYS_EMP set ");
strsql.Append("CID=@CID ");
strsql.Append(" where USERS_UID=@USERS_UID");
MySqlParameter[] paras ={
new MySqlParameter("@CID",cid),
new MySqlParameter("@USERS_UID",uid)
};
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0) { return true; }
else { return false; }
}
/// 根据USERS_UID修改人员openId
public bool updateOpenId(string uid, string openId)
{
StringBuilder strsql = new StringBuilder();
strsql.Append("update TBL_SYS_EMP set ");
strsql.Append("OPENID=@OPENID ");
strsql.Append(" where USERS_UID=@USERS_UID");
MySqlParameter[] paras ={
new MySqlParameter("@OPENID",openId),
new MySqlParameter("@USERS_UID",uid)
};
int i = FangYar.Common.MySqlHelper.ExecuteSql(strsql.ToString(), paras);
if (i > 0) { return true; }
else { return false; }
}
//党建接口,导出人员excel
public DataTable DJexpExcel(int PageIndex, int PageSize, string strwhere, string order)
{
int startnum = (PageIndex - 1) * PageSize;
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT EMP_NAME,EMP_NUM,EMP_SEX,ORG_NAME,DEPT_NAME,EMP_EMAIL,EMP_MOBILE,IDNUMBER,prof_name,CERT_NAME,NATION_NAME,MAR_NAME,is_work_name,ENLISTED_TIME, FAMILYADDR,' ' as A,' ' as B,' ' as C "); //,ISDRIVER,FILENUM,PERMISSIONNUM,FIRSTCARD,EFFECTIVETIME,PERMITTEDORGAN,BIRTHDAY,FAMILYADDR
strSql.Append(" FROM ( ");
strSql.Append(" SELECT t.*,(select o.org_name from fire_org o where o.org_id = t.org_id) org_name,(select o.org_name from fire_org o where o.org_id = t.dept_id) dept_name,");
strSql.Append("(select dic_text from tbl_sys_dicdetail where mod_code = 'POLTYPE' and dic_value = t.POL) POL_NAME,");
strSql.Append("(select dic_text from tbl_sys_dicdetail where mod_code = 'CERTTYPE' and dic_value = t.CERT) CERT_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'NATIONTYPE' and dic_value = t.NATION) NATION_NAME, (select dic_text from tbl_sys_dicdetail where mod_code = 'FACETYPE' and dic_value = t.FACE) FACE_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'MARTYPE' and dic_value = t.MAR) MAR_NAME, (select dic_text from tbl_sys_dicdetail where mod_code = 'IS_WORKTYPE' and dic_value = t.is_work) is_work_name,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'PROFTYPE' and dic_value = t.prof) prof_name, t.is_leader sort FROM TBL_SYS_EMP t where IS_ADMIN='0' ");
if (strwhere != null && strwhere != "")
{
strSql.Append(" and " + strwhere);
}
if (order != null && order != "")
{
strSql.Append(" ORDER BY " + order);
}
strSql.Append(" limit " + startnum + ", " + PageSize);
return FangYar.Common.MySqlHelper.QueryTable(strSql.ToString());
}
//获取多个机构下所有在职人员Tree(绑定账号的人员)
public DataTable getOrgDeptEmpTreeByOrgIds(string orgIds)
{
string inStr = orgIds.Replace("'", "");
string sql = "SELECT o.org_id id, o.org_name name, o.pid pid, CASE o.TYPE WHEN 0 THEN 'org' WHEN 1 THEN 'dept' ELSE o.TYPE END AS TYPE, o.sort sort,'' as photo FROM fire_org o WHERE o.org_id in (" + orgIds + ") OR o.org_id IN (SELECT oo.org_id FROM fire_org oo,(select get_Org_child_list_OrgIds('" + inStr + "') cids ) s where find_in_set(oo.pid,cids) and oo.type='1') union select e.users_uid id,e.emp_name name, case when e.dept_id is null or e.dept_id = '' then e.org_id else e.dept_id end as pid, 'emp' type, (case when e.is_leader is not null then e.is_leader else 1 end) sort,photo from tbl_sys_emp e where e.IS_ADMIN='0' and e.org_id in (" + orgIds + ") and e.users_uid is not null and e.is_del != '1' order by type, sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
//APP点名打卡人员选择(专属方法)
public DataTable getOrgDeptEmpTreeByOrgIds2(string orgIds)
{
string inStr = orgIds.Replace("'", "");
string sql = "SELECT o.org_id id, o.org_name name, o.pid pid, CASE o.TYPE WHEN 0 THEN 'org' WHEN 1 THEN 'dept' ELSE o.TYPE END AS TYPE, o.sort sort,'' as photo FROM fire_org o WHERE o.org_id in (" + orgIds + ") OR o.org_id IN (SELECT oo.org_id FROM fire_org oo,(select get_Org_child_list_OrgIds('" + inStr + "') cids ) s where find_in_set(oo.pid,cids) and oo.type='1') union select e.users_uid id,e.emp_name name, case when e.dept_id is null or e.dept_id = '' then e.org_id else e.dept_id end as pid, 'emp' type, (case when e.is_leader is not null then e.is_leader else 1 end) sort,photo from tbl_sys_emp e where e.IS_ADMIN='0' and (e.org_id in (" + orgIds + ") or e.dept_id in (" + orgIds + ")) and e.users_uid is not null and e.is_del != '1' order by type, sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
public DataTable getOrgAndDeptEmpByOrgIds(string orgIds)
{
string inStr = orgIds.Replace("'", "");
string sql = @"SELECT o.org_id id, o.org_name name, o.pid pid, CASE o.TYPE WHEN 0 THEN 'org' WHEN 1 THEN 'dept' ELSE o.TYPE END AS TYPE, o.sort sort,'' as photo
FROM fire_org o ,(select get_Org_child_Dept_list_OrgIds('" + inStr + @"') cids ) s WHERE find_in_set(o.org_id,cids)
union
select e.users_uid id,e.emp_name name,IF((ISNULL(e.dept_id) > 0 or LENGTH(trim(e.dept_id))=0),e.org_id,e.dept_id) pid, 'emp' type,
(case when e.is_leader is not null then e.is_leader else 1 end) sort,IF((ISNULL(PHOTO) > 0 or LENGTH(trim(PHOTO))=0),'images/imgPerDefaut.jpg',PHOTO) photo
from tbl_sys_emp e,(select get_Org_child_Dept_list_OrgIds('" + inStr + @"') cids ) s
WHERE IS_ADMIN='0' and find_in_set(e.org_id,cids) and e.users_uid is not null and e.is_del != '1' order by type, sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
//获取机构下的当日总指挥
public DataTable GetOrgDeptEmpTreeByTags(string orgId, string tag)
{
string sql = @"select USERS_UID as id ,EMP_NAME as name ,ORG_ID as pid ,'emp' as type ,0 as sort , photo from tbl_sys_emp
where ORG_ID = '" + orgId + "' and INSTR(TAGS,'" + tag + "')>0";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
//包含同级机关单位
public DataTable getOrgAndDeptEmpByOrgIds2(string orgId)
{
string sql = @"SELECT o.org_id id, o.org_name name, o.pid pid, CASE o.TYPE WHEN 0 THEN 'org' WHEN 1 THEN 'dept' ELSE o.TYPE END AS TYPE, o.sort sort,'' as photo
FROM fire_org o ,(select get_Org_child_Dept_list_OrgIds((SELECT
CONCAT( IFNULL(( SELECT t.ORG_ID FROM fire_org t WHERE t.pid = '" + orgId + @"' and t.isorg = '1' ),''), ',', '" + orgId + @"' )
FROM
DUAL)) cids ) s WHERE find_in_set(o.org_id,cids)
union
select e.users_uid id,e.emp_name name,IF((ISNULL(e.dept_id) > 0 or LENGTH(trim(e.dept_id))=0),e.org_id,e.dept_id) pid, 'emp' type,
(case when e.is_leader is not null then e.is_leader else 1 end) sort,IF((ISNULL(PHOTO) > 0 or LENGTH(trim(PHOTO))=0),'images/imgPerDefaut.jpg',PHOTO) photo
from tbl_sys_emp e,(select get_Org_child_Dept_list_OrgIds((SELECT
CONCAT( IFNULL(( SELECT t.ORG_ID FROM fire_org t WHERE t.pid = '" + orgId + @"' and t.isorg = '1'),''), ',', '" + orgId + @"' )
FROM
DUAL)) cids ) s
WHERE IS_ADMIN='0' and find_in_set(e.org_id,cids) and e.users_uid is not null and e.is_del != '1' order by type, sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 根据部门优先排序
/// </summary>
/// <param name="orgId"></param>
/// <param name="deptId"></param>
/// <returns></returns>
public DataTable getOrgAndDeptEmpByOrgIds2(string orgId, string deptId, string usersUid)
{
string sql = @"SELECT o.org_id id, o.org_name name, o.pid pid, CASE o.TYPE WHEN 0 THEN 'org' WHEN 1 THEN 'dept' ELSE o.TYPE END AS TYPE, o.sort sort,'' as photo
FROM fire_org o ,(select get_Org_child_Dept_list_OrgIds((SELECT
CONCAT( IFNULL(( SELECT t.ORG_ID FROM fire_org t WHERE t.pid = '" + orgId + @"' and t.isorg = '1' ),''), ',', '" + orgId + @"' )
FROM
DUAL)) cids ) s WHERE find_in_set(o.org_id,cids)
union
select e.users_uid id,e.emp_name name,IF((ISNULL(e.dept_id) > 0 or LENGTH(trim(e.dept_id))=0),e.org_id,e.dept_id) pid, 'emp' type,
(case when e.is_leader is not null then e.is_leader else 1 end) sort,IF((ISNULL(PHOTO) > 0 or LENGTH(trim(PHOTO))=0),'images/imgPerDefaut.jpg',PHOTO) photo
from tbl_sys_emp e,(select get_Org_child_Dept_list_OrgIds((SELECT
CONCAT( IFNULL(( SELECT t.ORG_ID FROM fire_org t WHERE t.pid = '" + orgId + @"' and t.isorg = '1'),''), ',', '" + orgId + @"' )
FROM
DUAL)) cids ) s
WHERE IS_ADMIN='0' and find_in_set(e.org_id,cids) and e.users_uid is not null and e.is_del != '1' and USERS_UID<>'" + usersUid + "' order by id in (" + deptId + ") DESC,type, sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
//包含同级机关单位
public DataTable getOrgAndDeptEmpByOrgIds3(string orgId)
{
string sql = @"SELECT o.org_id id, o.org_name name, o.pid pid, CASE o.TYPE WHEN 0 THEN 'org' WHEN 1 THEN 'dept' ELSE o.TYPE END AS TYPE, o.sort sort,'' as photo
FROM fire_org o ,(select get_Org_child_Dept_list_OrgIds((SELECT
CONCAT( IFNULL(( SELECT t.ORG_ID FROM fire_org t WHERE t.pid = '" + orgId + @"' and t.isorg = '1' ),''), ',', IFNULL(( SELECT t.ORG_ID FROM fire_org t WHERE t.pid = '" + orgId + @"' and t.isorg = '1' ),''), ',', IFNULL(( SELECT t.pid FROM fire_org t WHERE t.org_id = '" + orgId + @"' ),''), ',', '" + orgId + @"' )
FROM
DUAL)) cids ) s WHERE find_in_set(o.org_id,cids)
union
select e.users_uid id,e.emp_name name,IF((ISNULL(e.dept_id) > 0 or LENGTH(trim(e.dept_id))=0),e.org_id,e.dept_id) pid, 'emp' type,
(case when e.is_leader is not null then e.is_leader else 1 end) sort,IF((ISNULL(PHOTO) > 0 or LENGTH(trim(PHOTO))=0),'images/imgPerDefaut.jpg',PHOTO) photo
from tbl_sys_emp e,(select get_Org_child_Dept_list_OrgIds((SELECT
CONCAT( IFNULL(( SELECT t.ORG_ID FROM fire_org t WHERE t.pid = '" + orgId + @"' and t.isorg = '1' ),''), ',', IFNULL(( SELECT t.pid FROM fire_org t WHERE t.org_id = '" + orgId + @"' ),''), ',', '" + orgId + @"' )
FROM
DUAL)) cids ) s
WHERE IS_ADMIN='0' and find_in_set(e.org_id,cids) and e.users_uid is not null and e.is_del != '1' order by type desc,sort ";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
public DataTable getEmpModelByUId(string uid)
{
string sql = "SELECT * from tbl_sys_emp where users_uid = '" + uid + "' ";
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 根据账号删除
/// </summary>
public bool DeleteByUid(string Uid)
{
string sql = "delete from TBL_SYS_EMP where USERS_UID = '" + Uid + "'";
try
{
FangYar.Common.MySqlHelper.ExecuteSql(sql);
return true;
}
catch
{
return false;
}
}
/// <summary>
/// 根据多个Uid获取多个cid
/// </summary>
public DataTable GetCidsByUids(string uids)
{
string sql = "select t.cid from TBL_SYS_EMP t where t.IS_ADMIN='0' and t.users_uid in (" + uids + ") and t.users_uid is not null and t.cid is not null and t.cid !='null'";
DataTable dt = new DataTable();
try
{
dt = FangYar.Common.MySqlHelper.QueryTable(sql);
}
catch (Exception e)
{
}
return dt;
}
/// <summary>
/// 人员在岗统计
/// </summary>
public DataTable AppPersonSta2(string orgId, string findDate)
{
StringBuilder sql = new StringBuilder();
sql.Append("select org_id,org_name,PID,sumNum,lNum,tNum,(sumNum - lNum - tNum) as dNum,case sumNum when 0 then '0' else concat(substr(((sumNum - lNum - tNum) / sumNum) * 100.00 , 1 , 5) , '%') end as dRatio from (");
sql.Append("select o.org_id,o.org_name,o.PID,");
sql.Append("(select count(e.id) from tbl_sys_emp e where e.IS_ADMIN='0' and e.org_id = o.org_id and e.is_del = '0' ) sumNum,");
sql.Append("(select count(distinct l.ppl_id) from oa_leave l where l.ppl_id in (select ee.users_uid from tbl_sys_emp ee where ee.IS_ADMIN='0' and ee.org_id = o.org_id) and STATE = '1' ");
sql.Append("and date_format(S_TIME,'%Y-%m-%d %H:%i:%s') <= date_format('" + findDate + "','%Y-%m-%d %H:%i:%s') ");
sql.Append("and date_format(E_TIME,'%Y-%m-%d %H:%i:%s') >= date_format('" + findDate + "','%Y-%m-%d %H:%i:%s')) as lNum,");
sql.Append("(select count(distinct t.ppl_id) from oa_tolerance t where t.ppl_id in (select ee.users_uid from tbl_sys_emp ee where ee.IS_ADMIN='0' and ee.org_id = o.org_id) and STATE = '1' ");
sql.Append("and date_format(S_TIME,'%Y-%m-%d %H:%i:%s') <= date_format('" + findDate + "','%Y-%m-%d %H:%i:%s') ");
sql.Append("and date_format(E_TIME,'%Y-%m-%d %H:%i:%s') >= date_format('" + findDate + "','%Y-%m-%d %H:%i:%s')) as tNum ");
sql.Append("from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where type = '0' and find_in_set(o.org_id,cids) ) t");
return FangYar.Common.MySqlHelper.QueryTable(sql.ToString());
}
/// <summary>
/// 获取Tree 机构-部门-员工(包含所有下级,获取UID)
/// </summary>
/// <param name="orgId">机构ID</param>
/// <returns></returns>
public DataTable getOrgTree3(string orgId)
{
//消防机构-部门(只查询含有部门ID的人员、部门分隶属关系展示)
string sql = "select o.org_id id,o.org_name name,o.pid pid,'org' type,o.org_no sort,'' sex,'' age from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s" +
" where find_in_set(org_id,cids) union " +
" select e.users_uid id, e.emp_name name, case when(select a.pid from fire_org a where a.org_id = e.dept_id) is null " +
" then org_id else e.dept_id end pid, 'emp' type, e.is_leader " +
" sort, case e.emp_sex when '男' then '0' when '女' then '1' else '0' end,(date_format(now(),'%Y')-" +
" SUBSTR(birthday, 1, 4)) from tbl_sys_emp e where e.org_id in (select org_id from fire_org fo,(select get_Org_child_list('" + orgId + "') cids ) s " +
" where find_in_set(fo.org_id,cids) ) and e.users_uid is not null" +
" and is_del != '1' and IS_ADMIN='0' order by sort desc";
return FangYar.Common.MySqlHelper.QueryTable(sql);
}
/// <summary>
/// 根据用户账号获取个人信息:
/// 所属机构、联系方式、消防救援衔、入伍时间、政治面貌、岗位、兴趣爱好
/// </summary>
public DataTable GetHealthUserInfoByUid(string userUid)
{
StringBuilder strSql = new StringBuilder();
strSql.Append(" SELECT t.EMP_MOBILE,t.ENLISTED_TIME,PHOTO,");
strSql.Append(" (select o.org_name from fire_org o where o.org_id = t.org_id) ORG_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'POLTYPE' and dic_value = t.POL) POL_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'FACETYPE' and dic_value = t.FACE) FACE_NAME,");
strSql.Append(" (select dic_text from tbl_sys_dicdetail where mod_code = 'PROFTYPE' and dic_value = t.PROF) PROF_NAME");
strSql.Append(" FROM TBL_SYS_EMP t WHERE t.IS_ADMIN='0' and USERS_UID = '" + userUid + "'");
return FangYar.Common.MySqlHelper.QueryTable(strSql.ToString());
}
}
}