提交 01dd8a14 编写于 作者: D devil

线下支付逻辑优化

上级 59070118
......@@ -219,6 +219,9 @@
{{else /}}
<span class="block am-text-xs">{{$v.pay_status_name}}</span>
{{/if}}
{{if !empty($v['is_under_line_text'])}}
<span class="block am-text-danger am-text-xs">{{$v.is_under_line_text}}</p>
{{/if}}
{{if $v['user_is_delete_time'] neq 0}}
<span class="block am-text-warning am-text-xs">用户已删除</span>
{{/if}}
......
......@@ -266,14 +266,12 @@ class Order extends Common
$this->assign('to_title', '我的订单');
// 状态
$this->assign('msg', $ret['msg']);
if($ret['code'] == 0)
{
$this->assign('msg', '支付成功');
return $this->fetch('public/tips_success');
} else {
$this->assign('msg', $ret['msg']);
return $this->fetch('public/tips_error');
}
return $this->fetch('public/tips_error');
}
/**
......
......@@ -25,7 +25,7 @@
<!-- 进度环节 -->
{{if !in_array($data['status'], [5,6])}}
<ul class="progress">
<li class="steps-success {{if $data['status'] LT 2}} current{{/if}}">
<li class="steps-success {{if $data['status'] lt 2}} current{{/if}}">
<p class="digital">
<i class="am-icon-check"></i>
</p>
......@@ -36,10 +36,10 @@
{{/if}}
</div>
</li>
<li class="{{if $data['status'] GT 1}}steps-success{{/if}} {{if $data['status'] EQ 2}} current{{/if}}">
<li class="{{if $data['status'] gt 1}}steps-success{{/if}} {{if $data['status'] eq 2}} current{{/if}}">
<i class="step"></i>
<p class="digital">
{{if $data['status'] GT 1}}<i class="am-icon-check"></i>{{else /}}2{{/if}}
{{if $data['status'] gt 1}}<i class="am-icon-check"></i>{{else /}}2{{/if}}
</p>
<div class="base">
<p class="title">付款</p>
......@@ -48,10 +48,10 @@
{{/if}}
</div>
</li>
<li class="{{if $data['status'] GT 2}}steps-success{{/if}} {{if $data['status'] EQ 3}} current{{/if}}">
<li class="{{if $data['status'] gt 2}}steps-success{{/if}} {{if $data['status'] eq 3}} current{{/if}}">
<i class="step"></i>
<p class="digital">
{{if $data['status'] GT 2}}<i class="am-icon-check"></i>{{else /}}3{{/if}}
{{if $data['status'] gt 2}}<i class="am-icon-check"></i>{{else /}}3{{/if}}
</p>
<div class="base">
<p class="title">卖家发货</p>
......@@ -60,10 +60,10 @@
{{/if}}
</div>
</li>
<li class="{{if $data['status'] GT 3}}steps-success{{/if}} {{if $data['status'] EQ 4 and $data['user_is_comments'] EQ 0}} current{{/if}}">
<li class="{{if $data['status'] gt 3}}steps-success{{/if}} {{if $data['status'] eq 4 and $data['user_is_comments'] eq 0}} current{{/if}}">
<i class="step"></i>
<p class="digital">
{{if $data['status'] GT 3}}<i class="am-icon-check"></i>{{else /}}4{{/if}}
{{if $data['status'] gt 3}}<i class="am-icon-check"></i>{{else /}}4{{/if}}
</p>
<div class="base">
<p class="title">确认收货</p>
......@@ -72,10 +72,10 @@
{{/if}}
</div>
</li>
<li class="{{if $data['user_is_comments'] GT 0}}steps-success{{/if}} {{if $data['user_is_comments'] GT 0}} current{{/if}}">
<li class="{{if $data['user_is_comments'] gt 0}}steps-success{{/if}} {{if $data['user_is_comments'] gt 0}} current{{/if}}">
<i class="step"></i>
<p class="digital">
{{if $data['user_is_comments'] GT 0}}<i class="am-icon-check"></i>{{else /}}5{{/if}}
{{if $data['user_is_comments'] gt 0}}<i class="am-icon-check"></i>{{else /}}5{{/if}}
</p>
<div class="base">
<p class="title">评价</p>
......@@ -118,7 +118,18 @@
{{if !empty($data.payment_name)}}
<div class="items am-cf">
<div class="items-title am-fl">支付方式:</div>
<div class="items-detail am-fl">{{$data.payment_name}}</div>
<div class="items-detail am-fl">
<span>{{$data.payment_name}}</span>
{{if !empty($data['is_under_line_text'])}}
<span class="am-badge am-badge-danger am-radius">{{$data.is_under_line_text}}</span>
{{/if}}
</div>
</div>
{{/if}}
{{if !empty($data.total_price)}}
<div class="items am-cf">
<div class="items-title am-fl">订单总价:</div>
<div class="items-detail am-fl">{{$data.total_price}}</div>
</div>
{{/if}}
{{if !empty($data.buy_number_count)}}
......@@ -192,7 +203,7 @@
</div>
<div class="base-right">
<div class="status">
{{if $data['status'] EQ 4}}
{{if $data['status'] eq 4}}
<i class="am-icon-check-circle icon-success am-fl"></i>
{{else /}}
<i class="am-icon-info-circle icon-tips am-fl"></i>
......@@ -208,7 +219,7 @@
<button type="button" class="am-btn am-btn-danger am-btn-xs am-radius am-icon-paint-brush submit-ajax submit-cancel" data-url="{{:MyUrl('index/order/cancel')}}" data-id="{{$data.id}}" data-view="reload"> 取消</button>
{{/if}}
{{if in_array($data['status'], [1])}}
<button class="am-btn am-btn-primary am-btn-xs am-radius am-icon-paypal submit-pay" data-id="{{$data.id}}" data-payment-id="{{$data.payment_id}}" data-am-modal="{target: '#order-pay-popup'}" data-is-auto="{{if isset($params['is_pay_auto']) and $params['is_pay_auto'] eq 1}}1{{else /}}0{{/if}}" data-is-pay="{{if isset($params['is_pay_submit']) and $params['is_pay_submit'] eq 1}}1{{else /}}0{{/if}}"> 支付</button>
<button class="am-btn am-btn-primary am-btn-xs am-radius am-icon-paypal submit-pay" data-id="{{$data.id}}" data-payment-id="{{$data.payment_id}}" data-am-modal="{target: '#order-pay-popup'}" data-is-auto="{{if isset($params['is_pay_auto']) and $params['is_pay_auto'] eq 1}}1{{else /}}0{{/if}}" data-is-pay="{{if isset($params['is_pay_submit']) and $params['is_pay_submit'] eq 1}}1{{else /}}0{{/if}}"> {{if $data['is_under_line'] eq 1}}切换{{/if}}支付</button>
{{/if}}
{{if in_array($data['status'], [3])}}
<button type="button" class="am-btn am-btn-secondary am-btn-xs am-radius am-icon-check-circle-o submit-ajax submit-confirm" data-url="{{:MyUrl('index/order/collect')}}" data-id="{{$data.id}}" data-view="reload" data-msg="请仔细确认已收到货物、确认继续吗?"> 收货</button>
......@@ -241,6 +252,22 @@
}
{{/php}}
</div>
<!-- 线下支付方式提示信息 -->
{{if in_array($data['status'], [1]) and $data['is_under_line'] eq 1}}
<div class="am-alert am-alert-warning" data-am-alert>
当前为线下支付方式[ <strong class="am-text-success">{{$data.payment_name}}</strong> ]、需管理员确认后方可生效,如需其它支付可以切换支付重新发起支付。
</div>
{{/if}}
<!-- 待发货提示信息 -->
{{if in_array($data['status'], [2])}}
<div class="am-alert" data-am-alert>
货物正在仓库打包、出库中...
</div>
{{/if}}
<!-- 快递信息 -->
{{if $data['order_model'] eq 0 and in_array($data['status'], [3,4])}}
<div class="logistics">
<div class="items am-cf">
......
......@@ -210,7 +210,10 @@
{{/if}}
</td>
<td class="row-status" rowspan="{{$order.items_count}}">
{{$order.status_name}}
<span>{{$order.status_name}}</span>
{{if !empty($order['is_under_line_text'])}}
<p class="am-text-danger am-margin-bottom-xs">{{$order.is_under_line_text}}</p>
{{/if}}
<div class="base-operate">
<a class="block" href="{{:MyUrl('index/order/detail', ['id'=>$order['id']])}}" target="_blank">订单详情</a>
</div>
......
......@@ -15,6 +15,7 @@ use think\facade\Hook;
use app\service\GoodsService;
use app\service\UserService;
use app\service\ResourcesService;
use app\service\PaymentService;
use app\service\ConfigService;
/**
......@@ -924,6 +925,20 @@ class BuyService
}
}
// 支付方式
$payment_id = 0;
$is_under_line = 0;
if(!empty($params['payment_id']))
{
$payment = PaymentService::PaymentList(['where'=>['id'=>intval($params['payment_id'])]]);
if(empty($payment[0]))
{
return DataReturn('支付方式有误', -1);
}
$payment_id = $payment[0]['id'];
$is_under_line = in_array($payment[0]['payment'], config('shopxo.under_line_list')) ? 1 : 0;
}
// 订单主信息
$order = [
'order_no' => date('YmdHis').GetNumberCode(6),
......@@ -935,10 +950,11 @@ class BuyService
'price' => ($buy['data']['base']['total_price'] <= 0.00) ? 0.00 : $buy['data']['base']['total_price'],
'total_price' => ($buy['data']['base']['actual_price'] <= 0.00) ? 0.00 : $buy['data']['base']['actual_price'],
'extension_data' => empty($buy['data']['extension_data']) ? '' : json_encode($buy['data']['extension_data']),
'payment_id' => isset($params['payment_id']) ? intval($params['payment_id']) : 0,
'payment_id' => $payment_id,
'buy_number_count' => array_sum(array_column($buy['data']['goods'], 'stock')),
'client_type' => (APPLICATION_CLIENT_TYPE == 'pc' && IsMobile()) ? 'h5' : APPLICATION_CLIENT_TYPE,
'order_model' => $site_model,
'is_under_line' => $is_under_line,
'add_time' => time(),
];
if($order['status'] == 1)
......
......@@ -87,22 +87,25 @@ class OrderService
return DataReturn('支付方式有误', -1);
}
// 更新订单支付方式
// 更新订单支付方式信息
if(!empty($params['payment_id']) && $params['payment_id'] != $order['payment_id'])
{
Db::name('Order')->where(['id'=>$order['id']])->update(['payment_id'=>$payment_id, 'upd_time'=>time()]);
Db::name('Order')->where(['id'=>$order['id']])->update([
'payment_id' => $payment_id,
'is_under_line' => in_array($payment[0]['payment'], config('shopxo.under_line_list')) ? 1 : 0,
'upd_time' => time(),
]);
}
// 金额为0直接支付成功
// 金额为0、走直接支付成功
if($order['total_price'] <= 0.00)
{
// 非线上支付处理
$params['user']['user_name_view'] = '用户-'.$params['user']['user_name_view'];
$pay_result = self::OrderPaymentUnderLine([
$pay_result = self::OrderDirectSuccess([
'order' => $order,
'payment' => $payment[0],
'user' => $params['user'],
'subject' => $params,
'params' => $params,
]);
if($pay_result['code'] == 0)
{
......@@ -190,7 +193,7 @@ class OrderService
$ret = (new $pay_name($payment[0]['config']))->Pay($pay_data);
if(isset($ret['code']) && $ret['code'] == 0)
{
// 非线上支付处理
// 线下支付处理
if(in_array($payment[0]['payment'], config('shopxo.under_line_list')))
{
$params['user']['user_name_view'] = '用户-'.$params['user']['user_name_view'];
......@@ -203,18 +206,32 @@ class OrderService
if($pay_result['code'] != 0)
{
return $pay_result;
} else {
$ret['msg'] = $pay_result['msg'];
}
}
// 支付信息返回
$ret['data'] = [
// 是否为在线支付类型
'is_online_pay' => ($payment[0]['payment'] == 'WalletPay' || in_array($payment[0]['payment'], config('shopxo.under_line_list'))) ? 0 : 1,
// 支付类型(0正常线上支付、1线下支付、2钱包支付)
'is_payment_type' => 0,
// 支付模块处理数据
'data' => $ret['data'],
];
// 是否线下支付
if(in_array($payment[0]['payment'], config('shopxo.under_line_list')))
{
$ret['data']['is_payment_type'] = 1;
} else {
// 是否钱包支付
if($payment[0]['payment'] == 'WalletPay')
{
$ret['data']['is_payment_type'] = 2;
}
}
return $ret;
}
return DataReturn(empty($ret['msg']) ? '支付接口异常' : $ret['msg'], -1);
......@@ -278,28 +295,29 @@ class OrderService
return DataReturn('支付方式有误', -1);
}
// 非线上支付处理
return self::OrderPaymentUnderLine([
// 线下支付处理
return self::OrderPaymentUnderLineSuccess([
'order' => $order,
'payment' => $payment[0],
'user' => $params['user'],
'subject' => $params,
'params' => $params,
]);
}
/**
* [OrderPaymentUnderLine 线下支付处理]
* 订单金额为小于等于0直接成功
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @datetime 2018-10-05T22:40:57+0800
* @date 2020-04-07
* @desc description
* @param [array] $params [输入参数]
*/
private static function OrderPaymentUnderLine($params = [])
private static function OrderDirectSuccess($params = [])
{
if(!empty($params['order']) && !empty($params['payment']) && !empty($params['user']))
{
if(in_array($params['payment']['payment'], config('shopxo.under_line_list')) || $params['order']['total_price'] <= 0.00)
if($params['order']['total_price'] <= 0.00)
{
// 支付处理
$pay_params = [
......@@ -313,11 +331,64 @@ class OrderService
],
];
return self::OrderPayHandle($pay_params);
} else {
}
return DataReturn('订单金额有误、请正常发起支付', -1);
}
return DataReturn('支付传参有误', -1);
}
/**
* 线下支付方式、直接支付成功
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2020-04-07
* @desc description
* @param [array] $params [输入参数]
*/
private static function OrderPaymentUnderLineSuccess($params = [])
{
if(!empty($params['order']) && !empty($params['payment']) && !empty($params['user']))
{
if(in_array($params['payment']['payment'], config('shopxo.under_line_list')))
{
// 支付处理
$pay_params = [
'order' => $params['order'],
'payment' => $params['payment'],
'pay' => [
'trade_no' => '',
'subject' => isset($params['params']['subject']) ? $params['params']['subject'] : '订单支付',
'buyer_user' => $params['user']['user_name_view'],
'pay_price' => $params['order']['total_price'],
],
];
return self::OrderPayHandle($pay_params);
}
return DataReturn('仅线下支付方式处理', -1);
}
return DataReturn('支付传参有误', -1);
}
/**
* 线下支付处理
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @datetime 2018-10-05T22:40:57+0800
* @param [array] $params [输入参数]
*/
private static function OrderPaymentUnderLine($params = [])
{
if(!empty($params['order']) && !empty($params['payment']) && !empty($params['user']))
{
if(in_array($params['payment']['payment'], config('shopxo.under_line_list')))
{
return DataReturn('提交成功、待管理员确认', 0);
}
return DataReturn('仅线下支付方式处理', -1);
}
return DataReturn('无需处理', 0);
return DataReturn('支付传参有误', -1);
}
/**
......@@ -370,8 +441,8 @@ class OrderService
$where = ['order_no'=>$ret['data']['out_trade_no'], 'is_delete_time'=>0, 'user_is_delete_time'=>0];
$order = Db::name('Order')->where($where)->find();
// 非线上支付处理
self::OrderPaymentUnderLine([
// 线下支付方式处理
return self::OrderPaymentUnderLine([
'order' => $order,
'payment' => $payment[0],
'user' => $params['user'],
......@@ -506,15 +577,20 @@ class OrderService
$detail = '订单支付成功,金额'.PriceBeautify($params['order']['total_price']).'元';
MessageService::MessageAdd($params['order']['user_id'], '订单支付', $detail, 1, $params['order']['id']);
// 更新订单状态
$upd_data = array(
// 订单更新数据
$upd_data = [
'status' => 2,
'pay_status' => 1,
'pay_price' => $pay_price,
'payment_id' => $params['payment']['id'],
'pay_time' => time(),
'upd_time' => time(),
);
];
// 是否线下支付
$upd_data['is_under_line'] = in_array($params['payment']['payment'], config('shopxo.under_line_list')) ? 1 : 0;
// 更新订单状态
if(Db::name('Order')->where(['id'=>$params['order']['id']])->update($upd_data))
{
// 添加状态日志
......@@ -807,7 +883,10 @@ class OrderService
$v['express_name'] = ExpressService::ExpressName($v['express_id']);
// 支付方式
$v['payment_name'] = ($v['status'] <= 1) ? null : PaymentService::OrderPaymentName($v['id']);
$v['payment_name'] = PaymentService::OrderPaymentName($v['id'], $v['payment_id']);
// 线下支付 icon 名称
$v['is_under_line_text'] = ($v['is_under_line'] == 1) ? '线下支付' : null;
// 创建时间
$v['add_time_time'] = date('Y-m-d H:i:s', $v['add_time']);
......@@ -918,7 +997,7 @@ class OrderService
}
}
return DataReturn('处理成功', 0, $data);
return DataReturn('success', 0, $data);
}
/**
......@@ -1659,7 +1738,7 @@ class OrderService
];
}
return DataReturn('处理成功', 0, $result);
return DataReturn('success', 0, $result);
}
/**
......
......@@ -238,10 +238,20 @@ class PaymentService
* @date 2018-09-19
* @desc description
* @param [int] $order_id [订单id]
* @param [int] $payment_id [支付方式id]
*/
public static function OrderPaymentName($order_id = 0)
public static function OrderPaymentName($order_id = 0, $payment_id = 0)
{
return empty($order_id) ? null : Db::name('PayLog')->where(['order_id'=>intval($order_id)])->value('payment_name');
$name = null;
if(!empty($order_id))
{
$name = Db::name('PayLog')->where(['order_id'=>intval($order_id)])->value('payment_name');
if(empty($anme) && !empty($payment_id))
{
$name = Db::name('Payment')->where(['id'=>intval($payment_id)])->value('name');
}
}
return $name;
}
/**
......
......@@ -44,7 +44,7 @@ class ToutiaoService
// 线上支付信息处理
$order_info = [];
$service = 0;
if($ret['data']['is_online_pay'] == 1)
if($ret['data']['is_payment_type'] == 0)
{
// 配置信息
$merchant_id = MyC('common_app_mini_toutiao_pay_merchant_id');
......@@ -110,7 +110,7 @@ class ToutiaoService
$result = [
'order_info' => $order_info,
'service' => $service,
'is_online_pay' => $ret['data']['is_online_pay'],
'is_payment_type' => $ret['data']['is_payment_type'],
];
return DataReturn('success', 0, $result);
}
......
......@@ -115,7 +115,6 @@ return array (
0 => 'app\\plugins\\excellentbuyreturntocash\\Hook',
1 => 'app\\plugins\\coupon\\Hook',
2 => 'app\\plugins\\distribution\\Hook',
3 => 'app\\plugins\\neworderemail\\Hook',
),
'plugins_view_goods_detail_panel_bottom' =>
array (
......
......@@ -15,7 +15,7 @@
return [
// 开发模式
'is_develop' => true,
'is_develop' => false,
// 默认编码
'default_charset' => 'utf-8',
......
......@@ -67,7 +67,7 @@ App({
// 请求地址
request_url: "{{request_url}}",
// request_url: 'http://shopxo.com/',
request_url: 'http://shopxo.com/',
// request_url: 'http://dev.shopxo.net/',
// 基础信息
......@@ -658,6 +658,60 @@ App({
}
},
/**
* alert确认框
* title [string] 标题(默认空)
* msg [string] 提示信息,必传
* is_show_cancel [int] 是否显示取消按钮(默认显示 0否, 1|undefined是)
* cancel_text [string] 取消按钮文字(默认 取消)
* cancel_color [string] 取消按钮的文字颜色,必须是 16 进制格式的颜色字符串(默认 #000000)
* confirm_text [string] 确认按钮文字(默认 确认)
* confirm_color [string] 确认按钮的文字颜色,必须是 16 进制格式的颜色字符串(默认 #000000)
* object [boject] 回调操作对象,点击确认回调参数1,取消回调0
* method [string] 回调操作对象的函数
*/
alert(e)
{
var msg = e.msg || null;
if (msg != null)
{
var title = e.title || '';
var is_show_cancel = (e.is_show_cancel == 0) ? false : true;
var cancel_text = e.cancel_text || '取消';
var confirm_text = e.confirm_text || '确认';
var cancel_color = e.cancel_color || '';
var confirm_color = e.confirm_color || '';
if(is_show_cancel)
{
my.confirm({
title: title,
content: msg,
confirmButtonText: confirm_text,
cancelButtonText: cancel_text,
success: (res) => {
if ((e.object || null) != null && typeof e.object === 'object' && (e.method || null) != null) {
e.object[e.method](res.confirm ? 1 : 0);
}
},
});
} else {
my.alert({
title: title,
content: msg,
buttonText: confirm_text,
success: (res) => {
if ((e.object || null) != null && typeof e.object === 'object' && (e.method || null) != null) {
e.object[e.method](1);
}
}
});
}
} else {
self.showToast('提示信息为空 alert');
}
},
// 拨打电话
call_tel(value) {
if ((value || null) != null) {
......
......@@ -65,7 +65,7 @@
"pages/plugins/wallet/user-cash-detail/user-cash-detail"
],
"window": {
"defaultTitle": "{{application_title}}",
"defaultTitle": "shopxo",
"titleBarColor": "#d2364c",
"backgroundColor": "#f5f5f5"
},
......
......@@ -56,7 +56,7 @@ Page({
{name: "优惠金额", value: data.data.preferential_price || ''},
{name: "增加金额", value: data.data.increase_price || '' },
{name: "支付金额", value: data.data.pay_price || ''},
{name: "支付方式", value: data.data.payment_name || ''},
{name: "支付方式", value: (data.data.payment_name || '') + ((data.data.is_under_line_text || null) == null ? '' : '' + data.data.is_under_line_text +'')},
{name: "快递公司", value: data.data.express_name || ''},
{name: "快递单号", value: data.data.express_number || ''},
{name: "用户留言", value: data.data.user_note || ''},
......
......@@ -12,7 +12,9 @@
<view class="list-item bg-white spacing-mb" a:if="{{data_list.length > 0}}" a:for="{{data_list}}">
<view class="item-base oh br-b">
<text class="cr-666">{{item.add_time}}</text>
<text class="fr cr-main">{{item.status_name}}</text>
<text class="fr cr-main">
{{item.status_name}}<text a:if="{{(item.is_under_line_text || null) != null}}">({{item.is_under_line_text}})</text>
</text>
</view>
<view a:for="{{item.items}}" a:for-item="detail" class="goods-item br-b-dashed oh">
<navigator url="/pages/user-order-detail/user-order-detail?id={{item.id}}" hover-class="none">
......@@ -36,7 +38,7 @@
<view class="item-describe tr cr-666">{{item.describe}}</view>
<view a:if="{{item.status == 1 || item.status == 3 || (item.status == 4 && item.user_is_comments == 0) || (item.status == 2 && item.order_model != 2)}}" class="item-operation tr br-t">
<button a:if="{{item.status <= 1}}" class="submit-cancel" type="default" size="mini" onTap="cancel_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">取消</button>
<button a:if="{{item.status == 1}}" class="submit-pay cr-666" type="default" size="mini" onTap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">支付</button>
<button a:if="{{item.status == 1}}" class="submit-pay cr-666" type="default" size="mini" onTap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">{{item.is_under_line == 1 ? '切换' : ''}}支付</button>
<button a:if="{{item.status == 2 && item.order_model != 2}}" class="submit-rush cr-666" type="default" size="mini" onTap="rush_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">催催</button>
<button a:if="{{item.status == 3}}" class="submit-success cr-666" type="default" size="mini" onTap="collect_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">收货</button>
<button a:if="{{item.status == 4 && item.user_is_comments == 0}}" class="submit-success cr-666 br" type="default" size="mini" onTap="comments_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">评论</button>
......
......@@ -220,6 +220,7 @@ Page({
// 支付方法
pay_handle(order_id, index) {
var self = this;
// 加载loding
my.showLoading({ content: "请求中..." });
......@@ -235,29 +236,22 @@ Page({
success: res => {
my.hideLoading();
if (res.data.code == 0) {
// 是否在线支付,非在线支付则支付成功
if (res.data.data.is_online_pay == 0) {
var temp_data_list = this.data.data_list;
temp_data_list[index]['status'] = 2;
temp_data_list[index]['status_name'] = '待发货';
this.setData({ data_list: temp_data_list });
app.showToast('支付成功', 'success');
} else {
// 支付方式类型
switch (res.data.data.is_payment_type) {
// 正常线上支付
case 0 :
my.tradePay({
tradeNO: res.data.data.data,
success: res => {
// 数据设置
if (res.resultCode == 9000) {
var temp_data_list = this.data.data_list;
temp_data_list[index]['status'] = 2;
temp_data_list[index]['status_name'] = '待发货';
this.setData({ data_list: temp_data_list });
// 数据设置
self.order_item_pay_success_handle(index);
// 跳转支付页面
my.navigateTo({
url:
"/pages/paytips/paytips?code=9000&total_price=" +
this.data.data_list[index]['total_price']
self.data.data_list[index]['total_price']
});
} else {
app.showToast('支付失败');
......@@ -267,6 +261,25 @@ Page({
app.showToast('唤起支付模块失败');
}
});
break;
// 线下支付
case 1 :
var temp_data_list = self.data.data_list;
temp_data_list[index]['is_under_line'] = 1;
self.setData({ data_list: temp_data_list });
app.alert({ msg: res.data.msg, is_show_cancel: 0});
break;
// 钱包支付
case 2 :
self.order_item_pay_success_handle(index);
app.showToast('支付成功', 'success');
break;
// 默认
default :
app.showToast('支付类型有误');
}
} else {
app.showToast(res.data.msg);
......@@ -279,6 +292,32 @@ Page({
});
},
// 支付成功数据设置
order_item_pay_success_handle(index) {
// 数据设置
var temp_data_list = this.data.data_list;
switch (parseInt(temp_data_list[index]['order_model'])) {
// 销售模式
case 0:
temp_data_list[index]['status'] = 2;
temp_data_list[index]['status_name'] = '待发货';
break;
// 自提模式
case 2:
temp_data_list[index]['status'] = 2;
temp_data_list[index]['status_name'] = '待取货';
break;
// 虚拟模式
case 3:
temp_data_list[index]['status'] = 3;
temp_data_list[index]['status_name'] = '待收货';
break;
}
this.setData({ data_list: temp_data_list });
},
// 取消
cancel_event(e) {
my.confirm({
......
......@@ -67,7 +67,7 @@ App({
// 请求地址
request_url: "{{request_url}}",
// request_url: 'http://shopxo.com/',
request_url: 'http://shopxo.com/',
// request_url: 'https://dev.shopxo.net/',
// 基础信息
......@@ -584,6 +584,49 @@ App({
}
},
/**
* alert确认框
* title [string] 标题(默认空)
* msg [string] 提示信息,必传
* is_show_cancel [int] 是否显示取消按钮(默认显示 0否, 1|undefined是)
* cancel_text [string] 取消按钮文字(默认 取消)
* cancel_color [string] 取消按钮的文字颜色,必须是 16 进制格式的颜色字符串(默认 #000000)
* confirm_text [string] 确认按钮文字(默认 确认)
* confirm_color [string] 确认按钮的文字颜色,必须是 16 进制格式的颜色字符串(默认 #000000)
* object [boject] 回调操作对象,点击确认回调参数1,取消回调0
* method [string] 回调操作对象的函数
*/
alert(e)
{
var msg = e.msg || null;
if (msg != null)
{
var title = e.title || '';
var is_show_cancel = (e.is_show_cancel == 0) ? false : true;
var cancel_text = e.cancel_text || '取消';
var confirm_text = e.confirm_text || '确认';
var cancel_color = e.cancel_color || '';
var confirm_color = e.confirm_color || '';
swan.showModal({
title: title,
content: msg,
showCancel: is_show_cancel,
cancelText: cancel_text,
cancelColor: cancel_color,
confirmText: confirm_text,
confirmColor: confirm_color,
success(res) {
if ((e.object || null) != null && typeof e.object === 'object' && (e.method || null) != null) {
e.object[e.method](res.confirm ? 1 : 0);
}
}
});
} else {
self.showToast('提示信息为空 alert');
}
},
/**
* 是否需要登录
* 是否需要绑定手机号码
......
......@@ -53,7 +53,7 @@ Page({
{name: "优惠金额", value: data.data.preferential_price || ''},
{name: "增加金额", value: data.data.increase_price || '' },
{name: "支付金额", value: data.data.pay_price || ''},
{name: "支付方式", value: data.data.payment_name || ''},
{name: "支付方式", value: (data.data.payment_name || '') + ((data.data.is_under_line_text || null) == null ? '' : '' + data.data.is_under_line_text +'')},
{name: "快递公司", value: data.data.express_name || ''},
{name: "快递单号", value: data.data.express_number || ''},
{name: "用户留言", value: data.data.user_note || ''},
......
......@@ -222,13 +222,10 @@ Page({
success: res => {
swan.hideLoading();
if (res.data.code == 0) {
// 是否在线支付,非在线支付则支付成功
if (res.data.data.is_online_pay == 0) {
// 数据设置
self.order_item_pay_success_handle(index);
app.showToast("支付成功", "success");
} else {
// 支付方式类型
switch (res.data.data.is_payment_type) {
// 正常线上支付
case 0 :
swan.requestPolymerPayment({
orderInfo: res.data.data.data,
success: function (res) {
......@@ -244,6 +241,25 @@ Page({
app.showToast('支付失败');
}
});
break;
// 线下支付
case 1 :
var temp_data_list = self.data.data_list;
temp_data_list[index]['is_under_line'] = 1;
self.setData({ data_list: temp_data_list });
app.alert({ msg: res.data.msg, is_show_cancel: 0});
break;
// 钱包支付
case 2 :
self.order_item_pay_success_handle(index);
app.showToast('支付成功', 'success');
break;
// 默认
default :
app.showToast('支付类型有误');
}
} else {
app.showToast(res.data.msg);
......
......@@ -12,7 +12,9 @@
<view class="list-item bg-white spacing-mb" s-if="data_list.length > 0" s-for="item, index in data_list" s-key="key">
<view class="item-base oh br-b">
<text class="cr-666">{{item.add_time}}</text>
<text class="fr cr-main">{{item.status_name}}</text>
<text class="fr cr-main">
{{item.status_name}}<text s-if="(item.is_under_line_text || null) != null">({{item.is_under_line_text}})</text>
</text>
</view>
<view s-for="detail, index in item.items" s-key="key" class="goods-item br-b-dashed oh">
<navigator url="/pages/user-order-detail/user-order-detail?id={{item.id}}" hover-class="none">
......@@ -36,7 +38,7 @@
<view class="item-describe tr cr-666">{{item.describe}}</view>
<view s-if="item.status == 1 || item.status == 3 || (item.status == 4 && item.user_is_comments == 0) || (item.status == 2 && item.order_model != 2)" class="item-operation tr br-t">
<button s-if="item.status <= 1" class="submit-cancel" type="default" size="mini" bindtap="cancel_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">取消</button>
<button s-if="item.status == 1" class="submit-pay cr-666 br" type="default" size="mini" bindtap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">支付</button>
<button s-if="item.status == 1" class="submit-pay cr-666 br" type="default" size="mini" bindtap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">{{item.is_under_line == 1 ? '切换' : ''}}支付</button>
<button s-if="item.status == 2 && item.order_model != 2" class="submit-rush cr-666 br" type="default" size="mini" bindtap="rush_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">催催</button>
<button s-if="item.status == 3" class="submit-success cr-666 br" type="default" size="mini" bindtap="collect_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">收货</button>
<button s-if="item.status == 4 && item.user_is_comments == 0" class="submit-success cr-666 br" type="default" size="mini" bindtap="comments_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">评论</button>
......
......@@ -555,6 +555,49 @@ App({
}
},
/**
* alert确认框
* title [string] 标题(默认空)
* msg [string] 提示信息,必传
* is_show_cancel [int] 是否显示取消按钮(默认显示 0否, 1|undefined是)
* cancel_text [string] 取消按钮文字(默认 取消)
* cancel_color [string] 取消按钮的文字颜色,必须是 16 进制格式的颜色字符串(默认 #000000)
* confirm_text [string] 确认按钮文字(默认 确认)
* confirm_color [string] 确认按钮的文字颜色,必须是 16 进制格式的颜色字符串(默认 #000000)
* object [boject] 回调操作对象,点击确认回调参数1,取消回调0
* method [string] 回调操作对象的函数
*/
alert(e)
{
var msg = e.msg || null;
if (msg != null)
{
var title = e.title || '';
var is_show_cancel = (e.is_show_cancel == 0) ? false : true;
var cancel_text = e.cancel_text || '取消';
var confirm_text = e.confirm_text || '确认';
var cancel_color = e.cancel_color || '';
var confirm_color = e.confirm_color || '';
qq.showModal({
title: title,
content: msg,
showCancel: is_show_cancel,
cancelText: cancel_text,
cancelColor: cancel_color,
confirmText: confirm_text,
confirmColor: confirm_color,
success(res) {
if ((e.object || null) != null && typeof e.object === 'object' && (e.method || null) != null) {
e.object[e.method](res.confirm ? 1 : 0);
}
}
});
} else {
self.showToast('提示信息为空 alert');
}
},
/**
* 是否需要登录
* 是否需要绑定手机号码
......
......@@ -54,7 +54,7 @@ Page({
{name: "优惠金额", value: data.data.preferential_price || ''},
{name: "增加金额", value: data.data.increase_price || '' },
{name: "支付金额", value: data.data.pay_price || ''},
{name: "支付方式", value: data.data.payment_name || ''},
{name: "支付方式", value: (data.data.payment_name || '') + ((data.data.is_under_line_text || null) == null ? '' : '' + data.data.is_under_line_text +'')},
{name: "快递公司", value: data.data.express_name || ''},
{name: "快递单号", value: data.data.express_number || ''},
{name: "用户留言", value: data.data.user_note || ''},
......
......@@ -234,13 +234,10 @@ Page({
success: res => {
qq.hideLoading();
if (res.data.code == 0) {
// 是否在线支付,非在线支付则支付成功
if (res.data.data.is_online_pay == 0) {
// 数据设置
self.order_item_pay_success_handle(index);
app.showToast("支付成功", "success");
} else {
// 支付方式类型
switch (res.data.data.is_payment_type) {
// 正常线上支付
case 0 :
qq.requestPayment({
package: res.data.data.data,
success: function(res) {
......@@ -257,6 +254,25 @@ Page({
app.showToast('支付失败');
}
});
break;
// 线下支付
case 1 :
var temp_data_list = self.data.data_list;
temp_data_list[index]['is_under_line'] = 1;
self.setData({ data_list: temp_data_list });
app.alert({ msg: res.data.msg, is_show_cancel: 0});
break;
// 钱包支付
case 2 :
self.order_item_pay_success_handle(index);
app.showToast('支付成功', 'success');
break;
// 默认
default :
app.showToast('支付类型有误');
}
} else {
app.showToast(res.data.msg);
......
......@@ -12,7 +12,9 @@
<view class="list-item bg-white spacing-mb" qq:if="{{data_list.length > 0}}" qq:for="{{data_list}}" qq:key="key">
<view class="item-base oh br-b">
<text class="cr-666">{{item.add_time}}</text>
<text class="fr cr-main">{{item.status_name}}</text>
<text class="fr cr-main">
{{item.status_name}}<text qq:if="{{(item.is_under_line_text || null) != null}}">{{item.is_under_line_text}}</text>
</text>
</view>
<view qq:for="{{item.items}}" qq:key="key" qq:for-item="detail" class="goods-item br-b-dashed oh">
<navigator url="/pages/user-order-detail/user-order-detail?id={{item.id}}" hover-class="none">
......@@ -36,7 +38,7 @@
<view class="item-describe tr cr-666">{{item.describe}}</view>
<view qq:if="{{item.status == 1 || item.status == 3 || (item.status == 4 && item.user_is_comments == 0) || (item.status == 2 && item.order_model != 2)}}" class="item-operation tr br-t">
<button qq:if="{{item.status <= 1}}" class="submit-cancel" type="default" size="mini" bindtap="cancel_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">取消</button>
<button qq:if="{{item.status == 1}}" class="submit-pay cr-666 br" type="default" size="mini" bindtap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">支付</button>
<button qq:if="{{item.status == 1}}" class="submit-pay cr-666 br" type="default" size="mini" bindtap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">{{item.is_under_line == 1 ? '切换' : ''}}支付</button>
<button qq:if="{{item.status == 2 && item.order_model != 2}}" class="submit-rush cr-666 br" type="default" size="mini" bindtap="rush_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">催催</button>
<button qq:if="{{item.status == 3}}" class="submit-success cr-666 br" type="default" size="mini" bindtap="collect_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">收货</button>
<button qq:if="{{item.status == 4 && item.user_is_comments == 0}}" class="submit-success cr-666 br" type="default" size="mini" bindtap="comments_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">评论</button>
......
......@@ -562,6 +562,47 @@ App({
}
},
/**
* alert确认框
* title [string] 标题(默认空)
* msg [string] 提示信息,必传
* is_show_cancel [int] 是否显示取消按钮(默认显示 0否, 1|undefined是)
* cancel_text [string] 取消按钮文字(默认 取消)
* cancel_color [string] 取消按钮的文字颜色,必须是 16 进制格式的颜色字符串(默认 #000000)
* confirm_text [string] 确认按钮文字(默认 确认)
* confirm_color [string] 确认按钮的文字颜色,必须是 16 进制格式的颜色字符串(默认 #000000)
* object [boject] 回调操作对象,点击确认回调参数1,取消回调0
* method [string] 回调操作对象的函数
*/
alert(e)
{
var msg = e.msg || null;
if (msg != null)
{
var title = e.title || '';
var is_show_cancel = (e.is_show_cancel == 0) ? false : true;
var cancel_text = e.cancel_text || '取消';
var confirm_text = e.confirm_text || '确认';
var cancel_color = e.cancel_color || '';
var confirm_color = e.confirm_color || '';
tt.showModal({
title: title,
content: msg,
showCancel: is_show_cancel,
cancelText: cancel_text,
confirmText: confirm_text,
success(res) {
if ((e.object || null) != null && typeof e.object === 'object' && (e.method || null) != null) {
e.object[e.method](res.confirm ? 1 : 0);
}
}
});
} else {
self.showToast('提示信息为空 alert');
}
},
/**
* 是否需要登录
* 是否需要绑定手机号码
......
......@@ -54,7 +54,7 @@ Page({
{name: "优惠金额", value: data.data.preferential_price || ''},
{name: "增加金额", value: data.data.increase_price || '' },
{name: "支付金额", value: data.data.pay_price || ''},
{name: "支付方式", value: data.data.payment_name || ''},
{name: "支付方式", value: (data.data.payment_name || '') + ((data.data.is_under_line_text || null) == null ? '' : '' + data.data.is_under_line_text +'')},
{name: "快递公司", value: data.data.express_name || ''},
{name: "快递单号", value: data.data.express_number || ''},
{name: "用户留言", value: data.data.user_note || ''},
......
......@@ -234,25 +234,17 @@ Page({
success: res => {
tt.hideLoading();
if (res.data.code == 0) {
// 是否在线支付,非在线支付则支付成功
if (res.data.data.is_online_pay == 0) {
var temp_data_list = this.data.data_list;
temp_data_list[index]['status'] = 2;
temp_data_list[index]['status_name'] = '待发货';
this.setData({ data_list: temp_data_list });
app.showToast("支付成功", "success");
} else {
// 支付方式类型
switch (res.data.data.is_payment_type) {
// 正常线上支付
case 0 :
tt.pay({
orderInfo: res.data.data.order_info,
service: res.data.data.service,
success(res) {
if (res.code == 0) {
// 数据设置
var temp_data_list = self.data.data_list;
temp_data_list[index]['status'] = 2;
temp_data_list[index]['status_name'] = '待发货';
self.setData({ data_list: temp_data_list });
self.order_item_pay_success_handle(index);
// 跳转支付页面
wx.navigateTo({
......@@ -268,6 +260,25 @@ Page({
app.showToast('调起收银台失败-'+res.data.code);
}
});
break;
// 线下支付
case 1 :
var temp_data_list = self.data.data_list;
temp_data_list[index]['is_under_line'] = 1;
self.setData({ data_list: temp_data_list });
app.alert({ msg: res.data.msg, is_show_cancel: 0});
break;
// 钱包支付
case 2 :
self.order_item_pay_success_handle(index);
app.showToast('支付成功', 'success');
break;
// 默认
default :
app.showToast('支付类型有误');
}
} else {
app.showToast(res.data.msg);
......
......@@ -12,7 +12,9 @@
<view class="list-item bg-white spacing-mb" tt:if="{{data_list.length > 0}}" tt:for="{{data_list}}" tt:key="key">
<view class="item-base oh br-b">
<text class="cr-666">{{item.add_time}}</text>
<text class="fr cr-main">{{item.status_name}}</text>
<text class="fr cr-main">
{{item.status_name}}<text tt:if="{{(item.is_under_line_text || null) != null}}">({{item.is_under_line_text}})</text>
</text>
</view>
<view tt:for="{{item.items}}" tt:key="key" tt:for-item="detail" class="goods-item br-b-dashed oh">
<navigator url="/pages/user-order-detail/user-order-detail?id={{item.id}}" hover-class="none">
......@@ -36,7 +38,7 @@
<view class="item-describe tr cr-666">{{item.describe}}</view>
<view tt:if="{{item.status == 1 || item.status == 3 || (item.status == 4 && item.user_is_comments == 0) || (item.status == 2 && item.order_model != 2)}}" class="item-operation tr br-t">
<button tt:if="{{item.status <= 1}}" class="submit-cancel" type="default" size="mini" bindtap="cancel_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">取消</button>
<button tt:if="{{item.status == 1}}" class="submit-pay cr-666 br" type="default" size="mini" bindtap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">支付</button>
<button tt:if="{{item.status == 1}}" class="submit-pay cr-666 br" type="default" size="mini" bindtap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">{{item.is_under_line == 1 ? '切换' : ''}}支付</button>
<button tt:if="{{item.status == 2 && item.order_model != 2}}" class="submit-rush cr-666 br" type="default" size="mini" bindtap="rush_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">催催</button>
<button tt:if="{{item.status == 3}}" class="submit-success cr-666 br" type="default" size="mini" bindtap="collect_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">收货</button>
<button tt:if="{{item.status == 4 && item.user_is_comments == 0}}" class="submit-success cr-666 br" type="default" size="mini" bindtap="comments_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">评论</button>
......
......@@ -54,7 +54,7 @@ Page({
{name: "优惠金额", value: data.data.preferential_price || ''},
{name: "增加金额", value: data.data.increase_price || '' },
{name: "支付金额", value: data.data.pay_price || ''},
{name: "支付方式", value: data.data.payment_name || ''},
{name: "支付方式", value: (data.data.payment_name || '') + ((data.data.is_under_line_text || null) == null ? '' : '' + data.data.is_under_line_text +'')},
{name: "快递公司", value: data.data.express_name || ''},
{name: "快递单号", value: data.data.express_number || ''},
{name: "用户留言", value: data.data.user_note || ''},
......
......@@ -234,20 +234,17 @@ Page({
success: res => {
wx.hideLoading();
if (res.data.code == 0) {
// 是否在线支付,非在线支付则支付成功
if (res.data.data.is_online_pay == 0) {
// 数据设置
self.order_item_pay_success_handle(index);
app.showToast("支付成功", "success");
} else {
// 支付方式类型
switch (res.data.data.is_payment_type) {
// 正常线上支付
case 0 :
wx.requestPayment({
timeStamp: res.data.data.data.timeStamp,
nonceStr: res.data.data.data.nonceStr,
package: res.data.data.data.package,
signType: res.data.data.data.signType,
paySign: res.data.data.data.paySign,
success: function(res) {
success: function (res) {
// 数据设置
self.order_item_pay_success_handle(index);
......@@ -261,6 +258,25 @@ Page({
app.showToast('支付失败');
}
});
break;
// 线下支付
case 1 :
var temp_data_list = self.data.data_list;
temp_data_list[index]['is_under_line'] = 1;
self.setData({ data_list: temp_data_list });
app.alert({ msg: res.data.msg, is_show_cancel: 0});
break;
// 钱包支付
case 2 :
self.order_item_pay_success_handle(index);
app.showToast('支付成功', 'success');
break;
// 默认
default :
app.showToast('支付类型有误');
}
} else {
app.showToast(res.data.msg);
......@@ -268,7 +284,7 @@ Page({
},
fail: () => {
wx.hideLoading();
app.showToast("服务器请求出错");
app.showToast('服务器请求出错');
}
});
},
......
......@@ -11,8 +11,10 @@
<view class="list-content">
<view class="list-item bg-white spacing-mb" wx:if="{{data_list.length > 0}}" wx:for="{{data_list}}" wx:key="key">
<view class="item-base oh br-b">
<text class="cr-666">{{item.add_time}}</text>
<text class="fr cr-main">{{item.status_name}}</text>
<text class="cr-666 fl">{{item.add_time}}</text>
<text class="fr cr-main">
{{item.status_name}}<text wx:if="{{(item.is_under_line_text || null) != null}}">({{item.is_under_line_text}})</text>
</text>
</view>
<view wx:for="{{item.items}}" wx:key="key" wx:for-item="detail" class="goods-item br-b-dashed oh">
<navigator url="/pages/user-order-detail/user-order-detail?id={{item.id}}" hover-class="none">
......@@ -36,7 +38,7 @@
<view class="item-describe tr cr-666">{{item.describe}}</view>
<view wx:if="{{item.status == 1 || item.status == 3 || (item.status == 4 && item.user_is_comments == 0) || (item.status == 2 && item.order_model != 2)}}" class="item-operation tr br-t">
<button wx:if="{{item.status <= 1}}" class="submit-cancel" type="default" size="mini" bindtap="cancel_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">取消</button>
<button wx:if="{{item.status == 1}}" class="submit-pay cr-666 br" type="default" size="mini" bindtap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">支付</button>
<button wx:if="{{item.status == 1}}" class="submit-pay cr-666 br" type="default" size="mini" bindtap="pay_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">{{item.is_under_line == 1 ? '切换' : ''}}支付</button>
<button wx:if="{{item.status == 2 && item.order_model != 2}}" class="submit-rush cr-666 br" type="default" size="mini" bindtap="rush_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">催催</button>
<button wx:if="{{item.status == 3}}" class="submit-success cr-666 br" type="default" size="mini" bindtap="collect_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">收货</button>
<button wx:if="{{item.status == 4 && item.user_is_comments == 0}}" class="submit-success cr-666 br" type="default" size="mini" bindtap="comments_event" data-value="{{item.id}}" data-index="{{index}}" hover-class="none">评论</button>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册