using Model; using System.Collections.Generic; using System.Linq; namespace BLL { public partial class WeldingDailyService { /// ///获取焊接日报信息 /// /// public static Model.HJGL_WeldingDaily GetPipeline_WeldingDailyByWeldingDailyId(string WeldingDailyId) { return Funs.DB.HJGL_WeldingDaily.FirstOrDefault(e => e.WeldingDailyId == WeldingDailyId); } /// /// 根据焊接日报主键获取焊接日报信息 /// /// 焊接日报编号 /// 焊接日报信息 public static bool IsExistWeldingDailyCode(string weldingDailyCode, string weldingDailyId, string projectId) { var q = Funs.DB.HJGL_WeldingDaily.FirstOrDefault(x => x.WeldingDailyCode == weldingDailyCode && x.ProjectId == projectId && x.WeldingDailyId != weldingDailyId); if (q != null) { return true; } else { return false; } } /// /// 根据焊接日报Id获取焊接日报明细信息 /// /// /// public static List GetWeldingDailyItem(string weldingDailyId) { List returnViewMatch = new List(); var weldlineLists = from x in Funs.DB.View_HJGL_WeldJoint where x.WeldingDailyId == weldingDailyId select x; if (weldlineLists.Count() > 0) { foreach (var item in weldlineLists) { Model.SpWeldingDailyItem newWeldReportItem = new Model.SpWeldingDailyItem(); newWeldReportItem.WeldJointId = item.WeldJointId; newWeldReportItem.WeldJointCode = item.WeldJointCode; newWeldReportItem.PipelineCode = item.PipelineCode; newWeldReportItem.CoverWelderCode = item.CoverWelderCode; newWeldReportItem.CoverWelderId = item.CoverWelderId; newWeldReportItem.BackingWelderCode = item.BackingWelderCode; newWeldReportItem.BackingWelderId = item.BackingWelderId; //newWeldReportItem.WeldTypeId = item.WeldTypeCode; newWeldReportItem.JointArea = item.JointArea; newWeldReportItem.WeldingLocationId = item.WeldingLocationId; newWeldReportItem.WeldingLocationCode = item.WeldingLocationCode; newWeldReportItem.JointAttribute = item.JointAttribute; newWeldReportItem.Size = item.Size; newWeldReportItem.Dia = item.Dia; newWeldReportItem.Thickness = item.Thickness; newWeldReportItem.WeldingMethodCode = item.WeldingMethodCode; newWeldReportItem.WeldingWireCode = item.WeldingWireCode; newWeldReportItem.WeldingRodCode = item.WeldingRodCode; returnViewMatch.Add(newWeldReportItem); } } return returnViewMatch; } /// /// 查找后返回集合增加到列表集团中 /// /// /// public static List GetWeldReportAddItem(string hdString) { List returnViewMatch = new List(); //= getWeldReportItem; if (!string.IsNullOrEmpty(hdString)) { List totallist = Funs.GetStrListByStr(hdString, '@'); foreach (var hdItemsString in totallist) { List list = Funs.GetStrListByStr(hdItemsString, '#'); if (list.Count() == 4) { string CoverWelderCode = string.Empty; //盖面焊工号 string BackingWelderCode = string.Empty; //打底焊工号 string welderLists = list[0]; List welderIds = Funs.GetStrListByStr(welderLists, '|'); if (welderIds.Count() == 2) { var welderCell = BLL.WelderService.GetWelderById(welderIds[0]); if (welderCell != null) { CoverWelderCode = welderCell.WED_Code; } var welderFloor = BLL.WelderService.GetWelderById(welderIds[1]); if (welderFloor != null) { BackingWelderCode = welderFloor.WED_Code; } } string weldingLocationCode = string.Empty; string weldingLocationId = list[1]; var loc = BLL.Base_WeldingLocationServie.GetWeldingLocationById(weldingLocationId); if (loc != null) { weldingLocationCode = loc.WeldingLocationCode; } string jointAttribute = list[2]; string weldlineIdLists = list[3]; List weldlineIds = Funs.GetStrListByStr(weldlineIdLists, '|'); foreach (var weldlineItem in weldlineIds) { //if (returnViewMatch.FirstOrDefault(x => x.JOT_ID == jotItem) == null) //{ var jot = Funs.DB.View_HJGL_WeldJoint.FirstOrDefault(e => e.WeldJointId == weldlineItem); //var weldline = BLL.Pipeline_WeldJointService.GetViewWeldJointById(weldlineItem); if (jot != null) { Model.SpWeldingDailyItem newWeldReportItem = new Model.SpWeldingDailyItem(); newWeldReportItem.WeldJointId = jot.WeldJointId; newWeldReportItem.WeldJointCode = jot.WeldJointCode; newWeldReportItem.PipelineCode = jot.PipelineCode; newWeldReportItem.CoverWelderCode = CoverWelderCode; newWeldReportItem.CoverWelderId = welderIds[0]; newWeldReportItem.BackingWelderCode = BackingWelderCode; newWeldReportItem.BackingWelderId = welderIds[1]; newWeldReportItem.WeldTypeCode = jot.WeldTypeCode; newWeldReportItem.JointArea = jot.JointArea; newWeldReportItem.WeldingLocationId = weldingLocationId; newWeldReportItem.WeldingLocationCode = weldingLocationCode; newWeldReportItem.JointAttribute = jointAttribute; newWeldReportItem.Size = jot.Size; newWeldReportItem.Dia = jot.Dia; newWeldReportItem.Thickness = jot.Thickness; newWeldReportItem.WeldingMethodCode = jot.WeldingMethodCode; // 如存在日报,默认还是原日报焊工 if (!string.IsNullOrEmpty(jot.WeldingDailyId)) { newWeldReportItem.CoverWelderId = jot.CoverWelderId; newWeldReportItem.BackingWelderId = jot.BackingWelderId; var welderCover = BLL.WelderService.GetWelderById(jot.CoverWelderId); if (welderCover != null) { newWeldReportItem.CoverWelderCode = welderCover.WED_Code; } var welderBacking = BLL.WelderService.GetWelderById(jot.BackingWelderId); if (welderBacking != null) { newWeldReportItem.BackingWelderCode = welderBacking.WED_Code; } newWeldReportItem.JointAttribute = jot.JointAttribute; newWeldReportItem.WeldingLocationId = jot.WeldingLocationId; var location = BLL.Base_WeldingLocationServie.GetWeldingLocationById(jot.WeldingLocationId); if (location != null) { newWeldReportItem.WeldingLocationCode = location.WeldingLocationCode; } } returnViewMatch.Add(newWeldReportItem); } } } } } return returnViewMatch; } /// /// 获取未焊接焊口信息 /// /// /// public static List GetWeldReportItemFind(string weldingDailyId, string pipelineId) { List returnViewMatch = new List(); var weldlineLists = from x in Funs.DB.View_HJGL_NoWeldJointFind where x.PipelineId == pipelineId && (x.WeldingDailyId == null || x.WeldingDailyId == weldingDailyId) select x; if (weldlineLists.Count() > 0) { foreach (var item in weldlineLists) { Model.SpWeldingDailyItem newWeldReportItem = new Model.SpWeldingDailyItem(); newWeldReportItem.WeldJointId = item.WeldJointId; newWeldReportItem.WeldJointCode = item.WeldJointCode; newWeldReportItem.Dia = item.Dia; newWeldReportItem.Thickness = item.Thickness; newWeldReportItem.WeldingMethodCode = item.WeldingMethodCode; newWeldReportItem.WeldTypeCode = item.WeldTypeCode; returnViewMatch.Add(newWeldReportItem); } } return returnViewMatch; } /// /// 增加焊接日报信息 /// /// public static void AddWeldingDaily(Model.HJGL_WeldingDaily WeldingDaily) { Model.SGGLDB db = Funs.DB; Model.HJGL_WeldingDaily newWeldingDaily = new HJGL_WeldingDaily { WeldingDailyId = WeldingDaily.WeldingDailyId, WeldingDailyCode = WeldingDaily.WeldingDailyCode, ProjectId = WeldingDaily.ProjectId, UnitId = WeldingDaily.UnitId, UnitWorkId = WeldingDaily.UnitWorkId, WeldingDate = WeldingDaily.WeldingDate, Tabler = WeldingDaily.Tabler, TableDate = WeldingDaily.TableDate, Remark = WeldingDaily.Remark, }; db.HJGL_WeldingDaily.InsertOnSubmit(newWeldingDaily); db.SubmitChanges(); } /// /// 修改焊接日报信息 /// /// public static void UpdateWeldingDaily(Model.HJGL_WeldingDaily WeldingDaily) { Model.SGGLDB db = Funs.DB; Model.HJGL_WeldingDaily newWeldingDaily = db.HJGL_WeldingDaily.FirstOrDefault(e => e.WeldingDailyId == WeldingDaily.WeldingDailyId); if (newWeldingDaily != null) { newWeldingDaily.WeldingDailyCode = WeldingDaily.WeldingDailyCode; newWeldingDaily.UnitId = WeldingDaily.UnitId; newWeldingDaily.UnitWorkId = WeldingDaily.UnitWorkId; newWeldingDaily.WeldingDate = WeldingDaily.WeldingDate; newWeldingDaily.Tabler = WeldingDaily.Tabler; newWeldingDaily.TableDate = WeldingDaily.TableDate; newWeldingDaily.Remark = WeldingDaily.Remark; db.SubmitChanges(); } } /// /// 根据焊接日报Id删除一个焊接日报信息 /// /// public static void DeleteWeldingDaily(string WeldingDailyId) { Model.SGGLDB db = Funs.DB; Model.HJGL_WeldingDaily delWeldingDaily = db.HJGL_WeldingDaily.FirstOrDefault(e => e.WeldingDailyId == WeldingDailyId); if (delWeldingDaily != null) { db.HJGL_WeldingDaily.DeleteOnSubmit(delWeldingDaily); db.SubmitChanges(); } } /// /// 按类型获取焊接日报项 /// /// /// public static List GetPipeline_WeldingDailyList(string unitId) { var list = (from x in Funs.DB.HJGL_WeldingDaily where x.UnitId == unitId orderby x.WeldingDailyCode select x).ToList(); return list; } #region 焊接日报下拉项 /// /// 焊接日报下拉项 /// /// 下拉框名称 /// 是否显示请选择 /// 耗材类型 public static void InitWeldingDailyDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease, string unitId) { dropName.DataValueField = "WeldingDailyId"; dropName.DataTextField = "WeldingDailyCode"; dropName.DataSource = GetPipeline_WeldingDailyList(unitId); dropName.DataBind(); if (isShowPlease) { Funs.FineUIPleaseSelect(dropName); } } #endregion } }