|
|
@@ -605,14 +605,16 @@ namespace Business.ResourceExamineManagement
|
|
|
foreach (var item in fstWOMasters)
|
|
|
{
|
|
|
var curOp = tsWoRoutings.Where(p => p.WorkOrd == item.WorkOrd).OrderByDescending(p => p.OP).First();
|
|
|
- //计算已完成耗时(分钟)
|
|
|
- decimal usedTime = Math.Ceiling(curOp.QtyComplete / item.QtyOrded * item.LbrVar * 60);
|
|
|
+ //剩余排产数量
|
|
|
+ decimal qtyNeed = item.QtyOrded - curOp.QtyComplete;
|
|
|
+ //剩余工作时长(分钟)
|
|
|
+ decimal usedTime = Math.Ceiling(qtyNeed / item.QtyOrded * item.LbrVar * 60);
|
|
|
workDtos.Add(new WorkOrdMstDto
|
|
|
{
|
|
|
WorkOrd = item.WorkOrd,
|
|
|
ItemNum = item.ItemNum,
|
|
|
- QtyOrded = item.QtyOrded - curOp.QtyComplete,
|
|
|
- LbrVar = item.LbrVar * 60 - usedTime,
|
|
|
+ QtyOrded = qtyNeed,
|
|
|
+ LbrVar = usedTime,
|
|
|
Worked = 0,
|
|
|
QtyWorked = 0,
|
|
|
Op = curOp.OP,
|
|
|
@@ -658,21 +660,23 @@ namespace Business.ResourceExamineManagement
|
|
|
foreach (var item in secWOMasters)
|
|
|
{
|
|
|
var curOp = tsWoRoutings.Where(p => p.WorkOrd == item.WorkOrd).OrderByDescending(p => p.OP).First();
|
|
|
- //计算已完成数量耗时(分钟)
|
|
|
- decimal usedTime = Math.Ceiling(curOp.QtyComplete / item.QtyOrded * item.LbrVar * 60);
|
|
|
+ //剩余排产数量
|
|
|
+ decimal qtyNeed = item.QtyOrded - curOp.QtyComplete;
|
|
|
+ //剩余工作时长(分钟)
|
|
|
+ decimal usedTime = Math.Ceiling(qtyNeed / item.QtyOrded * item.LbrVar * 60);
|
|
|
workDtos.Add(new WorkOrdMstDto
|
|
|
{
|
|
|
WorkOrd = item.WorkOrd,
|
|
|
ItemNum = item.ItemNum,
|
|
|
- QtyOrded = item.QtyOrded - curOp.QtyComplete,
|
|
|
- LbrVar = item.LbrVar * 60 - usedTime,
|
|
|
+ QtyOrded = qtyNeed,
|
|
|
+ LbrVar = usedTime,
|
|
|
Worked = 0,
|
|
|
QtyWorked = 0,
|
|
|
Op = curOp.OP,
|
|
|
WaitTime = curOp.WaitTime * 60,
|
|
|
Priority = item.Priority
|
|
|
});
|
|
|
- sumLbrVar += item.QtyOrded - curOp.QtyComplete;
|
|
|
+ sumLbrVar += usedTime;
|
|
|
sumCleanTimes += curOp.WaitTime * 60;
|
|
|
}
|
|
|
//获取最后一个特殊工单的清场时长
|
|
|
@@ -844,14 +848,16 @@ namespace Business.ResourceExamineManagement
|
|
|
foreach (var item in secWOMasters)
|
|
|
{
|
|
|
var curOp = tsWoRoutings.Where(p => p.WorkOrd == item.WorkOrd).OrderByDescending(p => p.OP).First();
|
|
|
- //计算已完成数量耗时(分钟)
|
|
|
- decimal usedTime = Math.Ceiling(curOp.QtyComplete / item.QtyOrded * item.LbrVar * 60);
|
|
|
+ //剩余排产数量
|
|
|
+ decimal qtyNeed = item.QtyOrded - curOp.QtyComplete;
|
|
|
+ //剩余工作时长(分钟)
|
|
|
+ decimal usedTime = Math.Ceiling(qtyNeed / item.QtyOrded * item.LbrVar * 60);
|
|
|
workDtos.Add(new WorkOrdMstDto
|
|
|
{
|
|
|
WorkOrd = item.WorkOrd,
|
|
|
ItemNum = item.ItemNum,
|
|
|
- QtyOrded = item.QtyOrded - curOp.QtyComplete,
|
|
|
- LbrVar = item.LbrVar * 60 - usedTime,
|
|
|
+ QtyOrded = qtyNeed,
|
|
|
+ LbrVar = usedTime,
|
|
|
Worked = 0,
|
|
|
QtyWorked = 0,
|
|
|
Op = curOp.OP,
|
|
|
@@ -859,6 +865,7 @@ namespace Business.ResourceExamineManagement
|
|
|
Priority = item.Priority
|
|
|
});
|
|
|
sumCleanTimes += curOp.WaitTime * 60;
|
|
|
+ sumLbrVar += usedTime;
|
|
|
}
|
|
|
//获取最后一个特殊工单的清场时长
|
|
|
var last = secWOMasters.Last();
|
|
|
@@ -1106,21 +1113,23 @@ namespace Business.ResourceExamineManagement
|
|
|
foreach (var item in secWOMasters)
|
|
|
{
|
|
|
var curOp = tsWoRoutings.Where(p => p.WorkOrd == item.WorkOrd).OrderByDescending(p => p.OP).First();
|
|
|
- //计算已完成数量耗时(分钟)
|
|
|
- decimal usedTime = Math.Ceiling(curOp.QtyComplete / item.QtyOrded * item.LbrVar * 60);
|
|
|
+ //剩余排产数量
|
|
|
+ decimal qtyNeed = item.QtyOrded - curOp.QtyComplete;
|
|
|
+ //剩余工作时长(分钟)
|
|
|
+ decimal usedTime = Math.Ceiling(qtyNeed / item.QtyOrded * item.LbrVar * 60);
|
|
|
workDtos.Add(new WorkOrdMstDto
|
|
|
{
|
|
|
WorkOrd = item.WorkOrd,
|
|
|
ItemNum = item.ItemNum,
|
|
|
- QtyOrded = item.QtyOrded - curOp.QtyComplete,
|
|
|
- LbrVar = item.LbrVar * 60 - usedTime,
|
|
|
+ QtyOrded = qtyNeed,
|
|
|
+ LbrVar = usedTime,
|
|
|
Worked = 0,
|
|
|
QtyWorked = 0,
|
|
|
Op = curOp.OP,
|
|
|
WaitTime = curOp.WaitTime * 60,
|
|
|
Priority = item.Priority
|
|
|
});
|
|
|
- sumLbrVar += item.LbrVar * 60 - usedTime;
|
|
|
+ sumLbrVar += usedTime;
|
|
|
sumCleanTimes += curOp.WaitTime * 60;
|
|
|
}
|
|
|
//获取最后一个特殊工单的清场时长
|