using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; using System.Web.UI.WebControls; using Model; namespace BLL { public class TrustManageEditService { public static Model.SGGLDB db = Funs.DB; /// /// 记录数 /// private static int count { get; set; } /// /// 定义变量 /// private static IQueryable qq = from x in db.View_CH_TrustItem orderby x.ISO_IsoNo, x.JOT_JointNo select x; /// /// 获取分页列表 /// /// /// /// public static IEnumerable getListData(string projectId, string startTime, string endTime, string CH_TrustID, int startRowIndex, int maximumRows) { IQueryable q = qq; if (!string.IsNullOrEmpty(projectId)) { q = q.Where(e => e.ProjectId == projectId); } if (!String.IsNullOrEmpty(startTime)) { q = q.Where(e => e.CH_TrustDate >= Convert.ToDateTime(startTime)); } if (!String.IsNullOrEmpty(endTime)) { q = q.Where(e => e.CH_TrustDate <= Convert.ToDateTime(endTime)); } if (!string.IsNullOrEmpty(CH_TrustID)) { q = q.Where(e => e.CH_TrustID.Contains(CH_TrustID)); } count = q.Count(); if (count == 0) { return new object[] { "" }; } return from x in q.Skip(startRowIndex).Take(maximumRows) select new { x.CH_TrustItemID, x.CH_TrustID, x.JOT_ID, x.WorkAreaId, x.InstallationId, x.ProjectId, x.CH_TrustDate, x.ISO_IsoNo, x.JOT_JointNo, x.CH_Remark, x.JOT_Dia, x.JOT_Sch, x.WLO_Code, x.WME_Name }; } /// /// 获取列表数 /// /// public static int getListCount(string projectId, string startTime, string endTime, string DReportID) { return count; } /// /// 根据委托Id获取用于委托的委托信息 /// /// /// public static Model.CH_Trust GetCH_TrustByID(string CH_TrustID) { Model.SGGLDB db = Funs.DB; var view = db.CH_Trust.FirstOrDefault(e => e.CH_TrustID == CH_TrustID); return view; } /// /// 委托单号是否存在 /// /// /// /// public static bool IsExistTrustCode(string projectId, string trustCode) { Model.SGGLDB db = Funs.DB; var q = from x in db.CH_Trust where x.ProjectId == projectId && x.CH_TrustCode == trustCode select x; if (q.Count() > 0) { return true; } else { return false; } } /// /// 根据委托Id获取用于委托的焊口视图信息 /// /// /// public static List GetView_CH_TrustItemByCH_TrustID(string CH_TrustID) { Model.SGGLDB db = Funs.DB; var view = (from x in db.View_CH_TrustItem where x.CH_TrustID == CH_TrustID && x.JOT_JointStatus != "104" select x).ToList(); return view; } /// /// 根据焊口Id获取用于委托的焊口视图信息 /// /// /// public static List GetCH_TrustItemByJOT_ID(string jot_id) { Model.SGGLDB db = Funs.DB; var view = (from x in db.CH_TrustItem where x.JOT_ID == jot_id select x).ToList(); return view; } public static List GetCH_TrustItemByISO_ID(string ISO_ID) { Model.SGGLDB db = Funs.DB; var view = (from x in db.CH_TrustItem join j in db.PW_JointInfo on x.JOT_ID equals j.JOT_ID where j.ISO_ID == ISO_ID select x).ToList(); return view; } /// /// 根据焊口Id和委托id获取用于委托明细是否存在 /// /// /// public static Model.CH_TrustItem GetCH_TrustItemByJOT_IDAndJotId(string CH_TrustID, string jot_id) { Model.SGGLDB db = Funs.DB; var view = db.CH_TrustItem.FirstOrDefault(x => x.CH_TrustID == CH_TrustID && x.JOT_ID == jot_id); return view; } /// /// 根据委托Id获取用于委托的焊口视图信息 /// /// /// public static List GetCH_TrustItemByCH_TrustID(string CH_TrustID) { Model.SGGLDB db = Funs.DB; var view = (from x in db.CH_TrustItem where x.CH_TrustID == CH_TrustID select x).ToList(); return view; } /// /// 根据焊口Id获取用于委托的焊口信息 /// /// /// public static Model.View_CH_TrustItem GetView_CH_TrustItemByJotID(string jot_id, string projectId) { var view = Funs.DB.View_CH_TrustItem.FirstOrDefault(e => e.JOT_ID == jot_id && e.ProjectId == projectId); return view; } /// /// 增加委托信息 /// /// 委托实体 public static void AddCH_Trust(Model.CH_Trust cH_Trust) { Model.SGGLDB db = Funs.DB; Model.CH_Trust newCH_Trust = new Model.CH_Trust(); newCH_Trust.CH_TrustID = cH_Trust.CH_TrustID; newCH_Trust.CH_TrustCode = cH_Trust.CH_TrustCode; newCH_Trust.CH_TrustUnit = cH_Trust.CH_TrustUnit; newCH_Trust.CH_TrustDate = cH_Trust.CH_TrustDate; newCH_Trust.CH_TrustType = cH_Trust.CH_TrustType; newCH_Trust.CH_TrustMan = cH_Trust.CH_TrustMan; newCH_Trust.CH_Tabler = cH_Trust.CH_Tabler; newCH_Trust.CH_TableDate = cH_Trust.CH_TableDate; newCH_Trust.CH_UnitName = cH_Trust.CH_UnitName; newCH_Trust.CH_WorkNo = cH_Trust.CH_WorkNo; newCH_Trust.CH_ItemName = cH_Trust.CH_ItemName; newCH_Trust.CH_SlopeType = cH_Trust.CH_SlopeType; newCH_Trust.CH_ServiceTemp = cH_Trust.CH_ServiceTemp; newCH_Trust.CH_Press = cH_Trust.CH_Press; newCH_Trust.CH_WeldMethod = cH_Trust.CH_WeldMethod; newCH_Trust.CH_NDTRate = cH_Trust.CH_NDTRate; newCH_Trust.CH_NDTMethod = cH_Trust.CH_NDTMethod; newCH_Trust.CH_NDTCriteria = cH_Trust.CH_NDTCriteria; newCH_Trust.CH_AcceptGrade = cH_Trust.CH_AcceptGrade; newCH_Trust.CH_Remark = cH_Trust.CH_Remark; newCH_Trust.CH_CheckUnit = cH_Trust.CH_CheckUnit; newCH_Trust.ProjectId = cH_Trust.ProjectId; newCH_Trust.InstallationId = cH_Trust.InstallationId; newCH_Trust.CH_RequestDate = cH_Trust.CH_RequestDate; newCH_Trust.ToIso_Id = cH_Trust.ToIso_Id; db.CH_Trust.InsertOnSubmit(newCH_Trust); db.SubmitChanges(); } /// /// 修改焊接信息 /// /// 焊接实体 public static void UpdateCH_Trust(Model.CH_Trust cH_Trust) { Model.SGGLDB db = Funs.DB; Model.CH_Trust newCH_Trust = db.CH_Trust.First(e => e.CH_TrustID == cH_Trust.CH_TrustID); newCH_Trust.CH_TrustID = cH_Trust.CH_TrustID; newCH_Trust.CH_TrustCode = cH_Trust.CH_TrustCode; newCH_Trust.CH_TrustUnit = cH_Trust.CH_TrustUnit; newCH_Trust.CH_TrustDate = cH_Trust.CH_TrustDate; newCH_Trust.CH_TrustType = cH_Trust.CH_TrustType; newCH_Trust.CH_TrustMan = cH_Trust.CH_TrustMan; newCH_Trust.CH_Tabler = cH_Trust.CH_Tabler; newCH_Trust.CH_TableDate = cH_Trust.CH_TableDate; newCH_Trust.CH_UnitName = cH_Trust.CH_UnitName; newCH_Trust.CH_WorkNo = cH_Trust.CH_WorkNo; newCH_Trust.CH_ItemName = cH_Trust.CH_ItemName; newCH_Trust.CH_SlopeType = cH_Trust.CH_SlopeType; newCH_Trust.CH_ServiceTemp = cH_Trust.CH_ServiceTemp; newCH_Trust.CH_Press = cH_Trust.CH_Press; newCH_Trust.CH_WeldMethod = cH_Trust.CH_WeldMethod; newCH_Trust.CH_NDTRate = cH_Trust.CH_NDTRate; newCH_Trust.CH_NDTMethod = cH_Trust.CH_NDTMethod; newCH_Trust.CH_NDTCriteria = cH_Trust.CH_NDTCriteria; newCH_Trust.CH_AcceptGrade = cH_Trust.CH_AcceptGrade; newCH_Trust.CH_Remark = cH_Trust.CH_Remark; newCH_Trust.CH_CheckUnit = cH_Trust.CH_CheckUnit; newCH_Trust.ProjectId = cH_Trust.ProjectId; newCH_Trust.InstallationId = cH_Trust.InstallationId; newCH_Trust.CH_RequestDate = cH_Trust.CH_RequestDate; newCH_Trust.ToIso_Id = cH_Trust.ToIso_Id; db.SubmitChanges(); } /// /// 根据主键删除委托信息 /// /// 委托主键 public static void DeleteCH_TrustByCH_TrustID(string cH_TrustID) { Model.SGGLDB db = Funs.DB; Model.CH_Trust cH_Trust = db.CH_Trust.First(e => e.CH_TrustID == cH_TrustID); db.CH_Trust.DeleteOnSubmit(cH_Trust); db.SubmitChanges(); } /// /// 根据主键删除委托信息明细 /// /// 委托主键 public static void DeleteCH_TrustItemByCH_TrustID(string cH_TrustID) { Model.SGGLDB db = Funs.DB; var cH_Trust = from x in db.CH_TrustItem where x.CH_TrustID == cH_TrustID select x; if (cH_Trust != null) { foreach (var item in cH_Trust) { var jo = Funs.DB.PW_JointInfo.FirstOrDefault(x => x.JOT_ID == item.JOT_ID); if (jo != null && jo.JOT_JointStatus == "102") { var ch = Funs.DB.CH_CheckItem.FirstOrDefault(x => x.JOT_ID == jo.JOT_ID); if (ch == null) { jo.JOT_JointStatus = "100"; BLL.PW_JointInfoService.UpdateJointPoint(jo); } } } db.CH_TrustItem.DeleteAllOnSubmit(cH_Trust); db.SubmitChanges(); } } /// /// 增加委托信息明细 /// /// 委托明细实体 public static void AddCH_TrustItem(Model.CH_TrustItem trustItem) { Model.SGGLDB db = Funs.DB; Model.CH_TrustItem newTrustItem = new Model.CH_TrustItem(); newTrustItem.CH_TrustItemID = SQLHelper.GetNewID(typeof(Model.CH_TrustItem)); newTrustItem.CH_TrustID = trustItem.CH_TrustID; newTrustItem.JOT_ID = trustItem.JOT_ID; newTrustItem.CH_Remark = trustItem.CH_Remark; db.CH_TrustItem.InsertOnSubmit(newTrustItem); db.SubmitChanges(); } public static void upDataCH_TrustItem(string cH_TrustID, List trusts) { Model.SGGLDB db = Funs.DB; var cH_Trust = from x in db.CH_TrustItem where x.CH_TrustID == cH_TrustID select x; List needRemove = new List(); if (cH_Trust != null)// { if (trusts != null)//判断需要删除的 { foreach (var item in cH_Trust) { bool hasFind = false; foreach (var trustItem in trusts) { if (trustItem.JOT_ID == item.JOT_ID) { hasFind = true; } } if (!hasFind) { needRemove.Add(item); } } } else { needRemove.AddRange(cH_Trust); } } if (trusts != null) { foreach (var trustItem in trusts) { bool hasFind = false; foreach (var item in cH_Trust) { if (trustItem.JOT_ID == item.JOT_ID) { hasFind = true; } } if (!hasFind) { Model.CH_TrustItem newTrustItem = new Model.CH_TrustItem(); newTrustItem.CH_TrustItemID = SQLHelper.GetNewID(typeof(Model.CH_TrustItem)); newTrustItem.CH_TrustID = cH_TrustID; newTrustItem.JOT_ID = trustItem.JOT_ID; newTrustItem.CH_Remark = trustItem.CH_Remark; db.CH_TrustItem.InsertOnSubmit(newTrustItem); BLL.TrustManageEditService.UpdateJOT_TrustFlag(trustItem.JOT_ID, "1"); } } } db.CH_TrustItem.DeleteAllOnSubmit(needRemove); foreach (var item in needRemove) { var jo = Funs.DB.PW_JointInfo.FirstOrDefault(x => x.JOT_ID == item.JOT_ID); if (jo != null && jo.JOT_JointStatus == "102") { var ch = Funs.DB.CH_CheckItem.FirstOrDefault(x => x.JOT_ID == jo.JOT_ID); if (ch == null) { jo.JOT_JointStatus = "100"; BLL.PW_JointInfoService.UpdateJointPoint(jo); } } } db.SubmitChanges(); } /// /// 审核委托信息 /// /// 焊接实体 public static void AuditCH_Trust(Model.CH_Trust cH_Trust) { Model.SGGLDB db = Funs.DB; Model.CH_Trust newCH_Trust = db.CH_Trust.First(e => e.CH_TrustID == cH_Trust.CH_TrustID); newCH_Trust.CH_TrustID = cH_Trust.CH_TrustID; newCH_Trust.CH_AuditMan = cH_Trust.CH_AuditMan; newCH_Trust.CH_AuditDate = cH_Trust.CH_AuditDate; db.SubmitChanges(); } /// /// 合格等级下拉列表值 /// /// public static ListItem[] GetAcceptGradeList() { ListItem[] list = new ListItem[5]; list[0] = new ListItem("Ⅰ", "1"); list[1] = new ListItem("Ⅱ", "2"); list[2] = new ListItem("Ⅲ", "3"); list[3] = new ListItem("Ⅳ", "4"); list[4] = new ListItem("Ⅴ", "5"); return list; } /// /// 更新焊口委托情况 /// /// type1-录入审核2取消删除 public static void UpdateJOT_TrustFlag(string JOT_ID, string type) { var jointInfo = Funs.DB.PW_JointInfo.FirstOrDefault(x => x.JOT_ID == JOT_ID); if (jointInfo != null) { if (type == "1") { if (String.IsNullOrEmpty(jointInfo.JOT_TrustFlag) || jointInfo.JOT_TrustFlag == "00")//未下委托 { jointInfo.JOT_TrustFlag = "01"; } else if (jointInfo.JOT_TrustFlag == "01")//一次委托,未审核 { jointInfo.JOT_TrustFlag = "02"; } else if (jointInfo.JOT_TrustFlag == "02")//一次委托,已审核 { jointInfo.JOT_TrustFlag = "11"; } else if (jointInfo.JOT_TrustFlag == "11")//二次委托,未审核 { jointInfo.JOT_TrustFlag = "12"; } else if (jointInfo.JOT_TrustFlag == "12")//二次委托,已审核 { jointInfo.JOT_TrustFlag = "21"; } else if (jointInfo.JOT_TrustFlag == "21")//三次委托,未审核 { jointInfo.JOT_TrustFlag = "22";//三次委托,已审核 } } else { if (jointInfo.JOT_TrustFlag == "22") { jointInfo.JOT_TrustFlag = "21"; } else if (jointInfo.JOT_TrustFlag == "21") { jointInfo.JOT_TrustFlag = "12"; } else if (jointInfo.JOT_TrustFlag == "12") { jointInfo.JOT_TrustFlag = "11"; } else if (jointInfo.JOT_TrustFlag == "11") { jointInfo.JOT_TrustFlag = "02"; } else if (jointInfo.JOT_TrustFlag == "02") { jointInfo.JOT_TrustFlag = "01"; } else { jointInfo.JOT_TrustFlag = "00"; } } } Funs.DB.SubmitChanges(); } /// /// 根据装置Id获取委托数 /// /// /// public static int GetTrustByInstallationId(string installationId) { var q = (from x in Funs.DB.CH_Trust where x.InstallationId == installationId select x).ToList(); return q.Count(); } /// /// 根据焊口ID获取委托明细信息 /// /// /// public static Model.CH_TrustItem GetTrustItemByJotId(string jotId) { return Funs.DB.CH_TrustItem.FirstOrDefault(e => e.JOT_ID == jotId); } /// /// 查找后返回集合增加到列表集团中 /// /// /// public static List GetTrustAddItem(string hdItemsString) { List returnViewMatch = new List(); //= getWeldReportItem; if (!string.IsNullOrEmpty(hdItemsString)) { List jotIds = Funs.GetStrListByStr(hdItemsString, '|'); returnViewMatch = (from x in Funs.DB.View_CH_TrustItem where jotIds.Contains(x.JOT_ID) select x).ToList(); } return returnViewMatch; } /// /// 根据委托Id获取委托明细视图 /// /// /// public static List GetTrustItemViewByTrustId(string trustId) { var q = (from x in Funs.DB.View_CH_TrustItem where x.CH_TrustID == trustId && x.JOT_JointStatus != "104" select x).ToList(); List res = new List(); res.AddRange(q.Where(x => x.JOT_JointStatus != "102" && x.JOT_JointStatus != "100").ToList()); res.AddRange(q.Where(x => x.JOT_JointStatus == "100").ToList()); res.AddRange(q.Where(x => x.JOT_JointStatus == "102").ToList()); return res; } } }