#json字符转化为图Array型数据 $chart->setChartArray($chart_from_db["data"]); #根据得到的数据设置属性 $chart->seriesEditAction($data); //这里图表入库 $db->updateChart($id, $chart->getChartJson()); $panel_db = new PanelDB(); $panel_db->updatePaneltDataLock($id, 1); echo $chart->getChartJson(); } else { if ($_GET["action"] == "update_options") { $data = $_GET; $id = $_GET["chart_id"]; #从数据库取表数据 $db = new ChartDB(); $chart_from_db = $db->selectChart($id); #拿到数据源类和图表类 $data_machine = $chart_from_db["data_machine"]; $chart_type = $chart_from_db["type"]; #利用工厂实例化图表对象 $chart = ChartFactory::getChart($chart_type); #json字符转化为图Array型数据 $chart->setChartArray($chart_from_db["data"]); $chart->optionsEditAction($data); $db->updateChart($id, $chart->getChartJson()); $panel_db = new PanelDB(); $panel_db->updatePaneltDataLock($id, 1); echo $chart->getChartJson(); } else { if ($_GET["action"] == "update_help_msg") { $id = $_GET["chart_id"];
/** * 从63上获取数据,如果数据不锁定,从其他其他数据源跟新数据 */ public function getChart() { $db = new ChartDB(); $c = $db->selectChart($this->chart_id); $this->chart->setChartArray($c["data"]); $c = $db->selectChartDataLock($this->chart_id); if ($c["data_lock"] == 0) { $this->freshChart(); } return $this->chart->getChartJson(); }