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.
218 lines
8.4 KiB
218 lines
8.4 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using ICSSoft.Frame.Data.Entity;
|
|
using System.Data;
|
|
using ICSSoft.Base.Config.DBHelper;
|
|
using ICSSoft.Base.Config.AppConfig;
|
|
|
|
namespace ICSSoft.Frame.Data.DAL
|
|
{
|
|
public class ICSSENDINVPLANDAL
|
|
{
|
|
#region 查询物料
|
|
public static List<FormICSINVENTORYUIModel> SearchItemInfoList(string dsconn)
|
|
{
|
|
try
|
|
{
|
|
List<FormICSINVENTORYUIModel> returntype = new List<FormICSINVENTORYUIModel>();
|
|
string sql = @"select [ID],[INVCODE],[INVNAME],[INVDESC]
|
|
from [ICSINVENTORY]
|
|
where INVTYPE='物料'";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
|
|
foreach (DataRow dr in dt.Rows)
|
|
{
|
|
FormICSINVENTORYUIModel itemmodel = new FormICSINVENTORYUIModel();
|
|
itemmodel.ID = dr["ID"].ToString();
|
|
itemmodel.INVCODE = dr["INVCODE"].ToString();
|
|
itemmodel.INVNAME = dr["INVNAME"].ToString();
|
|
itemmodel.INVDESC = dr["INVDESC"].ToString();
|
|
if (!returntype.Contains(itemmodel))
|
|
returntype.Add(itemmodel);
|
|
}
|
|
return returntype;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw ex;
|
|
}
|
|
}
|
|
#endregion
|
|
#region 查询工单
|
|
public static List<FormICSMOUIModel> SearchMOInfoList(string dsconn)
|
|
{
|
|
try
|
|
{
|
|
List<FormICSMOUIModel> returnmo = new List<FormICSMOUIModel>();
|
|
string sql = @"select [ID],[MOCODE],[MOMEMO],[MODESC]
|
|
from [ICSMO]
|
|
";
|
|
sql = string.Format(sql);
|
|
DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
|
|
foreach (DataRow dr in dt.Rows)
|
|
{
|
|
FormICSMOUIModel momodel = new FormICSMOUIModel();
|
|
momodel.ID = dr["ID"].ToString();
|
|
momodel.MOCODE = dr["MOCODE"].ToString();
|
|
momodel.MOMEMO = dr["MOMEMO"].ToString();
|
|
momodel.MODESC = dr["MODESC"].ToString();
|
|
if (!returnmo.Contains(momodel))
|
|
returnmo.Add(momodel);
|
|
}
|
|
return returnmo;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw ex;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 新增和修改
|
|
public static void Add(List<FormICSSENDINVPLANUIModel> sendInfoList, string dsconn)
|
|
{
|
|
FramDataContext db = new FramDataContext(dsconn);
|
|
db.Connection.Open();
|
|
db.Transaction = db.Connection.BeginTransaction();
|
|
try
|
|
{
|
|
foreach (FormICSSENDINVPLANUIModel sendInfo in sendInfoList)
|
|
{
|
|
bool isNew = false;
|
|
var line = db.ICSSENDINVPLAN.SingleOrDefault(a => a.ID == sendInfo.ID);
|
|
if (line == null)
|
|
{
|
|
isNew = true;
|
|
line = new ICSSENDINVPLAN();
|
|
line.ID = AppConfig.GetGuid();
|
|
line.Version = sendInfo.Version;
|
|
line.ManuDepartment = "";
|
|
line.ProjectName = "";
|
|
line.LotNo = "";
|
|
line.Exattention = "";
|
|
line.SendDate = DateTime.Now;
|
|
line.Sender = "";
|
|
line.ObjProgress = "";
|
|
}
|
|
|
|
line.PlanQty = sendInfo.PlanQty;
|
|
line.MoCode = sendInfo.mo.ID;
|
|
line.Mcode = sendInfo.item.ID;
|
|
|
|
line.WorkPoint = AppConfig.WorkPointCode;
|
|
line.MUSER = AppConfig.UserId;
|
|
line.MUSERName = AppConfig.UserName;
|
|
line.MTIME = DateTime.Now;
|
|
if (isNew)
|
|
db.ICSSENDINVPLAN.InsertOnSubmit(line);
|
|
db.SubmitChanges();
|
|
|
|
}
|
|
db.Transaction.Commit();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
db.Transaction.Rollback();
|
|
throw ex;
|
|
}
|
|
}
|
|
#endregion
|
|
#region 通过guid查询
|
|
public static List<FormICSSENDINVPLANUIModel> SearchSendInfoByID(string sendid, string dsconn)
|
|
{
|
|
List<FormICSSENDINVPLANUIModel> returnsend = new List<FormICSSENDINVPLANUIModel>();
|
|
string sql = @"select a.[ManuDepartment],a.[ProjectName],a.[LotNo],a.[PlanQty],a.[Exattention],a.[SendDate],a.[Sender],
|
|
a.[ObjProgress],a.[Version],
|
|
b.[ID] as bid,b.[INVCODE],b.[INVNAME],b.[INVDESC],
|
|
c.[ID] as cid,c.[MOCODE],c.[MOMEMO],c.[MODESC]
|
|
from ICSSENDINVPLAN a
|
|
left join ICSINVENTORY b on a.Mcode=b.ID
|
|
left join ICSMO c on a.MoCode=c.ID
|
|
where a.ID='{0}'";
|
|
sql = string.Format(sql, sendid);
|
|
DataTable dt = DBHelper.ExecuteDataset(dsconn, CommandType.Text, sql).Tables[0];
|
|
foreach (DataRow dr in dt.Rows)
|
|
{
|
|
|
|
FormICSSENDINVPLANUIModel sendInfo = new FormICSSENDINVPLANUIModel();
|
|
sendInfo.Version = Convert.ToDecimal(dr["Version"].ToString());
|
|
sendInfo.ManuDepartment = dr["ManuDepartment"].ToString();
|
|
sendInfo.ProjectName = dr["ProjectName"].ToString();
|
|
sendInfo.LotNo = dr["LotNo"].ToString();
|
|
sendInfo.PlanQty = Convert.ToDecimal(dr["PlanQty"].ToString());
|
|
sendInfo.Exattention = dr["Exattention"].ToString();
|
|
sendInfo.SendDate = Convert.ToDateTime(dr["SendDate"].ToString());
|
|
sendInfo.Sender = dr["Sender"].ToString();
|
|
sendInfo.ObjProgress = dr["ObjProgress"].ToString();
|
|
|
|
sendInfo.mo = new FormICSMOUIModel();
|
|
sendInfo.mo.ID = dr["cid"].ToString();
|
|
sendInfo.mo.MOCODE = dr["MOCODE"].ToString();
|
|
sendInfo.mo.MOMEMO = dr["MOMEMO"].ToString();
|
|
sendInfo.mo.MODESC = dr["MODESC"].ToString();
|
|
|
|
sendInfo.item = new FormICSINVENTORYUIModel();
|
|
sendInfo.item.ID = dr["bid"].ToString();
|
|
sendInfo.item.INVCODE = dr["INVCODE"].ToString();
|
|
sendInfo.item.INVNAME = dr["INVNAME"].ToString();
|
|
sendInfo.item.INVDESC = dr["INVDESC"].ToString();
|
|
|
|
if (!returnsend.Contains(sendInfo))
|
|
{
|
|
returnsend.Add(sendInfo);
|
|
}
|
|
}
|
|
return returnsend;
|
|
|
|
}
|
|
#endregion
|
|
#region 删除
|
|
public static void deleteInfo(List<string> sendidList, string dsconn)
|
|
{
|
|
FramDataContext db = new FramDataContext(dsconn);
|
|
db.Connection.Open();
|
|
db.Transaction = db.Connection.BeginTransaction();
|
|
try
|
|
{
|
|
var lines = db.ICSSENDINVPLAN.Where(a => sendidList.Contains(a.ID));
|
|
db.ICSSENDINVPLAN.DeleteAllOnSubmit(lines);
|
|
db.SubmitChanges();
|
|
db.Transaction.Commit();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
db.Transaction.Rollback();
|
|
throw ex;
|
|
}
|
|
}
|
|
#endregion
|
|
#region 代码是否存在
|
|
public static bool IsIncluding(decimal version, string workpoint, string dsconn)
|
|
{
|
|
|
|
FramDataContext db = new FramDataContext(dsconn);
|
|
db.Connection.Open();
|
|
db.Transaction = db.Connection.BeginTransaction();
|
|
try
|
|
{
|
|
var line = db.ICSSENDINVPLAN.SingleOrDefault(a => a.Version == version && a.WorkPoint == workpoint);
|
|
if (line == null)
|
|
return true;
|
|
else
|
|
return false;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
db.Transaction.Rollback();
|
|
throw ex;
|
|
}
|
|
|
|
}
|
|
#endregion
|
|
|
|
}
|
|
}
|