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.
iot/projects/IoT.Shared/Areas/Admin/Views/Command/_Code.cshtml

194 lines
19 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

@model EditIRCodeViewModel
<div class="form-group row">
<lable class="col-sm-2 col-form-label required">@Model.Name</lable>
<div class="col-sm-8" id="ircodediv">
@if (Model.Type == 1)
{
var values = GetCode(Model.Code);
<input class="form-control" id="ircodeid" name="@Model.InputName" type="text" data-val="true" data-val-required="必填项" value="@Model.Code" />
<label class="btn">电源</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="power" type="radio" value="2" @Html.Raw(values.power == 2 ? "checked" : "") />开</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="power" type="radio" value="1" @Html.Raw(values.power == 1 ? "checked" : "") />关</label>
<label class="btn">模式</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="pattern" type="radio" value="0" @Html.Raw(values.pattern == 0 ? "checked" : "") />制冷</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="pattern" type="radio" value="120" @Html.Raw(values.pattern == 120 ? "checked" : "") />自动</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="pattern" type="radio" value="240" @Html.Raw(values.pattern == 240 ? "checked" : "") />制热</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="pattern" type="radio" value="360" @Html.Raw(values.pattern == 360 ? "checked" : "") />抽湿</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="pattern" type="radio" value="480" @Html.Raw(values.pattern == 480 ? "checked" : "") />送风</label>
<br />
<lable class="btn">风向</lable>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="direction" type="radio" value="0" @Html.Raw(values.direction == 0 ? "checked" : "") />任意</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="direction" type="radio" value="60" @Html.Raw(values.direction == 60 ? "checked" : "") />手动</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="direction" type="radio" value="75" @Html.Raw(values.direction == 75 ? "checked" : "") />自动</label>
<lable class="btn">风量</lable>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="wind" type="radio" value="0" @Html.Raw(values.wind == 0 ? "checked" : "") />自动</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="wind" type="radio" value="15" @Html.Raw(values.wind == 15 ? "checked" : "") />高</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="wind" type="radio" value="30" @Html.Raw(values.wind == 30 ? "checked" : "") />中</label>
<label class="btn btn-sm btn-success"><input onchange="AirChange(event)" name="wind" type="radio" value="45" @Html.Raw(values.wind == 45 ? "checked" : "") />低</label>
<br />
<lable class="btn">温度<span></span>℃</lable><input onchange="AirChange(event)" name="temperature" type="range" step="1" min="1" max="15" value="@values.temperature" style="width:80%;" />
}
else if (Model.Type == 2)
{
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 1 ? "checked" : "") value="1" />POWR</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 2 ? "checked" : "") value="2" />AV</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 3 ? "checked" : "") value="3" />1</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 4 ? "checked" : "") value="4" />2</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 5 ? "checked" : "") value="5" />3</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 6 ? "checked" : "") value="6" />4</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 7 ? "checked" : "") value="7" />5</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 8 ? "checked" : "") value="8" />6</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 9 ? "checked" : "") value="9" />7</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 10 ? "checked" : "") value="10" />8</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 11 ? "checked" : "") value="11" />9</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 12 ? "checked" : "") value="12" />0</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 13 ? "checked" : "") value="13" />返回</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 14 ? "checked" : "") value="14" />退出</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 15 ? "checked" : "") value="15" />静音</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 16 ? "checked" : "") value="16" />菜单</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 17 ? "checked" : "") value="17" />音量+</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 18 ? "checked" : "") value="18" />音量-</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 19 ? "checked" : "") value="19" />上</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 20 ? "checked" : "") value="20" />下</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 21 ? "checked" : "") value="21" />左</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 22 ? "checked" : "") value="22" />右</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 26 ? "checked" : "") value="26" />快退</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 27 ? "checked" : "") value="27" />播放</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 28 ? "checked" : "") value="28" />快进</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 29 ? "checked" : "") value="29" />录像</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 30 ? "checked" : "") value="30" />暂停</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 31 ? "checked" : "") value="31" />停止</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 23 ? "checked" : "") value="23" />OK</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 24 ? "checked" : "") value="24" />ch+</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 25 ? "checked" : "") value="25" />ch-</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 32 ? "checked" : "") value="32" />A</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 33 ? "checked" : "") value="33" />B</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 34 ? "checked" : "") value="34" />C</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 35 ? "checked" : "") value="35" />D</label>
}
else if (Model.Type == 3)
{
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 1 ? "checked" : "") value="1" />PW-ON</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 2 ? "checked" : "") value="2" />PW-OFF</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 3 ? "checked" : "") value="3" />1</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 4 ? "checked" : "") value="4" />2</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 5 ? "checked" : "") value="5" />3</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 6 ? "checked" : "") value="6" />4</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 7 ? "checked" : "") value="7" />5</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 8 ? "checked" : "") value="8" />6</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 9 ? "checked" : "") value="9" />7</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 10 ? "checked" : "") value="10" />8</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 11 ? "checked" : "") value="11" />9</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 12 ? "checked" : "") value="12" />0</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 13 ? "checked" : "") value="13" />CLEAR</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 14 ? "checked" : "") value="14" />退出</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 15 ? "checked" : "") value="15" />静音</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 16 ? "checked" : "") value="16" />菜单</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 17 ? "checked" : "") value="17" />音量+</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 18 ? "checked" : "") value="18" />音量-</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 19 ? "checked" : "") value="19" />上</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 20 ? "checked" : "") value="20" />下</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 21 ? "checked" : "") value="21" />左</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 22 ? "checked" : "") value="22" />右</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 26 ? "checked" : "") value="26" />鼠标L</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 27 ? "checked" : "") value="27" />节能</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 28 ? "checked" : "") value="28" />鼠标R</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 29 ? "checked" : "") value="29" />局部放大+</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 30 ? "checked" : "") value="30" />局部放大-</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 31 ? "checked" : "") value="31" />冻结</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 23 ? "checked" : "") value="23" />ENTER</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 24 ? "checked" : "") value="24" />page+</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 25 ? "checked" : "") value="25" />page-</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 32 ? "checked" : "") value="32" />梯形修正</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 33 ? "checked" : "") value="33" />图像</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 34 ? "checked" : "") value="34" />ID SET</label>
<label class="btn btn-sm btn-success"><input onchange="CodeChange(event)" name="@Model.InputName" type="radio" @Html.Raw(Model.Code == 35 ? "checked" : "") value="35" />自动调整</label>
}
else if (Model.Type == 5)
{
var selectList = Model.Buttons.FromJson<List<ButtonModel>>()
.Select(o => new SelectListItem { Text = o.Name, Value = o.Value, Selected = Model.Code.ToString() == o.Value });
@Html.DropDownList(Model.InputName, selectList, "选择", new { @class = "form-control select search", data_val = "true", data_val_required = "请选择" })
}
@Html.ValidationMessage(Model.InputName)
</div>
</div>
@functions{
public (int pattern, int direction, int wind, int power, int temperature) GetCode(int code)
{
var pattern = 0;
var direction = 0;
var wind = 0;
var power = 2;
var temperature = 1;
if (code > 480 + 2)
{
pattern = 480;
}
else if (code > 360 + 2)
{
pattern = 360;
}
else if (code > 240 + 2)
{
pattern = 240;
}
else if (code > 120 + 2)
{
pattern = 120;
}
else
{
pattern = 0;
}
code -= pattern;
if (code > 75 + 2)
{
direction = 75;
}
else if (code > 60 + 2)
{
direction = 60;
}
else
{
direction = 0;
}
code -= direction;
if (code > 45 + 2)
{
wind = 45;
}
else if (code > 30 + 2)
{
wind = 30;
}
else if (code > 15 + 2)
{
wind = 15;
}
else
{
wind = 0;
}
code -= wind;
if (code == 1)
{
power = 1;
}
else
{
power = 2;
temperature = code - power;
}
return (
pattern,
direction,
wind,
power,
temperature
);
}
}