|
|
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 ICSEQPMaterialTRANSDAL {
#region 增加修改
public static void AddAndEdit(List<FormICSEQPMaterialTRANSUIModel> equipmentInfoList, string dsconn) {
FramDataContext db = new FramDataContext(dsconn); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { foreach (FormICSEQPMaterialTRANSUIModel equipmentInfo in equipmentInfoList) { //var line = db.ICSEQPMaterialTRANS.SingleOrDefault(a => a.MToolCode == equipmentInfo.MToolCode);
//if (line != null)
//{
// throw new Exception("备件编码已存在");
//}
ICSEQPMaterialTRANS line = new ICSEQPMaterialTRANS(); line.MCODE = equipmentInfo.ItemCode; line.MToolCode = equipmentInfo.MToolCode; line.MTRANSType = equipmentInfo.MTRANSType; line.MTRANSQty = equipmentInfo.MTRANSQty; line.MRRUSER = equipmentInfo.MRRUSER; line.MUSER = equipmentInfo.MUSER; line.MUSERName = equipmentInfo.MUSERName; line.MTIME = Convert.ToDateTime(equipmentInfo.MTIME); line.WorkPoint = equipmentInfo.WorkPoint; line.EATTRIBUTE1 = equipmentInfo.EATTRIBUTE1;
db.ICSEQPMaterialTRANS.InsertOnSubmit(line); if (equipmentInfo.materialinv.MType == "A") { var lines = db.ICSEQPMaterialInfo.SingleOrDefault(a => a.MToolCode == equipmentInfo.MToolCode); lines.MValidDATE = equipmentInfo.materialinfo.MValidDATE; if (equipmentInfo.MTRANSType == "领料") { lines.Mstatus = "使用中"; } if (equipmentInfo.MTRANSType == "退料") { lines.Mstatus = "在库"; } if (equipmentInfo.MTRANSType == "报废") { lines.Mstatus = "报废"; }
} var line1 = db.ICSEQPMaterialINV.SingleOrDefault(a => a.MCODE == equipmentInfo.ItemCode); if (equipmentInfo.MTRANSType == "领料") { if (equipmentInfo.MTRANSQty - line1.MINVQty > 0) { throw new Exception("库存数量不足"); } //lines.Mstatus = "使用中";
line1.MINVQty = line1.MINVQty - equipmentInfo.MTRANSQty; line1.MUSEQty = line1.MUSEQty + equipmentInfo.MTRANSQty; } if (equipmentInfo.MTRANSType == "退料") { if (equipmentInfo.MTRANSQty - line1.MUSEQty > 0) { throw new Exception("退料数超出使用数"); } if (line1.MUSEQty == 0) { throw new Exception("不存在使用中的备品备件,无法退料"); } //lines.Mstatus = "在库";
line1.MINVQty = line1.MINVQty + equipmentInfo.MTRANSQty; line1.MUSEQty = line1.MUSEQty - equipmentInfo.MTRANSQty; } if (equipmentInfo.MTRANSType == "报废") { if (equipmentInfo.MTRANSQty - line1.MINVQty > 0) { throw new Exception("报废数超出在库数"); } //lines.Mstatus = "报废";
line1.MINVQty = line1.MINVQty - equipmentInfo.MTRANSQty; line1.MScrapQty = line1.MScrapQty + equipmentInfo.MTRANSQty; } db.SubmitChanges(); } db.SubmitChanges(); db.Transaction.Commit(); } catch (Exception ex) { db.Transaction.Rollback(); throw new Exception(ex.Message); } } #endregion
//#region 班次次序是否存在
//public static bool IsIncludingInShiftSeq(int shiftsqe, string shifttypeid)
//{
// FramDataContext db = new FramDataContext(AppConfig.AppConnectString);
// db.Connection.Open();
// db.Transaction = db.Connection.BeginTransaction();
// try
// {
// var line = db.ICSSHIFT.SingleOrDefault(a => a.SHIFTSEQ == shiftsqe && a.SHIFTTYPEID == shifttypeid);
// if (line == null)
// return true;
// else
// return false;
// }
// catch (Exception ex)
// {
// db.Transaction.Rollback();
// throw ex;
// }
//}
//#endregion
// public static List<FormICSEQPTSUIModel> SearchEQPTSInfoByID(string id, string dsconn)
// {
// List<FormICSEQPTSUIModel> returnshift = new List<FormICSEQPTSUIModel>();
// string sql = @"select a.GUID,b.EQPID,b.EQPCode,a.FINDUSER,a.FINDMTIME,a.TSINFO,a.REASON,a.Solution,a.Result,a.TSType,a.STATUS,a.Duration,a.MUSERName,a.MTIME
// from ICSEQPTS a
// left join ICSEquipment b on a.EQPCode=b.EQPCode
// where a.GUID='{0}'";
// sql = string.Format(sql, id);
// DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
// foreach (DataRow dr in dt.Rows)
// {
// FormICSEQPTSUIModel eqptsInfo = new FormICSEQPTSUIModel();
// eqptsInfo.GUID = dr["GUID"].ToString();
// eqptsInfo.equipment = new FormICSEquipmentUIModel();
// eqptsInfo.equipment.EQPID = dr["EQPID"].ToString();
// eqptsInfo.equipment.EQPCode = dr["EQPCode"].ToString();
// eqptsInfo.FINDUSER = dr["FINDUSER"].ToString();
// eqptsInfo.FINDMTIME = Convert.ToDateTime(dr["FINDMTIME"].ToString());
// eqptsInfo.TSINFO = dr["TSINFO"].ToString();
// eqptsInfo.REASON = dr["REASON"].ToString();
// eqptsInfo.Solution = dr["Solution"].ToString();
// eqptsInfo.Result = dr["Result"].ToString();
// eqptsInfo.TSType = dr["TSType"].ToString();
// eqptsInfo.STATUS = dr["STATUS"].ToString();
// eqptsInfo.Duration =Convert.ToInt32(dr["Duration"].ToString());
// eqptsInfo.MUSERName = dr["MUSERName"].ToString();
// eqptsInfo.MTIME = System.DateTime.Parse(dr["MTIME"].ToString());
// if (!returnshift.Contains(eqptsInfo))
// {
// returnshift.Add(eqptsInfo);
// }
// }
// return returnshift;
// }
#region delete
public static void delete(List<String> guidList) { FramDataContext db = new FramDataContext(AppConfig.AppConnectString); db.Connection.Open(); db.Transaction = db.Connection.BeginTransaction(); try { var lines = db.ICSEQPMaterialInfo.Where(a => guidList.Contains(a.MToolCode)); db.ICSEQPMaterialInfo.DeleteAllOnSubmit(lines);
db.SubmitChanges(); db.Transaction.Commit();
} catch (Exception ex) { db.Transaction.Rollback(); throw ex; } } #endregion
public static DataTable GetShiftCode() { try { string sql = @"select TOP 1 [SHIFTCODE]
FROM [dbo].[ICSSHIFT] order by SHIFTCODE desc";
return DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0]; } catch (Exception ex) { throw ex; }
}
// public static DataTable GetShiftSeqCode()
// {
// try
// {
// string sql = @"select TOP 1 [SHIFTSEQ]
// FROM [dbo].[ICSSHIFT] order by [SHIFTTYPEID] desc";
// return DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
// }
// catch (Exception ex)
// {
// throw ex;
// }
// }
} }
|