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.
547 lines
35 KiB
547 lines
35 KiB
<template>
|
|
<div>
|
|
<div class="card ir" style="box-sizing:border-box;height:490px;margin-top:10px;">
|
|
<div class="card-header">
|
|
{{device.displayName}}
|
|
<span class="float-right text-success" v-if="device.isOnline"><i class="ion ion-ios-wifi"></i></span>
|
|
<span class="float-right text-danger" v-else><i class="ion ion-ios-wifi"></i></span>
|
|
</div>
|
|
<div class="card-body" style="padding:0;">
|
|
<div class="weui-tab">
|
|
<div class="weui-navbar">
|
|
<a href="javascript:;" class="weui-tabbar__item">
|
|
<p class="weui-tabbar__label">电视</p>
|
|
</a>
|
|
<a href="javascript:;" class="weui-tabbar__item">
|
|
<p class="weui-tabbar__label">空调</p>
|
|
</a>
|
|
<a href="javascript:;" class="weui-tabbar__item">
|
|
<p class="weui-tabbar__label">机顶盒</p>
|
|
</a>
|
|
<a href="javascript:;" class="weui-tabbar__item">
|
|
<p class="weui-tabbar__label">自定义</p>
|
|
</a>
|
|
</div>
|
|
<div class="weui-tab__panel media ir">
|
|
<div class="weui-tab__content">
|
|
<table style="margin: 30px auto;">
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="1" v-on:click="send($event.target.value,2)">电源</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="2" v-on:click="send($event.target.value,2)">AV</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="15" v-on:click="send($event.target.value,2)">静音</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="1" v-on:click="send($event.target.value,2)">1</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="2" v-on:click="send($event.target.value,2)">2</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="3" v-on:click="send($event.target.value,2)">3</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="4" v-on:click="send($event.target.value,2)">4</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="5" v-on:click="send($event.target.value,2)">5</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="6" v-on:click="send($event.target.value,2)">6</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="7" v-on:click="send($event.target.value,2)">7</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="8" v-on:click="send($event.target.value,2)">8</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="9" v-on:click="send($event.target.value,2)">9</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="13" v-on:click="send($event.target.value,2)">返回</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="0" v-on:click="send($event.target.value,2)">0</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="14" v-on:click="send($event.target.value,2)">退出</button>
|
|
</td>
|
|
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="19" v-on:click="send($event.target.value,2)">上</button>
|
|
</td>
|
|
<td>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="21" v-on:click="send($event.target.value,2)">左</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="23" v-on:click="send($event.target.value,2)">OK</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="22" v-on:click="send($event.target.value,2)">右</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="8" v-on:click="send($event.target.value,2)">下</button>
|
|
</td>
|
|
<td>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="17" v-on:click="send($event.target.value,2)">+</button>
|
|
</td>
|
|
<td>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="24" v-on:click="send($event.target.value,2)">↑</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
音量
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="16" v-on:click="send($event.target.value,2)">菜单</button>
|
|
</td>
|
|
<td>
|
|
频道
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="18" v-on:click="send($event.target.value,2)">-</button>
|
|
</td>
|
|
<td>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="25" v-on:click="send($event.target.value,2)">↓</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="26" v-on:click="send($event.target.value,2)">快退</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="28" v-on:click="send($event.target.value,2)">播放</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="28" v-on:click="send($event.target.value,2)">快进</button>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="weui-tab__content">
|
|
<table style="margin: 30px auto;">
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" :value="power.value" v-on:click="changePower($event.target.value)">电源</button>
|
|
</td>
|
|
<td></td>
|
|
<td>{{power.name}}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" :value="pattern.value" v-on:click="changePattern($event.target.value)">模式</button>
|
|
</td>
|
|
<td></td>
|
|
<td>{{pattern.name}}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" :value="wind.value" v-on:click="changeWind($event.target.value)">风速</button>
|
|
</td>
|
|
<td></td>
|
|
<td>{{wind.name}}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" :value="direction.value" v-on:click="changeDirection($event.target.value)">风向</button>
|
|
</td>
|
|
<td></td>
|
|
<td>{{direction.name}}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" :value="temperature.value" v-on:click="changeTemperature($event.target.value,-1)">-</button>
|
|
</td>
|
|
<td>
|
|
{{temperature.name}}
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" :value="temperature.value" v-on:click="changeTemperature($event.target.value,1)">+</button>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="weui-tab__content">
|
|
<table style="margin: 20px auto;">
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="1" v-on:click="send($event.target.value,3)">电源</button>
|
|
</td>
|
|
<td></td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="15" v-on:click="send($event.target.value,3)">静音</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; padding:0 5px; padding:0 5px" value="1" v-on:click="send($event.target.value,3)">1</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="2" v-on:click="send($event.target.value,3)">2</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="3" v-on:click="send($event.target.value,3)">3</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="4" v-on:click="send($event.target.value,3)">4</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="5" v-on:click="send($event.target.value,3)">5</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="6" v-on:click="send($event.target.value,3)">6</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="7" v-on:click="send($event.target.value,3)">7</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="8" v-on:click="send($event.target.value,3)">8</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="9" v-on:click="send($event.target.value,3)">9</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="13" v-on:click="send($event.target.value,3)">返回</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="0" v-on:click="send($event.target.value,3)">0</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="14" v-on:click="send($event.target.value,3)">退出</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="19" v-on:click="send($event.target.value,3)">上</button>
|
|
</td>
|
|
<td>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="21" v-on:click="send($event.target.value,3)">左</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="23" v-on:click="send($event.target.value,3)">OK</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="22" v-on:click="send($event.target.value,3)">右</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="8" v-on:click="send($event.target.value,3)">下</button>
|
|
</td>
|
|
<td>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="17" v-on:click="send($event.target.value,3)">+</button>
|
|
</td>
|
|
<td>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="24" v-on:click="send($event.target.value,3)">↑</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
音量
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="16" v-on:click="send($event.target.value,3)">菜单</button>
|
|
</td>
|
|
<td>
|
|
频道
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="18" v-on:click="send($event.target.value,3)">-</button>
|
|
</td>
|
|
<td>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="25" v-on:click="send($event.target.value,3)">↓</button>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="26" v-on:click="send($event.target.value,3)">快退</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="28" v-on:click="send($event.target.value,3)">播放</button>
|
|
</td>
|
|
<td>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default btn-sm" style="width:100%; font-size:12px;padding:2px 15px" value="28" v-on:click="send($event.target.value,3)">快进</button>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="weui-tab__content">
|
|
<div class="button-sp-area cell" style="width:100%;height:450px;overflow:auto;">
|
|
<button v-for="button in getCustomButtons()" type="button" class="weui-btn weui-btn_mini weui-btn_default px-2 m-2" :value="button.value" v-on:click="send($event.target.value,5)">{{button.name}}</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div v-if="edit" class="card" style="box-sizing:border-box;margin:10px;">
|
|
<div class="card-header">遥控器匹配</div>
|
|
<div class="card-body">
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default px-2 m-2" v-on:click="execApi(device.number,'/Ir/MathAir1')" value="1">空调匹配</button>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default px-2 m-2" v-on:click="execApi(device.number,'/Ir/MathAir2')" value="2">电视匹配</button>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default px-2 m-2" v-on:click="execApi(device.number,'/Ir/MathAir3')" value="3">机顶盒匹配</button>
|
|
</div>
|
|
</div>
|
|
<div v-if="edit" class="card" style="box-sizing:border-box;margin:10px;">
|
|
<div class="card-header">
|
|
自定义指令
|
|
<div class="float-right">
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default px-2" v-on:click="add()">添加</button>
|
|
<button type="button" class="weui-btn weui-btn_mini weui-btn_default px-2" v-on:click="save($event)">保存</button>
|
|
</div>
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="weui-cells weui-cells_form item" v-for="button in getCustomButtons()">
|
|
<div class="weui-cell">
|
|
<div class="weui-cell__hd"><label class="weui-label">名称</label></div>
|
|
<div class="weui-cell__bd">
|
|
<input class="weui-input" type="text" name="name" placeholder="名称" :value="button.name">
|
|
</div>
|
|
</div>
|
|
<div class="weui-cell">
|
|
<div class="weui-cell__hd"><label class="weui-label">按键</label></div>
|
|
<div class="weui-cell__bd">
|
|
<input class="weui-input" type="text" name="value" placeholder="名称" :value="button.value">
|
|
</div>
|
|
</div>
|
|
<div class="weui-cell">
|
|
<div class="weui-cell__hd"><label class="weui-label">序号</label></div>
|
|
<div class="weui-cell__bd">
|
|
<input class="weui-input" type="text" name="order" placeholder="名称" :value="button.order">
|
|
</div>
|
|
</div>
|
|
<div class="text-center">
|
|
<a href="javascript:;" class="weui-btn weui-btn_mini weui-btn_default px-2" v-on:click="study(button.value)">学习</a>
|
|
<a href="javascript:;" class="weui-btn weui-btn_mini weui-btn_default px-2" v-on:click="test(button.value)">测试</a>
|
|
<a href="javascript:;" class="weui-btn weui-btn_mini weui-btn_default px-2" v-on:click="remove(button.name)">移除</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
<script>
|
|
({
|
|
props: ['device', 'edit'],
|
|
mounted: function () {
|
|
weui.tab('.weui-tab');
|
|
},
|
|
methods: {
|
|
changePattern: function (v) {
|
|
this.change(v, 0, 480, 120);
|
|
},
|
|
changeDirection(v) {
|
|
this.change(v, 0, 60, 60);
|
|
},
|
|
changeWind(v) {
|
|
this.change(v, 0, 45, 15);
|
|
},
|
|
changePower: function (v) {
|
|
var oldValue = parseInt(v);
|
|
if (oldValue === 1) {
|
|
this.send(3, 1);
|
|
getData(this.device, '按键').value = 3;
|
|
}
|
|
else if (oldValue === 2) {
|
|
this.send(1, 1);
|
|
getData(this.device, '按键').value = 1;
|
|
}
|
|
},
|
|
changeTemperature: function (v, step) {
|
|
var oldValue = parseInt(v);
|
|
var min = 1;
|
|
var max = 15;
|
|
var newValue = oldValue + step;
|
|
if (step > 0 && newValue > max) {
|
|
newValue = max;
|
|
}
|
|
else if (step < 0 && newValue < min) {
|
|
newValue = min;
|
|
}
|
|
var newCode = this.code - oldValue + newValue;
|
|
this.send(newCode, 1);
|
|
getData(this.device, '按键').value = newCode;
|
|
},
|
|
change: function (v, min, max, step) {
|
|
var oldValue = parseInt(v);
|
|
var newValue = oldValue + step;
|
|
if (newValue > max) {
|
|
newValue = min;
|
|
}
|
|
var newCode = this.code - oldValue + newValue;
|
|
this.send(newCode, 1);
|
|
getData(this.device, '按键').value = newCode;
|
|
},
|
|
send: function (value, type) {
|
|
execApi(this.device.number, '/Ir/Send', 'type=' + type + '&code=' + value);
|
|
},
|
|
getCustomButtons: function () {
|
|
return Enumerable.from(JSON.parse(getDeviceDataValue(this.device, "指令")))
|
|
.orderBy(function (o) { return o.order; })
|
|
.toArray();
|
|
},
|
|
add: function () {
|
|
var data = Enumerable.from(this.device.data)
|
|
.where(function (o) { return o.name === "指令"; })
|
|
.firstOrDefault();
|
|
var buttons = this.getCustomButtons();
|
|
var newBtn = { name: "测试", value: "603", order: 100 };
|
|
buttons.push(newBtn);
|
|
data.value = JSON.stringify(buttons);
|
|
},
|
|
remove: function (name) {
|
|
var data = Enumerable.from(this.device.data)
|
|
.where(function (o) { return o.name === "指令"; })
|
|
.firstOrDefault();
|
|
var buttons = this.getCustomButtons();
|
|
for (var i = buttons.length - 1; i >= 0; i--) {
|
|
if (buttons[i].name === name) {
|
|
buttons.splice(i, 1);
|
|
break;
|
|
}
|
|
}
|
|
data.value = JSON.stringify(buttons);
|
|
},
|
|
study: function (code) {
|
|
execApi(this.device.number, '/Ir/Study', 'type=' + 5 + '&code=' + code);
|
|
},
|
|
test: function (code) {
|
|
execApi(this.device.number, '/Ir/Send', 'type=' + 5 + '&code=' + code);
|
|
},
|
|
save: function (e) {
|
|
var buttons = [];
|
|
$(e.target).parents('.card').find('.item').each(function () {
|
|
buttons.push({
|
|
name: $(this).find("input[name='name']").val(),
|
|
value: $(this).find("input[name='value']").val(),
|
|
order: $(this).find("input[name='order']").val()
|
|
});
|
|
});
|
|
var value = JSON.stringify(buttons);
|
|
execApi(this.device.number, '/Ir/Buttons', 'buttons=' + value);
|
|
}
|
|
},
|
|
computed: {
|
|
code: function () {
|
|
return getDeviceDataValue(this.device, '按键');
|
|
},
|
|
pattern: function () {
|
|
var code = this.code;
|
|
var pattern = { name: '制冷', value: 0 };
|
|
if (code > 480 + 2) {
|
|
pattern = { name: '通风', value: 480 };
|
|
}
|
|
else if (code > 360 + 2) {
|
|
pattern = { name: '抽湿', value: 360 };
|
|
}
|
|
else if (code > 240 + 2) {
|
|
pattern = { name: '制热', value: 240 };
|
|
}
|
|
else if (code > 120 + 2) {
|
|
pattern = { name: '自动', value: 120 };
|
|
}
|
|
return pattern;
|
|
},
|
|
direction: function () {
|
|
var code = this.code - this.pattern.value;
|
|
var direction = { name: '自动', value: 0 };;
|
|
if (code > 60 + 2) {
|
|
direction = { name: '手动', value: 60 };
|
|
}
|
|
return direction;
|
|
},
|
|
wind: function () {
|
|
var code = this.code - this.pattern.value - this.direction.value;
|
|
var wind = { name: '自动', value: 0 };
|
|
if (code > 45 + 2) {
|
|
wind = { name: '低', value: 45 };
|
|
}
|
|
else if (code > 30 + 2) {
|
|
wind = { name: '中', value: 30 };
|
|
}
|
|
else if (code > 15 + 2) {
|
|
wind = { name: '高', value: 15 };
|
|
}
|
|
return wind;
|
|
},
|
|
power: function () {
|
|
var code = this.code - this.pattern.value - this.direction.value - this.wind.value;
|
|
var power = { name: '关', value: 1 };
|
|
if (code > 1) {
|
|
power = { name: '开', value: 2 };
|
|
}
|
|
return power;
|
|
},
|
|
temperature: function () {
|
|
var code = this.code - this.pattern.value - this.direction.value - this.wind.value - this.power.value;
|
|
var temperature = { name: '16℃', value: 1 };
|
|
if (code > 1) {
|
|
temperature = { name: parseInt(code + 15) + '℃', value: code };
|
|
}
|
|
return temperature;
|
|
}
|
|
}
|
|
});
|
|
</script> |