Authored by 郝肖肖

合master

... ... @@ -12,120 +12,100 @@ class ChannelConfig
//首页
'boys' => array(
array(
'sort' => 147,
'misort' => 44,
'viewNum' => 5
), //休闲/运动鞋
array(
'sort' => 129,
'misort' => 11,
'viewNum' => 5
), //休闲裤
), //T恤
array(
'sort' => 152,
'misort' => 28,
'viewNum' => 5
), //双肩包
), //短裤
array(
'misort' => 11,
'misort' => 61,
'viewNum' => 5
), //T恤
), //太阳镜/眼镜
array(
'sort' => 115,
'misort' => 26,
'viewNum' => 5
), //衬衫
), //休闲裤
array(
'sort' => 130,
'misort' => 27,
'viewNum' => 5
), //牛仔裤
array(
'misort' => 60,
'viewNum' => 5
), //帽子
array(
'sort' => 124,
'misort' => 49,
'viewNum' => 5
), //夹克
), //双肩包
array(
'sort' => 119,
'misort' => 12,
'viewNum' => 5
), //卫衣
), //衬衫
array(
'sort' => 162,
'misort' => 13,
'viewNum' => 5
), //手表
), //polo
array(
'sort' => 148,
'misort' => 60,
'viewNum' => 5
), //
), //
array(
'misort' => 65,
'misort' => 46,
'viewNum' => 5
), //首饰
), //凉鞋/拖鞋
array(
'sort' => 151,
'misort' => 66,
'viewNum' => 5
), //时装鞋
), //配饰
array(
'misort' => 61,
'misort' => 65,
'viewNum' => 5
), //太阳镜/眼镜
), //首饰
array(
'misort' => 39,
'misort' => 59,
'viewNum' => 5
), //袜子
), //手表
array(
'sort' => 346,
'misort' => 48,
'viewNum' => 5
), //运动裤
), //时装鞋
array(
'sort' => 131,
'misort' => 14,
'viewNum' => 5
), //短裤
), //背心
array(
'misort' => 66,
'misort' => 19,
'viewNum' => 5
), //配饰
), //西装
array(
'misort' => 309,
'viewNum' => 5
), //内裤
array(
'misort' => 30,
'misort' => 259,
'viewNum' => 5
), //打底裤/紧身裤
), //美妆
array(
'sort' => 342,
'misort' => 237,
'viewNum' => 5
), //邮差
), //钱包/手包/卡包/钥匙
),
//女首上架分类
'girls' => array(
array(
'misort' => 16,
'viewNum' => 4
), // 卫衣
array(
'misort' => 12,
'viewNum' => 4
), //衬衫
array(
'misort' => 44,
'viewNum' => 4
), //休闲/运动鞋
array(
'misort' => 11,
'viewNum' => 4
), //T恤
array(
'misort' => 21,
'viewNum' => 4
), //夹克
array(
'misort' => 257,
'misort' => 44,
'viewNum' => 4
), //毛衣/针织
), //休闲/运动鞋
array(
'misort' => 22,
'misort' => 31,
'viewNum' => 4
), //大衣/风衣
), //连衣裙
array(
'misort' => 26,
'viewNum' => 4
... ... @@ -135,45 +115,65 @@ class ChannelConfig
'viewNum' => 4
), //牛仔裤
array(
'misort' => 31,
'misort' => 12,
'viewNum' => 4
), //连衣裙
), //衬衫
array(
'misort' => 32,
'viewNum' => 4
), //半身裙
array(
'misort' => 28,
'viewNum' => 4
), //短裤
array(
'misort' => 14,
'viewNum' => 4
), //背心
array(
'misort' => 46,
'viewNum' => 4
), //凉鞋/拖鞋
array(
'misort' => 48,
'viewNum' => 4
), //时装鞋
array(
'misort' => 50,
'viewNum' => 4
), //单肩/手拎包
array(
'misort' => 49,
'viewNum' => 4
), //双肩包
array(
'misort' => 50,
'misort' => 61,
'viewNum' => 4
), //手拎包/单肩包
), //太阳镜/眼镜
array(
'misort' => 60,
'viewNum' => 4
), //帽子
array(
'misort' => 59,
'viewNum' => 4
), //手表
array(
'misort' => 65,
'viewNum' => 4
), //首饰
array(
'misort' => 59,
'misort' => 363,
'viewNum' => 4
), //手表
), //文胸
array(
'misort' => 61,
'misort' => 309,
'viewNum' => 4
), //太阳镜
), //内裤
array(
'misort' => 66,
'misort' => 259,
'viewNum' => 4
), //配饰
) //美妆
),
//潮童上架分类
'kids' => array(
... ... @@ -186,17 +186,17 @@ class ChannelConfig
'viewNum' => 4
), //衬衫
array(
'misort' => 396,
'misort' => 451,
'viewNum' => 4
), //卫衣
), //POLO
array(
'misort' => 400,
'misort' => 371,
'viewNum' => 4
), //毛衣/针织
), //连衣裙
array(
'misort' => 404,
'misort' => 370,
'viewNum' => 4
), //夹克
), //半身裙
array(
'misort' => 369,
'viewNum' => 4
... ... @@ -206,80 +206,72 @@ class ChannelConfig
'viewNum' => 4
), //牛仔裤
array(
'misort' => 371,
'viewNum' => 4
), //连衣裙
array(
'misort' => 370,
'misort' => 372,
'viewNum' => 4
), //半身裙
), //短裤
array(
'misort' => 368,
'viewNum' => 4
), //休闲/运动鞋
array(
'misort' => 392,
'misort' => 382,
'viewNum' => 4
), //双肩包
), //凉鞋/拖鞋
array(
'misort' => 414,
'misort' => 392,
'viewNum' => 4
), //帽子
), //双肩包
array(
'misort' => 372,
'misort' => 429,
'viewNum' => 4
), //短裤
), //太阳镜/眼镜
array(
'misort' => 384,
'misort' => 464,
'viewNum' => 4
), //打底裤/紧身裤
), //雨伞/雨衣
array(
'misort' => 382,
'misort' => 386,
'viewNum' => 4
), //凉鞋/拖鞋
), //背心
array(
'misort' => 402,
'misort' => 384,
'viewNum' => 4
), //马甲
), //打底裤/紧身裤
array(
'misort' => 386,
'misort' => 448,
'viewNum' => 4
), //背心
), //玩具娱乐
array(
'misort' => 406,
'misort' => 414,
'viewNum' => 4
), //大衣/风衣
), //帽子
array(
'misort' => 430,
'misort' => 380,
'viewNum' => 4
), //羽绒服
), //泳衣
array(
'misort' => 423,
'misort' => 419,
'viewNum' => 4
), //棉衣
), //配饰
array(
'misort' => 417,
'viewNum' => 4
), //套装
)//套装
),
//创意生活上架分类
'lifestyle' => array(
array(
'sort' => 171,
'viewNum' => 5
), //耳机
array(
'sort' => 398,
'misort' => 259,
'viewNum' => 5
), //智能装备
), //美妆
array(
'sort' => 185,
'misort' => 266,
'viewNum' => 5
), //相机
), //雨伞
array(
'misort' => 259,
'sort' => 171,
'viewNum' => 5
), //美妆
), //耳机
array(
'sort' => 267,
'viewNum' => 5
... ... @@ -289,25 +281,21 @@ class ChannelConfig
'viewNum' => 5
), //手机/ipad壳套
array(
'sort' => 211,
'misort' => 103,
'viewNum' => 5
), //数码配件
array(
'sort' => 292,
'misort' => 280,
'viewNum' => 5
), //玩
), //玩具娱乐
array(
'sort' => 272,
'viewNum' => 5
), //储物收纳
array(
'sort' => 183,
'sort' => 185,
'viewNum' => 5
), //居家用品
), //相机
array(
'sort' => 273,
'misort' => 101,
'viewNum' => 5
), //厨具/餐
), //
array(
'sort' => 271,
'viewNum' => 5
... ...
... ... @@ -234,6 +234,8 @@ class PayData
public static function pcpayNotify($orderCode, $payment, $amount, $bankName = '', $bankCode = '', $tradeNo = '', $bankBillNo = '')
{
$param = Yohobuy::param();
$param['client_type'] = 'web';
$param['private_key'] = Yohobuy::$privateKeyList['web'];
$param['method'] = 'web.SpaceOrders.pcpayNotify';
$param['order_code'] = $orderCode;
$param['payment'] = $payment;
... ... @@ -258,6 +260,8 @@ class PayData
{
// 构建必传参数
$param = Yohobuy::param();
$param['client_type'] = 'web';
$param['private_key'] = Yohobuy::$privateKeyList['web'];
$param['method'] = 'app.SpaceOrders.payConfirm';
$param['order_code'] = $orderCode;
$param['payment_id'] = $paymentId;
... ...
... ... @@ -42,8 +42,6 @@ class Service extends PayAbstract
public function getPayRequestPars(Reqparams $params)
{
// $baseUrl = $this->getBaseNoticeUrl($params->isTest);
// $loseTime = intval(($params->orderTime + 7200 - time()) / 60);
// $loseTime = intval((strtotime(date("Y-m-d 10:00:00", strtotime("+1 day")))-time())/60);
UdpLog::info("【{$this->logProjectPrefix}-支付宝银行支付】,function:getPayRequestPars,参数", $params);
$parameter = array(
'service' => $this->config->service,
... ... @@ -58,7 +56,7 @@ class Service extends PayAbstract
'payment_type' => $this->config->payment_type,
'defaultbank' => $params->paymentParameter,
'seller_email' => $this->config->sellerMail,
// 'it_b_pay' => $loseTime . 'm'
'it_b_pay' => $params->payExpireMinute . 'm',
);
if ($this->config->anti_fishing['timestamp_enable']) {
$anti_phishing_key = $this->getTimestamp();
... ...
... ... @@ -47,8 +47,6 @@ class Service extends PayAbstract
{
UdpLog::info("【{$this->logProjectPrefix}-支付宝支付】,function:getPayRequestPars,参数", $params);
// $baseUrl = $this->getBaseNoticeUrl($params->isTest);
// $loseTime = intval(($params->orderTime + 7200 -time())/60);
// $loseTime = intval((strtotime(date("Y-m-d 10:00:00", strtotime("+1 day")))-time())/60); //第二天十点
$parameter = array(
'service' => $this->config->service,
'partner' => $this->config->partner,
... ... @@ -58,13 +56,14 @@ class Service extends PayAbstract
/* 业务参数 */
'subject' => $params->goodsName,
'out_trade_no' => $params->orderCode,
// 'it_b_pay' => $loseTime . 'm',
'it_b_pay' => $params->payExpireMinute . 'm',
'total_fee' => $params->totalFee / 100, //单位为元
'payment_type' => $this->config->payment_type,
'seller_email' => $this->config->sellerMail,
'sign_id_ext' => $params->uid,
'sign_name_ext' => $params->userName
);
if ($this->config->anti_fishing['timestamp_enable']) {
$anti_phishing_key = $this->getTimestamp();
if (!empty($anti_phishing_key)) {
... ...
... ... @@ -11,17 +11,25 @@ namespace WebPlugin\Pay;
class Reqparams
{
public function __construct($_orderCode, $_totalFee, $_goodName, $client_ip, $_orderTime, $_paymentParameter="", $_isTest=false, $uid=0, $userName='')
public function __construct($_orderCode, $_totalFee, $_goodName, $client_ip, $_orderTime, $_paymentParameter="", $_isTest=false, $uid=0, $userName='', $_payExpire = '')
{
$this->orderCode = $_orderCode;
$this->totalFee = $_totalFee;
$this->goodsName = $_goodName;
$this->spbill_create_ip = $client_ip;
$this->orderTime = $_orderTime;
$this->paymentParameter = $_paymentParameter;
$this->isTest = $_isTest;
$this->uid = $uid;
$this->userName = $userName;
//到期时间,默认为当前时间加2个小时的时间戳
$_payExpire = empty($_payExpire) ? strtotime('+2 hours') : strtotime($_payExpire);
$payExpireMinute = 0;//剩余分钟数
if ($_payExpire && ($expireTime = $_payExpire - time()) > 0) {
$payExpireMinute = floor($expireTime / 60);
}
$this->orderCode = $_orderCode;
$this->totalFee = $_totalFee;
$this->goodsName = $_goodName;
$this->spbill_create_ip = $client_ip;
$this->orderTime = $_orderTime;
$this->payExpireMinute = $payExpireMinute;
$this->paymentParameter = $_paymentParameter;
$this->isTest = $_isTest;
$this->uid = $uid;
$this->userName = $userName;
}
/**
... ...
... ... @@ -337,7 +337,7 @@
<ul>
<li>
<input checked name="juangroup" type="radio" value="">
<label>直接输入优惠码: </label>
<label>直接输入优惠码: </label>
<input type="text" class="textbox" id="juancode" />
</li>
</ul>
... ...
... ... @@ -269,7 +269,7 @@
<ul>
<li>
<input name="juangroup" type="radio" value="">
<label>直接输入优惠码: </label>
<label>直接输入优惠码: </label>
<input type="text" class="textbox" id="juancode" />
</li>
{{#each juanlist}}
... ...
... ... @@ -269,7 +269,7 @@
<ul>
<li>
<input name="juangroup" type="radio" value="">
<label>直接输入优惠码: </label>
<label>直接输入优惠码: </label>
<input type="text" class="textbox" id="juancode" />
</li>
{{#each juanlist}}
... ...
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
... ... @@ -772,7 +772,6 @@ $('.to-play input.submit').click(function() {
redEnvelopes = $('.use-envelopes input:checked').attr('data-use'),
$juangroupInput = $('.play-juan.is-select input[name="juangroup"]:checked'),
codeVal = $juangroupInput.val(),
promotionVal = $juangroupInput.closest('li').find('#juancode').val();
juanCode = !!codeVal ? codeVal : $juangroupInput.closest('li').find('#juancode').val();
$loading.show();
... ... @@ -798,7 +797,6 @@ $('.to-play input.submit').click(function() {
paymentType: paymentType,
remark: remark,
couponCode: juanCode,
promotionCode: promotionVal,
yohoCoin: yohoCoin,
isPreContact: ytoTrue(isPreContact),
isPrintPrice: ytoTrue(isPrintPrice),
... ...
... ... @@ -370,19 +370,16 @@ var Order = {
var expressVal = $('.express-list input[name="carriagegroup"]:checked').val();
var biVal = $('#biprice.is-select').val();
var codeVal = $juangroupInput.val();
var promotionVal = $juangroupInput.closest('li').find('#juancode').val();
var cartType = $('.address-manage').attr('cart-type');
var redEnvelopes = $('.use-envelopes input:checked').attr('data-use');
var resultData;
codeVal = codeVal ? codeVal : $juangroupInput.closest('li').find('#juancode').val();
resultData = {
cartType: cartType,
deliveryWay: expressVal,
couponCode: codeVal,
promotionCode: promotionVal,
yohoCoin: biVal
//redEnvelopes: e.$useEnvelopesInput.length > 0 ? ~~e.$hasEnvelopes.text().substring(1) : '0'
... ...
{
"name": "web-yohobuy",
"version": "0.0.27",
"version": "0.0.28",
"description": "web yohobuy static",
"keywords": [],
"homepage": "",
... ...
... ... @@ -283,7 +283,10 @@ class PayModel
$paymentParameter = $alipayToken;
}
$reqParams = new Reqparams($orderCode, $totalFee, '有货订单号:' . $orderCode, '', $orderDetail['data']['create_time'], $paymentParameter, $isTest, $uid, $userName);
$reqParams = new Reqparams(
$orderCode, $totalFee, '有货订单号:' . $orderCode, '', $orderDetail['data']['create_time'],
$paymentParameter, $isTest, $uid, $userName, $orderDetail['data']['pay_expire']
);
$reqPars = $payService->getPayRequestPars($reqParams);
if (empty($reqPars)) {
$result['error'] = true;
... ...
... ... @@ -325,14 +325,28 @@ class PaymentModel
$input->SetBody('有货订单号:' . $orderCode);
$input->SetOut_trade_no('YOHOBuy_' . $orderCode); // 商户订单号
$input->SetTotal_fee($totalFee);
$input->SetTime_start(date("YmdHis"));
$input->SetTime_expire(date("YmdHis", time() + 600));
//到期时间
if (!empty($orderDetail['data']['pay_expire']) && ($payExpireTime = strtotime($orderDetail['data']['pay_expire']))) {
$payExpireTime = $payExpireTime;
} else {
$payExpireTime = time();
}
$input->SetTime_start(date("YmdHis", strtotime('-2 hours', $payExpireTime)));
//最短失效时间间隔必须大于5分钟 [https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_1]
$input->SetTime_expire(date("YmdHis", $payExpireTime + 300));
$input->SetTrade_type("NATIVE");
$input->SetProduct_id($orderCode);
$notify = new WxPayNativePay();
$payResult = $notify->GetPayUrl($input);
//错误信息,EQ:超时
if (!empty($payResult['return_code']) && $payResult['return_code'] === 'FAIL') {
self::$code['message'] = $payResult['return_msg'];
break;
}
if ($payResult['result_code'] === 'FAIL') {
//错误信息,EQ:多次涮新
if (!empty($payResult['result_code']) && $payResult['result_code'] === 'FAIL') {
self::$code['message'] = $payResult['err_code_des'];
break;
}
... ... @@ -522,7 +536,10 @@ class PaymentModel
$paymentParameter = $alipayToken;
}
$reqParams = new Reqparams($orderCode, $totalFee, '有货订单号:' . $orderCode, '', $orderDetail['data']['create_time'], $paymentParameter, $isTest, $uid, $userName);
$reqParams = new Reqparams(
$orderCode, $totalFee, '有货订单号:' . $orderCode, '', $orderDetail['data']['create_time'],
$paymentParameter, $isTest, $uid, $userName, $orderDetail['data']['pay_expire']
);
$reqPars = $payService->getPayRequestPars($reqParams);
UdpLog::info(
"【支付-参数】,function:getPayData,orderCode:{$orderCode},接口返回",
... ...
... ... @@ -465,31 +465,6 @@ class IndexController extends WebAction
}
while (false);
// $result = CartModel::orderSub($uid, $addressId, $cartType, $deliveryTime, $deliveryWay, $invoiceTitle, $invoiceId, $paymentId, $paymentType, $remark, $couponCode, $yohoCoin);
//
// 记录下单异常的数据
if (empty($result)) {
$message = 'uid:' . $uid . ',addressId:' . $addressId . ',cartType:' . $cartType . ',deliveryTime:' . $deliveryTime
. ',deliveryWay:' . $deliveryWay . 'invoiceTitle:' . $invoiceTitle . ',invoiceId:' . $invoiceId . ',yohoCoin:' . $yohoCoin
. ',paymentId:' . $paymentId . ',paymentType:' . $paymentType . ',remark:' . $remark . ',couponCode:' . $couponCode . "\n";
UdpLog::info('【下单】下单异常数据','message:'.$message,'返回:'.json_encode($result));
}
// // 返回数据
// else {
// // 提交成功清除Cookie
// $this->setCookie('order-info', null);
//
// $this->echoJson($result);
// }
//
// if ($uid && !empty($result['data'])) {
// try {
// UnionTrans::set($uid, $result['data']['order_code'], $result['data']['order_amount']);
// } catch (Exception $e) {
// // do nothing
// }
// }
$this->echoJson($result);
}
... ...
... ... @@ -50,7 +50,7 @@ application.template.ext = ".phtml"
application.assets.path = ROOT_PATH "/assets/web"
; 应用的版本号
application.version = "0.0.27"
application.version = "0.0.28"
; 网站SEO信息
application.seo.title = "YOHO!有货 | 年轻人潮流购物中心,中国潮流购物风向标,官方授权正品保证"
... ...
... ... @@ -50,7 +50,7 @@ application.template.ext = ".phtml"
application.assets.path = ROOT_PATH "/assets/web"
; 应用的版本号
application.version = "0.0.27"
application.version = "0.0.28"
; 网站SEO信息
application.seo.title = "YOHO!有货 | 年轻人潮流购物中心,中国潮流购物风向标,官方授权正品保证"
... ...
... ... @@ -50,7 +50,7 @@ application.template.ext = ".phtml"
application.assets.path = ROOT_PATH "/assets/web"
; 应用的版本号
application.version = "0.0.27"
application.version = "0.0.28"
; 网站SEO信息
application.seo.title = "YOHO!有货 | 年轻人潮流购物中心,中国潮流购物风向标,官方授权正品保证"
... ...
... ... @@ -50,7 +50,7 @@ application.template.ext = ".phtml"
application.assets.path = ROOT_PATH "/assets/web"
; 应用的版本号
application.version = "0.0.27"
application.version = "0.0.28"
; 网站SEO信息
application.seo.title = "YOHO!有货 | 年轻人潮流购物中心,中国潮流购物风向标,官方授权正品保证"
... ...