|
@@ -243,23 +243,48 @@ Class Manage
|
|
|
// print_R($goods_info);
|
|
|
if ($goods_info['price_type'] > 2 && isset($goods_info['goods']) && is_array($goods_info['goods'])) {
|
|
|
$heji = 0;
|
|
|
- $heji = $this->total($goods);
|
|
|
- // print_R($heji);die;
|
|
|
+ $heji = $this->total($goods,$v1['num']);
|
|
|
+ // print_R($v);die;
|
|
|
foreach ($goods_info['goods'] as $key => $val) {
|
|
|
- // $val['price']-($val['price']*)
|
|
|
- $youhui = ($val['price']*($val['num']+$v1['num'])-($val['price']*($val['num']+$v1['num'])/$heji)*$v['price'])*$v1['num'];
|
|
|
- $card_price = ($v['card_code_cash']/$heji*($val['price']*($val['num']+$v1['num'])))*$v1['num'];
|
|
|
- $wallet_price = ($v['wallet_cash']/$heji*($val['price']*($val['num']+$v1['num'])))*$v1['num'];
|
|
|
- $goodsfu = $val['price']*($val['num']+$v1['num'])-$youhui-$card_price-$wallet_price;
|
|
|
+
|
|
|
+ $dnum = round($val['num']*$v1['num'],2);
|
|
|
+ // $bili = round($val['price']*$dnum /$heji,2);#比例
|
|
|
+ // $price_money = $val['price']*$dnum*$v['discount_cash'];#支付
|
|
|
+ // if ($v['discount_id']>0) {
|
|
|
+ // $youhui = round($val['price']*$dnum-$price_money,2);
|
|
|
+ // } else {
|
|
|
+ // $youhui = 0;
|
|
|
+ // }
|
|
|
+
|
|
|
+
|
|
|
+ // $card_price = round(($v['card_code_cash']/$v['oprice']*($val['price']*$dnum *$bili)),2);
|
|
|
+ // // print_R($card_price);die;
|
|
|
+ // $wallet_price = round(($v['wallet_cash']/$heji*($val['price']*$dnum*$bili)),2);
|
|
|
+
|
|
|
+ // // print_R($price_money);die;
|
|
|
+ // $goodsfu = $val['price']*$dnum-$youhui-$card_price-$wallet_price;
|
|
|
+ if ($v['discount_id']<=0) {
|
|
|
+ $youhui = 0;
|
|
|
+ } else {
|
|
|
+ $youhui = ($val['price']*$dnum-($val['price']*$dnum/$heji)*$v['price'])*$v1['num'];
|
|
|
+ }
|
|
|
+ if ($v['card_code_cash'] && $v['card_code_cash']>0){
|
|
|
+ $card_price = ($v['card_code_cash']/$v['oprice']*($val['price']*$dnum))*$v1['num'];
|
|
|
+ } else {
|
|
|
+ $card_price = 0;
|
|
|
+ }
|
|
|
+ $wallet_price = ($v['wallet_cash']/$v['oprice']*($val['price']*$dnum))*$v1['num'];
|
|
|
+ $goodsfu = $val['price']*$dnum-$youhui-$card_price-$wallet_price;
|
|
|
if ($key == 0) {
|
|
|
- $price = round($v1['price']*$v1['num']-$v1['discount_cash'],2);
|
|
|
+ $price = $v['price'];//round($v1['price']*$v1['num']-$v1['discount_cash'],2);
|
|
|
$shifu = round($v['price'],2);//实付金额
|
|
|
$order_num = $v1['num'];#订单总数量
|
|
|
- $oprice = round($v1['price']*$v1['num'],2);#订单总金额
|
|
|
+ $oprice = $v['oprice'];//round($v1['price']*$v1['num'],2);#订单总金额
|
|
|
$coupon_cash = round($v1['coupon_cash'],2);
|
|
|
$discount_cash = round($v1['discount_cash'],2);
|
|
|
$card_code_cash = round($v['card_code_cash'],2);
|
|
|
$wallet_cash = round($v['wallet_cash'],2);
|
|
|
+
|
|
|
} else {
|
|
|
$price = 0;
|
|
|
$shifu = 0;
|
|
@@ -270,11 +295,7 @@ Class Manage
|
|
|
$card_code_cash = 0;
|
|
|
$wallet_cash = 0;
|
|
|
}
|
|
|
- if($v1['num']>1) {
|
|
|
- $dnum = round($val['num']+$v1['num'],2);
|
|
|
- } else {
|
|
|
- $dnum = round($val['num'],2);
|
|
|
- }
|
|
|
+
|
|
|
|
|
|
$d = array
|
|
|
(
|
|
@@ -290,12 +311,12 @@ Class Manage
|
|
|
|
|
|
round($val['price'],2),
|
|
|
$dnum,
|
|
|
- round(($val['price']*($val['num']+$v1['num'])),2),
|
|
|
+ round(($val['price']*$dnum),2),
|
|
|
round($youhui,2),
|
|
|
$goodsfu,
|
|
|
$card_price,
|
|
|
$wallet_price,
|
|
|
- $price,
|
|
|
+ $goodsfu,//$price,//$price_money,
|
|
|
|
|
|
$v['card'],
|
|
|
$v['card_code_card']."\t",
|
|
@@ -354,6 +375,8 @@ Class Manage
|
|
|
$dcard_price = $v['card_code_cash']/$v['oprice']*($v1['price']*$v1['num']);
|
|
|
$dwallet_price = $v['wallet_cash']/$v['oprice']*($v1['price']*$v1['num']);
|
|
|
$dgoodsfu = $v1['price']*$v1['num']-$dyouhui-$dcard_price-$dwallet_price;
|
|
|
+ // print_R($v1);die;
|
|
|
+ // $dpaymoney = round($v1['price']/$v['oprice']*$v1['price']*$v1['num'],2);
|
|
|
if ($dgoodsfu<0){
|
|
|
$dgoodsfu = 0;
|
|
|
}
|
|
@@ -372,11 +395,12 @@ Class Manage
|
|
|
round($v1['price'],2),
|
|
|
round($v1['num'],2),
|
|
|
round(($v1['price']*$v1['num']),2),
|
|
|
+
|
|
|
round($dyouhui,2),
|
|
|
$dgoodsfu,
|
|
|
$dcard_price,
|
|
|
$dwallet_price,
|
|
|
- $zhifu,
|
|
|
+ $dgoodsfu,//$zhifu,
|
|
|
|
|
|
$v['card'],
|
|
|
$v['card_code_card']."\t",
|
|
@@ -421,16 +445,158 @@ Class Manage
|
|
|
$file = '商品销售相关数据';
|
|
|
return Dever::excelExport($body, $header, $file);
|
|
|
}
|
|
|
- public function total($goods){
|
|
|
- // print_R($goods);die;
|
|
|
+ public function total($goods,$num){
|
|
|
if ($goods) {
|
|
|
$price = 0;
|
|
|
foreach ($goods as $k => $v) {
|
|
|
- $price += $v['price'] * $v['num'];
|
|
|
+ $price += $v['price'] * $v['num']*$num;
|
|
|
}
|
|
|
return $price;
|
|
|
}
|
|
|
}
|
|
|
+ public function duihuan_api()
|
|
|
+ {
|
|
|
+ $start = Dever::input('start');
|
|
|
+ $end = Dever::input('end');
|
|
|
+ $fastart = Dever::input('fastart');
|
|
|
+ $faend = Dever::input('faend');
|
|
|
+ $fstart = Dever::input('fstart');
|
|
|
+ $fend = Dever::input('fend');
|
|
|
+ $name = Dever::input('goods_name');
|
|
|
+ $shop_name = Dever::input('shop_name');
|
|
|
+ $order_num = Dever::input('order_num');
|
|
|
+ if ($start) {
|
|
|
+ $where['start'] = strtotime($start);
|
|
|
+ }
|
|
|
+ if ($end) {
|
|
|
+ $where['end'] = strtotime($end);
|
|
|
+ }
|
|
|
+ if ($fastart) {
|
|
|
+ $where['fastart'] = strtotime($fastart);
|
|
|
+ }
|
|
|
+ if ($faend) {
|
|
|
+ $where['faend'] = strtotime($faend);
|
|
|
+ }
|
|
|
+ if ($fstart) {
|
|
|
+ $where['fstart'] = strtotime($fstart);
|
|
|
+ }
|
|
|
+ if ($fend) {
|
|
|
+ $where['fend'] = strtotime($fend);
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($name) {
|
|
|
+ $where['name'] = $name;
|
|
|
+ }
|
|
|
+ if ($shop_name) {
|
|
|
+ $where['type'] = 1;
|
|
|
+ $shop = Dever::db('shop/info')->find(array('name'=>$name));
|
|
|
+ if ($shop) {
|
|
|
+ $where['type_id'] = $shop['id'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if ($order_num) {
|
|
|
+ $where['order_num'] = $order_num;
|
|
|
+ }
|
|
|
+ $where['state'] = 1;
|
|
|
+ // print_R($where);die;
|
|
|
+ $data = Dever::db('shop/buy_order')->getDui($where);
|
|
|
+ $header = array('门店类型', '门店编号', '门店名称', '订单号', '商品编码', '存货编码', '商品名称', '规格型号', '税率', '商品单价', '购买数量', '商品合计金额', '代理商注册时间', '下单时间', '付款时间', '发货时间', '完成时间', '订单总数量', '订单总金额', '订单实付金额', '订单状态', '收件人', '收件人手机', '收件人地址');
|
|
|
+ $body = array();
|
|
|
+ if ($data) {
|
|
|
+ foreach($data as $k => $v){
|
|
|
+ $shop = Dever::db('shop/info')->find($v['type_id']);
|
|
|
+ if ($shop['type'] ==1) {
|
|
|
+ $shop_type = '体验店';
|
|
|
+ } elseif ($shop['type'] ==2) {
|
|
|
+ $shop_type = '零售店';
|
|
|
+ } elseif ($shop['type'] ==10) {
|
|
|
+ $shop_type = '平台商城';
|
|
|
+ }
|
|
|
+ $zhuce = '';
|
|
|
+ $address_contact = '';
|
|
|
+ $address_mobile = '';
|
|
|
+ $address_info = '';
|
|
|
+ $parent_order = Dever::db('agent/dh_order')->find($v['parent_order_id']);
|
|
|
+ if ($parent_order && isset($parent_order['uid']) && $parent_order['uid']) {
|
|
|
+ if ($parent_order['address_id']) {
|
|
|
+ $address = Dever::load('passport/address')->getOne($parent_order['uid'], $parent_order['address_id']);
|
|
|
+ if($address) {
|
|
|
+ $address_contact = $address['contact'];
|
|
|
+ $address_mobile = $address['mobile'];
|
|
|
+ $address_info = $address['address_info'];
|
|
|
+ $member = Dever::db('agent/member')->find(array('mobile'=>$address['mobile']));
|
|
|
+ if ($member) {
|
|
|
+ $zhuce = date('Y-m-d H:i',$member['cdate']);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $goods = Dever::db('shop/buy_order_goods')->select(array('order_id' => $v['id']));
|
|
|
+ $goods_status = Dever::db('shop/buy_order_goods')->config['status'];
|
|
|
+ foreach ($goods as $k1 => $v1) {
|
|
|
+ $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v1['goods_id'], $v1['sku_id']);
|
|
|
+ if (isset($goods_info['sku'])) {
|
|
|
+ $sku = $goods_info['sku']['string'];
|
|
|
+ } else {
|
|
|
+ $sku = '';
|
|
|
+ }
|
|
|
+ if ($v['cdate']) {
|
|
|
+ $cdate = date('Y-m-d H:i',$v['cdate']);
|
|
|
+
|
|
|
+ }
|
|
|
+ $fadate = '';
|
|
|
+ if ($v['fadate']) {
|
|
|
+ $fadate = date('Y-m-d H:i',$v['fadate']);
|
|
|
+ }
|
|
|
+ $fdate = '';
|
|
|
+ if ($v['fdate']) {
|
|
|
+ $fdate = date('Y-m-d H:i',$v['fdate']);
|
|
|
+ }
|
|
|
+ // print_R($v1);die;
|
|
|
+ $d = array
|
|
|
+ (
|
|
|
+ $shop_type,
|
|
|
+ $shop['sid'],
|
|
|
+ $shop['name'],
|
|
|
+ $v['order_num'],
|
|
|
+ $goods_info['code']."\t",
|
|
|
+ $goods_info['cunhuo_code']."\t",
|
|
|
+ $goods_info['name'],
|
|
|
+ $sku,
|
|
|
+ $goods_info['tax'],
|
|
|
+
|
|
|
+ round($v1['price'],2),
|
|
|
+ round($v1['num'],2),
|
|
|
+ round($v1['price']*$v1['num'],2),
|
|
|
+
|
|
|
+ $zhuce,
|
|
|
+ $cdate,
|
|
|
+ $cdate,
|
|
|
+ $fadate,
|
|
|
+ $fdate,
|
|
|
+
|
|
|
+ $v['num'],
|
|
|
+ round($v['price'],2),
|
|
|
+ 0,
|
|
|
+ $goods_status[$v1['status']],
|
|
|
+
|
|
|
+
|
|
|
+ $address_contact,
|
|
|
+ $address_mobile,
|
|
|
+ $address_info,
|
|
|
+ );
|
|
|
+ $body[] = $d;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // print_R($body);die;
|
|
|
+ if (!$body) {
|
|
|
+ Dever::alert('此时段没有数据,请重新选择条件');
|
|
|
+ }
|
|
|
+ $file = '代理商兑换订单';
|
|
|
+ return Dever::excelExport($body, $header, $file);
|
|
|
+ }
|
|
|
public function memberGoods_api()
|
|
|
{
|
|
|
$name = Dever::input('name');
|