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

94 lines
2.9 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.AppConfig;
  7. using System.Data;
  8. using ICSSoft.Base.Config.DBHelper;
  9. namespace ICSSoft.Frame.Data.DAL
  10. {
  11. public class ICSKODFOLDERDAL
  12. {
  13. public static void Edit(Sys_DataBase dbInfo, ICSKODFOLDER folderInfo, string dsconn)
  14. {
  15. FramDataContext db = new FramDataContext(dsconn);
  16. db.Connection.Open();
  17. db.Transaction = db.Connection.BeginTransaction();
  18. try
  19. {
  20. bool newDB = false;
  21. bool newFolder = false;
  22. var lineDB = db.Sys_DataBase.SingleOrDefault(a => a.DBIpAddress == dbInfo.DBIpAddress && a.WorkCode == dbInfo.WorkCode);
  23. if (lineDB == null)
  24. {
  25. newDB = true;
  26. lineDB = new Sys_DataBase();
  27. lineDB.ID = AppConfig.GetGuid();
  28. }
  29. lineDB.DBSourceName = dbInfo.DBSourceName;
  30. lineDB.DBName = dbInfo.DBName;
  31. lineDB.DBUser = dbInfo.DBUser;
  32. lineDB.DBPwd = dbInfo.DBPwd;
  33. lineDB.WorkCode = dbInfo.WorkCode;
  34. if (newDB)
  35. {
  36. db.Sys_DataBase.InsertOnSubmit(lineDB);
  37. }
  38. var lineFolder = db.ICSKODFOLDER.SingleOrDefault(a => a.WorkPoint == folderInfo.WorkPoint);
  39. if (lineFolder == null)
  40. {
  41. newFolder = true;
  42. lineFolder = new ICSKODFOLDER();
  43. lineFolder.ID = AppConfig.GetGuid();
  44. }
  45. lineFolder.General = folderInfo.General;
  46. lineFolder.OP = folderInfo.OP;
  47. lineFolder.Cutters = folderInfo.Cutters;
  48. lineFolder.SOP = folderInfo.SOP;
  49. lineFolder.SIP = folderInfo.SIP;
  50. lineFolder.WorkPoint = folderInfo.WorkPoint;
  51. if (newFolder)
  52. {
  53. db.ICSKODFOLDER.InsertOnSubmit(lineFolder);
  54. }
  55. db.SubmitChanges();
  56. db.Transaction.Commit();
  57. }
  58. catch (Exception ex)
  59. {
  60. db.Transaction.Rollback();
  61. throw ex;
  62. }
  63. finally
  64. {
  65. db.Connection.Close();
  66. }
  67. }
  68. public static DataTable SelectFolderInfo(string WorkPoint, string dsconn)
  69. {
  70. string sql = @"
  71. SELECT
  72. A.DBSourceName
  73. ,A.DBIpAddress
  74. ,A.DBName
  75. ,A.DBUser
  76. ,A.DBPwd
  77. ,B.ID
  78. ,B.General
  79. ,B.OP
  80. ,B.Cutters
  81. ,B.SOP
  82. ,B.SIP
  83. FROM dbo.Sys_DataBase A
  84. LEFT JOIN ICSKODFOLDER B ON A.WorkCode=B.WorkPoint
  85. WHERE
  86. A.DBSourceName='KOD' AND A.WorkCode='{0}'
  87. ";
  88. sql = string.Format(sql, WorkPoint);
  89. return DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
  90. }
  91. }
  92. }