Example #1
0
function divCableLine1($coors, $CableLineId, $nodeInfo, $tmpT = FALSE)
{
    $OpenGIS = "(" . $coors[0]->lon . "," . $coors[0]->lat . ")";
    $wr['id'] = $CableLineId;
    $res = CableLine_SELECT(0, $wr, $tmpT);
    $CableLine = $res['rows'][0];
    unset($wr);
    $wr['CableLine'] = $CableLineId;
    $query = 'SELECT * FROM "' . tmpTable('CableLinePoint', $tmpT) . '"' . genWhere($wr) . 'ORDER BY "sequence"';
    $res2 = PQuery($query);
    $CableLinePoints = $res2['rows'];
    for ($i = 0; $i < count($CableLinePoints); $i++) {
        $point = $CableLinePoints[$i];
        if ($point['OpenGIS'] == $OpenGIS) {
            $name = $nodeInfo['name'];
            $NetworkBoxId = $nodeInfo['NetworkBoxId'];
            $note = $nodeInfo['note'];
            $SettlementGeoSpatial = "NULL";
            $building = $nodeInfo['building'];
            $apartment = $nodeInfo['apartment'];
            $res3 = NetworkNode_Add($name, $NetworkBoxId, $note, $OpenGIS, $SettlementGeoSpatial, $building, $apartment, $tmpT);
            $NetworkNodeId = $res3['rows'][0]['id'];
            $seq = $point['sequence'];
            $wr['sequence'] = $seq;
            $upd['OpenGIS'] = "NULL";
            $upd['NetworkNode'] = $NetworkNodeId;
            CableLinePoint_UPDATE($upd, $wr, $tmpT);
            $wr1 = array('sequence' => array('val' => $seq, 'sign' => '>'));
            error_log(genWhere($wr1));
            $ins = array();
            $ins['CableType'] = $CableLine['CableType'];
            $ins['name'] = $CableLine['name'] . "_div";
            $ins['comment'] = $CableLine['comment'];
            $query = 'INSERT INTO "' . tmpTable('CableLine', $tmpT) . '"' . genInsert($ins) . ' RETURNING id';
            error_log($query);
            $res4 = PQuery($query);
            $NCableLineId = $res4['rows'][0]['id'];
            $ins = array();
            foreach ($point as $key => $value) {
                if ($key != "id" && $key != "sequence") {
                    if ($value != "") {
                        $ins[$key] = $value;
                    } else {
                        $ins[$key] = "NULL";
                    }
                }
            }
            $ins['CableLine'] = $NCableLineId;
            $ins['sequence'] = 1;
            $ins['OpenGIS'] = 'NULL';
            $ins['NetworkNode'] = $NetworkNodeId;
            $query = 'INSERT INTO "' . tmpTable('CableLinePoint', $tmpT) . '"' . genInsert($ins);
            error_log($query);
            PQuery($query);
            $query = 'UPDATE "' . tmpTable('CableLinePoint', $tmpT) . '" SET "CableLine" = ' . $NCableLineId . ', sequence = sequence + 1 - ' . $seq . ' WHERE "sequence" > ' . $seq . ' AND "CableLine" = ' . $CableLineId;
            error_log($query);
            PQuery($query);
            break;
        }
    }
}
Example #2
0
        } elseif (!isset($res['error'])) {
            header("Refresh: 3; url=" . $back);
            $message = 'Узел изменен!';
            $error = 0;
        } else {
            $message = 'Неверно заполнены поля!';
            $error = 1;
        }
    } elseif ($_POST['mode'] == 2) {
        $name = $_POST['name'];
        $networkBox = $_POST['boxes'];
        $note = $_POST['note'];
        $place = $_POST['place'];
        $OpenGIS = $_POST['OpenGIS'] == '' ? 'NULL' : $_POST['OpenGIS'];
        $apartment = $building = $SettlementGeoSpatial = 'NULL';
        $res = NetworkNode_Add($name, $networkBox, $note, $OpenGIS, $SettlementGeoSpatial, $building, $apartment, $place);
        if (isset($res['error'])) {
            $message = $res['error'];
            $error = 1;
        } elseif (!isset($res['error'])) {
            header("Refresh: 3; url=" . $back);
            $message = 'Узел добавлен!';
            $error = 0;
        } else {
            $message = 'Неверно заполнены поля!';
            $error = 1;
        }
    }
    showMessage($message, $error);
} else {
    $comboBox_Box_Values = array();