|
|
@@ -2406,8 +2406,8 @@ namespace Business.ResourceExamineManagement
|
|
|
{
|
|
|
return "当前任务工厂编号为空,请检查。";
|
|
|
}
|
|
|
-
|
|
|
- List<mes_morder> Mes_Morders = _mysql_mes_morder.GetListAsync(x => x.morder_state == "初始" && x.factory_id.ToString() == domain).Result;
|
|
|
+ var ordlist = _workOrdMaster.Select(x => x.Domain == domain && string.IsNullOrEmpty(x.Typed) == true && x.Status.ToLower() == "p").ToList();
|
|
|
+ List<mes_morder> Mes_Morders = _mysql_mes_morder.GetListAsync(x => ordlist.Select(c=>c.WorkOrd).Contains(x.morder_no) && x.factory_id.ToString() == domain).Result;
|
|
|
|
|
|
/*//先排除锁定期内的工单 //优先级排序
|
|
|
var sysSet = _generalizedCodeMaster.Select(s => s.FldName == "SystemConfig" && s.Val == "WorkOrderLockPeriod" && s.Domain == domain).ToList();
|
|
|
@@ -2544,7 +2544,7 @@ namespace Business.ResourceExamineManagement
|
|
|
/// <returns></returns>
|
|
|
public async Task<string> OrderCompleteInspection(string domain, string userAccount)
|
|
|
{
|
|
|
- var workords = _workOrdMaster.Select(s => s.Domain == domain && (s.Status == "r" || string.IsNullOrEmpty(s.Status) == true)).ToList();
|
|
|
+ var workords = _workOrdMaster.Select(s => s.Domain == domain && (s.Status.ToLower() == "r" || string.IsNullOrEmpty(s.Status) == true)).ToList();
|
|
|
List<mes_morder> morders = _mysql_mes_morder.GetListAsync(x => x.factory_id.ToString() == domain && workords.Select(s => s.WorkOrd).Contains(x.morder_no) && (x.morder_state == MorderEnum.Initial_state || x.morder_state == MorderEnum.Xd_state) && !x.IsDeleted).Result;
|
|
|
if (morders.Any())
|
|
|
{
|
|
|
@@ -3368,8 +3368,8 @@ namespace Business.ResourceExamineManagement
|
|
|
holidays = _holidayMaster.Select(p => p.Dated >= DateTime.Now.Date);
|
|
|
|
|
|
//主工单
|
|
|
- List<mo_mes_morder> mo_Mes_Morders = _mes_morder.GetListAsync(x => boms.Select(p => p.item_number).Contains(x.product_code) && (x.morder_state != MorderEnum.Accomplish_state || x.morder_state != MorderEnum.Close_state
|
|
|
- && x.morder_icitem_type != MorderEnum.XgwyMorder) && x.company_id == param.company_id && x.factory_id == param.factoryId && x.bang_id == bangid).Result;
|
|
|
+ var ordlist = _workOrdMaster.Select(x => x.Domain == param.factoryId.ToString() && string.IsNullOrEmpty(x.Typed) == true && (x.Status.ToLower() == "p" || x.Status == "r")).ToList();
|
|
|
+ List<mo_mes_morder> mo_Mes_Morders = _mes_morder.GetListAsync(x => boms.Select(p => p.item_number).Contains(x.product_code) && ordlist.Select(c => c.WorkOrd).Contains(x.morder_no) && x.company_id == param.company_id && x.factory_id == param.factoryId && x.bang_id == bangid).Result;
|
|
|
List<long> moids = mo_Mes_Morders.Select(p => p.mysql_id).ToList();
|
|
|
List<mo_mes_moentry> mo_Mes_Moentry = _mes_moentry.GetListAsync(x => moids.Contains(x.moentry_moid)).Result;
|
|
|
//工单占用表
|
|
|
@@ -3841,7 +3841,7 @@ namespace Business.ResourceExamineManagement
|
|
|
if (string.IsNullOrEmpty(workOrd))
|
|
|
{
|
|
|
//获取工单数据
|
|
|
- workOrdMasters = _workOrdMaster.Select(p => p.Domain == domain && p.OrdDate >= DateTime.Now.Date.AddDays(1) && p.OrdDate < DateTime.Now.Date.AddDays(4) && p.Status != "r" && p.Status != "c");
|
|
|
+ workOrdMasters = _workOrdMaster.Select(p => p.Domain == domain && p.OrdDate >= DateTime.Now.Date.AddDays(1) && p.OrdDate < DateTime.Now.Date.AddDays(4) && p.Status.ToLower() == "p");
|
|
|
}
|
|
|
else {
|
|
|
workOrds = workOrd.Split(",").ToList();
|
|
|
@@ -3849,7 +3849,7 @@ namespace Business.ResourceExamineManagement
|
|
|
{
|
|
|
return "没有需要下达的工单。";
|
|
|
}
|
|
|
- workOrdMasters = _workOrdMaster.Select(p => p.Domain == domain && workOrds.Contains(p.WorkOrd) && p.Status != "r" && p.Status != "c");
|
|
|
+ workOrdMasters = _workOrdMaster.Select(p => p.Domain == domain && workOrds.Contains(p.WorkOrd) && p.Status.ToLower() == "p");
|
|
|
}
|
|
|
if (workOrdMasters.Count == 0)
|
|
|
{
|
|
|
@@ -4043,7 +4043,7 @@ namespace Business.ResourceExamineManagement
|
|
|
workOrd.RoutingCode = item.product_code;
|
|
|
workOrd.Period = 1;
|
|
|
workOrd.Priority = item.urgent;
|
|
|
- workOrd.Status = "";
|
|
|
+ workOrd.Status = "p";
|
|
|
workOrd.IsActive = true;
|
|
|
workOrd.IsConfirm = true;
|
|
|
workOrd.CreateTime = DateTime.Now;
|
|
|
@@ -4550,7 +4550,7 @@ namespace Business.ResourceExamineManagement
|
|
|
//取数开始时间为当前日期
|
|
|
DateTime startTime = DateTime.Now;
|
|
|
//尚未开始生产的工单+正在生产的工单
|
|
|
- var workOrds = _workOrdMaster.Select(p => p.IsActive && p.Domain == domain && ((p.OrdDate < endDate && p.OrdDate >= startTime && p.Status.ToUpper() == "P" && (string.IsNullOrEmpty(p.Typed) || (!string.IsNullOrEmpty(p.Typed) && p.Typed.ToUpper() != "PW" && p.BusinessID > 0))) || p.Status.ToLower() == "w")).ToList();
|
|
|
+ var workOrds = _workOrdMaster.Select(p => p.IsActive && p.Domain == domain && ((p.OrdDate < endDate && p.OrdDate >= startTime && p.Status.ToUpper() == "P" && (string.IsNullOrEmpty(p.Typed) || (!string.IsNullOrEmpty(p.Typed) && p.Typed.ToUpper() != "PW" && p.BusinessID > 0))) || p.Status.ToUpper() == "W")).ToList();
|
|
|
string result = await _productionScheduleAppService.DoProductSchedule(startTime,workOrds, domain, 2);
|
|
|
return result;
|
|
|
}
|