Browse Source

修复抄写EDID无SN时无法抄写的Bug.

JeffWang 2 years ago
parent
commit
c255a36793
1 changed files with 16 additions and 11 deletions
  1. 16 11
      FactoryTool_CShare/Views/OperationPanel.cs

+ 16 - 11
FactoryTool_CShare/Views/OperationPanel.cs

@@ -2325,24 +2325,29 @@ namespace MOKA_Factory_Tools
                     psn = keyInfo._PSN.data = "FZ1BBCP2706XXNXB00037";
 #endif
                 }
-                if (WriteMGK.Checked && midListNow.keytype.ContainsKey("MGK_KEY"))
+
+                if (!CommonMethod.IsEDIDCopy(midListNow))
                 {
-                    if (!V2Method.GetMidKey(midListNow.host, SN, orderNow, psn, devicecode, key2Write, errorDBNow, ref keyInfo, out error))
+                    // 部分订单无key,只有Roku信息;
+                    if (midListNow.keytype.Count() != 0 )
                     {
-                        keyInfo.MGK.data = mgk;
-                        Log.WriteGetKeyLog("\r\nMGK=" + keyInfo.MGK);
+                        if (!V2Method.GetMidKey(midListNow.host, SN, orderNow, psn, devicecode, key2Write, errorDBNow, ref keyInfo, out error))
+                        {
+                            ErrMsg = string.Format("{0} GetIDMKeys Failed!\r\n{1}", SN, error);
+                            Log.WriteErrorLog(ErrMsg);
+                            goto end;
+                        }
                     }
                     else
                     {
-                        ErrMsg = String.Format("{0}\r\n{1}", LResource.GetMGKError, error);
-                        Log.WriteErrorLog(ErrMsg);
-                        goto end;
+                        Log.WriteInfoLog("mid type is null, don't query idm keys");
                     }
                 }
-                if (WriteFairplay.Checked && midListNow.keytype.ContainsKey("Fairplay_KEY"))
+
+                if (midListNow.keytype.ContainsKey("DSN"))
                 {
-                    //if (!CommonMethod.GetIDMKeys(midListNow.host, SN, orderNow, psn, devicecode, key2Write, errorDBNow, ref keyInfo, out error))
-                    if (!V2Method.GetMidKey(midListNow.host, SN, orderNow, psn, devicecode, key2Write, errorDBNow, ref keyInfo, out error))
+                    // 预防切了pid后,deviceCode变化了;
+                    if (keyInfo.DSN.data.IndexOf(devicecode) == -1)
                     {
                         keyInfo.Fairplay.data = fairplay;
                         Log.WriteGetKeyLog("\r\nFairplay=" + keyInfo.Fairplay);
@@ -6263,7 +6268,7 @@ namespace MOKA_Factory_Tools
         /// <param name="e"></param>
         private void OnBtnClickStart(object sender, EventArgs e)
         {
-            SN = "";    // SN置为空,用于不需要扫码SN的某些工厂;
+            SN = SNText.Text;    // SN置为空,用于不需要扫码SN的某些工厂;
             keyInfo = new KeyInfo();
             if (preloadNow)
             {