21 changed files with 972 additions and 254 deletions
@ -1,72 +1,587 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Net.Http; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Microsoft.Extensions.Options; |
|||
using StackExchange.Redis; |
|||
using Volo.Abp.Application.Services; |
|||
using Win_in.Sfs.Wms.DataExchange.Domain; |
|||
using Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent; |
|||
using static Volo.Abp.Identity.Settings.IdentitySettingNames; |
|||
|
|||
namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.Client; |
|||
public class WebServiceAppService : IReader |
|||
|
|||
|
|||
#pragma warning disable 108 // Disable "CS0108 '{derivedDto}.ToJson()' hides inherited member '{dtoBase}.ToJson()'. Use the new keyword if hiding was intended."
|
|||
#pragma warning disable 114 // Disable "CS0114 '{derivedDto}.RaisePropertyChanged(String)' hides inherited member 'dtoBase.RaisePropertyChanged(String)'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword."
|
|||
#pragma warning disable 472 // Disable "CS0472 The result of the expression is always 'false' since a value of type 'Int32' is never equal to 'null' of type 'Int32?'
|
|||
#pragma warning disable 612 // Disable "CS0612 '...' is obsolete"
|
|||
#pragma warning disable 1573 // Disable "CS1573 Parameter '...' has no matching param tag in the XML comment for ...
|
|||
#pragma warning disable 1591 // Disable "CS1591 Missing XML comment for publicly visible type or member ..."
|
|||
#pragma warning disable 8073 // Disable "CS8073 The result of the expression is always 'false' since a value of type 'T' is never equal to 'null' of type 'T?'"
|
|||
#pragma warning disable 3016 // Disable "CS3016 Arrays as attribute arguments is not CLS-compliant"
|
|||
#pragma warning disable 8603 // Disable "CS8603 Possible null reference return"
|
|||
#pragma warning disable 8604 // Disable "CS8604 Possible null reference argument for parameter"
|
|||
#pragma warning disable 8625 // Disable "CS8625 Cannot convert null literal to non-nullable reference type"
|
|||
#pragma warning disable CS8765 // Nullability of type of parameter doesn't match overridden member (possibly because of nullability attributes).
|
|||
|
|||
namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.Incoming |
|||
{ |
|||
private readonly IHttpClientFactory _httpClientFactory; |
|||
private readonly IOptions<InjectionMoldingTaskOptions> _options; |
|||
using System = global::System; |
|||
|
|||
[System.CodeDom.Compiler.GeneratedCode("NSwag", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] |
|||
public partial class Client |
|||
{ |
|||
#pragma warning disable 8618
|
|||
private string _baseUrl; |
|||
#pragma warning restore 8618
|
|||
|
|||
private System.Net.Http.HttpClient _httpClient; |
|||
private static System.Lazy<System.Text.Json.JsonSerializerOptions> _settings = new System.Lazy<System.Text.Json.JsonSerializerOptions>(CreateSerializerSettings, true); |
|||
|
|||
#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
|
|||
public Client(string baseUrl, System.Net.Http.HttpClient httpClient) |
|||
#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
|
|||
{ |
|||
BaseUrl = baseUrl; |
|||
_httpClient = httpClient; |
|||
} |
|||
|
|||
private static System.Text.Json.JsonSerializerOptions CreateSerializerSettings() |
|||
{ |
|||
var settings = new System.Text.Json.JsonSerializerOptions(); |
|||
UpdateJsonSerializerSettings(settings); |
|||
return settings; |
|||
} |
|||
|
|||
public string BaseUrl |
|||
{ |
|||
get { return _baseUrl; } |
|||
set |
|||
{ |
|||
_baseUrl = value; |
|||
if (!string.IsNullOrEmpty(_baseUrl) && !_baseUrl.EndsWith("/")) |
|||
_baseUrl += '/'; |
|||
} |
|||
} |
|||
|
|||
protected System.Text.Json.JsonSerializerOptions JsonSerializerSettings { get { return _settings.Value; } } |
|||
|
|||
static partial void UpdateJsonSerializerSettings(System.Text.Json.JsonSerializerOptions settings); |
|||
|
|||
partial void PrepareRequest(System.Net.Http.HttpClient client, System.Net.Http.HttpRequestMessage request, string url); |
|||
partial void PrepareRequest(System.Net.Http.HttpClient client, System.Net.Http.HttpRequestMessage request, System.Text.StringBuilder urlBuilder); |
|||
partial void ProcessResponse(System.Net.Http.HttpClient client, System.Net.Http.HttpResponseMessage response); |
|||
|
|||
/// <summary>
|
|||
/// 生命周期操作
|
|||
/// </summary>
|
|||
/// <returns>Success</returns>
|
|||
/// <exception cref="ApiException">A server side error occurred.</exception>
|
|||
public virtual System.Threading.Tasks.Task<int> GetMacStaticAsync() |
|||
{ |
|||
return GetMacStaticAsync(System.Threading.CancellationToken.None); |
|||
} |
|||
|
|||
/// <param name="cancellationToken">A cancellation token that can be used by other objects or threads to receive notice of cancellation.</param>
|
|||
/// <summary>
|
|||
/// 生命周期操作
|
|||
/// </summary>
|
|||
/// <returns>Success</returns>
|
|||
/// <exception cref="ApiException">A server side error occurred.</exception>
|
|||
public virtual async System.Threading.Tasks.Task<int> GetMacStaticAsync(System.Threading.CancellationToken cancellationToken) |
|||
{ |
|||
var client_ = _httpClient; |
|||
var disposeClient_ = false; |
|||
try |
|||
{ |
|||
using (var request_ = new System.Net.Http.HttpRequestMessage()) |
|||
{ |
|||
request_.Content = new System.Net.Http.StringContent(string.Empty, System.Text.Encoding.UTF8, "text/plain"); |
|||
request_.Method = new System.Net.Http.HttpMethod("POST"); |
|||
request_.Headers.Accept.Add(System.Net.Http.Headers.MediaTypeWithQualityHeaderValue.Parse("text/plain")); |
|||
|
|||
var urlBuilder_ = new System.Text.StringBuilder(); |
|||
if (!string.IsNullOrEmpty(_baseUrl)) urlBuilder_.Append(_baseUrl); |
|||
// Operation Path: "CargoState/GetMacStatic"
|
|||
urlBuilder_.Append("CargoState/GetMacStatic"); |
|||
|
|||
PrepareRequest(client_, request_, urlBuilder_); |
|||
|
|||
var url_ = urlBuilder_.ToString(); |
|||
request_.RequestUri = new System.Uri(url_, System.UriKind.RelativeOrAbsolute); |
|||
|
|||
PrepareRequest(client_, request_, url_); |
|||
|
|||
var response_ = await client_.SendAsync(request_, System.Net.Http.HttpCompletionOption.ResponseHeadersRead, cancellationToken).ConfigureAwait(false); |
|||
var disposeResponse_ = true; |
|||
try |
|||
{ |
|||
var headers_ = new System.Collections.Generic.Dictionary<string, System.Collections.Generic.IEnumerable<string>>(); |
|||
foreach (var item_ in response_.Headers) |
|||
headers_[item_.Key] = item_.Value; |
|||
if (response_.Content != null && response_.Content.Headers != null) |
|||
{ |
|||
foreach (var item_ in response_.Content.Headers) |
|||
headers_[item_.Key] = item_.Value; |
|||
} |
|||
|
|||
ProcessResponse(client_, response_); |
|||
|
|||
var status_ = (int)response_.StatusCode; |
|||
if (status_ == 200) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<int>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
return objectResponse_.Object; |
|||
} |
|||
else |
|||
if (status_ == 403) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Forbidden", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 401) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Unauthorized", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 400) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Bad Request", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 404) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Not Found", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 501) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Server Error", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 500) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Server Error", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
{ |
|||
var responseData_ = response_.Content == null ? null : await response_.Content.ReadAsStringAsync().ConfigureAwait(false); |
|||
throw new ApiException("The HTTP status code of the response was not expected (" + status_ + ").", status_, responseData_, headers_, null); |
|||
} |
|||
} |
|||
finally |
|||
{ |
|||
if (disposeResponse_) |
|||
response_.Dispose(); |
|||
} |
|||
} |
|||
} |
|||
finally |
|||
{ |
|||
if (disposeClient_) |
|||
client_.Dispose(); |
|||
} |
|||
} |
|||
|
|||
/// <returns>Success</returns>
|
|||
/// <exception cref="ApiException">A server side error occurred.</exception>
|
|||
public virtual System.Threading.Tasks.Task<System.Collections.Generic.ICollection<ResponCargoItem>> GetCargoStaticAsync(int? areaID) |
|||
{ |
|||
return GetCargoStaticAsync(areaID, System.Threading.CancellationToken.None); |
|||
} |
|||
|
|||
/// <param name="cancellationToken">A cancellation token that can be used by other objects or threads to receive notice of cancellation.</param>
|
|||
/// <returns>Success</returns>
|
|||
/// <exception cref="ApiException">A server side error occurred.</exception>
|
|||
public virtual async System.Threading.Tasks.Task<System.Collections.Generic.ICollection<ResponCargoItem>> GetCargoStaticAsync(int? areaID, System.Threading.CancellationToken cancellationToken) |
|||
{ |
|||
var client_ = _httpClient; |
|||
var disposeClient_ = false; |
|||
try |
|||
{ |
|||
using (var request_ = new System.Net.Http.HttpRequestMessage()) |
|||
{ |
|||
request_.Content = new System.Net.Http.StringContent(string.Empty, System.Text.Encoding.UTF8, "text/plain"); |
|||
request_.Method = new System.Net.Http.HttpMethod("POST"); |
|||
request_.Headers.Accept.Add(System.Net.Http.Headers.MediaTypeWithQualityHeaderValue.Parse("text/plain")); |
|||
|
|||
var urlBuilder_ = new System.Text.StringBuilder(); |
|||
if (!string.IsNullOrEmpty(_baseUrl)) urlBuilder_.Append(_baseUrl); |
|||
// Operation Path: "CargoState/GetCargoStatic"
|
|||
urlBuilder_.Append("CargoState/GetCargoStatic"); |
|||
urlBuilder_.Append('?'); |
|||
if (areaID != null) |
|||
{ |
|||
urlBuilder_.Append(System.Uri.EscapeDataString("AreaID")).Append('=').Append(System.Uri.EscapeDataString(ConvertToString(areaID, System.Globalization.CultureInfo.InvariantCulture))).Append('&'); |
|||
} |
|||
urlBuilder_.Length--; |
|||
|
|||
PrepareRequest(client_, request_, urlBuilder_); |
|||
|
|||
var url_ = urlBuilder_.ToString(); |
|||
request_.RequestUri = new System.Uri(url_, System.UriKind.RelativeOrAbsolute); |
|||
|
|||
PrepareRequest(client_, request_, url_); |
|||
|
|||
var response_ = await client_.SendAsync(request_, System.Net.Http.HttpCompletionOption.ResponseHeadersRead, cancellationToken).ConfigureAwait(false); |
|||
var disposeResponse_ = true; |
|||
try |
|||
{ |
|||
var headers_ = new System.Collections.Generic.Dictionary<string, System.Collections.Generic.IEnumerable<string>>(); |
|||
foreach (var item_ in response_.Headers) |
|||
headers_[item_.Key] = item_.Value; |
|||
if (response_.Content != null && response_.Content.Headers != null) |
|||
{ |
|||
foreach (var item_ in response_.Content.Headers) |
|||
headers_[item_.Key] = item_.Value; |
|||
} |
|||
|
|||
ProcessResponse(client_, response_); |
|||
|
|||
var status_ = (int)response_.StatusCode; |
|||
if (status_ == 200) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<System.Collections.Generic.ICollection<ResponCargoItem>>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
return objectResponse_.Object; |
|||
} |
|||
else |
|||
if (status_ == 403) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Forbidden", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 401) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Unauthorized", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 400) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Bad Request", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 404) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Not Found", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 501) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Server Error", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
if (status_ == 500) |
|||
{ |
|||
var objectResponse_ = await ReadObjectResponseAsync<RemoteServiceErrorResponse>(response_, headers_, cancellationToken).ConfigureAwait(false); |
|||
if (objectResponse_.Object == null) |
|||
{ |
|||
throw new ApiException("Response was null which was not expected.", status_, objectResponse_.Text, headers_, null); |
|||
} |
|||
throw new ApiException<RemoteServiceErrorResponse>("Server Error", status_, objectResponse_.Text, headers_, objectResponse_.Object, null); |
|||
} |
|||
else |
|||
{ |
|||
var responseData_ = response_.Content == null ? null : await response_.Content.ReadAsStringAsync().ConfigureAwait(false); |
|||
throw new ApiException("The HTTP status code of the response was not expected (" + status_ + ").", status_, responseData_, headers_, null); |
|||
} |
|||
} |
|||
finally |
|||
{ |
|||
if (disposeResponse_) |
|||
response_.Dispose(); |
|||
} |
|||
} |
|||
} |
|||
finally |
|||
{ |
|||
if (disposeClient_) |
|||
client_.Dispose(); |
|||
} |
|||
} |
|||
|
|||
protected struct ObjectResponseResult<T> |
|||
{ |
|||
public ObjectResponseResult(T responseObject, string responseText) |
|||
{ |
|||
this.Object = responseObject; |
|||
this.Text = responseText; |
|||
} |
|||
|
|||
public T Object { get; } |
|||
|
|||
public string Text { get; } |
|||
} |
|||
|
|||
public WebServiceAppService(IHttpClientFactory httpClientFactory, IOptions<InjectionMoldingTaskOptions> options) |
|||
public bool ReadResponseAsString { get; set; } |
|||
|
|||
protected virtual async System.Threading.Tasks.Task<ObjectResponseResult<T>> ReadObjectResponseAsync<T>(System.Net.Http.HttpResponseMessage response, System.Collections.Generic.IReadOnlyDictionary<string, System.Collections.Generic.IEnumerable<string>> headers, System.Threading.CancellationToken cancellationToken) |
|||
{ |
|||
if (response == null || response.Content == null) |
|||
{ |
|||
return new ObjectResponseResult<T>(default(T), string.Empty); |
|||
} |
|||
|
|||
if (ReadResponseAsString) |
|||
{ |
|||
var responseText = await response.Content.ReadAsStringAsync().ConfigureAwait(false); |
|||
try |
|||
{ |
|||
var typedBody = System.Text.Json.JsonSerializer.Deserialize<T>(responseText, JsonSerializerSettings); |
|||
return new ObjectResponseResult<T>(typedBody, responseText); |
|||
} |
|||
catch (System.Text.Json.JsonException exception) |
|||
{ |
|||
var message = "Could not deserialize the response body string as " + typeof(T).FullName + "."; |
|||
throw new ApiException(message, (int)response.StatusCode, responseText, headers, exception); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
try |
|||
{ |
|||
using (var responseStream = await response.Content.ReadAsStreamAsync().ConfigureAwait(false)) |
|||
{ |
|||
var typedBody = await System.Text.Json.JsonSerializer.DeserializeAsync<T>(responseStream, JsonSerializerSettings, cancellationToken).ConfigureAwait(false); |
|||
return new ObjectResponseResult<T>(typedBody, string.Empty); |
|||
} |
|||
} |
|||
catch (System.Text.Json.JsonException exception) |
|||
{ |
|||
var message = "Could not deserialize the response body stream as " + typeof(T).FullName + "."; |
|||
throw new ApiException(message, (int)response.StatusCode, string.Empty, headers, exception); |
|||
} |
|||
} |
|||
} |
|||
|
|||
private string ConvertToString(object value, System.Globalization.CultureInfo cultureInfo) |
|||
{ |
|||
if (value == null) |
|||
{ |
|||
return ""; |
|||
} |
|||
|
|||
if (value is System.Enum) |
|||
{ |
|||
var name = System.Enum.GetName(value.GetType(), value); |
|||
if (name != null) |
|||
{ |
|||
var field = System.Reflection.IntrospectionExtensions.GetTypeInfo(value.GetType()).GetDeclaredField(name); |
|||
if (field != null) |
|||
{ |
|||
var attribute = System.Reflection.CustomAttributeExtensions.GetCustomAttribute(field, typeof(System.Runtime.Serialization.EnumMemberAttribute)) |
|||
as System.Runtime.Serialization.EnumMemberAttribute; |
|||
if (attribute != null) |
|||
{ |
|||
return attribute.Value != null ? attribute.Value : name; |
|||
} |
|||
} |
|||
|
|||
var converted = System.Convert.ToString(System.Convert.ChangeType(value, System.Enum.GetUnderlyingType(value.GetType()), cultureInfo)); |
|||
return converted == null ? string.Empty : converted; |
|||
} |
|||
} |
|||
else if (value is bool) |
|||
{ |
|||
return System.Convert.ToString((bool)value, cultureInfo).ToLowerInvariant(); |
|||
} |
|||
else if (value is byte[]) |
|||
{ |
|||
return System.Convert.ToBase64String((byte[])value); |
|||
} |
|||
else if (value is string[]) |
|||
{ |
|||
return string.Join(",", (string[])value); |
|||
} |
|||
else if (value.GetType().IsArray) |
|||
{ |
|||
var valueArray = (System.Array)value; |
|||
var valueTextArray = new string[valueArray.Length]; |
|||
for (var i = 0; i < valueArray.Length; i++) |
|||
{ |
|||
valueTextArray[i] = ConvertToString(valueArray.GetValue(i), cultureInfo); |
|||
} |
|||
return string.Join(",", valueTextArray); |
|||
} |
|||
|
|||
var result = System.Convert.ToString(value, cultureInfo); |
|||
return result == null ? "" : result; |
|||
} |
|||
} |
|||
|
|||
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] |
|||
public partial class RemoteServiceErrorInfo |
|||
{ |
|||
_httpClientFactory = httpClientFactory; |
|||
_options = options; |
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("code")] |
|||
public string Code { get; set; } |
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("message")] |
|||
public string Message { get; set; } |
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("details")] |
|||
public string Details { get; set; } |
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("data")] |
|||
public System.Collections.Generic.IDictionary<string, object> Data { get; set; } |
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("validationErrors")] |
|||
public System.Collections.Generic.ICollection<RemoteServiceValidationErrorInfo> ValidationErrors { get; set; } |
|||
|
|||
} |
|||
|
|||
public Task<List<IncomingFromExternal>> ReadAsync() |
|||
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] |
|||
public partial class RemoteServiceErrorResponse |
|||
{ |
|||
throw new NotImplementedException(); |
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("error")] |
|||
public RemoteServiceErrorInfo Error { get; set; } |
|||
|
|||
} |
|||
|
|||
|
|||
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] |
|||
public partial class RemoteServiceValidationErrorInfo |
|||
{ |
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("message")] |
|||
public string Message { get; set; } |
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("members")] |
|||
public System.Collections.Generic.ICollection<string> Members { get; set; } |
|||
|
|||
} |
|||
|
|||
/// <summary>
|
|||
///
|
|||
/// </summary>
|
|||
/// <param name="p_type"></param>
|
|||
/// <returns></returns>
|
|||
public async Task<string> WebApi(int p_type) |
|||
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] |
|||
public partial class ResponCargoItem |
|||
{ |
|||
/// <summary>
|
|||
/// 区域ID
|
|||
/// </summary>
|
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("areaID")] |
|||
public int AreaID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 货位号
|
|||
/// </summary>
|
|||
|
|||
//var client = _httpClientFactory.CreateClient();
|
|||
//// 设置用户名和密码
|
|||
//var credentials = Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}"));
|
|||
//client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Basic", credentials);
|
|||
//// 发送HTTP请求
|
|||
//var response = await client.GetAsync("https://example.com/api/data");
|
|||
//if (response.IsSuccessStatusCode)
|
|||
//{
|
|||
// return await response.Content.ReadAsStringAsync();
|
|||
//}
|
|||
// SoapClient
|
|||
|
|||
|
|||
|
|||
|
|||
var address = _options.Value.AutoRemote.IpAddress; |
|||
var username = _options.Value.AutoRemote.UserName; |
|||
var password=_options.Value.AutoRemote.Password; |
|||
var token= _options.Value.AutoRemote.Token; |
|||
var client = _httpClientFactory.CreateClient(); |
|||
var credentials = Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}")); |
|||
client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Basic", credentials); |
|||
var response = await client.GetAsync("https://example.com/api/data").ConfigureAwait(false); |
|||
if (response.IsSuccessStatusCode) |
|||
[System.Text.Json.Serialization.JsonPropertyName("cargoID")] |
|||
public string CargoID { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 零件号
|
|||
/// </summary>
|
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("partCode")] |
|||
public string PartCode { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 货位状态
|
|||
/// </summary>
|
|||
|
|||
[System.Text.Json.Serialization.JsonPropertyName("flag")] |
|||
public int Flag { get; set; } |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
[System.CodeDom.Compiler.GeneratedCode("NSwag", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] |
|||
public partial class ApiException : System.Exception |
|||
{ |
|||
public int StatusCode { get; private set; } |
|||
|
|||
public string Response { get; private set; } |
|||
|
|||
public System.Collections.Generic.IReadOnlyDictionary<string, System.Collections.Generic.IEnumerable<string>> Headers { get; private set; } |
|||
|
|||
public ApiException(string message, int statusCode, string response, System.Collections.Generic.IReadOnlyDictionary<string, System.Collections.Generic.IEnumerable<string>> headers, System.Exception innerException) |
|||
: base(message + "\n\nStatus: " + statusCode + "\nResponse: \n" + ((response == null) ? "(null)" : response.Substring(0, response.Length >= 512 ? 512 : response.Length)), innerException) |
|||
{ |
|||
StatusCode = statusCode; |
|||
Response = response; |
|||
Headers = headers; |
|||
} |
|||
|
|||
public override string ToString() |
|||
{ |
|||
return string.Format("HTTP Response: \n\n{0}\n\n{1}", Response, base.ToString()); |
|||
} |
|||
} |
|||
|
|||
[System.CodeDom.Compiler.GeneratedCode("NSwag", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] |
|||
public partial class ApiException<TResult> : ApiException |
|||
{ |
|||
public TResult Result { get; private set; } |
|||
|
|||
public ApiException(string message, int statusCode, string response, System.Collections.Generic.IReadOnlyDictionary<string, System.Collections.Generic.IEnumerable<string>> headers, TResult result, System.Exception innerException) |
|||
: base(message, statusCode, response, headers, innerException) |
|||
{ |
|||
return await response.Content.ReadAsStringAsync(); |
|||
Result = result; |
|||
} |
|||
return "Error occurred"; |
|||
} |
|||
|
|||
} |
|||
|
|||
#pragma warning restore 108
|
|||
#pragma warning restore 114
|
|||
#pragma warning restore 472
|
|||
#pragma warning restore 612
|
|||
#pragma warning restore 1573
|
|||
#pragma warning restore 1591
|
|||
#pragma warning restore 8073
|
|||
#pragma warning restore 3016
|
|||
#pragma warning restore 8603
|
|||
#pragma warning restore 8604
|
|||
#pragma warning restore 8625
|
|||
|
@ -0,0 +1,37 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.ComponentModel.DataAnnotations; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
|
|||
namespace Win_in.Sfs.Basedata.tests; |
|||
[Serializable] |
|||
|
|||
//测试文件暂时不删除
|
|||
public class ResponseJson |
|||
{ |
|||
// 错误码:
|
|||
public int Code { set; get; } = 0; |
|||
// 返回值 其具体含义由调用接口确定
|
|||
public string Value { set; get; } = ""; |
|||
// 错误消息
|
|||
public string Msg { set; get; } = ""; |
|||
} |
|||
[Serializable] |
|||
public class ResponCargoItem |
|||
{ |
|||
// 区域ID
|
|||
[Display(Name = "区域ID")] |
|||
public int AreaID { set; get; } = 0; |
|||
// 货位号
|
|||
[Display(Name = "货位号")] |
|||
public string CargoID { set; get; } = ""; |
|||
// 零件号
|
|||
[Display(Name = "零件号")] |
|||
public string PartCode { set; get; } = ""; |
|||
//货位状态 1 – 货位占用 0 – 货位空闲
|
|||
[Display(Name = "货位状态")] |
|||
public int Flag { set; get; } = 0; |
|||
} |
@ -0,0 +1,71 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Threading.Tasks; |
|||
using DocumentFormat.OpenXml.Office2010.Drawing; |
|||
using Microsoft.AspNetCore.Authorization; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using Microsoft.Extensions.DependencyInjection; |
|||
using Microsoft.Extensions.Options; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Caching; |
|||
using Volo.Abp.DependencyInjection; |
|||
using Volo.Abp.Domain.Repositories; |
|||
using Win_in.Sfs.Basedata.Application.Contracts; |
|||
using Win_in.Sfs.Basedata.Domain; |
|||
using Win_in.Sfs.Basedata.Domain.Caches; |
|||
using Win_in.Sfs.Basedata.Domain.Shared; |
|||
using Win_in.Sfs.Basedata.tests; |
|||
|
|||
namespace Win_in.Sfs.Basedata.Application; |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 接口模拟测试
|
|||
/// </summary>
|
|||
[AllowAnonymous] |
|||
[Route($"CargoState")] |
|||
public class TestService:ApplicationService |
|||
{ |
|||
private readonly IServiceProvider _serviceProvider; |
|||
private readonly IOptions<CycleOptions> _options; |
|||
public TestService(IServiceProvider serviceProvider, IOptions<CycleOptions> options) |
|||
{ |
|||
_serviceProvider = serviceProvider; |
|||
_options = options; |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 生命周期操作
|
|||
/// </summary>
|
|||
[HttpPost("GetMacStatic")] |
|||
public async Task<int> GetMacStatic() |
|||
{ |
|||
return 1; |
|||
} |
|||
|
|||
|
|||
|
|||
[HttpPost("GetCargoStatic")] |
|||
/// <summary>
|
|||
/// 异步开始生命周期操作不能堵塞
|
|||
/// </summary>
|
|||
public async Task<List<ResponCargoItem>> GetCargoStatic(int AreaID) |
|||
{ |
|||
|
|||
List<ResponCargoItem> result = new List<ResponCargoItem>(); |
|||
|
|||
result.Add(new ResponCargoItem() { AreaID = 1, CargoID = "PTXB1", PartCode = "TMDLYA0A071AB", Flag = 0 }); |
|||
result.Add(new ResponCargoItem() { AreaID = 1, CargoID = "PTXB2", PartCode = "TMDLYA0A061AB", Flag = 0 }); |
|||
result.Add(new ResponCargoItem() { AreaID = 2, CargoID = "ZSXB2", PartCode = "TMDLYD0ABM5A", Flag = 0 }); |
|||
|
|||
|
|||
|
|||
|
|||
return result; |
|||
|
|||
} |
|||
} |
|||
|
|||
|
|||
|
Loading…
Reference in new issue