CeErpUser.cs 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352
  1. using Castle.ActiveRecord;
  2. using NHibernate.Criterion;
  3. using System;
  4. using System.Text;
  5. namespace BizCom
  6. {
  7. [ActiveRecord("CE_ErpUser")]
  8. public class CeErpUser : ComBase<CeErpUser>
  9. {
  10. /// <summary>
  11. /// 内部编号
  12. /// </summary>
  13. [PrimaryKey(PrimaryKeyType.Native)]
  14. public int ID { get; set; }
  15. private CeErpUserInfo _person;
  16. [BelongsTo("InfoID", Insert = false, NotFoundBehaviour = NotFoundBehaviour.Ignore, Cascade = CascadeEnum.None, Update = false)]
  17. public CeErpUserInfo Person
  18. {
  19. get { return _person; }
  20. set { _person = value; }
  21. }
  22. private int _infoID = 0;
  23. /// <summary>
  24. ///人员编号
  25. /// </summary>
  26. [Property]
  27. public int InfoID
  28. {
  29. get { return _infoID; }
  30. set { _infoID = value; }
  31. }
  32. private string _account = "";
  33. /// <summary>
  34. ///账号
  35. /// </summary>
  36. [Property]
  37. public string Account
  38. {
  39. get { return _account; }
  40. set { _account = value; }
  41. }
  42. private string _passWord = "";
  43. /// <summary>
  44. ///密码
  45. /// </summary>
  46. [Property]
  47. public string PassWord
  48. {
  49. get { return _passWord; }
  50. set { _passWord = value; }
  51. }
  52. /// <summary>
  53. ///创建时间
  54. /// </summary>
  55. [Property]
  56. public DateTime? CreateTime { get; set; }
  57. /// <summary>
  58. ///上一次登陆时间
  59. /// </summary>
  60. [Property]
  61. public DateTime? PreLoginTime { get; set; }
  62. /// <summary>
  63. ///最后一次登录时间
  64. /// </summary>
  65. [Property]
  66. public DateTime? CurLoginTime { get; set; }
  67. private string _loginIP = "";
  68. /// <summary>
  69. ///登录IP
  70. /// </summary>
  71. [Property]
  72. public string LoginIP
  73. {
  74. get { return _loginIP; }
  75. set { _loginIP = value; }
  76. }
  77. private string _ticket = "";
  78. /// <summary>
  79. ///登录票根
  80. /// </summary>
  81. [Property]
  82. public string Ticket
  83. {
  84. get { return _ticket; }
  85. set { _ticket = value; }
  86. }
  87. private int _state = 0;
  88. /// <summary>
  89. ///当前状态
  90. /// </summary>
  91. [Property]
  92. public int State
  93. {
  94. get { return _state; }
  95. set { _state = value; }
  96. }
  97. private string _station = "";
  98. /// <summary>
  99. ///站点
  100. /// </summary>
  101. [Property]
  102. public string Station
  103. {
  104. get { return _station; }
  105. set { _station = value; }
  106. }
  107. private string _Name = "";
  108. /// <summary>
  109. ///
  110. /// </summary>
  111. [Property]
  112. public string Name
  113. {
  114. get { return _Name; }
  115. set { _Name = value; }
  116. }
  117. private int _isApp = 0;
  118. /// <summary>
  119. ///
  120. /// </summary>
  121. [Property]
  122. public int isApp
  123. {
  124. get { return _isApp; }
  125. set { _isApp = value; }
  126. }
  127. private string _Code = "";
  128. /// <summary>
  129. ///
  130. /// </summary>
  131. [Property]
  132. public string Code
  133. {
  134. get { return _Code; }
  135. set { _Code = value; }
  136. }
  137. private bool _isOpen = false;
  138. /// <summary>
  139. ///
  140. /// </summary>
  141. [Property]
  142. public bool isOpen
  143. {
  144. get { return _isOpen; }
  145. set { _isOpen = value; }
  146. }
  147. private string _pemShop = "";
  148. /// <summary>
  149. ///
  150. /// </summary>
  151. [Property]
  152. public string pemShop
  153. {
  154. get { return _pemShop; }
  155. set { _pemShop = value; }
  156. }
  157. private string _pemDesign = "";
  158. /// <summary>
  159. ///
  160. /// </summary>
  161. [Property]
  162. public string pemDesign
  163. {
  164. get { return _pemDesign; }
  165. set { _pemDesign = value; }
  166. }
  167. private string _pemVend = "";
  168. /// <summary>
  169. ///
  170. /// </summary>
  171. [Property]
  172. public string pemVend
  173. {
  174. get { return _pemVend; }
  175. set { _pemVend = value; }
  176. }
  177. private string _pemLogistics = "";
  178. /// <summary>
  179. ///
  180. /// </summary>
  181. [Property]
  182. public string pemLogistics
  183. {
  184. get { return _pemLogistics; }
  185. set { _pemLogistics = value; }
  186. }
  187. private int _isMultiLogin = 0;
  188. /// <summary>
  189. ///是否可以多台登录
  190. /// </summary>
  191. [Property]
  192. public int IsMultiLogin
  193. {
  194. get { return _isMultiLogin; }
  195. set { _isMultiLogin = value; }
  196. }
  197. /// <summary>
  198. ///设计点上班时间
  199. /// </summary>
  200. [Property]
  201. public DateTime? OnDutyTime { get; set; }
  202. private string _teamIds = "";
  203. /// <summary>
  204. ///小组id
  205. /// </summary>
  206. [Property]
  207. public string TeamIds
  208. {
  209. get { return _teamIds; }
  210. set { _teamIds = value; }
  211. }
  212. private string _teamNames = "";
  213. /// <summary>
  214. ///小组人名
  215. /// </summary>
  216. [Property]
  217. public string TeamNames
  218. {
  219. get { return _teamNames; }
  220. set { _teamNames = value; }
  221. }
  222. /// <summary>
  223. ///下班时间
  224. /// </summary>
  225. [Property]
  226. public DateTime? OffDutyTime { get; set; }
  227. private string _pemExpress = "";
  228. /// <summary>
  229. ///可以使用的快递
  230. /// </summary>
  231. [Property]
  232. public string pemExpress
  233. {
  234. get { return _pemExpress; }
  235. set { _pemExpress = value; }
  236. }
  237. private string _manageOrgIds = "";
  238. /// <summary>
  239. /// 管理组织
  240. /// </summary>
  241. [Property]
  242. public string ManageOrgIds
  243. {
  244. get { return _manageOrgIds; }
  245. set { _manageOrgIds = value; }
  246. }
  247. public static CeErpUser GetByUserName(string username)
  248. {
  249. CeErpUser lcUser = FindFirst(Expression.Sql(string.Format("Name='{0}' ", username)));
  250. return lcUser;
  251. }
  252. public static CeErpUser Get(int uId, string pwd)
  253. {
  254. Castle.ActiveRecord.Queries.SimpleQuery query = new Castle.ActiveRecord.Queries.SimpleQuery(typeof(CeErpUser), @"from CeErpUser user where user.ID = ? and user.PassWord = ?", uId, pwd);
  255. CeErpUser[] users = (CeErpUser[])ExecuteQuery(query);
  256. if (users.Length > 0) return users[0];
  257. return null;
  258. //return FindFirst(Expression.Sql(string.Format("ID={0} and Password='{1}'", uId, pwd)));
  259. }
  260. /// <summary>
  261. /// 查询cookie的票据是否符合
  262. /// </summary>
  263. /// <param name="userName"></param>
  264. /// <param name="ticket"></param>
  265. /// <returns></returns>
  266. public static CeErpUser GetUserByCookie(string account, string ticket)
  267. {
  268. CeErpUser lcUser = FindFirst(Expression.Sql(string.Format("Account='{0}' and Ticket='{1}'", account, ticket)));
  269. //FindFirst(Expression.And(Expression.Eq("Account", account), Expression.Eq("Ticket", ticket)));
  270. return lcUser;
  271. }
  272. public static CeErpUser GetByLogin(string account, string pwd)
  273. {
  274. return FindFirst(Expression.Sql(string.Format("Account='{0}' and PassWord='{1}' ", account, pwd)));
  275. }
  276. public static void ResetPwd(int id, string pwd)
  277. {
  278. string sql = "update ce_erpuser set password='" + pwd + "' where id=" + id;
  279. ExecuteNonQuery(sql);
  280. }
  281. public static void ResetPersonPwd(int pId, string pwd)
  282. {
  283. string sql = "update ce_erpuser set password='" + pwd + "' where infoid=" + pId;
  284. ExecuteNonQuery(sql);
  285. }
  286. public static void OpenAccount(int uid, string pwd)
  287. {
  288. StringBuilder sql = new StringBuilder();
  289. sql.AppendFormat("if (select count(0) from ce_erpuser where id={0} and password='')>0 begin ", uid);
  290. sql.AppendFormat(" update ce_erpuser set isopen=1,state=0,password='{1}' where id={0} ", uid, pwd);
  291. sql.Append(" end else begin ");
  292. sql.AppendFormat(" update ce_erpuser set isopen=1,state=0 where id={0} ", uid, pwd);
  293. sql.Append(" end ");
  294. ExecuteNonQuery(sql.ToString());
  295. }
  296. public static void FreezeAccount(int uid)
  297. {
  298. string sql = "update ce_erpuser set isopen=0,state=1 where id=" + uid;
  299. ExecuteNonQuery(sql);
  300. }
  301. public static int RealDel(int id)
  302. {
  303. StringBuilder str = new StringBuilder();
  304. str.AppendFormat("delete ce_erpuserinfo where id in(select infoid from ce_erpuser where id={0});", id);
  305. str.AppendFormat("delete from ce_erpuser where id={0};", id);
  306. return ExecuteNonQuery(str.ToString());
  307. }
  308. public static int IsOnDuty(int id)
  309. {
  310. StringBuilder str = new StringBuilder();
  311. str.AppendFormat("select OnDuty from view_ErpUser where id = {0};", id);
  312. return ExecuteNonQuery(str.ToString());
  313. }
  314. }
  315. }