<?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);
    } 
}