初始版本

This commit is contained in:
贾祥聪
2025-08-19 14:16:51 +08:00
commit f937a1f9b9
4373 changed files with 359728 additions and 0 deletions

View File

@@ -0,0 +1,128 @@
<?php
// +----------------------------------------------------------------------
// | likeshop开源商城系统
// +----------------------------------------------------------------------
// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
// | gitee下载https://gitee.com/likeshop_gitee
// | github下载https://github.com/likeshop-github
// | 访问官网https://www.likeshop.cn
// | 访问社区https://home.likeshop.cn
// | 访问手册http://doc.likeshop.cn
// | 微信公众号likeshop技术社区
// | likeshop系列产品在gitee、github等公开渠道开源版本可免费商用未经许可不能去除前后端官方版权标识
// | likeshop系列产品收费版本务必购买商业授权购买去版权授权后方可去除前后端官方版权标识
// | 禁止对系统程序代码以任何目的,任何形式的再发布
// | likeshop团队版权所有并拥有最终解释权
// +----------------------------------------------------------------------
// | author: likeshop.cn.team
// +----------------------------------------------------------------------
namespace app\api\controller;
use app\api\logic\PayLogic;
use app\api\validate\PayValidate;
use app\common\enum\user\UserTerminalEnum;
use app\common\service\AliPayService;
use app\common\service\WeChatPayService;
use think\facade\Log;
class PayController extends BaseApiController
{
public array $notNeedLogin = ['notifyMnp','notifyOa','aliNotify'];
/**
* @notes 支付方式
* @return \think\response\Json
* @author ljj
* @date 2022/2/28 2:56 下午
*/
public function payWay()
{
$params = (new PayValidate())->get()->goCheck('payWay',['user_id'=>$this->userId]);
$result = PayLogic::payWay($params);
if ($result === false) {
return $this->fail(PayLogic::getError());
}
return $this->data($result);
}
/**
* @notes 预支付
* @return \think\response\Json
* @throws \Exception
* @author ljj
* @date 2022/3/1 11:20 上午
*/
public function prepay()
{
$params = (new PayValidate())->post()->goCheck('prepay');
//支付流程
$result = PayLogic::pay($params['pay_way'], $params['from'], $params['order_id'], $this->userInfo['terminal']);
if (false === $result) {
return $this->fail(PayLogic::getError(), $params);
}
return $this->success('', $result);
}
/**
* @notes 小程序支付回调
* @return \Symfony\Component\HttpFoundation\Response
* @author 段誉
* @date 2021/8/13 14:17
*/
public function notifyMnp()
{
return (new WeChatPayService(UserTerminalEnum::WECHAT_MMP))->notify();
}
/**
* @notes 公众号支付回调
* @return \Symfony\Component\HttpFoundation\Response
* @author 段誉
* @date 2021/8/13 14:17
*/
public function notifyOa()
{
return (new WeChatPayService(UserTerminalEnum::WECHAT_OA))->notify();
}
/**
* @notes 支付宝回调
* @return bool
* @author 段誉
* @date 2021/8/13 14:16
*/
public function aliNotify()
{
$params = $this->request->post();
$result = (new AliPayService())->notify($params);
if (true === $result) {
echo 'success';
} else {
echo 'fail';
}
}
/**
* @notes 获取支付结果
* @return \think\response\Json
* @author ljj
* @date 2024/3/21 5:49 下午
*/
public function getPayResult()
{
$params = (new PayValidate())->get()->goCheck('getPayResult');
//支付流程
$result = PayLogic::getPayResult($params);
if (false === $result) {
return $this->fail(PayLogic::getError());
}
return $this->success('', $result);
}
}