
<table class="layui-hide" id="userTable" lay-filter="userTableFilter"></table>

<script type="text/html" id="operationBar">
  <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
  <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
</script>

<script>
    
layui.use(['table'], function(){
    var table = layui.table;
  //判断进入的场景值
    function mapScene(scene) {
    const sceneList = {
      '1000': '其他',
      '1001': '发现页小程序「最近使用」列表',
      '1005': '微信首页顶部搜索框的搜索结果页',
      '1006': '发现栏小程序主入口搜索框的搜索结果页',
      '1007': '单人聊天会话中的小程序消息卡片',
      '1008': '群聊会话中的小程序消息卡片',
      '1010': '收藏夹',
      '1011': '扫描二维码',
      '1012': '长按图片识别二维码',
      '1013': '扫描手机相册中选取的二维码',
      '1014': '小程序订阅消息（与1107相同）',
      '1017': '前往小程序体验版的入口页',
      '1019': '微信钱包（微信客户端7.0.0版本改为支付入口）',
      '1020': '公众号 profile 页相关小程序列表（已废弃）',
      '1022': '聊天顶部置顶小程序入口',
      '1023': '安卓系统桌面图标',
      '1024': '小程序 profile 页	',
      '1025': '扫描一维码',
      '1026': '发现栏小程序主入口，「附近的小程序」列表',
      '1027': '微信首页顶部搜索框搜索结果页「使用过的小程序」列表',
      '1028': '我的卡包',
      '1029': '小程序中的卡券详情页',
      '1030': '自动化测试下打开小程序',
      '1031': '长按图片识别一维码',
      '1032': '扫描手机相册中选取的一维码',
      '1034': '微信支付完成页',
      '1035': '公众号自定义菜单',
      '1036': 'App 分享消息卡片',
      '1037': '小程序打开小程序',
      '1038': '从另一个小程序返回',
      '1039': '摇电视',
      '1042': '添加好友搜索框的搜索结果页',
      '1043': '公众号模板消息',
      '1044': '带 shareTicket 的小程序消息卡片',
      '1045': '朋友圈广告',
      '1046': '朋友圈广告详情页',
      '1047': '扫描小程序码',
      '1048': '长按图片识别小程序码',
      '1049': '扫描手机相册中选取的小程序码',
      '1052': '卡券的适用门店列表',
      '1053': '搜一搜的结果页',
      '1054': '顶部搜索框小程序快捷入口',
      '1056': '聊天顶部音乐播放器右上角菜单',
      '1057': '钱包中的银行卡详情页',
      '1058': '公众号文章',
      '1059': '体验版小程序绑定邀请页',
      '1060': '微信支付完成页（与1034相同）',
      '1064': '微信首页连Wi-Fi状态栏',
      '1065': 'URL scheme',
      '1067': '公众号文章广告',
      '1068': '附近小程序列表广告（已废弃）',
      '1069': '移动应用通过openSDK进入微信，打开小程序',
      '1071': '钱包中的银行卡列表页',
      '1072': '二维码收款页面',
      '1073': '客服消息列表下发的小程序消息卡片',
      '1074': '公众号会话下发的小程序消息卡片',
      '1077': '摇周边',
      '1078': '微信连Wi-Fi成功提示页',
      '1079': '微信游戏中心',
      '1081': '客服消息下发的文字链',
      '1082': '公众号会话下发的文字链',
      '1084': '朋友圈广告原生页',
      '1088': '会话中,系统消息，打开小程序',
      '1089': '微信聊天主界面下拉，「最近使用」栏',
      '1090': '长按小程序右上角菜单唤出最近使用历史',
      '1091': '公众号文章商品卡片',
      '1092': '城市服务入口',
      '1095': '小程序广告组件',
      '1096': '聊天记录，打开小程序',
      '1097': '微信支付签约原生页，打开小程序',
      '1099': '页面内嵌插件',
      '1100': '红包封面详情页打开小程序',
      '1101': '远程调试热更新（开发者工具中，预览 -> 自动预览 -> 编译并预览）',
      '1102': '公众号 profile 页服务预览',
      '1103': '发现页小程序「我的小程序」列表',
      '1104': '微信聊天主界面下拉，「我的小程序」栏',
      '1106': '聊天主界面下拉，从顶部搜索结果页，打开小程序',
      '1107': '订阅消息，打开小程序',
      '1113': '安卓手机负一屏，打开小程序（三星）',
      '1114': '安卓手机侧边栏，打开小程序（三星）',
      '1119': '【企业微信】工作台内打开小程序',
      '1120': '【企业微信】个人资料页内打开小程序',
      '1121': '【企业微信】聊天加号附件框内打开小程序',
      '1124': '扫“一物一码”打开小程序',
      '1125': '长按图片识别“一物一码”',
      '1126': '扫描手机相册中选取的“一物一码”',
      '1129': '微信爬虫访问',
      '1131': '浮窗',
      '1133': '硬件设备打开小程序',
      '1135': '小程序profile页相关小程序列表，打开小程序',
      '1144': '公众号文章 - 视频贴片',
      '1145': '发现栏 - 发现小程序',
      '1146': '地理位置信息打开出行类小程序',
      '1148': '卡包-交通卡，打开小程序',
      '1150': '扫一扫商品条码结果页打开小程序',
      '1151': '发现栏 - 我的订单',
      '1152': '订阅号视频打开小程序',
      '1153': '“识物”结果页打开小程序',
      '1154': '朋友圈内打开“单页模式”',
      '1155': '“单页模式”打开小程序',
      '1157': '服务号会话页打开小程序',
      '1158': '群工具打开小程序',
      '1160': '群待办',
      '1167': 'H5 通过开放标签打开小程序',
      '1168': '移动/网站应用直接运行小程序',
      '1169': '发现栏小程序主入口，各个生活服务入口（例如快递服务、出行服务等）',
      '1171': '微信运动记录（仅安卓）',
      '1173': '聊天素材用小程序打开 详情',
      '1175': '视频号主页商店入口',
      '1176': '视频号直播间主播打开小程序',
      '1177': '视频号直播商品',
      '1178': '在电脑打开手机上打开的小程序',
      '1179': '#话题页打开小程序',
      '1181': '网站应用打开PC小程序',
      '1183': 'PC微信 - 小程序面板 - 发现小程序 - 搜索',
      '1184': '视频号链接打开小程序',
      '1185': '群公告',
      '1186': '收藏 - 笔记',
      '1187': '浮窗',
      '1189': '表情雨广告',
      '1191': '视频号活动',
      '1192': '企业微信联系人profile页',
      '1193': '视频号主页服务菜单打开小程序',
      '1194': 'URL Link 详情',
      '1195': '视频号主页商品tab',
      '1196': '个人状态打开小程序',
      '1197': '视频号主播从直播间返回小游戏',
      '1198': '视频号开播界面打开小游戏',
      '1200': '视频号广告打开小程序',
      '1201': '视频号广告详情页打开小程序',
      '1202': '企微客服号会话打开小程序卡片',
      '1203': '微信小程序压测工具的请求',
      '1206': '视频号小游戏直播间打开小游戏',
      '1207': '企微客服号会话打开小程序文字链',
      '1208': '聊天打开商品卡片',
      '1212': '青少年模式申请页打开小程序',
      '1215': '广告预约打开小程序',
      '1216': '视频号订单中心打开小程序',
      '1223': '安卓桌面Widget打开小程序',
      '1228': '视频号原生广告组件打开小程序',
      '1230': '订阅号H5广告进入小程序',
      '1231': '动态消息提醒入口打开小程序',
      '1242': '小程序发现页门店快送模块频道页进入小程序',
      '1245': '小程序发现页门店快送搜索结果页进入小程序',
      '1252': '搜一搜小程序搜索页「小功能」模块进入小程序'
    }
  return sceneList[scene] || '未知'; // 返回映射值或默认为“未知”
}
    // 初始化表格
    table.render({
        elem: '#userTable',
        url: '/admin/miniapp_users/', // 数据接口URL
        page: true, // 开启分页
        method: 'post', // 使用POST请求
        where: { // 这里传入的是额外的请求参数，LayUI会将这些参数合并到请求数据中
        action: 'fetch', // 指定操作类型
        },
        contentType: 'application/json', // 设置发送请求的内容类型为JSON
        cols: [[
            {field: 'openid', title: 'OpenID'},
            {field: 'nickname', title: 'UUid'},
            {field: 'wxid', title: '微信ID'},
            {field: 'wechat_number', title: '微信号'},
            {field: 'nickname', title: '昵称', hide: true},
            {field: 'gender', title: '性别' ,hide: true},
            {field: 'region', title: '地区' ,hide: true},
            {field: 'email', title: '邮箱' ,hide: true},
            {field: 'phone', title: '号码' ,hide: true},
            {field: 'scene', title: '用户来源',templet: function(d) { return mapScene(d.scene); }},
            {field: 'is_member', title: '是否会员', templet: function(d) { return d.is_member ? '是' : '否'; }},
            {field: 'member_start_time', title: '会员开始时间',hide: true},
            {field: 'member_end_time', title: '会员到期时间',hide: true},
            {field: 'is_active', title: '状态', templet: function(d) { return d.is_active ? '启用' : '禁用'; }},
            {field: 'usage_count', title: '使用次数'},
            {field: 'created_at', title: '创建时间', sort: true},
            {title: '操作', align: 'center', toolbar: '#operationBar'}
        ]]
    });

    // 监听工具条
    table.on('tool(userTableFilter)', function(obj){
        var data = obj.data; // 获得当前行数据
        if(obj.event === 'edit'){
            // 编辑操作
            console.log('编辑用户', data);
            // 打开编辑窗口的代码...
        } else if(obj.event === 'delete'){
            // 删除操作
            layer.confirm('真的删除行么', function(index){
                obj.del(); // 删除对应行（tr）的DOM结构，并更新缓存
                layer.close(index);
                // 向服务端发送删除指令的代码...
            });
        }
    });
});
</script>
</body>
</html>
