/*** [getPromotionList 获取促销活动]* @return [type] [description]*/public function getPromotionList(){$time = time();$w['p.status']=array('eq',1);$w['p_g.pro_status']=array('eq',1);$f='p.id as p_id,p.name as p_name,p.start_d_date,p_g.pro_title,p_g.pro_type,ds_id,ds_ds_ds_image_index as goods_ds_storage,g.nav_id,p_g.sold_num,ds_reg_price,p.is_index,p_g.pro_img as p_g_goods_image';$join='RIGHT JOIN promotion_goods as p_g ON p_g.pro_id=p.id';$join_goods = "LEFT JOIN goods as g ON ds_id = g.id";$promotion_id_arr = $this->alias('p')->where($w)->join($join)->join($join_goods)->group('p.id')->field('p.id')->order('start_date')->limit(4)->select();$p_id = '';foreach ($promotion_id_arr as $key => $value) {// 单个活动if($key == 0){$p_id=$value['id'];} else {// 多个活动$p_id .= ','.$value['id'];}}if(empty($p_id)){return array();}// 查询活动对应的商品$w['p.id']=array('in',$p_id);$promotion_list = $this->alias('p')->where($w)->join($join)->join($join_goods)->field($f)->order('start_date,sort desc')->select();if(empty($promotion_list)){return array();}// 重组数组$promotion_arr = array();foreach ($promotion_list as $key => $value) {$promotion_arr[$value['p_id']]['p_name'] = $value['p_name'];$promotion_arr[$value['p_id']]['p_id'] = $value['p_id'];$promotion_arr[$value['p_id']]['start_date'] =$value['start_date'];$promotion_arr[$value['p_id']]['end_date'] = $value['end_date'];$promotion_arr[$value['p_id']]['is_index'] = $value['is_index'];$value['goods_image'] = !empty($value['p_g_goods_image'])?$value['p_g_goods_image']:$value['goods_image'];$promotion_arr[$value['p_id']]['arr'][] = $value;}$is_show = 0;foreach ($promotion_arr as $key => $value) {if((int)$value['start_date']>$time){//开始时间大于当前时间 没开始if($value['is_index'] == 0){// unset未开始的活动unset($promotion_arr[$key]);continue;}$promotion_arr[$key]['data_time'] = date('Y/m/d H:i:s',$value['start_date']);$promotion_arr[$key]['time_status'] = 1;$promotion_arr[$key]['is_show'] = 0;} else {if((int)$value['end_date']>$time){//结束时间小于当前时间 还没结束$promotion_arr[$key]['is_show'] = 0;if($is_show==0){$is_show = 1;$promotion_arr[$key]['is_show'] = 1;}$promotion_arr[$key]['data_time'] = date('Y/m/d H:i:s',$value['end_date']);$promotion_arr[$key]['time_status'] = 2;} else {if($value['is_index'] == 0){unset($promotion_arr[$key]);continue;}$promotion_arr[$key]['time_status'] = 3;$promotion_arr[$key]['is_show'] = 0;}}}$promotion_arr = array_values($promotion_arr);if(empty($promotion_arr)){return array();}if($is_show==0){$promotion_arr[0]['is_show'] = 1;}return $promotion_arr;}
本文发布于:2024-02-02 08:23:10,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170683339142549.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |