陈清红
2025-04-14 880f3c0257eeb8c37761d484258fdd102a369a19
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
Quintiq file version 2.0
#parent: #root
StaticMethod CallInterface (
  InterfaceDataset owner,
  InterfaceLoginfo loginfo
) as owning JSON
{
  TextBody:
  [*
    // 甄兰鸽 Jul-22-2024 (created)
    address       := Translations::InterfaceDataset_Address(); 
    httpinterface := HTTPInterface::Create( address,80);
    try{
      if( loginfo.Name() = Translations::InterfaceDataset_ShippingActualData_Name() ){//发运实际数据
        
        httpinterface.URL( Translations::InterfaceDataset_ShippingActualData_URL() );
        httpinterface.MediaType( Translations::InterfaceDataset_ContentType() );
        httpinterface.PostMethod( true ); 
        httpinterface.AddHeader("Authorization",InterfaceLoginfo::CallToken( Translations::InterfaceDataset_ShippingActualData_Secret() ))
        
        httpinterface.Call( loginfo.RequestBody() );
        
        result := httpinterface.Result();
        loginfo.Response( result );
        loginfo.Success( true );
      } else if ( loginfo.Name() = Translations::InterfaceDataset_MachineStockData_Name() ){//库存数据(机加库存)
        httpinterface.URL( Translations::InterfaceDataset_MachineStockData_URL() );
        httpinterface.MediaType( Translations::InterfaceDataset_ContentType() );
        httpinterface.PostMethod( true ); 
        httpinterface.AddHeader("Authorization",InterfaceLoginfo::CallToken( Translations::InterfaceDataset_MachineStockData_Secret() ))
        
        httpinterface.Call( loginfo.RequestBody() );
        
        result := httpinterface.Result();
        loginfo.Response( result );
        loginfo.Success( true );
      } else if ( loginfo.Name() = Translations::InterfaceDataset_FinishedEngineInventory_Name() ){//库存数据(发动机成品库存)
        httpinterface.URL( Translations::InterfaceDataset_FinishedEngineInventory_URL() );
        httpinterface.MediaType( Translations::InterfaceDataset_ContentType() );
        httpinterface.PostMethod( true ); 
        httpinterface.AddHeader("Authorization",InterfaceLoginfo::CallToken( Translations::InterfaceDataset_FinishedEngineInventory_Secret() ))
        
        httpinterface.Call( loginfo.RequestBody() );
        
        result := httpinterface.Result();
        loginfo.Response( result );
        loginfo.Success( true );
      } else if( loginfo.Name() = Translations::InterfaceDataset_ActualDailyProductionData_Name() ){//生产实际数据
        httpinterface.URL( Translations::InterfaceDataset_ActualDailyProductionData_URL() );
        httpinterface.MediaType( Translations::InterfaceDataset_ContentType() );
        httpinterface.PostMethod( true ); 
    
        httpinterface.AddHeader("Authorization",InterfaceLoginfo::CallToken( Translations::InterfaceDataset_ActualDailyProductionData_Secret() ))
        
        httpinterface.Call( loginfo.RequestBody() );
        
        result := httpinterface.Result();
        loginfo.Response( result );
        loginfo.Success( true );
      }
    }onerror{
      loginfo.ReturnMsg( e.GeneralInformation() );
    }
    
    //后续公共处理
    loginfo.FinishTime( DateTime::ActualTime() );
    data             := JSON::Null().Build();
    
    if( loginfo.Success() ){
      resultJson     := JSON::Parse( loginfo.Response() );
      code           := resultJson.Get( "code" ).GetString();
      msg            := resultJson.Get( "message" ).GetString();
      data           := resultJson.Get( "data" );
      
      loginfo.ReturnMsg( msg );
      if( code = "200" ){
        total        := resultJson.Get( "dataSize" ).GetNumber();
        loginfo.ReturnSuccess( true );
        loginfo.TotalRow( total );
        loginfo.UpdateLast();
      }
    }
    
    return &data;
  *]
}