SlmDlivDir.cs 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Data;
  6. using System.Collections;
  7. using System.ComponentModel;
  8. using System.Drawing;
  9. using System.Windows.Forms;
  10. using CoreFS.CA06;
  11. using Infragistics.Win.UltraWinGrid;
  12. namespace Core.StlMes.Client.Sale.BLL.SaleBusinessMgt.Plan
  13. {
  14. public class SlmDlivDir : SaleBusinessMgt.BllBase.BaseBll
  15. {
  16. public SlmDlivDir(OpeBase ob)
  17. : base(ob)
  18. {
  19. }
  20. private DataSet GetSlmDlivDir(string sqlCondition)
  21. {
  22. string sqlStr = SqlCollection.Plan.QUERY_SLM_DLIV_DIR;
  23. sqlStr = string.Format(sqlStr,base.DateTimeTocharFormat,sqlCondition);
  24. DataSet ds = base.ExecuteQuery(sqlStr);
  25. return ds;
  26. }
  27. private DataSet GetSlmDlivDirDetail(string sqlCondition)
  28. {
  29. string sqlStr = SqlCollection.Plan.QUERY_SLM_DELV_DIR_DETAIL;
  30. sqlStr = string.Format(sqlStr, base.DateTimeTocharFormat, sqlCondition);
  31. DataSet ds = base.ExecuteQuery(sqlStr);
  32. return ds;
  33. }
  34. private DataSet GetSlmDlivOrder(string sqlConditon)
  35. {
  36. string sqlStr = SqlCollection.Plan.QUERY_ORDER_DLIV;
  37. sqlStr = string.Format(sqlStr, sqlConditon);
  38. DataSet ds = base.ExecuteQuery(sqlStr);
  39. return ds;
  40. }
  41. public DataSet GetSlmDlivOrderByCustomerNo(string customerNo)
  42. {
  43. string sqlCondition = string.Format( " and b.customer_no = '{0}' and a.order_ln_status = '8' ",customerNo);
  44. return GetSlmDlivOrder(sqlCondition);
  45. }
  46. public DataSet GetSlmDlivOrderByOrderNo(string orderNo)
  47. {
  48. string sqlCondition = string.Format( " and a.order_no = '{0}' and a.order_ln_status = '8' ",orderNo);
  49. return GetSlmDlivOrder(sqlCondition);
  50. }
  51. //order_bdate
  52. public DataSet GetCarsSlmDlivOrder(DateTime orderBeginDate,DateTime orderEndDate)
  53. {
  54. string sqlCondition = " and a.order_ln_status = '8' ";
  55. sqlCondition += Util.ConverObject.ConvertDateTimeValueToDbLanguage("b.order_bdate", orderBeginDate, orderEndDate);
  56. return Util.UtilDataSet.GetDataSetWithRowFilter(GetSlmDlivOrder(sqlCondition), "TRANSIT_TYP",Trans_typeCar);
  57. }
  58. public DataSet GetShipSlmDlivOrder(DateTime orderBeginDate, DateTime orderEndDate)
  59. {
  60. string sqlCondition = " and a.order_ln_status = '8' ";
  61. sqlCondition += Util.ConverObject.ConvertDateTimeValueToDbLanguage("b.order_bdate", orderBeginDate, orderEndDate);
  62. return Util.UtilDataSet.GetDataSetWithRowFilter(GetSlmDlivOrder(sqlCondition), "TRANSIT_TYP", Trans_typeShip);
  63. }
  64. public DataSet GetSlmDlivDirByDlivDirNo(string dlivDirNo)
  65. {
  66. string sqlConditon = string.Format(" and dliv_dirno = '{0}' ",dlivDirNo);
  67. return this.GetSlmDlivDir(sqlConditon);
  68. }
  69. public DataSet GetValidSlmDlivDirByPlanDate(System.DateTime planDate)
  70. {
  71. string sqlConditon = string.Format(" and plandate = '{0}' ", Util.ConverObject.ConverDateTimeToyyyyMMdd(planDate));
  72. return this.GetSlmDlivDir(sqlConditon);
  73. }
  74. public DataSet GetValidSlmDlivDirByPlanBeginDateAndEndDate(DateTime planBeginDate, DateTime planEndDate)
  75. {
  76. string sqlConditon = string.Format(" and plandate >= '{0}' and plandate <= '{1}' ", Util.ConverObject.ConverDateTimeToyyyyMMdd(planBeginDate),
  77. Util.ConverObject.ConverDateTimeToyyyyMMdd(planEndDate));
  78. return this.GetSlmDlivDir(sqlConditon);
  79. }
  80. public DataSet GetSlmDlivDirDetailByDlivDirNo(string dlivDirNo)
  81. {
  82. string sqlConditon = string.Format(" and dliv_dirno = '{0}' ", dlivDirNo);
  83. return GetSlmDlivDirDetail(sqlConditon);
  84. }
  85. public Hashtable GetSlmDlivDirDetailTotalInfoByDlivDirNoList(ArrayList dlivDirno)
  86. {
  87. string sqlconditon = base.GetSqlConditionByColumnNameAndListStringValue("dliv_dirno", dlivDirno);
  88. DataSet dsDetail = GetSlmDlivDirDetail(sqlconditon);
  89. Hashtable hs = new Hashtable();
  90. foreach (string s in dlivDirno)
  91. {
  92. DataRow[] drs = dsDetail.Tables[0].Select(string.Format(" DLIV_DIRNO = '{0}' ",s));
  93. hs.Add(s, GetSlmDlivDirDetailTotalInfoByDlivDirNo(s, drs));
  94. }
  95. return hs;
  96. }
  97. public void InsertCarDliv(Hashtable hsParam, out string errMsg)
  98. {
  99. errMsg = "";
  100. CoreClientParam param = base.GetCoreClientParam(_ServerName, "deleteHead", new object[] { hsParam });
  101. CoreClientParam result = base.fr.ExecuteNonQuery(param, CoreInvokeType.Internal);
  102. result.IfShowErrMsg = false;
  103. errMsg = base.GetReturnErrorInfo(result);
  104. }
  105. public void DeleteCarDliv(string dliv_dirNo,string deleteMan,out string errMsg)
  106. {
  107. errMsg = "";
  108. }
  109. /// <summary>
  110. /// 更新计划明细重量
  111. /// </summary>
  112. /// <param name="dliv_dirNo"></param>
  113. /// <param name="seq"></param>
  114. /// <param name="newWgt"></param>
  115. /// <param name="updateMan"></param>
  116. /// <param name="errMsg"></param>
  117. public void updateCarDlivDetailWeight(string dliv_dirNo,string seq,double newWgt,string updateMan,out string errMsg)
  118. {
  119. errMsg = "";
  120. }
  121. public Hashtable GetSlmDlivDirDetailTotalInfoByDlivDirNo(string dlivDirNo,DataRow [] drsdliv)
  122. {
  123. System.Collections.Hashtable hs = new System.Collections.Hashtable();
  124. DataRow[] dsDetail = drsdliv;
  125. double weight = 0;
  126. double QUANTITY = 0;
  127. double money = 0;
  128. string height = "";
  129. string steelcode = "";
  130. string usedcd = "";
  131. ArrayList listSteelcode = new ArrayList();
  132. ArrayList used_cd = new ArrayList();
  133. ArrayList heightlist = new ArrayList();
  134. foreach (DataRow dr in dsDetail)
  135. {
  136. weight += Util.ConverObject.ConvertToDouble(dr["WEIGHT"].ToString());
  137. QUANTITY += Util.ConverObject.ConvertToDouble(dr["QUANTITY"].ToString());
  138. money += Math.Round(Util.ConverObject.ConvertToDouble(dr["WEIGHT"].ToString()) *
  139. Util.ConverObject.ConvertToDouble(dr["PRICE"].ToString()),3);
  140. height = dr["HEIGHT"].ToString();
  141. steelcode = dr["STEEL_CODE"].ToString();
  142. usedcd = dr["USED_CD"].ToString();
  143. if (!listSteelcode.Contains(steelcode))
  144. listSteelcode.Add(steelcode);
  145. if (!used_cd.Contains(usedcd))
  146. used_cd.Add(usedcd);
  147. if (!heightlist.Contains(height))
  148. heightlist.Add(height);
  149. }
  150. height = "";
  151. steelcode = "";
  152. usedcd = "";
  153. foreach (string s in listSteelcode)
  154. {
  155. steelcode = steelcode + s + "/";
  156. }
  157. foreach (string s in used_cd)
  158. {
  159. usedcd = usedcd + s + "/";
  160. }
  161. foreach (string s in heightlist)
  162. {
  163. height = height + s + "/";
  164. }
  165. hs.Add(dlivDirNo, new Object[] { weight, QUANTITY, money, steelcode, usedcd, height });
  166. return hs;
  167. }
  168. private string _ServerName = "core.stlmes.server.sale.service.order.SlmBaseOrder";
  169. }
  170. }