[ [ //插件名称 'name' => 'groupbuy', //店铺端展示分类 shop:营销活动 member:互动营销 'show_type' => 'shop', //展示主题 'title' => '团购活动', //展示介绍 'description' => '消费者组团购买更优惠', //展示图标 'icon' => 'addon/groupbuy/icon.png', //跳转链接 'url' => 'groupbuy://shop/groupbuy/lists', 'summary' => $this->summary($params) ] ] ]; return $data; } /** * 营销活动概况 * @param $params * @return array */ private function summary($params) { if (empty($params)) { return []; } //获取活动数量 if (isset($params[ 'count' ])) { $count = model("promotion_groupbuy")->getCount([ [ 'site_id', '=', $params[ 'site_id' ] ] ]); return [ 'count' => $count ]; } //获取活动概况,需要获取开始时间与结束时间 if (isset($params[ 'summary' ])) { $list = model("promotion_groupbuy")->getList([ [ '', 'exp', Db::raw('not ( (`start_time` >= ' . $params[ 'end_time' ] . ') or (`end_time` <= ' . $params[ 'start_time' ] . '))') ], [ 'pg.site_id', '=', $params[ 'site_id' ] ], [ 'pg.status', '<>', 3 ], [ 'g.goods_state', '=', 1 ], [ 'g.is_delete', '=', 0 ] ], 'g.goods_name as promotion_name,groupbuy_id as promotion_id,start_time,end_time', '', 'pg', [ [ 'goods g', 'g.goods_id = pg.goods_id', 'inner' ] ], 'pg.create_time'); return !empty($list) ? [ 'time_limit' => [ 'count' => count($list), 'detail' => $list, 'color' => '#6D66FF' ] ] : []; } } }