CNCEC_SUBQHSE_WUHUAN/SGGL/BLL/HJGL/WeldingManage/WeldTaskService.cs

241 lines
12 KiB
C#

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
namespace BLL
{
public static class WeldTaskService
{
/// <summary>
///获取焊接任务单信息
/// </summary>
/// <returns></returns>
public static Model.HJGL_WeldTask GetWeldTaskById(string WeldTaskId)
{
return Funs.DB.HJGL_WeldTask.FirstOrDefault(e => e.WeldTaskId == WeldTaskId);
}
public static List<Model.View_HJGL_WeldingTask> GetWeldingTaskList(string ProjectId, string UnitWorkId, DateTime taskDate)
{
return (from x in Funs.DB.View_HJGL_WeldingTask
where x.ProjectId == ProjectId && x.UnitWorkId == UnitWorkId
&& x.TaskDate.Value.Date == taskDate.Date
select x).ToList();
}
/// <summary>
/// 增加焊接任务单信息
/// </summary>
/// <param name="WeldTask"></param>
public static void AddWeldTask(Model.HJGL_WeldTask WeldTask)
{
Model.SGGLDB db = Funs.DB;
Model.HJGL_WeldTask newWeldTask=new Model.HJGL_WeldTask
{
WeldTaskId = WeldTask.WeldTaskId,
ProjectId = WeldTask.ProjectId,
UnitId = WeldTask.UnitId,
UnitWorkId = WeldTask.UnitWorkId,
WeldJointId = WeldTask.WeldJointId,
TaskDate= WeldTask.TaskDate,
CoverWelderId= WeldTask.CoverWelderId,
BackingWelderId= WeldTask.BackingWelderId,
JointAttribute= WeldTask.JointAttribute,
Tabler = WeldTask.Tabler,
TableDate = WeldTask.TableDate,
WeldingMode = WeldTask.WeldingMode,
};
db.HJGL_WeldTask.InsertOnSubmit(newWeldTask);
db.SubmitChanges();
}
/// <summary>
/// 修改焊接任务单信息
/// </summary>
/// <param name="WeldTask"></param>
public static void UpdateWeldTask(Model.HJGL_WeldTask WeldTask)
{
Model.SGGLDB db = Funs.DB;
Model.HJGL_WeldTask newWeldTask = db.HJGL_WeldTask.FirstOrDefault(e => e.WeldTaskId == WeldTask.WeldTaskId);
if (newWeldTask != null)
{
newWeldTask.WeldTaskId = WeldTask.WeldTaskId;
newWeldTask.ProjectId = WeldTask.ProjectId;
newWeldTask.UnitId = WeldTask.UnitId;
newWeldTask.UnitWorkId = WeldTask.UnitWorkId;
newWeldTask.WeldJointId = WeldTask.WeldJointId;
newWeldTask.TaskDate = WeldTask.TaskDate;
newWeldTask.CoverWelderId = WeldTask.CoverWelderId;
newWeldTask.BackingWelderId = WeldTask.BackingWelderId;
newWeldTask.JointAttribute = WeldTask.JointAttribute;
newWeldTask.Tabler = WeldTask.Tabler;
newWeldTask.TableDate = WeldTask.TableDate;
newWeldTask.WeldingMode = WeldTask.WeldingMode;
db.SubmitChanges();
}
}
public static void UpdateCanWelderTask(string weldTaskId,string canWelderId,string canWelderCode)
{
Model.SGGLDB db = Funs.DB;
Model.HJGL_WeldTask newWeldTask = db.HJGL_WeldTask.FirstOrDefault(e => e.WeldTaskId == weldTaskId);
if (newWeldTask != null)
{
newWeldTask.CanWelderId = canWelderId;
newWeldTask.CanWelderCode = canWelderCode;
db.SubmitChanges();
}
}
public static void UpdateWelderTask(string weldTaskId, string welderId)
{
Model.SGGLDB db = Funs.DB;
Model.HJGL_WeldTask newWeldTask = db.HJGL_WeldTask.FirstOrDefault(e => e.WeldTaskId == weldTaskId);
if (newWeldTask != null)
{
newWeldTask.CoverWelderId = welderId;
newWeldTask.BackingWelderId = welderId;
db.SubmitChanges();
}
}
/// <summary>
/// 查找后返回集合增加到列表集团中
/// </summary>
/// <param name="hdItemsString"></param>
/// <returns></returns>
public static List<Model.SpWeldingDailyItem> GetWeldTaskListAddItem(string hdString)
{
List<Model.SpWeldingDailyItem> returnViewMatch = new List<Model.SpWeldingDailyItem>(); //= getWeldReportItem;
if (!string.IsNullOrEmpty(hdString))
{
List<string> totallist = Funs.GetStrListByStr(hdString, '@');
foreach (var hdItemsString in totallist)
{
List<string> list = Funs.GetStrListByStr(hdItemsString, '#');
if (list.Count() == 4)
{
string CoverWelderCode = string.Empty; //盖面焊工号
string BackingWelderCode = string.Empty; //打底焊工号
string weldingLocationCode = string.Empty;
string weldingLocationId = list[0];
var loc = BLL.Base_WeldingLocationServie.GetWeldingLocationById(weldingLocationId);
if (loc != null)
{
weldingLocationCode = loc.WeldingLocationCode;
}
string jointAttribute = list[1];
string WeldingMode = list[2];
string weldlineIdLists = list[3];
List<string> weldlineIds = Funs.GetStrListByStr(weldlineIdLists, '|');
foreach (var weldlineItem in weldlineIds)
{
var jot = Funs.DB.View_HJGL_WeldJoint.FirstOrDefault(e => e.WeldJointId == weldlineItem);
if (jot != null)
{
Model.SpWeldingDailyItem newWeldReportItem = new Model.SpWeldingDailyItem();
newWeldReportItem.WeldTaskId = SQLHelper.GetNewID();
newWeldReportItem.WeldJointId = jot.WeldJointId;
newWeldReportItem.WeldJointCode = jot.WeldJointCode;
newWeldReportItem.PipelineCode = jot.PipelineCode;
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;
newWeldReportItem.WeldingMode = WeldingMode;
newWeldReportItem.TaskDate = DateTime.Now.AddDays(1);
newWeldReportItem.IsWelding = jot.IsWelding;
// 如存在任务单,默认还是原任务单焊工
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.WelderCode;
}
var welderBacking = BLL.WelderService.GetWelderById(jot.BackingWelderId);
if (welderBacking != null)
{
newWeldReportItem.BackingWelderCode = welderBacking.WelderCode;
}
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<Model.SpWeldingDailyItem> GetWeldingTaskList(string ProjectId, string UnitWorkId,DateTime taskDate) {
// List<Model.SpWeldingDailyItem> returnViewMatch = new List<Model.SpWeldingDailyItem>();
// var GetWeldingTask = (from x in Funs.DB.View_HJGL_WeldingTask
// where x.ProjectId == ProjectId && x.UnitWorkId == UnitWorkId
// && x.TaskDate.Value.Date == taskDate.Date
// select x).ToList();
// foreach (var item in GetWeldingTask)
// {
// Model.SpWeldingDailyItem newWeldReportItem = new Model.SpWeldingDailyItem();
// newWeldReportItem.WeldTaskId = item.WeldTaskId;
// newWeldReportItem.WeldJointId = item.WeldJointId;
// newWeldReportItem.WeldJointCode = item.WeldJointCode;
// newWeldReportItem.PipelineCode = item.PipelineCode;
// newWeldReportItem.WeldTypeCode = item.WeldTypeCode;
// newWeldReportItem.JointAttribute = item.JointAttribute;
// newWeldReportItem.CanWelderId = item.CanWelderId;
// newWeldReportItem.CanWelderCode = item.CanWelderCode;
// newWeldReportItem.CoverWelderId = item.CoverWelderId;
// newWeldReportItem.BackingWelderId = item.BackingWelderId;
// newWeldReportItem.BackingWelderCode = item.BackingWelderCode;
// newWeldReportItem.CoverWelderCode = item.CoverWelderCode;
// newWeldReportItem.Size = item.Size;
// newWeldReportItem.Dia = item.Dia;
// newWeldReportItem.Thickness = item.Thickness;
// newWeldReportItem.WeldingMethodCode = item.WeldingMethodCode;
// newWeldReportItem.WeldingMode = item.WeldingMode;
// newWeldReportItem.IsWelding = item.IsWelding;
// newWeldReportItem.TaskDate =Convert.ToDateTime(item.TaskDate);
// returnViewMatch.Add(newWeldReportItem);
// }
// return returnViewMatch;
//}
/// <summary>
/// 根据Id删除一个焊接任务单明细信息
/// </summary>
/// <param name="WeldingDailyId"></param>
public static void DeleteWeldingTask(string WeldTaskId)
{
Model.SGGLDB db = Funs.DB;
Model.HJGL_WeldTask delWeldTask = db.HJGL_WeldTask.FirstOrDefault(e => e.WeldTaskId == WeldTaskId);
if (delWeldTask != null)
{
db.HJGL_WeldTask.DeleteOnSubmit(delWeldTask);
db.SubmitChanges();
}
}
}
}