|
|
using System; using System.Collections.Generic; using System.Linq; using System.Text; using ICSSoft.Base.Config.DBHelper; using System.Data; using ICSSoft.Frame.Data.Entity; using System.Data.Linq; using System.Data.SqlClient; using ICSSoft.Base.Config.AppConfig;
namespace ICSSoft.Frame.Data.DAL { public class ICSNCTPDAL { #region 新增和修改
public static void Add(List<ICSNCTP> InfoList, string dsconn) { FramDataContext db = new FramDataContext(dsconn); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { foreach (ICSNCTP info in InfoList) { bool isNew = false; var line = db.ICSNCTP.SingleOrDefault(a => a.guid == info.guid); if (line == null) { isNew = true; line = new ICSNCTP(); } //var codes = db.ICSEQPSTP.Where(a => a.ITEMCODE == info.ITEMCODE && a.OPCODE == info.OPCODE && a.EQPTypeCode == info.EQPTypeCode && a.ID != info.ID);
//if (codes.ToList().Count > 0)
//{
// throw new Exception("已存在相同产品工序设备类型的标准工时");
//}
line.guid = info.guid; //line.NCTPType = info.NCTPType;
line.ProductDate = info.ProductDate; line.ProductMO = info.ProductMO; line.ItemCode = info.ItemCode; line.ItemName = info.ItemName; line.ProjectCode = info.ProjectCode;
line.OPCode = info.OPCode; line.ProductNum = info.ProductNum; line.EQPCode = info.EQPCode; line.EQPName = info.EQPName;
line.UnitTP = info.UnitTP; line.TotalTP = info.TotalTP; line.ProductUser = info.ProductUser; line.Status = info.Status;
line.DeptCheckUser = info.DeptCheckUser; line.TotalTP = info.TotalTP; line.DeptCheckTime = info.DeptCheckTime; line.MECheckUser = info.MECheckUser; line.MECheckTime = info.MECheckTime; line.MUSER = AppConfig.UserId; line.MUSERName = AppConfig.UserName; line.MTIME = DateTime.Now; line.WorkPoint = AppConfig.WorkPointCode; line.EATTRIBUTE1 = info.EATTRIBUTE1; if (isNew) db.ICSNCTP.InsertOnSubmit(line); db.SubmitChanges();
}
db.Transaction.Commit(); } catch (Exception ex) { db.Transaction.Rollback(); throw ex; } } #endregion
#region 新增和修改List
public static string AddList(List<ICSNCTP> InfoList, string dsconn) { FramDataContext db = new FramDataContext(dsconn); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { string str = ""; foreach (ICSNCTP info in InfoList) { var opcode = db.ICSOP.SingleOrDefault(a => a.OPCODE == info.OPCode); if (opcode == null) { str += "工序代码:" + info.OPCode + "不存在" + "\r\n"; continue;
} var eqp = db.ICSEquipment.SingleOrDefault(a => a.EQPCode == info.EQPCode); if (eqp == null) { str += "设备编号:" + info.EQPCode + "不存在" + "\r\n"; continue;
}
ICSNCTP line = new ICSNCTP(); line.guid = AppConfig.GetGuid();
line.ProductDate = info.ProductDate; line.ProductMO = info.ProductMO; line.ItemCode = info.ItemCode; line.ItemName = info.ItemName; line.ProjectCode = info.ProjectCode;
line.OPCode = info.OPCode; line.ProductNum = info.ProductNum; line.EQPCode = info.EQPCode; line.EQPName = info.EQPName;
line.UnitTP = info.UnitTP; line.TotalTP = info.TotalTP; line.ProductUser = info.ProductUser; line.Status = "新增";
line.DeptCheckUser = info.DeptCheckUser; line.TotalTP = info.TotalTP; line.DeptCheckTime = info.DeptCheckTime; line.MECheckUser = info.MECheckUser; line.MECheckTime = info.MECheckTime; line.MUSER = AppConfig.UserId; line.MUSERName = AppConfig.UserName; line.MTIME = DateTime.Now; line.WorkPoint = AppConfig.WorkPointCode; line.EATTRIBUTE1 = info.EATTRIBUTE1;
db.ICSNCTP.InsertOnSubmit(line); db.SubmitChanges();
}
db.Transaction.Commit(); return str; } catch (Exception ex) { db.Transaction.Rollback(); throw ex; } } #endregion
#region 通过ID查询
public static DataTable searchInfoByID(string ID, string dsconn) {
string sql = @"select a.guid,
a.ProductDate, a.ProductMO, a.ItemCode, a.ItemName, a.ProjectCode, a.OPCode, a.ProductNum, a.EQPCode, a.EQPName, a.UnitTP, a.TotalTP, a.ProductUser, a.Status, a.DeptCheckUser, a.DeptCheckTime, a.MECheckUser, a.MECheckTime, a.WorkPoint, a.MUSER, a.MUSERName, a.MTIME, a.EATTRIBUTE1, b.OPDESC FROM ICSNCTP a LEFT JOIN ICSOP b on a.OPCODE=b.OPCODE where a.guid='{0}'";
sql = string.Format(sql, ID); DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
return dt; } #endregion
#region 是否存在
public static bool IsIncluding(string ItemCode, string OPCode, string eqptype, string dsconn) {
FramDataContext db = new FramDataContext(dsconn); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { var line = db.ICSNCTP.SingleOrDefault(a => a.ItemCode == ItemCode && a.OPCode == OPCode); if (line == null) return true; else return false; } catch (Exception ex) { db.Transaction.Rollback(); throw ex; }
} #endregion
#region 删除
public static void deleteInfo(List<string> codeList, string dsconn) { FramDataContext db = new FramDataContext(dsconn); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { var lines = db.ICSNCTP.Where(a => codeList.Contains(a.guid)); db.ICSNCTP.DeleteAllOnSubmit(lines); db.SubmitChanges(); db.Transaction.Commit(); } catch (Exception ex) { db.Transaction.Rollback(); throw ex; }
} #endregion
#region 部门审核
public static void depCheck(string id, string dsconn) { FramDataContext db = new FramDataContext(dsconn); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { var line = db.ICSNCTP.SingleOrDefault(a => a.guid==id); line.Status = "已审核"; line.DeptCheckUser = AppConfig.UserCode; line.DeptCheckTime = AppConfig.GetSeverDateTime("yyyy-MM-dd HH:mm:ss"); db.SubmitChanges(); db.Transaction.Commit(); } catch (Exception ex) { db.Transaction.Rollback(); throw ex; }
} #endregion
#region 工艺审核
public static void meCheck(string id, string dsconn) { FramDataContext db = new FramDataContext(dsconn); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { var line = db.ICSNCTP.SingleOrDefault(a => a.guid == id); line.MECheckUser = AppConfig.UserCode; line.MECheckTime = AppConfig.GetSeverDateTime("yyyy-MM-dd HH:mm:ss"); db.SubmitChanges(); db.Transaction.Commit(); } catch (Exception ex) { db.Transaction.Rollback(); throw ex; }
} #endregion
#region 弃审
public static void DiscardedTrialCheck(string id, string dsconn) { FramDataContext db = new FramDataContext(dsconn); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { var line = db.ICSNCTP.SingleOrDefault(a => a.guid == id); line.Status = "新增"; line.DeptCheckUser = AppConfig.UserCode; line.DeptCheckTime = AppConfig.GetSeverDateTime("yyyy-MM-dd HH:mm:ss"); db.SubmitChanges(); db.Transaction.Commit(); } catch (Exception ex) { db.Transaction.Rollback(); throw ex; }
} #endregion
} }
|