alielie
2026-03-02 12e606635c42ea20f4b7c2bdda5204237a4b4c96
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
using HMI.Core.Util;
using Plugin.TestResult_WPF;
using System;
using System.Net.Http;
using System.Text;
 
namespace Plugin.TestResult.Util
{
    public class HttpResult
    {
        public int code { get; set; }
        public string msg { get; set; }
        public string ipn { get; set; }
    }
 
    public class PNUtil
    {
        public static bool GetPN(string mesAddress, string sn, out string pn, out string msg)
        {
            pn = null;
            msg = string.Empty;
            try
            {
                string json = $"{{\"csn\":\"{sn}\",\"station_name\":\"OP170Burn-In老化\"}}";
                HttpClient val = new HttpClient();
                ViewControl.Logger.Debug($"Get PN Send: [{json}]");
                try
                {
                    StringContent val2 = new StringContent(json, Encoding.UTF8, "application/json");
                    HttpResponseMessage result = val.PostAsync($"http://{mesAddress}/mes-module-system-2.1.1/lixun/api/getPn", (HttpContent)(object)val2).Result;
                    result.EnsureSuccessStatusCode();
                    string resJson = result.Content.ReadAsStringAsync().Result;
                    HttpResult httpResult = JsonUtil.Deserialize<HttpResult>(resJson);
                    ViewControl.Logger.Debug($"Get PN Receive: [{resJson}]");
                    if (httpResult.code == 200)
                    {
                        pn = httpResult.ipn;
                        return true;
                    }
                    msg = httpResult.msg;
                    return false;
                }
                finally
                {
                    ((IDisposable)val)?.Dispose();
                }
            }
            catch (Exception ex)
            {
                ViewControl.Logger.Debug($"Get PN Error.", ex);
                msg = $"请求PN异常!{ex.Message}";
                return false;
            }
        }
    }
}