176 lines
5.4 KiB
C#
176 lines
5.4 KiB
C#
|
||
using SWS.Commons;
|
||
using SWS.Model;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Net.Http;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace SWS.CAD.Services
|
||
{
|
||
public class WireGroupService : HttpService
|
||
{
|
||
#region 辅助类
|
||
/// <summary>
|
||
/// SaveSignals 专用
|
||
/// </summary>
|
||
public class WireGroups
|
||
{
|
||
public string ID { get; set; }
|
||
public List<ec_Wire_Group> Signals { get; set; }
|
||
}
|
||
#endregion
|
||
public WireGroupService() : base()
|
||
{
|
||
|
||
}
|
||
/// <summary>
|
||
/// 获取所有的信号
|
||
/// </summary>
|
||
/// <param name="projId"></param>
|
||
/// <param name="Assigned"></param>
|
||
/// <returns></returns>
|
||
public async Task<List<ec_Wire_Group>> GetSignals(string projId, bool Assigned)
|
||
{
|
||
|
||
var res = await this.GetAsync<List<ec_Wire_Group>>($"WireGroupApi/GetSignals?projId={projId}&Assigned={Assigned}");
|
||
if (res.code == 200)
|
||
{
|
||
return res.data;
|
||
}
|
||
else
|
||
{
|
||
}
|
||
return null;
|
||
}
|
||
/// <summary>
|
||
/// 获取当前组可用的编码
|
||
/// </summary>
|
||
/// <param name="group"></param>
|
||
/// <returns></returns>
|
||
public async Task<string> GetNextAvailableSeq(string group)
|
||
{
|
||
var res = await this.GetAsync<object>($"WireGroupApi/GetNextAvailableSeq?projId={GlobalObject.curProject?.ProjectId}&group={group}");
|
||
if (res.code == 200)
|
||
{
|
||
return res.info;
|
||
}
|
||
else
|
||
{
|
||
}
|
||
return null;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 验证是否可以保存
|
||
/// </summary>
|
||
/// <param name="entity"></param>
|
||
/// <returns></returns>
|
||
public async Task<string> CanSaveSignals(WireGroups entity ,Models.Action ActionType)
|
||
{
|
||
var res = await this.PostBodyAsync<List<ec_Wire_Group>, WireGroups>($"WireGroupApi/CanSaveSignals?projId={GlobalObject.curProject?.ProjectId}&ActionType={ActionType}", entity);
|
||
if (res.code == 200)
|
||
{
|
||
return "OK";
|
||
}
|
||
else
|
||
{
|
||
return res.info;
|
||
}
|
||
}
|
||
/// <summary>
|
||
/// 保存
|
||
/// </summary>
|
||
/// <param name="entity"></param>
|
||
/// <returns></returns>
|
||
public async Task<List<ec_Wire_Group>> SaveSignals(SWS.Model.WireGroups entity)
|
||
{
|
||
var res = await this.PostBodyAsync<List<ec_Wire_Group>, Model.WireGroups>($"WireGroupApi/SaveSignals?projId={GlobalObject.curProject?.ProjectId}&mode=0", entity);
|
||
if (res.code == 200)
|
||
{
|
||
return res.data;
|
||
}
|
||
else
|
||
{
|
||
}
|
||
return null;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 查询信号信息
|
||
/// </summary>
|
||
/// <param name="entity"></param>
|
||
/// <returns></returns>
|
||
public async Task<List<ec_wire_group_notice>> GetNotification()
|
||
{
|
||
var res = await this.GetAsync<List<ec_wire_group_notice>>($"WireGroupApi/GetNotification?projId={GlobalObject.curProject?.ProjectId}");
|
||
if (res.code == 200)
|
||
{
|
||
return res.data;
|
||
}
|
||
else
|
||
{
|
||
}
|
||
return null;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 查询信号历史
|
||
/// </summary>
|
||
/// <param name="projId">项目ID</param>
|
||
/// <param name="wireGroupIds">信号ID,多个用都逗号隔开</param>
|
||
/// <returns></returns>
|
||
public async Task<List<ec_wire_group_propertyhis>> GetSignalPropertyhis(string wireGroupIds)
|
||
{
|
||
var res = await this.GetAsync<List<ec_wire_group_propertyhis>>($"WireGroupApi/GetSignalPropertyhis?projId={GlobalObject.curProject?.ProjectId}&wireGroupIds={wireGroupIds}");
|
||
if (res.code == 200)
|
||
{
|
||
return res.data;
|
||
}
|
||
else
|
||
{
|
||
}
|
||
return null;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 查询信号日志
|
||
/// </summary>
|
||
/// <param name="projId">项目ID</param>
|
||
/// <param name="wireGroupIds">信号ID,多个用都逗号隔开</param>
|
||
/// <returns></returns>
|
||
public async Task<List<ec_wire_group_log>> GetSignalLogs(string wireGroupIds)
|
||
{
|
||
var res = await this.GetAsync<List<ec_wire_group_log>>($"WireGroupApi/GetSignalLogs?projId={GlobalObject.curProject?.ProjectId}&wireGroupIds={wireGroupIds}");
|
||
if (res.code == 200)
|
||
{
|
||
return res.data;
|
||
}
|
||
else
|
||
{
|
||
}
|
||
return null;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 读信号通知
|
||
/// </summary>
|
||
/// <param name="NoticeIds"></param>
|
||
/// <returns></returns>
|
||
public async Task<List<ec_wire_group_notice>> ReadNotification(List<string> NoticeIds)
|
||
{
|
||
var res = await this.PostBodyAsync<List<ec_wire_group_notice>,List<string>>($"WireGroupApi/ReadNotification?projId={GlobalObject.curProject?.ProjectId}", NoticeIds);
|
||
if (res.code == 200)
|
||
{
|
||
return res.data;
|
||
}
|
||
else
|
||
{
|
||
}
|
||
return null;
|
||
}
|
||
|
||
}
|
||
}
|