cnf
2025-03-20 4d7047f93580a2a7dd36b915ef05a2ea292e8108
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
using AlibabaCloud.SDK.Dingtalkworkflow_1_0.Models;
using AlibabaCloud.TeaUtil.Models;
using MES.Service.DB;
using MES.Service.Dto.webApi;
using MES.Service.Dto.webApi.DeliveryNote;
using MES.Service.Modes;
using MES.Service.Modes.DeliveryNote;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using Tea;
 
public class ProductionOrderManager : Repository<ProductionOrders>
{
 
    public static AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client CreateClient1()
    {
        AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
        config.Protocol = "https";
        config.RegionId = "central";
        return new AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client(config);
    }
 
    /**
     * 获取钉钉的 Access Token
     * @return string 返回获取到的 Access Token
     */
    public string GetToken()
    {
        AlibabaCloud.SDK.Dingtalkoauth2_1_0.Client client = CreateClient1();
        AlibabaCloud.SDK.Dingtalkoauth2_1_0.Models.GetAccessTokenRequest getAccessTokenRequest = new AlibabaCloud.SDK.Dingtalkoauth2_1_0.Models.GetAccessTokenRequest
        {
            AppKey = "dingyzos0r1bizj7g6lr",
            AppSecret = "-HP4RvK2OUbqhG3iBUpd_TPe5MZRj8cfLc0b8Skt8rhC3I38kVLY9SS8P3kLWFcH",
        };
 
        try
        {
            var response = client.GetAccessToken(getAccessTokenRequest);
            return response.Body.AccessToken; // 返回获取到的 Access Token
        }
        catch (TeaException err)
        {
            Console.WriteLine($"TeaException: Code={err.Code}, Message={err.Message}");
            return null;
        }
        catch (Exception _err)
        {
            Console.WriteLine($"Exception: {_err.Message}");
            return null;
        }
    }
 
    public static AlibabaCloud.SDK.Dingtalkyida_1_0.Client CreateClient()
    {
        AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config();
        config.Protocol = "https";
        config.RegionId = "central";
        return new AlibabaCloud.SDK.Dingtalkyida_1_0.Client(config);
    }
 
    public string GetFileUrl()
    {
 
        string accessToken = GetToken();
        if (string.IsNullOrEmpty(accessToken))
        {
            return "获取 Access Token 失败";
        }
        AlibabaCloud.SDK.Dingtalkyida_1_0.Client client = CreateClient();
        AlibabaCloud.SDK.Dingtalkyida_1_0.Models.GetOpenUrlHeaders getOpenUrlHeaders = new AlibabaCloud.SDK.Dingtalkyida_1_0.Models.GetOpenUrlHeaders();
        getOpenUrlHeaders.XAcsDingtalkAccessToken = accessToken;
        AlibabaCloud.SDK.Dingtalkyida_1_0.Models.GetOpenUrlRequest getOpenUrlRequest = new AlibabaCloud.SDK.Dingtalkyida_1_0.Models.GetOpenUrlRequest
        {
            SystemToken = "54A66HC1YDSSO9DP61Y93CWQ2W9B36IZZOY6MC81",
            UserId = "923188102",
            Language = "zh_CN",
            FileUrl = "https://cfw1x5.aliwork.com/inst/filePreview?appType=APP_Q7PLYKXMKFUJ5HY6DMWR&fileName=APP_Q7PLYKXMKFUJ5HY6DMWR_MDcxODM5NTEyMDMyNjgzODgzX09WOTY2V0ExN1lUVFRDS0Q3WjFYTTlQNUw5MVIzTTNaQ1hHOE1SOQ$$.xls",
            Timeout = 3600000,
        };
        try
        {
           
            var response = client.GetOpenUrlWithOptions("APP_Q7PLYKXMKFUJ5HY6DMWR", getOpenUrlRequest, getOpenUrlHeaders, new AlibabaCloud.TeaUtil.Models.RuntimeOptions());
            return (Newtonsoft.Json.JsonConvert.SerializeObject(response.Body));
        }
        catch (TeaException err)
        {
            return $"TeaException: Code={err.Code}, Message={err.Message}";
        }
        catch (Exception _err)
        {
            return $"Exception: {_err.Message}";
        }
    }
 
 
    public dynamic Save(ErpProductionOrder erpProductionOrder)
    {
        //var erpProductionOrder = productionOrder.erpProductionOrder;
        var mesProductionOrder = GetMesProductionOrder(erpProductionOrder);
 
        return UseTransaction(db =>
        {
            return SaveOrUpdateData(db, mesProductionOrder) ? 1 : 0;
        }) > 0;
    }
 
    public dynamic SaveList(List<ErpProductionOrder> erpProductionOrder)
    {
        var result = erpProductionOrder.Select(Save).ToList();
        return result.All(b => b);
    }
 
    public ProductionOrders GetMesProductionOrder(ErpProductionOrder erpProductionOrder)
    {
        var mesProductionOrders = new ProductionOrders
        {
            ImageUrl = erpProductionOrder.ImageUrl,
            SalesOrder = erpProductionOrder.SalesOrder
        };
 
        return mesProductionOrders;
    }
 
    private bool SaveOrUpdateData(SqlSugarScope db, ProductionOrders productionOrders)
    {
        var orUpdate = base.Insert(productionOrders);
        if (orUpdate) return true;
        throw new NotImplementedException("插入或更新失败");
    }
}