You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
2.1 KiB
72 lines
2.1 KiB
using Infrastructure.Application;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Linq;
|
|
|
|
namespace Application.Models
|
|
{
|
|
[Display(Name = "命令")]
|
|
public class EditCommandModel : EditModel
|
|
{
|
|
[DataType("SelectList")]
|
|
[Display(Name = "节点")]
|
|
[Required(ErrorMessage = nameof(RequiredAttribute))]
|
|
public Guid? NodeId { get; set; }
|
|
|
|
[DataType("SelectList")]
|
|
[Display(Name = "设备")]
|
|
[Required(ErrorMessage = nameof(RequiredAttribute))]
|
|
public Guid? DeviceId { get; set; }
|
|
|
|
[DataType("SelectList")]
|
|
[Display(Name = "Api")]
|
|
[Required(ErrorMessage = nameof(RequiredAttribute))]
|
|
public Guid? ApiId { get; set; }
|
|
|
|
[Display(Name = "命令名称")]
|
|
[Required(ErrorMessage = nameof(RequiredAttribute))]
|
|
public string Name { get; set; }
|
|
|
|
[Display(Name = "序号")]
|
|
public int DisplayOrder { get; set; }
|
|
|
|
[Display(Name = "隐藏")]
|
|
public bool Disabled { get; set; }
|
|
|
|
[HiddenInput(DisplayValue = false)]
|
|
[ScaffoldColumn(true)]
|
|
public string QueryString { get; set; }
|
|
|
|
[Display(Name = "参数", Order = 50)]
|
|
[ScaffoldColumn(false)]
|
|
public List<EditApiParameterModel> Parameters { get; set; } = new List<EditApiParameterModel>();
|
|
|
|
[HiddenInput(DisplayValue = false)]
|
|
[ScaffoldColumn(true)]
|
|
public string NodeNumber { get; set; }
|
|
|
|
[HiddenInput(DisplayValue = false)]
|
|
[ScaffoldColumn(true)]
|
|
public string DeviceNumber { get; set; }
|
|
|
|
[HiddenInput(DisplayValue = false)]
|
|
[ScaffoldColumn(true)]
|
|
public string ApiName { get; set; }
|
|
|
|
public string GetQueryString()
|
|
{
|
|
if (this.Parameters.Any())
|
|
{
|
|
var queryString = string.Empty;
|
|
foreach (var item in this.Parameters)
|
|
{
|
|
queryString += $"&{item.Name}={item.Value}";
|
|
}
|
|
return queryString.TrimStart('&');
|
|
}
|
|
return null;
|
|
}
|
|
}
|
|
} |