@model EditIoTCommandModel @if (Model != null && Model.Parameters.Count > 0) { var device = ViewBag.Device as IoTDevice; for (int i = 0; i < Model.Parameters.Count; i++) { var item = Model.Parameters[i]; var name = $"Parameters[{i}].Value"; var type = item.Type == "string" ? "text" : "text"; var required = item.Required ? "data-val-required='请输入" + item.Description + "'" : ""; var minimum = !string.IsNullOrEmpty(item.Minimum) ? "data-val-range-min='" + item.Minimum + "'" : ""; var maximum = !string.IsNullOrEmpty(item.Maxinum) ? "data-val-range-max='" + item.Maxinum + "'" : ""; var range = (!string.IsNullOrEmpty(item.Minimum) && !string.IsNullOrEmpty(item.Maxinum)) ? $"data-val-range='长度必须在{item.Minimum}-{item.Maxinum}之间'" : ""; @Html.HiddenFor(o => Model.Parameters[i].Type) @Html.HiddenFor(o => Model.Parameters[i].Name) @Html.HiddenFor(o => Model.Parameters[i].Description) @Html.HiddenFor(o => Model.Parameters[i].Required) @Html.HiddenFor(o => Model.Parameters[i].Minimum) @Html.HiddenFor(o => Model.Parameters[i].Maxinum) @if (item.Name == "number") { @Html.HiddenFor(o => Model.Parameters[i].Value) } else { if (device.Name == "串口控制器" && item.Description == "命令") { var selectList = device.Data.FirstOrDefault(o => o.Name == "指令").Value.FromJson>() .Select(o => new SelectListItem { Text = o.Name, Value = o.Name, Selected = item.Value == o.Name });
@Html.DropDownListFor(o => Model.Parameters[i].Value, selectList, "选择", new { @class = "form-control select search", data_val = "true", data_val_required = "请选择" }) @Html.ValidationMessageFor(o => Model.Parameters[i].Value)
} else if (device.Name == "红外转发器" && item.Description == "按键类型") { var selectList = new List { new SelectListItem{ Value="1",Text="空调",Selected=item.Value=="1" }, new SelectListItem{ Value="2",Text="电视",Selected=item.Value=="2" }, new SelectListItem{ Value="3",Text="机顶盒",Selected=item.Value=="3" }, new SelectListItem{ Value="5",Text="自定义",Selected=item.Value=="5" } };
@Html.DropDownListFor(o => Model.Parameters[i].Value, selectList, "选择", new { @class = "form-control select search irKeyType", data_val = "true", data_val_required = "请选择" }) @Html.ValidationMessageFor(o => Model.Parameters[i].Value)
} else if (device.Name == "红外转发器" && item.Description == "键值") { var keyType = Model.Parameters.FirstOrDefault(o => o.Description == "按键类型")?.Value;
@if (!string.IsNullOrEmpty(keyType)) { var buttons = device.Data.FirstOrDefault(o => o.Name == "指令").Value; var code = Convert.ToInt32(item.Value); code=code==0?1:code; @(await Html.PartialAsync("_Code", new EditIRCodeViewModel { InputName = name, Name = item.Description, Type = Convert.ToInt32(keyType), Code = code, Buttons = buttons })) }
} //else if (device.Name == "调色灯" && item.Description == "设置") //{ //} else {
@Html.ValidationMessage(name)
} } } }