using System; using System.Data; using System.Data.SqlClient; using System.Collections; using System.Collections.Generic; using AIMSModel; using AIMSObjectQuery; using HelperDB; using System.Text; namespace AIMSDAL { internal partial class DPerson { public static void Add(Person PersonObj) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into [Person]("); strSql.Append("No,Name,HelpCode,Sex,PassWord,DepId,RoleId,BirthDay,TimeToWork,Diploma,JobTitle,PersonType,PersonOrder,IsValid,OperatorNo,OperatorName,OperateDate"); strSql.Append(")"); strSql.Append(" values ("); strSql.Append("'" + PersonObj.No + "',"); strSql.Append("'" + PersonObj.Name + "',"); strSql.Append("'" + PersonObj.HelpCode + "',"); strSql.Append("'" + PersonObj.Sex + "',"); strSql.Append("'" + PersonObj.PassWord + "',"); strSql.Append("" + PersonObj.DepId + ","); strSql.Append("" + PersonObj.RoleId + ","); strSql.Append("'" + PersonObj.BirthDay + "',"); strSql.Append("'" + PersonObj.TimeToWork + "',"); strSql.Append("'" + PersonObj.Diploma + "',"); strSql.Append("'" + PersonObj.JobTitle + "',"); strSql.Append("'" + PersonObj.PersonType + "',"); strSql.Append("" + PersonObj.PersonOrder + ","); strSql.Append("" + PersonObj.IsValid + ","); strSql.Append("'" + PersonObj.OperatorNo + "',"); strSql.Append("'" + PersonObj.OperatorName + "',"); strSql.Append("'" + PersonObj.OperateDate + "'"); strSql.Append(")"); HelperDB.DbHelperSQL.ExecNonQuery(strSql.ToString()); } public static Person GetModel(int Id) { Person PersonObj = new Person(); StringBuilder strSql = new StringBuilder(); strSql.Append("select "); strSql.Append("Id,No,Name,HelpCode,Sex,PassWord,DepId,RoleId,BirthDay,TimeToWork,Diploma,JobTitle,PersonType,PersonOrder,IsValid,OperatorNo,OperatorName,OperateDate "); strSql.Append(" from Person "); strSql.Append(" where Id=" + Id + ""); DataSet ds = HelperDB.DbHelperSQL.GetDataSet(strSql.ToString()); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["Id"].ToString() != "") { PersonObj.Id = int.Parse(ds.Tables[0].Rows[0]["Id"].ToString()); } PersonObj.No = ds.Tables[0].Rows[0]["No"].ToString(); PersonObj.Name = ds.Tables[0].Rows[0]["Name"].ToString(); PersonObj.HelpCode = ds.Tables[0].Rows[0]["HelpCode"].ToString(); PersonObj.Sex = ds.Tables[0].Rows[0]["Sex"].ToString(); PersonObj.PassWord = ds.Tables[0].Rows[0]["PassWord"].ToString(); if (ds.Tables[0].Rows[0]["DepId"].ToString() != "") { PersonObj.DepId = int.Parse(ds.Tables[0].Rows[0]["DepId"].ToString()); } if (ds.Tables[0].Rows[0]["RoleId"].ToString() != "") { PersonObj.RoleId = int.Parse(ds.Tables[0].Rows[0]["RoleId"].ToString()); } if (ds.Tables[0].Rows[0]["BirthDay"].ToString() != "") { PersonObj.BirthDay = ds.Tables[0].Rows[0]["BirthDay"].ToString(); } if (ds.Tables[0].Rows[0]["TimeToWork"].ToString() != "") { PersonObj.TimeToWork = ds.Tables[0].Rows[0]["TimeToWork"].ToString(); } PersonObj.Diploma = ds.Tables[0].Rows[0]["Diploma"].ToString(); PersonObj.JobTitle = ds.Tables[0].Rows[0]["JobTitle"].ToString(); PersonObj.PersonType = ds.Tables[0].Rows[0]["PersonType"].ToString(); if (ds.Tables[0].Rows[0]["PersonOrder"].ToString() != "") { PersonObj.PersonOrder = int.Parse(ds.Tables[0].Rows[0]["PersonOrder"].ToString()); } if (ds.Tables[0].Rows[0]["IsValid"].ToString() != "") { PersonObj.IsValid = int.Parse(ds.Tables[0].Rows[0]["IsValid"].ToString()); } PersonObj.OperatorNo = ds.Tables[0].Rows[0]["OperatorNo"].ToString(); PersonObj.OperatorName = ds.Tables[0].Rows[0]["OperatorName"].ToString(); if (ds.Tables[0].Rows[0]["OperateDate"].ToString() != "") { PersonObj.OperateDate = DateTime.Parse(ds.Tables[0].Rows[0]["OperateDate"].ToString()); } } return PersonObj; } public static DataTable GetPersonDataTable() { StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT p.Id,p.No,p.Name,p.HelpCode,p.Sex,p.PassWord,d.Name AS DepName,r.RoleName,p.BirthDay,p.TimeToWork,"); strSql.Append("p.Diploma,p.JobTitle,p.PersonType,p.PersonOrder,CASE p.IsValid WHEN 1 THEN '有效' WHEN 0 THEN '无效' END AS IsValid FROM Person p "); strSql.Append("LEFT JOIN Department d ON d.Id =p.DepId "); strSql.Append("LEFT JOIN [Role] r ON r.Id = p.RoleId "); return HelperDB.DbHelperSQL.GetDataTable(strSql.ToString()); } public static DataTable GetPersonDataTable(string name, string DeptName, bool IsValid) { StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT p.Id,p.No,p.Name,p.HelpCode,p.Sex,p.PassWord,d.Name AS DepName,r.RoleName,p.BirthDay,p.TimeToWork,"); strSql.Append("p.Diploma,p.JobTitle,p.PersonType,p.PersonOrder,CASE p.IsValid WHEN 1 THEN '有效' WHEN 0 THEN '无效' END AS IsValid FROM Person p "); strSql.Append("LEFT JOIN Department d ON d.Id =p.DepId "); strSql.Append("LEFT JOIN [Role] r ON r.Id = p.RoleId "); if (name.Length > 0) strSql.Append(" WHERE p.No like '%" + name + "%' Or p.Name like '%" + name + "%' Or p.HelpCode like '%" + name + "%' "); if (DeptName.Length > 0 && name.Length == 0) strSql.Append(" WHERE d.Name = '" + DeptName + "' "); else if (DeptName.Length > 0 && name.Length > 0) strSql.Append(" and d.Name = '" + DeptName + "' "); else if (IsValid == true) strSql.Append(" WHERE p.IsValid=1 "); return HelperDB.DbHelperSQL.GetDataTable(strSql.ToString()); } public static bool Login(string No, string PassWord) { string strSql = "SELECT * FROM Person p"; DataTable dt = HelperDB.DbHelperSQL.GetDataTable(strSql.ToString()); if (dt.Rows.Count > 0) return true; else return false; } public static Person GetModelByNo(string No) { Person PersonObj = new Person(); StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 "); strSql.Append("Id,No,Name,HelpCode,Sex,PassWord,DepId,RoleId,BirthDay,TimeToWork,Diploma,JobTitle,PersonType,PersonOrder,IsValid,OperatorNo,OperatorName,OperateDate "); strSql.Append(" from Person "); strSql.Append(" where No='" + No + "'"); DataSet ds = HelperDB.DbHelperSQL.GetDataSet(strSql.ToString()); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["Id"].ToString() != "") { PersonObj.Id = int.Parse(ds.Tables[0].Rows[0]["Id"].ToString()); } PersonObj.No = ds.Tables[0].Rows[0]["No"].ToString(); PersonObj.Name = ds.Tables[0].Rows[0]["Name"].ToString(); PersonObj.HelpCode = ds.Tables[0].Rows[0]["HelpCode"].ToString(); PersonObj.Sex = ds.Tables[0].Rows[0]["Sex"].ToString(); PersonObj.PassWord = ds.Tables[0].Rows[0]["PassWord"].ToString(); if (ds.Tables[0].Rows[0]["DepId"].ToString() != "") { PersonObj.DepId = int.Parse(ds.Tables[0].Rows[0]["DepId"].ToString()); } if (ds.Tables[0].Rows[0]["RoleId"].ToString() != "") { PersonObj.RoleId = int.Parse(ds.Tables[0].Rows[0]["RoleId"].ToString()); } if (ds.Tables[0].Rows[0]["BirthDay"].ToString() != "") { PersonObj.BirthDay = ds.Tables[0].Rows[0]["BirthDay"].ToString(); } if (ds.Tables[0].Rows[0]["TimeToWork"].ToString() != "") { PersonObj.TimeToWork = ds.Tables[0].Rows[0]["TimeToWork"].ToString(); } PersonObj.Diploma = ds.Tables[0].Rows[0]["Diploma"].ToString(); PersonObj.JobTitle = ds.Tables[0].Rows[0]["JobTitle"].ToString(); PersonObj.PersonType = ds.Tables[0].Rows[0]["PersonType"].ToString(); if (ds.Tables[0].Rows[0]["PersonOrder"].ToString() != "") { PersonObj.PersonOrder = int.Parse(ds.Tables[0].Rows[0]["PersonOrder"].ToString()); } if (ds.Tables[0].Rows[0]["IsValid"].ToString() != "") { PersonObj.IsValid = int.Parse(ds.Tables[0].Rows[0]["IsValid"].ToString()); } PersonObj.OperatorNo = ds.Tables[0].Rows[0]["OperatorNo"].ToString(); PersonObj.OperatorName = ds.Tables[0].Rows[0]["OperatorName"].ToString(); if (ds.Tables[0].Rows[0]["OperateDate"].ToString() != "") { PersonObj.OperateDate = DateTime.Parse(ds.Tables[0].Rows[0]["OperateDate"].ToString()); } } return PersonObj; } public static DataTable GetPersonDataTableByDepId(int DepId, string HelpCode, string PersonType) { string strSql = ""; if (HelpCode == "简拼/汉字/ICD码") { HelpCode = ""; } string Depstr = ""; if (DepId != -1) Depstr = " AND p.DepId='" + DepId + "' "; if (PersonType == "医生") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType ='医生' " + Depstr + " AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } if (PersonType == "麻醉医生") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType ='麻醉医生' " + Depstr + " AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } if (PersonType == "麻醉护士") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType ='麻醉护士' " + Depstr + " AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } if (PersonType == "手术室护士") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType ='手术室护士' " + Depstr + " AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } if (PersonType == "护士") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType like '%护士%' " + Depstr + " AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } return HelperDB.DbHelperSQL.GetDataTable(strSql.ToString()); } public static DataTable GetSchedulingForSelect(DateTime time, string workerType)//int depId, { try { string sql = string.Empty; sql = "EXEC usp_GetSchedulingForSelect @DateTime = '" + time + "', @WorkerType= '" + workerType + "'";//, @DepId= " + depId return DBHelper.GetDataTable(sql); } catch (SqlException ex) { throw new Exception(ex.Message); } } public static List GetruleAnesthesiaDoctor(string IDS) { List ruleAnesthesiaDoctors = new List(); ruleAnesthesiaDoctors.Add(""); string sql = string.Format("select top 15 RuleAnesthesiaDoctor from [dbo].[OperationRecordInfo] where RuleAnesthesiaDoctor is not null and RuleAnesthesiaDoctor<>'' {0} group by RuleAnesthesiaDoctor order by count(RuleAnesthesiaDoctor) desc ", (IDS == "" ? "" : (" and RuleAnesthesiaDoctor Like '%" + IDS + "%' "))); DataTable obj = DBHelper.GetDataTable(sql); if (obj != null && obj.Rows.Count > 0) foreach (DataRow item in obj.Rows) { if (item[0].ToString().Trim() != "") ruleAnesthesiaDoctors.Add(item[0].ToString()); } return ruleAnesthesiaDoctors; } public static List GetruleNurse(string IDS) { List ruleNurses = new List(); ruleNurses.Add(""); string sql = string.Format("select top 15 ruleNurse from [dbo].[OperationRecordInfo] where ruleNurse is not null and ruleNurse<>'' {0} group by ruleNurse order by count(ruleNurse) desc ", (IDS == "" ? "" : (" and ruleNurse Like '%" + IDS + "%' "))); DataTable obj = DBHelper.GetDataTable(sql); if (obj != null && obj.Rows.Count > 0) foreach (DataRow item in obj.Rows) { if (item[0].ToString().Trim() != "") ruleNurses.Add(item[0].ToString()); } return ruleNurses; } public static List Getexperts(string IDS) { List expertss = new List(); expertss.Add(""); string sql = string.Format("select top 15 experts from [dbo].[OperationRecordInfo] where experts is not null and experts<>'' {0} group by experts order by count(experts) desc ", (IDS == "" ? "" : (" and experts Like '%" + IDS + "%' "))); DataTable obj = DBHelper.GetDataTable(sql); if (obj != null && obj.Rows.Count > 0) foreach (DataRow item in obj.Rows) { if (item[0].ToString().Trim() != "") expertss.Add(item[0].ToString()); } return expertss; } } }