You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
385 lines
19 KiB
385 lines
19 KiB
<?php
|
|
defined('IN_IA') or exit('Access Denied');
|
|
|
|
|
|
/**
|
|
* Comment: 账单明细
|
|
* Author: zzw
|
|
* Date: 2021/1/7 17:43
|
|
* Class newCash_WeliamController
|
|
*/
|
|
class FinaceBill_WeliamController {
|
|
//账单明细
|
|
public function cashrecord() {
|
|
global $_W, $_GPC;
|
|
$pindex = max(1, intval($_GPC['page']));
|
|
$psize = 10;
|
|
$where = is_agent() ? array('uniacid' => $_W['uniacid'], 'aid' => $_W['aid']) : array('uniacid' => $_W['uniacid']);
|
|
if(is_store()){
|
|
$where['merchantid'] = $_W['storeid'];
|
|
}
|
|
if (!empty($_GPC['keyword'])) {
|
|
if (!empty($_GPC['keywordtype'])) {
|
|
switch($_GPC['keywordtype']) {
|
|
case 1 :
|
|
$where['@orderno@'] = $_GPC['keyword'];
|
|
break;
|
|
case 2 :
|
|
$where['orderprice>'] = $_GPC['keyword'];
|
|
break;
|
|
case 3 :
|
|
$where['orderprice<'] = $_GPC['keyword'];
|
|
break;
|
|
case 4 :
|
|
$where['agentmoney>'] = $_GPC['keyword'];
|
|
break;
|
|
case 5 :
|
|
$where['agentmoney<'] = $_GPC['keyword'];
|
|
break;
|
|
default :
|
|
break;
|
|
}
|
|
if ($_GPC['keywordtype'] == 6) {
|
|
$keyword = $_GPC['keyword'];
|
|
$params[':storename'] = "%{$keyword}%";
|
|
$stores = pdo_fetchall("SELECT * FROM " . tablename('wlmerchant_merchantdata') . "WHERE uniacid = {$_W['uniacid']} AND storename LIKE :storename", $params);
|
|
if ($stores) {
|
|
$storesids = "(";
|
|
foreach ($stores as $key => $v) {
|
|
if ($key == 0) {
|
|
$storesids .= $v['id'];
|
|
} else {
|
|
$storesids .= "," . $v['id'];
|
|
}
|
|
}
|
|
$storesids .= ")";
|
|
$where['merchantid#'] = $storesids;
|
|
} else {
|
|
$where['merchantid#'] = "(0)";
|
|
}
|
|
}
|
|
if ($_GPC['keywordtype'] == 7) {
|
|
$keyword = $_GPC['keyword'];
|
|
if($keyword == '总后台'){
|
|
$where['aid'] = 0;
|
|
}else{
|
|
$params[':agentname'] = "%{$keyword}%";
|
|
$agents = pdo_fetchall("SELECT * FROM " . tablename('wlmerchant_agentusers') . "WHERE uniacid = {$_W['uniacid']} AND agentname LIKE :agentname", $params);
|
|
if ($agents) {
|
|
$agentids = "(";
|
|
foreach ($agents as $key => $v) {
|
|
if ($key == 0) {
|
|
$agentids .= $v['id'];
|
|
} else {
|
|
$agentids .= "," . $v['id'];
|
|
}
|
|
}
|
|
$agentids .= ")";
|
|
$where['aid#'] = $agentids;
|
|
} else {
|
|
$where['aid'] = "-1";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$cashtype = trim($_GPC['cashtype']);
|
|
if (!empty($cashtype)) {
|
|
$where['type'] = $cashtype;
|
|
}
|
|
$where['type>'] = 1;
|
|
if ($_GPC['time_limit']) {
|
|
$time_limit = $_GPC['time_limit'];
|
|
$starttime = strtotime($_GPC['time_limit']['start']);
|
|
$endtime = strtotime($_GPC['time_limit']['end']);
|
|
$where['createtime>'] = $starttime;
|
|
$where['createtime<'] = $endtime;
|
|
}
|
|
|
|
if (empty($starttime) || empty($endtime)) {
|
|
$starttime = strtotime('-1 month');
|
|
$endtime = time()+86400;
|
|
}
|
|
|
|
if ($_GPC['export'] != '') {
|
|
$this -> export($where);
|
|
}
|
|
$records = Util::getNumData('*', 'wlmerchant_autosettlement_record', $where, 'ID DESC', $pindex, $psize, 1);
|
|
$pager = $records[1];
|
|
$records = $records[0];
|
|
foreach ($records as $key => &$va) {
|
|
$va['storename'] = pdo_getcolumn(PDO_NAME . 'merchantdata', array('id' => $va['merchantid']), 'storename');
|
|
if($va['aid'] > 0){
|
|
$va['agentuser'] = pdo_getcolumn(PDO_NAME . 'agentusers', array('id' => $va['aid']), 'agentname');
|
|
}else{
|
|
$va['agentuser'] = '总后台';
|
|
}
|
|
if (empty($va['orderno'])) {
|
|
$va['orderno'] = $va['orderid'];
|
|
}
|
|
if ($va['type'] == 1) {
|
|
$va['typename'] = '抢购';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME . 'rush_activity', array('id' => $va['goodsid']), 'name');
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 1, 'orderid' => $va['orderid']));
|
|
}else if($va['type'] == 10) {
|
|
$va['typename'] = '团购';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME . 'groupon_activity', array('id' => $va['goodsid']), 'name');
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 10, 'orderid' => $va['orderid']));
|
|
} else if ($va['type'] == 2) {
|
|
$va['typename'] = '拼团';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME . 'fightgroup_goods', array('id' => $va['goodsid']), 'name');
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 2, 'orderid' => $va['orderid']));
|
|
} else if ($va['type'] == 3) {
|
|
$va['typename'] = '卡券';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME . 'couponlist', array('id' => $va['goodsid']), 'title');
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 3, 'orderid' => $va['orderid']));
|
|
} else if ($va['type'] == 4) {
|
|
$va['typename'] = '一卡通';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME . 'halfcard_type', array('id' => $va['goodsid']), 'name');
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 4, 'orderid' => $va['orderid']));
|
|
} else if ($va['type'] == 5) {
|
|
$va['typename'] = '掌上信息';
|
|
$va['title'] = '付费发帖';
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 5, 'orderid' => $va['orderid']));
|
|
} else if ($va['type'] == 6) {
|
|
$va['typename'] = '付费入驻';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME . 'chargelist', array('id' => $va['goodsid']), 'name');
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 6, 'orderid' => $va['orderid']));
|
|
} else if ($va['type'] == 7) {
|
|
if($va['merchantid']){
|
|
if ($va['merchantmoney'] < 0) {
|
|
$va['typename'] = '提现申请';
|
|
$va['title'] = '商户申请提现';
|
|
} else {
|
|
$va['typename'] = '提现申请驳回';
|
|
$va['title'] = '商户申请被驳回';
|
|
}
|
|
}else{
|
|
if ($va['agentmoney'] < 0) {
|
|
$va['typename'] = '提现申请';
|
|
$va['title'] = '代理申请提现';
|
|
} else {
|
|
$va['typename'] = '提现申请驳回';
|
|
$va['title'] = '代理申请被驳回';
|
|
}
|
|
}
|
|
if(is_agent()){
|
|
$va['orderurl'] = web_url('finace/finaceWithdrawal/cashApplyAgentRecord',array('orderid' => $va['orderid']));
|
|
}else{
|
|
$va['orderurl'] = web_url('finace/finaceWithdrawalApply/cashApply',array('orderid' => $va['orderid']));
|
|
}
|
|
}else if ($va['type'] == 8) {
|
|
if(Customized::init('distributionText') > 0){
|
|
$va['typename'] = '共享股东';
|
|
$va['title'] = '付费成为共享股东';
|
|
}else{
|
|
$va['typename'] = '分销合伙人';
|
|
$va['title'] = '付费成为分销商';
|
|
}
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 8, 'orderid' => $va['orderid']));
|
|
}else if ($va['type'] == 9) {
|
|
$va['typename'] = '商户活动';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME.'activitylist',array('id' => $va['goodsid']),'title');
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 9, 'orderid' => $va['orderid']));
|
|
}else if ($va['type'] == 11) {
|
|
$va['typename'] = '在线买单';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME.'halfcardlist',array('id' => $va['goodsid']),'title');
|
|
$va['title'] = $va['title']?$va['title']:'买家在线买单';
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 11, 'orderid' => $va['orderid']));
|
|
}else if ($va['type'] == 12) {
|
|
$va['typename'] = '砍价商品';
|
|
$va['title'] = pdo_getcolumn(PDO_NAME.'bargain_activity',array('id' => $va['goodsid']),'name');
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 12, 'orderid' => $va['orderid']));
|
|
}else if ($va['type'] == 13) {
|
|
$va['typename'] = '同城名片';
|
|
$fightstatus = pdo_getcolumn(PDO_NAME.'order',array('id' => $va['orderid']),'fightstatus');
|
|
if($fightstatus == 1){
|
|
$va['title'] = pdo_getcolumn(PDO_NAME.'citycard_meals',array('id' => $va['goodsid']),'name');
|
|
}else{
|
|
$va['title'] = pdo_getcolumn(PDO_NAME.'citycard_tops',array('id' => $va['goodsid']),'name');
|
|
}
|
|
$va['orderurl'] = web_url('citycard/citycard/order_lists', array('keywordtype' => 3, 'keyword' => $va['orderno']));
|
|
}else if ($va['type'] == 14) {
|
|
$va['typename'] = '同城配送';
|
|
$smallorder = pdo_getall('wlmerchant_delivery_order',array('tid'=>$va['orderno']),array('gid','num','specid'));
|
|
$va['title'] = '';
|
|
foreach ($smallorder as $ke => &$orr){
|
|
$goods = pdo_get('wlmerchant_delivery_activity',array('id' => $orr['gid']),array('name'));
|
|
if($orr['specid']>0){
|
|
$specname = pdo_getcolumn(PDO_NAME.'delivery_spec',array('id'=>$orr['specid']),'name');
|
|
$goods['name'] .= '/'.$specname;
|
|
}
|
|
$va['title'] .= '['.$goods['name'].'X'.$orr['num'].']';
|
|
}
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 14, 'orderid' => $va['orderid']));
|
|
}else if($va['type'] == 15){
|
|
$va['typename'] = '黄页114';
|
|
$order = pdo_get('wlmerchant_order',array('id' => $va['orderid']),array('fightstatus'));
|
|
$yellow = pdo_get('wlmerchant_yellowpage_lists' , ['id' => $va['goodsid']],['name']);
|
|
switch ($order['fightstatus']) {
|
|
case '1':
|
|
$va['title'] = '页面['.$yellow['name'].']认领';
|
|
break;
|
|
case '2':
|
|
$va['title'] = '页面['.$yellow['name'].']查阅';
|
|
break;
|
|
case '3':
|
|
$va['title'] = '页面['.$yellow['name'].']入驻';
|
|
break;
|
|
case '4':
|
|
$va['title'] = '页面['.$yellow['name'].']续费';
|
|
break;
|
|
}
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 15, 'orderid' => $va['orderid']));
|
|
}else if($va['type'] == 16){
|
|
$va['typename'] = '求职招聘';
|
|
$order = pdo_get('wlmerchant_order',array('id' => $va['orderid']),array('fightstatus'));
|
|
switch ($order['fightstatus']) {
|
|
case '1':
|
|
$va['title'] = '招聘信息发布';
|
|
break;
|
|
case '2':
|
|
$va['title'] = '招聘信息置顶';
|
|
break;
|
|
}
|
|
$va['orderurl'] = web_url('order/wlOrder/orderdetail', array('type' => 16, 'orderid' => $va['orderid']));
|
|
}
|
|
|
|
}
|
|
include wl_template('finace/cashrecord');
|
|
}
|
|
//导出账单明细
|
|
public function export($where) {
|
|
|
|
if (empty($where)){
|
|
return FALSE;
|
|
}
|
|
set_time_limit(0);
|
|
$records = Util::getNumData('*', 'wlmerchant_autosettlement_record', $where, 'ID DESC', 0, 0, 1);
|
|
$records = $records[0];
|
|
foreach ($records as $key => &$rec) {
|
|
$rec['storename'] = pdo_getcolumn(PDO_NAME . 'merchantdata', array('id' => $rec['merchantid']), 'storename');
|
|
if($rec['aid'] > 0){
|
|
$rec['agentname'] = pdo_getcolumn(PDO_NAME . 'agentusers', array('id' => $rec['aid']), 'agentname');
|
|
}else{
|
|
$rec['agentname'] = '总后台';
|
|
}
|
|
if (empty($rec['orderno'])) {
|
|
$rec['orderno'] = $rec['orderid'];
|
|
}
|
|
if ($rec['type'] == 1) {
|
|
$rec['typename'] = '抢购';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME . 'rush_activity', array('id' => $rec['goodsid']), 'name');
|
|
} else if ($rec['type'] == 2) {
|
|
$rec['typename'] = '拼团';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME . 'fightgroup_goods', array('id' => $rec['goodsid']), 'name');
|
|
} else if ($rec['type'] == 3) {
|
|
$rec['typename'] = '卡券';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME . 'couponlist', array('id' => $rec['goodsid']), 'title');
|
|
} else if ($rec['type'] == 4) {
|
|
$rec['typename'] = '一卡通';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME . 'halfcard_type', array('id' => $rec['goodsid']), 'name');
|
|
} else if ($rec['type'] == 5) {
|
|
$rec['typename'] = '掌上信息';
|
|
$rec['title'] = '付费发帖';
|
|
} else if ($rec['type'] == 6) {
|
|
$rec['typename'] = '付费入驻';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME . 'chargelist', array('id' => $rec['goodsid']), 'name');
|
|
} else if ($rec['type'] == 7) {
|
|
if ($rec['agentmoney'] < 0) {
|
|
$rec['typename'] = '提现申请';
|
|
$rec['title'] = '代理申请提现';
|
|
} else {
|
|
$rec['typename'] = '提现申请驳回';
|
|
$rec['title'] = '代理申请被驳回';
|
|
}
|
|
}else if ($rec['type'] == 8) {
|
|
if(Customized::init('distributionText') > 0){
|
|
$rec['typename'] = '共享股东';
|
|
$rec['title'] = '付费成为共享股东';
|
|
}else{
|
|
$rec['typename'] = '分销合伙人';
|
|
$rec['title'] = '付费成为分销商';
|
|
}
|
|
}else if ($rec['type'] == 9) {
|
|
$rec['typename'] = '商户活动';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME.'activitylist',array('id' => $rec['goodsid']),'title');
|
|
}else if($rec['type'] == 10) {
|
|
$rec['typename'] = '团购';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME . 'groupon_activity', array('id' => $rec['goodsid']), 'name');
|
|
} else if ($rec['type'] == 11) {
|
|
$rec['typename'] = '在线买单';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME.'halfcardlist',array('id' => $rec['goodsid']),'title');
|
|
$rec['title'] = $rec['title']?$rec['title']:'买家在线买单';
|
|
}else if ($rec['type'] == 12) {
|
|
$rec['typename'] = '砍价商品';
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME.'bargain_activity',array('id' => $rec['goodsid']),'name');
|
|
}else if ($rec['type'] == 13) {
|
|
$rec['typename'] = '同城名片';
|
|
$fightstatus = pdo_getcolumn(PDO_NAME.'order',array('id' => $rec['orderid']),'fightstatus');
|
|
if($fightstatus == 1){
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME.'citycard_meals',array('id' => $rec['goodsid']),'name');
|
|
}else{
|
|
$rec['title'] = pdo_getcolumn(PDO_NAME.'citycard_tops',array('id' => $rec['goodsid']),'name');
|
|
}
|
|
}else if ($rec['type'] == 14) {
|
|
$rec['typename'] = '同城配送';
|
|
$smallorder = pdo_getall('wlmerchant_delivery_order',array('tid'=>$rec['orderno']),array('gid','specid','num'));
|
|
$rec['title'] = '';
|
|
foreach ($smallorder as $ke => &$orr){
|
|
$goods = pdo_get('wlmerchant_delivery_activity',array('id' => $orr['gid']),array('name'));
|
|
if($orr['specid']>0){
|
|
$specname = pdo_getcolumn(PDO_NAME.'delivery_spec',array('id'=>$orr['specid']),'name');
|
|
$goods['name'] .= '/'.$specname;
|
|
}
|
|
$rec['title'] .= '['.$goods['name'].'X'.$orr['num'].']';
|
|
}
|
|
}
|
|
$rec['createtime'] = date('Y-m-d H:i:s', $rec['createtime']);
|
|
$rec['title'] = str_replace(",",",",$rec['title']);
|
|
}
|
|
|
|
/* 输入到CSV文件 */
|
|
$html = "\xEF\xBB\xBF";
|
|
/* 输出表头 */
|
|
$filter['orderno'] = '订单号';
|
|
$filter['title'] = '商品名称';
|
|
$filter['agentname'] = '代理名称';
|
|
$filter['storename'] = '所属商家';
|
|
$filter['typename'] = '结算类型';
|
|
$filter['orderprice'] = '订单金额';
|
|
$filter['merchantmoney'] = '商户收入';
|
|
if(Customized::init('distributionText') > 0){
|
|
$filter['distrimoney'] = '共享股东佣金';
|
|
}else{
|
|
$filter['distrimoney'] = '分销佣金';
|
|
}
|
|
if(p('salesman')) $filter['salesmoney'] = '业务员佣金';
|
|
$filter['agentmoney'] = '代理收入';
|
|
$filter['agentnowmoney'] = '结算后代理余额';
|
|
$filter['createtime'] = '结算时间';
|
|
|
|
foreach ($filter as $key => $title) {
|
|
$html .= $title . "\t,";
|
|
}
|
|
$html .= "\n";
|
|
|
|
foreach ($records as $k => $v) {
|
|
foreach ($filter as $key => $title) {
|
|
if ($key == 'orderprice' || $key == 'merchantmoney' || $key == 'agentmoney' || $key == 'agentnowmoney') {
|
|
$html .= trim($v[$key]) . trim("\t") . ",";
|
|
} else {
|
|
$html .= $v[$key] . "\t, ";
|
|
}
|
|
}
|
|
$html .= "\n";
|
|
}
|
|
/* 输出CSV文件 */
|
|
header("Content-type:text/csv");
|
|
header("Content-Disposition:attachment; filename=结算记录.csv");
|
|
echo $html;
|
|
exit();
|
|
}
|
|
|
|
|
|
}
|
|
|