|
...
|
...
|
@@ -446,7 +446,187 @@ class Card extends Common |
|
|
|
WHERE s.owner = 1");
|
|
|
|
return $result = ['code'=>0,'msg'=>'获取成功!','data'=>$rs,'count'=>count($total),'rel'=>1];
|
|
|
|
}
|
|
|
|
$this->assign ( 'title','商家卡券');
|
|
|
|
$this->assign ( 'title','平台卡券');
|
|
|
|
return $this->fetch();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 商家卡券-数据统计-统计列表
|
|
|
|
*/
|
|
|
|
public function sellercarddatalist(){
|
|
|
|
if(Request::isAjax()){
|
|
|
|
$data = Request::except('file');
|
|
|
|
|
|
|
|
$where = '';
|
|
|
|
$channel = $data['channel'] ? $data['channel'] : 1;
|
|
|
|
|
|
|
|
$where .= ($channel && $channel==4) ? ' AND rel.type_id in (1,2,3)' : " AND rel.type_id in ($channel)";
|
|
|
|
$where .= $data['key'] ? ' AND s.sellername like "%'.$data['key'].'%"' : "";
|
|
|
|
|
|
|
|
//日期
|
|
|
|
$time = $data['time'] ? explode(' - ', $data['time']) : '';
|
|
|
|
$start = $time ? strtotime(date($time[0],time())) : 0;
|
|
|
|
$end = $time ? strtotime(date($time[1],time())) : 0;
|
|
|
|
|
|
|
|
$where .= $data['time'] ? ' AND i.contributor_time BETWEEN '.$start.' AND '.$end : '';
|
|
|
|
|
|
|
|
$offset = ($data["page"] - 1) * $data["limit"];
|
|
|
|
$limit = " LIMIT $offset,".$data['limit'];
|
|
|
|
|
|
|
|
//卡券信息
|
|
|
|
$rs = Db::query("SELECT
|
|
|
|
i.*,
|
|
|
|
s.sellername
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_info AS i
|
|
|
|
LEFT JOIN `xt-member-two-LINE`.xt_seller AS s ON i.sid = s.id
|
|
|
|
LEFT JOIN `xt-member-two-LINE`.xt_dc_dz_seller_type_rel as rel ON rel.sid = s.id
|
|
|
|
WHERE
|
|
|
|
i.`owner` = 2
|
|
|
|
AND i.STATUS IN (1,3)
|
|
|
|
".$where.$limit);
|
|
|
|
//格式化数据
|
|
|
|
foreach ($rs as $key => $value) {
|
|
|
|
$rs[$key]['contributor_time'] = date("Y年m月d日",$value['contributor_time']);
|
|
|
|
switch ($value['status']) {
|
|
|
|
case '1':
|
|
|
|
$rs[$key]['status'] = '已投放';
|
|
|
|
break;
|
|
|
|
case '2':
|
|
|
|
$rs[$key]['status'] = '未投放';
|
|
|
|
break;
|
|
|
|
case '3':
|
|
|
|
$rs[$key]['status'] = '停止投放';
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
# code...
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
//领取人数
|
|
|
|
$receive_people_number = Db::query("SELECT
|
|
|
|
count(
|
|
|
|
DISTINCT ( openid )) AS total
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_data_rel
|
|
|
|
WHERE
|
|
|
|
cid = ".$value['id']);
|
|
|
|
$rs[$key]['receive_people_number'] = $receive_people_number[0]['total'];
|
|
|
|
//领取次数
|
|
|
|
$receive_frequency = Db::query("SELECT
|
|
|
|
count(1) as total
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_data_rel
|
|
|
|
WHERE
|
|
|
|
cid = ".$value['id']);
|
|
|
|
$rs[$key]['receive_frequency'] = $receive_frequency[0]['total'];
|
|
|
|
//核销人数
|
|
|
|
$write_off_people_number = Db::query("SELECT
|
|
|
|
count(
|
|
|
|
DISTINCT ( openid )) AS total
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_data_rel
|
|
|
|
WHERE
|
|
|
|
status = 1 and cid = ".$value['id']);
|
|
|
|
$rs[$key]['write_off_people_number'] = $write_off_people_number[0]['total'];
|
|
|
|
//核销次数
|
|
|
|
$write_off_people_frequency = Db::query("SELECT
|
|
|
|
count(1) as total
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_data_rel
|
|
|
|
WHERE
|
|
|
|
status = 1 and cid = ".$value['id']);
|
|
|
|
$rs[$key]['write_off_people_frequency'] = $write_off_people_frequency[0]['total'];
|
|
|
|
//应收金额: 需要先查询出该卡券都在哪些账单中核销,并计算该卡券所牵扯账单的总的应收金额
|
|
|
|
$amount_receivable = Db::query("SELECT
|
|
|
|
SUM(should_price) as should_price,
|
|
|
|
SUM(actual_price) as actual_price
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_seller_flowing_log
|
|
|
|
WHERE
|
|
|
|
rid IN (
|
|
|
|
SELECT
|
|
|
|
rid
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_data_rel
|
|
|
|
WHERE
|
|
|
|
STATUS = 1
|
|
|
|
AND cid = ".$value['id'].")");
|
|
|
|
$rs[$key]['amount_receivable'] = $amount_receivable[0]['should_price'];
|
|
|
|
$rs[$key]['paid_in_amount'] = $amount_receivable[0]['actual_price'];
|
|
|
|
}
|
|
|
|
|
|
|
|
//获取总条数
|
|
|
|
$total = Db::query("SELECT
|
|
|
|
i.*,
|
|
|
|
s.sellername
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_info AS i
|
|
|
|
LEFT JOIN `xt-member-two-LINE`.xt_seller AS s ON i.sid = s.id
|
|
|
|
LEFT JOIN `xt-member-two-LINE`.xt_dc_dz_seller_type_rel as rel ON rel.sid = s.id
|
|
|
|
WHERE
|
|
|
|
i.`owner` = 2
|
|
|
|
AND i.STATUS IN (1,3)
|
|
|
|
".$where."");
|
|
|
|
return $result = ['code'=>0,'msg'=>'获取成功!','data'=>$rs,'count'=>count($total),'rel'=>1];
|
|
|
|
}
|
|
|
|
$this->assign ( 'title','商家卡券信息统计');
|
|
|
|
return $this->fetch();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 商家卡券-数据统计-统计列表
|
|
|
|
*/
|
|
|
|
public function sellercarddatalog(){
|
|
|
|
if(Request::isAjax()){
|
|
|
|
$data = Request::except('file');
|
|
|
|
|
|
|
|
$where = '';
|
|
|
|
$channel = $data['channel'] ? $data['channel'] : 1;
|
|
|
|
|
|
|
|
$where .= ($channel && $channel==4) ? ' re.type_id in (1,2,3)' : " re.type_id in ($channel)";
|
|
|
|
$where .= $data['key'] ? ' and s.sellername like "%'.$data['key'].'%"' : "";
|
|
|
|
|
|
|
|
$offset = ($data["page"] - 1) * $data["limit"];
|
|
|
|
$limit = " LIMIT $offset,".$data['limit'];
|
|
|
|
|
|
|
|
//卡券信息
|
|
|
|
$rs = Db::query("SELECT
|
|
|
|
s.*
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_info AS s
|
|
|
|
LEFT JOIN `xt-member-two-LINE`.xt_dc_dz_seller_type_rel AS re ON re.sid = s.sid
|
|
|
|
WHERE s.owner = 2 AND
|
|
|
|
".$where." order by s.sid".$limit);
|
|
|
|
//格式化数据
|
|
|
|
foreach ($rs as $key => $value) {
|
|
|
|
$rs[$key]['create_time'] = date("Y年m月d日",$value['create_time']);
|
|
|
|
switch ($value['status']) {
|
|
|
|
case '1':
|
|
|
|
$rs[$key]['status'] = '已投放';
|
|
|
|
break;
|
|
|
|
case '2':
|
|
|
|
$rs[$key]['status'] = '未投放';
|
|
|
|
break;
|
|
|
|
case '3':
|
|
|
|
$rs[$key]['status'] = '停止投放';
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
# code...
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//获取总条数
|
|
|
|
$total = Db::query("SELECT
|
|
|
|
s.id
|
|
|
|
FROM
|
|
|
|
`xt-member-two-LINE`.xt_dc_dz_card_info AS s
|
|
|
|
LEFT JOIN `xt-member-two-LINE`.xt_dc_dz_seller_type_rel AS re ON re.sid = s.sid
|
|
|
|
WHERE s.owner = 2 AND
|
|
|
|
".$where."");
|
|
|
|
return $result = ['code'=>0,'msg'=>'获取成功!','data'=>$rs,'count'=>count($total),'rel'=>1];
|
|
|
|
}
|
|
|
|
$this->assign ( 'title','商家卡券信息统计');
|
|
|
|
return $this->fetch();
|
|
|
|
}
|
|
|
|
} |
...
|
...
|
|