|
@@ -13,6 +13,7 @@ using System.Globalization;
|
|
|
using System.Linq;
|
|
using System.Linq;
|
|
|
using System.Threading.Tasks;
|
|
using System.Threading.Tasks;
|
|
|
using Volo.Abp.Application.Services;
|
|
using Volo.Abp.Application.Services;
|
|
|
|
|
+using Volo.Abp.MultiTenancy;
|
|
|
|
|
|
|
|
namespace Business.Quartz
|
|
namespace Business.Quartz
|
|
|
{
|
|
{
|
|
@@ -67,11 +68,6 @@ namespace Business.Quartz
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
private ISqlRepository<ShopCalendarWorkCtr> _shopCalendarWorkCtr;
|
|
private ISqlRepository<ShopCalendarWorkCtr> _shopCalendarWorkCtr;
|
|
|
|
|
|
|
|
- /// <summary>
|
|
|
|
|
- /// 排产异常记录表
|
|
|
|
|
- /// </summary>
|
|
|
|
|
- private ISqlRepository<ScheduleExceptionMaster> _scheduleExceptionMaster;
|
|
|
|
|
-
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 产线休息时间记录表
|
|
/// 产线休息时间记录表
|
|
|
/// </summary>
|
|
/// </summary>
|
|
@@ -87,6 +83,8 @@ namespace Business.Quartz
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
SnowFlake help = new SnowFlake();
|
|
SnowFlake help = new SnowFlake();
|
|
|
|
|
|
|
|
|
|
+ private readonly ICurrentTenant _currentTenant;
|
|
|
|
|
+
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 工作日历数据
|
|
/// 工作日历数据
|
|
|
/// </summary>
|
|
/// </summary>
|
|
@@ -118,9 +116,9 @@ namespace Business.Quartz
|
|
|
ISqlRepository<ScheduleResultOpMaster> scheduleResultOpMaster,
|
|
ISqlRepository<ScheduleResultOpMaster> scheduleResultOpMaster,
|
|
|
ISqlRepository<InvMaster> invMaster,
|
|
ISqlRepository<InvMaster> invMaster,
|
|
|
ISqlRepository<ShopCalendarWorkCtr> shopCalendarWorkCtr,
|
|
ISqlRepository<ShopCalendarWorkCtr> shopCalendarWorkCtr,
|
|
|
- ISqlRepository<ScheduleExceptionMaster> scheduleExceptionMaster,
|
|
|
|
|
ISqlRepository<QualityLineWorkDetail> qualityLineWorkDetail,
|
|
ISqlRepository<QualityLineWorkDetail> qualityLineWorkDetail,
|
|
|
- ISqlRepository<HolidayMaster> holidayMaster
|
|
|
|
|
|
|
+ ISqlRepository<HolidayMaster> holidayMaster,
|
|
|
|
|
+ ICurrentTenant currentTenant
|
|
|
)
|
|
)
|
|
|
{
|
|
{
|
|
|
_itemMaster= itemMaster;
|
|
_itemMaster= itemMaster;
|
|
@@ -132,9 +130,9 @@ namespace Business.Quartz
|
|
|
_scheduleResultOpMaster= scheduleResultOpMaster;
|
|
_scheduleResultOpMaster= scheduleResultOpMaster;
|
|
|
_invMaster= invMaster;
|
|
_invMaster= invMaster;
|
|
|
_shopCalendarWorkCtr= shopCalendarWorkCtr;
|
|
_shopCalendarWorkCtr= shopCalendarWorkCtr;
|
|
|
- _scheduleExceptionMaster= scheduleExceptionMaster;
|
|
|
|
|
_qualityLineWorkDetail= qualityLineWorkDetail;
|
|
_qualityLineWorkDetail= qualityLineWorkDetail;
|
|
|
_holidayMaster = holidayMaster;
|
|
_holidayMaster = holidayMaster;
|
|
|
|
|
+ _currentTenant= currentTenant;
|
|
|
}
|
|
}
|
|
|
#endregion
|
|
#endregion
|
|
|
|
|
|
|
@@ -182,8 +180,6 @@ namespace Business.Quartz
|
|
|
holidays = _holidayMaster.Select(p => p.Domain == "1001" && p.IsActive && p.Dated >= earlist);
|
|
holidays = _holidayMaster.Select(p => p.Domain == "1001" && p.IsActive && p.Dated >= earlist);
|
|
|
|
|
|
|
|
//3、排产
|
|
//3、排产
|
|
|
- //排产异常记录
|
|
|
|
|
- List<ScheduleExceptionMaster> scheduleExceptions = new List<ScheduleExceptionMaster>();
|
|
|
|
|
//生产周期
|
|
//生产周期
|
|
|
List<PeriodSequenceDet> periodSequenceDtls = new List<PeriodSequenceDet>();
|
|
List<PeriodSequenceDet> periodSequenceDtls = new List<PeriodSequenceDet>();
|
|
|
//排产记录表
|
|
//排产记录表
|
|
@@ -202,28 +198,14 @@ namespace Business.Quartz
|
|
|
if (routingDtos.Count() == 0)//没有维护主工序
|
|
if (routingDtos.Count() == 0)//没有维护主工序
|
|
|
{
|
|
{
|
|
|
//记录排产异常原因
|
|
//记录排产异常原因
|
|
|
- scheduleExceptions.Add(new ScheduleExceptionMaster
|
|
|
|
|
- {
|
|
|
|
|
- RecID = help.NextId(),
|
|
|
|
|
- Domain = "1001",
|
|
|
|
|
- WorkOrd = item.WorkOrd,
|
|
|
|
|
- Remark = "工单的工序数据维护错误",
|
|
|
|
|
- CreatTime = DateTime.Now
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ new NLogHelper("ProductionScheduleAppService").WriteLog("DoProductShcedule", "工单<"+ item.WorkOrd + ">的工序数据维护错误", _currentTenant.Id.ToString());
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
//校验每层级工序是否都维护了产线
|
|
//校验每层级工序是否都维护了产线
|
|
|
if (routingDtos.Exists(p=> string.IsNullOrEmpty(p.Line)))
|
|
if (routingDtos.Exists(p=> string.IsNullOrEmpty(p.Line)))
|
|
|
{
|
|
{
|
|
|
//记录排产异常原因
|
|
//记录排产异常原因
|
|
|
- scheduleExceptions.Add(new ScheduleExceptionMaster
|
|
|
|
|
- {
|
|
|
|
|
- RecID = help.NextId(),
|
|
|
|
|
- Domain = "1001",
|
|
|
|
|
- WorkOrd = item.WorkOrd,
|
|
|
|
|
- Remark = "工单的产线数据维护错误",
|
|
|
|
|
- CreatTime = DateTime.Now
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ new NLogHelper("ProductionScheduleAppService").WriteLog("DoProductShcedule", "工单<" + item.WorkOrd + ">的产线数据维护错误", _currentTenant.Id.ToString());
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
//校验每个层级是否维护了工作日历
|
|
//校验每个层级是否维护了工作日历
|
|
@@ -240,14 +222,7 @@ namespace Business.Quartz
|
|
|
if (flag)
|
|
if (flag)
|
|
|
{
|
|
{
|
|
|
//记录排产异常原因
|
|
//记录排产异常原因
|
|
|
- scheduleExceptions.Add(new ScheduleExceptionMaster
|
|
|
|
|
- {
|
|
|
|
|
- RecID = help.NextId(),
|
|
|
|
|
- Domain = "1001",
|
|
|
|
|
- WorkOrd = item.WorkOrd,
|
|
|
|
|
- Remark = "工单产线的工作日历数据维护错误",
|
|
|
|
|
- CreatTime = DateTime.Now
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ new NLogHelper("ProductionScheduleAppService").WriteLog("DoProductShcedule", "工单<" + item.WorkOrd + ">的产线工作日历数据维护错误", _currentTenant.Id.ToString());
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -261,7 +236,6 @@ namespace Business.Quartz
|
|
|
_workOrdMaster.Update(workOrds);
|
|
_workOrdMaster.Update(workOrds);
|
|
|
_periodSequenceDet.Insert(periodSequenceDtls);
|
|
_periodSequenceDet.Insert(periodSequenceDtls);
|
|
|
_scheduleResultOpMaster.Insert(scheduleMasters);
|
|
_scheduleResultOpMaster.Insert(scheduleMasters);
|
|
|
- _scheduleExceptionMaster.Insert(scheduleExceptions);
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|