锐腾搅拌上料功能
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.

256 lines
8.5 KiB

5 months ago
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using ICSSoft.Frame.Data.Entity;
  6. using ICSSoft.Base.Config.DBHelper;
  7. using System.Data;
  8. using System.Data.SqlClient;
  9. using ICSSoft.Base.Config.AppConfig;
  10. namespace ICSSoft.Frame.Data.DAL
  11. {
  12. public class ICSShipToStockDAL
  13. {
  14. #region 增加修改
  15. public static void AddAndEdit(List<FormICSShipToStockUIModel> ShipToStockList, string dsconn)
  16. {
  17. FramDataContext db = new FramDataContext(dsconn);
  18. db.Connection.Open();
  19. db.Transaction = db.Connection.BeginTransaction();
  20. try
  21. {
  22. foreach (FormICSShipToStockUIModel ShipToStock in ShipToStockList)
  23. {
  24. bool isNew = false;
  25. var line = db.ICSShipToStock.SingleOrDefault(a => a.ID == ShipToStock.ID);
  26. if (line == null)
  27. {
  28. isNew = true;
  29. line = new ICSShipToStock();
  30. line.ID = AppConfig.GetGuid();
  31. }
  32. line.ITEMCODE = ShipToStock.ITEMCODE;
  33. line.VENDORCODE = ShipToStock.VENDORCODE;
  34. line.EFFDATE = Convert.ToDateTime(ShipToStock.EFFDATE);
  35. line.IVLDATE = Convert.ToDateTime(ShipToStock.IVLDATE);
  36. line.ACTIVE = ShipToStock.ACTIVE;
  37. line.MUSER = ShipToStock.MUSER;
  38. line.MUSERName = ShipToStock.MUSERName;
  39. line.MTIME = Convert.ToDateTime(ShipToStock.MTIME);
  40. line.WorkPoint = ShipToStock.WorkPoint;
  41. line.EATTRIBUTE1 = ShipToStock.EATTRIBUTE1;
  42. if (isNew)
  43. db.ICSShipToStock.InsertOnSubmit(line);
  44. db.SubmitChanges();
  45. }
  46. db.SubmitChanges();
  47. db.Transaction.Commit();
  48. }
  49. catch (Exception ex)
  50. {
  51. db.Transaction.Rollback();
  52. throw new Exception(ex.Message);
  53. }
  54. }
  55. #endregion
  56. ////#region 班次代码是否存在
  57. ////public static bool IsIncludingShiftCode(string shiftcode, string dsconn)
  58. ////{
  59. //// FramDataContext db = new FramDataContext(dsconn);
  60. //// db.Connection.Open();
  61. //// db.Transaction = db.Connection.BeginTransaction();
  62. //// try
  63. //// {
  64. //// var line = db.ICSSHIFT.SingleOrDefault(a => a.SHIFTCODE == shiftcode);
  65. //// if (line == null)
  66. //// return true;
  67. //// else
  68. //// return false;
  69. //// }
  70. //// catch (Exception ex)
  71. //// {
  72. //// db.Transaction.Rollback();
  73. //// throw ex;
  74. //// }
  75. ////}
  76. ////#endregion
  77. //#region 班次次序是否存在
  78. //public static bool IsIncludingInShiftSeq(int shiftsqe, string shifttypeid)
  79. //{
  80. // FramDataContext db = new FramDataContext(AppConfig.AppConnectString);
  81. // db.Connection.Open();
  82. // db.Transaction = db.Connection.BeginTransaction();
  83. // try
  84. // {
  85. // var line = db.ICSSHIFT.SingleOrDefault(a => a.SHIFTSEQ == shiftsqe && a.SHIFTTYPEID == shifttypeid);
  86. // if (line == null)
  87. // return true;
  88. // else
  89. // return false;
  90. // }
  91. // catch (Exception ex)
  92. // {
  93. // db.Transaction.Rollback();
  94. // throw ex;
  95. // }
  96. //}
  97. //#endregion
  98. //#region 班次代码是否在时段维护中使用
  99. //public static bool isIncludingInICSTP(List<string> idList, string dsconn)
  100. //{
  101. // FramDataContext db = new FramDataContext(dsconn);
  102. // db.Connection.Open();
  103. // db.Transaction = db.Connection.BeginTransaction();
  104. // try
  105. // {
  106. // bool flag = false;
  107. // var lines = db.ICSTP.Where(a => idList.Contains(a.SHIFTID));
  108. // if (lines.Count() != 0)
  109. // flag = true;
  110. // return flag;
  111. // }
  112. // catch (Exception ex)
  113. // {
  114. // //db.Transaction.Rollback();
  115. // throw ex;
  116. // }
  117. //}
  118. //#endregion
  119. public static List<FormICSShipToStockUIModel> SearchShipToStockByCode(string id, string dsconn)
  120. {
  121. List<FormICSShipToStockUIModel> returnshift = new List<FormICSShipToStockUIModel>();
  122. string sql = @"select a.ID as ID,b.INVCODE as ITEMCODE,c.VendorCode as VENDORCODE,a.EFFDATE as EFFDATE,a.IVLDATE as IVLDATE,a.ACTIVE as ACTIVE,a.MUSERName as MUSERName,a.MTIME as MTIME
  123. from ICSShipToStock a
  124. left join ICSINVENTORY b on a.ITEMCODE=b.INVCODE
  125. left join ICSVendor c on a.VENDORCODE=c.VendorCode
  126. where a.ID='{0}'";
  127. sql = string.Format(sql, id);
  128. DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
  129. foreach (DataRow dr in dt.Rows)
  130. {
  131. FormICSShipToStockUIModel shiftInfo = new FormICSShipToStockUIModel();
  132. shiftInfo.ID = dr["ID"].ToString();
  133. shiftInfo.inventory = new FormICSINVENTORYUIModel();
  134. shiftInfo.inventory.INVCODE = dr["ITEMCODE"].ToString();
  135. shiftInfo.vendor = new FormICSVendorUIModel();
  136. shiftInfo.vendor.VendorCode = dr["VENDORCODE"].ToString();
  137. shiftInfo.EFFDATE = Convert.ToDateTime(dr["EFFDATE"]);
  138. shiftInfo.IVLDATE = Convert.ToDateTime(dr["IVLDATE"]);
  139. shiftInfo.ACTIVE =dr["ACTIVE"].ToString();
  140. shiftInfo.MUSERName = dr["MUSERName"].ToString();
  141. shiftInfo.MTIME = System.DateTime.Parse(dr["MTIME"].ToString());
  142. if (!returnshift.Contains(shiftInfo))
  143. {
  144. returnshift.Add(shiftInfo);
  145. }
  146. }
  147. return returnshift;
  148. }
  149. public static DataTable SelectShiftTypeCode()
  150. {
  151. string sql = @"select SHIFTTYPECODE as [班制代码]
  152. from dbo.ICSSHIFTTYPE
  153. where 1=1";
  154. sql = string.Format(sql);
  155. DataTable dt = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  156. return dt;
  157. }
  158. public static DataTable SelectShiftTypeId(string str)
  159. {
  160. string sql = @"select ID
  161. from dbo.ICSSHIFTTYPE
  162. where SHIFTTYPECODE='" + str + "'";
  163. sql = string.Format(sql);
  164. DataTable dt = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  165. return dt;
  166. }
  167. #region delete
  168. public static void delete(List<String> guidList)
  169. {
  170. FramDataContext db = new FramDataContext(AppConfig.AppConnectString);
  171. db.Connection.Open();
  172. db.Transaction = db.Connection.BeginTransaction();
  173. try
  174. {
  175. var lines = db.ICSShipToStock.Where(a => guidList.Contains(a.ID));
  176. db.ICSShipToStock.DeleteAllOnSubmit(lines);
  177. db.SubmitChanges();
  178. db.Transaction.Commit();
  179. }
  180. catch (Exception ex)
  181. {
  182. db.Transaction.Rollback();
  183. throw ex;
  184. }
  185. }
  186. #endregion
  187. public static DataTable GetShiftCode()
  188. {
  189. try
  190. {
  191. string sql = @"select TOP 1 [SHIFTCODE]
  192. FROM [dbo].[ICSSHIFT] order by SHIFTCODE desc";
  193. return DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  194. }
  195. catch (Exception ex)
  196. {
  197. throw ex;
  198. }
  199. }
  200. // public static DataTable GetShiftSeqCode()
  201. // {
  202. // try
  203. // {
  204. // string sql = @"select TOP 1 [SHIFTSEQ]
  205. // FROM [dbo].[ICSSHIFT] order by [SHIFTTYPEID] desc";
  206. // return DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
  207. // }
  208. // catch (Exception ex)
  209. // {
  210. // throw ex;
  211. // }
  212. // }
  213. }
  214. }