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.
|
|
using System; using System.Collections.Generic; using System.Linq; using System.Text; using ICSSoft.Frame.Data.Entity; using ICSSoft.Base.Config.DBHelper; using System.Data; using System.Data.SqlClient; using ICSSoft.Base.Config.AppConfig; namespace ICSSoft.Frame.Data.DAL { public class ICSItemBackDAL { #region AddandEdit
public static void AddandEdit(ICSItemBack vendorLot, string Appconstr) { FramDataContext db = new FramDataContext(Appconstr); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { bool isNew = false; var line = db.ICSItemBack.SingleOrDefault(a => a.ID == vendorLot.ID);
if (line == null) { isNew = true; line = new ICSItemBack(); line.ID = AppConfig.GetGuid(); line.STATUS = vendorLot.STATUS; }
var codes = db.ICSItemBack.Where(a => a.MOCODE == vendorLot.MOCODE && a.MOSEQ == vendorLot.MOSEQ && a.INVCode == vendorLot.INVCode && a.STATUS == vendorLot.STATUS && a.ID != line.ID); if (codes != null && codes.Count() > 0) { throw new Exception("该工单行下此物料已存在,请入库后再新建或直接修改数量!"); }
line.MOCODE = vendorLot.MOCODE; line.MOSEQ = vendorLot.MOSEQ; line.INVCode = vendorLot.INVCode; line.QTY = vendorLot.QTY; line.MEMO = vendorLot.MEMO; line.MUSER = AppConfig.UserCode; line.MUSERName = AppConfig.UserName; line.MTIME = AppConfig.GetSeverDateTime("yyyy-MM-dd hh:mm:ss"); line.WorkPoint = AppConfig.WorkPointCode; line.EATTRIBUTE1 = vendorLot.EATTRIBUTE1;
if (isNew) db.ICSItemBack.InsertOnSubmit(line);
db.SubmitChanges(); db.Transaction.Commit(); } catch (Exception ex) { db.Transaction.Rollback(); throw new Exception(ex.Message); } } #endregion
#region AddandEditList
public static void AddandEditList(List<ICSItemBack> vendorLotList, string Appconstr) { FramDataContext db = new FramDataContext(Appconstr); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { foreach (var vendorLot in vendorLotList) { bool isNew = false; var line = db.ICSItemBack.SingleOrDefault(a => a.ID == vendorLot.ID);
if (line == null) { isNew = true; line = new ICSItemBack(); line.ID = AppConfig.GetGuid(); line.STATUS = vendorLot.STATUS; }
var codes = db.ICSItemBack.Where(a => a.MOCODE == vendorLot.MOCODE && a.MOSEQ == vendorLot.MOSEQ && a.INVCode == vendorLot.INVCode && a.STATUS == vendorLot.STATUS && a.ID != line.ID); if (codes != null && codes.Count() > 0) { throw new Exception("该工单行下此物料已存在,请入库后再新建或直接修改数量!"); }
line.MOCODE = vendorLot.MOCODE; line.MOSEQ = vendorLot.MOSEQ; line.INVCode = vendorLot.INVCode; line.QTY = vendorLot.QTY; line.MEMO = vendorLot.MEMO; line.MUSER = AppConfig.UserCode; line.MUSERName = AppConfig.UserName; line.MTIME = AppConfig.GetSeverDateTime("yyyy-MM-dd hh:mm:ss"); line.WorkPoint = AppConfig.WorkPointCode; line.EATTRIBUTE1 = vendorLot.EATTRIBUTE1;
if (isNew) db.ICSItemBack.InsertOnSubmit(line);
} db.SubmitChanges(); db.Transaction.Commit(); } catch (Exception ex) { db.Transaction.Rollback(); throw new Exception(ex.Message); } } #endregion
#region select
public static ICSItemBack select(String guid, String Appconstr) { FramDataContext db = new FramDataContext(Appconstr); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); ICSItemBack entity = new ICSItemBack(); try { var line = db.ICSItemBack.SingleOrDefault(a => a.ID == guid); return (ICSItemBack)line; } catch (Exception ex) { throw new Exception(ex.Message); } } #endregion
#region delete
public static void delete(List<String> guidList,List<string> codeList) { FramDataContext db = new FramDataContext(AppConfig.AppConnectString); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { var lines = db.ICSItemBack.Where(a => guidList.Contains(a.ID)); //var line = db.ICSRES.Where(a => codeList.Contains(a.DCTCODE));
//if(line.Count()!=0){
// throw new Exception("DCT指令在资源维护已经使用,无法删除!");
//}
db.ICSItemBack.DeleteAllOnSubmit(lines);
db.SubmitChanges(); db.Transaction.Commit();
} catch (Exception ex) { db.Transaction.Rollback(); throw ex; } } #endregion
} }
|