完善地图可视化编辑
This commit is contained in:
parent
c6f4df21c1
commit
bf150590b0
|
@ -4170,7 +4170,7 @@ class Admin_DataController extends Zend_Controller_Action
|
|||
$data = [
|
||||
'uuid' => $uuid,
|
||||
'status' => $this->_getParam('status'),
|
||||
'layers' => $this->_getParam('status'),
|
||||
'layers' => $this->_getParam('layers'),
|
||||
'zoom_min' => $this->_getParam('zoom_min'),
|
||||
'zoom_max' => $this->_getParam('zoom_max'),
|
||||
'zoom_default' => $this->_getParam('zoom_default'),
|
||||
|
|
|
@ -116,7 +116,6 @@
|
|||
</div>
|
||||
|
||||
<?php if(!empty($this->info['layers'])) { ?>
|
||||
<?php var_dump($this->info['layers']) ?>
|
||||
<?php $vars = array() ?>
|
||||
<?php $encoder = new \Westdc\Visual\VariableEncoder; ?>
|
||||
<?php $vars = $encoder->decode($this->info['layers']);?>
|
||||
|
@ -128,7 +127,7 @@
|
|||
<input type="text" placeholder="类型" name="layers[<?= $index ?>][type]" class="input-xlarge" value="<?= $value['type'] ?>">
|
||||
</div>
|
||||
<div class="controls" style="padding-top:10px;">
|
||||
<input type="text" placeholder="url" name="layers[<?= $index ?>][sql]" class="input-block-level" value="<?= $value['url'] ?>">
|
||||
<input type="text" placeholder="url" name="layers[<?= $index ?>][url]" class="input-block-level" value="<?= $value['url'] ?>">
|
||||
</div>
|
||||
<div class="controls" style="padding-top:10px;">
|
||||
<input type="text" placeholder="最大经度" name="layers[<?= $index ?>][extent][lon_max]" class="input-mini" value="<?= $value['extent']['lon_max'] ?>">
|
||||
|
|
|
@ -32,6 +32,10 @@ class Map {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询所有地图可视化
|
||||
* @return mixed
|
||||
*/
|
||||
public function fetchAll()
|
||||
{
|
||||
$sql = "SELECT * FROM {$this->metadataTable} md
|
||||
|
@ -43,6 +47,11 @@ class Map {
|
|||
return $rs->fetchAll(\PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获得某一条可视化信息
|
||||
* @param $uuid
|
||||
* @return mixed
|
||||
*/
|
||||
public function fetch($uuid)
|
||||
{
|
||||
$sql = "SELECT * FROM {$this->mainTable} WHERE uuid='$uuid'";
|
||||
|
@ -51,39 +60,76 @@ class Map {
|
|||
return $rs->fetch(\PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除一条
|
||||
* @param $id
|
||||
* @return mixed
|
||||
*/
|
||||
public function delete($id)
|
||||
{
|
||||
$sql = "DELETE FROM {$this->mainTable} WHERE id=$id";
|
||||
return $this->db->exec($sql);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加一条
|
||||
* @param $data
|
||||
* @return bool
|
||||
*/
|
||||
public function add($data){
|
||||
|
||||
$dbh = new dbh();
|
||||
|
||||
if($this->checkExists($data['uuid']) === true)
|
||||
if($this->checkExists($data['uuid']) === false)
|
||||
return $dbh->insert($this->mainTable,$data);
|
||||
|
||||
return $dbh->update($this->mainTable,$data," uuid={$data['uuid']} ");
|
||||
return $dbh->update($this->mainTable,$data," uuid='{$data['uuid']}' ");
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理表单中接收的数据
|
||||
* @param $data
|
||||
* @return mixed
|
||||
*/
|
||||
public function processParam($data){
|
||||
|
||||
if(is_array($data['layers']) && count($data['layers'])){
|
||||
|
||||
foreach($data['layers'] as $index=>$value){
|
||||
if(!is_array($value) || count($value) < 1) {
|
||||
unset($data['layers']['index']);
|
||||
continue;
|
||||
}
|
||||
|
||||
if(empty(array_filter($value['extent'])))
|
||||
unset($value['extent']);
|
||||
|
||||
if(empty(array_filter($value))){
|
||||
unset($data['layers'][$index]);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
$data['layers'] = json_encode($data['layers'],JSON_NUMERIC_CHECK);
|
||||
$data['layers'] = json_encode($data['layers'],JSON_UNESCAPED_UNICODE);
|
||||
}else{
|
||||
$data['layers'] = json_encode([]);
|
||||
}
|
||||
|
||||
$data['zoom_min'] = (int)$data['zoom_min'] + 0;
|
||||
$data['zoom_max'] = (int)$data['zoom_max'] + 0;
|
||||
$data['zoom_default'] = (int)$data['zoom_default'] + 0;
|
||||
$data['center_lon'] = (float)$data['center_lon'];
|
||||
$data['center_lon'] = (float)$data['center_lon'];
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查某条信息是否存在
|
||||
* @param $uuid
|
||||
* @return bool
|
||||
*/
|
||||
public function checkExists($uuid){
|
||||
$row = $this->fetch($uuid);
|
||||
|
||||
|
|
Loading…
Reference in New Issue