材料匹配生成焊接任务单修改

This commit is contained in:
2024-12-26 14:42:15 +08:00
parent 0a2f9ea3a7
commit 9c2b6d962a
14 changed files with 272 additions and 56 deletions
+38 -6
View File
@@ -181,7 +181,7 @@ namespace BLL
ReqUnitId = x.ReqUnitId,
ReqUnitName = x.ReqUnitName,
UnitWorkId = x.UnitWorkId,
WeldTaskCode = x.WeldTaskId != null ? x.WeldTaskId.Contains('|') ? Funs.DB.HJGL_WeldTask.FirstOrDefault(e => e.UnitWorkId == x.WeldTaskId.Split('|')[0].ToString() && e.UnitId == x.WeldTaskId.Split('|')[1].ToString() && e.TaskDate.Value.Date == DateTime.ParseExact(x.WeldTaskId.Split('|')[2].ToString(), "yyyyMMdd", null).Date)?.TaskCode : "" : "",
WeldTaskCode = GetWeldTaskCode(x.WeldTaskId),
CategoryString = TwConst.CategoryMap.FirstOrDefault(y => y.Value == x.Category).Key,
TypeString = TwConst.TypeIntMap.FirstOrDefault(y => y.Value == x.TypeInt).Key,
StateString = TwConst.StateMap.FirstOrDefault(y => y.Value == x.State).Key,
@@ -198,6 +198,38 @@ namespace BLL
};
}
public static string GetWeldTaskCode( string WeldTaskId)
{
string result=String.Empty;
if (string.IsNullOrEmpty(WeldTaskId)) return result;
if (WeldTaskId.Split('|').Length==3) //用于处理历史数据
{
result = (from x in Funs.DB.HJGL_WeldTask
where x.UnitWorkId == WeldTaskId.Split('|')[0].ToString()
&& x.UnitId == WeldTaskId.Split('|')[1].ToString()
&& x.TaskDate.Value.Date ==
DateTime.ParseExact(WeldTaskId.Split('|')[2].ToString(), "yyyyMMdd", null)
select x.TaskCode).FirstOrDefault()
?.ToString();
}
else if (WeldTaskId.Split('|').Length == 4)
{
result = (from x in Funs.DB.HJGL_WeldTask
where x.UnitWorkId == WeldTaskId.Split('|')[0].ToString()
&& x.UnitId == WeldTaskId.Split('|')[1].ToString()
&& x.TaskDate.Value.Date ==
DateTime.ParseExact(WeldTaskId.Split('|')[2].ToString(), "yyyyMMdd", null)
&& x.SerialNumber== WeldTaskId.Split('|')[3]
select x.TaskCode).FirstOrDefault()
?.ToString();
}
return result;
}
#endregion
@@ -560,15 +592,15 @@ namespace BLL
/// <param name="unitid"></param>
/// <param name="date"></param>
/// <param name="Personid"></param>
public static void GenOutPlanmasterByWeldTaskId(string unitworkid,string unitid,DateTime date,string Personid)
public static void GenOutPlanmasterByWeldTaskId(string unitworkid,string unitid,DateTime date,string serialNumber, string Personid)
{
Model.SGGLDB db = Funs.DB;
Model.View_HJGL_WeldingTask weldTask = db.View_HJGL_WeldingTask.FirstOrDefault(e => e.UnitWorkId==unitworkid && e.UnitId==unitid&& e.TaskDate.Value.Date==date.Date);
Model.View_HJGL_WeldingTask weldTask = db.View_HJGL_WeldingTask.FirstOrDefault(e => e.UnitWorkId==unitworkid && e.UnitId==unitid&& e.TaskDate.Value.Date==date.Date && e.SerialNumber==serialNumber);
if (weldTask==null)
{
return;
}
string WeldTaskId= unitworkid+"|"+unitid+ "|" + string.Format("{0:yyyyMMdd}", date);
string WeldTaskId= unitworkid+"|"+unitid+ "|" + string.Format("{0:yyyyMMdd}", date)+"|"+serialNumber;
//判断是否已经生成过出库计划单
var queryIsExitInMaster = new Tw_InOutMasterOutput();
queryIsExitInMaster.WeldTaskId = WeldTaskId;
@@ -579,7 +611,7 @@ namespace BLL
{
return;
}
var pipelineList = db.View_HJGL_WeldingTask.Where(e => e.UnitWorkId == unitworkid && e.UnitId == unitid && e.TaskDate.Value.Date == date.Date).Select(x=>x.PipelineId).Distinct().ToList();
var pipelineList = db.View_HJGL_WeldingTask.Where(e => e.UnitWorkId == unitworkid && e.UnitId == unitid && e.TaskDate.Value.Date == date.Date && e.SerialNumber == serialNumber).Select(x=>x.PipelineId).Distinct().ToList();
var MaterDatial= from x in db.HJGL_PipeLineMat
join y in db.HJGL_MaterialCodeLib on x.MaterialCode equals y.MaterialCode
@@ -700,5 +732,5 @@ namespace BLL
}
}
}
}