WD_NoticeInfoDataAccess.cs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. using System;
  2. using Dapper;
  3. using HNWD.Pregrant.Model;
  4. using System.Collections.Generic;
  5. using System.Text;
  6. namespace HNWD.Pregrant.DataAccess
  7. {
  8. public class WD_NoticeInfoDataAccess : GenericDataAccess<WD_NoticeInfo>
  9. {
  10. private WD_NoticeInfo wd_NoticeInfo= null;
  11. public WD_NoticeInfoExt ext = new WD_NoticeInfoExt();
  12. private readonly static WD_NoticeInfoDataAccess wd_NoticeInfoDataAccess = new WD_NoticeInfoDataAccess(null);
  13. private readonly static object lockobj = new object();
  14. public static WD_NoticeInfoDataAccess GetInstance()
  15. {
  16. lock (lockobj)
  17. {
  18. return wd_NoticeInfoDataAccess;
  19. }
  20. }
  21. private WD_NoticeInfoDataAccess(WD_NoticeInfo wd_NoticeInfo)
  22. {
  23. this.wd_NoticeInfo = wd_NoticeInfo;
  24. }
  25. //public List<WD_NoticeInfo> QueryAll()
  26. //{
  27. // string strSql = " select {0} from [WD_NoticeInfo] " ;
  28. // ext.NoticeArray = this.Query(strSql, new WD_NoticeInfo());
  29. // ext.messageDataList = ext.NoticeArray;
  30. // ext.NoticeArray.ForEach(f => f.bSuccess = this.bSuccess);
  31. // ext.NoticeArray.ForEach(f => f.Code = this.Code);
  32. // ext.NoticeArray.ForEach(f => f.Message = this.Message);
  33. // ext.NoticeArray.ForEach(f => f.Rows = this.Rows);
  34. // ext.messageDataList.ForEach(f => f.bSuccess = this.bSuccess);
  35. // ext.messageDataList.ForEach(f => f.Code = this.Code);
  36. // ext.messageDataList.ForEach(f => f.Message = this.Message);
  37. // ext.messageDataList.ForEach(f => f.Rows = this.Rows);
  38. // ext.bSuccess = this.bSuccess;
  39. // ext.Code = this.Code;
  40. // ext.Message = this.Message;
  41. // ext.Rows = this.Rows;
  42. // return ext.NoticeArray;
  43. //}
  44. public List<WD_NoticeInfo> QueryAll()
  45. {
  46. //string strSql = " select {0} from [WD_NoticeInfo] where abs(DATEDIFF(n,getdate(),[NOTICE_STARTTIME])) <4 and DATEDIFF(n,getdate(),[NOTICE_ENDTIME] )>0 and [NOTICE_PATIENT_ID] =" + this.wd_NoticeInfo.NOTICE_PATIENT_ID.Trim();
  47. string strSql = " select {0} from [WD_NoticeInfo] where abs(DATEDIFF(n,getdate(),[NOTICE_STARTTIME])) <4 and DATEDIFF(n,getdate(),[NOTICE_ENDTIME] )>0 ";
  48. ext.NoticeArray = this.Query(strSql, new WD_NoticeInfo());
  49. ext.messageDataList = ext.NoticeArray;
  50. ext.NoticeArray.ForEach(f => f.bSuccess = this.bSuccess);
  51. ext.NoticeArray.ForEach(f => f.Code = this.Code);
  52. ext.NoticeArray.ForEach(f => f.Message = this.Message);
  53. ext.NoticeArray.ForEach(f => f.Rows = this.Rows);
  54. ext.messageDataList.ForEach(f => f.bSuccess = this.bSuccess);
  55. ext.messageDataList.ForEach(f => f.Code = this.Code);
  56. ext.messageDataList.ForEach(f => f.Message = this.Message);
  57. ext.messageDataList.ForEach(f => f.Rows = this.Rows);
  58. ext.bSuccess = this.bSuccess;
  59. ext.Code = this.Code;
  60. ext.Message = this.Message;
  61. ext.Rows = this.Rows;
  62. return ext.NoticeArray;
  63. }
  64. public void Business(List<WD_NoticeInfo> il, List<WD_NoticeInfo> ul, List<WD_NoticeInfo> dl)
  65. {
  66. string strSql_i = " Insert into WD_NoticeInfo([NOTICE_PATIENT_ID],[NOTICE_TEXT],[NOTICE_STARTTIME],[NOTICE_ENDTIME],[NOTICE_DATETIME]) VALUES ('{0}' , '{1}', '{2}', '{3}', '{4}') ";
  67. string strSql_u = " Update WD_NoticeInfo set NOTICE_PATIENT_ID = '{0}' , NOTICE_TEXT = '{1}' , NOTICE_STARTTIME = '{2}' , NOTICE_ENDTIME = '{3}' , NOTICE_DATETIME = '{4}' where ID = '{5}' ";
  68. string strSql_d = " delete WD_NoticeInfo where ID = '{0}' ";
  69. StringBuilder sb_i = new StringBuilder();
  70. foreach (WD_NoticeInfo wd in il)
  71. {
  72. sb_i.AppendFormat(strSql_i, wd.NOTICE_PATIENT_ID, wd.NOTICE_TEXT, wd.NOTICE_STARTTIME, wd.NOTICE_ENDTIME, wd.NOTICE_DATETIME);
  73. }
  74. StringBuilder sb_u = new StringBuilder();
  75. foreach (WD_NoticeInfo wd in ul)
  76. {
  77. sb_u.AppendFormat(strSql_u, wd.NOTICE_PATIENT_ID, wd.NOTICE_TEXT, wd.NOTICE_STARTTIME, wd.NOTICE_ENDTIME, wd.NOTICE_DATETIME ,wd.ID);
  78. }
  79. StringBuilder sb_d = new StringBuilder();
  80. foreach (WD_NoticeInfo wd in dl)
  81. {
  82. sb_d.AppendFormat(strSql_d, wd.ID);
  83. }
  84. this.Execute(sb_i.ToString(), sb_u.ToString(), sb_d.ToString());
  85. }
  86. }
  87. }