|
|
@@ -309,8 +309,9 @@ namespace Business.ResourceExamineManagement
|
|
|
//生成当前计算bangid
|
|
|
//SnowFlake snow = new SnowFlake();
|
|
|
//long bangid = snow.NextId();
|
|
|
-
|
|
|
+
|
|
|
//产能检查
|
|
|
+ await ProductiveExamine(1735281284746956800, 1000);
|
|
|
//await ProductiveExamine(1733221167209762816, 100);
|
|
|
|
|
|
await GenerateMorder(14);
|
|
|
@@ -349,17 +350,26 @@ namespace Business.ResourceExamineManagement
|
|
|
#region 1、数据准备
|
|
|
//1.1、获取工艺路径数据
|
|
|
mes_technique tech = await _mes_technique.GetOneByID(tech_id);
|
|
|
+ if (tech == null) {
|
|
|
+ throw new NotImplementedException("请先配置工艺路径!");
|
|
|
+ }
|
|
|
|
|
|
//1.2、获取工艺路径关联工序数据
|
|
|
List<mes_tech_process> tech_Processes = await _mes_tech_process.GetManyByCondition(x => x.tech_id == tech_id);
|
|
|
+ if (tech_Processes.Count == 0)
|
|
|
+ {
|
|
|
+ throw new NotImplementedException("请先配置工序!");
|
|
|
+ }
|
|
|
|
|
|
//1.3、获取当前工艺路径下的工序数据
|
|
|
- FilterDefinition<mes_process> filter = Builders<mes_process>.Filter.In(s => s.Id, tech_Processes.Select(m => m.proc_id).ToList());
|
|
|
- List<mes_process> process = await _mes_process.GetManyByIds(filter);
|
|
|
+ //FilterDefinition<mes_process> filter = Builders<mes_process>.Filter.In(s => s.Id, tech_Processes.Select(m => m.proc_id).ToList());
|
|
|
+ //List<mes_process> process = await _mes_process.GetManyByIds(filter);
|
|
|
+ List<long> procIds = tech_Processes.Select(m => m.proc_id).ToList();
|
|
|
+ List<mes_process> process = await _mes_process.GetManyByCondition(p=> procIds.Contains(p.Id));
|
|
|
|
|
|
//1.3、获取工艺工序关联工位信息
|
|
|
- FilterDefinition<mes_tech_proc_workshop> filter1 = Builders<mes_tech_proc_workshop>.Filter.In(s => s.tech_proc_id, tech_Processes.Select(m => m.Id).ToList());
|
|
|
- List<mes_tech_proc_workshop> tech_Proc_Workshops = await _mes_tech_proc_workshop.GetManyByIds(filter1);
|
|
|
+ List<long> techProcIds = tech_Processes.Select(m => m.Id).ToList();
|
|
|
+ List<mes_tech_proc_workshop> tech_Proc_Workshops = await _mes_tech_proc_workshop.GetManyByCondition(p=> techProcIds.Contains(p.tech_proc_id));
|
|
|
#endregion
|
|
|
|
|
|
#region 计算产能,得到耗时
|