// filepath: c:\work\gzs\gzsBackend\gzsowl\models\owlsys\systemAdmin\apps\api\src\plugins\uninstall.jsx
//#import app.js

// 卸载插件（示例实现）
// 接受前端传入的 selected / ids / records 字段，返回卸载结果。

//#import $owl_apps:services/modelService.jsx

function main() {
    var params = JSON.parse($body);
    var id = params.id;
    var ids = params.ids;
    if (!ids && id) {
        ids = [id];
    }


    $.log('uninstall plugin called, ids=' + JSON.stringify(ids));

    if (!ids || ids.length === 0) {
        var err = { state: 'err', msg: '参数错误: 未提供要卸载的记录' };
        out.print(JSON.stringify(err));
        return;
    }

    // TODO: 这里可以加入实际的卸载逻辑（如删除注册表、清理数据库、撤销配置等）。
    // 当前实现仅模拟成功返回，并回显 ids。
    var tableIds = [];
    for(var i = 0; i < ids.length; i++){
        var id = ids[i]
        var owlapp = owl_appsService.get(id);
        if(owlapp){
            var tableId = owlapp.tableId;
            AppService.deleteMyApp('head_merchant', tableId);
            tableIds.push(tableId);
        }

    }


    var idString = tableIds.join(',');
    var ret = {
        state: 'ok',
        msg: '卸载成功: ' + idString,
        ids: ids
    };
    out.print(JSON.stringify(ret));
}

main();

