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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ICSSoft.Frame.Data.Entity;
using ICSSoft.Base.Config.AppConfig;
using System.Data;
using ICSSoft.Base.Config.DBHelper;
namespace ICSSoft.Frame.Data.DAL
{
public class ICSKODFOLDERDAL
{
public static void Edit(Sys_DataBase dbInfo, ICSKODFOLDER folderInfo, string dsconn)
{
FramDataContext db = new FramDataContext(dsconn);
db.Connection.Open();
db.Transaction = db.Connection.BeginTransaction();
try
{
bool newDB = false;
bool newFolder = false;
var lineDB = db.Sys_DataBase.SingleOrDefault(a => a.DBIpAddress == dbInfo.DBIpAddress && a.WorkCode == dbInfo.WorkCode);
if (lineDB == null)
{
newDB = true;
lineDB = new Sys_DataBase();
lineDB.ID = AppConfig.GetGuid();
}
lineDB.DBSourceName = dbInfo.DBSourceName;
lineDB.DBName = dbInfo.DBName;
lineDB.DBUser = dbInfo.DBUser;
lineDB.DBPwd = dbInfo.DBPwd;
lineDB.WorkCode = dbInfo.WorkCode;
if (newDB)
{
db.Sys_DataBase.InsertOnSubmit(lineDB);
}
var lineFolder = db.ICSKODFOLDER.SingleOrDefault(a => a.WorkPoint == folderInfo.WorkPoint);
if (lineFolder == null)
{
newFolder = true;
lineFolder = new ICSKODFOLDER();
lineFolder.ID = AppConfig.GetGuid();
}
lineFolder.General = folderInfo.General;
lineFolder.OP = folderInfo.OP;
lineFolder.Cutters = folderInfo.Cutters;
lineFolder.SOP = folderInfo.SOP;
lineFolder.SIP = folderInfo.SIP;
lineFolder.WorkPoint = folderInfo.WorkPoint;
if (newFolder)
{
db.ICSKODFOLDER.InsertOnSubmit(lineFolder);
}
db.SubmitChanges();
db.Transaction.Commit();
}
catch (Exception ex)
{
db.Transaction.Rollback();
throw ex;
}
finally
{
db.Connection.Close();
}
}
public static DataTable SelectFolderInfo(string WorkPoint, string dsconn)
{
string sql = @"
SELECT
A.DBSourceName
,A.DBIpAddress
,A.DBName
,A.DBUser
,A.DBPwd
,B.ID
,B.General
,B.OP
,B.Cutters
,B.SOP
,B.SIP
FROM dbo.Sys_DataBase A
LEFT JOIN ICSKODFOLDER B ON A.WorkCode=B.WorkPoint
WHERE
A.DBSourceName='KOD' AND A.WorkCode='{0}'
";
sql = string.Format(sql, WorkPoint);
return DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
}
}
}