/** * author: 微赞 */ public function doMobileOrderPay() { global $_W, $_GPC; $oid = $_GPC['oid']; $order = DBUtil::findById(DBUtil::$TABLE_ORDER_ORDER, $oid); MonUtil::emtpyMsg($order, "订单删除或不存在"); $item = DBUtil::findById(DBUtil::$TABLE_ORDER_ITEM, $order['iid']); $form = DBUtil::findById(DBUtil::$TABLE_ORDER_FORM, $order['fid']); if ($order['status'] == $this::$STATUS_UNPAY && $order['pay_type'] == 1) { //立即支付 $jsApi = new JsApi_pub($this->mOrderSetting); $jsApi->setOpenId($order['openid']); $unifiedOrder = new UnifiedOrder_pub($this->mOrderSetting); $unifiedOrder->setParameter("openid", $order['openid']); //商品描述 $unifiedOrder->setParameter("body", "预约订单" . $item['iname']); //商品描述 $out_trade_no = date("YmdHis", TIMESTAMP); $unifiedOrder->setParameter("out_trade_no", $out_trade_no); //商户订单号 //$unifiedOrder->setParameter("total_fee", 1);//总金额 $unifiedOrder->setParameter("total_fee", $order['zf_price'] * 100); //总金额 $notifyUrl = $_W['siteroot'] . "addons/" . MON_ORDER . "/notify.php"; $unifiedOrder->setParameter("notify_url", $notifyUrl); //通知地址 $unifiedOrder->setParameter("trade_type", "JSAPI"); //交易类型 $prepay_id = $unifiedOrder->getPrepayId(); $jsApi->setPrepayId($prepay_id); $jsApiParameters = $jsApi->getParameters(); DBUtil::updateById(DBUtil::$TABLE_ORDER_ORDER, array('outno' => $out_trade_no), $oid); } include $this->template("orderPay"); }
public function doMobileAjaxPay() { global $_W, $_GPC; $price = $_GPC['price']; if ($price == 0) { $price = 0.01; } $uniacid = $_W['uniacid']; $set = pdo_fetch("SELECT * FROM " . tablename('fineness_sysset') . " WHERE weid=:weid limit 1", array(':weid' => $uniacid)); if (empty($set)) { $res['code'] = 501; $res['msg'] = "抱歉,基本参数没设置"; return json_encode($res); } load()->model('mc'); $userInfo = mc_oauth_userinfo(); $jsApi = new JsApi_pub($set); $jsApi->setOpenId($userInfo['openid']); $unifiedOrder = new UnifiedOrder_pub($set); $unifiedOrder->setParameter("openid", $userInfo['openid']); //商品描述 $unifiedOrder->setParameter("body", "赞赏"); //商品描述 $timeStamp = time(); $out_trade_no = $set['appid'] . "{$timeStamp}"; $unifiedOrder->setParameter("out_trade_no", $out_trade_no); //商户订单号 $unifiedOrder->setParameter("total_fee", $price * 100); //总金额 $notifyUrl = $_W['siteroot'] . "addons/" . AMOUSE_ARTICLE . "/notify.php"; $unifiedOrder->setParameter("notify_url", $notifyUrl); //通知地址 $unifiedOrder->setParameter("trade_type", "JSAPI"); //交易类型 $prepay_id = $unifiedOrder->getPrepayId(); $jsApi->setPrepayId($prepay_id); $jsApiParameters = $jsApi->getParameters(); $res['code'] = 200; $res['msg'] = $jsApiParameters; return json_encode($res); }
/** * author: codeMonkey QQ:631872807 * 订单提交 */ public function doMobileOrderSubmit() { global $_W, $_GPC; MonUtil::checkmobile(); $uid = $_GPC['uid']; $kid = $_GPC['kid']; $wkj = DBUtil::findById(DBUtil::$TABLE_WKJ, $kid); $user = DBUtil::findById(DBUtil::$TABLE_WKJ_USER, $uid); $uname = $_GPC['uname']; $address = $_GPC['address']; $p_model = $_GPC['p_model']; $tel = $_GPC['tel']; MonUtil::emtpyMsg($wkj, "砍价活动不存在或已删除"); MonUtil::emtpyMsg($user, "用户不存在或已删除"); $orderInfo = $this->findOrderInfo($kid, $uid); if ($wkj['pay_type'] == 2) { //货到付款 $leftCount = $wkj['p_kc'] - $this->getOrderCount($kid) - 1; if ($leftCount < 0) { message("对不起库存已不足,请下次再来参加活动吧。"); } } if (empty($orderInfo)) { //没有该用户的订单 信息 $order_array = array('kid' => $wkj['id'], 'uid' => $user['id'], 'uname' => $uname, 'address' => $address, 'tel' => $tel, 'openid' => $user['openid'], 'y_price' => $wkj['p_y_price'], 'kh_price' => $user['price'], 'yf_price' => $wkj['yf_price'], 'total_price' => $user['price'] + $wkj['yf_price'], 'status' => $this::$KJ_STATUS_XD, 'p_model' => $p_model, 'createtime' => TIMESTAMP); DBUtil::create(DBUtil::$TABLE_WJK_ORDER, $order_array); $oid = pdo_insertid(); $orderInfo = DBUtil::findById(DBUtil::$TABLE_WJK_ORDER, $oid); } if ($orderInfo['status'] == $this::$KJ_STATUS_XD && $wkj['pay_type'] == 1) { //立即支付 $jsApi = new JsApi_pub($this->kjSetting); $jsApi->setOpenId($user['openid']); $unifiedOrder = new UnifiedOrder_pub($this->kjSetting); $unifiedOrder->setParameter("openid", $user['openid']); //商品描述 $unifiedOrder->setParameter("body", "砍价商品" . $wkj['p_name']); //商品描述 $out_trade_no = $this->getOrderNo($kid, $uid); $unifiedOrder->setParameter("out_trade_no", $out_trade_no); //商户订单号 //$orderInfo['total_price'] $unifiedOrder->setParameter("total_fee", $orderInfo['total_price'] * 100); //总金额 $notifyUrl = $_W['siteroot'] . "addons/" . MON_WKJ . "/notify.php"; $unifiedOrder->setParameter("notify_url", $notifyUrl); //通知地址 $unifiedOrder->setParameter("trade_type", "JSAPI"); //交易类型 $prepay_id = $unifiedOrder->getPrepayId(); $jsApi->setPrepayId($prepay_id); DBUtil::updateById(DBUtil::$TABLE_WJK_ORDER, array('order_no' => $out_trade_no), $orderInfo['id']); $jsApiParameters = $jsApi->getParameters(); $gmCount = $this->getOrderCount1($kid); $leftCount = $wkj['p_kc'] - $gmCount; } else { if ($orderInfo['status'] == $this::$KJ_STATUS_XD && $wkj['pay_type'] == 2) { //货到付款 $out_trade_no = $this->getOrderNo($kid, $uid); DBUtil::updateById(DBUtil::$TABLE_WJK_ORDER, array('order_no' => $out_trade_no), $orderInfo['id']); } } $orderInfo = $this->findOrderInfo($kid, $uid); include $this->template('order_submit'); }