From 5d94d8ebdc61a669e13eaf3daf5ad8ee54d3e212 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=A8=E6=A0=88=E5=B0=8F=E5=AD=A6=E7=94=9F?= <1518079521@qq.com> Date: Thu, 8 Jun 2023 18:19:04 +0800 Subject: [PATCH] update niucloud --- .../app/adminapi/controller/login/Config.php | 1 + .../adminapi/controller/order/Recharge.php | 45 +++ .../app/adminapi/controller/order/Refund.php | 67 ---- .../app/adminapi/controller/pay/Config.php | 64 ---- .../app/adminapi/controller/sys/Config.php | 19 ++ niucloud/app/adminapi/middleware.php | 5 +- .../route/{channnel.php => channel.php} | 0 niucloud/app/adminapi/route/order.php | 8 + niucloud/app/adminapi/route/pay.php | 8 +- niucloud/app/adminapi/route/refund.php | 35 --- niucloud/app/adminapi/route/sys.php | 5 + niucloud/app/api/middleware.php | 3 + niucloud/app/common.php | 4 +- niucloud/app/dict/menu/admin.php | 6 +- niucloud/app/dict/menu/site.php | 184 ++++++----- niucloud/app/dict/order/OrderRefundDict.php | 57 ---- niucloud/app/event.php | 12 +- niucloud/app/install/source/database.sql | 2 +- niucloud/app/lang/en/dict.php | 126 ++++++++ .../notice_template/MemberVerifySuccess.php | 3 - .../notice_template/RechargeSuccess.php | 6 +- .../app/listener/pay/PaySuccessListener.php | 9 +- .../pay/RefundSuccessListener.php} | 28 +- niucloud/app/middleware.php | 1 - niucloud/app/model/article/Article.php | 2 +- .../order/{Order.php => RechargeOrder.php} | 41 +-- .../{OrderItem.php => RechargeOrderItem.php} | 8 +- ...Refund.php => RechargeOrderItemRefund.php} | 23 +- .../{OrderLog.php => RechargeOrderLog.php} | 4 +- niucloud/app/model/pay/Pay.php | 11 - .../app/service/admin/file/UploadService.php | 3 +- .../admin/generator/vm/web_edit_page.vm | 13 +- .../order/RechargeOrderRefundService.php | 87 ++++++ .../admin/order/RechargeOrderService.php | 22 +- .../app/service/admin/order/RefundService.php | 114 ------- .../service/admin/pay/PayChannelService.php | 3 - .../service/admin/pay/PayConfigService.php | 62 ---- .../service/admin/stat/SiteStatService.php | 6 +- .../service/admin/sys/AttachmentService.php | 2 +- .../app/service/admin/sys/ConfigService.php | 30 ++ .../app/service/admin/sys/MenuService.php | 56 ++-- .../app/service/admin/sys/SystemService.php | 1 + .../api/order/RechargeOrderService.php | 22 +- .../app/service/api/upload/UploadService.php | 3 +- .../core/order/CoreOrderCreateService.php | 95 ------ .../core/order/CoreOrderRefundService.php | 84 ----- .../service/core/order/CoreOrderService.php | 42 --- .../recharge/CoreRechargeOrderService.php | 78 ++++- .../recharge/CoreRechargeRefundService.php | 37 ++- .../core/pay/CorePayChannelService.php | 38 ++- .../service/core/pay/CorePayConfigService.php | 287 ------------------ .../app/service/core/pay/CorePayService.php | 15 +- .../service/core/pay/CoreRefundService.php | 1 - .../app/service/core/site/CoreSiteService.php | 10 - .../service/core/upload/CoreFileService.php | 12 +- .../service/core/upload/CoreImageService.php | 62 ++++ .../core/upload/CoreStorageService.php | 17 ++ .../service/core/upload/CoreUploadService.php | 29 +- niucloud/config/lang.php | 2 +- niucloud/config/upload.php | 24 +- niucloud/core/pay/Wechatpay.php | 6 +- niucloud/core/upload/Aliyun.php | 19 +- niucloud/core/upload/BaseUpload.php | 9 +- niucloud/core/upload/Local.php | 55 ++++ niucloud/core/upload/Qiniu.php | 18 ++ .../core/upload/{Qcloud.php => Tencent.php} | 26 +- niucloud/core/upload/UploadLoader.php | 1 + 67 files changed, 956 insertions(+), 1222 deletions(-) delete mode 100644 niucloud/app/adminapi/controller/order/Refund.php delete mode 100644 niucloud/app/adminapi/controller/pay/Config.php rename niucloud/app/adminapi/route/{channnel.php => channel.php} (100%) delete mode 100644 niucloud/app/adminapi/route/refund.php delete mode 100644 niucloud/app/dict/order/OrderRefundDict.php rename niucloud/app/{dict/order/OrderTypeDict.php => listener/pay/RefundSuccessListener.php} (56%) rename niucloud/app/model/order/{Order.php => RechargeOrder.php} (83%) rename niucloud/app/model/order/{OrderItem.php => RechargeOrderItem.php} (79%) rename niucloud/app/model/order/{OrderItemRefund.php => RechargeOrderItemRefund.php} (84%) rename niucloud/app/model/order/{OrderLog.php => RechargeOrderLog.php} (90%) delete mode 100644 niucloud/app/service/admin/order/RefundService.php delete mode 100644 niucloud/app/service/admin/pay/PayConfigService.php delete mode 100644 niucloud/app/service/core/order/CoreOrderCreateService.php delete mode 100644 niucloud/app/service/core/order/CoreOrderRefundService.php delete mode 100644 niucloud/app/service/core/order/CoreOrderService.php delete mode 100644 niucloud/app/service/core/pay/CorePayConfigService.php create mode 100644 niucloud/app/service/core/upload/CoreImageService.php rename niucloud/core/upload/{Qcloud.php => Tencent.php} (80%) diff --git a/niucloud/app/adminapi/controller/login/Config.php b/niucloud/app/adminapi/controller/login/Config.php index 9e238a55a..45a4522d0 100644 --- a/niucloud/app/adminapi/controller/login/Config.php +++ b/niucloud/app/adminapi/controller/login/Config.php @@ -12,6 +12,7 @@ namespace app\adminapi\controller\login; use app\service\admin\auth\ConfigService; +use app\service\core\upload\CoreImageService; use core\base\BaseAdminController; use think\Response; diff --git a/niucloud/app/adminapi/controller/order/Recharge.php b/niucloud/app/adminapi/controller/order/Recharge.php index 4ae5b09bb..83c3d04b6 100644 --- a/niucloud/app/adminapi/controller/order/Recharge.php +++ b/niucloud/app/adminapi/controller/order/Recharge.php @@ -72,5 +72,50 @@ class Recharge extends BaseAdminController return success($res); } + /** + * 退款列表 + * @return Response + */ + public function refundLists() + { + $data = $this->request->params([ + ['create_time', []], + ['member_id', ''], + ['refund_no', ''], + ['status', ''], + ['keywords', ''], + ['order_no', ''], + ]); + return success((new RechargeOrderRefundService())->getPage($data)); + } + + /** + * 退款详情 + * @param int $order_id + * @return Response + */ + public function refundDetail(int $refund_id) + { + return success((new RechargeOrderRefundService())->getDetail($refund_id)); + } + + /** + * 查询退款状态 + * @param $type + * @return Response + */ + public function refundStatus() + { + return success((new RechargeOrderRefundService())->getStatus()); + } + + /** + * 退款统计 + */ + public function refundStat() + { + return success((new RechargeOrderRefundService())->stat()); + } + } diff --git a/niucloud/app/adminapi/controller/order/Refund.php b/niucloud/app/adminapi/controller/order/Refund.php deleted file mode 100644 index 42e755e3d..000000000 --- a/niucloud/app/adminapi/controller/order/Refund.php +++ /dev/null @@ -1,67 +0,0 @@ -request->params([ - ['create_time', []], - ['member_id', ''], - ['refund_no', ''], - ['status', ''], - ['keywords', ''], - ['order_no', ''], - ]); - return success((new RefundService())->getPage($data)); - } - - /** - * 退款详情 - * @param int $order_id - * @return Response - */ - public function detail(int $refund_id) - { - return success((new RefundService())->getDetail($refund_id)); - } - - /** - * 查询退款状态 - * @param $type - * @return Response - */ - public function status($type = 'recharge') - { - $data = $this->request->params([ - ['type', 'recharge'] - ]); - return success((new RefundService())->getStatus($data['type'])); - } - - /** - * 退款统计 - */ - public function stat() - { - return success((new RefundService())->stat()); - } -} diff --git a/niucloud/app/adminapi/controller/pay/Config.php b/niucloud/app/adminapi/controller/pay/Config.php deleted file mode 100644 index 7bd780227..000000000 --- a/niucloud/app/adminapi/controller/pay/Config.php +++ /dev/null @@ -1,64 +0,0 @@ -getConfigByType($type)); - } - - /** - * 支付设置 - * @return Response - */ - public function set($type){ - $data = $this->request->params([ - ['status', 0], - //支付宝配置 - ['app_id', ''], - ['app_secret_cert', ''], - ['app_public_cert_path', ''], - ['alipay_public_cert_path', ''], - ['alipay_root_cert_path', ''], - //微信配置 - ['mch_id', ''], - ['mch_secret_key', ''], - ['mch_secret_cert', ''], - ['mch_public_cert_path', ''], - - ]); - $this->validate(array_merge($data, ['type' => $type]), 'app\validate\pay\Pay.set'); - (new PayConfigService())->setConfigByType($type, $data); - return success(); - } - - /** - * 支付方式列表 - * @return Response - */ - public function lists(){ - return success((new PayConfigService())->getPayConfigList()); - } - - - -} diff --git a/niucloud/app/adminapi/controller/sys/Config.php b/niucloud/app/adminapi/controller/sys/Config.php index 7e027f947..e3d90f7d4 100644 --- a/niucloud/app/adminapi/controller/sys/Config.php +++ b/niucloud/app/adminapi/controller/sys/Config.php @@ -104,4 +104,23 @@ class Config extends BaseAdminController public function getServiceInfo(){ return success((new ConfigService())->getService()); } + + /**设置版权信息 + * @return Response + */ + public function setMap(){ + $data = $this->request->params([ + ['key', ''], + ]); + (new ConfigService())->setMap($data); + return success(); + } + + /** + * 获取地图设置 + * @return Response + */ + public function getMap(){ + return success((new ConfigService())->getMap()); + } } diff --git a/niucloud/app/adminapi/middleware.php b/niucloud/app/adminapi/middleware.php index e1d10f252..8a4400dd5 100644 --- a/niucloud/app/adminapi/middleware.php +++ b/niucloud/app/adminapi/middleware.php @@ -1,8 +1,11 @@ middleware([ AdminCheckToken::class, AdminCheckRole::class, diff --git a/niucloud/app/adminapi/route/pay.php b/niucloud/app/adminapi/route/pay.php index 90081e081..519b9d932 100644 --- a/niucloud/app/adminapi/route/pay.php +++ b/niucloud/app/adminapi/route/pay.php @@ -19,13 +19,7 @@ use think\facade\Route; * 支付相关路由 */ Route::group('pay', function () { - /***************************************************** 系统整体信息 *************************************************/ - //设置支付配置 - Route::put('config/:type', 'pay.Config/set'); - //获取支付配置 - Route::get('config/:type', 'pay.Config/get'); - //获取支付方式列表 - Route::get('lists', 'pay.Config/lists'); + /***************************************************** 支付渠道 *************************************************/ //渠道列表 Route::get('channel/lists', 'pay.PayChannel/lists'); diff --git a/niucloud/app/adminapi/route/refund.php b/niucloud/app/adminapi/route/refund.php deleted file mode 100644 index bca923e51..000000000 --- a/niucloud/app/adminapi/route/refund.php +++ /dev/null @@ -1,35 +0,0 @@ -middleware([ - AdminCheckToken::class, - AdminCheckRole::class, - AdminLog::class -]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/sys.php b/niucloud/app/adminapi/route/sys.php index d76d5f2fd..6297910ba 100644 --- a/niucloud/app/adminapi/route/sys.php +++ b/niucloud/app/adminapi/route/sys.php @@ -67,6 +67,11 @@ Route::group('sys', function () { //版权设置 Route::put('config/copyright', 'sys.Config/setCopyright'); + //地图设置 + Route::put('config/map', 'sys.Config/setMap'); + //地图设置 + Route::get('config/map', 'sys.Config/getMap'); + //登录注册设置 Route::get('config/login', 'login.Config/getConfig'); //登录注册设置 diff --git a/niucloud/app/api/middleware.php b/niucloud/app/api/middleware.php index b0e9e4d91..7ee29d4cd 100644 --- a/niucloud/app/api/middleware.php +++ b/niucloud/app/api/middleware.php @@ -1,7 +1,10 @@ 1, ], [ - 'menu_name' => '站点用户', + 'menu_name' => '站点管理员', 'menu_key' => 'site_user', 'menu_type' => 1, 'icon' => 'element-User', @@ -245,7 +245,7 @@ ], [ - 'menu_name' => '管理员', + 'menu_name' => '平台管理员', 'menu_key' => 'auth_user', 'menu_type' => 1, 'icon' => 'iconfont-iconyonghu', @@ -515,7 +515,7 @@ ], [ 'menu_name' => '环境检测', - 'menu_key' => 'iconfont-iconsixingjiance', + 'menu_key' => 'tools_check_environment', 'menu_type' => 1, 'icon' => 'element-SetUp', 'api_url' => '', diff --git a/niucloud/app/dict/menu/site.php b/niucloud/app/dict/menu/site.php index f2f295041..26bf034e6 100644 --- a/niucloud/app/dict/menu/site.php +++ b/niucloud/app/dict/menu/site.php @@ -360,6 +360,105 @@ return ], ], ], + [ + 'menu_name' => '订单管理', + 'menu_key' => 'order', + 'menu_type' => 0, + 'icon' => 'iconfont-icondingdan', + 'api_url' => '', + 'router_path' => 'order', + 'view_path' => '', + 'methods' => '', + 'sort' => 65, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '充值订单', + 'menu_key' => 'recharge_order', + 'menu_type' => 0, + 'icon' => 'element-Help', + 'api_url' => 'recharge', + 'router_path' => 'recharge', + 'view_path' => '', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '订单列表', + 'menu_key' => 'recharge_order_list', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'recharge', + 'router_path' => 'order', + 'view_path' => 'order/recharge/list', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '退款', + 'menu_key' => 'recharge_refund', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'order/refund/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 100, + 'status' => 1, + 'is_show' => 0, + ], + ] + ], + [ + 'menu_name' => '订单详情', + 'menu_key' => 'recharge_order_detail', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'order/recharge/', + 'router_path' => 'detail', + 'view_path' => 'order/recharge/detail', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '退款记录', + 'menu_key' => 'recharge_refund_list', + 'menu_type' => 1, + 'icon' => 'iconfont-icontuikuanjilu', + 'api_url' => 'order/refund', + 'router_path' => 'refund', + 'view_path' => 'order/recharge/refund', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '退款详情', + 'menu_key' => 'recharge_refund_detail', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'order/refund/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 0, + ] + ] + ] + ] + ] + ] + ], [ 'menu_name' => '财务管理', 'menu_key' => 'finance', @@ -373,47 +472,6 @@ return 'status' => 1, 'is_show' => 1, 'children' => [ - [ - 'menu_name' => '会员充值', - 'menu_key' => 'recharge_list', - 'menu_type' => 1, - 'icon' => 'element-Help', - 'api_url' => 'order/recharge', - 'router_path' => 'recharge', - 'view_path' => 'finance/recharge/list', - 'methods' => 'get', - 'sort' => 100, - 'status' => 1, - 'is_show' => 1, - 'children' => [ - [ - 'menu_name' => '退款', - 'menu_key' => 'refund', - 'menu_type' => 2, - 'icon' => '', - 'api_url' => 'order/refund/', - 'router_path' => '', - 'view_path' => '', - 'methods' => 'put', - 'sort' => 100, - 'status' => 1, - 'is_show' => 0, - ], - ] - ], - [ - 'menu_name' => '充值详情', - 'menu_key' => 'recharge_order_info', - 'menu_type' => 1, - 'icon' => '', - 'api_url' => 'order/recharge/', - 'router_path' => 'recharge/detail', - 'view_path' => 'finance/recharge/detail', - 'methods' => 'get', - 'sort' => 90, - 'status' => 1, - 'is_show' => 0, - ], [ 'menu_name' => '会员提现', 'menu_key' => 'cash_out_list', @@ -426,35 +484,6 @@ return 'sort' => 99, 'status' => 1, 'is_show' => 1, - ], - [ - 'menu_name' => '退款记录', - 'menu_key' => 'refund_list', - 'menu_type' => 1, - 'icon' => 'iconfont-icontuikuanjilu', - 'api_url' => 'order/refund', - 'router_path' => 'refund', - 'view_path' => 'order/refund', - 'methods' => 'get', - 'sort' => 90, - 'status' => 1, - 'is_show' => 1, - 'children' => [ - [ - 'menu_name' => '退款详情', - 'menu_key' => 'refund_detail', - 'menu_type' => 2, - 'icon' => '', - 'api_url' => 'order/refund/', - 'router_path' => '', - 'view_path' => '', - 'methods' => 'get', - 'sort' => 100, - 'status' => 1, - 'is_show' => 0, - ], - - ] ] ] ], @@ -1136,10 +1165,23 @@ return 'sort' => 11, 'status' => 1, 'is_show' => 1, - + ] ] ], + [ + 'menu_name' => '地图设置', + 'menu_key' => 'map_setting', + 'menu_type' => 1, + 'icon' => 'element-Message', + 'api_url' => 'sys/config/map', + 'router_path' => 'map', + 'view_path' => 'setting/map', + 'methods' => 'get', + 'sort' => 99, + 'status' => 1, + 'is_show' => 1, + ] ] ] ]; \ No newline at end of file diff --git a/niucloud/app/dict/order/OrderRefundDict.php b/niucloud/app/dict/order/OrderRefundDict.php deleted file mode 100644 index 0bf00a240..000000000 --- a/niucloud/app/dict/order/OrderRefundDict.php +++ /dev/null @@ -1,57 +0,0 @@ - [ - 'name' => get_lang('dict_refund.wait'), - 'key' => self::WAIT, - ], - self::WAIT_TRANSFER => [ - 'name' => get_lang('dict_refund.wait_transfer'), - 'key' => self::WAIT, - ], - self::SUCCESS => [ - 'name' => get_lang('dict_refund.success'), - 'key' => self::WAIT, - ], - self::FAIL => [ - 'name' => get_lang('dict_refund.fail'), - 'key' => self::FAIL, - ] - ]; - foreach($list as $k => $v){ - if(!empty($status) && !in_array($k, $status)) unset($list[$k]); - } - return $list; - } - - -} \ No newline at end of file diff --git a/niucloud/app/event.php b/niucloud/app/event.php index ce0b6d170..0a5009b33 100644 --- a/niucloud/app/event.php +++ b/niucloud/app/event.php @@ -31,18 +31,16 @@ $system_event = [ 'Scan' => [ 'app\listener\scan\ScanListener' ], 'AddSiteAfter' => [ 'app\listener\site\AddSiteAfterListener' ], - /** - * 消息相关事件 - */ - /** * 支付相关事件 */ + //支付成功 'PaySuccess' => [ 'app\listener\pay\PaySuccessListener' ], + //退款成功 + 'RefundSuccess' => [ 'app\listener\pay\RefundSuccessListener' ], + //转账成功 'TransferSuccess' => [ 'app\listener\pay\TransferSuccessListener' ], - /** - * 订单相关事件 - */ + // 任务失败统一回调,有四种定义方式 'queue_failed'=> [ diff --git a/niucloud/app/install/source/database.sql b/niucloud/app/install/source/database.sql index d52ec1d6f..5278107eb 100644 --- a/niucloud/app/install/source/database.sql +++ b/niucloud/app/install/source/database.sql @@ -1359,7 +1359,7 @@ CREATE TABLE article ( author varchar(255) NOT NULL DEFAULT '' COMMENT '作者', content text DEFAULT NULL COMMENT '文章内容', visit int(11) NOT NULL DEFAULT 0 COMMENT '实际浏览量', - visit_virtual int(11) NOT NULL DEFAULT 0 COMMENT '虚拟浏览量', + visit_virtual int(11) NOT NULL DEFAULT 0 COMMENT '初始浏览量', is_show tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否显示:1-是.0-否', sort int(11) NOT NULL DEFAULT 0 COMMENT '排序', create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', diff --git a/niucloud/app/lang/en/dict.php b/niucloud/app/lang/en/dict.php index ae628e563..20d00b82d 100644 --- a/niucloud/app/lang/en/dict.php +++ b/niucloud/app/lang/en/dict.php @@ -144,4 +144,130 @@ return [ 'status_success' => 'success', 'status_fail' => 'fail', ], + 'dict_menu_admin' => [ + 'overview' => 'overview', + 'site' => 'site', + 'site_list' => 'site list', + 'site_info' => 'site info', + 'site_group' => 'site package', + 'site_user' => 'site user', + 'auth' => 'auth', + 'menu_list' => 'menu manage', + 'auth_menu' => 'admin menu', + 'auth_menu_add' => 'add', + 'auth_menu_update' => 'edit', + 'auth_menu_del' => 'delete', + 'auth_menu_info' => 'info', + 'auth_site_menu' => 'site menu', + 'auth_site_menu_add' => 'add', + 'auth_site_menu_update' => 'edit', + 'auth_site_menu_del' => 'delete', + 'auth_site_menu_info' => 'info', + 'auth_user' => 'manager', + 'auth_user_add' => 'add', + 'auth_user_update' => 'edit', + 'auth_user_del' => 'delete', + 'auth_user_info' => 'info', + 'auth_role' => 'role manage', + 'auth_role_add' => 'add', + 'auth_role_update' => 'edit', + 'auth_role_del' => 'delete', + 'auth_log' => 'log', + 'setting' => 'system config', + 'setting_system' => 'web config', + 'setting_copyright' => 'copyright config', + 'setting_login' => 'login config', + 'setting_storage' => 'storage config', + 'setting_oplatform' => 'wechat platform', + 'tool' => 'develop tools', + 'code' => 'generator', + 'code_edit' => 'table edit', + 'tools_Update_cache' => 'update cache', + 'tools_check_environment' => 'check environment', + 'app_store' => 'app market' + + ], + 'dict_menu_site' => [ + 'overview' => 'overview', + 'diy' => 'diy manage', + 'diy_page_index' => 'diy index', + 'diy_page_member' => 'diy member', + 'diy_page_update' => 'save', + 'diy_page_list' => 'page manage', + 'diy_bottom' => 'bottom config', + 'diy_tabbar_update' => 'save', + 'attachment' => 'attachment', + 'decorate' => 'decorate', + 'page_decorate' => 'page decorate', + 'article' => 'article', + 'article_list' => 'article list', + 'article_edit' => 'article edit', + 'article_category' => 'article category', + 'member' => 'member', + 'member_list' => 'member list', + 'member_update' => 'edit', + 'member_info' => 'member detail', + 'member_label' => 'member label', + 'member_label_update' => 'edit label', + 'member_label_add' => 'add label', + 'member_label_delete' => 'delete label', + 'member_point' => 'member point', + 'member_balance' => 'member balance', + 'member_commission' => 'member commission', + 'order' => 'order', + 'recharge_order' => 'recharge order', + 'recharge_order_list' => 'order list', + 'recharge_refund' => 'refund', + 'recharge_order_detail' => 'order detail', + 'recharge_refund_list' => 'refund list', + 'recharge_refund_detail' => 'refund detail', + 'finance' => 'finance manage', + 'cash_out_list' => 'member cashout', + 'addon' => 'app manage', + 'addon_list' => 'addon list', + 'channel' => 'channel manage', + 'channel_pc' => 'pc manage', + 'pc_config' => 'pc config', + 'channel_h5' => 'h5 manage', + 'h5_config' => 'h5 config', + 'channel_wechat' => 'wechat manage', + 'wechat_config' => 'wechat config', + 'wechat_menu' => 'wechat menu', + 'wechat_template_message' => 'template manage', + 'channel_weapp' => 'weapp manage', + 'weapp_config' => 'weapp config', + 'weapp_template_message' => 'weapp message', + 'channel_aliapp' => 'aliapp manage', + 'aliapp_config' => 'aliapp config', + 'auth' => 'auth manage', + 'auth_user' => 'manager', + 'auth_user_add' => 'add', + 'auth_user_update' => 'edit', + 'auth_user_del' => 'delete', + 'auth_user_info' => 'detail', + 'auth_role' => 'role manage', + 'auth_role_add' => 'add', + 'auth_role_update' => 'edit', + 'auth_role_del' => 'delete', + 'auth_log' => 'log', + 'setting' => 'system config', + 'setting_system' => 'web config', + 'system_agreement' => 'agreement manage', + 'system_agreement_edit' => 'edit agreement', + 'setting_login_register' => 'login config', + 'setting_member' => 'member config', + 'setting_pay' => 'pay manage', + 'setting_pay_channel' => 'pay config', + 'setting_pay_channel_set' => 'config', + 'setting_pay_transfer' => 'transfer config', + 'setting_pay_transfer_set' => 'config', + 'cash_out_config' => 'cashout config', + 'setting_notice' => 'notice manage', + 'setting_notice_template' => 'notice template', + 'setting_notice_records' => 'send log', + 'sms_notice' => 'sms manage', + 'sms_setting' => 'sms config', + 'sms_notice_records' => 'send log', + 'map_setting' => 'map config', + ], ]; diff --git a/niucloud/app/listener/notice_template/MemberVerifySuccess.php b/niucloud/app/listener/notice_template/MemberVerifySuccess.php index 3ae18c176..f55a9263d 100644 --- a/niucloud/app/listener/notice_template/MemberVerifySuccess.php +++ b/niucloud/app/listener/notice_template/MemberVerifySuccess.php @@ -2,9 +2,6 @@ namespace app\listener\notice_template; -use app\service\core\order\CoreOrderRefundService; -use app\service\core\order\CoreOrderService; -use core\exception\NoticeException; /** * 会员验证码 diff --git a/niucloud/app/listener/notice_template/RechargeSuccess.php b/niucloud/app/listener/notice_template/RechargeSuccess.php index 917bfe7b8..2ad9915dd 100644 --- a/niucloud/app/listener/notice_template/RechargeSuccess.php +++ b/niucloud/app/listener/notice_template/RechargeSuccess.php @@ -3,7 +3,7 @@ namespace app\listener\notice_template; use app\service\core\member\CoreMemberService; -use app\service\core\order\CoreOrderService; +use app\service\core\order\recharge\CoreRechargeOrderService; class RechargeSuccess extends BaseNoticeTemplate { @@ -17,8 +17,8 @@ class RechargeSuccess extends BaseNoticeTemplate $site_id = $params['site_id']; $order_id = $data['order_id']; - $core_order_service = new CoreOrderService(); - $order = $core_order_service->getOrderInfo($site_id, $order_id); + $core_order_service = new CoreRechargeOrderService(); + $order = $core_order_service->orderInfo($site_id, $order_id); if (!empty($order)){ $member = (new CoreMemberService())->getInfoByMemberId($site_id, $order['member_id']); //通过订单id查询订单信息 diff --git a/niucloud/app/listener/pay/PaySuccessListener.php b/niucloud/app/listener/pay/PaySuccessListener.php index c5fca77ef..120c407b6 100644 --- a/niucloud/app/listener/pay/PaySuccessListener.php +++ b/niucloud/app/listener/pay/PaySuccessListener.php @@ -11,8 +11,6 @@ namespace app\listener\pay; - -use app\dict\order\RechargeOrderDict; use app\service\core\order\recharge\CoreRechargeOrderService; /** @@ -23,10 +21,9 @@ class PaySuccessListener public function handle(array $pay_info) { $trade_type = $pay_info['trade_type'] ?? ''; - switch($trade_type){ - case RechargeOrderDict::getOrderType()['type']: - return (new CoreRechargeOrderService())->pay($pay_info); - break; + if($trade_type == 'recharge') + { + (new CoreRechargeOrderService())->pay($pay_info); } } } \ No newline at end of file diff --git a/niucloud/app/dict/order/OrderTypeDict.php b/niucloud/app/listener/pay/RefundSuccessListener.php similarity index 56% rename from niucloud/app/dict/order/OrderTypeDict.php rename to niucloud/app/listener/pay/RefundSuccessListener.php index d9d380e05..48be20575 100644 --- a/niucloud/app/dict/order/OrderTypeDict.php +++ b/niucloud/app/listener/pay/RefundSuccessListener.php @@ -9,24 +9,22 @@ // | Author: Niucloud Team // +---------------------------------------------------------------------- -namespace app\dict\order; +namespace app\listener\pay; + +use app\service\core\order\recharge\CoreRechargeOrderService; +use app\service\core\order\recharge\CoreRechargeRefundService; /** - * 订单类型整体功能 - * Class OrderTypeDict - * @package app\dict\member + * 退款成功事件 */ -class OrderTypeDict +class RefundSuccessListener { - - /** - * 查询订单适配的支付方式 - * @param $type - * @return void - */ - public static function getAllowPayType($type){ - /** @var RechargeOrderDict $class */ - $class = __NAMESPACE__ . '\\' . ucfirst(strtolower($type)).'OrderDict'; - return $class::ALLOW_PAY; + public function handle(array $refund_info) + { + $trade_type = $refund_info['trade_type'] ?? ''; + if($trade_type == 'recharge') + { + (new CoreRechargeRefundService())->refundComplete($refund_info['refund_no']); + } } } \ No newline at end of file diff --git a/niucloud/app/middleware.php b/niucloud/app/middleware.php index f4e70c63b..6a457332d 100644 --- a/niucloud/app/middleware.php +++ b/niucloud/app/middleware.php @@ -1,6 +1,5 @@ ( !empty(env("system.wap_domain")) ? env("system.wap_domain") : request()->domain() ) . "/wap" . $site_tag . "/pages/article/detail?id={$data['id']}", 'web_url' => ( !empty(env("system.web_domain")) ? env("system.web_domain") : request()->domain() ) . "/web" . $site_tag . "/article/detail?id={$data['id']}" diff --git a/niucloud/app/model/order/Order.php b/niucloud/app/model/order/RechargeOrder.php similarity index 83% rename from niucloud/app/model/order/Order.php rename to niucloud/app/model/order/RechargeOrder.php index 04cb9747a..94ca027e9 100644 --- a/niucloud/app/model/order/Order.php +++ b/niucloud/app/model/order/RechargeOrder.php @@ -17,11 +17,11 @@ use app\model\pay\Pay; use core\base\BaseModel; /** - * 订单模型 - * Class Order + * 充值订单模型 + * Class RechargeOrder * @package app\model\order */ -class Order extends BaseModel +class RechargeOrder extends BaseModel { /** @@ -34,7 +34,7 @@ class Order extends BaseModel * 模型名称 * @var string */ - protected $name = 'order'; + protected $name = 'recharge_order'; //类型 protected $type = [ @@ -42,37 +42,6 @@ class Order extends BaseModel 'close_time' => 'timestamp', ]; - /** - * 订单状态名称 - * @param $value - * @param $data - * @return mixed|string - */ - public function getOrderStatusInfoAttr($value, $data) - { - if(isset($data['order_type']) && isset($data['order_status'])) - { - $class = "app\\dict\\order\\". ucfirst($data['order_type']).'OrderDict'; - return $class::getStatus($data['order_status']); - }else - return []; - } - - /** - * 获取退款状态 - * @param $value - * @param $data - * @return void - */ - public function getRefundStatusNameAttr($value, $data) { - if(isset($data['order_type']) && isset($data['refund_status'])) - { - $class = "app\\dict\\order\\". ucfirst($data['order_type']).'OrderDict'; - return $class::getRefundStatus($data['refund_status'])['name'] ?? ''; - } else { - return ''; - } - } /** * 登录渠道字段转化 @@ -228,7 +197,7 @@ class Order extends BaseModel */ public function item() { - return $this->hasMany(OrderItem::class,'order_id', 'order_id'); + return $this->hasMany(RechargeOrderItem::class,'order_id', 'order_id'); } /** diff --git a/niucloud/app/model/order/OrderItem.php b/niucloud/app/model/order/RechargeOrderItem.php similarity index 79% rename from niucloud/app/model/order/OrderItem.php rename to niucloud/app/model/order/RechargeOrderItem.php index 7ab4235f4..1545df97b 100644 --- a/niucloud/app/model/order/OrderItem.php +++ b/niucloud/app/model/order/RechargeOrderItem.php @@ -18,7 +18,7 @@ use core\base\BaseModel; * Class OrderItem * @package app\model\order */ -class OrderItem extends BaseModel +class RechargeOrderItem extends BaseModel { /** @@ -31,14 +31,14 @@ class OrderItem extends BaseModel * 模型名称 * @var string */ - protected $name = 'order_item'; + protected $name = 'recharge_order_item'; /** * @return HasOne */ public function orderNo() { - return $this->hasOne(Order::class, 'order_id', 'order_id')->joinType('left')->withField('order_id, order_no')->bind(['order_no' => 'order_no']); + return $this->hasOne(RechargeOrder::class, 'order_id', 'order_id')->joinType('left')->withField('order_id, order_no')->bind(['order_no' => 'order_no']); } /** * 数量字段处理 @@ -58,6 +58,6 @@ class OrderItem extends BaseModel * @return void */ public function ordermain(){ - return $this->hasOne(Order::class, 'order_id')->joinType('inner'); + return $this->hasOne(RechargeOrder::class, 'order_id')->joinType('inner'); } } diff --git a/niucloud/app/model/order/OrderItemRefund.php b/niucloud/app/model/order/RechargeOrderItemRefund.php similarity index 84% rename from niucloud/app/model/order/OrderItemRefund.php rename to niucloud/app/model/order/RechargeOrderItemRefund.php index 97efe0eb6..f7f24c59d 100644 --- a/niucloud/app/model/order/OrderItemRefund.php +++ b/niucloud/app/model/order/RechargeOrderItemRefund.php @@ -11,6 +11,7 @@ namespace app\model\order; +use app\dict\order\RechargeOrderDict; use app\model\member\Member; use app\model\pay\Refund; use core\base\BaseModel; @@ -20,7 +21,7 @@ use core\base\BaseModel; * Class OrderItem * @package app\model\order */ -class OrderItemRefund extends BaseModel +class RechargeOrderItemRefund extends BaseModel { //类型 protected $type = [ @@ -39,7 +40,7 @@ class OrderItemRefund extends BaseModel * 模型名称 * @var string */ - protected $name = 'order_item_refund'; + protected $name = 'recharge_order_item_refund'; /** * 退款状态字段处理 @@ -48,9 +49,7 @@ class OrderItemRefund extends BaseModel */ public function getStatusNameAttr($value, $data) { - $class = "\\app\\dict\\order\\" . ucfirst($data['item_type']). "OrderDict"; - if (!class_exists($class)) return ''; - return $class::getRefundStatus()[$data['status'] ?? '']['name'] ?? ''; + return RechargeOrderDict::getRefundStatus()[$data['status'] ?? '']['name'] ?? ''; } /** @@ -58,7 +57,7 @@ class OrderItemRefund extends BaseModel * @return \think\model\relation\HasOne */ public function item() { - return $this->hasOne(OrderItem::class, 'order_item_id', 'order_item_id')->joinType('inner'); + return $this->hasOne(RechargeOrderItem::class, 'order_item_id', 'order_item_id')->joinType('inner'); } /** @@ -114,7 +113,7 @@ class OrderItemRefund extends BaseModel public function searchJoinOrderNoAttr($query, $value, $data) { if ($value) { - $query->where('order_item_refund.order_no', '=', $value); + $query->where('recharge_order_item_refund.order_no', '=', $value); } } @@ -140,7 +139,7 @@ class OrderItemRefund extends BaseModel public function searchJoinMemberIdAttr($query, $value, $data) { if ($value) { - $query->where('order_item_refund.member_id', '=', $value); + $query->where('recharge_order_item_refund.member_id', '=', $value); } } @@ -166,7 +165,7 @@ class OrderItemRefund extends BaseModel public function searchJoinStatusAttr($query, $value, $data) { if ($value != '') { - $query->where('order_item_refund.status', '=', $value); + $query->where('recharge_order_item_refund.status', '=', $value); } } @@ -196,11 +195,11 @@ class OrderItemRefund extends BaseModel $start_time = empty($value[0]) ? 0 : strtotime($value[0]) ; $end_time = empty($value[1]) ? 0 : strtotime($value[1]) ; if($start_time > 0 && $end_time > 0){ - $query->whereBetweenTime('order_item_refund.create_time', $start_time, $end_time); + $query->whereBetweenTime('recharge_order_item_refund.create_time', $start_time, $end_time); }else if($start_time > 0 && $end_time == 0){ - $query->where([['order_item_refund.create_time', '>=', $start_time]]); + $query->where([['recharge_order_item_refund.create_time', '>=', $start_time]]); }else if($start_time == 0 && $end_time > 0){ - $query->where([['order_item_refund.create_time', '<=', $end_time]]); + $query->where([['recharge_order_item_refund.create_time', '<=', $end_time]]); } } } diff --git a/niucloud/app/model/order/OrderLog.php b/niucloud/app/model/order/RechargeOrderLog.php similarity index 90% rename from niucloud/app/model/order/OrderLog.php rename to niucloud/app/model/order/RechargeOrderLog.php index c08d5e2ed..dc0b3b758 100644 --- a/niucloud/app/model/order/OrderLog.php +++ b/niucloud/app/model/order/RechargeOrderLog.php @@ -18,7 +18,7 @@ use core\base\BaseModel; * Class OrderLog * @package app\model\order */ -class OrderLog extends BaseModel +class RechargeOrderLog extends BaseModel { /** @@ -31,7 +31,7 @@ class OrderLog extends BaseModel * 模型名称 * @var string */ - protected $name = 'order_log'; + protected $name = 'recharge_order_log'; } diff --git a/niucloud/app/model/pay/Pay.php b/niucloud/app/model/pay/Pay.php index a4f1cdcc7..d010a003d 100644 --- a/niucloud/app/model/pay/Pay.php +++ b/niucloud/app/model/pay/Pay.php @@ -11,7 +11,6 @@ namespace app\model\pay; -use app\dict\order\OrderTypeDict; use app\dict\pay\PayDict; use core\base\BaseModel; @@ -56,16 +55,6 @@ class Pay extends BaseModel { return PayDict::getStatus()[$data['status'] ?? ''] ?? ''; } - - /** - * 支持的支付方式 - * @param $value - * @param $data - * @return void - */ - public function getPayTypeListAttr($value, $data){ - return OrderTypeDict::getAllowPayType($data['trade_type']); - } /** * 支付方式字段转化 * @param $value diff --git a/niucloud/app/service/admin/file/UploadService.php b/niucloud/app/service/admin/file/UploadService.php index e6ba3dac5..08af08edb 100644 --- a/niucloud/app/service/admin/file/UploadService.php +++ b/niucloud/app/service/admin/file/UploadService.php @@ -12,6 +12,7 @@ namespace app\service\admin\file; use app\dict\sys\FileDict; +use app\dict\sys\StorageDict; use app\service\core\upload\CoreUploadService; use core\base\BaseAdminService; use core\exception\UploadFileException; @@ -62,6 +63,6 @@ class UploadService extends BaseAdminService throw new UploadFileException('CERT_TYPE_ERROR'); $dir = $this->root_path.'/document/'.$type.'/'.$this->site_id.'/'.date('Ym').'/'.date('d'); $core_upload_service = new CoreUploadService(); - return $core_upload_service->document($file, $this->site_id, $type, $dir, true, true); + return $core_upload_service->document($file, $this->site_id, $type, $dir, StorageDict::LOCAL, true); } } \ No newline at end of file diff --git a/niucloud/app/service/admin/generator/vm/web_edit_page.vm b/niucloud/app/service/admin/generator/vm/web_edit_page.vm index 021d59ef1..4993925eb 100644 --- a/niucloud/app/service/admin/generator/vm/web_edit_page.vm +++ b/niucloud/app/service/admin/generator/vm/web_edit_page.vm @@ -1,5 +1,13 @@