linux对接成功,向MES发消息成功
This commit is contained in:
parent
eebfe2ff09
commit
9b6912ff84
@ -3,6 +3,7 @@ using DOAN.Model.Bydlms.Dto;
|
||||
using DOAN.Model.Bydlms;
|
||||
using DOAN.Service.Bydlms.IBydlmsService;
|
||||
using DOAN.Admin.WebApi.Filters;
|
||||
using SqlSugar;
|
||||
|
||||
//创建时间:2025-02-19
|
||||
namespace DOAN.Admin.WebApi.Controllers.Bydlms
|
||||
@ -69,6 +70,47 @@ namespace DOAN.Admin.WebApi.Controllers.Bydlms
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 批量添加产线MES预警消息记录
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("BatchAddBydAlarmMsg")]
|
||||
[AllowAnonymous]
|
||||
[Log(Title = "批量上传产线MES预警消息记录", BusinessType = BusinessType.INSERT)]
|
||||
public IActionResult BatchAddBydAlarmMsg([FromBody] AlarmUploadData parm)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (parm == null || parm.data.Count == 0)
|
||||
{
|
||||
return ToResponse(new ApiResult(500, "传入数据为空"));
|
||||
}
|
||||
// 为每个对象生成唯一ID
|
||||
foreach (var item in parm.data)
|
||||
{
|
||||
item.Id = SnowFlakeSingle.Instance.NextId().ToString();
|
||||
item.ServiceId = parm.serviceId;
|
||||
item.FactoryCode = parm.factoryCode;
|
||||
item.Type = "1";
|
||||
item.Status = "0";
|
||||
item.Remark = "设备传入数据";
|
||||
item.CreatedBy = "后台";
|
||||
item.CreatedTime = DateTime.Now;
|
||||
}
|
||||
var modal = parm.data.Adapt<List<BydAlarmMsg>>().ToCreate(HttpContext);
|
||||
var response = _BydAlarmMsgService.BatchAddBydAlarmMsg(modal);
|
||||
// 转发测试
|
||||
var res = _BydAlarmMsgService.UploadAlarmMsg(parm);
|
||||
Console.WriteLine($"转发UploadAlarmMsg:{res}");
|
||||
return SUCCESS(response);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return ToResponse(new ApiResult(500,e.Message));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 更新产线MES预警消息记录
|
||||
/// </summary>
|
||||
|
||||
@ -69,6 +69,27 @@ namespace DOAN.Admin.WebApi.Controllers.Bydlms
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 批量添加生产过站
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("BatchAddBydProductionStation")]
|
||||
[AllowAnonymous]
|
||||
[Log(Title = "生产过站", BusinessType = BusinessType.INSERT)]
|
||||
public IActionResult BatchAddBydProductionStation([FromBody] ProductionStationUploadData parm)
|
||||
{
|
||||
try
|
||||
{
|
||||
var response = _BydProductionStationService.BatchAddBydProductionStation(parm);
|
||||
return SUCCESS(response);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return ToResponse(new ApiResult(500, e.Message));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 更新生产过站
|
||||
/// </summary>
|
||||
|
||||
@ -66,7 +66,7 @@ namespace DOAN.Model.Bydlms
|
||||
/// <summary>
|
||||
/// 预警事件描述
|
||||
/// </summary>
|
||||
public string WarningMsg { get; set; }
|
||||
public string WarningDesc { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 预警时间(系统)
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using DOAN.Model.Bydlms.Dto;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@ -6,11 +7,24 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace DOAN.Model.Bydlms
|
||||
{
|
||||
public class DataUpload
|
||||
/// <summary>
|
||||
/// 基础上传参数
|
||||
/// </summary>
|
||||
public class BaseUploadServerData
|
||||
{
|
||||
public string serviceId { get; set; }
|
||||
public string factoryCode { get; set; }
|
||||
public string requestTime { get; set; }
|
||||
public string userName { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
// <summary>
|
||||
/// 1.设备上传参数
|
||||
/// </summary>
|
||||
public class MachineDataUpload : BaseUploadServerData
|
||||
{
|
||||
public MachineInfo[] data { get; set; }
|
||||
}
|
||||
/// <summary>
|
||||
@ -147,4 +161,21 @@ namespace DOAN.Model.Bydlms
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 2.设备上传报警信息
|
||||
/// </summary>
|
||||
public class AlarmUploadData : BaseUploadServerData
|
||||
{
|
||||
public List<BydAlarmMsgDto> data { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 2.设备过站信息
|
||||
/// </summary>
|
||||
public class ProductionStationUploadData : BaseUploadServerData
|
||||
{
|
||||
public List<BydProductionStation> data { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
@ -13,7 +13,7 @@ namespace DOAN.Model.Bydlms.Dto
|
||||
/// </summary>
|
||||
public class BydAlarmMsgDto
|
||||
{
|
||||
[Required(ErrorMessage = "主键不能为空")]
|
||||
|
||||
public string Id { get; set; }
|
||||
|
||||
public string ServiceId { get; set; }
|
||||
@ -36,7 +36,7 @@ namespace DOAN.Model.Bydlms.Dto
|
||||
|
||||
public int? WarningType { get; set; }
|
||||
|
||||
public string WarningMsg { get; set; }
|
||||
public string WarningDesc { get; set; }
|
||||
|
||||
public DateTime? WarningDateTime { get; set; }
|
||||
|
||||
|
||||
@ -4,6 +4,10 @@ using DOAN.Model.Bydlms.Dto;
|
||||
using DOAN.Model.Bydlms;
|
||||
using DOAN.Repository;
|
||||
using DOAN.Service.Bydlms.IBydlmsService;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Net;
|
||||
using System.Web;
|
||||
|
||||
namespace DOAN.Service.Bydlms
|
||||
{
|
||||
@ -76,5 +80,45 @@ namespace DOAN.Service.Bydlms
|
||||
|
||||
return predicate;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 批量添加数据,返回成功行数
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
public int BatchAddBydAlarmMsg(List<BydAlarmMsg> parm)
|
||||
{
|
||||
// 批量插入并返回受影响行数
|
||||
return Context.Insertable(parm).ExecuteCommand();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 自动上传报警数据给MES
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
/// <exception cref="NotImplementedException"></exception>
|
||||
public int UploadAlarmMsg(AlarmUploadData uploadData)
|
||||
{
|
||||
const string url = "http://10.17.2.198:3000/mock/24/api/product/Product_Information?System001_Warning";
|
||||
try
|
||||
{
|
||||
Console.WriteLine($"[Http请求开始]{url}");
|
||||
using (var client = new WebClient())
|
||||
{
|
||||
client.Headers[HttpRequestHeader.ContentType] = "application/json";
|
||||
// 使用JavaScriptSerializer生成JSON
|
||||
var json = Context.Utilities.SerializeObject(uploadData);
|
||||
// 发送POST请求并获取响应
|
||||
var response = client.UploadString(url, "POST", json);
|
||||
}
|
||||
Console.WriteLine($"发送成功");
|
||||
return 1;
|
||||
}
|
||||
catch
|
||||
{
|
||||
Console.WriteLine($"发送失败");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -4,6 +4,7 @@ using DOAN.Model.Bydlms.Dto;
|
||||
using DOAN.Model.Bydlms;
|
||||
using DOAN.Repository;
|
||||
using DOAN.Service.Bydlms.IBydlmsService;
|
||||
using Infrastructure.Model;
|
||||
|
||||
namespace DOAN.Service.Bydlms
|
||||
{
|
||||
@ -76,5 +77,26 @@ namespace DOAN.Service.Bydlms
|
||||
|
||||
return predicate;
|
||||
}
|
||||
|
||||
public int BatchAddBydProductionStation(ProductionStationUploadData parm)
|
||||
{
|
||||
if (parm == null || parm.data.Count == 0)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
// 为每个对象生成唯一ID
|
||||
foreach (var item in parm.data)
|
||||
{
|
||||
item.Id = SnowFlakeSingle.Instance.NextId().ToString();
|
||||
item.ServiceId = parm.serviceId;
|
||||
item.FactoryCode = parm.factoryCode;
|
||||
item.Type = "1";
|
||||
item.Status = "0";
|
||||
item.Remark = "设备传入数据";
|
||||
item.CreatedBy = "后台";
|
||||
item.CreatedTime = DateTime.Now;
|
||||
}
|
||||
return Context.Insertable(parm).ExecuteCommand();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -14,8 +14,11 @@ namespace DOAN.Service.Bydlms.IBydlmsService
|
||||
|
||||
|
||||
BydAlarmMsg AddBydAlarmMsg(BydAlarmMsg parm);
|
||||
|
||||
int BatchAddBydAlarmMsg(List<BydAlarmMsg> parm);
|
||||
int UpdateBydAlarmMsg(BydAlarmMsg parm);
|
||||
|
||||
int UploadAlarmMsg(AlarmUploadData uploadData);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -14,6 +14,9 @@ namespace DOAN.Service.Bydlms.IBydlmsService
|
||||
|
||||
|
||||
BydProductionStation AddBydProductionStation(BydProductionStation parm);
|
||||
|
||||
int BatchAddBydProductionStation(ProductionStationUploadData parm);
|
||||
|
||||
int UpdateBydProductionStation(BydProductionStation parm);
|
||||
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user