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

5 months ago
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using ICSSoft.Base.Config.DBHelper;
  6. using System.Data;
  7. using ICSSoft.Frame.Data.Entity;
  8. using System.Data.Linq;
  9. using System.Data.SqlClient;
  10. using ICSSoft.Base.Config.AppConfig;
  11. namespace ICSSoft.Frame.Data.DAL
  12. {
  13. public class ICSSEGDAL
  14. {
  15. // public static List<FormICSShifTypeUIModel> SearchShifTypeInfoList(string dsconn)
  16. // {
  17. // try
  18. // {
  19. // List<FormICSShifTypeUIModel> returntype = new List<FormICSShifTypeUIModel>();
  20. // string sql = @"select [ID],[SHIFTTYPECODE],[SHIFTTYPEDESC],[EFFDATE],[IVLDATE],[MUSER],[MUSERName],[MTIME],[WorkPoint]
  21. // from [ICSSHIFTTYPE]";
  22. // sql = string.Format(sql);
  23. // DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
  24. // foreach (DataRow dr in dt.Rows)
  25. // {
  26. // FormICSShifTypeUIModel typemodel = new FormICSShifTypeUIModel();
  27. // typemodel.ID = dr["ID"].ToString();
  28. // typemodel.SHIFTTYPECODE = dr["SHIFTTYPECODE"].ToString();
  29. // typemodel.SHIFTTYPEDESC = dr["SHIFTTYPEDESC"].ToString();
  30. // if (!returntype.Contains(typemodel))
  31. // returntype.Add(typemodel);
  32. // }
  33. // return returntype;
  34. // }
  35. // catch (Exception ex)
  36. // {
  37. // throw ex;
  38. // }
  39. // }
  40. public static List<FormICSFactoryUIModel> SearchFacInfoList(string dsconn)
  41. {
  42. try
  43. {
  44. List<FormICSFactoryUIModel> returnfac = new List<FormICSFactoryUIModel>();
  45. string sql = @"select [ID],[FACCODE],[FACDESC],[MUSER],[MUSERName],[MTIME],[WorkPoint]
  46. from [ICSFACTORY]";
  47. sql = string.Format(sql);
  48. DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
  49. foreach (DataRow dr in dt.Rows)
  50. {
  51. FormICSFactoryUIModel facmodel = new FormICSFactoryUIModel();
  52. facmodel.ID = dr["ID"].ToString();
  53. facmodel.FACCODE = dr["FACCODE"].ToString();
  54. facmodel.FACDESC = dr["FACDESC"].ToString();
  55. if (!returnfac.Contains(facmodel))
  56. returnfac.Add(facmodel);
  57. }
  58. return returnfac;
  59. }
  60. catch (Exception ex)
  61. {
  62. throw ex;
  63. }
  64. }
  65. #region 新增和修改
  66. public static void Add(List<FormICSSEGUIModel> SEGInfoList, string dsconn)
  67. {
  68. FramDataContext db = new FramDataContext(dsconn);
  69. db.Connection.Open();
  70. db.Transaction = db.Connection.BeginTransaction();
  71. try
  72. {
  73. foreach (FormICSSEGUIModel seginfo in SEGInfoList)
  74. {
  75. bool isNew = false;
  76. var line = db.ICSSEG.SingleOrDefault(a => a.SEGCODE == seginfo.SEGCODE && a.WorkPoint == seginfo.WorkPoint);
  77. if (line == null)
  78. {
  79. isNew = true;
  80. line = new ICSSEG();
  81. line.ID = AppConfig.GetGuid();
  82. line.SEGCODE = seginfo.SEGCODE;
  83. }
  84. //line.SEGSEQ = seginfo.SEGSEQ;
  85. line.SEGDESC = seginfo.SEGDESC;
  86. line.SHIFTTYPEID = "";
  87. if (seginfo.fac != null)
  88. line.FACID = seginfo.fac.ID;
  89. else
  90. line.FACID = null;
  91. line.MUSER = AppConfig.UserId;
  92. line.MUSERName = AppConfig.UserName;
  93. line.MTIME = DateTime.Now;
  94. line.WorkPoint = AppConfig.WorkPointCode;
  95. line.SEGManager = "";
  96. if (isNew)
  97. db.ICSSEG.InsertOnSubmit(line);
  98. db.SubmitChanges();
  99. }
  100. db.Transaction.Commit();
  101. }
  102. catch (Exception ex)
  103. {
  104. db.Transaction.Rollback();
  105. throw ex;
  106. }
  107. }
  108. #endregion
  109. #region 通过车间代码查询
  110. public static List<FormICSSEGUIModel> SearchSEGInfoByCode(string CODE, string dsconn)
  111. {
  112. List<FormICSSEGUIModel> returnseg = new List<FormICSSEGUIModel>();
  113. // string sql = @"select a.[SEGCODE],a.[SEGSEQ],a.[SEGDESC],b.[UserCode],c.[ID] as cID,c.[FACCODE],c.[FACDESC]
  114. // from ICSSEG as a
  115. // left join Sys_User as b on (a.SEGManager=b.UserCode)
  116. // left join ICSFACTORY as c on (a.FACID=c.ID)
  117. //
  118. // where a.SEGCODE='{0}'";
  119. string sql = @"select [ID] as cID, SEGCODE,SEGDESC,MUSER,MTIME
  120. from ICSSEG
  121. where SEGCODE='{0}' AND WorkPoint='" + AppConfig.WorkPointCode + "'";
  122. sql = string.Format(sql, CODE);
  123. DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
  124. foreach (DataRow dr in dt.Rows)
  125. {
  126. FormICSSEGUIModel returnInfo = new FormICSSEGUIModel();
  127. returnInfo.SEGCODE = dr["SEGCODE"].ToString();
  128. //returnInfo.SEGSEQ = Convert.ToInt32(dr["SEGSEQ"].ToString());
  129. returnInfo.SEGDESC = dr["SEGDESC"].ToString();
  130. //returnInfo.SEGManager = dr["UserCode"].ToString();
  131. //returnInfo.SEGManager ="";
  132. //returnInfo.shifType = new FormICSShifTypeUIModel();
  133. string cIDtest = dr["cID"].ToString();
  134. if (!cIDtest.Equals(""))
  135. {
  136. returnInfo.fac = new FormICSFactoryUIModel();
  137. returnInfo.fac.ID = dr["cID"].ToString();
  138. //returnInfo.fac.FACCODE = dr["FACCODE"].ToString();
  139. //returnInfo.fac.FACDESC = dr["FACDESC"].ToString();
  140. }
  141. if (!returnseg.Contains(returnInfo))
  142. {
  143. returnseg.Add(returnInfo);
  144. }
  145. }
  146. return returnseg;
  147. }
  148. #endregion
  149. #region 删除
  150. public static void deleteInfo(List<string> codeList, string dsconn)
  151. {
  152. FramDataContext db = new FramDataContext(dsconn);
  153. db.Connection.Open();
  154. db.Transaction = db.Connection.BeginTransaction();
  155. try
  156. {
  157. var lines = db.ICSSEG.Where(a => codeList.Contains(a.SEGCODE));
  158. db.ICSSEG.DeleteAllOnSubmit(lines);
  159. db.SubmitChanges();
  160. db.Transaction.Commit();
  161. }
  162. catch (Exception ex)
  163. {
  164. db.Transaction.Rollback();
  165. throw ex;
  166. }
  167. }
  168. #endregion
  169. #region 判断是否在产线中
  170. public static bool IncludingSS(List<string> idList, string dsconn)
  171. {
  172. FramDataContext db = new FramDataContext(dsconn);
  173. db.Connection.Open();
  174. db.Transaction = db.Connection.BeginTransaction();
  175. try
  176. {
  177. bool flag = false;
  178. var lines = db.ICSSS.Where(a => idList.Contains(a.SEGID));
  179. if (lines.Count() != 0)
  180. flag = true;
  181. return flag;
  182. }
  183. catch (Exception ex)
  184. {
  185. //db.Transaction.Rollback();
  186. throw ex;
  187. }
  188. }
  189. #endregion
  190. #region 车间代码是否存在
  191. public static bool IsIncluding(string segCODE, string dsconn)
  192. {
  193. FramDataContext db = new FramDataContext(dsconn);
  194. db.Connection.Open();
  195. db.Transaction = db.Connection.BeginTransaction();
  196. try
  197. {
  198. var line = db.ICSSEG.SingleOrDefault(a => a.SEGCODE == segCODE && a.WorkPoint== AppConfig.WorkPointCode);
  199. if (line == null)
  200. return false;
  201. else
  202. return true;
  203. }
  204. catch (Exception ex)
  205. {
  206. db.Transaction.Rollback();
  207. throw ex;
  208. }
  209. }
  210. #endregion
  211. #region 判断车间是否和设备类型关联
  212. public static bool IncludingEquipment(List<string> idList, string dsconn)
  213. {
  214. FramDataContext db = new FramDataContext(dsconn);
  215. db.Connection.Open();
  216. db.Transaction = db.Connection.BeginTransaction();
  217. try
  218. {
  219. bool flag = false;
  220. var lines = db.ICSEquipmentType.Where(a => idList.Contains(a.SEGCODE));
  221. if (lines.Count() != 0)
  222. flag = true;
  223. return flag;
  224. }
  225. catch (Exception ex)
  226. {
  227. //db.Transaction.Rollback();
  228. throw ex;
  229. }
  230. }
  231. #endregion
  232. }
  233. }