华恒Mes鼎捷代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

212 lines
7.4 KiB

5 months ago
  1. using System;
  2. using System.Runtime.Remoting;
  3. using System.Linq;
  4. using System.Data.Linq;
  5. using System.Xml;
  6. using System.IO;
  7. using ICSSoft.Base.Config.AppConfig;
  8. using System.Collections.Specialized;
  9. using ICSSoft.Frame.Helper;
  10. using ICSSoft.Frame.Data.Entity;
  11. using ICSSoft.Frame.DataConnect.Action;
  12. using System.Data;
  13. using ICSSoft.Base.Config.DBHelper;
  14. using System.Collections.Generic;
  15. namespace ICSSoft.Frame.DataConnect
  16. {
  17. /// <summary>
  18. /// ReportFacade ��ժҪ˵����
  19. /// ���: ReportFacade.cs
  20. /// �޸���:
  21. /// �޸�����:
  22. /// �� ��:
  23. /// �� ��:
  24. /// </summary>
  25. public class ICSReport : MarshalByRefObject
  26. {
  27. private FramDataContext _domainDataProvider = null;
  28. public ICSReport()
  29. { }
  30. public override object InitializeLifetimeService()
  31. {
  32. return null;
  33. }
  34. public ICSReport(FramDataContext domainDataProvider)
  35. {
  36. this._domainDataProvider = domainDataProvider;
  37. }
  38. public FramDataContext DataProvider
  39. {
  40. get
  41. {
  42. if (_domainDataProvider == null)
  43. {
  44. _domainDataProvider = new FramDataContext(AppConfig.AppConnectString);
  45. }
  46. return _domainDataProvider;
  47. }
  48. }
  49. #region TimeDimensionʱ��ά��
  50. /// <summary>
  51. ///
  52. /// </summary>
  53. public object GetTimeDimension(int Date)
  54. {
  55. //return this.DataProvider.CustomSearch(typeof(TimeDimension), new object[] { Date });
  56. string sql = @"select * from ICSTimeDimension
  57. where DDATE='"+Date+"'";
  58. var objs = this._domainDataProvider.ExecuteQuery<ICSTimeDimension>(sql).ToList();
  59. if (objs == null || objs.Count < 1)
  60. return null;
  61. else
  62. return (ICSTimeDimension)objs[0];
  63. }
  64. public object[] QueryTimeDimensionYears()
  65. {
  66. //string sql = "SELECT DISTINCT YEAR FROM ICSTimeDimension ORDER BY YEAR";
  67. //return this.DataProvider.CustomQuery(typeof(TimeDimension), new SQLCondition(sql));
  68. string sql = @"select * from ICSTimeDimension order by YEAR";
  69. sql = string.Format(sql);
  70. DataTable dt = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  71. List<object> rtn = new List<object>();
  72. foreach (var item in dt.Rows)
  73. {
  74. rtn.Add(item as object);
  75. }
  76. return rtn.ToArray();
  77. }
  78. public object[] QueryTimeDimensionMonthsByYear(int year)
  79. {
  80. //string sql = "SELECT DISTINCT Dmonth FROM ICSTimeDimension WHERE YEAR=" + year + " ORDER BY Dmonth";
  81. //return this.DataProvider.CustomQuery(typeof(TimeDimension), new SQLCondition(sql));
  82. string sql = @"select * from ICSTimeDimension where YEAR='" + year + "' order by DMONTH";
  83. sql = string.Format(sql);
  84. DataTable dt = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  85. List<object> rtn = new List<object>();
  86. foreach (var item in dt.Rows)
  87. {
  88. rtn.Add(item as object);
  89. }
  90. return rtn.ToArray();
  91. }
  92. public object[] QueryTimeDimensionWeeksByYear(int year)
  93. {
  94. //string sql = "SELECT DISTINCT dweek FROM ICSTimeDimension WHERE YEAR=" + year + " ORDER BY dweek";
  95. //return this.DataProvider.CustomQuery(typeof(TimeDimension), new SQLCondition(sql));
  96. string sql = @"select * from ICSTimeDimension where YEAR='" + year + "' order by DWEEK";
  97. sql = string.Format(sql);
  98. DataTable dt = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  99. List<object> rtn = new List<object>();
  100. foreach (var item in dt.Rows)
  101. {
  102. rtn.Add(item as object);
  103. }
  104. return rtn.ToArray();
  105. }
  106. #endregion
  107. #region ���ݹ����졢�������롢��Դ������������������
  108. public object[] QueryMOCodeFromReportSOQty(int shiftDay, string shiftCode, string resCode)
  109. {
  110. //object[] returnValue = null;
  111. string sql = string.Empty;
  112. sql += "select distinct MOCODE " + "\r\n";
  113. sql += "from ICSRPTSOQTY,ICSMESEntityList " + "\r\n";
  114. sql += "where ICSRPTSOQTY.ICSMESEntityList_serial=ICSMESEntityList.serial " + "\r\n";
  115. //sql += "SELECT DISTINCT mocode " + "\r\n";
  116. //sql += "FROM tblrptsoqty, tblmesentitylist " + "\r\n";
  117. //sql += "WHERE tblrptsoqty.tblmesentitylist_serial = tblmesentitylist.serial " + "\r\n";
  118. if (shiftDay > 0)
  119. {
  120. sql += "and ICSRPTSOQTY.SHIFTDAY = " + shiftDay.ToString() + " " + "\r\n";
  121. }
  122. if (shiftCode.Trim().Length > 0)
  123. {
  124. sql += "and ICSMESEntityList.SHIFTCODE = '" + shiftCode.Trim().ToUpper() + "' " + "\r\n";
  125. }
  126. if (resCode.Trim().Length > 0)
  127. {
  128. sql += "and ICSMESEntityList.RESCODE = '" + resCode.Trim().ToUpper() + "' " + "\r\n";
  129. }
  130. //returnValue = this.DataProvider.CustomQuery(typeof(ReportSOQty), new SQLCondition(sql));
  131. //return returnValue;
  132. sql = string.Format(sql);
  133. DataTable dt = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  134. List<object> rtn = new List<object>();
  135. foreach (var item in dt.Rows)
  136. {
  137. rtn.Add(item as object);
  138. }
  139. return rtn.ToArray();
  140. }
  141. //���ݹ����졢���δ��롢��Դ���롢���������Ų�ѯͨ���ù����ĸ���
  142. public object[] QueryOPCountSumFromReportSOQty(int shiftDay, string shiftCode, string resCode, string moCode)
  143. {
  144. //object[] returnValue = null;
  145. string sql = string.Empty;
  146. sql += "select SUM(ICSRPTSOQTY.OpCount) as opcount " + "\r\n";
  147. sql += "from ICSRPTSOQTY,ICSMESEntityList " + "\r\n";
  148. sql += "where ICSRPTSOQTY.ICSMESEntityList_serial=ICSMESEntityList.serial " + "\r\n";
  149. if (shiftDay > 0)
  150. {
  151. sql += "and ICSRPTSOQTY.SHIFTDAY = " + shiftDay.ToString() + " " + "\r\n";
  152. }
  153. if (shiftCode.Trim().Length > 0)
  154. {
  155. sql += "and ICSMESEntityList.SHIFTCODE = '" + shiftCode.Trim().ToUpper() + "' " + "\r\n";
  156. }
  157. if (resCode.Trim().Length > 0)
  158. {
  159. sql += "and ICSMESEntityList.RESCODE = '" + resCode.Trim().ToUpper() + "' " + "\r\n";
  160. }
  161. if (moCode.Trim().Length > 0)
  162. {
  163. sql += "and ICSRPTSOQTY.MOCODE = '" + moCode.Trim().ToUpper() + "' " + "\r\n";
  164. }
  165. //returnValue = this.DataProvider.CustomQuery(typeof(ReportSOQty), new SQLCondition(sql));
  166. //return returnValue;
  167. sql = string.Format(sql);
  168. DataTable dt = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  169. List<object> rtn = new List<object>();
  170. foreach (var item in dt.Rows)
  171. {
  172. rtn.Add(item as object);
  173. }
  174. return rtn.ToArray();
  175. }
  176. #endregion
  177. }
  178. }