2
schangxiang@126.com
2024-08-31 eb316436b13fa0bcee7ba8e0729c5ae767cded94
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 
using iWare_SCADA_Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace iWare_SCADA_BusinessLogical.Utils
{
    /// <summary>
    /// 业务系统帮助类
    /// </summary>
    public class SystemBussinessHelper
    {
 
        /// <summary>
        /// 是否允许修改WorkPieceState 为WIP
        /// </summary>
        /// <param name="info"></param>
        /// <param name="db"></param>
        /// <param name="logMiddle"></param>
        /// <returns></returns>
        public static bool IsAllowUpdateWorkPieceStateToWip(WorkPieceInfo info, DbModel db, WorkPieceLogMiddle logMiddle)
        {
            //这里修复OP10、OP40 因为PLC先推 SPC推出、再推 产品下线问题,导致 产品下线更新数据时,把SPC数据覆盖的问题 【Editby shaocx,2024-08-27】
            if (logMiddle.WorkingProcedure == "OP10" || logMiddle.WorkingProcedure == "OP40")
            {
                var curPross = db.WorkPieceProcess.Where(x => x.WorkPieceID == info.WorkPieceID).OrderByDescending(x => x.Id).FirstOrDefault();
                if (curPross != null && curPross.OperationType == OperationType.SPC.ToString())
                {
                    return false;
                }
                return true;
            }
            return true;
        }
    }
}