public function actionrestoredefault()
 {
     //发送指令
     $message = '<br>';
     FLEA::loadClass('Util_socketclient');
     $dev_bak = FLEA::getSingleton('Model_devinitialinfo');
     $dev = $dev_bak->findAll();
     //如果备份表里为空,将退出;
     if (!$dev) {
         $this->_G->customshow('您当前没有备份的默认值,请先备份', "edit", "Index", 3, 0);
         exit;
     }
     foreach ($dev as $devinfo) {
         $socket = new Util_socketclient();
         $socket->socketconn($devinfo['ipaddr'], $devinfo['ipport']);
         foreach ($devinfo['chninfo'] as $chninfo) {
             $sendcommand = $socket->messagetype($chninfo['chn'], $chninfo['apid'], $chninfo['agcstat'], $chninfo['gain'], $chninfo['mutestat'], $chninfo['passstat']);
             switch ($socket->sendmessage($sendcommand)) {
                 case $socket->returntrue:
                     $this->log->writelog($devinfo['devname'], $sendcommand, $socket->returntrue);
                     $message .= "设备{$devinfo['devname']}通道号:{$devinfo['chn']}指令发送:&nbsp;[<font color=red><b>{$sendcommand}</b></font>]成功";
                     $type = '1';
                 case $socket->returnfalse:
                     $this->log->writelog($devinfo['devname'], $sendcommand, $socket->returnfalse);
                     $message .= "<font color=red>设备{$devinfo['devname']}通道号:{$devinfo['chn']}指令发送:&nbsp;[<b>{$sendcommand}</b>]失败</b>";
                     $type = '0';
             }
         }
         unset($socket);
     }
     $message .= "<br>备份恢复完成";
     $this->_G->customshow($message, 'edit', 'Index', 3, $type);
 }
 public function actionModify()
 {
     if ($_POST['op']) {
         unset($_POST['op']);
         $devinfo = array('ipaddr' => $_POST['ipaddr'], 'ipport' => $_POST['ipport'], 'devname' => $_POST['devname'], 'serial' => $_POST['serial']);
         try {
             $db = FLEA::getDBO();
             $db->startTrans();
             $this->M_devinfo->update($devinfo);
             FLEA::loadClass('Util_socketclient');
             $socket = new Util_socketclient();
             $socket->socketconn($_POST['ipaddr'], $_POST['ipport']);
             for ($i = 1; $i < 9; $i++) {
                 $this->log->ip = $_POST['ipaddr'];
                 $sendcommand = $socket->messagetype($_POST["chn_{$i}"], str_pad($_POST["apid_{$i}"], 4, '0', STR_PAD_LEFT), $_POST["agcstat_{$i}"], $_POST["gain_{$i}"], $_POST["mutestat_{$i}"], $_POST["passstat_{$i}"]);
                 switch ($socket->sendmessage($sendcommand)) {
                     case $socket->returntrue:
                         $this->log->writelog($_POST['devname'], $sendcommand, $socket->returntrue);
                         $chninfo = array('serial' => $_POST["serial_{$i}"], 'chn' => $_POST["chn_{$i}"], 'chnshort' => $_POST["chninfo_{$i}"], 'apid' => str_pad($_POST["apid_{$i}"], 4, '0', STR_PAD_LEFT), 'prgname' => $_POST["prgname_{$i}"], 'agcstat' => $_POST["agcstat_{$i}"], 'gain' => $_POST["gain_{$i}"], 'mutestat' => $_POST["mutestat_{$i}"], 'passstat' => $_POST["passstat_{$i}"]);
                         $this->M_chninfo->update($chninfo);
                         unset($chninfo);
                         break;
                     case $socket->returnfalse:
                         $this->log->writelog($_POST['devname'], $sendcommand, $socket->returnfalse);
                         break;
                 }
                 sleep(1);
             }
             fclose($socket->socket);
             $db->completeTrans();
             $this->_G->customshow("编辑成功", "socket", "Index", 3, 1);
         } catch (Exception $e) {
             $db->completeTrans(FALSE);
             $this->_G->customshow("编辑失败", "socket", "Index", 3, 0);
         }
     } else {
         // 内容:主页面
         $this->_V->assign("_MainFile", "socket_edit.htm");
         // 表单地址:添加
         $this->_V->assign("_acurl", url("socket", "Modify"));
         // 操作: 编辑
         $this->_V->assign("op", "m");
         // 内容:导航条
         $this->_V->assign("_CurrentlyPlace", $this->_N->genNav());
         //不显示导航条
         //            $this->_V->assign('noview_navigation',TRUE);
         $DataList = $this->M_devinfo->find($_GET['serial']);
         $i = 1;
         //            dump($DataList);
         foreach ($DataList['chninfo'] as &$chninfo) {
             $chninfo['check_id'] = "apid_{$i}";
             $chninfo['num'] = $i;
             $chninfo['num_list'] = $i;
             $i++;
         }
         $this->_V->assign('gainarr', $this->socketClient->gainArray);
         $this->_V->assign("DataList", $DataList);
         $this->_V->display('sys_container.htm');
     }
 }