|
|
@@ -11,6 +11,7 @@ using System.Linq;
|
|
|
using System.Text;
|
|
|
using System.Threading.Tasks;
|
|
|
using Volo.Abp.Application.Services;
|
|
|
+using Volo.Abp.DependencyInjection;
|
|
|
using Volo.Abp.Domain.Repositories;
|
|
|
using Volo.Abp.TenantManagement;
|
|
|
|
|
|
@@ -19,7 +20,7 @@ namespace Business.ResourceExamineManagement
|
|
|
/// <summary>
|
|
|
/// 生产排产接口实现类
|
|
|
/// </summary>
|
|
|
- public class ProdScheduleAppService : ApplicationService, IProductionScheduleAppService
|
|
|
+ public class ProdScheduleAppService : ApplicationService
|
|
|
{
|
|
|
/// <summary>
|
|
|
/// 雪花算法帮助类
|
|
|
@@ -96,7 +97,7 @@ namespace Business.ResourceExamineManagement
|
|
|
return "";
|
|
|
}
|
|
|
//获取工单数据
|
|
|
- var mes_morders = _mysql_mes_morder.GetListAsync(p => workOrds.Contains(p.morder_no)).Result;
|
|
|
+ var mes_morders = await _mysql_mes_morder.GetListAsync(p => workOrds.Contains(p.morder_no));
|
|
|
CreateWorkOrdDates(mes_morders);
|
|
|
|
|
|
return JsonConvert.SerializeObject("ok");
|
|
|
@@ -106,12 +107,12 @@ namespace Business.ResourceExamineManagement
|
|
|
/// 同步工单等相关数据
|
|
|
/// </summary>
|
|
|
/// <param name="morders"></param>
|
|
|
- public void CreateWorkOrdDates(List<mes_morder> morders)
|
|
|
+ public async void CreateWorkOrdDates(List<mes_morder> morders)
|
|
|
{
|
|
|
//获取工艺路线数据:product_code=物料编码
|
|
|
List<RoutingOpDetail> allRoutings = _routingOpDetail.Select(p => morders.Select(m => m.product_code).Contains(p.RoutingCode));
|
|
|
//获取标准BOM数据
|
|
|
- List<ProductStructureMaster> productStructures = GetProductStructure(morders.Select(p => p.product_code).ToList());
|
|
|
+ List<ProductStructureMaster> productStructures = GetProductStructure(morders.Select(p => p.product_code).Distinct().ToList());
|
|
|
//工单主表
|
|
|
List<WorkOrdMaster> workOrds = new List<WorkOrdMaster>();
|
|
|
WorkOrdMaster workOrd;
|
|
|
@@ -178,15 +179,12 @@ namespace Business.ResourceExamineManagement
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //await _businessDbContext.BulkInsertAsync(workOrds);
|
|
|
- //await _businessDbContext.BulkInsertAsync(workOrdRoutings);
|
|
|
- //await _businessDbContext.BulkInsertAsync(workOrdDetails);
|
|
|
_workOrdMaster.Insert(workOrds);
|
|
|
_workOrdRouting.Insert(workOrdRoutings);
|
|
|
_workOrdDetail.Insert(workOrdDetails);
|
|
|
|
|
|
//排产
|
|
|
- _productionScheduleAppService.DoProductShcedule(workOrds);
|
|
|
+ await _productionScheduleAppService.DoProductShcedule(workOrds);
|
|
|
}
|
|
|
|
|
|
/// <summary>
|