argument('start'); $end = $this->argument('end'); $return = $this->option('ret'); $start = $start ? $start : date('Y-m-d',time()); $end = $end ? $end : date('Y-m-d',time()); $where = [strtotime($start.' 00:00:00'),strtotime($end.' 23:59:59')]; // 统计优惠券订单数据-金额 $orderTotal = DB::select("SELECT uses.system_coupon_id as ID ,coupon.title '优惠券标题' ,SUM(om.money) as '使用优惠券消费总额(实付总金额)' ,SUM(om.total_money) as '订单总额(不包含配送费,含包装费)' ,SUM(om.dada_fee) as '配送费' ,SUM(om.yhq_money2)as '优惠总金额' ,COUNT(om.id) as '总订单数量' FROM ims_system_coupon_user_use uses INNER JOIN ims_cjdc_order_main om ON uses.order_main_id = om.id INNER JOIN ims_system_coupon_user coupon ON coupon.id=uses.system_coupon_id WHERE uses.`status` = 1 AND om.time_add BETWEEN ? AND ? GROUP BY uses.system_coupon_id ORDER BY uses.system_coupon_id DESC", $where ); // 查询领取数量和统计数量-总数 $receiveCoupon = DB::select("SELECT coupon.id as ID ,title as '优惠券标题' ,full_amount as '满足金额' ,discounts as '优惠金额' ,inventory AS '发放数量' ,SUM(IFNULL(receive.number,0)) as '领取数量' ,IFNULL((SELECT SUM(IFNULL(number,0)) FROM ims_system_coupon_user_use WHERE system_coupon_id = coupon.id AND status = 1 AND use_time BETWEEN ? AND ?),0) AS 使用数量 FROM ims_system_coupon_user coupon LEFT JOIN ims_system_coupon_user_receive receive ON coupon.id = receive.system_coupon_user_id WHERE receive.created_at BETWEEN ? AND ? GROUP BY coupon.id ORDER BY coupon.id DESC", array_merge($where,$where) ); // 查询优惠券订单用户数据 // $orderList = DB::select("SELECT // uu.id AS 序号 // ,IF(uu.status=1,'已使用','已退回') AS 使用状态 // ,user.id AS 用户ID // ,main.order_num AS 订单号 // ,main.money AS 订单金额 // ,conpon.title AS 优惠券种类 // ,user.`name` AS 用户昵称 // ,main.`name` AS 用户姓名 // ,main.tel AS 用户电话 // ,main.address AS 用户地址 // FROM ims_system_coupon_user_use uu // INNER JOIN ims_system_coupon_user conpon ON conpon.id=uu.system_coupon_id // INNER JOIN ims_cjdc_user user ON user.id=uu.user_id // INNER JOIN ims_cjdc_order_main main ON main.id=uu.order_main_id // WHERE main.time_add BETWEEN ? AND ? // ORDER BY uu.`status` ASC", // $where // ); $orderArray = []; foreach($orderTotal as $value){ $orderArray[] = (array)$value; } $receiveArray = []; foreach($receiveCoupon as $value){ $receiveArray[] = (array)$value; } $listArray = []; // foreach($orderList as $value){ // $listArray[] = (array)$value; // } if($return){ // return json_encode(compact($orderTotal,$receiveCoupon,$orderList)); }else{ $this->table(['ID','优惠券标题','使用优惠券消费总额(实付总金额)','订单总额(不包含配送费,含包装费)','配送费','优惠总金额','总订单数量'],$orderArray); $this->table(['ID','优惠券标题','满足金额','优惠金额','发放数量','已领取数量','使用数量'],$receiveArray); // $this->table(['序号','使用状态','用户ID','订单号','订单金额','优惠券种类','用户昵称','用户姓名','用户电话','用户地址'],$listArray); } } }