添加项目文件。

This commit is contained in:
Administrator
2026-08-04 18:36:40 +08:00
parent 16fb9e4f5a
commit a2ecbc795d
616 changed files with 149853 additions and 0 deletions
+21
View File
@@ -0,0 +1,21 @@
using System.ComponentModel;
namespace JinYuan.MES.Enums
{
/// <summary>
///
/// </summary>
public enum MesResType
{
[Description("停线")]
A = 1,
[Description("排出")]
B = 2,
[Description("警示")]
C = 3,
[Description("OK值")]
D = 4,
[Description("未知的结果")]
UnKnow = 99999
}
}
+28
View File
@@ -0,0 +1,28 @@
using System.ComponentModel;
namespace JinYuan.MES.Enums
{
/// <summary>
/// MES上传的三种类型
/// </summary>
public enum MesUploadType
{
/// <summary>
/// 单进整出
/// </summary>
[Description("DZ")]
DZ = 1,
/// <summary>
/// 整进整出
/// </summary>
[Description("ZZ")]
ZZ = 2,
/// <summary>
/// 单进单出
/// </summary>
[Description("DD")]
DD = 3,
}
}
+147
View File
@@ -0,0 +1,147 @@
using JinYuan.MES.Enums;
using JinYuan.MES.Models;
using JinYuan.Models;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
namespace JinYuan.MES
{
/// <summary>
/// MES接口
/// </summary>
public interface IMes
{
/// <summary>
/// 登录接口
/// </summary>
Task<(bool Success, string Message, string MesUserLevel)> LoginAsync(string url, string siteCode, string lineCode, string equipNum, string userName, string passWord);
Task<(bool Success, string Message)> LoginAsync(string url, string siteCode, string lineCode, string equipNum, string UserCardID);
/// <summary>
/// 设备参数设定值请求接口
/// </summary>
Task<(ParamReturnData Data, string Mesage)> GetParamSetRequestAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName);
/// <summary>
/// 参数设定值变更接口
/// </summary>
Task<(bool Success, string ResJson)> ParamChangeAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, List<TagListItem> paramChangeItems);
/// <summary>
/// 电芯档位获取
/// </summary>
Task<(bool Success, List<MaterialGrade> materialGrades)> QueryGradeAsync(string url, string siteCode, string lineCode, string equipNum, string recordDate, string qty, string materialCode, string userName, List<MaterialLot> listCode);
/// <summary>
/// 料盘信息获取
/// </summary>
Task<(bool Success, string mesMessage, MesResType mesResType, TrayInfo trayInfo)> QueryMesTrayInfosAsync(string url, string siteCode, string lineCode, string equipNum, string recordDate, string containerCode, string materialCode, string userName);
//Task<(bool Success, string mesMessage, MesResType mesResType, BatteryInfo trayInfo)> QueryMesGradeInfosAsync(string url, string siteCode, string lineCode, string equipNum, string recordDate, string containerCode, string materialCode, string userName);
/// <summary>
/// 料框码与电池解绑
/// </summary>
Task<(bool Success, string mesMessage)> UnbindTrayInfosAsync(string url, string equipNum, string trayCode);
/// <summary>
/// 半成品电池绑定(装箱)
/// </summary>
Task<(bool success, string mesMessage, MesResType mesResType, List<MaterialPackInfo> materialPackInfos)> PackLoadAsync(string url, string siteCode, string lineCode, string equipNum, string ContainerCode, int capacity, string grade, string materialCode, List<BatteryInfo> cellDataVOList);
/// <summary>
/// 成品电池绑定(装箱)
/// </summary>
Task<(bool success, string mesMessage, MesResType mesResType, List<MaterialPackInfo> materialPackInfos)> PackLoadFinishAsync(string url, string siteCode, string lineCode, string equipNum, string ContainerCode, int capacity, string grade, string materialCode, List<BatteryInfo> cellDataVOList);
/// <summary>
/// 箱唛信息获取
/// </summary>
//Task<(bool success, string mesMessage, MesResType mesResType, List<TagInfo> cartonTagInfos)> QueryCartonAsync(string url, string siteCode, string lineCode, string equipNum, string containerCode);
/// <summary>
/// 栈板信息获取
/// </summary>
//Task<(bool success, string mesMessage, MesResType mesResType, List<TagInfo> palletTagInfos)> QueryPalletAsync(string url, string siteCode, string lineCode, string equipNum, string containerCode);
/// <summary>
/// 客户标签与系统标签绑定
/// </summary>
//Task<(bool success, string mesMessage, MesResType mesResType)> BindingAsync(string url, string siteCode, string lineCode, string equipNum, string containerCode, string palletCode, string custcartonCode, string custpalletCode, List<TagInfo> custcarton, List<TagInfo> custpallet);
///// <summary>
///// 复投单个上传(只上传条码,不上传卷芯码)
///// </summary>
//Task<(bool Success, string MesMessage, MesResType MesResType)> SingleFTCellInStationAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, string BarCode);
///// <summary>
///// 电芯进站接口(多个)
///// </summary>
//Task<(bool Success, List<string> MesMessage, List<MesResType> MesResType)> ManyCellInStationAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, List<string> listBar);
//Task<(bool Success, List<string> MesMessage, List<MesResType> MesResType, List<string> CellCode)> ManyCellInStationAsync1(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, List<string> listBar);
///// <summary>
///// 电芯出站接口(多个)
///// </summary>
//Task<(bool Success, List<string> MesMessage, List<MesResType> MesResType)> OutboundInformationsAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, List<BGearEntity> listBar);
///// <summary>
///// 组装出站(单电池)
///// </summary>
///// <param name="url"></param>
///// <param name="siteCode"></param>
///// <param name="lineCode"></param>
///// <param name="equipNum"></param>
///// <param name="materialCode"></param>
///// <param name="userName"></param>
///// <param name="m"></param>
///// <param name="type"></param>
///// <param name="materialLotCodeLocator"></param>
///// <returns></returns>
//Task<(bool Success, string Mesage, MesResType MesResType)> SingleCellInAndOutStationAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, BGearEntity m, int type, string materialLotCodeLocator);
///// <summary>
///// 原材料上传
///// </summary>
///// <param name="url"></param>
///// <param name="MaterialCode"></param>
///// <param name="equipNum"></param>
///// <param name="BarCode"></param>
///// <param name="resJson"></param>
///// <param name="mesResType"></param>
///// <returns></returns>
//Task<(bool Success, string MesMessage, MesResType MesResType)> RawMaterialStationAsync(string url, string MaterialCode, string equipNum, string BarCode);
///// <summary>
///// 产品过程加工参数接口
///// </summary>
//Task<(bool Success, string ResJson)> ProductProcessParamAsync(string url, string siteCode, string userName, string equipNum, string lineCode, string materialCode, MesUploadType unloadType, List<ProductProcessParam> productProcessParam);
/// <summary>
/// 产品结果加工参数接口
/// </summary>
//Task<(bool Success, string ResJson)> ProducResultParamAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, List<BatteryInfo> batteryInfos, MesUploadType unloadType, string insertTime);
Task<bool> ProducResultParamAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, string containerCode, string palletId, List<BatteryInfo> batteryInfos, MesUploadType unloadType);
/// <summary>
/// 设备运行状态接口
/// </summary>
Task<(bool Success, string ResJson)> UploadEquStatusAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, string guid, string statusCode, List<FaultCodeList> faultCodes);
/// <summary>
/// 设备报警接口
/// </summary>
Task<(bool Success, string Mesage)> UploadEquAlarmAsync(string url, string siteCode, string lineCode, string equipNum, string materialCode, string userName, List<AlarmData> alarmObj, string guid);
/// <summary>
/// 能耗数据上传
/// </summary>
Task<(bool Success, string Mesage)> UploadEquEnergyAsync(string url, string siteCode, string lineCode, string equipNum, string userName, List<string> electricMeterNum, List<WattrMeter> wattrs);
/// <summary>
/// 风速仪数据上传
/// </summary>
Task<(bool Success, string Mesage)> UploadDeviceCollectDataAsync(string url, string equipNum, List<string> antiDustAirSpeedNum, List<float> collectData);
}
}
+92
View File
@@ -0,0 +1,92 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{530B6426-08E7-461C-91DC-787F876620FC}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>JinYuan.MES</RootNamespace>
<AssemblyName>JinYuan.MES</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="JinYuan.VirtualDataLibrary">
<HintPath>..\JinYuan.VirtualDataLibrary\obj\Debug\JinYuan.VirtualDataLibrary.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Enums\MesResType.cs" />
<Compile Include="Enums\MesUploadType.cs" />
<Compile Include="IMes.cs" />
<Compile Include="MESApiHelper.cs" />
<Compile Include="MesDataProcess.cs" />
<Compile Include="Models\BindingParam.cs" />
<Compile Include="Models\EqpStatusParam.cs" />
<Compile Include="Models\BatteryInfo.cs" />
<Compile Include="Models\CartonParam.cs" />
<Compile Include="Models\MaterialLot.cs" />
<Compile Include="Models\ParamReturnData.cs" />
<Compile Include="Models\SingleCellOutStation.cs" />
<Compile Include="Models\SingleCellInStation.cs" />
<Compile Include="Models\ManyCellInStation.cs" />
<Compile Include="Models\ManyCellOutStation.cs" />
<Compile Include="Models\LoginEnyity.cs" />
<Compile Include="Models\ParamChange.cs" />
<Compile Include="Models\ProductProcessParam.cs" />
<Compile Include="Models\ProductResultParameters.cs" />
<Compile Include="Models\MesResponse.cs" />
<Compile Include="Models\unbindParam.cs" />
<Compile Include="Models\UploadAlarmParam.cs" />
<Compile Include="Models\UploadDeviceCollectData.cs" />
<Compile Include="Models\WattrMeter.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\JinYuan.Helper\JinYuan.Helper.csproj">
<Project>{258D0AB7-2B4F-4D8F-A3CD-7A8CB4A85360}</Project>
<Name>JinYuan.Helper</Name>
</ProjectReference>
<ProjectReference Include="..\JinYuan.Models\JinYuan.Models.csproj">
<Project>{4C0BCB84-5CD7-4846-8363-C4C10D46E391}</Project>
<Name>JinYuan.Models</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
+200
View File
@@ -0,0 +1,200 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
namespace JinYuan.MES
{
public static class MESApiHelper
{
private static readonly HttpClient _httpClient;
private static string _appId;
private static string _appKey;
private static string _token;
private static DateTime _tokenExpireTime;
private const string TOKEN_URL = "https://example.com/api/oauth/token"; // Token 获取地址
static MESApiHelper()
{
_httpClient = new HttpClient();
_httpClient.Timeout = TimeSpan.FromSeconds(10); // 设置默认超时
}
/// <summary>
/// 初始化 AppId 和 AppKey
/// </summary>
/// <param name="appId"></param>
/// <param name="appKey"></param>
public static void Initialize(string appId, string appKey)
{
_appId = appId;
_appKey = appKey;
}
/// <summary>
/// 确保 Token 有效
/// </summary>
private static async Task EnsureTokenValidAsync()
{
if (string.IsNullOrEmpty(_token) || DateTime.Now >= _tokenExpireTime)
{
await RefreshTokenAsync();
}
}
/// <summary>
/// 刷新 Token
/// </summary>
private static async Task RefreshTokenAsync()
{
var tokenRequest = new
{
appId = _appId,
appKey = _appKey
};
var response = await SendRequestAsync<TokenResponse>(TOKEN_URL, HttpMethod.Post, tokenRequest, false);
if (response != null && response.Success)
{
_token = response.Token;
_tokenExpireTime = DateTime.Now.AddSeconds(response.Expire);
}
else
{
throw new Exception("获取 Token 失败");
}
}
/// <summary>
/// 发送 HTTP 请求
/// </summary>
/// <typeparam name="T">返回类型</typeparam>
/// <param name="url">请求地址</param>
/// <param name="method">HTTP 方法</param>
/// <param name="data">请求数据</param>
/// <param name="requiresAuth">是否需要认证</param>
/// <returns></returns>
public static async Task<T> SendRequestAsync<T>(string url, HttpMethod method, object data = null, bool requiresAuth = true)
{
if (requiresAuth)
{
await EnsureTokenValidAsync();
}
using (var request = new HttpRequestMessage(method, url))
{
if (requiresAuth)
{
request.Headers.Add("Authorization", $"Bearer {_token}");
}
if (data != null)
{
var json = JsonConvert.SerializeObject(data);
request.Content = new StringContent(json, Encoding.UTF8, "application/json");
}
var response = await _httpClient.SendAsync(request);
var content = await response.Content.ReadAsStringAsync();
if (!response.IsSuccessStatusCode)
{
throw new HttpRequestException($"请求失败: {response.StatusCode}, {content}");
}
return JsonConvert.DeserializeObject<T>(content);
}
}
/// <summary>
/// 发送 HTTP 请求并返回字符串
/// </summary>
/// <param name="url">请求地址</param>
/// <param name="method">HTTP 方法</param>
/// <param name="data">请求数据</param>
/// <param name="requiresAuth">是否需要认证</param>
/// <returns></returns>
public static async Task<string> SendRequestStringAsync(string url, HttpMethod method, string data = null, bool requiresAuth = true)
{
if (requiresAuth)
{
await EnsureTokenValidAsync();
}
using (var request = new HttpRequestMessage(method, url))
{
if (requiresAuth)
{
request.Headers.Add("Authorization", $"Bearer {_token}");
}
if (data != null)
{
if (method == HttpMethod.Get)
{
//// GET 请求
//var query = QueryStringBuilder(data);
url = url + "/" + data;
request.RequestUri = new Uri(url);
}
else
{
request.Content = new StringContent(data, Encoding.UTF8, "application/json");
}
}
try
{
var response = await _httpClient.SendAsync(request);
var content = await response.Content.ReadAsStringAsync();
if (!response.IsSuccessStatusCode)
{
throw new HttpRequestException($"请求失败: {response.StatusCode}, {content}");
}
return content;
}
catch (TaskCanceledException ex)
{
Debug.WriteLine($"【超时异常】请求被取消: {ex.Message},通常是服务端无响应/超时");
throw;
}
catch (Exception ex)
{
Debug.WriteLine($"【请求异常】{ex.Message}");
throw;
}
}
}
private static string QueryStringBuilder(object obj)
{
var properties = obj.GetType().GetProperties();
var keyValuePairs = properties
.Where(p => p.GetValue(obj) != null)
.Select(p => $"{Uri.EscapeDataString(p.Name)}={Uri.EscapeDataString(p.GetValue(obj).ToString())}");
return string.Join("&", keyValuePairs);
}
}
/// <summary>
/// Token 响应模型
/// </summary>
public class TokenResponse
{
public bool Success { get; set; }
public string Token { get; set; }
public int Expire { get; set; }
}
}
File diff suppressed because it is too large Load Diff
+99
View File
@@ -0,0 +1,99 @@
using System.Collections.Generic;
using System.Security.Cryptography;
namespace JinYuan.MES.Models
{
/// <summary>
/// 卡板电芯信息上传(装箱)接口参数类
/// </summary>
public class PackParam
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
public string outerContainerCode { get; set; }
public string outerContainerTypeCode { get; set; }
public List<ContainerInfo> containerBarcodeInfos { get; set; }
/// <summary>
/// 卡板码(箱唛号)
/// </summary>
public string ContainerCode { get; set; }
public int capacity { get; set; }
/// <summary>
/// 档位
/// </summary>
public string grade { get; set; }
public string materialCode { get; set; }
/// <summary>
/// 电芯信息列表
/// </summary>
public List<BatteryInfo> cellDataVOList { get; set; }
};
/// <summary>
/// 卡板电芯信息上传(装箱)接口参数类
/// </summary>
public class FinishPackParam
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipCode { get; set; }
public string outerContainerCode { get; set; } //外箱号
//public string outerContainerTypeCode { get; set; }
public List<ContainerInfo> containerBarcodeInfos { get; set; }
};
public class ContainerInfo
{
/// <summary>
/// 卡板码(箱唛号)
/// </summary>
public string containerCode { get; set; } // 内箱号
public string rohs { get; } = "RoSH Label"; // 环境标识
public string productDate { get; set; } // 生产 日期
public string containerTypeCode { get; } = "XM_BZCPGD"; // 容器类型
public int packQty { get; set; } // 包装数量
//public string productionType { get; set; }
public string groupNum { get; set; } // 组号
public string customerName { get; set; }
public string customerCode { get; set; } //客户代码
public string supplierCode { get; } = "EVEDL"; // 供应商
public string batchQty { get; set; } // 批数量
public string grade { get; set; } //档位
public string customerOrder { get; set; } // 客户订单号
public string soNum { get; set; }
public string materialName { get; set; } // 物料名称
public string materialCode { get; set; } //物料编码
public string voltage { get; set; } // 电压
public string inresistance { get; set; } // 内阻
public string capacity { get; set; } //容量
public string remark { get; set; }
public List<BatteryInfo> batteryInfos { get; set; }
}
public class BatteryInfo
{
//电芯条码
public string identification { get; set; }
//电芯条码位置
public string locationRow { get; set; }
}
}
+49
View File
@@ -0,0 +1,49 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 客户标签与系统标签绑定
/// </summary>
public class BindingParam
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 卡板码
/// </summary>
public string containerCode { get; set; }
/// <summary>
/// 栈板码
/// </summary>
public string palletCode { get; set; }
/// <summary>
/// 客户箱唛码
/// </summary>
public string custcartonCode { get; set; }
/// <summary>
/// 客户栈板码
/// </summary>
public string custpalletCode { get; set; }
/// <summary>
/// 客户箱唛信息
/// </summary>
public List<TagInfo> custcarton { get; set; }
/// <summary>
/// 客户栈板信息
/// </summary>
public List<TagInfo> custpallet { get; set; }
};
}
+29
View File
@@ -0,0 +1,29 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 箱唛/栈板信息获取接口参数类
/// </summary>
public class QueryCartonPalletParam
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 卡板码
/// </summary>
public string containerCode { get; set; }
};
}
+63
View File
@@ -0,0 +1,63 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 设备状态上传接口参数类
/// </summary>
public class EqpStatusParam
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 物料编码
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public string userName { get; set; }
/// <summary>
/// 库位ID
/// </summary>
public string seatId { get; set; }
/// <summary>
/// 采集时间
/// </summary>
public string recordDate { get; set; }
/// <summary>
/// 设备状态 。Run:(正常运行)、Alert:(故障调试)、Idle:(闲置待机)、Maintain(停止运行)
/// </summary>
public string statusCode { get; set; }
/// <summary>
/// 状态变更时间
/// </summary>
public string uploadTime { get; set; }
/// <summary>
/// 唯一标识符号
/// </summary>
public string guid { get; set; }
/// <summary>
/// 故障代码数组
/// </summary>
public List<FaultCodeList> faultCodeList { get; set; }
}
public class FaultCodeList
{
/// <summary>
/// 故障代码
/// </summary>
public string faultCode { get; set; }
}
}
+48
View File
@@ -0,0 +1,48 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace JinYuan.MES.Models
{
internal class GetOCVShift
{
/// <summary>
/// 站点编码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编码
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编码
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 采集时间
/// </summary>
public string recordDate { get; set; }
/// <summary>
/// 传入条码的个数
/// </summary>
public string qty { get; set; }
/// <summary>
/// 托盘码
/// </summary>
public string containerCode { get; set; }
/// <summary>
/// 物料编码
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public string userName { get; set; }
/// <summary>
/// 条码数组
/// </summary>
public List<string> materiallotCodeList { get; set; }
}
}
+33
View File
@@ -0,0 +1,33 @@
namespace JinYuan.MES.Models
{
/// <summary>
/// 登录
/// </summary>
public class LoginEntity
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public string userName { get; set; }
/// <summary>
/// 员工密码
/// </summary>
public string passWord { get; set; }
/// <summary>
/// 刷卡员工账号
/// </summary>
public string userCardID { get; set; }
}
}
+47
View File
@@ -0,0 +1,47 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 多个电池进站
/// </summary>
public class ManyCellInStation
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 物料编码
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public string userName { get; set; }
/// <summary>
/// 产品类型
/// </summary>
public string productType { get; set; }
/// <summary>
/// 电芯条码
/// </summary>
// public List<string> identificationList { get; set; }
public string identification { get; set; }
/// <summary>
/// 容器条码
/// </summary>
public List<string> containerCodeList { get; set; }
}
}
+95
View File
@@ -0,0 +1,95 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 多个电池出站 ×
/// </summary>
public class ManyCellOutStation
{
/// <summary>
///
/// </summary>
public string siteCode { get; set; }
/// <summary>
///
/// </summary>
public string lineCode { get; set; }
/// <summary>
///
/// </summary>
public string equipNum { get; set; }
/// <summary>
///
/// </summary>
public string materialCode { get; set; }
/// <summary>
///
/// </summary>
public string userName { get; set; }
/// <summary>
/// 产品类型
/// </summary>
public string productType { get; set; }
/// <summary>
/// 完工数
/// </summary>
public string completeQty { get; set; }
/// <summary>
/// 托盘码
/// </summary>
public string containerCode { get; set; }
/// <summary>
/// 1:通用出站;2:合芯出站;3:虚拟码替换出站;4:追溯标识替换出站;5:合芯有顶盖出站
/// </summary>
public int type { get; set; }
/// <summary>
/// 条码数组
/// </summary>
public List<identiftyList> identiftyList { get; set; }
}
public class identiftyList
{
/// <summary>
/// 产品条码
/// </summary>
public string identification { get; set; }
/// <summary>
/// 原材料信息
/// </summary>
public List<string> materialLotList = new List<string>();
/// <summary>
/// 原材料条码
/// </summary>
public string materialLotCode { get; set; }
/// <summary>
/// 原材料上料位置
/// </summary>
public string materialLotCodeLocator { get; set; }
/// <summary>
/// 质量状态
/// </summary>
public string qualityStatus { get; set; }
/// <summary>
/// 关联条码
/// </summary>
public string qrCode { get; set; }
/// <summary>
/// NG编码
/// </summary>
public List<string> ngCode = new List<string>();
/// <summary>
/// NG错误信息
/// </summary>
public string ngMessage = "";
}
}
+103
View File
@@ -0,0 +1,103 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 查询电芯档位接口参数类
/// </summary>
public class QueryTrayParam
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 记录时间
/// </summary>
public string recordDate { get; set; }
/// <summary>
/// 数量
/// </summary>
public string qty { get; set; }
/// <summary>
/// 托盘码
/// </summary>
public string containerCode { get; set; }
/// <summary>
/// 物料代码
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 操作人
/// </summary>
// public List<string> identificationList { get; set; }
public string userName { get; set; }
/// <summary>
/// 电芯信息列表
/// </summary>
public List<string> listCode { get; set; }
};
public class MaterialLot
{
//电芯条码
public string identification { get; set; }
public string locationBat { get; set; }
}
/// <summary>
/// 查询电芯档位接口参数类
/// </summary>
public class QueryGradeParam
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 记录时间
/// </summary>
public string recordDate { get; set; }
/// <summary>
/// 数量
/// </summary>
public string qty { get; set; }
/// <summary>
/// 物料代码
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 操作人
/// </summary>
public string userName { get; set; }
public string actionType { get; set; } // 进站"IN", 出站"OUT"
/// <summary>
/// 电芯信息列表
/// </summary>
public List<MaterialLot> batteryTrayBindVOList { get; set; }
};
}
+396
View File
@@ -0,0 +1,396 @@
using System;
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 执行结果
/// </summary>
public class MesResponse
{
/// <summary>
/// 错误代码 错误代码,成功不返回
/// </summary>
public string code { get; set; }
/// <summary>
/// 数据处理消息 成功不返回
/// </summary>
public string message { get; set; }
/// <summary>
/// 成功标识 false失败 true 成功
/// </summary>
public bool success { get; set; }
}
#region 获取料盘信息
public class TrayInfo_old
{
/// <summary>
/// 料框码
/// </summary>
public string trayID { get; set; }
/// <summary>
/// 电芯条码
/// </summary>
public List<string> identifications { get; set; }
/// <summary>
/// 返回电池型号
/// </summary>
public string model { get; set; }
/// <summary>
/// 返回电芯档位
/// </summary>
public string grade { get; set; }
/// <summary>
/// 返回电芯二级档位
/// </summary>
public string moreGrade { get; set; }
/// <summary>
/// 产线id
/// </summary>
public string lineNo { get; set; }
}
public class Cell
{
/// <summary>
/// 电芯条码
/// </summary>
public string cellNo { get; set; }
public int channel { get; set; }
}
public class TrayInfo
{
/// <summary>
/// 料框码
/// </summary>
public string trayNo { get; set; }
/// <summary>
/// 电芯条码
/// </summary>
public List<Cell> cellList { get; set; }
/// <summary>
/// 返回电池型号
/// </summary>
public string productCode { get; set; }
/// <summary>
/// 返回电芯档位
/// </summary>
public string grade { get; set; }
/// <summary>
/// 返回电芯二级档位
/// </summary>
public string moreGrade { get; set; }
/// <summary>
/// 产线id
/// </summary>
//public string lineNo { get; set; }
}
#endregion
#region 料盘信息
public class MesResponseTray
{
/// <summary>
/// 返回料盘信息
/// </summary>
public TrayInfo data { get; set; }
/// <summary>
/// MES信息返回成功标识 false失败 true 成功
/// </summary>
//public bool success { get; set; }
/// <summary>
/// 返回错误代码:成功200,错误204
/// </summary>
public int code { get; set; }
/// <summary>
/// 返回报错消息类型:A:停线、B:排出、C:忽略(需警示)
/// </summary>
//public string category { get; set; }
/// <summary>
/// 返回失败原因
/// </summary>
//public string message { get; set; }
public string msg { get; set; }
/// <summary>
/// 绑定电芯数量
/// </summary>
//public int total { get; set; }
}
#endregion
#region 档位查询反馈
public class MesResponseGrade
{
/// <summary>
/// 返回电芯档位参数
/// </summary>
public List<MaterialGrade> rows { get; set; }
/// <summary>
/// MES信息返回成功标识 false失败 true 成功
/// </summary>
public bool success { get; set; }
/// <summary>
/// 绑定电芯数量
/// </summary>
public int total { get; set; }
}
public class MaterialGrade
{
/// <summary>
/// 电芯条码
/// </summary>
public string identification { get; set; }
/// <summary>
/// 返回电芯档位
/// </summary>
public string grade { get; set; }
}
#endregion
#region 卡板电芯信息上传(装箱)反馈
public class MesResponsePack
{
/// <summary>
/// 返回电芯档位参数
/// </summary>
//public List<MaterialPackInfo> rows { get; set; }
/// <summary>
/// MES信息返回成功标识 false失败 true 成功,整盘绑定无问题允许放行:true;箱唛还没完全绑定成功:false
/// </summary>
public bool success { get; set; }
/// <summary>
/// 返回错误代码:成功200,错误204
/// </summary>
public string code { get; set; }
/// <summary>
/// 返回报错消息类型:A:停线、B:排出、C:忽略(需警示)
/// </summary>
//public string category { get; set; }
/// <summary>
/// 返回失败原因
/// </summary>
public string message { get; set; }
/// <summary>
/// 返回绑定电芯数量
/// </summary>
//public string total { get; set; }
}
public class MaterialPackInfo
{
/// <summary>
/// 电芯条码
/// </summary>
public string identification { get; set; }
/// <summary>
/// 返回电芯条码位置
/// </summary>
public string locationRow { get; set; }
/// <summary>
/// 返回条码是否已成功绑定该卡板:电芯绑定成功:true;电芯需排出:false
/// </summary>
public bool packResult { get; set; }
/// <summary>
/// 返回条码绑定失败原因
/// </summary>
public string packFalseReason { get; set; }
}
public class MesResponseFinishPack
{
/// <summary>
/// 返回电芯档位参数
/// </summary>
public List<MaterialPackInfo> rows { get; set; }
/// <summary>
/// MES信息返回成功标识 false失败 true 成功,整盘绑定无问题允许放行:true;箱唛还没完全绑定成功:false
/// </summary>
public bool success { get; set; }
/// <summary>
/// 返回错误代码:成功200,错误204
/// </summary>
public string code { get; set; }
/// <summary>
/// 返回报错消息类型:A:停线、B:排出、C:忽略(需警示)
/// </summary>
public string category { get; set; }
/// <summary>
/// 返回失败原因
/// </summary>
public string message { get; set; }
/// <summary>
/// 返回绑定电芯数量
/// </summary>
public string total { get; set; }
}
#endregion
#region 获取箱唛信息
public class MesResponseCarton
{
/// <summary>
/// 返回箱唛信息参数
/// </summary>
public List<TagInfo> rows { get; set; }
/// <summary>
/// MES信息返回成功标识 false失败 true 成功,整盘绑定无问题允许放行:true;箱唛还没完全绑定成功:false
/// </summary>
public bool success { get; set; }
/// <summary>
/// 返回错误代码:成功200,错误204
/// </summary>
public string code { get; set; }
/// <summary>
/// 返回报错消息类型:A:停线、B:排出、C:忽略(需警示)
/// </summary>
public string category { get; set; }
/// <summary>
/// 返回失败原因
/// </summary>
public string message { get; set; }
}
public class TagInfo
{
/// <summary>
/// 箱唛信息参数代码
/// </summary>
public string tagCode { get; set; }
/// <summary>
/// 箱唛信息参数值
/// </summary>
public string tagValue { get; set; }
}
#endregion
#region 获取栈板信息
public class MesResponsePallet
{
/// <summary>
/// 返回栈板信息参数
/// </summary>
public List<TagInfo> rows { get; set; }
/// <summary>
/// MES信息返回成功标识 false失败 true 成功,整盘绑定无问题允许放行:true;箱唛还没完全绑定成功:false
/// </summary>
public bool success { get; set; }
/// <summary>
/// 返回错误代码:成功200,错误204
/// </summary>
public string code { get; set; }
/// <summary>
/// 返回栈板码
/// </summary>
public string palletCode { get; set; }
/// <summary>
/// 返回报错消息类型:A:停线、B:排出、C:忽略(需警示)
/// </summary>
public string category { get; set; }
/// <summary>
/// 返回失败原因
/// </summary>
public string message { get; set; }
}
#endregion
#region 员工校验反馈
public class MesResponseLogin
{
/// <summary>
/// 返回参数
/// </summary>
// public List<RowsItemLogin> rows { get; set; }
public List<string> rows { get; set; }
/// <summary>
/// 错误代码 错误代码,成功不返回
/// </summary>
public string code { get; set; }
/// <summary>
/// MES信息返回成功标识 false失败 true 成功
/// </summary>
public bool success { get; set; }
/// <summary>
/// 数据处理消息 成功不返回
/// </summary>
public string message { get; set; }
/// <summary>
/// 报错消息类型 A=停线,B=排出,C=忽略(需警示)
/// </summary>
public string category { get; set; }
/// <summary>
/// 返回参数条数
/// </summary>
public int total { get; set; }
}
public class RowsItemLogin
{
/// <summary>
/// 用户名
/// </summary>
public string username { get; set; }
/// <summary>
/// 用户名权限
/// </summary>
public string permissionLevel { get; set; }
}
#endregion
/// <summary>
/// 执行结果Entity,带返回值
/// </summary>
/// <typeparam name="T"></typeparam>
public class RequestResult<T> : MesResponse
{
public T Result { get; set; }
}
/// <summary>
/// 执行结果List,带返回值
/// </summary>
/// <typeparam name="T"></typeparam>
public class RequestResultList<T> : MesResponse
{
public List<T> Result { get; set; }
}
#region 解绑料框码
public class unBindMesResponse
{
/// <summary>
/// 错误代码 错误代码,成功不返回
/// </summary>
public string code { get; set; }
/// <summary>
/// 数据处理消息 成功不返回
/// </summary>
public string msg { get; set; }
/// <summary>
/// 成功标识 false失败 true 成功
/// </summary>
public bool flag { get; set; }
/// <summary>
/// 数据处理消息
/// </summary>
public string data { get; set; }
}
#endregion
}
+102
View File
@@ -0,0 +1,102 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 设备参数设定值变更
/// </summary>
public class ParamChange
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 物料编码
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public string userName { get; set; }
/// <summary>
/// 变更时间
/// </summary>
public string changeTime { get; set; }
/// <summary>
/// 数据组编码
/// </summary>
public string tagGroupCode { get; set; }
/// <summary>
/// 数据组描述
/// </summary>
public string tagGroupDescription { get; set; }
/// <summary>
/// 数据项数组
/// </summary>
public List<TagListItem> tagList { get; set; }
}
public class TagListItem
{
/// <summary>
/// 数据项编码
/// </summary>
public string tagCode { get; set; }
/// <summary>
/// 变更前计量单位
/// </summary>
public string unitBefore { get; set; }
/// <summary>
/// 变更前标准值
/// </summary>
public string standardValueBefore { get; set; }
/// <summary>
/// 变更前符合值
/// </summary>
public string trueValueBefore { get; set; }
/// <summary>
/// 变更前不符合值
/// </summary>
public string falseValueBefore { get; set; }
/// <summary>
/// 变更前最小值
/// </summary>
public int minValueBefore { get; set; }
/// <summary>
/// 变更前最大值
/// </summary>
public int maxValueBefore { get; set; }
/// <summary>
/// 变更后计量单位
/// </summary>
public string unitAfter { get; set; }
/// <summary>
/// 变更后标准值
/// </summary>
public string standardValueAfter { get; set; }
/// <summary>
/// 变更后符合值
/// </summary>
public string trueValueAfter { get; set; }
/// <summary>
/// 变更后不符合值
/// </summary>
public string falseValueAfter { get; set; }
/// <summary>
/// 变更后最小值
/// </summary>
public int minValueAfter { get; set; }
/// <summary>
/// 变更后最大值
/// </summary>
public int maxValueAfter { get; set; }
}
}
+90
View File
@@ -0,0 +1,90 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 设备参数设定值返回
/// </summary>
public class ParamReturnData
{
/// <summary>
/// 返回参数
/// </summary>
public List<RowsItem> rows { get; set; }
/// <summary>
/// 成功标识
/// </summary>
public bool success { get; set; }
/// <summary>
/// 返回参数条数
/// </summary>
public int total { get; set; }
}
/// <summary>
/// 返回参数项
/// </summary>
public class RowsItem
{
/// <summary>
/// 数据组编码
/// </summary>
public string tagGroupCode { get; set; }
/// <summary>
/// 配方0002
/// </summary>
public string tagGroupDescription { get; set; }
/// <summary>
/// 数据组描述
/// </summary>
public List<ReturnDataTagListItem> tagList { get; set; }
}
/// <summary>
/// 数据组描述
/// </summary>
public class ReturnDataTagListItem
{
/// <summary>
///
/// </summary>
public string tagCode { get; set; }
/// <summary>
/// 真空度设定值
/// </summary>
public string tagDescription { get; set; }
/// <summary>
///
/// </summary>
public string valueType { get; set; }
/// <summary>
///
/// </summary>
public string unit { get; set; }
/// <summary>
///
/// </summary>
public string standardValue { get; set; }
/// <summary>
///
/// </summary>
public string trueValue { get; set; }
/// <summary>
///
/// </summary>
public string falseValue { get; set; }
/// <summary>
///
/// </summary>
public string minValue { get; set; }
/// <summary>
///
/// </summary>
public string maxValue { get; set; }
/// <summary>
///
/// </summary>
public string tagRemark { get; set; }
}
}
@@ -0,0 +1,9 @@
namespace JinYuan.MES.Models
{
/// <summary>
/// 产品过程加工参数
/// </summary>
public class ProductProcessParam
{
}
}
@@ -0,0 +1,114 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 结果加工参数
/// </summary>
public class ProductResultParameters
{
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 类型单进整出:DZ 整进整出:ZZ 单进单出:DD 未传时默认按照ZZ进行数据解析
/// </summary>
public string type { get; set; }
/// <summary>
/// 设备数据
/// </summary>
public string payload { get; set; }
}
/// <summary>
/// 单进整出
/// </summary>
public class Payload1
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public string userName { get; set; }
/// <summary>
/// 物料编码 工单产成品物料号
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 小车号 装载电池的小车编号
/// </summary>
public string carCode { get; set; }
/// <summary>
/// 补录 是否属于补录数据(BL=补录,JS=及时上传)
/// </summary>
public string collection { get; set; }
/// <summary>
/// 采集时间 数据的采集时间
/// </summary>
public string recordDate { get; set; }
/// <summary>
/// 条码数量 传入条码的个数
/// </summary>
public int qty { get; set; }
/// <summary>
/// RFID托杯码
/// </summary>
public string containerCode { get; set; }
/// <summary>
/// 条码数组
/// </summary>
public List<IdentificationListItem> identificationList { get; set; }
//public List<TagDataVOListItem> tagDataVOList { get; set; }
}
public class IdentificationListItem
{
/// /// <summary>
/// 条码
/// </summary>
public string identification { get; set; }
/// <summary>
/// 质量状态 各产品所有参数的整体判断结果(Y/N)
/// </summary>
public string qualityStatus { get; set; }
/// <summary>
/// 采集数组
/// </summary>
public List<TagDataVOListItem> tagDataVOList { get; set; }
}
public class TagDataVOListItem
{
/// <summary>
/// 设备每个采集项规定的编号
/// </summary>
public string tagCode { get; set; }
/// <summary>
/// 采集值
/// </summary>
public string tagValue { get; set; }
/// <summary>
/// 采集项采集时间
/// </summary>
public string tagTime { get; set; }
/// <summary>
/// 各产品所有参数的整体判断结果(Y/N)
/// </summary>
public string tagCalculateResult { get; set; }
/// <summary>
/// 采集项描述
/// </summary>
public string tagRemark { get; set; }
}
}
+38
View File
@@ -0,0 +1,38 @@
namespace JinYuan.MES.Models
{
/// <summary>
/// 单个电池进站
/// </summary>
public class SingleCellInStation
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 物料编码
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public string userName { get; set; }
/// <summary>
///
/// </summary>
public string identification { get; set; }
/// <summary>
///
/// </summary>
public string productType { get; set; }
}
}
@@ -0,0 +1,99 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
public class MaterialLotListItem
{
/// <summary>
///
/// </summary>
public string materialLotCode { get; set; }
/// <summary>
///
/// </summary>
public string materialLotCodeLocator { get; set; }
}
public class IdentiftyListItem
{
/// <summary>
/// 条码
/// </summary>
public string identification { get; set; }
/// <summary>
/// 质量状态
/// </summary>
public string qualityStatus { get; set; }
/// <summary>
/// 关联条码
/// </summary>
public string qrCode { get; set; }
/// <summary>
/// NG2信息,NG1信息
/// </summary>
public string ngMessage { get; set; }
/// <summary>
///
/// </summary>
public List<string> ngCode { get; set; }
/// <summary>
///
/// </summary>
public List<MaterialLotListItem> materialLotList { get; set; }
}
public class SingleCellOutStation
{
/// <summary>
///
/// </summary>
public string siteCode { get; set; }
/// <summary>
///
/// </summary>
public string lineCode { get; set; }
/// <summary>
///
/// </summary>
public string equipNum { get; set; }
/// <summary>
///
/// </summary>
public string userName { get; set; }
/// <summary>
///
/// </summary>
public string productType { get; set; }
public string completeQty { get; set; }
public string materialCode { get; set; }
/// <summary>
///
/// </summary>
public string containerCode { get; set; }
public string type { get; set; }
public List<IdentiftyListItem> identiftyList { get; set; } = new List<IdentiftyListItem>();
}
//public class AssembleLineList
//{
// public string identification { get; set; }
// public string qualityStatus{ get; set; }
// public string qrCode { get; set; }
// public List <string> ngCode { get; set;} = new List<string>();
// public string ngMessage { get; set; }
//}
}
+75
View File
@@ -0,0 +1,75 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
/// <summary>
/// 报警数据上传接口参数类
/// </summary>
public class UploadAlarmParam
{
/// <summary>
/// 工厂代码
/// </summary>
public string siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public string lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 物料编码
/// </summary>
public string materialCode { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public string userName { get; set; }
/// <summary>
/// 采集时间
/// </summary>
public string recordDate { get; set; }
/// <summary>
/// 唯一标识符号
/// </summary>
public string guid { get; set; }
/// <summary>
/// 库位ID 库位ID,化成段用
/// </summary>
public string seatId { get; set; }
/// <summary>
/// 报警数组
/// </summary>
public List<AlarmLineListItem> alarmLineList { get; set; }
}
/// <summary>
/// 报警数组
/// </summary>
public class AlarmLineListItem
{
/// <summary>
/// 报警消除时间
/// </summary>
public string alarmEndTime { get; set; }
/// <summary>
/// 报警类型
/// </summary>
public string alarmType { get; set; }
/// <summary>
/// 报警名称
/// </summary>
public string alarmName { get; set; }
/// <summary>
/// 报警开始时间
/// </summary>
public string alarmStartTime { get; set; }
/// <summary>
/// 故障代码
/// </summary>
public string faultCode { get; set; }
}
}
@@ -0,0 +1,60 @@
using System.Collections.Generic;
namespace JinYuan.MES.Models
{
internal class UploadDeviceCollectData
{
/// <summary>
/// 应用id,对应不同系统对接
/// </summary>
public string appid { get; set; }
/// <summary>
/// 采集指标类型和具体值的集合
/// </summary>
public List<Collect_code_value_list> collect_code_value_list { get; set; }
/// <summary>
/// 采集时间,unix时间戳,整数类型
/// </summary>
public long collect_time { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public string device_code { get; set; }
}
public class Collect_code_value_list
{
/// <summary>
/// 指标类型,1 温度 2湿度 3露点 4粉尘 5风速,整数类型
/// </summary>
public int target_code { get; set; }
/// <summary>
/// 指标对应采集值,若是某个指标或某个指标的某个值未采集到,则传N
/// </summary>
public string target_value { get; set; }
/// <summary>
/// 风速仪标签,风速仪值对应target_value
/// </summary>
public string target_value_tag { get; set; }
}
public class UploadDeviceCollectDataResult
{
/// <summary>
///
/// </summary>
public int status { get; set; }
/// <summary>
///
/// </summary>
public Data data { get; set; }
/// <summary>
///
/// </summary>
public string message { get; set; }
}
public class Data
{
}
}
+27
View File
@@ -0,0 +1,27 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace JinYuan.MES.Models
{
public class VdaGetData
{
/// <summary>
/// 所属仓库
/// </summary>
public string warehouseCode { get; set; }
/// <summary>
/// 货主
/// </summary>
public string customerCode { get; set; }
public string labelTemplateCode { get; set; }
public List<CodeData> codeDataList { get; set; }
}
public class CodeData
{
public string trayLabel { get; set; }
}
}
+111
View File
@@ -0,0 +1,111 @@
namespace JinYuan.MES.Models
{
public class WattrMeter
{
/// <summary>
/// 工厂代码
/// </summary>
public System.String siteCode { get; set; }
/// <summary>
/// 产线编号
/// </summary>
public System.String lineCode { get; set; }
/// <summary>
/// 设备编号
/// </summary>
public System.String equipNum { get; set; }
/// <summary>
/// 电表编号
/// </summary>
public System.String electricMeterNum { get; set; }
/// <summary>
/// 员工账号
/// </summary>
public System.String userName { get; set; }
/// <summary>
/// 工序编号
/// </summary>
public System.String specName { get; set; }
/// <summary>
/// 采集时间
/// </summary>
public System.String recordDate { get; set; }
/// <summary>
/// 有功电能(累计电能)KWH
/// </summary>
public System.Decimal? accumulatedElectricity { get; set; }
/// <summary>
/// A相电压 V
/// </summary>
public System.Decimal? phaseVoltageA { get; set; }
/// <summary>
/// B相电压 V
/// </summary>
public System.Decimal? phaseVoltageB { get; set; }
/// <summary>
/// C相电压 V
/// </summary>
public System.Decimal? phaseVoltageC { get; set; }
/// <summary>
/// A相电流
/// </summary>
public System.Decimal? phaseCurrentA { get; set; }
/// <summary>
/// B相电流
/// </summary>
public System.Decimal? phaseCurrentB { get; set; }
/// <summary>
/// C相电流
/// </summary>
public System.Decimal? phaseCurrentC { get; set; }
/// <summary>
/// A相功率
/// </summary>
public System.Decimal? phasePowerA { get; set; }
/// <summary>
/// B相功率
/// </summary>
public System.Decimal? phasePowerB { get; set; }
/// <summary>
/// C相功率
/// </summary>
public System.Decimal? phasePowerC { get; set; }
/// <summary>
/// 总有功功率
/// </summary>
public System.Decimal? activePower { get; set; }
/// <summary>
/// 总功率因数
/// </summary>
public System.Decimal? powerFactor { get; set; }
/// <summary>
/// 电流变比
/// </summary>
public System.Decimal? pt { get; set; }
/// <summary>
/// 电压变比
/// </summary>
public System.Decimal? ct { get; set; }
}
}
+56
View File
@@ -0,0 +1,56 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace JinYuan.MES.Models
{
public class WmsUpload
{
/// <summary>
/// 所属仓库
/// </summary>
public string warehouseCode { get; set; }
/// <summary>
/// 货主
/// </summary>
public string customerCode { get; set; }
/// <summary>
/// 设备编码
/// </summary>
public string equipmentCode { get; set; }
/// <summary>
/// 设备名称
/// </summary>
public string equipmentName { get; set; }
/// <summary>
/// 底托(卡板)
/// </summary>
public string trayLabel { get; set; }
/// <summary>
/// 详细信息
/// </summary>
public List<InnerBoxLabelInfo> innerBoxLabelList { get; set; }
}
public class InnerBoxLabelInfo
{
/// <summary>
/// 外箱标签(宝马层托)托盘码
/// </summary>
public string outerBoxLabel { get; set; }
/// <summary>
/// 内箱标签,电芯码
/// </summary>
public string innerBoxLabel { get; set; }
/// <summary>
/// 质检结果,N-良品 Y-不良品
/// </summary>
public string iqcState { get; set; }
/// <summary>
/// 电芯位置,G11需传该字段
/// </summary>
public string batteriesLocation { get; set; }
}
}
+21
View File
@@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace JinYuan.MES.Models
{
public class unbindParam
{
/// <summary>
/// 设备编码
/// </summary>
public string equipNum { get; set; }
/// <summary>
/// 料框码
/// </summary>
public string trayCode { get; set; }
}
}
+35
View File
@@ -0,0 +1,35 @@
using System.Reflection;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("JinYuan.MES")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("JinYuan.MES")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("530b6426-08e7-461c-91dc-787f876620fc")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
+39
View File
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Text.Encoding.CodePages" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Security.Cryptography.Xml" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.1" newVersion="6.0.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" /></startup></configuration>
+4
View File
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Newtonsoft.Json" version="13.0.3" targetFramework="net472" />
</packages>