功能需求:
1、 “ 添加集卡活動 ”
2、“ 添加卡片 ”
3、用戶點擊抽卡
4、填入記錄表
需要的數據表
集卡活動表:ims_yzpx_sun_card
需要的字段:id、 title、 img_cover(封面圖)、img(輪播圖)、rule(規則)、prize_details(獎品詳情)、drawtimes(抽獎次數)、helptimes(求助次數)、prizenum(獎品總數)、joinnum(參與數量)、joinnum_xn(虛擬參與數量)、winnum(獲獎數量)、winnum_xn(虛擬獲獎數量)、start_time、end_time、createtime、check_color_one(卡片抽中前顏色)、 check_color_two(卡片抽中後顏色)、uniacid、status、prizename(獎品名稱)、prizetype(1=到店 2=物流 3=二者皆可)、
卡片表:ims_yzpx_sun_card_font
接口中用戶執行抽卡
//執行抽卡
public function doPagecardLog()
{
global $_W, $_GPC;
$uniacid = $_W['uniacid'];
$data['uniacid'] = $uniacid;
$id = $_GPC['id']; //集卡活動的id
//獲取對應活動的集卡卡片
$fontList = pdo_getall('yzpx_sun_card_font', array('cid' => $id,'uniacid' => $_W['uniacid']));
$arr=array();
//將卡片可概率重組數組
foreach ($fontList as $k => $v) {
// var_dump($v);exit();
$arr[$v['id']] = $v['chance'];
// $arr[$v['font']] = $v['chance'];
}
$fid = $this->get_rand($arr); //根據概率獲取獎項id
//根據fid查詢對應卡片文字獲得
$font = pdo_fetch("select id,font from ".tablename('yzpx_sun_card_font')." where `uniacid`='$uniacid' and cid='$id' and id='$fid'");
$data = array(
'uniacid' => $_W['uniacid'],
'uid' => $_GPC['uid'], //用戶id 4588
'cid' => $_GPC['id'], //集卡活動id 20
'fid' => $fid,
'font' => $font['font'],
'createtime'=>time(),
);
$res = pdo_insert('yzpx_sun_card_getlog', $data);
if ($res) {
return $this->result(0, 'success', $data);
} else {
return $this->result(1, 'error', ['sts' => 0]);
}
}
用戶抽卡後就需要存入一張記錄表裏