Exemple #1
0
        /// <summary>
        /// 檢查是否為最後一筆ppk資料
        /// </summary>
        /// <param name="equipmentName"></param>
        /// <param name="deviceName"></param>
        /// <param name="deviceVersion"></param>
        /// <returns></returns>
        public static bool CheckFinalPPK(string equipmentName, string deviceName, decimal deviceVersion)
        {
            //取得PPK資料
            var ppkData = CSTWipPPKInfo.GetPPKDataByEqpAndDevice(equipmentName, deviceName);

            if (ppkData != null && ppkData.PPKCOUNT == 0 && ppkData.Status == "NonActive")
            {
                return(true);
            }
            return(false);
        }
Exemple #2
0
        /// <summary>
        /// 檢查PPK是否完成,true: 表示完成、false: 表示未完成
        /// </summary>
        /// <param name="equipmentName"></param>
        /// <param name="deviceName"></param>
        /// <param name="deviceVersion"></param>
        /// <returns></returns>
        public static void UpdatePPK(string equipmentName, string deviceName, decimal deviceVersion, string resultFlag = null, string updateStatus = null)
        {
            //取得PPK資料
            var ppkData         = CSTWipPPKInfo.GetPPKDataByEqpAndDevice(equipmentName, deviceName);
            var deviceVerExData = DeviceVersionInfo.GetDeviceVersion(deviceName, deviceVersion).ChangeTo <DeviceVersionInfoEx>();

            if (ppkData == null)
            {
                #region 新增PPK資料
                var ppkItem = InfoCenter.Create <CSTWipPPKInfo>();
                ppkItem.EquipmentName = equipmentName;
                ppkItem.DeviceName    = deviceName;
                ppkItem.Status        = "NonActive";
                ppkItem.PPKCOUNT      = deviceVerExData.PPKCount - 1;
                ppkItem.InsertToDB();
                #endregion
            }
            else
            {
                //PPKCount不等於0,Count - 1
                if (ppkData.PPKCOUNT != 0)
                {
                    ppkData.PPKCOUNT = ppkData.PPKCOUNT - 1;
                }
                else
                {
                    if (resultFlag != null)
                    {
                        //檢驗結果
                        if (resultFlag.ToBool())
                        {
                            ppkData.Status = "Active";
                        }
                        else
                        {
                            //回壓PPKConut為初始化
                            ppkData.PPKCOUNT = deviceVerExData.PPKCount;
                        }
                    }
                }

                ppkData.UpdateToDB();
            }
        }