edit-sylive-item2

This commit is contained in:
lccsw
2022-11-09 20:12:15 +08:00
parent f4e464180d
commit f7aef20e45
6 changed files with 49 additions and 10 deletions
+7
View File
@@ -471,4 +471,11 @@ class Syt extends CI_Controller
}
echo '执行结束';
}
//更新黑名单
public function up_black(){
$ckey = 'SYLIVE_BLACK_MOBLIE_LIST';
$redis = &load_cache('redis');
$res = $redis->delete($ckey);
echo "更新成功:{$res}";
}
}
+35 -3
View File
@@ -16,10 +16,10 @@ class Item extends Wx{
}
public function detail(){
$itemId = $this->input->get('iid');
$skey = $this->input->get('skey');
$param = $this->myencryption->base64url_decode($skey);
$a_id = intval($param['a_id']);//活动id
$itemId = intval($param['itemId']);//商品id
$row = $this->market_sylive_items_model->get(['itemId'=>$itemId,'activityId'=>$a_id]);
$act = $this->market_sylive_activity_model->get(['activityId'=>$a_id]);
if(!$row){
@@ -36,7 +36,7 @@ class Item extends Wx{
}
$e_time = time() < strtotime($row['timeEnd']) ? strtotime($row['timeEnd']) - time() : 0;
$s_time = time() < strtotime($row['timeStart']) ? strtotime($row['timeStart']) - time() : 0;
$is_pay = $this->market_sylive_order_model->count(['itemId'=>$itemId,'status'=>1,'userId'=>$this->uid,'type'=>0]);
$is_pay = $this->market_sylive_order_model->count(['itemId'=>$itemId,'activityId'=>$a_id,'status'=>1,'userId'=>$this->uid,'type'=>0]);
if($is_pay){
$url = http_host_com('home').'/h5/market/sylive/ucenter?skey='.$skey;
redirect($url);exit;
@@ -128,7 +128,7 @@ class Item extends Wx{
$this->show_json('',400,'请输入正确验证码');
}
//判断是否已支付
$o_row = $this->market_sylive_order_model->get(['itemId'=>$itemId,'status'=>1,'userId'=>$this->uid,'type'=>0]);
$o_row = $this->market_sylive_order_model->get(['itemId'=>$itemId,'activityId'=>$a_id,'status'=>1,'userId'=>$this->uid,'type'=>0]);
if($o_row){
$this->show_json('',400,'已支付,请勿重复支付');
}
@@ -164,6 +164,7 @@ class Item extends Wx{
'userId' => $this->uid,
'itemId' => $itemId,
'itemTitle' => $row['title'],
'itemPrice' => $pay_price,
'totalPrice' => $pay_price,
'expireTime' => time()+5*60,//订单过期时间
'createTime' => date('Y-m-d H:i:s')
@@ -180,6 +181,7 @@ class Item extends Wx{
$this->market_sylive_order_model->db->trans_rollback();
throw new Exception('创建订单失败');
}
$unpay['id'] = $oid;
$this->market_sylive_items_model->update(['stock = stock-1' =>null],['itemId'=>$itemId,'stock>'=>0]);
$res = $this->market_sylive_items_model->db->affected_rows();
if(!$res){
@@ -222,6 +224,10 @@ class Item extends Wx{
if(!mobile_valid($mobile)){
$this->show_json('',400,'请输入正确的手机号码');
}
//验证是否黑名单用户
if(!$this->ck_mobile($mobile)){
$this->show_json('',400,'本次活动仅限受邀客户参加');
}
$redis = &load_cache('redis');
$key = "sylive_item_code_{$this->uid}_{$mobile}";
if(!$redis->get($key)){
@@ -261,4 +267,30 @@ class Item extends Wx{
public function agreement(){
$this->show_view('h5/market/sylive/item/agreement');
}
//验证手机号可以购买
private function ck_mobile($mobile){
$file_path = FCPATH.'sylive_blacklist.txt';
$ckey = 'SYLIVE_BLACK_MOBLIE_LIST';
$redis = &load_cache('redis');
$mobile_list = $redis->get($ckey);
if(!$mobile_list){
$mobile_list = [];
if (file_exists($file_path)) {
$content_arr = file($file_path);
foreach ($content_arr as $item) {
$mobile_list[] = trim($item);
}
}
$redis->save($ckey,$mobile_list,10*60);
}
if(in_array($mobile,$mobile_list)){
return false;
}
//判断是否购买
if($this->market_sylive_order_model->count(['activityId'=>3,'mobile'=>$mobile])){
return false;
}
return true;
}
}
+3 -3
View File
@@ -65,10 +65,10 @@
<input class="wp100 inner30 font-30 bg-f6 border-none ulib-r10" type="text" v-model="name" placeholder="请输入您的姓名" />
</div>
<div class="mt30 relative bg-f6 ulib-r10">
<input class="wp100 inner30 font-30 bg-f6 border-none ulib-r10" type="tel" v-model="telPhone" placeholder="请输入手机号" />
<input class="wp100 inner30 font-30 bg-f6 border-none ulib-r10" type="tel" oninput="if(value.length>11)value=value.slice(0,11)" v-model="telPhone" placeholder="请输入手机号" />
</div>
<div class="mt30 relative bg-f6 ulib-r10 pr200">
<div><input class="wp100 inner30 font-30 bg-f6 border-none ulib-r10" type="number" v-model="vCode" placeholder="请输入验证码" /></div>
<div><input class="wp100 inner30 font-30 bg-f6 border-none ulib-r10" type="number" oninput="if(value.length>4)value=value.slice(0,4)" v-model="vCode" placeholder="请输入验证码" /></div>
<a :class="[codeState ?'color-333':'color-999','absolute right-0 mr20 box-middle font-30']" @click="getcode()">{{codeTx}}</a>
</div>
<div class="mt30 fn-flex" v-if="info.need_shop">
@@ -89,7 +89,7 @@
<label class="text-middle"><input class="text-middle" type="checkbox" v-model="isXYChecked" />
<span class="text-middle ml5">我已阅读并同意</span>
</label>
<a class="text-middle" href="/h5/market/sylive/item/agreement">《关于用户门票须知》</a>
<a class="text-middle color-ff0000" href="/h5/market/sylive/item/agreement">《关于用户门票须知》</a>
</div>
</div>
<div class="mt30">
+1 -1
View File
@@ -6,7 +6,7 @@
<a class="block mt30 inner30 bg-fff ulib-r20" :href="item.url" v-for="(item,index) in list">
<div class="relative overflowhidden ulib-r10">
<div class="orderTip2 text-center font-24 color-fff bg-ff5a5a" v-if="item.title">{{item.title}}</div>
<img class="imgsize-630X180 ulib-r10" :src="item.img" alt="#">
<img class="imgsize-630X340 ulib-r10" :src="item.img" alt="#">
</div>
<div class="mt15 text-center font-30 color-333">{{item.goods}}</div>
<div class="mt15 text-center font-20 color-bbb">*抽奖礼品需提车后才能享受</div>
+2 -2
View File
@@ -48,9 +48,9 @@ class Goods extends BaseController
$list = [];
if ($count) {
$this->load->library('MyEncryption');
$skey = $this->myencryption->base64url_encode("a_id=" . $activityId);
$res = $this->mdSyliveItems->select($where, $sort_order, $page, $limit);
foreach ($res as $v) {
$skey = $this->myencryption->base64url_encode("a_id={$activityId}&itemId={$v['itemId']}");
$banner = [];
$dateRange = $useRange = '';
$imgs = $v['imgs'] ? json_decode($v['imgs'], true) : [];
@@ -64,7 +64,7 @@ class Goods extends BaseController
$v['timeEnd'] != '0000-00-00 00:00:00' && $dateRange[] = $v['timeEnd'];
$v['useStart'] != '0000-00-00 00:00:00' && $useRange[] = $v['useStart'];
$v['useEnd'] != '0000-00-00 00:00:00' && $useRange[] = $v['useEnd'];
$url = http_host_com('home') . "/h5/market/sylive/item/detail?skey={$skey}&iid=" . $v['itemId'];//活动连接
$url = http_host_com('home') . "/h5/market/sylive/item/detail?skey={$skey}";//活动连接
$list[] = ['itemId' => $v['itemId'], 'activityId' => $v['activityId'], 'title' => $v['title'], 'banner' => $banner
, 'dateRange' => $dateRange, 'useRange' => $useRange, 'descrip' => $v['descrip'], 'price' => $v['price'], 'stock' => $v['stock']
, 'timeStart' => $timeStart, 'sort' => $v['sort'], 'status' => intval($v['status']), 'createTime' => $v['createTime']
File diff suppressed because one or more lines are too long