public function adv($r = 20)
 {
     $aPosId = I('pos_id', 0, 'intval');
     $advPosModel = D('Common/AdvPos');
     $pos = $advPosModel->find($aPosId);
     if ($aPosId != 0) {
         $map['pos_id'] = $aPosId;
     }
     $map['status'] = 1;
     $data = D('Adv')->where($map)->order('pos_id desc,sort desc')->findPage($r);
     foreach ($data['data'] as &$v) {
         $p = $advPosModel->find($v['pos_id']);
         $v['pos'] = '<a class="text-danger" href="' . U('adv?pos_id=' . $p['pos_id']) . '">' . $p['title'] . '</a>';
     }
     //todo 广告管理列表
     $builder = new AdminListBuilder();
     if ($aPosId == 0) {
         $builder->title('广告管理');
     } else {
         $builder->title($pos['title'] . '【' . $pos['name'] . '】' . ' 设置——' . $advPosModel->switchType($pos['type']));
     }
     $builder->keyId()->keyLink('title', '广告说明', 'editAdv?id=###');
     $builder->keyHtml('pos', '所属广告位');
     $builder->keyText('click_count', '点击量');
     $builder->buttonNew(U('editAdv?pos_id=' . $aPosId), '新增广告');
     if ($aPosId != 0) {
         $builder->button('广告排期查看', array('href' => U('schedule?pos_id=' . $aPosId)));
         $builder->button('设置广告位', array('href' => U('editPos?id=' . $aPosId)));
     }
     $builder->keyText('url', '链接地址')->keyTime('start_time', '开始生效时间', '不设置则立即生效')->keyTime('end_time', '失效时间', '不设置则一直有效')->keyText('sort', '排序')->keyCreateTime()->keyStatus();
     $builder->data($data['data']);
     $builder->pagination($data['count'], $r);
     $builder->display();
 }