293 lines
15 KiB
C#
293 lines
15 KiB
C#
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<string> GetruleAnesthesiaDoctor(string IDS)
|
|
{
|
|
List<string> ruleAnesthesiaDoctors = new List<string>();
|
|
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<string> GetruleNurse(string IDS)
|
|
{
|
|
List<string> ruleNurses = new List<string>();
|
|
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<string> Getexperts(string IDS)
|
|
{
|
|
List<string> expertss = new List<string>();
|
|
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;
|
|
}
|
|
}
|
|
}
|