Parcourir la source

设置DAK相关控件;DAK数量http接口;抄写、Check动作

Wang Jeff il y a 3 ans
Parent
commit
483186b6c4

+ 8 - 8
FactoryTool_CShare/Views/OperationPanel.Designer.cs

@@ -70,7 +70,7 @@
             this.m_readDAK = new CCWin.SkinControl.SkinLabel();
             this.m_checkDAK = new CCWin.SkinControl.SkinLabel();
             this.m_writeDAK = new CCWin.SkinControl.SkinLabel();
-            this.skinLabel31 = new CCWin.SkinControl.SkinLabel();
+            this.DAKCount = new CCWin.SkinControl.SkinLabel();
             this.WriteDAK = new CCWin.SkinControl.SkinCheckBox();
             this.m_readFVP = new CCWin.SkinControl.SkinLabel();
             this.m_checkFVP = new CCWin.SkinControl.SkinLabel();
@@ -568,7 +568,7 @@
             this.skinPanel1.Controls.Add(this.m_readDAK);
             this.skinPanel1.Controls.Add(this.m_checkDAK);
             this.skinPanel1.Controls.Add(this.m_writeDAK);
-            this.skinPanel1.Controls.Add(this.skinLabel31);
+            this.skinPanel1.Controls.Add(this.DAKCount);
             this.skinPanel1.Controls.Add(this.WriteDAK);
             this.skinPanel1.Controls.Add(this.m_readFVP);
             this.skinPanel1.Controls.Add(this.m_checkFVP);
@@ -727,12 +727,12 @@
             this.m_writeDAK.BorderColor = System.Drawing.Color.White;
             this.m_writeDAK.Name = "m_writeDAK";
             // 
-            // skinLabel31
+            // DAKCount
             // 
-            resources.ApplyResources(this.skinLabel31, "skinLabel31");
-            this.skinLabel31.BackColor = System.Drawing.Color.Transparent;
-            this.skinLabel31.BorderColor = System.Drawing.Color.White;
-            this.skinLabel31.Name = "skinLabel31";
+            resources.ApplyResources(this.DAKCount, "DAKCount");
+            this.DAKCount.BackColor = System.Drawing.Color.Transparent;
+            this.DAKCount.BorderColor = System.Drawing.Color.White;
+            this.DAKCount.Name = "DAKCount";
             // 
             // WriteDAK
             // 
@@ -2097,7 +2097,7 @@
         private CCWin.SkinControl.SkinLabel m_readDAK;
         private CCWin.SkinControl.SkinLabel m_checkDAK;
         private CCWin.SkinControl.SkinLabel m_writeDAK;
-        private CCWin.SkinControl.SkinLabel skinLabel31;
+        private CCWin.SkinControl.SkinLabel DAKCount;
         private CCWin.SkinControl.SkinCheckBox WriteDAK;
     }
 }

+ 91 - 0
FactoryTool_CShare/Views/OperationPanel.cs

@@ -1623,6 +1623,9 @@ namespace MOKA_Factory_Tools
             if (WriteACASKey.Checked)
                 reportdata += "acas_data=" + keyInfo.ACASKey_Data.data + "&";
 
+            if (WriteDAK.Checked)
+                reportdata += "DAK=" + keyInfo.DAK.data + "&";
+
             if (ProjectIDNote.Text != LResource.SkipCovering)
                 reportdata += "projectid=" + ProjectIDText.Text + "&";
 
@@ -2436,6 +2439,20 @@ namespace MOKA_Factory_Tools
                         goto end;
                     }
                 }
+                if (WriteDAK.Checked)
+                {
+                    if (CommonMethod.GetKeys(midListNow.host, "DAK", SN, midListNow.keytype["DAK"], errorDBNow, out string hash, out error, orderNow, out string md5))
+                    {
+                        keyInfo.DAK.data = hash;
+                        Log.WriteGetKeyLog("\r\nDAK=" + keyInfo.DAK);
+                    }
+                    else
+                    {
+                        ErrMsg = String.Format("{0}\r\n{1}", LResource.GetDAKKeyError, error);
+                        Log.WriteErrorLog(ErrMsg);
+                        goto end;
+                    }
+                }
                 watch.Stop();
                 Log.WriteInfoLog(string.Format("Get All Keys Elapsed={0}", watch.Elapsed.TotalMilliseconds));
             }
@@ -4656,6 +4673,44 @@ namespace MOKA_Factory_Tools
                 SetcolorStatus(ProductMsg_Text, Color.FromArgb(128, 255, 128));
             }
 
+            // DAK 抄写;
+            if ( WriteDAK.Checked )
+            {
+                if (!CommonMethod.IsNumberAndWord(keyInfo.DAK.data))
+                {
+                    ErrMsg = string.Format("DAK format error!\r\n{0}", keyInfo.DAK.data);
+                    Log.WriteErrorLog(ErrMsg);
+                    goto end;
+                }
+                byte[] DAKData = SerialInit.HexToByte(keyInfo.DAK.data);
+                Log.WriteInfoLog("Write DAK...");
+                if (SerialCMD.SetFireTVDAK(TVPort, DAKData, out result, out data, out error, SerailDelay))
+                {
+                    SetsuccessStatus(m_writeDAK);
+                    Log.WriteInfoLog("Check DAK...");
+                    if (writeCheckNow.DAKCheckcheck ? SerialCMD.CheckFireTVDAK(TVPort, out result, out data, out error, SerailDelay) : true)
+                    {
+                        SetsuccessStatus(m_checkDAK);
+                    }
+                    else
+                    {
+                        SetfailStatus(m_checkDAK);
+                        ErrMsg = string.Format("{0}  check DAK fail!", SN);
+                        Log.WriteErrorLog(ErrMsg);
+                        goto end;
+                    }
+                }
+                else
+                {
+                    SetfailStatus(m_writeDAK);
+                    ErrMsg = string.Format("{0}  Write DAK fail!", SN);
+                    Log.WriteErrorLog(ErrMsg);
+                    goto end;
+                }
+
+                keyInfo.DAK.result = true;
+            }
+
             // DSN抄写;
             if (WriteDSN.Checked)
             {
@@ -5357,6 +5412,12 @@ namespace MOKA_Factory_Tools
                     SetCheckboxStatus(WriteACASKey, true);
                 UpdateKeyCount("ACAS_KEY", keys["ACAS_KEY"], false);
             }
+            if (keys.ContainsKey("DAK"))
+            {
+                if (writeDoneNow.DAKWrite_YesNo)
+                    SetCheckboxStatus(WriteDAK, true);
+                UpdateKeyCount("DAK", keys["DAK"], false);
+            }
             return true;
         }
 
@@ -6178,6 +6239,36 @@ namespace MOKA_Factory_Tools
                         }
                         break;
                     }
+                case "DAK":
+                    {
+                        url1 = url + "/statdak.do?";
+                        item.URL = url1;
+                        item.Postdata = "type=" + keytype;
+                        HttpResult result = http.GetHtml(item);
+                        if (result.StatusCode == System.Net.HttpStatusCode.OK)
+                        {
+                            Log.WriteGetKeyLog("\r\nGetDAK count:\r\n" + item.URL + "\r\n" + item.Postdata + "\r\n" + result.Html);
+                            if (Xmlconfig.KeyCountXml(result.Html, "response", "count", out code, out desc, out count))
+                            {
+                                if (count == "0")
+                                    SetKeyCountStatus(DAKCount, count, 2);
+                                else
+                                    SetKeyCountStatus(DAKCount, count, 0);
+                            }
+                            else
+                            {
+                                CommonMethod.ReportErrormsg("Fail to parse DAK count", desc + "\r\n" + result.Html + "\r\nAddress: " + item.URL + "\r\nPostdata: " + item.Postdata, errorDBNow);
+                                SetKeyCountStatus(DAKCount, code + "Error", 1);
+                            }
+                        }
+                        else
+                        {
+                            CommonMethod.ReportErrormsg("Fail to get DAK count", result.StatusDescription + "\r\n" + result.Html + "\r\nAddress: " + item.URL + "\r\nPostdata: " + item.Postdata, errorDBNow);
+                            SetKeyCountStatus(DAKCount, result.StatusDescription, 1);
+                            return false;
+                        }
+                        break;
+                    }
                 default:
                     {
                         break;

+ 12 - 12
FactoryTool_CShare/Views/OperationPanel.resx

@@ -1254,37 +1254,37 @@
   <data name="&gt;&gt;m_writeDAK.ZOrder" xml:space="preserve">
     <value>2</value>
   </data>
-  <data name="skinLabel31.AutoSize" type="System.Boolean, mscorlib">
+  <data name="DAKCount.AutoSize" type="System.Boolean, mscorlib">
     <value>True</value>
   </data>
-  <data name="skinLabel31.Font" type="System.Drawing.Font, System.Drawing">
+  <data name="DAKCount.Font" type="System.Drawing.Font, System.Drawing">
     <value>微软雅黑, 9pt</value>
   </data>
-  <data name="skinLabel31.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
+  <data name="DAKCount.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
     <value>NoControl</value>
   </data>
-  <data name="skinLabel31.Location" type="System.Drawing.Point, System.Drawing">
+  <data name="DAKCount.Location" type="System.Drawing.Point, System.Drawing">
     <value>107, 501</value>
   </data>
-  <data name="skinLabel31.Size" type="System.Drawing.Size, System.Drawing">
+  <data name="DAKCount.Size" type="System.Drawing.Size, System.Drawing">
     <value>19, 17</value>
   </data>
-  <data name="skinLabel31.TabIndex" type="System.Int32, mscorlib">
+  <data name="DAKCount.TabIndex" type="System.Int32, mscorlib">
     <value>145</value>
   </data>
-  <data name="skinLabel31.Text" xml:space="preserve">
+  <data name="DAKCount.Text" xml:space="preserve">
     <value>∞</value>
   </data>
-  <data name="&gt;&gt;skinLabel31.Name" xml:space="preserve">
-    <value>skinLabel31</value>
+  <data name="&gt;&gt;DAKCount.Name" xml:space="preserve">
+    <value>DAKCount</value>
   </data>
-  <data name="&gt;&gt;skinLabel31.Type" xml:space="preserve">
+  <data name="&gt;&gt;DAKCount.Type" xml:space="preserve">
     <value>CCWin.SkinControl.SkinLabel, CSkin, Version=16.1.14.3, Culture=neutral, PublicKeyToken=null</value>
   </data>
-  <data name="&gt;&gt;skinLabel31.Parent" xml:space="preserve">
+  <data name="&gt;&gt;DAKCount.Parent" xml:space="preserve">
     <value>skinPanel1</value>
   </data>
-  <data name="&gt;&gt;skinLabel31.ZOrder" xml:space="preserve">
+  <data name="&gt;&gt;DAKCount.ZOrder" xml:space="preserve">
     <value>3</value>
   </data>
   <data name="WriteDAK.AutoSize" type="System.Boolean, mscorlib">