/**
 * 创建UIAnchor界面
 * @param {Object} obj - 创建界面的父物体
 * @param {String} value - 创建界面的类型
 */
function createUIAnchor(floorNum) {
    let anchorCreateJson = {
        type: "UIAnchor",
        //   element: $(".pictureMarker")[0],
        //  position: [100, -10, -21],
        //  parent: app.query('#1F1FS01')[0],
        //  pivotPixel: [parseFloat($(".textAndPictureMarker").css("width")) / 2, parseFloat($(".textAndPictureMarker").css("height"))],
    }
    var s = app.query('#' + floorNum)[0];
    let n = Math.ceil(Math.random() * 10)
    anchorCreateJson.element = $(".textAndPictureMarker")[0];
    //anchorCreateJson.position = [5, 2, n];
    anchorCreateJson.parent = app.query('#' + floorNum)[0];
    anchorCreateJson.pivotPixel = [parseFloat($(".textAndPictureMarker").css("width")) / 2, parseFloat($(".textAndPictureMarker").css("height"))];
    let tempTopCard = app.create(anchorCreateJson);  // 创建顶牌
    tempTopCard.visible = true;  // 设置初始顶牌状态
}
function deviceIcon_click(dwtype, floorNum, ownercode) {
    let funcName = "icon_click";
    var data = {
        'dwtype': dwtype,
        'level': floorNum,
        'id': ownercode
    }
    var message = {
        'funcName': funcName, // 所要调用父页面里的函数名
        'param': data
    }
    // 向父窗体(用户主页面)发送消息
    // 第一个参数是具体的信息内容,
    // 第二个参数是接收消息的窗口的源(origin),即"协议 + 域名 + 端口"。也可以设为*,表示不限制域名,向所有窗口发送
    window.parent.postMessage(message, '*');
}
//======================================================================================================================
// 添加html
function create_html() {
    var sign =
        `
`
    $('#div3d').append($(sign));
}
function create_element(dName, deviceTypes, floorNum, ownercode) {
    var srcElem = document.getElementById('board');
    if (deviceTypes == 'YTVA') {
        var sign =
            `
`
    } else if (deviceTypes == 'YTWP') {
        var sign =
            `
`
    } else if (deviceTypes == 'YTCI') {
        var sign =
            `
`
    } else if (deviceTypes == 'YTEF') {
        var sign =
            `
`
    } else if (deviceTypes == 'YTFC') {
        var sign =
            `
`
    } else if (deviceTypes == 'YTSM') {
        var sign =
            `
`
    } else if (deviceTypes == 'YTLL') {
        var sign =
            `
`
    } else if (deviceTypes == 'YTWI') {
        var sign =
            `
`
    }
    $('#div3d').append($(sign));
    var newElem = document.getElementById(dName);
    // var newElem = srcElem.cloneNode(true);
    newElem.style.display = "block";
    newElem.setAttribute("onclick", "deviceIcon_click('" + deviceTypes + "','" + floorNum + "','" + ownercode + "')");
    app.domElement.insertBefore(newElem, srcElem);
    return newElem;
}
// 物体顶界面
var ui = null;
var uis = [];
function create_ui(deviceType, floorNum, deviceList) {
    var deviceTypes = deviceType;
    destroy_ui();
    create_html();
    deviceIcon = [];
    for (var j = 0; j < deviceList.length; j++) {
        if (deviceList[j].dwtype == deviceType) {
            deviceIcon.push(deviceList[j]);
        }
    }
    if (deviceType == 'YTVA') {
        deviceType = '摄像头';
    } else if (deviceType == 'YTWP') {
        deviceType = '水表';
    } else if (deviceType == 'YTCI') {
        deviceType = '环境监测';
    } else if (deviceType == 'YTEF') {
        deviceType = '电气火灾';
    } else if (deviceType == 'YTFC') {
        deviceType = '消防控制柜';
    } else if (deviceType == 'YTSM') {
        deviceType = '烟感';
    } else if (deviceType == 'YTLL') {
        deviceType = '液位';
    }
    else if (deviceType == 'YTWI') {
        deviceType = '水浸';
    }
    let num;
    if(floorNum == -1){
        num = 'B1'
    }else{
        num = 'F' + floorNum;
    }
    var carList = app.query("#" + num)[0].query(deviceType)
    var carList1 = app.query("#" + num)[0]
    console.log(carList)
    console.log(deviceIcon.length)
    //   app.query("#" + id)[0].query('.Thing').forEach(function (obj){
    //     var car = app.query("#"+obj.id)[0];
    //     panelArr.push(uiAnchor(car));
    // })
    for (var i = 0; i < deviceIcon.length; i++) {
        dName = deviceIcon[i].device_name;
        var ownercode = deviceIcon[i].owner_code
        console.log(dName,ownercode,carList[i])
        ui = app.create({
            type: 'UIAnchor',
            parent: carList[i],
            element: create_element(dName, deviceTypes, floorNum, ownercode),
            localPosition: [0, 2, 0],
            pivot: [0.5, 1] //  [0,0]即以界面左上角定位,[1,1]即以界面右下角进行定位
        });
        uis.push(ui);
    }
}
// 删除界面
function destroy_ui() {
    if (uis) {
        for (var i = 0; i < uis.length; i++) {
            uis[i].destroy();
        }
        uis = [];
    }
}