/**
 * 这是支付相关的业务逻辑的服务
 */
export default class PayService {
    constructor(AjaxService) {
        Object.assign(this, { AjaxService })
        this.name = 'PayService'
    }
    /* 小程序支付-查询线上支付开关状态 */
    PayOrderOnLineSwitch (data = {}) {
        return this.AjaxService.get({ 
            url:'/order/pay/online/switch', 
            data, 
            isLoading: false ,
              
        })
    }
    /* 根据主订单查询子订单信息 */
    PayOrderShoporders (data = {}) {
	    return this.AjaxService.get({ 
	        url:'/order/pay/shoporders', 
	        data, 
	        isLoading: false ,
	          
	    })
    }
    /* 小程序支付-初始化收银台 */
    PayOrderCheckoutCounter (data = {}) {
        return this.AjaxService.get({ 
            url:'/order/pay/checkout/counter', 
            data, 
            isLoading: true ,
              
        })
    }
    /* 小程序支付-初始化子订单收银台 shopOrderId*/
    PayOrderCheckoutShoporders (data = {}) {
        return this.AjaxService.get({ 
            url:'/order/pay/checkout/shoporders', 
            data, 
            isLoading: true ,
              
        })
    }
    /**
	 *小程序支付-米花微信支付
	 *@param  amount支付金额，单位分，必须大于2
	 *@param  payWay银联：UNIONPAY，微信：WEIXIN，支付宝：ALIPAY
	 *@param  payType 微信小程序支付: MINIAPP_WEIXIN ,微信公众号支付: JSAPI_WEIXIN
	 *@param  code  微信小程序code,微信小程序支付使用
	 *@param  orderId  主订单ID
	 */
    WeChatMiniWxPay (data = {}) {
        return this.AjaxService.post({ 
            url:'/order/pay/wechat', 
            data, 
            isLoading: true ,
            loadText:'请求支付中...'    
        })
    }
    /**
	 *小程序支付-合利宝微信支付
	 *@param  amount支付金额，单位分，必须大于2
	 *@param  payWay银联：UNIONPAY，微信：WEIXIN，支付宝：ALIPAY
	 *@param  payType 微信小程序支付: MINIAPP_WEIXIN ,微信公众号支付: JSAPI_WEIXIN
	 *@param  code  微信小程序code,微信小程序支付使用
	 *@param  orderId  主订单ID
	 */
    WeChatScanMiniWxPay (data = {}) {
        console.log('合利宝微信支付')
        return this.AjaxService.post({ 
            url:'/order/pay/online', 
            data, 
            isLoading: true ,
            loadText:'请求支付中...'    
        })
    }
    /**
	 *小程序支付-微信支付
	 *@param  payWay银联：UNIONPAY，微信：WEIXIN，支付宝：ALIPAY
	 *@param  payType 微信小程序支付: MINIAPP_WEIXIN ,微信公众号支付: JSAPI_WEIXIN
	 *@param  code  微信小程序code,微信小程序支付使用
	 *@param  userId  用户Id
	 *@param  couponId  优惠券Id
	 */
    WeChatCouponMiniWxPay (data = {}) {
        return this.AjaxService.post({ 
            url:'/order/pay/coupon/wechat', 
            data, 
            isLoading: true ,
            loadText:'请求支付中...'  
        })
    }
    /**
	 *购买优惠券生成记录Id
	 *@param  userId  用户Id
	 *@param  couponId  优惠券Id
	 */
    WeChatCouponRecord (data = {}) {
        return this.AjaxService.post({ 
            url:'/order/pay/coupon/record', 
            data, 
            isLoading: false ,
        })
    }
    /**
	 *采美豆抵扣优惠券
	 *@param  source  领取渠道 1 小程序  2 网站
	 *@param  userId  用户Id
	 *@param  couponId  优惠券Id
	 */
    WeChatPayCouponBeans (data = {}) {
        return this.AjaxService.post({ 
            url:'/order/pay/coupon/beans', 
            data, 
            isLoading: true ,
            loadText:'请求抵扣中...'  
        })
    }
    /**
	 *生成支付链接
	 *@param  unpaidAmount 本次待付款金额
	 *@param  orderId  主订单ID
	 */
    PayOrderPayLink (data = {}) {
        return this.AjaxService.post({ 
            url:'/order/pay/link', 
            data, isLoading: true ,
              
        })
    }
    /**
	 *@param 二手发布支付
	 *@param  orderId  主订单ID
	 */
    SecondHandPay (data = {}) {
        return this.AjaxService.post({
            url:'/order/pay/second/wechat', 
            data, 
            isLoading: true ,
              
        })
    } 
    /**
	 *@param 采美豆抵扣开通超级会员
	 *@param  orderId  主订单ID
	 */
    getUserRegisterSuperBeans (data = {}) {
        return this.AjaxService.get({
            url:'/user/register/super/beans', 
            data, 
            isLoading: true ,
              
        })
    } 
    /**
	 *@在线支付开通超级会员
	 */
    getUserRegisterSuperPay (data = {}) {
	    return this.AjaxService.get({ 
	        url:'/user/register/super/pay', 
	        data, 
	        isLoading: true,
	          
	    })
    }
    /**
	 *@param 微信支付开通超级会员
	 *@param  vipId  套餐ID
	 *@param  userId 用户D
	 *@param  code  wechatCode
	 */
    PayOrderVipWechat (data = {}) {
        return this.AjaxService.post({
            url:'/order/pay/vip/wechat', 
            data, 
            isLoading: true ,
              
        })
    } 
    /**
	 *@param 订单支付大额网银转账
	 *@param  payAmount  转账金额
	 *@param  orderId 订单ID
	 */
    PayOrderTransferUnion (data = {}) {
        return this.AjaxService.post({
            url:'/order/pay/transfer/union', 
            data, 
            isLoading: true ,
              
        })
    } 
    /**
	 *@param 校验是否网银转账成功
	 *@param  mbOrderId  交易订单号
	 */
    PayOrderFindOrderStatus (data = {}) {
        return this.AjaxService.get({
            url:'/order/pay/result/json', 
            data, 
            isLoading: true ,
              
        })
    } 
    /**
	 *@param 获取线下转账银行
	 */
    payOrderReceiptBankData (data = {}) {
        return this.AjaxService.get({
            url:'/order/receipt/bankData', 
            data, 
            isLoading: false ,
        }) 
    } 
    /**
	 *@param 获取快捷支付银行信息
	 */
    getQuickBankInfos (data = {}) {
        return this.AjaxService.get({
            url:'/order/pay/quick/bank/infos', 
            data, 
            isLoading: false ,
        }) 
    } 
    /**
	 *@param 银行卡绑定信息提交
	 Int userId  									机构用户Id
	 String quickPayBankNumber  				快捷支付用户银行卡号/信用卡号  
	 String quickPayMobile  					快捷支付银行卡绑定手机号  
	 String quickPayBankExpireTime  			快捷支付信用卡过期时间,只包含年月，格式yy-MM
	 String quickPayUserName  					快捷支付用户姓名
	 String idCard  							身份证号
	 String cvvCode  							信用卡安全码
	 */
    orderPayQuickBindCard (data = {}) {
        return this.AjaxService.post({
            url:'/order/pay/quick/bind/card', 
            data, 
            isLoading: true ,
        }) 
    } 
    /**
	 *@param 银行卡绑定信息校验
	 String orderId  							订单
	 String infoId  							记录Id
	 String bindCode  							短信验证码
	 */
    orderPayQuickBindCode (data = {},loadText) {
        return this.AjaxService.get({
            url:'/order/pay/quick/bind/code', 
            data, 
            isLoading: true ,
            loadText: loadText
        }) 
    } 
    /**
	 *@param 银行卡绑定信息校验
	 Int userId  								机构用户Id
	 String quickPayBankNumber  				快捷支付用户银行卡号/信用卡号  
	 String quickPayMobile  					快捷支付银行卡绑定手机号  
	 String quickPayBankExpireTime  			快捷支付信用卡过期时间,只包含年月，格式yy-MM
	 String quickPayUserName  					快捷支付用户姓名
	 String idCard  							身份证号
	 String cvvCode  							信用卡安全码
	 Int quickPayFlag     						快捷支付类型标记1订单2超级会员3认证通会员4优惠券
	 quickPayFlag=1普通订单  String payAmount 支付金额，单位元 int shopOrderId	子订单Id
	 quickPayFlag=2 超级会员 vipRecordId会员购买记录Id
	 quickPayFlag=3 认证通会员 vipRecordId会员购买记录Id
	 quickPayFlag=4 优惠券购买 couponRecordId 优惠券购买记录id couponId购买优惠券Id
	 source领取渠道1小程序 2网站
	 */
    orderPayQuickPay (data = {}) {
        return this.AjaxService.post({
            url:'/order/pay/quick/pay', 
            data, 
            isLoading: true ,
        }) 
    } 
    /**
	 *@param 快捷支付解绑银行卡
	 cardId 银行卡绑定Id
	 */
    orderPayUnboundCard (data = {}) {
        return this.AjaxService.get({
            url:'/order/pay/quick/unbound/card', 
            data, 
            isLoading: true ,
        }) 
    } 
}
