Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
starsw001
ShopXO
提交
9372885d
ShopXO
项目概览
starsw001
/
ShopXO
与 Fork 源项目一致
Fork自
纵之格 / ShopXO
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
ShopXO
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9372885d
编写于
6月 16, 2019
作者:
G
gongfuxiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
细节优化
上级
c360c3be
变更
5
展开全部
隐藏空白更改
内联
并排
Showing
5 changed file
with
38 addition
and
234 deletion
+38
-234
application/index/view/default/order/index.html
application/index/view/default/order/index.html
+5
-1
application/service/OrderAftersaleService.php
application/service/OrderAftersaleService.php
+25
-15
config/shopxo.sql
config/shopxo.sql
+7
-35
extend/payment/WalletPay.php
extend/payment/WalletPay.php
+0
-182
public/static/index/default/css/buy.css
public/static/index/default/css/buy.css
+1
-1
未找到文件。
application/index/view/default/order/index.html
浏览文件 @
9372885d
...
...
@@ -198,7 +198,11 @@
{{if empty($goods['orderaftersale'])}}
退款/退货
{{else /}}
<span
class=
"am-text-secondary"
>
查看进度
</span>
{{if $goods['orderaftersale']['status'] eq 3}}
<span
class=
"am-text-success"
>
查看退款
</span>
{{else /}}
<span
class=
"am-text-secondary"
>
查看进度
</span>
{{/if}}
{{/if}}
{{/case}}
{{case 4|6}}
...
...
application/service/OrderAftersaleService.php
浏览文件 @
9372885d
...
...
@@ -729,36 +729,46 @@ class OrderAftersaleService
}
}
// 钱包校验
if
(
$params
[
'refundment'
]
==
1
)
// 原路退回(钱包支付方式使用退至钱包)/退到钱包(走事务处理)/手动处理
$is_walet
=
false
;
if
(
$params
[
'refundment'
]
==
0
)
{
$wallet
=
Db
::
name
(
'Plugins'
)
->
where
([
'plugins'
=>
'wallet'
])
->
find
();
if
(
empty
(
$wallet
))
if
(
$pay_log
[
'payment'
]
==
'WalletPay'
)
{
return
DataReturn
(
'请先安装钱包插件[ Wallet ]'
,
-
1
);
$is_walet
=
true
;
}
else
{
// 原路退回
$refund
=
self
::
OriginalRoadRefundment
(
$params
,
$aftersale
,
$order
[
'data'
],
$pay_log
);
}
}
// 原路退回
if
(
$params
[
'refundment'
]
==
0
)
}
elseif
(
$params
[
'refundment'
]
==
1
)
{
$refund
=
self
::
OriginalRoadRefundment
(
$params
,
$aftersale
,
$order
[
'data'
],
$pay_log
);
// 钱包走事务处理, 手动处理不涉及金额
$is_walet
=
true
;
}
else
{
// 手动处理不涉及金额
$refund
=
DataReturn
(
'退款成功'
,
0
);
}
// 退款成功
if
(
$refund
[
'code'
]
!=
0
)
if
(
isset
(
$refund
[
'code'
])
&&
$refund
[
'code'
]
!=
0
)
{
return
$refund
;
}
// 钱包校验
if
(
$is_walet
===
true
)
{
$wallet
=
Db
::
name
(
'Plugins'
)
->
where
([
'plugins'
=>
'wallet'
])
->
find
();
if
(
empty
(
$wallet
))
{
return
DataReturn
(
'请先安装钱包插件[ Wallet ]'
,
-
1
);
}
}
// 开启事务
Db
::
startTrans
();
// 钱包
操作 - 退至钱包
if
(
$
params
[
'refundment'
]
==
1
)
// 钱包
退款
if
(
$
is_walet
===
true
)
{
$ret
=
self
::
WalletRefundment
(
$params
,
$aftersale
,
$order
[
'data'
],
$pay_log
);
if
(
$ret
[
'code'
]
!=
0
)
...
...
config/shopxo.sql
浏览文件 @
9372885d
此差异已折叠。
点击以展开。
extend/payment/WalletPay.php
已删除
100644 → 0
浏览文件 @
c360c3be
<?php
// +----------------------------------------------------------------------
// | ShopXO 国内领先企业级B2C免费开源电商系统
// +----------------------------------------------------------------------
// | Copyright (c) 2011~2019 http://shopxo.net All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: Devil
// +----------------------------------------------------------------------
namespace
payment
;
use
think\Db
;
use
app\service\PaymentService
;
use
app\service\OrderService
;
use
app\plugins\wallet\service\WalletService
;
/**
* 钱包支付
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2019-06-16
* @desc description
*/
class
WalletPay
{
// 插件配置参数
private
$config
;
/**
* 构造方法
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2018-09-17
* @desc description
* @param [array] $params [输入参数(支付配置参数)]
*/
public
function
__construct
(
$params
=
[])
{
$this
->
config
=
$params
;
}
/**
* 配置信息
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2019-06-16
* @desc description
*/
public
function
Config
()
{
// 基础信息
$base
=
[
'name'
=>
'钱包'
,
// 插件名称
'version'
=>
'0.0.1'
,
// 插件版本
'apply_version'
=>
'1.5.0'
,
// 适用系统版本描述
'desc'
=>
'钱包余额支付'
,
// 插件描述(支持html)
'author'
=>
'Devil'
,
// 开发者
'author_url'
=>
'http://shopxo.net/'
,
// 开发者主页
];
// 配置信息
$element
=
[];
return
[
'base'
=>
$base
,
'element'
=>
$element
,
];
}
/**
* 钱包校验
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @datetime 2019-06-16T17:17:58+0800
* @param [array] $params [输入参数]
*/
private
function
Check
(
$params
=
[])
{
// 钱包校验
$wallet
=
Db
::
name
(
'Plugins'
)
->
where
([
'plugins'
=>
'wallet'
])
->
find
();
if
(
empty
(
$wallet
))
{
return
DataReturn
(
'请先安装钱包插件[ Wallet ]'
,
-
1
);
}
return
DataReturn
(
'钱包正常'
,
0
);
}
/**
* 支付入口
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2019-06-16
* @desc description
* @param [array] $params [输入参数]
*/
public
function
Pay
(
$params
=
[])
{
// 校验
$ret
=
$this
->
Check
(
$params
);
if
(
$ret
[
'code'
]
!=
0
)
{
return
$ret
;
}
// 获取用户钱包校验
$user_wallet
=
WalletService
::
UserWallet
(
$params
[
'user'
][
'id'
]);
if
(
$user_wallet
[
'code'
]
!=
0
)
{
return
$user_wallet
;
}
// 余额校验
if
(
$user_wallet
[
'data'
][
'normal_money'
]
<
$params
[
'total_price'
])
{
return
DataReturn
(
'钱包余额不足'
,
-
10
);
}
// 处理支付
$ret
=
WalletService
::
UserWalletMoneyUpdate
(
$params
[
'user'
][
'id'
],
$params
[
'total_price'
],
0
,
'normal_money'
,
3
,
'钱包余额支付[订单'
.
$params
[
'order_no'
]
.
']'
);
if
(
$ret
[
'code'
]
==
0
)
{
// 支付方式
$payment
=
PaymentService
::
PaymentList
([
'where'
=>
[
'payment'
=>
'wallet'
]]);
// 获取订单信息
$order
=
Db
::
name
(
'Order'
)
->
find
(
$params
[
'order_id'
]);
// 支付处理
$pay_params
=
[
'order'
=>
$order
,
'payment'
=>
$payment
[
0
],
'pay'
=>
[
'trade_no'
=>
'钱包支付'
,
'subject'
=>
$params
[
'name'
],
'buyer_user'
=>
$params
[
'user'
][
'user_name_view'
],
'pay_price'
=>
$params
[
'total_price'
],
],
];
$ret
=
OrderService
::
OrderPayHandle
(
$pay_params
);
if
(
$ret
[
'code'
]
==
0
)
{
return
DataReturn
(
'支付成功'
,
0
,
MyUrl
(
'index/order/respond'
,
[
'appoint_status'
=>
0
]));
}
}
return
$ret
;
}
/**
* 支付回调处理
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2019-06-16
* @desc description
* @param [array] $params [输入参数]
*/
public
function
Respond
(
$params
=
[])
{
return
DataReturn
(
'处理成功'
,
0
,
$params
);
}
/**
* 退款处理
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2019-06-16
* @desc description
* @param [array] $params [输入参数]
*/
public
function
Refund
(
$params
=
[])
{
return
DataReturn
(
'请选择退至钱包'
,
-
1
);
}
}
?>
\ No newline at end of file
public/static/index/default/css/buy.css
浏览文件 @
9372885d
...
...
@@ -112,7 +112,7 @@ ul.address-list, .business-item ul { overflow: hidden; }
/*地址管理*/
.address
ul
{
margin-top
:
10px
;
padding
:
1px
;}
ul
.address-list
li
{
display
:
block
;
width
:
calc
(
33%
-
5px
);
height
:
130px
;
float
:
left
;
margin
:
0
10px
10px
0
;
padding
:
10px
;
border
:
1px
solid
#e5e5e5
;}
ul
.address-list
li
.address-default
{
background-image
:
url(../images/peraddressbg.png)
;
background-repeat
:
no-repeat
;
background-size
:
100%
100%
;
border
:
0
;
box-shadow
:
none
;}
ul
.address-list
li
.address-default
{
background-image
:
url(../images/
address-
peraddressbg.png)
;
background-repeat
:
no-repeat
;
background-size
:
100%
100%
;
border
:
0
;
box-shadow
:
none
;}
ul
.address-list
li
:nth-child
(
3
n
)
{
margin-right
:
0
;
}
.address-left
{
width
:
100%
;
position
:
relative
;}
.th
.td-inner
{
padding-left
:
0
;}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录