WD_ProgramInfoDataAccess.cs 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  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_ProgramInfoDataAccess : GenericDataAccess<WD_ProgramInfo>
  9. {
  10. private WD_ProgramInfo wd_ProgramInfo = null;
  11. public WD_ProgramInfoExt ext = new WD_ProgramInfoExt();
  12. private WD_ProgramInfoDataAccess(WD_ProgramInfo wd_ProgramInfo)
  13. {
  14. this.wd_ProgramInfo = wd_ProgramInfo;
  15. }
  16. private readonly static WD_ProgramInfoDataAccess wd_ProgramInfoDataAccess = new WD_ProgramInfoDataAccess(null);
  17. private readonly static object lockobj = new object();
  18. public static WD_ProgramInfoDataAccess GetInstance()
  19. {
  20. lock (lockobj)
  21. {
  22. return wd_ProgramInfoDataAccess;
  23. }
  24. }
  25. public List<WD_ProgramInfo> QueryAll()
  26. {
  27. string strSql = " select {0} from [WD_ProgramInfo] ";
  28. ext.messageDataList = this.Query(strSql, new WD_ProgramInfo());
  29. ext.messageDataList.ForEach(f => f.bSuccess = this.bSuccess);
  30. ext.messageDataList.ForEach(f => f.Code = this.Code);
  31. ext.messageDataList.ForEach(f => f.Message = this.Message);
  32. ext.messageDataList.ForEach(f => f.Rows = this.Rows);
  33. ext.bSuccess = this.bSuccess;
  34. ext.Code = this.Code;
  35. ext.Message = this.Message;
  36. ext.Rows = this.Rows;
  37. return ext.messageDataList;
  38. }
  39. public void Business(List<WD_ProgramInfo> il, List<WD_ProgramInfo> ul, List<WD_ProgramInfo> dl)
  40. {
  41. StringBuilder strSql_i = new StringBuilder( " INSERT INTO WD_ProgramInfo( " );
  42. strSql_i.Append( " PROGRAM_NAME ,PROGRAM_TYPE , PROGRAM_X , PROGRAM_Y , PROGRAM_WIDTH ," );
  43. strSql_i.Append( " PROGRAM_HEIGHT ,PROGRAM_TEXT , PROGRAM_IMAGE , PROGRAM_MATRIX , PROGRAM_FORMAT , " );
  44. strSql_i.Append(" PROGRAM_ALIGN ,PROGRAM_STAYINGTIME ,PROGRAM_DEVICE_ID , PROGRAM_DATETIME ");
  45. strSql_i.Append( " ) values (" );
  46. strSql_i.Append( " '{0}' ,'{1}' , '{2}' , '{3}' , '{4}' , " );
  47. strSql_i.Append( " '{5}' ,'{6}' , '{7}' , '{8}' , '{9}' , " );
  48. strSql_i.Append( " '{10}' ,'{11}' , '{12}' , '{13}' " );
  49. strSql_i.Append( " ) " );
  50. StringBuilder strSql_u = new StringBuilder(" UPDATE WD_ProgramInfo SET ");
  51. strSql_u.Append(" PROGRAM_NAME = '{0}' ,PROGRAM_TYPE = '{1}' , PROGRAM_X = '{2}', PROGRAM_Y = '{3}', PROGRAM_WIDTH= '{4}' ,");
  52. strSql_u.Append(" PROGRAM_HEIGHT = '{5}',PROGRAM_TEXT= '{6}' , PROGRAM_IMAGE= '{7}' , PROGRAM_MATRIX= '{8}' , PROGRAM_FORMAT= '{9}' , ");
  53. strSql_u.Append(" PROGRAM_ALIGN = '{10}' ,PROGRAM_STAYINGTIME= '{11}' ,PROGRAM_DEVICE_ID= '{12}' , PROGRAM_DATETIME = '{13}'");
  54. strSql_u.Append(" WHERE ID = '{14}' ");
  55. StringBuilder strSql_d = new StringBuilder(" delete WD_ProgramInfo where ID = '{0}' ");
  56. StringBuilder sb_i = new StringBuilder();
  57. foreach (WD_ProgramInfo wd in il)
  58. {
  59. sb_i.AppendFormat(strSql_i.ToString(), wd.PROGRAM_NAME , wd.PROGRAM_TYPE, wd.PROGRAM_X, wd.PROGRAM_Y, wd.PROGRAM_WIDTH,
  60. wd.PROGRAM_HEIGHT, wd.PROGRAM_TEXT, wd.PROGRAM_IMAGE, wd.PROGRAM_MATRIX , wd.PROGRAM_FORMAT ,
  61. wd.PROGRAM_ALIGN , wd.PROGRAM_STAYINGTIME, wd.PROGRAM_DEVICE_ID, wd.PROGRAM_DATETIME);
  62. }
  63. StringBuilder sb_u = new StringBuilder();
  64. foreach (WD_ProgramInfo wd in ul)
  65. {
  66. sb_u.AppendFormat(strSql_u.ToString(), wd.PROGRAM_NAME, wd.PROGRAM_TYPE, wd.PROGRAM_X, wd.PROGRAM_Y, wd.PROGRAM_WIDTH,
  67. wd.PROGRAM_HEIGHT, wd.PROGRAM_TEXT, wd.PROGRAM_IMAGE, wd.PROGRAM_MATRIX, wd.PROGRAM_FORMAT,
  68. wd.PROGRAM_ALIGN , wd.PROGRAM_STAYINGTIME, wd.PROGRAM_DEVICE_ID, wd.PROGRAM_DATETIME , wd.ID);
  69. }
  70. StringBuilder sb_d = new StringBuilder();
  71. foreach (WD_ProgramInfo wd in dl)
  72. {
  73. sb_d.AppendFormat(strSql_d.ToString(), wd.ID);
  74. }
  75. StringBuilder sb_append = new StringBuilder();
  76. sb_append.Append(" update WD_RunProfile set LEDDeviceFlag = 1 ");
  77. this.Execute(sb_i.ToString(), sb_u.ToString(), sb_d.ToString() , sb_append.ToString());
  78. }
  79. }
  80. }