getAll(array('state'=>1)); $config = Dever::db('active/info')->config['config_act_status']; foreach($data['info'] as $k=>$v){ $data['info'][$k]['act_status_name'] = Dever::status($config,$v['act_status']); if ($v['sign_start']) { $ids = Dever::load('active/lib/cron')->start($v['cdate'],$v['act_start'],$v['act_end'],$v['sign_start'],$v['sign_end']); } else { $ids = Dever::load('active/lib/cron')->start($v['cdate'],$v['act_start'],$v['act_end']); } if (isset($ids) && $ids) { $where['where_id'] = $v['id']; $where['act_status'] = $ids['act_status']; Dever::db('active/info')->update($where); } if ($v['act_status'] == 2) { if ($v['sign_end']) { $day = floor(($v['sign_end'] - time())/86400); if ($day < 0){ $data['info'][$k]['day'] = ''; } else { $data['info'][$k]['day'] = '剩余'.$day.'天'; } } else { $day = floor(($v['act_start'] - time())/86400); if ($day >= 0) { $data['info'][$k]['day'] = '剩余'.$day.'天'; } else { $data['info'][$k]['day'] = ''; } } }else { $data['info'][$k]['day'] = ''; } } return $data; } # 活动报名获取信息 public function getSign() { $uid = $this->uid; $id = Dever::input('id'); $this->data['info'] = Dever::db('active/info')->find($id); $this->data['info']['banner'] = explode(',', $this->data['info']['banner']); $this->data['info']['field'] = Dever::db('active/info_field')->getList(array('active_id'=>$id,'state'=>1)); foreach($this->data['info']['field'] as $k => $v){ if($v['type'] == 2) { $this->data['info']['field'][$k]['value_name']= Dever::db('active/info_field_value')->getList(array('active_id'=>$id,'field_id'=>$v['id'])); }else{ $this->data['info']['field'][$k]['value_name'] = ''; } } $this->data['user'] = $this->user; $member = Dever::load('active/lib/user')->agent($this->data['user']); if ($member) { $this->data['user']['mid'] = $member['id']; } return $this->data; } # 活动报名页 public function upSign() { $data['name'] = Dever::input('name'); $data['mobile'] = Dever::input('mobile'); $data['idcard'] = Dever::input('idcard'); $uid = $this->uid; if ($this->uid <= 0) { $user = Dever::db('active/user')->find(array('mobile'=>$data['mobile'])); if ($user) { $uid = $user['id']; } else { # 注册 $uid = Dever::db('active/user')->insert($data); } } if ($uid) { $where['where_id'] = $uid; $where['name'] = $data['name']; if ($data['idcard']) { $where['idcard'] = $data['idcard']; } Dever::db('active/user')->update($where); } $result = array(); $result = Dever::load('passport/reg')->getSign($uid); $id = Dever::input('id'); if (!$id) { Dever::alert('活动id不能为空'); } $num = Dever::input('num'); if (!$num) { Dever::alert('购买数量不能为空'); } $remark = Dever::input('remark'); $path = Dever::input('path'); $result += Dever::load('active/lib/active')->action($uid, $id, $num, $path, $remark); return $result; } public function recive() { $w['name'] = Dever::input('name'); if (!$w['name']){ Dever::alert('姓名不存在'); } $w['mobile'] = Dever::input('mobile'); if (!$w['mobile']){ Dever::alert('手机号不存在'); } // Dever::load('active/lib/manage')->checkMcode($w['mobile']); $user = Dever::db('active/user')->find(array('mobile'=>$w['mobile'])); if ($user) { $uid = $user['id']; } else { # 注册 $uid = Dever::db('active/user')->insert($w); } $active_id = Dever::input('active_id'); if (!$active_id){ Dever::alert('活动id不存在'); } $order_id = Dever::input('id'); if (!$order_id){ Dever::alert('订单id不存在'); } $data['user'] = Dever::load('passport/reg')->getSign($user['id']); $user = Dever::db('active/user')->find($uid); $info = Dever::db('active/info')->find($active_id); if ($info['status'] == 5 || time() >= $info['act_end']) { Dever::alert('活动已结束'); } if ($info['status'] == 2) { $member = Dever::load('active/lib/user')->agent($user); if (!$member) { Dever::alert('仅限代理商领取'); } } $code = Dever::db('active/code')->state(array('order_id'=>$order_id)); $data['info'] = Dever::db('active/order')->find($order_id); if ($data['info']['status'] < 2) { Dever::alert('订单还没有支付'); } if ($data['info']['num'] <= count($code)) { Dever::alert('已领完'); } else { $where['active_id'] = $data['info']['active_id']; $where['join_uid'] = $uid; $where['act_status'] = $info['act_status']; $code = Dever::db('active/code')->find($where); $where['buy_uid'] = $data['info']['uid']; $where['order_id'] = $order_id; if ($code) { Dever::alert('您已领取过了,不可重复领取'); } $where['write_code'] = substr(base_convert(md5(uniqid(md5(microtime(true)),true)), 16, 10), 0, 6); $code = Dever::db('active/code')->find(array('write_code'=>$where['write_code'])); if ($code) { $where['write_code'] = substr(base_convert(md5(uniqid(md5(microtime(true)),true)), 16, 10), 0, 6); } $ids = Dever::db('active/code')->insert($where); if ($ids) { $data['code'] = Dever::db('active/code')->find($ids); return $data; } } } }