2019-10-27 20:15:29 +08:00

73 lines
3.6 KiB
PHP
Executable File

<?php
namespace wstmart\home\controller;
/**
* ============================================================================
* 默认控制器
*/
class Index extends Base{
protected $beforeActionList = [
'checkAuth' => ['only'=>'getsysmessages']
];
public function index(){
$pay['needPay'] =200;
$userId=1;//$this->getUserId()
//产品券
$buyerMaxProductScale = round(dataConf('buyerMaxProductScale')*0.01,2);
$pay['maxProduct'] = $pay['needPay'] * $buyerMaxProductScale;//最大可用产品券
$pay['productHandlingFee'] = round(dataConf('useHasHandlingFee')*0.01,2);//产品券手续费
$pay['productTaxFee'] = round(dataConf('useHasTaxFee')*0.01,2);//产品券税费
$pay['maxAllProduct'] = $this->getMaxNum($pay['maxProduct'],(1-$pay['productHandlingFee']-$pay['productTaxFee'] ));//加上手续费,税费最多扣除产品券
//优惠券
$pay['maxCoupons'] = $pay['needPay'] - $pay['maxProduct'] ;//最大可用其他券,优惠券+旺旺券+现金券
$pay['coupousHandlingFee'] = round(dataConf('useHasHandlingFee')*0.01,2);//优惠券手续费
$pay['coupousTaxFee'] = round(dataConf('useHasTaxFee')*0.01,2);//优惠券税费
$pay['maxAllCoupons'] = $this->getMaxNum($pay['maxCoupons'],(1-$pay['coupousHandlingFee']-$pay['coupousTaxFee'] ));//加上手续费,税费最多扣除优惠券
$pay['money']['useMoney'] = 0;
$pay['wang']['useWang'] = 0;
//实际应用最大的产品券
$userInfo = getUserInfo(['userId'=>$userId],'couponsNum,productNum,wangNum');
$pay['product']['useProduct'] = $userInfo['productNum'] >= $pay['maxAllProduct'] ? $pay['maxAllProduct'] : $userInfo['productNum'];
$pay['product']['useProductHandlingFee'] = $pay['product']['useProduct'] * $pay['productHandlingFee'];//产品券手续费
$pay['product']['useProductTaxFee'] = $pay['product']['useProduct'] * $pay['productTaxFee'];
$pay['product']['useProductOk'] = $pay['product']['useProduct'] - $pay['product']['useProductHandlingFee'] - $pay['product']['useProductTaxFee'];
//实际应用最大的优惠券
$pay['coupons']['useCoupons'] = $userInfo['couponsNum'] >= $pay['maxAllCoupons'] ? $pay['maxAllCoupons'] : $userInfo['couponsNum'];
$pay['coupons']['useCouponsHandlingFee'] = round($pay['coupons']['useCoupons'] * $pay['coupousHandlingFee'],2);//产品券手续费
$pay['coupons']['useCouponsTaxFee'] = round($pay['coupons']['useCoupons'] * $pay['coupousTaxFee'],2);
$pay['coupons']['useCouponsOk'] = $pay['coupons']['useCoupons'] - $pay['coupons']['useCouponsHandlingFee'] - $pay['coupons']['useCouponsTaxFee'];
$remNum = $pay['needPay'] - $pay['product']['useProduct'] - $pay['coupons']['useCouponsHandlingFee'];
if($remNum > 0 ){
//旺旺券
$pay['wang']['useWang'] = $userInfo['wangNum'] >= $remNum ? $remNum : $userInfo['wangNum'];
$remNum = $pay['needPay'] - $pay['product']['useProduct'] - $pay['coupons']['useCouponsHandlingFee']-$pay['wang']['useWang'];
if($remNum > 0 ){
$pay['money']['useMoney'] = $remNum;
}
}
// dump($pay);
return $this->fetch('index');
}
/**
* 获取除去比例的最大值
* @param [type] $num [description]
* @param [type] $scale [description]
* @return [type] [description]
*/
private function getMaxNum($num,$scale){
return round($num/$scale,2);
}
/**
* 保存目录ID
*/
public function getMenuSession(){
$menuId = input("post.menuId");
$menuType = session('WST_USER.loginTarget');
session('WST_MENUID3'.$menuType,$menuId);
}
}