2022-11-25 焊接材料匹配任务清单树优化

This commit is contained in:
2022-11-25 14:08:03 +08:00
parent 4255cacbe9
commit b6f8ef01f1
9 changed files with 113 additions and 31 deletions
+6
View File
@@ -1022,11 +1022,17 @@ namespace BLL
T entity = new T();
foreach (PropertyInfo p in pArray)
{
if (string.IsNullOrEmpty(row[p.Name].ToString()))
{
p.SetValue(entity, "", null);
continue;
}
if (row[p.Name] is Int64)
{
p.SetValue(entity, Convert.ToInt32(row[p.Name]), null);
continue;
}
p.SetValue(entity, row[p.Name], null);
}
list.Add(entity);
@@ -9,6 +9,22 @@ namespace BLL
{
public class HJGL_MaterialService
{
/// <summary>
/// 工程预制库存
/// </summary>
public static List<Model.MaterialStockItem> materialStockItems_SHOP
{
get;
set;
}
/// <summary>
/// 现场安装库存
/// </summary>
public static List<Model.MaterialStockItem> materialStockItems_FIELD
{
get;
set;
}
/// <summary>
/// 获取材料信息
/// </summary>
@@ -96,7 +112,6 @@ namespace BLL
mat.MaterialCode,
lib.MaterialName,
lib.MaterialSpec,
lib.MaterialMade,
lib.MaterialUnit,
sum( mat.Num)+ISNULL( aa.Num,0) as MaterialNum
from HJGL_MaterialManage mat
@@ -125,7 +140,6 @@ namespace BLL
mat.MaterialCode,
lib.MaterialName,
lib.MaterialSpec,
lib.MaterialMade,
lib.MaterialUnit,
sum( mat.Num)+ISNULL( aa.Num,0) as MaterialNum
from Material_Material mat
@@ -240,12 +254,30 @@ namespace BLL
if (q != null && q.Count() > 0) //判断管线是否有关联材料
{
var pipemodel = BLL.PipelineService.GetPipelineByPipelineId(pipelineid);
List<Model.MaterialStockItem> list = GetMaterialStockItems(projectid, pipemodel.PipeArea);
if (list != null && list.Count > 0) //判断是否有库存信息
List<Model.MaterialStockItem> materialStockItems = new List<Model.MaterialStockItem>();
if (pipemodel.PipeArea==PipelineService.PipeArea_SHOP)
{
if (HJGL_MaterialService.materialStockItems_SHOP.Count == 0)
{
HJGL_MaterialService.materialStockItems_SHOP = GetMaterialStockItems(projectid, pipemodel.PipeArea);
}
materialStockItems = materialStockItems_SHOP;
}
else if (pipemodel.PipeArea == PipelineService.PipeArea_FIELD)
{
if(HJGL_MaterialService.materialStockItems_FIELD.Count == 0)
{
HJGL_MaterialService.materialStockItems_FIELD = GetMaterialStockItems(projectid, pipemodel.PipeArea);
}
materialStockItems = materialStockItems_FIELD;
}
//List<Model.MaterialStockItem> materialStockItems = GetMaterialStockItems(projectid, pipemodel.PipeArea);
if (materialStockItems != null && materialStockItems.Count > 0) //判断是否有库存信息
{
foreach (var item in q)
{
var StockMater = list.Where(x => x.MaterialCode == item.MaterialCode).FirstOrDefault();
var StockMater = materialStockItems.Where(x => x.MaterialCode == item.MaterialCode).FirstOrDefault();
if (StockMater != null) //判断该材料是否存在库存
{
var StockNum = StockMater.MaterialNum;
@@ -93,7 +93,7 @@ namespace BLL
{
model.PipelineId = PipelineId;
model.PipelineComponentCode = model_mat.PrefabricatedComponents;
model.DrawingName = model_mat.PrefabricatedComponents.Substring(0, model_mat.PrefabricatedComponents.LastIndexOf('-'));
model.DrawingName = model_mat.PrefabricatedComponents.Substring(0, model_mat.PrefabricatedComponents.LastIndexOf('-')).Replace("\"", "");
model.State = state_0;
UpdatePipelineComponent(model);
}
@@ -103,7 +103,7 @@ namespace BLL
model.PipelineComponentId = SQLHelper.GetNewID();
model.PipelineId = PipelineId;
model.PipelineComponentCode = model_mat.PrefabricatedComponents;
model.DrawingName = model_mat.PrefabricatedComponents.Substring(0, model_mat.PrefabricatedComponents.LastIndexOf('-'));
model.DrawingName = model_mat.PrefabricatedComponents.Substring(0, model_mat.PrefabricatedComponents.LastIndexOf('-')).Replace("\"", "");
model.State = state_0;
AddPipelineComponent(model);
}