From 453907430335db4c39373f3ed962deb7f8c393b6 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: Wed, 21 Jun 2023 16:47:46 +0800 Subject: [PATCH] update niucloud --- .../addon/hello_world/app/dict/diy/pages.php | 1 + .../hello_world/app/dict/diy/template.php | 2 + .../hello_world/app/dict/notice/notice.php | 2 + .../app/dict/schedule/schedule.php | 15 + .../hello_world/app/job/AddonSchedule.php | 27 + .../app/listener/AppManageListener.php | 3 +- niucloud/addon/hello_world/sql/install.sql | 2 +- niucloud/app/ExceptionHandle.php | 2 +- niucloud/app/Request.php | 4 +- .../app/adminapi/controller/auth/Auth.php | 11 + niucloud/app/adminapi/controller/diy/Diy.php | 64 +- .../app/adminapi/controller/notice/SmsLog.php | 2 +- .../app/adminapi/controller/site/Site.php | 4 + .../adminapi/controller/site/SiteAccount.php | 57 ++ niucloud/app/adminapi/controller/sys/Area.php | 22 + .../app/adminapi/controller/sys/Config.php | 40 ++ niucloud/app/adminapi/controller/sys/Cron.php | 56 -- .../app/adminapi/controller/sys/Schedule.php | 107 ++++ .../app/adminapi/controller/sys/System.php | 3 + niucloud/app/adminapi/route/auth.php | 2 + niucloud/app/adminapi/route/diy.php | 12 +- niucloud/app/adminapi/route/site.php | 10 +- niucloud/app/adminapi/route/sys.php | 39 +- niucloud/app/api/middleware/ApiChannel.php | 9 +- niucloud/app/api/middleware/ApiCheckToken.php | 8 +- .../app/api/route/dispatch/BindDispatch.php | 2 +- niucloud/app/command/Schedule.php | 92 --- niucloud/app/command/schedule/Schedule.php | 54 ++ niucloud/app/common.php | 15 +- niucloud/app/dict/diy/PagesDict.php | 66 +- niucloud/app/dict/diy/TemplateDict.php | 31 +- niucloud/app/dict/menu/admin.php | 13 + niucloud/app/dict/menu/site.php | 103 ++-- niucloud/app/dict/notice/notice.php | 6 +- .../ScheduleDict.php} | 28 +- niucloud/app/dict/schedule/schedule.php | 10 +- niucloud/app/dict/site/SiteAccountLogDict.php | 32 + niucloud/app/dict/sys/DateDict.php | 78 +++ niucloud/app/dict/sys/SmsDict.php | 2 +- niucloud/app/event.php | 10 +- niucloud/app/install/controller/Index.php | 8 + niucloud/app/install/source/database.sql | 562 +++++++----------- niucloud/app/job/schedule/SiteExpireClose.php | 3 +- niucloud/app/lang/en/dict.php | 34 +- niucloud/app/lang/zh-cn/api.php | 1 + niucloud/app/lang/zh-cn/dict.php | 48 +- .../app/listener/pay/PaySuccessListener.php | 4 + .../listener/pay/RefundSuccessListener.php | 6 + .../listener/pay/TransferSuccessListener.php | 3 + .../app/listener/system/AppManageListener.php | 5 +- .../app/listener/system/SiteIndexListener.php | 30 + niucloud/app/model/addon/Addon.php | 2 +- niucloud/app/model/article/Article.php | 15 +- niucloud/app/model/diy/Diy.php | 5 +- niucloud/app/model/member/Member.php | 24 +- .../app/model/member/MemberAccountLog.php | 4 +- niucloud/app/model/member/MemberCashOut.php | 17 +- .../app/model/member/MemberCashOutAccount.php | 5 +- .../model/order/RechargeOrderItemRefund.php | 5 +- niucloud/app/model/pay/Pay.php | 9 +- niucloud/app/model/pay/PayChannel.php | 7 +- niucloud/app/model/pay/Refund.php | 6 +- niucloud/app/model/pay/Transfer.php | 7 +- niucloud/app/model/site/Site.php | 4 +- niucloud/app/model/site/SiteAccountLog.php | 118 ++++ niucloud/app/model/sys/SysAgreement.php | 4 +- niucloud/app/model/sys/SysMenu.php | 8 +- niucloud/app/model/sys/SysNoticeLog.php | 22 +- niucloud/app/model/sys/SysNoticeSmsLog.php | 52 +- niucloud/app/model/sys/SysRole.php | 3 +- .../sys/{SysCronTask.php => SysSchedule.php} | 59 +- niucloud/app/model/sys/SysUser.php | 3 +- .../admin/aliapp/AliappConfigService.php | 4 +- .../admin/article/ArticleCategoryService.php | 12 +- .../service/admin/article/ArticleService.php | 9 +- .../app/service/admin/auth/AuthService.php | 23 +- .../service/admin/auth/AuthSiteService.php | 27 +- .../app/service/admin/auth/ConfigService.php | 3 +- .../app/service/admin/auth/LoginService.php | 1 - .../app/service/admin/cron/CronService.php | 55 -- .../app/service/admin/diy/DiyRouteService.php | 1 + niucloud/app/service/admin/diy/DiyService.php | 331 +++++++++-- .../admin/generator/core/ModelGenerator.php | 2 +- .../admin/generator/core/ServiceGenerator.php | 2 +- .../generator/core/WebIndexGenerator.php | 2 +- .../admin/generator/vm/admin_api_route.vm | 2 +- .../admin/member/MemberAccountService.php | 2 +- .../admin/notice/NoticeSmsLogService.php | 6 +- .../admin/schedule/ScheduleService.php | 93 +++ .../admin/site/SiteAccountLogService.php | 79 +++ .../service/admin/site/SiteGroupService.php | 3 - .../app/service/admin/site/SiteService.php | 40 +- .../service/admin/stat/SiteStatService.php | 4 + .../app/service/admin/sys/AreaService.php | 85 ++- .../service/admin/sys/AttachmentService.php | 6 +- .../app/service/admin/sys/ConfigService.php | 103 +++- .../app/service/admin/sys/MenuService.php | 171 +++--- .../app/service/admin/sys/RoleService.php | 21 +- .../app/service/admin/sys/SystemService.php | 12 +- .../service/admin/user/UserRoleService.php | 35 +- .../app/service/admin/user/UserService.php | 9 +- .../api/article/ArticleCategoryService.php | 7 +- .../service/api/article/ArticleService.php | 9 +- niucloud/app/service/api/diy/DiyService.php | 16 +- .../app/service/api/login/AuthService.php | 5 +- .../app/service/api/member/MemberService.php | 4 +- .../core/addon/CoreAddonBaseService.php | 3 +- .../core/addon/CoreAddonInstallService.php | 40 +- .../service/core/addon/CoreAddonService.php | 3 +- niucloud/app/service/core/addon/WapTrait.php | 60 ++ .../core/aliapp/CoreAliappConfigService.php | 4 +- .../core/member/CoreMemberAccountService.php | 2 +- .../core/member/CoreMemberConfigService.php | 6 +- .../core/member/CoreMemberLabelService.php | 8 - .../core/notice/CoreNoticeLogService.php | 2 +- .../core/notice/CoreNoticeSmsLogService.php | 17 +- .../service/core/pay/CorePayEventService.php | 13 +- .../app/service/core/pay/CorePayService.php | 8 +- .../service/core/pay/CoreRefundService.php | 4 +- .../service/core/pay/CoreTransferService.php | 2 +- .../core/paytype/CoreBalanceService.php | 12 +- .../service/core/schedule/CoreCronService.php | 203 ------- .../schedule/CoreScheduleInstallService.php | 85 +++ .../core/schedule/CoreScheduleService.php | 175 +++++- .../core/site/CoreSiteAccountService.php | 86 +++ .../app/service/core/site/CoreSiteService.php | 73 ++- .../service/core/sys/CoreAgreementService.php | 3 +- .../app/service/core/sys/CoreAreaService.php | 24 +- .../core/sys/CoreAttachmentService.php | 6 +- .../service/core/sys/CoreConfigService.php | 6 +- .../service/core/sys/CoreSysConfigService.php | 21 +- .../service/core/upload/CoreImageService.php | 3 +- .../core/weapp/CoreWeappConfigService.php | 3 +- .../service/core/weapp/CoreWeappService.php | 3 +- .../core/wechat/CoreWechatConfigService.php | 3 +- .../core/wechat/CoreWechatServeService.php | 2 +- niucloud/app/validate/diy/Diy.php | 14 +- niucloud/app/validate/message/AliSms.php | 42 -- niucloud/composer.json | 3 +- niucloud/composer.lock | 113 +++- niucloud/config/console.php | 1 - niucloud/config/cron.php | 9 - niucloud/config/pay.php | 6 +- niucloud/core/dict/BaseDict.php | 6 +- niucloud/core/dict/Schedule.php | 43 +- niucloud/core/upload/Aliyun.php | 3 +- niucloud/core/util/Snowflake.php | 86 +++ niucloud/public/.gitignore | 4 +- .../diy/template/default_index_cover.png | Bin 0 -> 101486 bytes .../default_member_index_one_cover.png | Bin 0 -> 60295 bytes .../default_member_index_two_cover.png | Bin 0 -> 201981 bytes .../images/diy/template/tourism_cover.png | Bin 0 -> 295922 bytes .../template/tourism_member_index_cover.png | Bin 0 -> 76038 bytes .../images/member/public_money_bg.png | Bin 31107 -> 0 bytes 154 files changed, 3008 insertions(+), 1515 deletions(-) create mode 100644 niucloud/addon/hello_world/app/dict/schedule/schedule.php create mode 100644 niucloud/addon/hello_world/app/job/AddonSchedule.php create mode 100644 niucloud/app/adminapi/controller/site/SiteAccount.php delete mode 100644 niucloud/app/adminapi/controller/sys/Cron.php create mode 100644 niucloud/app/adminapi/controller/sys/Schedule.php delete mode 100644 niucloud/app/command/Schedule.php create mode 100644 niucloud/app/command/schedule/Schedule.php rename niucloud/app/dict/{sys/CronDict.php => schedule/ScheduleDict.php} (56%) create mode 100644 niucloud/app/dict/site/SiteAccountLogDict.php create mode 100644 niucloud/app/dict/sys/DateDict.php create mode 100644 niucloud/app/listener/system/SiteIndexListener.php create mode 100644 niucloud/app/model/site/SiteAccountLog.php rename niucloud/app/model/sys/{SysCronTask.php => SysSchedule.php} (71%) delete mode 100644 niucloud/app/service/admin/cron/CronService.php create mode 100644 niucloud/app/service/admin/schedule/ScheduleService.php create mode 100644 niucloud/app/service/admin/site/SiteAccountLogService.php delete mode 100644 niucloud/app/service/core/schedule/CoreCronService.php create mode 100644 niucloud/app/service/core/schedule/CoreScheduleInstallService.php create mode 100644 niucloud/app/service/core/site/CoreSiteAccountService.php delete mode 100644 niucloud/app/validate/message/AliSms.php delete mode 100644 niucloud/config/cron.php create mode 100644 niucloud/core/util/Snowflake.php create mode 100644 niucloud/public/static/resource/images/diy/template/default_index_cover.png create mode 100644 niucloud/public/static/resource/images/diy/template/default_member_index_one_cover.png create mode 100644 niucloud/public/static/resource/images/diy/template/default_member_index_two_cover.png create mode 100644 niucloud/public/static/resource/images/diy/template/tourism_cover.png create mode 100644 niucloud/public/static/resource/images/diy/template/tourism_member_index_cover.png delete mode 100644 niucloud/public/static/resource/images/member/public_money_bg.png diff --git a/niucloud/addon/hello_world/app/dict/diy/pages.php b/niucloud/addon/hello_world/app/dict/diy/pages.php index 1492ee40f..1d788bdf4 100644 --- a/niucloud/addon/hello_world/app/dict/diy/pages.php +++ b/niucloud/addon/hello_world/app/dict/diy/pages.php @@ -7,6 +7,7 @@ return [ 'cover' => '', // 页面封面图 'preview' => '', // 页面预览图 'desc' => '', // 页面描述 + 'mode' => 'diy', // 页面模式:diy:自定义,fixed:固定 // 页面数据源 "data" => [ "global" => [ diff --git a/niucloud/addon/hello_world/app/dict/diy/template.php b/niucloud/addon/hello_world/app/dict/diy/template.php index 98a006df6..0e5621557 100644 --- a/niucloud/addon/hello_world/app/dict/diy/template.php +++ b/niucloud/addon/hello_world/app/dict/diy/template.php @@ -4,9 +4,11 @@ return [ 'DIY_HELLO_WORLD_INDEX' => [ 'title' => get_lang('dict_diy.page_hello_world_index'), 'page' => 'pages/hello_world/index', + 'action' => '' ], 'DIY_HELLO_WORLD_INFO' => [ 'title' => get_lang('dict_diy.page_hello_world_info'), 'page' => 'pages/hello_world/info', + 'action' => '' ], ]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/notice/notice.php b/niucloud/addon/hello_world/app/dict/notice/notice.php index 0a9e304d6..def067e88 100644 --- a/niucloud/addon/hello_world/app/dict/notice/notice.php +++ b/niucloud/addon/hello_world/app/dict/notice/notice.php @@ -3,6 +3,8 @@ return [ 'hello_world_test' => [ 'key' => 'hello_world_test', 'app_type' => 'site', + 'receiver_type' => 1, + 'async' => false, 'name' => 'hello world消息', 'title' => 'hello world演示插件消息', 'variable' =>[ diff --git a/niucloud/addon/hello_world/app/dict/schedule/schedule.php b/niucloud/addon/hello_world/app/dict/schedule/schedule.php new file mode 100644 index 000000000..57867a985 --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/schedule/schedule.php @@ -0,0 +1,15 @@ + 'addon_schedule', + 'name' => '插件计划任务', + 'desc' => '', + 'time' => [ + 'type' => 'min', + 'min' => 1 + ], + 'class' => 'addon\hello_world\app\job\AddonSchedule', + 'function' => '' + ], +]; diff --git a/niucloud/addon/hello_world/app/job/AddonSchedule.php b/niucloud/addon/hello_world/app/job/AddonSchedule.php new file mode 100644 index 000000000..182e81b4a --- /dev/null +++ b/niucloud/addon/hello_world/app/job/AddonSchedule.php @@ -0,0 +1,27 @@ + [ //插件如果要单独分类展示,需要专门定义 [ @@ -43,6 +43,5 @@ class AppManageListener "url" => "/hello_world" ], ]; - return $data; } } \ No newline at end of file diff --git a/niucloud/addon/hello_world/sql/install.sql b/niucloud/addon/hello_world/sql/install.sql index 5464ddfee..e2f11abf9 100644 --- a/niucloud/addon/hello_world/sql/install.sql +++ b/niucloud/addon/hello_world/sql/install.sql @@ -3,4 +3,4 @@ CREATE TABLE IF NOT EXISTS `{{prefix}}hello_world` ( `name` varchar(255) NOT NULL DEFAULT '' COMMENT '名称', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='演示插件表'; -INSERT INTO `{{prefix}}hello_world`(`id`, `name`) VALUES (1, '名称'); \ No newline at end of file +INSERT INTO `{{prefix}}hello_world`(`name`) VALUES ('名称'); \ No newline at end of file diff --git a/niucloud/app/ExceptionHandle.php b/niucloud/app/ExceptionHandle.php index d27b4dc29..f89092007 100644 --- a/niucloud/app/ExceptionHandle.php +++ b/niucloud/app/ExceptionHandle.php @@ -91,7 +91,7 @@ class ExceptionHandle extends Handle // 添加自定义异常处理机制 if ($e instanceof DbException) { - return fail('DATA_GET_FAIL', [ + return fail(get_lang('DATA_GET_FAIL').':'.$e->getMessage(), [ 'file' => $e->getFile(), 'line' => $e->getLine(), 'message' => $e->getMessage(), diff --git a/niucloud/app/Request.php b/niucloud/app/Request.php index 4670f5e45..c8e8751ac 100644 --- a/niucloud/app/Request.php +++ b/niucloud/app/Request.php @@ -149,7 +149,7 @@ class Request extends \think\Request * @return array|string|null */ public function adminSiteId(){ - return $this->header(system_name('admin_site_id_name')) ?? $this->defaultSiteId(); + return $this->header(system_name('admin_site_id_name')); } /** @@ -157,7 +157,7 @@ class Request extends \think\Request * @return array|string|null */ public function apiSiteId(){ - return $this->header(system_name('api_site_id_name')) ?? $this->defaultSiteId(); + return $this->header(system_name('api_site_id_name')); } /** diff --git a/niucloud/app/adminapi/controller/auth/Auth.php b/niucloud/app/adminapi/controller/auth/Auth.php index acc3adc96..22b9509d9 100644 --- a/niucloud/app/adminapi/controller/auth/Auth.php +++ b/niucloud/app/adminapi/controller/auth/Auth.php @@ -72,4 +72,15 @@ class Auth extends BaseAdminController public function site(){ return success((new AuthSiteService())->getSiteInfo()); } + + /** + * 选择可以选择的页面 + * @return \think\Response + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\DbException + * @throws \think\db\exception\ModelNotFoundException + */ + public function getShowMenuList(){ + return success((new AuthSiteService())->getShowMenuList()); + } } diff --git a/niucloud/app/adminapi/controller/diy/Diy.php b/niucloud/app/adminapi/controller/diy/Diy.php index bcdbce201..ee693bcf2 100644 --- a/niucloud/app/adminapi/controller/diy/Diy.php +++ b/niucloud/app/adminapi/controller/diy/Diy.php @@ -23,7 +23,7 @@ use core\base\BaseAdminController; class Diy extends BaseAdminController { /** - * @notes 获取自定义页面列表 + * @notes 获取自定义页面分页列表 * @return \think\Response */ public function lists() @@ -35,6 +35,20 @@ class Diy extends BaseAdminController return success(( new DiyService() )->getPage($data)); } + /** + * @notes 获取自定义页面列表 + * @return \think\Response + */ + public function getList() + { + $data = $this->request->params([ + [ "title", "" ], + [ "type", "" ], + [ 'mode', '' ] + ]); + return success(( new DiyService() )->getList($data)); + } + /** * 自定义页面详情 * @param int $id @@ -55,6 +69,8 @@ class Diy extends BaseAdminController [ "title", "" ], [ "name", "" ], [ "type", "" ], + [ 'template', '' ], + [ 'mode', 'diy' ], [ "value", "" ], [ 'is_default', 0 ] ]); @@ -75,6 +91,7 @@ class Diy extends BaseAdminController [ "title", "" ], [ "name", "" ], [ "value", "" ], + [ 'is_change', '' ] ]); $this->validate($data, 'app\validate\diy\Diy.edit'); ( new DiyService() )->edit($id, $data); @@ -113,8 +130,8 @@ class Diy extends BaseAdminController $params = $this->request->params([ [ 'id', "" ], [ "name", "" ], - [ "template", "" ], - [ 'template_name', '' ], + [ "type", "" ], + [ 'template', '' ], [ "title", "" ], ]); @@ -138,10 +155,12 @@ class Diy extends BaseAdminController public function getTemplate() { $params = $this->request->params([ - [ 'type', "" ], + [ 'type', "" ], // 页面类型模板 + [ 'action', '' ], // 页面是否装修标识,为空标识不装修,decorate:装修 + [ 'mode', '' ] // 页面展示模式,diy:自定义,fixed:固定 ]); $diy_service = new DiyService(); - return success($diy_service->getTemplate($params[ 'type' ])); + return success($diy_service->getTemplate($params)); } /** @@ -157,4 +176,39 @@ class Diy extends BaseAdminController return success('MODIFY_SUCCESS'); } + /** + * 获取装修页面列表 + */ + public function getDecoratePage() + { + return success(( new DiyService() )->getDecoratePage()); + } + + /** + * 切换模板 + */ + public function changeTemplate() + { + $data = $this->request->params([ + [ "id", "" ], + [ 'type', '' ], // 页面类型 + [ 'mode', '' ], // 页面展示模式,diy:自定义,fixed:固定 + [ 'template', '' ] // 模板名称 + ]); + return success(( new DiyService() )->changeTemplate($data)); + } + + /** + * 获取页面预览数据 + */ + public function getPreviewData() + { + $data = $this->request->params([ + [ "id", "" ], + [ 'name', '' ] + ]); + $res = ( new DiyService() )->getPreviewData($data); + return success($res); + } + } diff --git a/niucloud/app/adminapi/controller/notice/SmsLog.php b/niucloud/app/adminapi/controller/notice/SmsLog.php index 62666f2e1..60303af6d 100644 --- a/niucloud/app/adminapi/controller/notice/SmsLog.php +++ b/niucloud/app/adminapi/controller/notice/SmsLog.php @@ -37,7 +37,7 @@ class SmsLog extends BaseAdminController public function info($id) { - $res = ( new NoticeLogService() )->getInfo($id); + $res = ( new NoticeSmsLogService() )->getInfo($id); return success($res); } diff --git a/niucloud/app/adminapi/controller/site/Site.php b/niucloud/app/adminapi/controller/site/Site.php index 8c41c6594..c2af25072 100644 --- a/niucloud/app/adminapi/controller/site/Site.php +++ b/niucloud/app/adminapi/controller/site/Site.php @@ -120,4 +120,8 @@ class Site extends BaseAdminController (new SiteService())->edit($id, $data); return success('SUCCESS'); } + public function indexConfig() + { + + } } diff --git a/niucloud/app/adminapi/controller/site/SiteAccount.php b/niucloud/app/adminapi/controller/site/SiteAccount.php new file mode 100644 index 000000000..66f965c2f --- /dev/null +++ b/niucloud/app/adminapi/controller/site/SiteAccount.php @@ -0,0 +1,57 @@ +request->params([ + ['type', ''], + ['create_time', []], + ]); + return success((new SiteAccountLogService())->getPage($data)); + } + + /** + * 账单详情 + * @param int $id + */ + public function info(int $id) + { + return success((new SiteAccountLogService())->getInfo($id)); + } + /** + * 累计账单 + */ + public function stat() + { + return success((new SiteAccountLogService())->stat()); + } + + public function accountType() + { + return success(SiteAccountLogDict::getType()); + } +} diff --git a/niucloud/app/adminapi/controller/sys/Area.php b/niucloud/app/adminapi/controller/sys/Area.php index e2c8d172e..d5c520544 100644 --- a/niucloud/app/adminapi/controller/sys/Area.php +++ b/niucloud/app/adminapi/controller/sys/Area.php @@ -34,4 +34,26 @@ class Area extends BaseAdminController { return success((new AreaService())->getAreaTree($level)); } + + /** + * @param string $address + * 地址解析 + */ + public function addressInfo(){ + $data = $this->request->params([ + ['address', ''], + ]); + return success((new AreaService())->getAddress($data['address'])); + } + + /** + * @param string $location + * 逆地址解析 + */ + public function contraryAddress(){ + $data = $this->request->params([ + ['location', ''], + ]); + return success((new AreaService())->getAddressInfo($data['location'])); + } } diff --git a/niucloud/app/adminapi/controller/sys/Config.php b/niucloud/app/adminapi/controller/sys/Config.php index e3d90f7d4..2eaf22d2f 100644 --- a/niucloud/app/adminapi/controller/sys/Config.php +++ b/niucloud/app/adminapi/controller/sys/Config.php @@ -123,4 +123,44 @@ class Config extends BaseAdminController public function getMap(){ return success((new ConfigService())->getMap()); } + + /** + * 获取站点首页列表(如果正在使用is_use = 1) + */ + public function getSiteIndexList() + { + return success((new ConfigService())->getSiteIndexList()); + } + + /** + * 首页配置 + */ + public function setSiteIndex() + { + $data = $this->request->params([ + ['view_path', ''], + ]); + (new ConfigService())->setSiteIndexConfig($data); + return success(); + } + + /** + * 设置快捷菜单 + */ + public function setShortcutMenu() + { + $data = $this->request->params([ + ['menu', []], + ]); + (new ConfigService())->setShortcutMenu($data['menu']); + return success(); + } + + /** + * 获取站点快捷菜单 + */ + public function getShortcutMenu() + { + return success(data:(new ConfigService())->getShortcutMenu()); + } } diff --git a/niucloud/app/adminapi/controller/sys/Cron.php b/niucloud/app/adminapi/controller/sys/Cron.php deleted file mode 100644 index cf20b7552..000000000 --- a/niucloud/app/adminapi/controller/sys/Cron.php +++ /dev/null @@ -1,56 +0,0 @@ -request->params([ - ['last_time', []], - ['type', ''], - ['title', ''] - ]); - $list = (new CronService())->getPage($data); - return success($list); - - } - - /** - * 任务详情 - * @param $id - * @return Response - */ - public function info($id){ - return success((new CronService())->getInfo($id)); - } - - /** - * 获取任务模式 - * @return \think\Response - */ - public function getType(){ - return success((new CronDict())->getType()); - } -} diff --git a/niucloud/app/adminapi/controller/sys/Schedule.php b/niucloud/app/adminapi/controller/sys/Schedule.php new file mode 100644 index 000000000..b91c15086 --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Schedule.php @@ -0,0 +1,107 @@ +request->params([ + ['key', ''], + ['status', ''], + ]); + return success(data:(new ScheduleService())->getPage($data)); + + } + + + /** + * 获取任务模式 + * @return \think\Response + */ + public function getType(){ + return success(data:ScheduleDict::getType()); + } + + /** + * 详情 + * @param int $id + */ + public function info(int $id) + { + return success(( new ScheduleService() )->getInfo($id)); + } + + /** + * 添加 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + [ 'key', '' ], + [ 'time', [] ], + [ 'status', ScheduleDict::OFF ], + ]); + ( new ScheduleService() )->add($data); + return success('ADD_SUCCESS'); + } + + /** + * 编辑 + * @param int $id + * @return Response + */ + public function edit(int $id) + { + $data = $this->request->params([ + [ 'key', '' ], + [ 'time', [] ], + [ 'status', ScheduleDict::OFF ], + ]); + ( new ScheduleService() )->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 启用或关闭 + * @param int $id + * @return \think\Response + */ + public function modifyStatus(int $id){ + $data = $this->request->params([ + [ 'status', ScheduleDict::OFF ], + ]); + ( new ScheduleService() )->modifyStatus($id, $data['status']); + return success('EDIT_SUCCESS'); + } + /** + * 删除 + * @param int $id + */ + public function del(int $id) + { + + ( new ScheduleService() )->del($id); + return success('DELETE_SUCCESS'); + } +} diff --git a/niucloud/app/adminapi/controller/sys/System.php b/niucloud/app/adminapi/controller/sys/System.php index 377ff5cf8..46fd3c567 100644 --- a/niucloud/app/adminapi/controller/sys/System.php +++ b/niucloud/app/adminapi/controller/sys/System.php @@ -11,6 +11,7 @@ namespace app\adminapi\controller\sys; +use app\service\admin\schedule\ScheduleService; use app\service\admin\sys\SystemService; use core\base\BaseAdminController; @@ -70,4 +71,6 @@ class System extends BaseAdminController public function checkSchedule(){ return success(data:(new SystemService())->checkSchedule()); } + + } diff --git a/niucloud/app/adminapi/route/auth.php b/niucloud/app/adminapi/route/auth.php index 2afce3892..14158f339 100644 --- a/niucloud/app/adminapi/route/auth.php +++ b/niucloud/app/adminapi/route/auth.php @@ -32,6 +32,8 @@ Route::group('auth', function () { Route::put('edit', 'auth.Auth/edit'); //授权站点信息 Route::get('site', 'auth.Auth/site'); + //站点可以显示的菜单 + Route::get('site/showmenu', 'auth.Auth/getShowMenuList'); })->middleware([ AdminCheckToken::class, diff --git a/niucloud/app/adminapi/route/diy.php b/niucloud/app/adminapi/route/diy.php index 5e6e8068e..94945a497 100644 --- a/niucloud/app/adminapi/route/diy.php +++ b/niucloud/app/adminapi/route/diy.php @@ -21,9 +21,17 @@ use think\facade\Route; Route::group('diy', function() { /***************************************************** 自定义页面管理 ****************************************************/ - //自定义页面列表 + //自定义页面分页列表 Route::get('diy', 'diy.Diy/lists'); + Route::get('list', 'diy.Diy/getList'); + + // 页面装修列表 + Route::get('decorate', 'diy.Diy/getDecoratePage'); + + // 切换模板 + Route::put('change', 'diy.Diy/changeTemplate'); + //自定义页面详情 Route::get('diy/:id', 'diy.Diy/info'); @@ -60,6 +68,8 @@ Route::group('diy', function() { // 编辑自定义页面分享内容 Route::put('diy/share', 'diy.Diy/modifyShare'); + // 获取页面预览数据 + Route::put('preview', 'diy.Diy/getPreviewData'); /***************************************************** 配置相关 *****************************************************/ diff --git a/niucloud/app/adminapi/route/site.php b/niucloud/app/adminapi/route/site.php index 0e7ba889c..b6edc43f4 100644 --- a/niucloud/app/adminapi/route/site.php +++ b/niucloud/app/adminapi/route/site.php @@ -70,7 +70,15 @@ Route::group('site', function () { Route::get('log/:id', 'site.UserLog/info'); /***************************************************** 站点菜单 **************************************************/ Route::get('site/menu', 'site.Site/menu'); - + /***************************************************** 站点账单 *************************************************/ + //站点账单列表 + Route::get('account', 'site.SiteAccount/lists'); + //站点账单详情 + Route::get('account/:id', 'site.SiteAccount/info'); + //账单统计 + Route::get('account/stat', 'site.SiteAccount/stat'); + //账单类型 + Route::get('account/type', 'site.SiteAccount/accountType'); })->middleware([ AdminCheckToken::class, diff --git a/niucloud/app/adminapi/route/sys.php b/niucloud/app/adminapi/route/sys.php index 6297910ba..c9792f679 100644 --- a/niucloud/app/adminapi/route/sys.php +++ b/niucloud/app/adminapi/route/sys.php @@ -72,6 +72,16 @@ Route::group('sys', function () { //地图设置 Route::get('config/map', 'sys.Config/getMap'); + //首页加载设置 + Route::put('config/site_index', 'sys.Config/setSiteIndex'); + //获取首页加载 + Route::get('config/site_index', 'sys.Config/getSiteIndexList'); + + //快捷菜单设置 + Route::put('config/shortcut_menu', 'sys.Config/setShortcutMenu'); + //获取快捷菜单 + Route::get('config/shortcut_menu', 'sys.Config/getShortcutMenu'); + //登录注册设置 Route::get('config/login', 'login.Config/getConfig'); //登录注册设置 @@ -126,14 +136,10 @@ Route::group('sys', function () { Route::get('area/list_by_pid/:pid', 'sys.Area/listByPid'); //通过层级获取列表 Route::get('area/tree/:level', 'sys.Area/tree'); + //获取地址位置信息 + Route::get('area/get_info', 'sys.Area/addressInfo'); + Route::get('area/contrary', 'sys.Area/contraryAddress'); - /***************************************************** 任务管理 ****************************************************/ - //任务列表 - Route::get('cron', 'sys.Cron/lists'); - //任务详情 - Route::get('cron/:id', 'sys.Cron/info'); - //任务模式 - Route::get('cron/type', 'sys.Cron/getType'); /***************************************************** 渠道管理 ****************************************************/ Route::get('channel', 'sys.Channel/getChannelType'); //场景域名 @@ -144,12 +150,31 @@ Route::group('sys', function () { Route::get('job', 'sys.System/checkJob'); //校验计划任务 Route::get('schedule', 'sys.System/checkSchedule'); + + + /***************************************************** 计划任务 ****************************************************/ + //计划任务列表 + Route::get('schedule/list', 'sys.Schedule/lists'); + //任务详情 + Route::get('schedule/:id', 'sys.Schedule/info'); + //设置任务状态 + Route::put('schedule/modify/status/:id', 'sys.Schedule/modifyStatus'); + //任务新增 + Route::post('schedule', 'sys.Schedule/add'); + //编辑任务 + Route::put('schedule/:id', 'sys.Schedule/edit'); + //删除任务 + Route::delete('schedule/:id', 'sys.Schedule/del'); + //任务模式 + Route::get('schedule/type', 'sys.Schedule/getType'); /***************************************************** 应用管理 ****************************************************/ Route::get('applist', 'sys.App/getAppList'); /***************************************************** 清理缓存-刷新菜单 ****************************************************/ Route::post('schema/clear', 'sys.System/schemaCache'); + + })->middleware([ AdminCheckToken::class, AdminCheckRole::class, diff --git a/niucloud/app/api/middleware/ApiChannel.php b/niucloud/app/api/middleware/ApiChannel.php index 0a6a9065b..e78513184 100644 --- a/niucloud/app/api/middleware/ApiChannel.php +++ b/niucloud/app/api/middleware/ApiChannel.php @@ -12,13 +12,15 @@ namespace app\api\middleware; use app\Request; +use app\service\core\site\CoreSiteService; use Closure; +use core\exception\AuthException; use Exception; use think\facade\Log; /** - * api渠道处理, 各种渠道的请求不叫特殊, 会在这儿将渠道的公共数据处理好 + * api渠道处理, 各种渠道的请求, 会在这儿将渠道的公共数据处理好 */ class ApiChannel { @@ -38,7 +40,10 @@ class ApiChannel if (in_array($request->rule()->getRule(), $channel_rules)) { $site_id = $request->param('site_id', -1); if ($site_id != -1) { - $request->pushHeader([ system_name('api_site_id_name') => $site_id ]); + $site_info = (new CoreSiteService())->getSiteCache($site_id); + if(empty($site_info)) throw new AuthException('SITE_NOT_EXIST'); + $site_code = $site_info['code'] ?? ''; + $request->pushHeader([ system_name('api_site_id_name') => $site_code ]); } } return $next($request); diff --git a/niucloud/app/api/middleware/ApiCheckToken.php b/niucloud/app/api/middleware/ApiCheckToken.php index 090839dbb..0010a653c 100644 --- a/niucloud/app/api/middleware/ApiCheckToken.php +++ b/niucloud/app/api/middleware/ApiCheckToken.php @@ -30,11 +30,11 @@ class ApiCheckToken /** * @param Request $request * @param Closure $next - * @param bool $exception 是否把错误抛出 + * @param bool $is_throw_exception 是否把错误抛出 * @return mixed * @throws Exception */ - public function handle(Request $request, Closure $next, bool $exception = false) + public function handle(Request $request, Closure $next, bool $is_throw_exception = false) { $request->appType(AppTypeDict::API); //检测站点 @@ -45,8 +45,8 @@ class ApiCheckToken $token_info = ( new LoginService() )->parseToken($token); } catch (AuthException $e) { //是否将登录错误抛出 - if ($exception) - return fail($e->getMessage()); + if ($is_throw_exception) + return fail($e->getMessage(), [], $e->getCode()); } if (!empty($token_info)) { $request->memberId($token_info[ 'member_id' ]); diff --git a/niucloud/app/api/route/dispatch/BindDispatch.php b/niucloud/app/api/route/dispatch/BindDispatch.php index f8c31041a..f3b8ba26e 100644 --- a/niucloud/app/api/route/dispatch/BindDispatch.php +++ b/niucloud/app/api/route/dispatch/BindDispatch.php @@ -32,7 +32,7 @@ class BindDispatch extends Controller $controller = 'weapp.Weapp'; $action = 'register'; break; - }; + } $this->controller = $controller ?? ''; diff --git a/niucloud/app/command/Schedule.php b/niucloud/app/command/Schedule.php deleted file mode 100644 index 97a430a3b..000000000 --- a/niucloud/app/command/Schedule.php +++ /dev/null @@ -1,92 +0,0 @@ -setName('schedule:run'); - } - - protected function execute(Input $input, Output $output) - { - //写入计划任务最后一次执行事件,用于环境监测 - $file = root_path('runtime').'.schedule'; - file_put_contents($file, time()); - $schedules = (new CoreScheduleService())->getList(); - foreach($schedules as $v){ - $class = $v['class'] ?: 'app\\job\\schedule\\'.Str::studly($v['key']); - $function = $v['function'] ?: 'doJob'; - $call_back = [ - $class, - $function - ]; - - $event = $this->call($call_back); - switch($v['time']['type']){ - case 'min': - $event->everyMinute(); - break; - case 'hour': - $event->hourly(); - break; - case 'day': - $event->daily(); - break; - case 'week': - $event->weekly(); - break; - case 'month': - $event->monthly(); - break; - } - - } - - parent::execute($input, $output); - } - - /** - * 获取计划事件默认使用的时区 - */ - protected function scheduleTimezone(): DateTimeZone|string|null - { - return 'Asia/Shanghai'; - } - -// protected function getCrontab($data): string -// { -// $crontab = ''; -// switch ($data['type']) { -// case 'sec':// 每隔几秒 -// $crontab = '*/' . $data['sec'] . ' * * * * *'; -// break; -// case 'min':// 每隔几分 -// $crontab = '0 */' . $data['min'] . ' * * * *'; -// break; -// case 'hour':// 每隔几时第几分钟执行 -// $crontab = '0 ' . $data['min'] . ' * * * *'; -// break; -// case 'day':// 每日几时几分几秒 -// $crontab = $data['sec'] . ' ' . $data['min'] . ' ' . $data['hour'] . ' * * *'; -// break; -// case 'week':// 每周一次,周几具体时间执行 -// $crontab = $data['sec'] . ' ' . $data['min'] . ' ' . $data['hour'] . ' * * ' . $data['week']; -// break; -// case 'month':// 每月一次,某日具体时间执行 -// $crontab = $data['sec'] . ' ' . $data['min'] . ' ' . $data['hour'] . ' ' . $data['day'] . ' * *'; -// break; -// } -// return $crontab; -// } - -} \ No newline at end of file diff --git a/niucloud/app/command/schedule/Schedule.php b/niucloud/app/command/schedule/Schedule.php new file mode 100644 index 000000000..cd7dd82e0 --- /dev/null +++ b/niucloud/app/command/schedule/Schedule.php @@ -0,0 +1,54 @@ +expression($this->getCrontab($this->vars['time'])); + } + + /** + * 执行任务 + * @return mixed + */ + protected function execute() + { + //...具体的任务执行 + (new CoreScheduleService())->execute($this->vars); + } + + protected function getCrontab($data): string + { + $crontab = ''; + $min = $data['min'] ?? '*'; + $hour = $data['hour'] ?? '*'; + $day = $data['day'] ?? '*'; + $week = $data['week'] ?? '*'; + switch ($data['type']) { + case 'min':// 每隔几分 + $crontab = '*/' . $min . ' * * * *'; + break; + case 'hour':// 每隔几时第几分钟执行 + $crontab = $min . ' */' . $hour . ' * * *'; + break; + case 'day':// 每隔几日几时几分几秒执行 + $crontab = $min . ' ' . $hour . ' */' . $day . ' * *'; + break; + case 'week':// 每周一次,周几具体时间执行 + $crontab = $min . ' ' . $hour . ' * * ' . $week; + break; + case 'month':// 每月一次,某日具体时间执行 + $crontab = $min . ' ' . $hour . ' ' . $day . ' * *'; + break; + } + return $crontab; + } +} diff --git a/niucloud/app/common.php b/niucloud/app/common.php index b6d3c46d2..37c2931d6 100644 --- a/niucloud/app/common.php +++ b/niucloud/app/common.php @@ -5,7 +5,7 @@ use think\Response; use think\facade\Lang; use think\facade\Queue; use think\facade\Cache; - +use core\util\Snowflake; // 应用公共文件 /** @@ -369,8 +369,11 @@ function filter($string) */ function create_no(string $prefix = '', string $tag = '') { - return $prefix . substr(md5($tag), -5) . uniqid(); - + $dataCenterId = 1; + $machineId = 2; + $snowflake = new Snowflake($dataCenterId, $machineId); + $id = $snowflake->generateId(); + return $prefix.$tag.$id; } /** @@ -416,8 +419,7 @@ function unique_random($len = 10) { $str = 'qwertyuiopasdfghjklzxcvbnmasdfgh'; str_shuffle($str); - $res = substr(str_shuffle($str), 0, $len); - return $res; + return substr(str_shuffle($str), 0, $len); } /** @@ -623,6 +625,7 @@ function parse_sql($content = '', $string = false, $replace = []) * 递归查询目录下所有文件 * @param $path * @param $data + * @param $search * @return void */ function search_dir($path, &$data, $search = '') @@ -677,8 +680,8 @@ function getFileMap($path, $arr = []) * 如果不存在则写入缓存 * @param string|null $name * @param $value - * @param $options * @param $tag + * @param $options * @return mixed|string */ function cache_remember(string $name = null, $value = '', $tag = null, $options = null){ diff --git a/niucloud/app/dict/diy/PagesDict.php b/niucloud/app/dict/diy/PagesDict.php index d140aaa76..a61f23ed3 100644 --- a/niucloud/app/dict/diy/PagesDict.php +++ b/niucloud/app/dict/diy/PagesDict.php @@ -23,18 +23,19 @@ class PagesDict /** * 获取页面数据 - * @param string $type + * @param array $params * @return array|string|null */ - public static function getPages($type = '') + public static function getPages($params = []) { $system_pages = [ 'DIY_INDEX' => [ 'default_index' => [ // 页面标识 "title" => "首页", // 页面名称 - 'cover' => '', // 页面封面图 + 'cover' => 'static/resource/images/diy/template/default_index_cover.png', // 页面封面图 'preview' => '', // 页面预览图 - 'desc' => '', // 页面描述 + 'desc' => '官方推出的系统首页', // 页面描述 + 'mode' => 'diy', // 页面模式:diy:自定义,fixed:固定 // 页面数据源 "data" => [ "global" => [ @@ -255,14 +256,26 @@ class PagesDict ] ] ] - ] + ], +// 'tourism' => [ +// "title" => "旅游", // 页面名称 +// 'cover' => 'static/resource/images/diy/template/tourism_cover.png', // 页面封面图 +// 'preview' => '', // 页面预览图 +// 'desc' => '酒店旅游住宿门票景点', // 页面描述 +// 'mode' => 'fixed', // 页面模式:diy:自定义,fixed:固定 +// 'data' => [ +// 'component' => 'tourism-index', // 模板组件名称 +// 'link' => '' // 装修链接 +// ] +// ] ], 'DIY_MEMBER_INDEX' => [ 'default_member_index_one' => [ "title" => "个人中心(风格一)", // 页面名称 - 'cover' => '', // 页面封面图 + 'cover' => 'static/resource/images/diy/template/default_member_index_one_cover.png', // 页面封面图 'preview' => '', // 页面预览图 - 'desc' => '', // 页面描述 + 'desc' => '官方推出个人中心(风格一)', // 页面描述 + 'mode' => 'diy', // 页面数据源 "data" => [ "global" => [ @@ -583,9 +596,10 @@ class PagesDict ], 'default_member_index_two' => [ "title" => "个人中心(风格二)", // 页面名称 - 'cover' => '', // 页面封面图 + 'cover' => 'static/resource/images/diy/template/default_member_index_two_cover.png', // 页面封面图 'preview' => '', // 页面预览图 - 'desc' => '', // 页面描述 + 'desc' => '官方推出个人中心(风格二)', // 页面描述 + 'mode' => 'diy', // 页面数据源 "data" => [ "global" => [ @@ -904,14 +918,40 @@ class PagesDict ] ] - ] + ], +// 'tourism' => [ +// "title" => "旅游", // 页面名称 +// 'cover' => 'static/resource/images/diy/template/tourism_member_index_cover.png', // 页面封面图 +// 'preview' => '', // 页面预览图 +// 'desc' => '酒店旅游住宿门票景点', // 页面描述 +// 'mode' => 'fixed', // 页面模式:diy:自定义,fixed:固定 +// 'data' => [ +// 'component' => 'tourism-member', // 模板组件名称 +// 'link' => '' // 装修链接 +// ] +// ] ] ]; $pages = ( new DictLoader("UniappPages") )->load($system_pages); - if (empty($type)) { - return $pages; + if (!empty($params[ 'type' ])) { + if (!empty($pages[ $params[ 'type' ] ])) { + $temp = $pages[ $params[ 'type' ] ]; + if (isset($params[ 'mode' ]) && !empty($params[ 'mode' ])) { + foreach ($temp as $k => $v) { + if ($params[ 'mode' ] != $v[ 'mode' ]) { + unset($temp[ $k ]); + } + } + } + } else { + + return []; + } + + return $temp; } - return $pages[ $type ] ?? ''; + + return $pages; } } \ No newline at end of file diff --git a/niucloud/app/dict/diy/TemplateDict.php b/niucloud/app/dict/diy/TemplateDict.php index 573533422..9cb6f05c7 100644 --- a/niucloud/app/dict/diy/TemplateDict.php +++ b/niucloud/app/dict/diy/TemplateDict.php @@ -23,30 +23,47 @@ class TemplateDict /** * 获取页面模板 - * @param string $type - * @return array|string + * @param array $params + * @return array|string|null */ - public static function getTemplate($type = '') + public static function getTemplate($params = []) { $system_pages = [ 'DIY_INDEX' => [ 'title' => get_lang('dict_diy.page_index'), 'page' => 'pages/index/index', + 'action' => 'decorate' // 页面是否装修标识,为空标识不装修,decorate:装修 ], 'DIY_MEMBER_INDEX' => [ 'title' => get_lang('dict_diy.page_member_index'), 'page' => 'pages/member/index', + 'action' => 'decorate' ], 'DIY_PAGE' => [ 'title' => get_lang('dict_diy.page_diy'), 'page' => 'pages/index/diy', + 'action' => '' ] ]; - $pages = (new DictLoader("UniappTemplate"))->load($system_pages); - if (empty($type)) { - return $pages; + + $pages = ( new DictLoader("UniappTemplate") )->load($system_pages); + + if (!empty($params[ 'type' ]) && !empty($pages[ $params[ 'type' ] ])) { + return [ $params[ 'type' ] => $pages[ $params[ 'type' ] ] ]; } - return $pages[ $type ] ?? ''; + + if (!empty($params[ 'action' ])) { + $temp = []; + foreach ($pages as $k => $v) { + if (isset($v[ 'action' ]) && $params[ 'action' ] == $v[ 'action' ]) { + $temp[ $k ] = $v; + } + + } + return $temp; + } + + return $pages; } } \ No newline at end of file diff --git a/niucloud/app/dict/menu/admin.php b/niucloud/app/dict/menu/admin.php index 4824fb02a..8949f9642 100644 --- a/niucloud/app/dict/menu/admin.php +++ b/niucloud/app/dict/menu/admin.php @@ -525,6 +525,19 @@ 'sort' => 50, 'status' => 1, 'is_show' => 1, + ], + [ + 'menu_name' => '计划任务', + 'menu_key' => 'tools_schedule', + 'menu_type' => 1, + 'icon' => 'element-SetUp', + 'api_url' => '', + 'router_path' => 'schedule', + 'view_path' => 'tools/schedule', + 'methods' => '', + 'sort' => 40, + 'status' => 1, + 'is_show' => 1, ] ] ], diff --git a/niucloud/app/dict/menu/site.php b/niucloud/app/dict/menu/site.php index 26bf034e6..93e18493b 100644 --- a/niucloud/app/dict/menu/site.php +++ b/niucloud/app/dict/menu/site.php @@ -28,8 +28,8 @@ return 'is_show' => 1, 'children' => [ [ - 'menu_name' => '首页装修', - 'menu_key' => 'diy_page_index', + 'menu_name' => '页面装修', + 'menu_key' => 'diy_page_decorate', 'menu_type' => 1, 'icon' => 'element-House', 'api_url' => '', @@ -40,19 +40,6 @@ return 'status' => 1, 'is_show' => 1, ], - [ - 'menu_name' => '个人中心', - 'menu_key' => 'diy_page_member', - 'menu_type' => 1, - 'icon' => 'element-ScaleToOriginal', - 'api_url' => '', - 'router_path' => 'member', - 'view_path' => 'diy/member', - 'methods' => '', - 'sort' => 90, - 'status' => 1, - 'is_show' => 1, - ], [ 'menu_name' => '保存', 'menu_key' => 'diy_page_update', @@ -62,12 +49,12 @@ return 'router_path' => '', 'view_path' => '', 'methods' => 'post', - 'sort' => 80, + 'sort' => 95, 'status' => 1, 'is_show' => 1, ], [ - 'menu_name' => '页面管理', + 'menu_name' => '微页面', 'menu_key' => 'diy_page_list', 'menu_type' => 1, 'icon' => 'iconfont-icondianpuzhuangxiu', @@ -75,7 +62,20 @@ return 'router_path' => 'list', 'view_path' => 'diy/list', 'methods' => 'get', - 'sort' => 70, + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '页面路径', + 'menu_key' => 'diy_page_route', + 'menu_type' => 1, + 'icon' => 'iconfont-icondianpuzhuangxiu', + 'api_url' => 'diy/diy', + 'router_path' => 'route', + 'view_path' => 'diy/route', + 'methods' => 'get', + 'sort' => 85, 'status' => 1, 'is_show' => 1, ], @@ -88,25 +88,24 @@ return 'router_path' => 'tabbar', 'view_path' => 'diy/tabbar', 'methods' => 'get', - 'sort' => 60, + 'sort' => 80, 'status' => 1, 'is_show' => 1, - 'children' => + 'children' => [ [ - [ - 'menu_name' => '保存', - 'menu_key' => 'diy_tabbar_update', - 'menu_type' => 2, - 'icon' => '', - 'api_url' => 'diy/bottom', - 'router_path' => '', - 'view_path' => '', - 'methods' => 'post', - 'sort' => 100, - 'status' => 1, - 'is_show' => 1, - ], + 'menu_name' => '保存', + 'menu_key' => 'diy_tabbar_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'diy/bottom', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, ], + ], ], [ 'menu_name' => '素材管理', @@ -117,7 +116,7 @@ return 'router_path' => 'attachment', 'view_path' => 'tools/attachment', 'methods' => 'get', - 'sort' => 50, + 'sort' => 75, 'status' => 1, 'is_show' => 1, ] @@ -148,6 +147,19 @@ return 'sort' => 0, 'status' => 1, 'is_show' => 0, + ], + [ + 'menu_name' => '页面预览', + 'menu_key' => 'page_preview', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'preview', + 'view_path' => 'diy/preview', + 'methods' => '', + 'sort' => 1, + 'status' => 1, + 'is_show' => 0, ] ] ], @@ -472,6 +484,19 @@ return 'status' => 1, 'is_show' => 1, 'children' => [ + [ + 'menu_name' => '账单管理', + 'menu_key' => 'site_account_list', + 'menu_type' => 1, + 'icon' => 'element-Postcard', + 'api_url' => 'finance/account', + 'router_path' => 'account', + 'view_path' => 'finance/account', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], [ 'menu_name' => '会员提现', 'menu_key' => 'cash_out_list', @@ -484,7 +509,7 @@ return 'sort' => 99, 'status' => 1, 'is_show' => 1, - ] + ], ] ], [ @@ -887,7 +912,7 @@ return 'sort' => 100, 'status' => 1, 'is_show' => 1, - + ], [ 'menu_name' => '协议管理', @@ -997,7 +1022,7 @@ return 'sort' => 90, 'status' => 1, 'is_show' => 1, - 'children' => [ + 'children' => [ [ 'menu_name' => '设置', 'menu_key' => 'setting_pay_transfer_set', @@ -1010,7 +1035,7 @@ return 'sort' => 90, 'status' => 1, 'is_show' => 1, - + ], ] ], @@ -1151,7 +1176,7 @@ return 'sort' => 12, 'status' => 1, 'is_show' => 1, - + ], [ 'menu_name' => '发送记录', diff --git a/niucloud/app/dict/notice/notice.php b/niucloud/app/dict/notice/notice.php index b8b4e910c..85b8da2b3 100644 --- a/niucloud/app/dict/notice/notice.php +++ b/niucloud/app/dict/notice/notice.php @@ -2,7 +2,7 @@ return [ 'verify_code' => [ 'key' => 'verify_code', - 'receiver_type' => 1, + 'receiver_type' => 0, 'name' => '手机验证码', 'title' => '管理端验证码登录', 'async' => false, @@ -13,7 +13,7 @@ return [ //手机验证码,站点应用发送 'member_verify_code' => [ 'key' => 'member_verify_code', - 'receiver_type' => 2, + 'receiver_type' => 1, 'name' => '手机验证码', 'title' => '前端验证码登录,注册,手机验证', 'async' => false, @@ -25,7 +25,7 @@ return [ 'recharge_success' => [ 'key' => 'recharge_success', - 'receiver_type' => 2, + 'receiver_type' => 1, 'name' => '充值成功通知', 'title' => '会员充值成功后发送', 'async' => true, diff --git a/niucloud/app/dict/sys/CronDict.php b/niucloud/app/dict/schedule/ScheduleDict.php similarity index 56% rename from niucloud/app/dict/sys/CronDict.php rename to niucloud/app/dict/schedule/ScheduleDict.php index dd297b76d..4d22b83a9 100644 --- a/niucloud/app/dict/sys/CronDict.php +++ b/niucloud/app/dict/schedule/ScheduleDict.php @@ -9,41 +9,35 @@ // | Author: Niucloud Team // +---------------------------------------------------------------------- -namespace app\dict\sys; +namespace app\dict\schedule; -class CronDict +class ScheduleDict { const CRON = 'cron';//定时任务 const CROND = 'crond';//周期任务 - const MINUTE = 'minute';//分钟 - - const DAY = 'day';//天 - const WEEK = 'week';//星期 - const MONTH = 'month';//月份 + const ON = 1; + const OFF = 2; /** * 任务模式 * @return array */ public static function getType(){ return [ - self::CRON => get_lang('dict_cron.type_cron'),//定时任务 - self::CROND => get_lang('dict_cron.type_crond'),//周期任务 + self::CRON => get_lang('dict_schedule.type_cron'),//定时任务 + self::CROND => get_lang('dict_schedule.type_crond'),//周期任务 ]; } + /** - * 周期类型 + * 任务启用状态 * @return array */ - public static function getCrondType(){ + public static function getStatus(){ return [ - self::MINUTE => get_lang('dict_cron.type_minute'),//分钟 - self::DAY => get_lang('dict_cron.type_day'),//天 - self::WEEK => get_lang('dict_cron.type_week'),//星期 - self::MONTH => get_lang('dict_cron.type_month'),//月份 + self::ON => get_lang('dict_schedule.on'),//启用 + self::OFF => get_lang('dict_schedule.off'),//关闭 ]; } - - } \ No newline at end of file diff --git a/niucloud/app/dict/schedule/schedule.php b/niucloud/app/dict/schedule/schedule.php index 2219e0181..9f71cd3a9 100644 --- a/niucloud/app/dict/schedule/schedule.php +++ b/niucloud/app/dict/schedule/schedule.php @@ -4,8 +4,10 @@ return [ [ 'key' => 'order_close', 'name' => '未支付订单自动关闭', + 'desc' => '', 'time' => [ 'type' => 'min', + 'min' => 1 ], 'class' => '', 'function' => '' @@ -13,10 +15,14 @@ return [ [ 'key' => 'site_expire_close', 'name' => '站点到期自动关闭', + 'desc' => '', 'time' => [ - 'type' => 'min', + 'type' => 'day', + 'day' => 1, + 'hour' => 1, + 'min' => 1 ], - 'class' => '', + 'class' => 'app\job\schedule\SiteExpireClose', 'function' => '' ] ]; diff --git a/niucloud/app/dict/site/SiteAccountLogDict.php b/niucloud/app/dict/site/SiteAccountLogDict.php new file mode 100644 index 000000000..0bf013f4b --- /dev/null +++ b/niucloud/app/dict/site/SiteAccountLogDict.php @@ -0,0 +1,32 @@ + get_lang('dict_site.pay'),//支付 + self::REFUND => get_lang('dict_site.refund'),//退款 + self::TRANSFER => get_lang('dict_site.transfer'),//转账 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/DateDict.php b/niucloud/app/dict/sys/DateDict.php new file mode 100644 index 000000000..a23c783d5 --- /dev/null +++ b/niucloud/app/dict/sys/DateDict.php @@ -0,0 +1,78 @@ + get_lang('dict_date.mon'),//周一 + self::TUE => get_lang('dict_date.tue'),//周二 + self::WED => get_lang('dict_date.wed'),//周三 + self::THUR => get_lang('dict_date.thur'),//周四 + self::FRI => get_lang('dict_date.fri'),//周五 + self::SAT => get_lang('dict_date.sat'),//周六 + self::SUN => get_lang('dict_date.sun'),//周日 + ]; + } + + /** + * 月份 + * @return array + */ + public function getMonth(){ + return [ + self::JAN => get_lang('dict_date.jan'),//1月 + self::FEB => get_lang('dict_date.feb'),//2月 + self::MAR => get_lang('dict_date.mar'),//3月 + self::APR => get_lang('dict_date.apr'),//4月 + self::MAY => get_lang('dict_date.may'),//5月 + self::JUN => get_lang('dict_date.jun'),//6月 + self::JUL => get_lang('dict_date.jul'),//7月 + self::AUG => get_lang('dict_date.aug'),//8月 + self::SEPT => get_lang('dict_date.sept'),//9月 + self::OCT => get_lang('dict_date.oct'),//10月 + self::NOV => get_lang('dict_date.nov'),//11月 + self::DEC => get_lang('dict_date.dec'),//12月 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/SmsDict.php b/niucloud/app/dict/sys/SmsDict.php index bc933e4c6..68ac9cd6e 100644 --- a/niucloud/app/dict/sys/SmsDict.php +++ b/niucloud/app/dict/sys/SmsDict.php @@ -53,7 +53,7 @@ class SmsDict const SUCCESS = 'success'; const FAIL = 'fail'; - public function getStatusType(){ + public static function getStatusType(){ return [ self::SENDING => 'dict_sms.status_sending', self::SUCCESS => 'dict_sms.status_success', diff --git a/niucloud/app/event.php b/niucloud/app/event.php index 0a5009b33..7b255d26f 100644 --- a/niucloud/app/event.php +++ b/niucloud/app/event.php @@ -39,17 +39,23 @@ $system_event = [ //退款成功 'RefundSuccess' => [ 'app\listener\pay\RefundSuccessListener' ], //转账成功 - 'TransferSuccess' => [ 'app\listener\pay\TransferSuccessListener' ], + 'TransferSuccess' => [ 'app\listener\pay\TransferSuccessListener' ], 'SiteIndex' => [ + 'app\listener\system\SiteIndexListener' + ], // 任务失败统一回调,有四种定义方式 'queue_failed'=> [ ['app\listener\job\QueueFailedLoggerListener', 'report'], ], + //系统应用管理加载 'AppManage' => [ 'app\listener\system\AppManageListener' ], - + //站点首页加载 + 'siteIndex' => [ + 'app\listener\system\SiteIndexListener' + ], //消息模板数据内容 'NoticeData' => [ 'app\listener\notice_template\VerifyCode',//手机验证码 diff --git a/niucloud/app/install/controller/Index.php b/niucloud/app/install/controller/Index.php index c24c613fb..5dde6a6ae 100644 --- a/niucloud/app/install/controller/Index.php +++ b/niucloud/app/install/controller/Index.php @@ -8,6 +8,7 @@ use app\model\sys\SysUser; use app\service\admin\install\InstallSystemService; use app\service\admin\site\SiteGroupService; use app\service\admin\site\SiteService; +use app\service\core\schedule\CoreScheduleInstallService; use think\facade\Cache; use think\facade\Db; use think\facade\View; @@ -320,6 +321,13 @@ class Index extends BaseInstall $this->setSuccessLog([ '菜单初始化失败', 'error' ]); return fail('菜单初始化失败'); } + //初始化计划任务 + $res = ( new CoreScheduleInstallService())->installSystemSchedule(); + if (!$res) { + $this->setSuccessLog([ '计划任务初始化失败', 'error' ]); + return fail('计划任务初始化失败'); + } + $user = ( new SysUser() )->where([ [ 'uid', '=', 1 ] ])->findOrEmpty(); if (!$user->isEmpty()) { diff --git a/niucloud/app/install/source/database.sql b/niucloud/app/install/source/database.sql index 785b685f6..7df2d7252 100644 --- a/niucloud/app/install/source/database.sql +++ b/niucloud/app/install/source/database.sql @@ -1,4 +1,5 @@ -SET NAMES 'utf8mb4'; + +SET NAMES 'utf8mb4'; DROP TABLE IF EXISTS addon; @@ -34,14 +35,6 @@ DROP TABLE IF EXISTS member_label; DROP TABLE IF EXISTS member_level; -DROP TABLE IF EXISTS `order`; - -DROP TABLE IF EXISTS order_item; - -DROP TABLE IF EXISTS order_item_refund; - -DROP TABLE IF EXISTS order_log; - DROP TABLE IF EXISTS pay; DROP TABLE IF EXISTS pay_channel; @@ -50,8 +43,18 @@ DROP TABLE IF EXISTS pay_refund; DROP TABLE IF EXISTS pay_transfer; +DROP TABLE IF EXISTS recharge_order; + +DROP TABLE IF EXISTS recharge_order_item; + +DROP TABLE IF EXISTS recharge_order_item_refund; + +DROP TABLE IF EXISTS recharge_order_log; + DROP TABLE IF EXISTS site; +DROP TABLE IF EXISTS site_account_log; + DROP TABLE IF EXISTS site_group; DROP TABLE IF EXISTS sys_agreement; @@ -76,6 +79,8 @@ DROP TABLE IF EXISTS sys_notice_sms_log; DROP TABLE IF EXISTS sys_role; +DROP TABLE IF EXISTS sys_schedule; + DROP TABLE IF EXISTS sys_user; DROP TABLE IF EXISTS sys_user_log; @@ -88,9 +93,6 @@ DROP TABLE IF EXISTS wechat_media; DROP TABLE IF EXISTS wechat_reply; --- --- `ns_wechat_reply` --- CREATE TABLE wechat_reply ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT, name varchar(64) NOT NULL DEFAULT '' COMMENT '规则名称', @@ -102,13 +104,12 @@ CREATE TABLE wechat_reply ( content text NOT NULL COMMENT '回复内容', status tinyint(3) UNSIGNED NOT NULL DEFAULT 0 COMMENT '启动状态:1-启动;0-关闭', sort int(10) UNSIGNED NOT NULL DEFAULT 50 COMMENT '排序', - create_time int(11) NOT NULL COMMENT '创建时间', - update_time int(11) NOT NULL COMMENT '更新时间', - delete_time int(11) NOT NULL COMMENT '删除时间', + create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + update_time int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + delete_time int(11) NOT NULL DEFAULT 0 COMMENT '删除时间', PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 16384, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '公众号消息回调表'; @@ -116,9 +117,6 @@ COMMENT = '公众号消息回调表'; ALTER TABLE wechat_reply ADD INDEX keyword (keyword, reply_type); --- --- `ns_wechat_media` --- CREATE TABLE wechat_media ( id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -130,7 +128,6 @@ CREATE TABLE wechat_media ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 1872, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '微信素材表'; @@ -138,9 +135,6 @@ COMMENT = '微信素材表'; ALTER TABLE wechat_media ADD INDEX type (type, site_id); --- --- `ns_wechat_fans` --- CREATE TABLE wechat_fans ( fans_id int(11) NOT NULL AUTO_INCREMENT COMMENT '粉丝ID', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -165,7 +159,6 @@ CREATE TABLE wechat_fans ( PRIMARY KEY (fans_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 5461, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '微信粉丝列表'; @@ -176,9 +169,6 @@ ADD INDEX openid (openid, site_id); ALTER TABLE wechat_fans ADD INDEX unionid (unionid, site_id); --- --- `ns_sys_user_role` --- CREATE TABLE sys_user_role ( id int(11) NOT NULL AUTO_INCREMENT, uid int(11) NOT NULL DEFAULT 0 COMMENT '用户id', @@ -189,6 +179,7 @@ CREATE TABLE sys_user_role ( PRIMARY KEY (id) ) ENGINE = INNODB, +AUTO_INCREMENT = 2, AVG_ROW_LENGTH = 481, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, @@ -203,9 +194,6 @@ ADD INDEX site_id (site_id); ALTER TABLE sys_user_role ADD INDEX uid (uid); --- --- `ns_sys_user_log` --- CREATE TABLE sys_user_log ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '管理员操作记录ID', ip varchar(16) NOT NULL DEFAULT '' COMMENT '登录IP', @@ -219,11 +207,9 @@ CREATE TABLE sys_user_log ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 857, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '管理员操作记录表', -ROW_FORMAT = COMPACT; +COMMENT = '管理员操作记录表'; ALTER TABLE sys_user_log ADD INDEX create_time (create_time); @@ -234,9 +220,6 @@ ADD INDEX site_id (site_id); ALTER TABLE sys_user_log ADD INDEX uid (uid); --- --- `ns_sys_user` --- CREATE TABLE sys_user ( uid smallint(5) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '系统用户ID', username varchar(255) NOT NULL DEFAULT '' COMMENT '用户账号', @@ -255,11 +238,11 @@ CREATE TABLE sys_user ( INDEX uid (uid) ) ENGINE = INNODB, +AUTO_INCREMENT = 2, AVG_ROW_LENGTH = 372, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '后台管理员表', -ROW_FORMAT = COMPACT; +COMMENT = '后台管理员表'; ALTER TABLE sys_user ADD INDEX delete_time (delete_time); @@ -273,12 +256,27 @@ ADD INDEX password (password); ALTER TABLE sys_user ADD INDEX update_time (update_time); -ALTER TABLE sys_user -ADD INDEX username (username (191)); +CREATE TABLE sys_schedule ( + id int(11) NOT NULL AUTO_INCREMENT, + site_id int(11) NOT NULL DEFAULT 0, + addon varchar(255) NOT NULL DEFAULT '' COMMENT '所属插件', + `key` varchar(255) NOT NULL DEFAULT '' COMMENT '计划任务模板key', + status int(11) NOT NULL DEFAULT 1 COMMENT '任务状态 是否启用', + time varchar(500) NOT NULL DEFAULT '' COMMENT '任务周期 json结构', + count int(11) NOT NULL DEFAULT 0 COMMENT '执行次数', + last_time int(11) NOT NULL DEFAULT 0 COMMENT '最后执行时间', + next_time int(11) NOT NULL DEFAULT 0 COMMENT '下次执行时间', + create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + delete_time int(11) NOT NULL DEFAULT 0 COMMENT '删除时间', + update_time int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + sort int(11) NOT NULL DEFAULT 0 COMMENT '排序', + PRIMARY KEY (id) +) +ENGINE = INNODB, +CHARACTER SET utf8mb4, +COLLATE utf8mb4_general_ci, +COMMENT = '系统任务'; --- --- `ns_sys_role` --- CREATE TABLE sys_role ( role_id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '角色id', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -290,11 +288,9 @@ CREATE TABLE sys_role ( PRIMARY KEY (role_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 1638, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '角色表', -ROW_FORMAT = COMPACT; +COMMENT = '角色表'; ALTER TABLE sys_role ADD INDEX site_id (site_id); @@ -302,9 +298,6 @@ ADD INDEX site_id (site_id); ALTER TABLE sys_role ADD INDEX status (status); --- --- `ns_sys_notice_sms_log` --- CREATE TABLE sys_notice_sms_log ( id int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', site_id int(11) NOT NULL DEFAULT 0, @@ -323,14 +316,10 @@ CREATE TABLE sys_notice_sms_log ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 496, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '短信发送表'; --- --- `ns_sys_notice_log` --- CREATE TABLE sys_notice_log ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '通知记录ID', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -350,24 +339,19 @@ CREATE TABLE sys_notice_log ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 712, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '通知记录表', -ROW_FORMAT = COMPACT; +COMMENT = '通知记录表'; ALTER TABLE sys_notice_log ADD INDEX member_id (member_id); ALTER TABLE sys_notice_log -ADD INDEX message_key (`key` (191)); +ADD INDEX message_key (`key`); ALTER TABLE sys_notice_log ADD INDEX uid (uid); --- --- `ns_sys_notice` --- CREATE TABLE sys_notice ( id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点ID', @@ -385,18 +369,13 @@ CREATE TABLE sys_notice ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 2048, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '通知模型', -ROW_FORMAT = COMPACT; +COMMENT = '通知模型'; ALTER TABLE sys_notice ADD INDEX message_key (`key`, site_id); --- --- `ns_sys_menu` --- CREATE TABLE sys_menu ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '菜单ID', app_type varchar(255) NOT NULL DEFAULT 'admin' COMMENT '应用类型', @@ -421,21 +400,17 @@ ENGINE = INNODB, AVG_ROW_LENGTH = 406, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '菜单表', -ROW_FORMAT = COMPACT; +COMMENT = '菜单表'; ALTER TABLE sys_menu ADD INDEX is_show (is_show); ALTER TABLE sys_menu -ADD INDEX menu_key (menu_key (191), app_type (191)); +ADD INDEX menu_key (menu_key, app_type); ALTER TABLE sys_menu -ADD INDEX parent_key (parent_key (191)); +ADD INDEX parent_key (parent_key); --- --- `ns_sys_cron_task` --- CREATE TABLE sys_cron_task ( id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0, @@ -457,14 +432,10 @@ CREATE TABLE sys_cron_task ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 8192, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = ' 系统任务'; --- --- `ns_sys_config` --- CREATE TABLE sys_config ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -477,18 +448,13 @@ CREATE TABLE sys_config ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 910, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '系统配置表', -ROW_FORMAT = COMPACT; +COMMENT = '系统配置表'; ALTER TABLE sys_config -ADD INDEX config_key (config_key (191), site_id); +ADD INDEX config_key (config_key, site_id); --- --- `ns_sys_attachment_category` --- CREATE TABLE sys_attachment_category ( id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -501,11 +467,9 @@ CREATE TABLE sys_attachment_category ( UNIQUE INDEX id (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 3276, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '附件分类表', -ROW_FORMAT = COMPACT; +COMMENT = '附件分类表'; ALTER TABLE sys_attachment_category ADD INDEX pid (pid); @@ -513,9 +477,6 @@ ADD INDEX pid (pid); ALTER TABLE sys_attachment_category ADD INDEX sort (sort); --- --- `ns_sys_attachment` --- CREATE TABLE sys_attachment ( att_id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -533,11 +494,9 @@ CREATE TABLE sys_attachment ( PRIMARY KEY (att_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 702, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '附件管理表', -ROW_FORMAT = COMPACT; +COMMENT = '附件管理表'; ALTER TABLE sys_attachment ADD INDEX cate_id (cate_id); @@ -548,9 +507,6 @@ ADD INDEX create_time (create_time); ALTER TABLE sys_attachment ADD INDEX site_id (site_id); --- --- `ns_sys_area` --- CREATE TABLE sys_area ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT, pid int(11) NOT NULL DEFAULT 0 COMMENT '父级', @@ -582,9 +538,6 @@ ADD INDEX longitude (longitude, latitude); ALTER TABLE sys_area ADD INDEX pid (pid); --- --- `ns_sys_agreement` --- CREATE TABLE sys_agreement ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -596,7 +549,6 @@ CREATE TABLE sys_agreement ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 6553, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '协议表'; @@ -607,9 +559,6 @@ ADD INDEX agreement_key (agreement_key); ALTER TABLE sys_agreement ADD INDEX site_id (site_id); --- --- `ns_site_group` --- CREATE TABLE site_group ( group_id int(11) NOT NULL AUTO_INCREMENT COMMENT '分组ID', group_name varchar(255) NOT NULL DEFAULT '' COMMENT '分组名称', @@ -621,16 +570,27 @@ CREATE TABLE site_group ( PRIMARY KEY (group_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 2048, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '店铺分组(分组权限)'; --- --- `ns_site` --- +CREATE TABLE site_account_log ( + id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + type varchar(255) NOT NULL DEFAULT 'pay' COMMENT '账单类型pay,refund,transfer', + money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '交易金额', + trade_no varchar(255) NOT NULL DEFAULT '' COMMENT '对应类型交易单号', + create_time varchar(255) NOT NULL DEFAULT '0' COMMENT '添加时间', + PRIMARY KEY (id) +) +ENGINE = INNODB, +CHARACTER SET utf8mb4, +COLLATE utf8mb4_general_ci, +COMMENT = '站点账单记录'; + CREATE TABLE site ( site_id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + site_code varchar(32) NOT NULL DEFAULT '' COMMENT '站点code码', site_name varchar(50) NOT NULL DEFAULT '' COMMENT '站点名称', group_id int(11) NOT NULL DEFAULT 0 COMMENT '分组ID(0:不限制)', keywords varchar(255) NOT NULL DEFAULT '' COMMENT '关键字', @@ -648,7 +608,7 @@ CREATE TABLE site ( phone varchar(255) NOT NULL DEFAULT '' COMMENT '客服电话', business_hours varchar(255) NOT NULL DEFAULT '' COMMENT '营业时间', create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', - expire_time BIGINT NOT NULL DEFAULT 0 COMMENT '到期时间(如果是0 无限期)', + expire_time bigint(20) NOT NULL DEFAULT 0 COMMENT '到期时间(如果是0 无限期)', front_end_name varchar(50) NOT NULL DEFAULT '' COMMENT '前台名称', front_end_logo varchar(255) NOT NULL DEFAULT '' COMMENT '前台logo', icon varchar(255) NOT NULL DEFAULT '' COMMENT '网站图标', @@ -656,11 +616,11 @@ CREATE TABLE site ( PRIMARY KEY (site_id) ) ENGINE = INNODB, +AUTO_INCREMENT = 2, AVG_ROW_LENGTH = 1365, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '站点表', -ROW_FORMAT = COMPACT; +COMMENT = '站点表'; ALTER TABLE site ADD INDEX create_time (create_time); @@ -668,9 +628,99 @@ ADD INDEX create_time (create_time); ALTER TABLE site ADD INDEX group_id (group_id); --- --- `ns_pay_transfer` --- +CREATE TABLE recharge_order_log ( + id int(11) NOT NULL AUTO_INCREMENT, + order_id int(11) NOT NULL DEFAULT 0 COMMENT '订单id', + site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + action varchar(255) NOT NULL DEFAULT '' COMMENT '操作内容', + uid int(11) NOT NULL DEFAULT 0 COMMENT '操作人id', + nick_name varchar(50) NOT NULL DEFAULT '' COMMENT '操作人名称', + order_status int(11) NOT NULL DEFAULT 0 COMMENT '订单状态,操作后', + action_way bigint(20) NOT NULL DEFAULT 2 COMMENT '操作类型1买家2卖家 3 系统任务', + order_status_name varchar(255) NOT NULL DEFAULT '' COMMENT '订单状态名称,操作后', + action_time int(11) NOT NULL DEFAULT 0 COMMENT '操作时间', + PRIMARY KEY (id) +) +ENGINE = INNODB, +CHARACTER SET utf8mb4, +COLLATE utf8mb4_general_ci, +COMMENT = '订单操作记录表'; + +CREATE TABLE recharge_order_item_refund ( + refund_id int(11) NOT NULL AUTO_INCREMENT, + order_item_id int(11) NOT NULL DEFAULT 0 COMMENT '订单id', + order_id int(11) NOT NULL DEFAULT 0 COMMENT '订单id', + order_no varchar(255) NOT NULL DEFAULT '' COMMENT '订单编号', + refund_no varchar(255) NOT NULL DEFAULT '0' COMMENT '退款单号', + site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + member_id int(11) NOT NULL DEFAULT 0 COMMENT '会员id', + num decimal(10, 3) NOT NULL DEFAULT 0.000 COMMENT '退货数量', + money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '总退款', + status int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', + create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + audit_time int(11) NOT NULL DEFAULT 0 COMMENT '审核时间', + transfer_time int(11) NOT NULL DEFAULT 0 COMMENT '转账时间', + item_type varchar(255) NOT NULL DEFAULT '' COMMENT '项目类型', + PRIMARY KEY (refund_id) +) +ENGINE = INNODB, +CHARACTER SET utf8mb4, +COLLATE utf8mb4_general_ci, +COMMENT = '订单退款表'; + +CREATE TABLE recharge_order_item ( + order_item_id int(11) NOT NULL AUTO_INCREMENT, + order_id int(11) NOT NULL DEFAULT 0 COMMENT '订单id', + site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + member_id int(11) NOT NULL DEFAULT 0 COMMENT '购买会员id', + item_id int(11) NOT NULL DEFAULT 0 COMMENT '项目id', + item_type varchar(255) NOT NULL DEFAULT '' COMMENT '项目类型', + item_name varchar(400) NOT NULL DEFAULT '' COMMENT '项目名称', + item_image varchar(2000) NOT NULL DEFAULT '' COMMENT '项目图片', + price decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '项目单价', + num decimal(10, 3) NOT NULL DEFAULT 0.000 COMMENT '购买数量', + item_money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '项目总价', + is_refund int(11) NOT NULL DEFAULT 0 COMMENT '是否退款', + refund_no varchar(255) NOT NULL DEFAULT '' COMMENT '退款编号', + refund_status int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', + create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + PRIMARY KEY (order_item_id) +) +ENGINE = INNODB, +CHARACTER SET utf8mb4, +COLLATE utf8mb4_general_ci, +COMMENT = '订单商品表'; + +CREATE TABLE recharge_order ( + order_id int(11) NOT NULL AUTO_INCREMENT, + site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + order_no varchar(50) NOT NULL DEFAULT '' COMMENT '订单编号', + order_from varchar(55) NOT NULL DEFAULT '' COMMENT '订单来源', + order_type varchar(50) NOT NULL DEFAULT '' COMMENT '订单类型', + out_trade_no varchar(50) NOT NULL DEFAULT '' COMMENT '支付流水号', + order_status int(11) NOT NULL DEFAULT 0 COMMENT '订单状态', + refund_status int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', + member_id int(11) NOT NULL DEFAULT 0 COMMENT '会员id', + ip varchar(20) NOT NULL DEFAULT '' COMMENT '会员ip', + member_message varchar(50) NOT NULL DEFAULT '' COMMENT '会员留言信息', + order_item_money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单项目金额', + order_discount_money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单优惠金额', + order_money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单金额', + create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + pay_time int(11) NOT NULL DEFAULT 0 COMMENT '订单支付时间', + close_time int(11) NOT NULL DEFAULT 0 COMMENT '订单关闭时间', + is_delete int(11) NOT NULL DEFAULT 0 COMMENT '是否删除(针对后台)', + is_enable_refund int(11) NOT NULL DEFAULT 0 COMMENT '是否允许退款', + remark varchar(255) NOT NULL DEFAULT '' COMMENT '商家留言', + invoice_id int(11) NOT NULL DEFAULT 0 COMMENT '发票id,0表示不开发票', + close_reason varchar(255) NOT NULL DEFAULT '' COMMENT '关闭原因', + PRIMARY KEY (order_id) +) +ENGINE = INNODB, +CHARACTER SET utf8mb4, +COLLATE utf8mb4_general_ci, +COMMENT = '订单表'; + CREATE TABLE pay_transfer ( id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -697,7 +747,6 @@ CREATE TABLE pay_transfer ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 3276, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '转账表'; @@ -714,19 +763,19 @@ ADD INDEX member_withdraw_site_id (site_id, main_id); ALTER TABLE pay_transfer ADD INDEX member_withdraw_status (transfer_status); --- --- `ns_pay_refund` --- +ALTER TABLE pay_transfer +ADD UNIQUE INDEX UK_ns_pay_transfer_transfer_no (transfer_no); + CREATE TABLE pay_refund ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', - refund_no varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '退款单号', - out_trade_no varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '支付流水号', - type varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '支付方式', + refund_no varchar(255) NOT NULL DEFAULT '' COMMENT '退款单号', + out_trade_no varchar(255) NOT NULL DEFAULT '' COMMENT '支付流水号', + type varchar(255) NOT NULL DEFAULT '' COMMENT '支付方式', channel varchar(50) NOT NULL DEFAULT '' COMMENT '支付渠道', money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '支付金额', - reason varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '退款原因', - status varchar(255) NOT NULL DEFAULT '0' COMMENT '支付状态(0.待退款 1. 退款中中 2. 已退款 -1已关闭)', + reason varchar(255) NOT NULL DEFAULT '' COMMENT '退款原因', + status varchar(255) NOT NULL DEFAULT '0' COMMENT '支付状态(0.待退款 1. 退款中 2. 已退款 -1已关闭)', create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', refund_time int(11) NOT NULL DEFAULT 0 COMMENT '支付时间', close_time int(11) NOT NULL DEFAULT 0 COMMENT '关闭时间', @@ -734,19 +783,18 @@ CREATE TABLE pay_refund ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 5461, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '支付记录表'; --- --- `ns_pay_channel` --- +ALTER TABLE pay_refund +ADD UNIQUE INDEX UK_ns_pay_refund_refund_no (refund_no); + CREATE TABLE pay_channel ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', - site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', - type varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '支付类型', - channel varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '支付渠道', + site_id int(11) NOT NULL DEFAULT 1 COMMENT '站点id', + type varchar(255) NOT NULL DEFAULT '' COMMENT '支付类型', + channel varchar(255) NOT NULL DEFAULT '' COMMENT '支付渠道', config text NOT NULL COMMENT '支付配置', create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', update_time int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', @@ -755,14 +803,10 @@ CREATE TABLE pay_channel ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 496, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '支付渠道配置表'; --- --- `ns_pay` --- CREATE TABLE pay ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -785,7 +829,6 @@ CREATE TABLE pay ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 16384, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '支付记录表'; @@ -793,122 +836,6 @@ COMMENT = '支付记录表'; ALTER TABLE pay ADD UNIQUE INDEX UK_ns_pay_out_trade_no (out_trade_no); --- --- `ns_recharge_order_log` --- -CREATE TABLE recharge_order_log ( - id int(11) NOT NULL AUTO_INCREMENT, - order_id int(11) NOT NULL DEFAULT 0 COMMENT '订单id', - site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', - action varchar(255) NOT NULL DEFAULT '' COMMENT '操作内容', - uid int(11) NOT NULL DEFAULT 0 COMMENT '操作人id', - nick_name varchar(50) NOT NULL DEFAULT '' COMMENT '操作人名称', - order_status int(11) NOT NULL DEFAULT 0 COMMENT '订单状态,操作后', - action_way bigint(20) NOT NULL DEFAULT 2 COMMENT '操作类型1买家2卖家 3 系统任务', - order_status_name varchar(255) NOT NULL DEFAULT '' COMMENT '订单状态名称,操作后', - action_time int(11) NOT NULL DEFAULT 0 COMMENT '操作时间', - PRIMARY KEY (id) -) -ENGINE = INNODB, -AVG_ROW_LENGTH = 223, -CHARACTER SET utf8mb4, -COLLATE utf8mb4_general_ci, -COMMENT = '订单操作记录表', -ROW_FORMAT = COMPACT; - --- --- `ns_recharge_order_item_refund` --- -CREATE TABLE recharge_order_item_refund ( - refund_id int(11) NOT NULL AUTO_INCREMENT, - order_item_id int(11) NOT NULL DEFAULT 0 COMMENT '订单id', - order_id int(11) NOT NULL DEFAULT 0 COMMENT '订单id', - order_no varchar(255) NOT NULL DEFAULT '' COMMENT '订单编号', - refund_no varchar(255) NOT NULL DEFAULT '0' COMMENT '退款单号', - site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', - member_id int(11) NOT NULL DEFAULT 0 COMMENT '会员id', - num decimal(10, 3) NOT NULL DEFAULT 0.000 COMMENT '退货数量', - money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '总退款', - status int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', - create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', - audit_time int(11) NOT NULL DEFAULT 0 COMMENT '审核时间', - transfer_time int(11) NOT NULL DEFAULT 0 COMMENT '转账时间', - item_type varchar(255) NOT NULL DEFAULT '' COMMENT '项目类型', - PRIMARY KEY (refund_id) -) -ENGINE = INNODB, -AVG_ROW_LENGTH = 16384, -CHARACTER SET utf8mb4, -COLLATE utf8mb4_general_ci, -COMMENT = '订单退款表', -ROW_FORMAT = COMPACT; - --- --- `recharge_order_item` --- -CREATE TABLE recharge_order_item ( - order_item_id int(11) NOT NULL AUTO_INCREMENT, - order_id int(11) NOT NULL DEFAULT 0 COMMENT '订单id', - site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', - member_id int(11) NOT NULL DEFAULT 0 COMMENT '购买会员id', - item_id int(11) NOT NULL DEFAULT 0 COMMENT '项目id', - item_type varchar(255) NOT NULL DEFAULT '' COMMENT '项目类型', - item_name varchar(400) NOT NULL DEFAULT '' COMMENT '项目名称', - item_image varchar(2000) NOT NULL DEFAULT '' COMMENT '项目图片', - price decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '项目单价', - num decimal(10, 3) NOT NULL DEFAULT 0.000 COMMENT '购买数量', - item_money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '项目总价', - is_refund int(11) NOT NULL DEFAULT 0 COMMENT '是否退款', - refund_no varchar(255) NOT NULL DEFAULT '' COMMENT '退款编号', - refund_status int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', - create_time int(11) NOT NULL DEFAULT 0, - PRIMARY KEY (order_item_id) -) -ENGINE = INNODB, -AVG_ROW_LENGTH = 16384, -CHARACTER SET utf8mb4, -COLLATE utf8mb4_general_ci, -COMMENT = '订单商品表', -ROW_FORMAT = COMPACT; - --- --- `recharge_order` --- -CREATE TABLE `recharge_order` ( - order_id int(11) NOT NULL AUTO_INCREMENT, - site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', - order_no varchar(50) NOT NULL DEFAULT '' COMMENT '订单编号', - order_from varchar(55) NOT NULL DEFAULT '' COMMENT '订单来源', - order_type varchar(50) NOT NULL DEFAULT '' COMMENT '订单类型', - out_trade_no varchar(50) NOT NULL DEFAULT '' COMMENT '支付流水号', - order_status int(11) NOT NULL DEFAULT 0 COMMENT '订单状态', - refund_status int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', - member_id int(11) NOT NULL DEFAULT 0 COMMENT '会员id', - ip varchar(20) NOT NULL DEFAULT '' COMMENT '会员ip', - member_message varchar(50) NOT NULL DEFAULT '' COMMENT '会员留言信息', - order_item_money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单项目金额', - order_discount_money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单优惠金额', - order_money decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单金额', - create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', - pay_time int(11) NOT NULL DEFAULT 0 COMMENT '订单支付时间', - close_time int(11) NOT NULL DEFAULT 0 COMMENT '订单关闭时间', - is_delete int(11) NOT NULL DEFAULT 0 COMMENT '是否删除(针对后台)', - is_enable_refund int(11) NOT NULL DEFAULT 0 COMMENT '是否允许退款', - remark varchar(255) NOT NULL DEFAULT '' COMMENT '商家留言', - invoice_id int(11) NOT NULL DEFAULT 0 COMMENT '发票id,0表示不开发票', - close_reason varchar(255) NOT NULL DEFAULT '' COMMENT '关闭原因', - PRIMARY KEY (order_id) -) -ENGINE = INNODB, -AVG_ROW_LENGTH = 16384, -CHARACTER SET utf8mb4, -COLLATE utf8mb4_general_ci, -COMMENT = '订单表', -ROW_FORMAT = COMPACT; - --- --- `ns_member_level` --- CREATE TABLE member_level ( level_id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '会员等级', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -921,11 +848,9 @@ CREATE TABLE member_level ( PRIMARY KEY (level_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 16384, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '会员等级', -ROW_FORMAT = COMPACT; +COMMENT = '会员等级'; ALTER TABLE member_level ADD INDEX site_id (site_id); @@ -933,9 +858,6 @@ ADD INDEX site_id (site_id); ALTER TABLE member_level ADD INDEX status (status); --- --- `ns_member_label` --- CREATE TABLE member_label ( label_id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '标签id', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -948,11 +870,9 @@ CREATE TABLE member_label ( INDEX label_id (label_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 8192, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '会员标签', -ROW_FORMAT = COMPACT; +COMMENT = '会员标签'; ALTER TABLE member_label ADD INDEX site_id (site_id); @@ -960,13 +880,10 @@ ADD INDEX site_id (site_id); ALTER TABLE member_label ADD INDEX sort (sort); --- --- `ns_member_cash_out_account` --- CREATE TABLE member_cash_out_account ( account_id int(11) NOT NULL AUTO_INCREMENT, - site_id int(11) NOT NULL COMMENT '站点id', - member_id int(11) NOT NULL COMMENT '会员id', + site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + member_id int(11) NOT NULL DEFAULT 0 COMMENT '会员id', account_type varchar(255) NOT NULL DEFAULT '' COMMENT '账户类型', bank_name varchar(255) NOT NULL DEFAULT '' COMMENT '银行名称', realname varchar(255) NOT NULL DEFAULT '' COMMENT '真实名称', @@ -976,14 +893,10 @@ CREATE TABLE member_cash_out_account ( PRIMARY KEY (account_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 8192, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '会员提现账户'; --- --- `ns_member_cash_out` --- CREATE TABLE member_cash_out ( id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -1014,7 +927,6 @@ CREATE TABLE member_cash_out ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 297, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '会员提现表'; @@ -1034,9 +946,6 @@ ADD INDEX member_withdraw_status (status); ALTER TABLE member_cash_out ADD INDEX member_withdraw_withdraw_no (cash_out_no); --- --- `ns_member_address` --- CREATE TABLE member_address ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT, member_id int(11) NOT NULL DEFAULT 0 COMMENT '会员id', @@ -1057,18 +966,13 @@ CREATE TABLE member_address ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 16384, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '会员收货地址', -ROW_FORMAT = COMPACT; +COMMENT = '会员收货地址'; ALTER TABLE member_address ADD INDEX IDX_member_address (member_id, site_id); --- --- `ns_member_account_log` --- CREATE TABLE member_account_log ( id int(10) UNSIGNED NOT NULL AUTO_INCREMENT, member_id int(11) NOT NULL DEFAULT 0 COMMENT '用户id', @@ -1083,27 +987,22 @@ CREATE TABLE member_account_log ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 4096, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '会员账单表', -ROW_FORMAT = COMPACT; +COMMENT = '会员账单表'; ALTER TABLE member_account_log -ADD INDEX account_type (account_type (191)); +ADD INDEX account_type (account_type); ALTER TABLE member_account_log ADD INDEX create_time (create_time); ALTER TABLE member_account_log -ADD INDEX from_type (from_type (191)); +ADD INDEX from_type (from_type); ALTER TABLE member_account_log ADD INDEX member_id (member_id); --- --- `ns_member` --- CREATE TABLE member ( member_id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', member_no varchar(255) NOT NULL DEFAULT '' COMMENT '会员编码', @@ -1145,7 +1044,7 @@ CREATE TABLE member ( growth_get int(11) NOT NULL DEFAULT 0 COMMENT '累计获得成长值', commission decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '当前佣金', commission_get decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '佣金获取', - commission_cash_outing decimal(10, 2) NOT NULL COMMENT '提现中佣金', + commission_cash_outing decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '提现中佣金', is_member tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否是会员', member_time int(11) NOT NULL DEFAULT 0 COMMENT '成为会员时间', is_del tinyint(4) NOT NULL DEFAULT 0 COMMENT '0正常 1已删除', @@ -1159,36 +1058,31 @@ CREATE TABLE member ( PRIMARY KEY (member_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 4096, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, -COMMENT = '会员表', -ROW_FORMAT = COMPACT; +COMMENT = '会员表'; ALTER TABLE member ADD INDEX mobile (mobile); ALTER TABLE member -ADD INDEX password (password (191)); +ADD INDEX password (password); ALTER TABLE member ADD INDEX site_id (site_id); ALTER TABLE member -ADD INDEX username (username (191)); +ADD INDEX username (username); ALTER TABLE member -ADD INDEX weapp_openid (weapp_openid (191)); +ADD INDEX weapp_openid (weapp_openid); ALTER TABLE member -ADD INDEX wx_openid (wx_openid (191)); +ADD INDEX wx_openid (wx_openid); ALTER TABLE member -ADD INDEX wx_unionid (wx_unionid (191)); +ADD INDEX wx_unionid (wx_unionid); --- --- `ns_jobs_failed` --- CREATE TABLE jobs_failed ( id int(11) NOT NULL AUTO_INCREMENT, `connection` text NOT NULL, @@ -1203,9 +1097,6 @@ CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '消息队列任务失败记录表'; --- --- `ns_jobs` --- CREATE TABLE jobs ( id int(11) NOT NULL AUTO_INCREMENT, queue varchar(255) NOT NULL, @@ -1217,16 +1108,13 @@ CREATE TABLE jobs ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 5461, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '消息队列任务表'; -ALTER TABLE jobs ADD INDEX queue (queue); +ALTER TABLE jobs +ADD INDEX queue (queue); --- --- `ns_generate_table` --- CREATE TABLE generate_table ( id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', table_name varchar(255) NOT NULL DEFAULT '' COMMENT '表名', @@ -1238,14 +1126,10 @@ CREATE TABLE generate_table ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 780, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '代码生成表'; --- --- `ns_generate_column` --- CREATE TABLE generate_column ( id int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', table_id int(11) NOT NULL DEFAULT 0 COMMENT '表id', @@ -1263,18 +1147,14 @@ CREATE TABLE generate_column ( view_type varchar(100) DEFAULT 'input' COMMENT '显示类型', dict_type varchar(255) DEFAULT '' COMMENT '字典类型', create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', - update_time int(11) NOT NULL DEFAULT 0 NULL COMMENT '修改时间', + update_time int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 321, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '代码生成表字段信息表'; --- --- `ns_diy_route` --- CREATE TABLE diy_route ( id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', @@ -1287,22 +1167,21 @@ CREATE TABLE diy_route ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 2730, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '自定义路由'; --- --- `ns_diy_page` --- CREATE TABLE diy_page ( id int(11) NOT NULL AUTO_INCREMENT, site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点id', title varchar(255) NOT NULL DEFAULT '' COMMENT '页面名称', name varchar(255) NOT NULL DEFAULT '' COMMENT '页面标识', type varchar(255) NOT NULL DEFAULT '' COMMENT '页面模板', + template varchar(255) NOT NULL DEFAULT '' COMMENT '模板名称', + mode varchar(255) NOT NULL DEFAULT 'diy' COMMENT '页面展示模式,diy:自定义,fixed:固定', value longtext DEFAULT NULL COMMENT '页面数据,json格式', is_default int(11) NOT NULL DEFAULT 0 COMMENT '是否默认页面,1:是,0:否', + is_change int(11) NOT NULL DEFAULT 0 COMMENT '数据是否发生过变化,1:变化了,2:没有', share varchar(1000) NOT NULL DEFAULT '' COMMENT '分享内容', visit_count int(11) NOT NULL DEFAULT 0 COMMENT '访问量', create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', @@ -1310,14 +1189,10 @@ CREATE TABLE diy_page ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 5461, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '自定义页面'; --- --- `ns_article_category` --- CREATE TABLE article_category ( category_id int(11) NOT NULL AUTO_INCREMENT COMMENT '文章分类id', site_id int(11) NOT NULL DEFAULT 0 COMMENT '站点ID', @@ -1329,7 +1204,6 @@ CREATE TABLE article_category ( PRIMARY KEY (category_id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 8192, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '文章分类表'; @@ -1346,9 +1220,6 @@ ADD INDEX site_id (site_id); ALTER TABLE article_category ADD INDEX sort (sort); --- --- `ns_article` --- CREATE TABLE article ( id int(11) NOT NULL AUTO_INCREMENT COMMENT '文章id', category_id int(11) NOT NULL COMMENT '文章分类', @@ -1368,7 +1239,6 @@ CREATE TABLE article ( PRIMARY KEY (id) ) ENGINE = INNODB, -AVG_ROW_LENGTH = 5461, CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '文章表'; @@ -1388,9 +1258,6 @@ ADD INDEX IDX_article_site_id (site_id); ALTER TABLE article ADD INDEX IDX_ns_article_sort (sort); --- --- `ns_addon_log` --- CREATE TABLE addon_log ( id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', action varchar(40) NOT NULL DEFAULT '' COMMENT '操作类型 install 安装 uninstall 卸载 update 更新', @@ -1405,18 +1272,15 @@ CHARACTER SET utf8mb4, COLLATE utf8mb4_general_ci, COMMENT = '插件日志表'; --- --- `ns_addon` --- CREATE TABLE addon ( id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', - title varchar(40) NOT NULL DEFAULT '' COMMENT '插件名称', - icon varchar(255) NOT NULL DEFAULT '' COMMENT '插件图标', - `key` varchar(20) NOT NULL DEFAULT '' COMMENT '插件标识', - `desc` text DEFAULT NULL COMMENT '插件描述', + title varchar(40) NOT NULL DEFAULT '' COMMENT '插件名称', + icon varchar(255) NOT NULL DEFAULT '' COMMENT '插件图标', + `key` varchar(20) NOT NULL DEFAULT '' COMMENT '插件标识', + `desc` text DEFAULT NULL COMMENT '插件描述', status tinyint(4) NOT NULL DEFAULT 1 COMMENT '状态', - author varchar(40) NOT NULL DEFAULT '' COMMENT '作者', - version varchar(20) NOT NULL DEFAULT '' COMMENT '版本号', + author varchar(40) NOT NULL DEFAULT '' COMMENT '作者', + version varchar(20) NOT NULL DEFAULT '' COMMENT '版本号', create_time int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', install_time int(11) NOT NULL DEFAULT 0 COMMENT '安装时间', update_time int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', @@ -1431,9 +1295,12 @@ COMMENT = '插件表'; ALTER TABLE addon ADD UNIQUE INDEX UK_title (title); --- --- Dumping data for table ns_sys_area --- +INSERT INTO sys_user_role VALUES +(1, 1, 0, '', 0, 1); + +INSERT INTO sys_user VALUES +(1, '', '', '', '', '', 0, 0, 0, 1, 0, 0, 0); + INSERT INTO sys_area VALUES (110000, 0, '北京市', '北京', '116.40529', '39.904987', 1, 0, 1), (110100, 110000, '北京市', '北京', '116.40529', '39.904987', 2, 0, 1), @@ -5081,10 +4948,5 @@ INSERT INTO sys_area VALUES (460400499, 460400, '洋浦经济开发区', '洋浦经济开发区', '109.202064', '19.736941', 3, 0, 1), (460400500, 460400, '华南热作学院', '华南热作学院', '109.494073', '19.505382', 3, 0, 1); -INSERT INTO sys_user_role(id, uid, site_id, is_admin) VALUE -(1, 1, 0, 1); - -INSERT INTO sys_user(uid, username) VALUE -(1, ''); -INSERT INTO site(site_id, site_name, app_type) VALUE -(1, 'niucloud-admin', 'admin'); +INSERT INTO site VALUES +(1, '', 'niucloud-admin', 0, '', 'admin', '', '', 1, '', '', 0, 0, 0, '', '', '', '', 0, 0, '', '', '', '0'); diff --git a/niucloud/app/job/schedule/SiteExpireClose.php b/niucloud/app/job/schedule/SiteExpireClose.php index d8c3cbe0c..0204238dc 100644 --- a/niucloud/app/job/schedule/SiteExpireClose.php +++ b/niucloud/app/job/schedule/SiteExpireClose.php @@ -13,6 +13,7 @@ namespace app\job\schedule; use app\service\core\site\CoreSiteService; use core\base\BaseJob; +use think\facade\Log; /** * 站点到期自动关闭 @@ -28,7 +29,7 @@ class SiteExpireClose extends BaseJob $core_site_service->expire($v['site_id']); } } -// Log::write('站点到期自动关闭'.date('Y-m-d h:i:s')); + Log::write('站点到期自动关闭'.date('Y-m-d h:i:s')); return true; } } diff --git a/niucloud/app/lang/en/dict.php b/niucloud/app/lang/en/dict.php index 20d00b82d..8a9eefd0b 100644 --- a/niucloud/app/lang/en/dict.php +++ b/niucloud/app/lang/en/dict.php @@ -98,14 +98,11 @@ return [ 'status_off' => 'off' ], //自动任务时间间隔 - 'dict_cron' => [ - 'type_minute' => 'minute', - 'type_day' => 'day', - 'type_week' => 'week', - 'type_month' => 'month', - + 'dict_schedule' => [ 'type_cron' => 'time work', - 'type_crond' => 'period work' + 'type_crond' => 'period work', + 'on' => 'on', + 'off' => 'off' ], //支付相关 'dict_pay' => [ @@ -270,4 +267,27 @@ return [ 'sms_notice_records' => 'send log', 'map_setting' => 'map config', ], + 'dict_date' => [ + //week + 'mon' => 'monday', + 'tue' => 'tuesday', + 'wed' => 'wednesday', + 'thur' => 'thursday', + 'fri' => 'friday', + 'sat' => 'saturday', + 'sun' => 'sunday', + //month + 'jan' => 'january', + 'feb' => 'february', + 'mar' => 'march', + 'apr' => 'april', + 'may' => 'may', + 'jun' => 'june', + 'jul' => 'july', + 'aug' => 'august', + 'sept' => 'sept', + 'oct' => 'october', + 'nov' => 'november', + 'dec' => 'december', + ], ]; diff --git a/niucloud/app/lang/zh-cn/api.php b/niucloud/app/lang/zh-cn/api.php index 832ee5ea6..bbc3b9242 100644 --- a/niucloud/app/lang/zh-cn/api.php +++ b/niucloud/app/lang/zh-cn/api.php @@ -38,6 +38,7 @@ return [ 'ADDON_INSTALL_NOT_EXIST' => '未找到插件安装任务', 'ADDON_INSTALL_EXECUTED' => '插件安装任务已执行', 'INSTALL_CHECK_NOT_PASS' => '安装校验未通过', + 'SITE_INDEX_VIEW_PATH_NOT_EXIST' => '当前首页路径不存在', //登录注册重置账号.... diff --git a/niucloud/app/lang/zh-cn/dict.php b/niucloud/app/lang/zh-cn/dict.php index aa64e5d45..d916f9c17 100644 --- a/niucloud/app/lang/zh-cn/dict.php +++ b/niucloud/app/lang/zh-cn/dict.php @@ -42,7 +42,15 @@ return [ 'status_on' => '正常', 'status_experience' => '体验期', 'status_expire' => '已到期', - 'status_close' => '已停止' + 'status_close' => '已停止', + 'pay' => '收款', + 'refund' => '退款', + 'transfer' => '转账', + ], + // 站点 + 'dict_site_index' => [ + //站点类型 + 'system' => '框架首页', ], 'dict_notice' => [ 'type_sms' => '短信', @@ -125,14 +133,11 @@ return [ 'status_off' => '停用' ], //自动任务时间间隔 - 'dict_cron' => [ - 'type_minute' => '分钟', - 'type_day' => '天', - 'type_week' => '星期', - 'type_month' => '月', - + 'dict_schedule' => [ 'type_cron' => '定时任务', - 'type_crond' => '周期任务' + 'type_crond' => '周期任务', + 'on' => '启用', + 'off' => '关闭' ], //支付相关 'dict_pay' => [ @@ -263,6 +268,31 @@ return [ 'mysql_ask' => '大于等于5.7', 'php_authority_ask' => '开启', 'file_authority_ask' => '可读可写' - ] + ], + //日期 + 'dict_date' => [ + //星期 + 'mon' => '周一', + 'tue' => '周二', + 'wed' => '周三', + 'thur' => '周四', + 'fri' => '周五', + 'sat' => '周六', + 'sun' => '周日', + //月份 + 'jan' => '1月', + 'feb' => '2月', + 'mar' => '3月', + 'apr' => '4月', + 'may' => '5月', + 'jun' => '6月', + 'jul' => '7月', + 'aug' => '8月', + 'sept' => '9月', + 'oct' => '10月', + 'nov' => '11月', + 'dec' => '12月', + + ], ]; diff --git a/niucloud/app/listener/pay/PaySuccessListener.php b/niucloud/app/listener/pay/PaySuccessListener.php index 120c407b6..ab637f9d8 100644 --- a/niucloud/app/listener/pay/PaySuccessListener.php +++ b/niucloud/app/listener/pay/PaySuccessListener.php @@ -12,6 +12,7 @@ namespace app\listener\pay; use app\service\core\order\recharge\CoreRechargeOrderService; +use app\service\core\site\CoreSiteAccountService; /** * 支付异步回调事件 @@ -25,5 +26,8 @@ class PaySuccessListener { (new CoreRechargeOrderService())->pay($pay_info); } + //账单记录添加 + (new CoreSiteAccountService())->addPayLog($pay_info); + } } \ No newline at end of file diff --git a/niucloud/app/listener/pay/RefundSuccessListener.php b/niucloud/app/listener/pay/RefundSuccessListener.php index 48be20575..c453b0c8e 100644 --- a/niucloud/app/listener/pay/RefundSuccessListener.php +++ b/niucloud/app/listener/pay/RefundSuccessListener.php @@ -11,8 +11,10 @@ namespace app\listener\pay; +use app\model\site\SiteAccountLog; use app\service\core\order\recharge\CoreRechargeOrderService; use app\service\core\order\recharge\CoreRechargeRefundService; +use app\service\core\site\CoreSiteAccountService; /** * 退款成功事件 @@ -21,10 +23,14 @@ class RefundSuccessListener { public function handle(array $refund_info) { + //添加账单记录 + (new CoreSiteAccountService())->addRefundLog($refund_info['site_id'], $refund_info['refund_no']); + //交易单据处理 $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/listener/pay/TransferSuccessListener.php b/niucloud/app/listener/pay/TransferSuccessListener.php index 6e68b05b5..48701ffe1 100644 --- a/niucloud/app/listener/pay/TransferSuccessListener.php +++ b/niucloud/app/listener/pay/TransferSuccessListener.php @@ -13,6 +13,7 @@ namespace app\listener\pay; use app\dict\cash_out\CashOutTypeDict; use app\service\core\member\CoreMemberCashOutService; +use app\service\core\site\CoreSiteAccountService; /** * 转账事件 @@ -21,6 +22,8 @@ class TransferSuccessListener { public function handle(array $info) { + //添加账单记录 + (new CoreSiteAccountService())->addTransferLog($info['site_id'], $info['transfer_no']); //会员零钱提现 if($info['trade_type'] == CashOutTypeDict::MEMBER_CASH_OUT) { diff --git a/niucloud/app/listener/system/AppManageListener.php b/niucloud/app/listener/system/AppManageListener.php index 36dc283c2..22aa56f0a 100644 --- a/niucloud/app/listener/system/AppManageListener.php +++ b/niucloud/app/listener/system/AppManageListener.php @@ -20,7 +20,7 @@ class AppManageListener { public function handle() { - $data = [ + return [ "category" =>[ [ @@ -45,9 +45,8 @@ class AppManageListener "desc" => get_lang('dict_app_manage.member_recharge'), "icon" => "static/resource/images/app/recharge_icon.png", "cover" => "static/resource/images/app/recharge_cover.png", - "url" => "/finance/recharge" + "url" => "/order/recharge/order" ], ]; - return $data; } } \ No newline at end of file diff --git a/niucloud/app/listener/system/SiteIndexListener.php b/niucloud/app/listener/system/SiteIndexListener.php new file mode 100644 index 000000000..114276e04 --- /dev/null +++ b/niucloud/app/listener/system/SiteIndexListener.php @@ -0,0 +1,30 @@ + get_lang("dict_site_index.system"), + "view_path" => "index/site_index" + ] + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/model/addon/Addon.php b/niucloud/app/model/addon/Addon.php index 271a58cd5..8df9e59fe 100644 --- a/niucloud/app/model/addon/Addon.php +++ b/niucloud/app/model/addon/Addon.php @@ -45,7 +45,7 @@ class Addon extends BaseModel */ public function getStatusNameAttr($value, $data) { - return AddonDict::getStatus()[ $data[ 'status' ] ?? '' ] ?? ''; + return AddonDict::getStatus()[ $data[ 'status' ]] ?? ''; } /** diff --git a/niucloud/app/model/article/Article.php b/niucloud/app/model/article/Article.php index 945f55f8b..2e8c9ed2f 100644 --- a/niucloud/app/model/article/Article.php +++ b/niucloud/app/model/article/Article.php @@ -11,6 +11,7 @@ namespace app\model\article; +use app\model\site\Site; use core\base\BaseModel; use think\db\Query; use think\model\relation\HasOne; @@ -99,12 +100,16 @@ class Article extends BaseModel } public function getArticleUrlAttr($value, $data) { - $site_tag = $data['site_id'] == 1 ? '' : '/s' . $data['site_id']; - $data = [ - 'wap_url' => ( !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']}" + $site = Site::find($data['site_id']); + $site_tag = $site['site_code']; + + $wap_domain = !empty(env("system.wap_domain")) ? preg_replace('#/$#', '', env("system.wap_domain")) : request()->domain(); + $web_domain = !empty(env("system.web_domain")) ? preg_replace('#/$#', '', env("system.web_domain")) : request()->domain(); + + return [ + 'wap_url' => $wap_domain . "/wap/" . $site_tag . "/pages/article/detail?id={$data['id']}", + 'web_url' => $web_domain . "/web/" . $site_tag . "/article/detail?id={$data['id']}" ]; - return $data; } } diff --git a/niucloud/app/model/diy/Diy.php b/niucloud/app/model/diy/Diy.php index 295c2107f..1ca8bfe7f 100644 --- a/niucloud/app/model/diy/Diy.php +++ b/niucloud/app/model/diy/Diy.php @@ -47,7 +47,10 @@ class Diy extends BaseModel */ public function getTypeNameAttr($value, $data) { - return TemplateDict::getTemplate($data[ 'type' ] ?? '')[ 'title' ] ?? ''; + if (!empty($data[ 'type' ])) { + return TemplateDict::getTemplate([ 'type' => $data[ 'type' ] ])[ $data[ 'type' ] ][ 'title' ] ?? ''; + } + return ''; } /** diff --git a/niucloud/app/model/member/Member.php b/niucloud/app/model/member/Member.php index 51e942e41..883a5fa74 100644 --- a/niucloud/app/model/member/Member.php +++ b/niucloud/app/model/member/Member.php @@ -72,7 +72,9 @@ class Member extends BaseModel */ public function getStatusNameAttr($value, $data) { - return MemberDict::getStatus()[$data['status'] ?? ''] ?? ''; + if(empty($data['status'])) + return ''; + return MemberDict::getStatus()[$data['status']] ?? ''; } /** * 注册来源字段转化 @@ -81,7 +83,9 @@ class Member extends BaseModel */ public function getRegisterChannelNameAttr($value, $data) { - return MemberRegisterChannelDict::getType()[ $data[ 'register_channel' ] ?? '' ] ?? ''; + if(empty($data['register_channel'])) + return ''; + return MemberRegisterChannelDict::getType()[ $data[ 'register_channel' ]] ?? ''; } /** @@ -91,7 +95,9 @@ class Member extends BaseModel */ public function getRegisterTypeNameAttr($value, $data) { - return MemberRegisterTypeDict::getType()[ $data[ 'register_type' ] ?? '' ] ?? ''; + if(empty($data['register_type'])) + return ''; + return MemberRegisterTypeDict::getType()[ $data[ 'register_type' ]] ?? ''; } /** @@ -101,7 +107,9 @@ class Member extends BaseModel */ public function getLoginChannelNameAttr($value, $data) { - return ChannelDict::getType()[ $data[ 'login_channel' ] ?? '' ] ?? ''; + if(empty($data['login_channel'])) + return ''; + return ChannelDict::getType()[ $data[ 'login_channel' ]] ?? ''; } /** @@ -111,7 +119,9 @@ class Member extends BaseModel */ public function getLoginTypeNameAttr($value, $data) { - return MemberLoginTypeDict::getType()[ $data[ 'login_type' ] ?? '' ] ?? ''; + if(empty($data['login_type'])) + return ''; + return MemberLoginTypeDict::getType()[ $data[ 'login_type' ]] ?? ''; } /** @@ -122,7 +132,9 @@ class Member extends BaseModel */ public function getSexNameAttr($value, $data) { - return CommonDict::getSexType()[ $data[ 'sex' ] ?? '' ] ?? ''; + if(empty($data['sex'])) + return ''; + return CommonDict::getSexType()[ $data[ 'sex' ]] ?? ''; } /** diff --git a/niucloud/app/model/member/MemberAccountLog.php b/niucloud/app/model/member/MemberAccountLog.php index 9dbaaf515..45f7c707b 100644 --- a/niucloud/app/model/member/MemberAccountLog.php +++ b/niucloud/app/model/member/MemberAccountLog.php @@ -44,7 +44,9 @@ class MemberAccountLog extends BaseModel */ public function getAccountTypeNameAttr($value,$data) { - return MemberAccountTypeDict::getType()[$data['account_type'] ?? ''] ?? ''; + if(empty($data['account_type'])) + return ''; + return MemberAccountTypeDict::getType()[$data['account_type']] ?? ''; } /** diff --git a/niucloud/app/model/member/MemberCashOut.php b/niucloud/app/model/member/MemberCashOut.php index c650d5f00..c535b4248 100644 --- a/niucloud/app/model/member/MemberCashOut.php +++ b/niucloud/app/model/member/MemberCashOut.php @@ -76,7 +76,9 @@ class MemberCashOut extends BaseModel * @return mixed|string */ public function getAccountTypeNameAttr($value, $data){ - return MemberAccountTypeDict::getType()[ $data[ 'account_type' ] ?? '' ] ?? ''; + if(empty($data['account_type'])) + return ''; + return MemberAccountTypeDict::getType()[ $data[ 'account_type' ]] ?? ''; } /** * 提现状态名称 @@ -85,7 +87,9 @@ class MemberCashOut extends BaseModel * @return mixed|string */ public function getStatusNameAttr($value, $data){ - return MemberCashOutDict::getStatus()[ $data[ 'status' ] ?? '' ] ?? ''; + if(empty($data[ 'status' ])) + return ''; + return MemberCashOutDict::getStatus()[ $data[ 'status' ]] ?? ''; } /** * 转账方式名称 @@ -95,7 +99,10 @@ class MemberCashOut extends BaseModel */ public function getTransferTypeNameAttr($value, $data) { - return TransferDict::getTransferType()[ $data[ 'transfer_type' ] ?? '' ]['name'] ?? ''; + if(empty($data[ 'transfer_type' ])) + return ''; + $temp = TransferDict::getTransferType()[ $data[ 'transfer_type' ]] ?? []; + return $temp['name'] ?? ''; } /** @@ -105,7 +112,9 @@ class MemberCashOut extends BaseModel * @return mixed|string */ public function getTransferStatusNameAttr($value, $data){ - return TransferDict::getStatus()[ $data[ 'transfer_status' ] ?? '' ] ?? ''; + if(empty($data[ 'transfer_status' ])) + return ''; + return TransferDict::getStatus()[ $data[ 'transfer_status' ]] ?? ''; } /** * 会员搜索 diff --git a/niucloud/app/model/member/MemberCashOutAccount.php b/niucloud/app/model/member/MemberCashOutAccount.php index 5f099c1ab..c1e22a690 100644 --- a/niucloud/app/model/member/MemberCashOutAccount.php +++ b/niucloud/app/model/member/MemberCashOutAccount.php @@ -39,7 +39,10 @@ class MemberCashOutAccount extends BaseModel * @return mixed|string */ public function getAccountTypeNameAttr($value, $data){ - return TransferDict::getTransferType()[ $data[ 'transfer_type' ] ?? '' ] ?? ''; + if(empty($data[ 'transfer_type' ])) + return ''; + $temp = TransferDict::getTransferType()[ $data[ 'transfer_type' ]] ?? []; + return $temp['name'] ?? ''; } /** diff --git a/niucloud/app/model/order/RechargeOrderItemRefund.php b/niucloud/app/model/order/RechargeOrderItemRefund.php index f7f24c59d..0b991459f 100644 --- a/niucloud/app/model/order/RechargeOrderItemRefund.php +++ b/niucloud/app/model/order/RechargeOrderItemRefund.php @@ -49,7 +49,10 @@ class RechargeOrderItemRefund extends BaseModel */ public function getStatusNameAttr($value, $data) { - return RechargeOrderDict::getRefundStatus()[$data['status'] ?? '']['name'] ?? ''; + if(empty($data['status'])) + return ''; + $temp = RechargeOrderDict::getRefundStatus()[$data['status']] ?? []; + return $temp['name'] ?? ''; } /** diff --git a/niucloud/app/model/pay/Pay.php b/niucloud/app/model/pay/Pay.php index d010a003d..40fe79096 100644 --- a/niucloud/app/model/pay/Pay.php +++ b/niucloud/app/model/pay/Pay.php @@ -53,7 +53,9 @@ class Pay extends BaseModel */ public function getStatusNameAttr($value, $data) { - return PayDict::getStatus()[$data['status'] ?? ''] ?? ''; + if(empty($data['status'])) + return ''; + return PayDict::getStatus()[$data['status']] ?? ''; } /** * 支付方式字段转化 @@ -62,7 +64,10 @@ class Pay extends BaseModel */ public function getTypeNameAttr($value, $data) { - return PayDict::getPayType()[$data['type'] ?? '']['name'] ?? ''; + if(empty($data['type'])) + return ''; + $temp = PayDict::getPayType()[$data['type']] ?? []; + return $temp['name'] ?? ''; } } diff --git a/niucloud/app/model/pay/PayChannel.php b/niucloud/app/model/pay/PayChannel.php index a745f3389..da24a7864 100644 --- a/niucloud/app/model/pay/PayChannel.php +++ b/niucloud/app/model/pay/PayChannel.php @@ -47,7 +47,9 @@ class PayChannel extends BaseModel */ public function getTypeNameAttr($value, $data) { - return PayDict::getPayType()[$data['type'] ?? '']['name'] ?? ''; + if(empty($data['type'])) return ''; + $temp = PayDict::getPayType()[$data['type']] ?? []; + return $temp['name'] ?? ''; } /** @@ -57,7 +59,8 @@ class PayChannel extends BaseModel */ public function getChannelNameAttr($value, $data) { - return ChannelDict::getType()[$data['channel'] ?? ''] ?? ''; + if(empty($data['channel'])) return ''; + return ChannelDict::getType()[$data['channel']] ?? ''; } } diff --git a/niucloud/app/model/pay/Refund.php b/niucloud/app/model/pay/Refund.php index 9eaef4ee3..446c3dcc4 100644 --- a/niucloud/app/model/pay/Refund.php +++ b/niucloud/app/model/pay/Refund.php @@ -47,7 +47,8 @@ class Refund extends BaseModel */ public function getStatusNameAttr($value, $data) { - return RefundDict::getStatus()[$data['status'] ?? ''] ?? ''; + if(empty($data['status'])) return ''; + return RefundDict::getStatus()[$data['status']] ?? ''; } /** @@ -57,7 +58,8 @@ class Refund extends BaseModel */ public function getTypeNameAttr($value, $data) { - return RefundDict::getType()[$data['type'] ?? ''] ?? ''; + if(empty($data['type'])) return ''; + return RefundDict::getType()[$data['type']] ?? ''; } } diff --git a/niucloud/app/model/pay/Transfer.php b/niucloud/app/model/pay/Transfer.php index 9d88c91d6..eb5edfa40 100644 --- a/niucloud/app/model/pay/Transfer.php +++ b/niucloud/app/model/pay/Transfer.php @@ -48,7 +48,8 @@ class Transfer extends BaseModel */ public function getTransferStatusNameAttr($value, $data) { - return TransferDict::getStatus()[$data['transfer_status'] ?? ''] ?? ''; + if(empty($data['transfer_status'])) return ''; + return TransferDict::getStatus()[$data['transfer_status']] ?? ''; } @@ -59,7 +60,9 @@ class Transfer extends BaseModel */ public function getTransferTypeNameAttr($value, $data) { - return TransferDict::getTransferType()[$data['transfer_type'] ?? '']['name'] ?? ''; + if(empty($data['transfer_type'])) return ''; + $temp = TransferDict::getTransferType()[$data['transfer_type']] ?? []; + return $temp['name'] ?? ''; } } diff --git a/niucloud/app/model/site/Site.php b/niucloud/app/model/site/Site.php index 4bbe2ad74..285a1b1d4 100644 --- a/niucloud/app/model/site/Site.php +++ b/niucloud/app/model/site/Site.php @@ -46,7 +46,9 @@ class Site extends BaseModel */ public function getStatusNameAttr($value, $data) { - return SiteDict::getStatus()[$data['status'] ?? ''] ?? ''; + if(empty($data['status'])) + return ''; + return SiteDict::getStatus()[$data['status']] ?? ''; } /** * 关键字搜索 diff --git a/niucloud/app/model/site/SiteAccountLog.php b/niucloud/app/model/site/SiteAccountLog.php new file mode 100644 index 000000000..6f795bbe7 --- /dev/null +++ b/niucloud/app/model/site/SiteAccountLog.php @@ -0,0 +1,118 @@ +where([['out_trade_no', '=', $data['trade_no']]])->append(['type_name'])->findOrEmpty()->toArray(); + break; + case 'refund' : + return (new Refund())->where([['refund_no', '=', $data['trade_no']]])->findOrEmpty()->toArray(); + break; + case 'transfer': + return (new Transfer())->where([['transfer_no', '=', $data['trade_no']]])->findOrEmpty()->toArray(); + break; + default: + return []; + } + } + /** + * 状态字段转化 + * @param $value + * @return mixed + */ + public function searchTypeAttr($query, $value, $data) + { + if ($value) { + $query->where('type', '=', $value ); + } + } + + /** + * 金额转化 + * @param $value + * @return mixed + */ + public function getMoneyAttr($value, $data) + { + if(strpos($data['money'], "-") !== false){ + return $data['money']; + }else{ + return "+".$data['money']; + } + } + + /** + * 创建时间搜索器 + * @param $value + */ + public function searchCreateTimeAttr(Query $query, $value, $data) + { + $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('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([ [ 'create_time', '>=', $start_time ] ]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([ [ 'create_time', '<=', $end_time ] ]); + } + } + + +} diff --git a/niucloud/app/model/sys/SysAgreement.php b/niucloud/app/model/sys/SysAgreement.php index f1e9b4aa5..c41f2c9f8 100644 --- a/niucloud/app/model/sys/SysAgreement.php +++ b/niucloud/app/model/sys/SysAgreement.php @@ -12,6 +12,7 @@ namespace app\model\sys; use app\dict\sys\AgreementDict; +use app\dict\sys\StorageDict; use core\base\BaseModel; /** @@ -45,6 +46,7 @@ class SysAgreement extends BaseModel */ public function getAgreementKeyNameAttr($value, $data) { - return AgreementDict::getType()[$data['agreement_key'] ?? ''] ?? ''; + if(empty($data['agreement_key'])) return ''; + return AgreementDict::getType()[$data['agreement_key']] ?? ''; } } diff --git a/niucloud/app/model/sys/SysMenu.php b/niucloud/app/model/sys/SysMenu.php index b6c34306a..f9b050daa 100644 --- a/niucloud/app/model/sys/SysMenu.php +++ b/niucloud/app/model/sys/SysMenu.php @@ -58,7 +58,9 @@ class SysMenu extends BaseModel */ public function getMenuTypeNameAttr($value,$data) { - return MenuTypeDict::getMenuType()[$data['menu_type'] ?? ''] ?? ''; + if(empty($data['menu_type'])) + return ''; + return MenuTypeDict::getMenuType()[$data['menu_type']] ?? ''; } /** @@ -69,6 +71,8 @@ class SysMenu extends BaseModel */ public function getStatusNameAttr($value,$data) { - return MenuDict::getStatus()[$data['status'] ?? ''] ?? ''; + if(empty($data['status'])) + return ''; + return MenuDict::getStatus()[$data['status']] ?? ''; } } diff --git a/niucloud/app/model/sys/SysNoticeLog.php b/niucloud/app/model/sys/SysNoticeLog.php index 87050ba0a..4354d4fba 100644 --- a/niucloud/app/model/sys/SysNoticeLog.php +++ b/niucloud/app/model/sys/SysNoticeLog.php @@ -11,7 +11,9 @@ namespace app\model\sys; +use app\dict\notice\NoticeDict; use app\dict\notice\NoticeTypeDict; +use app\dict\sys\SmsDict; use core\base\BaseModel; use think\db\Query; @@ -52,7 +54,9 @@ class SysNoticeLog extends BaseModel */ public function getContentAttr($value,$data) { - $temp = json_decode($value); + if($value){ + $temp = json_decode($value, true); + } if(!$temp){ $temp = $value; } @@ -66,8 +70,12 @@ class SysNoticeLog extends BaseModel */ public function getNameAttr($value,$data) { - $temp = \app\dict\notice\NoticeDict::getNotice()[$data['key'] ?? ''] ?? ''; - return $temp['name'] ?? ''; + $name = ''; + if(!empty($data['key'])){ + $temp = NoticeDict::getNotice()[$data['key']] ?? []; + $name = $temp['name'] ?? ''; + } + return $name; } /** @@ -78,8 +86,12 @@ class SysNoticeLog extends BaseModel */ public function getNoticeTypeNameAttr($value,$data) { - $temp = NoticeTypeDict::getType()[$data['notice_type'] ?? ''] ?? ''; - return $temp['name'] ?? ''; + $name = ''; + if (!empty($data['notice_type'])) { + $temp = NoticeTypeDict::getType()[$data['notice_type']] ?? []; + $name = $temp['name'] ?? ''; + } + return $name; } /** * 消息类型 diff --git a/niucloud/app/model/sys/SysNoticeSmsLog.php b/niucloud/app/model/sys/SysNoticeSmsLog.php index 3ca06646a..110191131 100644 --- a/niucloud/app/model/sys/SysNoticeSmsLog.php +++ b/niucloud/app/model/sys/SysNoticeSmsLog.php @@ -11,12 +11,13 @@ namespace app\model\sys; +use app\dict\notice\NoticeDict; use app\dict\sys\SmsDict; use core\base\BaseModel; /** * 系统短信消息发送记录 - * Class SysMessageLog + * Class SysNoticeSmsLog * @package app\model\sys */ class SysNoticeSmsLog extends BaseModel @@ -35,7 +36,7 @@ class SysNoticeSmsLog extends BaseModel protected $name = 'sys_notice_sms_log'; protected $type = [ - 'send_time' => 'timestamp', + 'send_time' => 'timestamp', ]; // 设置json类型字段 @@ -49,24 +50,31 @@ class SysNoticeSmsLog extends BaseModel * @param $data * @return string */ - public function getResultAttr($value,$data) + public function getResultAttr($value, $data) { - $temp = json_decode($value); - if(!$temp){ + if ($value) { + $temp = json_decode($value, true); + } + if (empty($temp)) { $temp = $value; } - return $temp; + return $temp ?? ''; } + /** * 名称 * @param $value * @param $data * @return string */ - public function getNameAttr($value,$data) + public function getNameAttr($value, $data) { - $temp = \app\dict\notice\NoticeDict::getNotice()[$data['key'] ?? '']; - return $temp['name'] ?? ''; + $name = ''; + if (!empty($data['key'])) { + $temp = NoticeDict::getNotice()[$data['key']] ?? []; + $name = $temp['name'] ?? ''; + } + return $name; } /** @@ -75,9 +83,13 @@ class SysNoticeSmsLog extends BaseModel * @param $data * @return string */ - public function getStatusNameAttr($value,$data) + public function getStatusNameAttr($value, $data) { - return SmsDict::getStatusType()[$data['status'] ?? ''] ?? ''; + $name = ''; + if (!empty($data['status'])) { + $name = SmsDict::getStatusType()[$data['status']] ?? ''; + } + return $name; } /** @@ -86,11 +98,25 @@ class SysNoticeSmsLog extends BaseModel * @param $data * @return string */ - public function getSmsTypesNameAttr($value,$data) + public function getSmsTypesNameAttr($value, $data) { - $temp = SmsDict::getType()[$data['sms_type'] ?? ''] ?? []; + if(empty($data['sms_type'])) return ''; + $temp = SmsDict::getType()[$data['sms_type']] ?? []; return $temp['name'] ?? ''; } + + /** + * 消息标识 + * @param $value + * @return mixed + */ + public function searchKeyAttr($query, $value) + { + if ($value) { + $query->where('key', $value); + } + } + /** * 短信方式 * @param $value diff --git a/niucloud/app/model/sys/SysRole.php b/niucloud/app/model/sys/SysRole.php index 9d6bdbd7a..194cd660f 100644 --- a/niucloud/app/model/sys/SysRole.php +++ b/niucloud/app/model/sys/SysRole.php @@ -45,7 +45,8 @@ class SysRole extends BaseModel * @return string */ public function getStatusNameAttr($value, $data){ - return RoleStatusDict::getStatus()[$data['status'] ?? ''] ?? ''; + if(empty($data['status'])) return ''; + return RoleStatusDict::getStatus()[$data['status']] ?? ''; } diff --git a/niucloud/app/model/sys/SysCronTask.php b/niucloud/app/model/sys/SysSchedule.php similarity index 71% rename from niucloud/app/model/sys/SysCronTask.php rename to niucloud/app/model/sys/SysSchedule.php index 61baf4d3c..e97eb7bd5 100644 --- a/niucloud/app/model/sys/SysCronTask.php +++ b/niucloud/app/model/sys/SysSchedule.php @@ -11,16 +11,14 @@ namespace app\model\sys; -use app\dict\sys\CronDict; +use app\dict\schedule\ScheduleDict; use core\base\BaseModel; use think\db\Query; /** * 定时任务模型 - * Class SysArea - * @package app\model\sys */ -class SysCronTask extends BaseModel +class SysSchedule extends BaseModel { /** @@ -33,7 +31,7 @@ class SysCronTask extends BaseModel * 模型名称 * @var string */ - protected $name = 'sys_cron_task'; + protected $name = 'sys_schedule'; protected $type = [ 'last_time' => 'timestamp', @@ -42,50 +40,47 @@ class SysCronTask extends BaseModel ]; // 设置json类型字段 - protected $json = ['data']; + protected $json = ['time']; // 设置JSON数据返回数组 protected $jsonAssoc = true; + + /** - * 任务模式 + * 启用状态 * @param $value * @return mixed */ - public function getTypeNameAttr($value, $data) + public function getStatusNameAttr($value, $data) { - return CronDict::getType()[$data['type'] ?? ''] ?? ''; + if(empty($data['status'])) return ''; + return ScheduleDict::getStatus()[$data['status']] ?? ''; } - - /** - * 任务周期 - * @param $value - * @return mixed - */ - public function getCrondTypeNameAttr($value, $data) - { - return CronDict::getCrondType()[$data['crond_type'] ?? ''] ?? ''; - } - /** - * 任务名称搜索器 - * @param $value - */ - public function searchTitleAttr(Query $query, $value, $data) - { - if ($value) { - $query->whereLike('title', '%'.$value.'%'); - } - } - /** * 任务类型搜索器 * @param $value */ - public function searchTypeAttr(Query $query, $value, $data) + public function searchKeyAttr(Query $query, $value, $data) { if ($value) { - $query->where('type', $value); + $query->where('key', $value); } } + /** + * 状态搜索 + * @param Query $query + * @param $value + * @param $data + * @return void + */ + public function searchStatusAttr(Query $query, $value, $data) + { + if ($value) { + $query->where('status', $value); + } + } + + /** * 执行时间搜索器 * @param $value diff --git a/niucloud/app/model/sys/SysUser.php b/niucloud/app/model/sys/SysUser.php index 56236aad8..8aaabd3fb 100644 --- a/niucloud/app/model/sys/SysUser.php +++ b/niucloud/app/model/sys/SysUser.php @@ -72,7 +72,8 @@ class SysUser extends BaseModel */ public function getStatusNameAttr($value, $data) { - return UserDict::getStatus()[$data['status'] ?? ''] ?? ''; + if(empty($data['status'])) return ''; + return UserDict::getStatus()[$data['status']] ?? ''; } public function getCreateTimeAttr($value, $data) diff --git a/niucloud/app/service/admin/aliapp/AliappConfigService.php b/niucloud/app/service/admin/aliapp/AliappConfigService.php index 34c95d5cd..5014da58f 100644 --- a/niucloud/app/service/admin/aliapp/AliappConfigService.php +++ b/niucloud/app/service/admin/aliapp/AliappConfigService.php @@ -27,9 +27,7 @@ class AliappConfigService extends BaseAdminService */ public function getAliappConfig() { - $config_info = (new CoreAliappConfigService())->getAliappConfig($this->site_id); - return $config_info; - + return (new CoreAliappConfigService())->getAliappConfig($this->site_id); } /** diff --git a/niucloud/app/service/admin/article/ArticleCategoryService.php b/niucloud/app/service/admin/article/ArticleCategoryService.php index f99b5e648..ffe610e87 100644 --- a/niucloud/app/service/admin/article/ArticleCategoryService.php +++ b/niucloud/app/service/admin/article/ArticleCategoryService.php @@ -38,8 +38,7 @@ class ArticleCategoryService extends BaseAdminService $field = 'category_id, site_id, name, sort, is_show, create_time, update_time'; $order = 'create_time desc'; $search_model = $this->model->where([['site_id', '=', $this->site_id]])->withSearch(['name'], $where)->field($field)->order($order)->append(["article_num"]); - $list = $this->pageQuery($search_model); - return $list; + return $this->pageQuery($search_model); } /** @@ -50,8 +49,7 @@ class ArticleCategoryService extends BaseAdminService $field = 'category_id, site_id, name, sort'; $order = 'sort desc'; - $list = $this->model->where([['site_id', '=', $this->site_id], ['is_show', '=', 1]])->field($field)->order($order)->select()->toArray(); - return $list; + return $this->model->where([['site_id', '=', $this->site_id], ['is_show', '=', 1]])->field($field)->order($order)->select()->toArray(); } /** @@ -62,8 +60,7 @@ class ArticleCategoryService extends BaseAdminService { $field = 'category_id, site_id, name, sort, is_show, create_time, update_time'; - $info = $this->model->field($field)->where([['category_id', '=', $id], ['site_id', '=', $this->site_id]])->append(["article_num"])->findOrEmpty()->toArray(); - return $info; + return $this->model->field($field)->where([['category_id', '=', $id], ['site_id', '=', $this->site_id]])->append(["article_num"])->findOrEmpty()->toArray(); } /** @@ -96,8 +93,7 @@ class ArticleCategoryService extends BaseAdminService */ public function del(int $id) { - $res = $this->model->where([['category_id', '=', $id], ['site_id', '=', $this->site_id]])->delete(); - return $res; + return $this->model->where([['category_id', '=', $id], ['site_id', '=', $this->site_id]])->delete(); } } \ No newline at end of file diff --git a/niucloud/app/service/admin/article/ArticleService.php b/niucloud/app/service/admin/article/ArticleService.php index e7babdc85..ab2c4c504 100644 --- a/niucloud/app/service/admin/article/ArticleService.php +++ b/niucloud/app/service/admin/article/ArticleService.php @@ -39,8 +39,7 @@ class ArticleService extends BaseAdminService $field = 'id, category_id, site_id, title, intro, summary, image, author, content, visit, visit_virtual, is_show, sort, create_time, update_time'; $order = 'create_time desc'; $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ 'title', 'category_id', 'is_show'], $where)->with('articleCategory')->field($field)->order($order)->append(['article_url']); - $list = $this->pageQuery($search_model); - return $list; + return $this->pageQuery($search_model); } /** @@ -51,8 +50,7 @@ class ArticleService extends BaseAdminService { $field = 'id, category_id, site_id, title, intro, summary, image, author, content, visit, visit_virtual, is_show, sort, create_time, update_time'; - $info = $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->with('articleCategory')->field($field)->findOrEmpty()->toArray(); - return $info; + return $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->with('articleCategory')->field($field)->findOrEmpty()->toArray(); } /** @@ -86,8 +84,7 @@ class ArticleService extends BaseAdminService */ public function del(int $id) { - $res = $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->delete(); - return $res; + return $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->delete(); } } \ No newline at end of file diff --git a/niucloud/app/service/admin/auth/AuthService.php b/niucloud/app/service/admin/auth/AuthService.php index ab25ad248..5e397602e 100644 --- a/niucloud/app/service/admin/auth/AuthService.php +++ b/niucloud/app/service/admin/auth/AuthService.php @@ -19,6 +19,7 @@ use app\service\admin\sys\MenuService; use app\service\admin\sys\RoleService; use app\service\admin\user\UserRoleService; use app\service\admin\user\UserService; +use app\service\core\site\CoreSiteService; use core\base\BaseAdminService; use core\exception\AuthException; use Exception; @@ -35,21 +36,15 @@ class AuthService extends BaseAdminService * @param $site_id */ public function checkSiteAuth(Request $request){ - $site_id = $request->adminSiteId(); - //没有当前站点的信息 - if(!$this->getAuthRole($site_id)) - { - throw new AuthException('NO_SITE_PERMISSION'); - } - - //查询站点信息并返回 - $site_service = new SiteService(); - $site_info = $site_service->getSiteCache($site_id); + $site_code = $request->adminSiteId(); + //todo 将站点编号转化为站点id + $site_info = (new CoreSiteService())->getSiteInfoBySiteCode($site_code); //站点不存在 - if(empty($site_info)) - { - throw new AuthException('SITE_NOT_EXIST'); - } + if(empty($site_info)) throw new AuthException('SITE_NOT_EXIST'); + $site_id = $site_info['site_id']; + //没有当前站点的信息 + if(!$this->getAuthRole($site_id)) throw new AuthException('NO_SITE_PERMISSION'); + $request->siteId($site_id); $request->appType($site_info['app_type']); return true; diff --git a/niucloud/app/service/admin/auth/AuthSiteService.php b/niucloud/app/service/admin/auth/AuthSiteService.php index 3063ff1a8..09ef67db8 100644 --- a/niucloud/app/service/admin/auth/AuthSiteService.php +++ b/niucloud/app/service/admin/auth/AuthSiteService.php @@ -12,7 +12,11 @@ namespace app\service\admin\auth; +use app\dict\sys\AppTypeDict; +use app\dict\sys\MenuDict; +use app\dict\sys\MenuTypeDict; use app\model\site\Site; +use app\model\sys\SysMenu; use app\service\admin\site\SiteService; use core\base\BaseAdminService; use think\facade\Cache; @@ -50,18 +54,11 @@ class AuthSiteService extends BaseAdminService $auth_service = new AuthService(); $user_role_list = $auth_service->getAuthSiteRoleList(); $site_ids = array_column($user_role_list, 'site_id'); - $site_list = $this->model->where([['site_id', 'in', $site_ids]])->field('app_type,site_name,logo')->column('site_id, site_name, logo, app_type'); - return $site_list; + return $this->model->where([['site_id', 'in', $site_ids]])->field('app_type,site_name,logo')->column('site_id, site_name, logo, app_type'); }, SiteService::$cache_tag_name ); -// return Cache::tag(SiteService::$cache_tag_name)->remember($cache_name, function (){ -// $auth_service = new AuthService(); -// $user_role_list = $auth_service->getAuthSiteRoleList(); -// $site_ids = array_column($user_role_list, 'site_id'); -// $site_list = $this->model->where([['site_id', 'in', $site_ids]])->field('app_type,site_name,logo')->column('site_id, site_name, logo, app_type'); -// return $site_list; -// }); + } /** @@ -82,5 +79,15 @@ class AuthSiteService extends BaseAdminService return (new SiteService())->getApiList($this->site_id, $status); } - + /** + * 查询当前站点可以单独显示的菜单(仅支持站点端调用) + * @return SysMenu[]|array|\think\Collection + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\DbException + * @throws \think\db\exception\ModelNotFoundException + */ + public function getShowMenuList(){ + $menu_keys = (new SiteService())->getMenuIdsBySiteId($this->site_id, 1); + return (new SysMenu())->where([['menu_key', 'in', $menu_keys], ['menu_type', '=', MenuTypeDict::MENU], ['app_type', '=', AppTypeDict::SITE],['is_show', '=', 1]])->select()->toArray(); + } } \ No newline at end of file diff --git a/niucloud/app/service/admin/auth/ConfigService.php b/niucloud/app/service/admin/auth/ConfigService.php index df339059c..1d21743f3 100644 --- a/niucloud/app/service/admin/auth/ConfigService.php +++ b/niucloud/app/service/admin/auth/ConfigService.php @@ -37,13 +37,12 @@ class ConfigService extends BaseAdminService public function getConfig() { $info = (new CoreConfigService())->getConfig($this->request->defaultSiteId(), ConfigKeyDict::ADMIN_LOGIN)['value'] ?? []; - $config = [ + return [ 'is_captcha' => $info['is_captcha'] ?? 0,//是否启用验证码 'is_site_captcha' => $info['is_site_captcha'] ?? 0,//是否启用站点验证码 'bg' => $info['bg'] ?? '',//平台登录端 背景 'site_bg' => $info['site_bg'] ?? '',//站点登录端 背景 ]; - return $config; } /** diff --git a/niucloud/app/service/admin/auth/LoginService.php b/niucloud/app/service/admin/auth/LoginService.php index ffd924ab6..eab3f884d 100644 --- a/niucloud/app/service/admin/auth/LoginService.php +++ b/niucloud/app/service/admin/auth/LoginService.php @@ -70,7 +70,6 @@ class LoginService extends BaseAdminService throw new AuthException('USER_LOCK'); } - if($app_type == AppTypeDict::ADMIN){ $default_site_id = $this->request->defaultSiteId(); $userrole = (new UserRoleService())->getUserRole($default_site_id, $userinfo->uid); diff --git a/niucloud/app/service/admin/cron/CronService.php b/niucloud/app/service/admin/cron/CronService.php deleted file mode 100644 index e4fe5ee95..000000000 --- a/niucloud/app/service/admin/cron/CronService.php +++ /dev/null @@ -1,55 +0,0 @@ -core_cron_service = new CoreCronService(); - } - - /** - * 自动任务列表 - * @param array $where - * @return mixed - */ - public function getPage(array $where = []) - { - return $this->core_cron_service->getPage($this->site_id, $where); - } - - - /** - * 分组详情 - * @param int $group_id - * @return array - */ - public function getInfo(int $id) - { - return $this->core_cron_service->getInfo($this->site_id, $id); - - } - - - -} \ No newline at end of file diff --git a/niucloud/app/service/admin/diy/DiyRouteService.php b/niucloud/app/service/admin/diy/DiyRouteService.php index 84adeea48..907004176 100644 --- a/niucloud/app/service/admin/diy/DiyRouteService.php +++ b/niucloud/app/service/admin/diy/DiyRouteService.php @@ -143,6 +143,7 @@ class DiyRouteService extends BaseAdminService public function modifyShare($data) { $field = 'id'; + $data[ 'site_id' ] = $this->site_id; $info = $this->model->field($field)->where([ [ 'name', '=', $data[ 'name' ] ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); if (!empty($info)) { $this->model->where([ [ 'id', '=', $info[ 'id' ] ], [ 'site_id', '=', $this->site_id ] ])->update([ 'share' => $data[ 'share' ] ]); diff --git a/niucloud/app/service/admin/diy/DiyService.php b/niucloud/app/service/admin/diy/DiyService.php index 9b3d700bf..d130be811 100644 --- a/niucloud/app/service/admin/diy/DiyService.php +++ b/niucloud/app/service/admin/diy/DiyService.php @@ -16,6 +16,7 @@ use app\dict\diy\LinkDict; use app\dict\diy\PagesDict; use app\dict\diy\TemplateDict; use app\model\diy\Diy; +use app\model\site\Site; use app\service\admin\sys\SystemService; use core\base\BaseAdminService; use Exception; @@ -36,14 +37,14 @@ class DiyService extends BaseAdminService } /** - * 获取自定义页面列表 + * 获取自定义页面分页列表 * @param array $where * @return array */ public function getPage(array $where = []) { $where[] = [ 'site_id', '=', $this->site_id ]; - $field = 'id,site_id,title,name,type,is_default,share,visit_count,create_time,update_time'; + $field = 'id,site_id,title,name,template,type,mode,is_default,share,visit_count,create_time,update_time'; $order = "is_default desc,update_time desc"; $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ "title", "type" ], $where)->field($field)->order($order)->append([ 'type_name' ]); $list = $this->pageQuery($search_model); @@ -51,17 +52,19 @@ class DiyService extends BaseAdminService } /** + * 获取自定义页面列表 * @param array $where + * @param string $field * @return array + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\DbException + * @throws \think\db\exception\ModelNotFoundException */ - public function getList(array $where = []) + public function getList(array $where = [], $field = 'id,site_id,title,name,template,type,mode,is_default,share,visit_count,create_time,update_time') { - $where[] = [ 'site_id', '=', $this->site_id ]; - $field = 'id,site_id,title,name,type,is_default,share,visit_count,create_time,update_time'; $order = "is_default desc,update_time desc"; - $list = $this->model->where($where)->field($field)->select()->order($order)->toArray(); + $list = $this->model->where([ [ [ 'site_id', '=', $this->site_id ] ] ])->withSearch([ "title", "type", 'mode' ], $where)->field($field)->select()->order($order)->toArray(); return $list; - } /** @@ -71,19 +74,29 @@ class DiyService extends BaseAdminService */ public function getInfo(int $id) { - $field = 'id,site_id,title,name,type,value,is_default,share,visit_count'; - + $field = 'id,site_id,title,name,template,type,mode,value,is_default,share,visit_count'; $info = $this->model->field($field)->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); return $info; } public function getInfoByName(string $name) { - $field = 'id,site_id,title,name,type,value,is_default,share,visit_count'; + $field = 'id,site_id,title,name,template,type,mode,value,is_default,share,visit_count'; $info = $this->model->field($field)->where([ [ 'name', '=', $name ], [ 'site_id', '=', $this->site_id ], [ 'is_default', '=', 1 ] ])->findOrEmpty()->toArray(); return $info; } + /** + * 查询数量 + * @param array $where + * @return int + * @throws \think\db\exception\DbException + */ + public function getCount(array $where = []) + { + return $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ 'type' ], $where)->count(); + } + /** * 添加自定义页面 * @param array $data @@ -147,7 +160,7 @@ class DiyService extends BaseAdminService } Db::startTrans(); $this->model->where([ [ 'name', '=', $info[ 'name' ] ], [ 'site_id', '=', $this->site_id ] ])->update([ 'is_default' => 0 ]); - $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->update([ 'is_default' => 1 ]); + $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->update([ 'is_default' => 1, 'update_time' => time() ]); Db::commit(); return true; } catch (\Exception $e) { @@ -163,7 +176,7 @@ class DiyService extends BaseAdminService */ public function getInit(array $params = []) { - $page_template = TemplateDict::getTemplate(); + $template = $this->getTemplate(); $time = time(); $data = []; @@ -175,61 +188,80 @@ class DiyService extends BaseAdminService if (!empty($data)) { // 编辑赋值 - if (isset($page_template[ $data[ 'type' ] ])) { - $page = $page_template[ $data[ 'type' ] ]; + + if (isset($template[ $data[ 'type' ] ])) { + $page = $template[ $data[ 'type' ] ]; $data[ 'type_name' ] = $page[ 'title' ]; $data[ 'page' ] = $page[ 'page' ]; } } else { + // 新页面赋值 - $type = 'DIY_PAGE'; + $title = $params[ 'title' ] ? $params[ 'title' ] : '页面' . $time; + $type = $params[ 'type' ] ? $params[ 'type' ] : 'DIY_PAGE'; + $name = $type == 'DIY_PAGE' ? 'DIY_PAGE_RANDOM_' . $time : $type; $type_name = ''; - $name = $params[ 'name' ]; - $page_route = ''; + $template_name = $params[ 'template' ] ?? ''; // 页面模板名称 + $page_route = ''; // 页面路径 + $mode = 'diy'; // 页面模式,diy:自定义,fixed:固定 $value = ''; - if (isset($page_template[ $params[ 'template' ] ])) { - $page = $page_template[ $params[ 'template' ] ]; - $name = $params[ 'template' ] == 'DIY_PAGE' ? 'DIY_PAGE_RANDOM_' . $time : $params[ 'template' ]; - $type = $params[ 'template' ]; + $is_default = 0; + + // 查询默认第一个页面模板数据 + if (isset($template[ $params[ 'name' ] ])) { + $page = $template[ $params[ 'name' ] ]; + $name = $params[ 'name' ]; + $type = $params[ 'name' ]; + $title = $page[ 'title' ]; $type_name = $page[ 'title' ]; $page_route = $page[ 'page' ]; - // 查询指定页面数据 - $page_data = $this->getPageData($params[ 'template' ], $params[ 'template_name' ]); + $page_data = $this->getFirstPageData($type); if (!empty($page_data)) { $value = json_encode($page_data[ 'data' ], JSON_UNESCAPED_UNICODE); + $is_default = 1; + $template_name = $page_data[ 'template' ]; + $mode = $page_data[ 'mode' ]; + } + } else if (isset($template[ $type ])) { + // 查询指定页面数据 + $page = $template[ $type ]; + $type_name = $page[ 'title' ]; + $page_route = $page[ 'page' ]; + + // 如果页面类型一条数据也没有,那么要默认 使用中 + $count = $this->getCount([ 'type' => $type ]); + if ($count == 0) { + $is_default = 1; + } + + if (!empty($params[ 'template' ])) { + $page_template = $page[ 'template' ][ $params[ 'template' ] ]; + $mode = $page_template[ 'mode' ]; + $page_data = $page_template[ 'data' ]; + $page_data[ 'global' ][ 'title' ] = $title; + $value = json_encode($page_data, JSON_UNESCAPED_UNICODE); } } + $data = [ 'name' => $name, - 'title' => $params[ 'title' ] ? $params[ 'title' ] : '页面' . $time, + 'title' => $title, 'type' => $type, 'type_name' => $type_name, + 'template' => $template_name, 'page' => $page_route, + 'mode' => $mode, 'value' => $value, - 'is_default' => 0 + 'is_default' => $is_default ]; - if (isset($page_template[ $params[ 'name' ] ])) { - $page = $page_template[ $params[ 'name' ] ]; - $data[ 'name' ] = $params[ 'template' ] ? $params[ 'template' ] : $params[ 'name' ]; - $data[ 'type' ] = $data[ 'name' ]; - $data[ 'title' ] = $page[ 'title' ]; - $data[ 'type_name' ] = $page[ 'title' ]; - $data[ 'page' ] = $page[ 'page' ]; - - // 查询默认页面数据 - $page_data = $this->getFirstPageData($data[ 'name' ]); - if (!empty($page_data)) { - $data[ 'value' ] = json_encode($page_data[ 'data' ], JSON_UNESCAPED_UNICODE); - $data[ 'is_default' ] = 1; - } - } } - $data[ 'component' ] = $this->getComponentList($data[ 'name' ]); + $data[ 'component' ] = $this->getComponentList($data[ 'type' ]); $data[ 'domain_url' ] = ( new SystemService() )->getUrl(); - $data[ 'site_id' ] = $this->site_id; + $site = Site::find($this->site_id); + $data[ 'site_id' ] = $site[ 'site_code' ]; return $data; } @@ -279,7 +311,7 @@ class DiyService extends BaseAdminService // 查询自定义页面 if ($k == 'DIY_PAGE') { $diy_service = new DiyService(); - $list = $diy_service->getList([ [ 'type', '=', 'DIY_PAGE' ] ]); + $list = $diy_service->getList([ 'type' => 'DIY_PAGE' ]); foreach ($list as $ck => $cv) { $link[ $k ][ 'child_list' ][] = [ 'name' => $cv[ 'name' ], @@ -312,28 +344,32 @@ class DiyService extends BaseAdminService /** * 获取页面模板 - * @param string $type + * @param array $params * @return array|string */ - public function getTemplate(string $type) + public function getTemplate($params = []) { - $page_template = TemplateDict::getTemplate($type); + $page_template = TemplateDict::getTemplate($params); foreach ($page_template as $k => $v) { // 查询页面数据 - $page_template[ $k ][ 'template' ] = PagesDict::getPages($k); + $page_params = [ + 'type' => $k, + 'mode' => $params[ 'mode' ] ?? '' + ]; + $page_template[ $k ][ 'template' ] = PagesDict::getPages($page_params); } return $page_template; } /** * 获取页面数据 - * @param $template + * @param $type * @param $name * @return array */ - public function getPageData($template, $name) + public function getPageData($type, $name) { - $pages = PagesDict::getPages($template); + $pages = PagesDict::getPages([ 'type' => $type ]); if (isset($pages[ $name ])) { return $pages[ $name ]; } @@ -342,18 +378,207 @@ class DiyService extends BaseAdminService /** * 获取默认页面数据 - * @param $template + * @param $type * @return array|mixed */ - public function getFirstPageData($template) + public function getFirstPageData($type) { - $pages = PagesDict::getPages($template); + $pages = PagesDict::getPages([ 'type' => $type ]); if (!empty($pages)) { + $template = array_key_first($pages); $page = array_shift($pages); $page[ 'template' ] = $template; + $page[ 'type' ] = $type; return $page; } return []; } + /** + * 获取页面装修列表 + * @return array|string|null + */ + public function getDecoratePage() + { + + // 查询可装修的页面 + $template = $this->getTemplate([ 'action' => 'decorate' ]); + + // 遍历查询页面数据,使用了那套模板 + foreach ($template as $k => $v) { + + // 查询我的微页面 + $template[ $k ][ 'my_page' ] = $this->getList([ 'type' => $k, 'mode' => 'diy' ], 'id,title,name,template,type,is_default,mode'); + $template[ $k ][ 'domain_url' ] = ( new SystemService() )->getUrl(); + + // 查询默认页面数据 + $default_page_data = $this->getFirstPageData($k); + $use_template = [ + 'id' => 0, + 'name' => $k, + 'title' => $default_page_data[ 'title' ], // 模板名称 + 'template' => $default_page_data[ 'template' ], // 模板标识 + 'cover' => $default_page_data[ 'cover' ], // 封面图 + 'preview' => $default_page_data[ 'preview' ], // 预览图 + 'desc' => $default_page_data[ 'desc' ], // 模板描述 + 'mode' => $default_page_data[ 'mode' ], // 页面模式:diy:自定义,fixed:固定 + 'hope' => 'template', // 默认选中 模板 + 'url' => '' // 自定义页面链接,实时预览效果 + ]; + + // 查询页面数据 + $info = $this->getInfoByName($k); + + if (!empty($info)) { + $use_template[ 'id' ] = $info[ 'id' ]; + $use_template[ 'title' ] = $info[ 'title' ]; + + // 检测模板是否存在 + if (!empty($info[ 'template' ])) { + if (in_array($info[ 'template' ], array_keys($v[ 'template' ]))) { + $use_template[ 'template' ] = $info[ 'template' ]; + $use_template[ 'mode' ] = $info[ 'mode' ]; + $use_template[ 'hope' ] = $info[ 'mode' ] == 'fixed' ? 'template' : $info[ 'mode' ]; + } + } + + $use_template[ 'preview' ] = ''; // 默认图 + $use_template[ 'desc' ] = '通过自定义装修的页面'; + + // 查询模板页面数 + $page_data = $this->getPageData($k, $use_template[ 'template' ]); + if (!empty($page_data)) { + $use_template[ 'cover' ] = $page_data[ 'cover' ]; // 默认图 + $use_template[ 'desc' ] = $page_data[ 'desc' ]; + } else { + // 自定义页面,实时预览效果 + $site = Site::find($this->site_id); + $use_template[ 'url' ] = '/pages/index/diy?&mode=preview&site_id=' . $site[ 'site_code' ] . '&id=' . $info[ 'id' ]; + } + } + $template[ $k ][ 'use_template' ] = $use_template; + } + + return $template; + } + + /** + * 切换模板 + * @param array $params + * @return array|mixed + * @throws Exception + */ + public function changeTemplate(array $params = []) + { + if ($params[ 'mode' ] == 'diy') { + // 自定义页面 + + // 查询 + if (!empty($params[ 'id' ])) { + // 使用了微页面 + $info = $this->getInfo($params[ 'id' ]); + if (!empty($info)) { + // 状态 变为 使用中 + $this->setUse($info[ 'id' ]); + } + return $info; + } elseif ($params[ 'template' ]) { + + // 查询模板信息 + $page_data = $this->getPageData($params[ 'type' ], $params[ 'template' ]); + + // 查询表中未修改的模板数据 + $field = 'id'; + $condition = [ + [ 'site_id', '=', $this->site_id ], + [ 'type', '=', $params[ 'type' ] ], + [ 'template', '=', $params[ 'template' ] ], + [ 'mode', '=', $params[ 'mode' ] ], + [ 'is_change', '=', 0 ] + ]; + $info = $this->model->field($field)->where($condition)->findOrEmpty()->toArray(); + if (!empty($info)) { + // 状态 变为 使用中 + $this->setUse($info[ 'id' ]); + return $info; + } else { + // 新增 数据 + $data = [ + 'title' => $page_data[ 'title' ], + 'name' => $params[ 'type' ], + 'type' => $params[ 'type' ], + 'value' => json_encode($page_data[ 'data' ], JSON_UNESCAPED_UNICODE), + 'template' => $params[ 'template' ], + 'mode' => $params[ 'mode' ] + ]; + $res = $this->add($data); + $this->setUse($res); + } + + } + + } elseif ($params[ 'mode' ] == 'fixed') { + // 固定模板 + + // 查询模板信息 + $page_data = $this->getPageData($params[ 'type' ], $params[ 'template' ]); + + // 检查表里是否存在数据 + $field = 'id'; + $condition = [ + [ 'site_id', '=', $this->site_id ], + [ 'type', '=', $params[ 'type' ] ], + [ 'template', '=', $params[ 'template' ] ], + [ 'mode', '=', $params[ 'mode' ] ] + ]; + $info = $this->model->field($field)->where($condition)->findOrEmpty()->toArray(); + if (!empty($info)) { + // 状态 变为 使用中 + $this->setUse($info[ 'id' ]); + } else { + // 新增 数据 + $data = [ + 'title' => $page_data[ 'title' ], + 'name' => $params[ 'type' ], + 'type' => $params[ 'type' ], + 'value' => json_encode($page_data[ 'data' ], JSON_UNESCAPED_UNICODE), + 'template' => $params[ 'template' ], + 'mode' => $params[ 'mode' ] + ]; + $res = $this->add($data); + $this->setUse($res); + } + return $info; + } + return $params; + } + + /** + * 获取页面预览数据 + * @param array $params + * @return array + */ + public function getPreviewData(array $params = []) + { + $info = []; + if (!empty($params[ 'id' ])) { + $info = $this->getInfo($params[ 'id' ]); + } elseif (!empty($params[ 'name' ])) { + $info = $this->getInfoByName($params[ 'name' ]); + } + + $res = [ + 'page' => $this->getTemplate([ 'type' => 'DIY_PAGE' ])[ 'DIY_PAGE' ][ 'page' ] + ]; + + if (!empty($info)) { + if ($info[ 'is_default' ] == 1) { + $template = $this->getTemplate([ 'type' => $info[ 'type' ] ])[ $info[ 'type' ] ]; + $res[ 'page' ] = $template[ 'page' ] . '?id=' . $info[ 'id' ]; + } + } + + return $res; + } + } \ No newline at end of file diff --git a/niucloud/app/service/admin/generator/core/ModelGenerator.php b/niucloud/app/service/admin/generator/core/ModelGenerator.php index 330a7e46d..f06f036dc 100644 --- a/niucloud/app/service/admin/generator/core/ModelGenerator.php +++ b/niucloud/app/service/admin/generator/core/ModelGenerator.php @@ -115,7 +115,7 @@ class ModelGenerator extends BaseGenerator if (!$column['is_search']) { continue; } - $function_str .= '/**'.PHP_EOL.' * 搜索器:'.$this->table['table_content'].$column['column_comment'].''.PHP_EOL.' * @param $value'.PHP_EOL.' * @param $data'.PHP_EOL.' */'.PHP_EOL; + $function_str .= '/**'.PHP_EOL.' * 搜索器:'.$this->table['table_content'].$column['column_comment'].PHP_EOL.' * @param $value'.PHP_EOL.' * @param $data'.PHP_EOL.' */'.PHP_EOL; $function_str .= 'public function search'.Str::studly($column['column_name']).'Attr($query, $value, $data)'.PHP_EOL; $function_str .= '{'.PHP_EOL; $function_str .= ' if ($value) {'.PHP_EOL; diff --git a/niucloud/app/service/admin/generator/core/ServiceGenerator.php b/niucloud/app/service/admin/generator/core/ServiceGenerator.php index fd07d4e50..e93bd1b88 100644 --- a/niucloud/app/service/admin/generator/core/ServiceGenerator.php +++ b/niucloud/app/service/admin/generator/core/ServiceGenerator.php @@ -70,7 +70,7 @@ class ServiceGenerator extends BaseGenerator { $field = []; foreach ($this->tableColumn as $column) { - if ($column['is_lists'] || $column['is_insert'] || $column['is_update']) { + if ($column['is_query']) { $field[] = $column['column_name']; } } diff --git a/niucloud/app/service/admin/generator/core/WebIndexGenerator.php b/niucloud/app/service/admin/generator/core/WebIndexGenerator.php index 577953972..040b996e5 100644 --- a/niucloud/app/service/admin/generator/core/WebIndexGenerator.php +++ b/niucloud/app/service/admin/generator/core/WebIndexGenerator.php @@ -101,7 +101,7 @@ class WebIndexGenerator extends BaseGenerator $file_name = str_replace('_', '-', Str::lower($this->getTableName())).'-edit'; if($this->className){ - $file_name = Str::lower($this->className) . '-edit';; + $file_name = Str::lower($this->className) . '-edit'; } return '<'.$file_name.' ref="edit'.$this->getUCaseClassName().'Dialog" @complete="load'.$this->getUCaseName().'List" />'; diff --git a/niucloud/app/service/admin/generator/vm/admin_api_route.vm b/niucloud/app/service/admin/generator/vm/admin_api_route.vm index af5842563..7d38b5d5f 100644 --- a/niucloud/app/service/admin/generator/vm/admin_api_route.vm +++ b/niucloud/app/service/admin/generator/vm/admin_api_route.vm @@ -28,7 +28,7 @@ Route::group('{MODULE_NAME}', function () { //添加{NOTES} Route::post('{ROUTE_NAME}', '{MODULE_NAME}.{UCASE_CLASS_NAME}/add'); //编辑{NOTES} - Route::put('{ROUTE_NAME}/:id', '{MODULE_NAME}.{UCASE_CLASS_NAME}/update'); + Route::put('{ROUTE_NAME}/:id', '{MODULE_NAME}.{UCASE_CLASS_NAME}/edit'); //删除{NOTES} Route::delete('{ROUTE_NAME}/:id', '{MODULE_NAME}.{UCASE_CLASS_NAME}/del'); diff --git a/niucloud/app/service/admin/member/MemberAccountService.php b/niucloud/app/service/admin/member/MemberAccountService.php index 45633e110..b695016fb 100644 --- a/niucloud/app/service/admin/member/MemberAccountService.php +++ b/niucloud/app/service/admin/member/MemberAccountService.php @@ -61,7 +61,7 @@ class MemberAccountService extends BaseAdminService public function getInfo(int $id) { $field = 'id, member_id, site_id, account_type, account_data, from_type, related_id, create_time, memo'; - return $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->with('memberInfo')->field($field)->findOrEmpty()->append([ 'from_type_name', 'account_type_name' ])->toArray(); + return $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->with('memberInfo')->field($field)->append([ 'from_type_name', 'account_type_name' ])->findOrEmpty()->toArray(); } /** diff --git a/niucloud/app/service/admin/notice/NoticeSmsLogService.php b/niucloud/app/service/admin/notice/NoticeSmsLogService.php index 16aee5514..8f5da5fe9 100644 --- a/niucloud/app/service/admin/notice/NoticeSmsLogService.php +++ b/niucloud/app/service/admin/notice/NoticeSmsLogService.php @@ -17,7 +17,7 @@ use app\service\core\notice\CoreNoticeSmsLogService; use core\base\BaseAdminService; /** - * 消息管理服务层 + * 短信消息管理服务层 */ class NoticeSmsLogService extends BaseAdminService { @@ -40,8 +40,8 @@ class NoticeSmsLogService extends BaseAdminService * 获取消息内容 * @param string $key */ - public function getInfo(string $key) + public function getInfo(int $id) { - return (new CoreNoticeLogService())->getInfo($this->site_id, $key); + return (new CoreNoticeSmsLogService())->getInfo($this->site_id, $id); } } \ No newline at end of file diff --git a/niucloud/app/service/admin/schedule/ScheduleService.php b/niucloud/app/service/admin/schedule/ScheduleService.php new file mode 100644 index 000000000..ca2dfdaa5 --- /dev/null +++ b/niucloud/app/service/admin/schedule/ScheduleService.php @@ -0,0 +1,93 @@ +getPage($data); + } + + /** + * 获取信息 + * @param int $id + * @return array + */ + public function getInfo(int $id){ + return (new CoreScheduleService())->getInfo($id); + } + /** + * 启用或关闭 + * @param int $id + * @param $status + * @return true + */ + public function modifyStatus(int $id, $status) + { + return (new CoreScheduleService())->modifyStatus($id, $status); + } + + /** + * 添加 + * @param array $data + */ + public function add(array $data) + { + $res = (new CoreScheduleService())->add($data); + return $res->id; + + } + + /** + * 编辑 + * @param int $id + * @param array $data + */ + public function edit(int $id, array $data) + { + (new CoreScheduleService())->edit($id, $data); + return true; + } + + /** + * 删除 + * @param int $id + */ + public function del(int $id) + { + return (new CoreScheduleService())->del($id); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/site/SiteAccountLogService.php b/niucloud/app/service/admin/site/SiteAccountLogService.php new file mode 100644 index 000000000..7d2b81d26 --- /dev/null +++ b/niucloud/app/service/admin/site/SiteAccountLogService.php @@ -0,0 +1,79 @@ +model = new SiteAccountLog(); + } + + /** + * 获取账单列表 + * @param array $where + * @param string $order + * @return mixed + */ + public function getPage(array $where = []) + { + + $field = 'id, site_id, type, money, trade_no, create_time'; + $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ 'create_time', 'type' ], $where)->field($field)->append([ 'type_name', 'pay_info', 'money' ])->order('create_time desc'); + $list = $this->pageQuery($search_model); + return $list; + } + + /** + * 获取账单详情 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id, site_id, type, money, trade_no, create_time'; + return $this->model->where([ [ 'site_id', '=', $this->site_id ], ['id', '=', $id]])->field($field)->append([ 'type_name', 'pay_info' ])->findOrEmpty()->toArray(); + + } + + /** + * 统计数据 + * @return array + */ + public function stat() + { + return [ + 'pay' => $this->model->where([[ 'site_id', '=', $this->site_id ], ['type', '=', 'pay']])->sum("money")*1, + 'refund' => $this->model->where([[ 'site_id', '=', $this->site_id ], ['type', '=', 'refund']])->sum("money")*-1, + 'transfer' => $this->model->where([[ 'site_id', '=', $this->site_id ], ['type', '=', 'transfer']])->sum("money")*-1, + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/site/SiteGroupService.php b/niucloud/app/service/admin/site/SiteGroupService.php index 45912a021..caedec93f 100644 --- a/niucloud/app/service/admin/site/SiteGroupService.php +++ b/niucloud/app/service/admin/site/SiteGroupService.php @@ -128,9 +128,6 @@ class SiteGroupService extends BaseAdminService }, [MenuService::$cache_tag_name,self::$cache_tag_name] ); -// return Cache::tag([MenuService::$cache_tag_name,self::$cache_tag_name])->remember($cache_name, function () use ($group_id) { -// return $this->model->findOrEmpty($group_id)?->group_roles ?? []; -// }); } /** diff --git a/niucloud/app/service/admin/site/SiteService.php b/niucloud/app/service/admin/site/SiteService.php index 624589654..7bd908e0f 100644 --- a/niucloud/app/service/admin/site/SiteService.php +++ b/niucloud/app/service/admin/site/SiteService.php @@ -46,7 +46,7 @@ class SiteService extends BaseAdminService { $field = 'site_id, site_name, front_end_name, front_end_logo, app_type, keywords, logo, icon, `desc`, status, latitude, longitude, province_id, city_id, - district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id'; + district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id, site_code'; $search_model = $this->model->where([ [ 'app_type', '<>', 'admin' ] ])->withSearch([ 'create_time', 'expire_time', 'keywords', 'status', 'group_id' ], $where)->with('groupName')->field($field)->append([ 'status_name' ])->order('create_time desc'); $list = $this->pageQuery($search_model); return $list; @@ -60,7 +60,7 @@ class SiteService extends BaseAdminService public function getInfo(int $site_id) { $field = 'site_id, site_name, front_end_name, front_end_logo, app_type, keywords, logo, icon, `desc`, status, latitude, longitude, province_id, city_id, - district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id'; + district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id, site_code'; return $this->model->where([ [ 'site_id', '=', $site_id ] ])->with('groupName')->field($field)->append([ 'status_name' ])->findOrEmpty()->toArray(); } @@ -88,6 +88,7 @@ class SiteService extends BaseAdminService try { $site = $this->model->create($data_site); $site_id = $site->site_id; + //$this->model->where([['site_id', '=', $site_id]])->update(['site_code' => $this->createSiteCodeBySiteId($site_id)]); //添加用户 $data_user = [ 'username' => $data[ 'username' ], @@ -111,6 +112,24 @@ class SiteService extends BaseAdminService } } + /** + * 通过站点id生成站点code + * @param int $site_id + */ + public function createSiteCodeBySiteId(int $site_id) + { + retrun ($site_id + 1000000) *11 + 1; + } + + /** + * 通过站点code获取站点id + * @param $site_code + */ + public function getSiteIdBySiteCode($site_code) + { + retrun ($site_code-1) /11-1000000; + } + /** * 修改站点 * @param int $site_id @@ -149,24 +168,11 @@ class SiteService extends BaseAdminService $where = [ [ 'site_id', '=', $site_id ], ]; - $site = $this->model->where($where)->field('app_type,site_name,front_end_name,front_end_logo,logo,icon,group_id, status, expire_time')->findOrEmpty(); - if (!$site->isEmpty()) { - $site->append([ 'status_name' ]); - } + $site = $this->model->where($where)->field('site_id, app_type,site_name,front_end_name,front_end_logo,logo,icon,group_id, status, expire_time, site_code')->append([ 'status_name' ])->findOrEmpty(); return $site->toArray(); }, self::$cache_tag_name . $site_id ); -// return Cache::tag(self::$cache_tag_name . $site_id)->remember($cache_name . $site_id, function() use ($site_id) { -// $where = [ -// [ 'site_id', '=', $site_id ], -// ]; -// $site = $this->model->where($where)->field('app_type,site_name,logo,group_id, status, expire_time')->findOrEmpty(); -// if (!$site->isEmpty()) { -// $site->append([ 'status_name' ]); -// } -// return $site->toArray(); -// }); } @@ -203,7 +209,7 @@ class SiteService extends BaseAdminService * @param $status * @return array|mixed|string|null */ - public function getMenuIdsBySiteId(int $site_id, $is_tree, $status) + public function getMenuIdsBySiteId(int $site_id, $status) { $site_info = $this->getSiteCache($site_id); if (empty($site_info)) diff --git a/niucloud/app/service/admin/stat/SiteStatService.php b/niucloud/app/service/admin/stat/SiteStatService.php index 736fc13fe..f062673db 100644 --- a/niucloud/app/service/admin/stat/SiteStatService.php +++ b/niucloud/app/service/admin/stat/SiteStatService.php @@ -99,6 +99,10 @@ class SiteStatService extends BaseAdminService $woman_count = (new MemberService())->getCount([ ['sex', '=', '2'] ]); $data['member_stat']['value'] = [$man_count, $woman_count, (int)($member_count - $man_count - $woman_count)]; $data['site_info'] = (new SiteService())->getInfo($this->site_id); + $site_create_time = strtotime($data['site_info']['create_time']); + $site_expire_time = strtotime($data['site_info']['expire_time']); + $data['site_info']['mix'] = (number_format((time() - $site_create_time) / ($site_expire_time - $site_create_time), 2) * 100).'%'; ; + $data['site_info']['over_date'] = $site_expire_time - time() > 0 ? number_format(($site_expire_time - time())/ 86400, 2) : 0; return $data; } diff --git a/niucloud/app/service/admin/sys/AreaService.php b/niucloud/app/service/admin/sys/AreaService.php index f05aca81f..16601a4bc 100644 --- a/niucloud/app/service/admin/sys/AreaService.php +++ b/niucloud/app/service/admin/sys/AreaService.php @@ -41,16 +41,10 @@ class AreaService extends BaseAdminService return cache_remember( $cache_name, function() use($pid) { - $list = $this->model->where([['pid', '=', $pid]])->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); - return $list; + return $this->model->where([['pid', '=', $pid]])->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); }, [self::$cache_tag_name] ); -// return Cache::tag([self::$cache_tag_name])->remember($cache_name, function() use($pid) { -// $list = $this->model->where([['pid', '=', $pid]])->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); -// return $list; -// }); - } /** @@ -65,17 +59,80 @@ class AreaService extends BaseAdminService $cache_name, function() use($level) { $list = $this->model->where([['level', '<=', $level]])->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); - $tree = list_to_tree($list, 'id', 'pid'); - return $tree; + return list_to_tree($list, 'id', 'pid'); }, [self::$cache_tag_name] ); -// return Cache::tag([self::$cache_tag_name])->remember($cache_name, function() use($level) { -// $list = $this->model->where([['level', '<=', $level]])->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); -// $tree = list_to_tree($list, 'id', 'pid'); -// return $tree; -// }); } + /** + * @param string $address + * @return int|mixed + * 地址解析 + */ + public function getAddress(string $address){ + $map = (new ConfigService())->getMap(); + $url = "https://apis.map.qq.com/ws/geocoder/v1/?address=".$address."&key=".$map['key']; + $curl = curl_init(); + curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); + curl_setopt($curl, CURLOPT_HEADER, 0); + curl_setopt($curl, CURLOPT_URL, $url); + curl_setopt($curl, CURLOPT_TIMEOUT, 1); + curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); + curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); + + $res = curl_exec($curl); + $res = json_decode($res, true); + if($res){ + curl_close($curl); + return $res; + }else { + $error = curl_errno($curl); + curl_close($curl); + return $error; + } + } + + /** + * @param string $location + * @return int|mixed + * 逆地址解析 + */ + public function getAddressInfo(string $location){ + $map = (new ConfigService())->getMap(); + $url = "https://apis.map.qq.com/ws/geocoder/v1/?location=".$location."&key=".$map['key']; + $curl = curl_init(); + curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); + curl_setopt($curl, CURLOPT_HEADER, 0); + curl_setopt($curl, CURLOPT_URL, $url); + curl_setopt($curl, CURLOPT_TIMEOUT, 1); + curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); + curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); + + $res = curl_exec($curl); + $res = json_decode($res, true); + if($res){ + curl_close($curl); + return $res; + }else { + $error = curl_errno($curl); + curl_close($curl); + return $error; + } + } + + public function getAreaId($name, $level){ + $field = 'id'; + $info = $this->model->field($field)->where([['name', 'like', '%' . $name . '%' ], ['level', '=', $level]])->findOrEmpty()->toArray(); + return $info; + } + + /** + * 获取地址名称 + */ + public function getAreaName($id){ + $info = $this->model->field("name")->where([['id', '=', $id ]])->findOrEmpty()->toArray(); + return $info['name']; + } } \ No newline at end of file diff --git a/niucloud/app/service/admin/sys/AttachmentService.php b/niucloud/app/service/admin/sys/AttachmentService.php index 40d19c0f0..ba9f48cb0 100644 --- a/niucloud/app/service/admin/sys/AttachmentService.php +++ b/niucloud/app/service/admin/sys/AttachmentService.php @@ -174,8 +174,7 @@ class AttachmentService extends BaseAdminService ['id', '=', $id] ); $category_model = new SysAttachmentCategory(); - $res = $category_model->where($where)->update($data); - return $res; + return $category_model->where($where)->update($data); } /** @@ -191,8 +190,7 @@ class AttachmentService extends BaseAdminService throw new AdminException('ATTACHMENT_GROUP_HAS_IMAGE'); //下级存在图片不能删除 - $res = $category->delete(); - return $res; + return $category->delete(); } diff --git a/niucloud/app/service/admin/sys/ConfigService.php b/niucloud/app/service/admin/sys/ConfigService.php index 2b30d03d4..0859d18eb 100644 --- a/niucloud/app/service/admin/sys/ConfigService.php +++ b/niucloud/app/service/admin/sys/ConfigService.php @@ -15,6 +15,7 @@ use app\service\admin\site\SiteService; use app\service\core\sys\CoreConfigService; use app\service\core\sys\CoreSysConfigService; use core\base\BaseAdminService; +use core\exception\AdminException; /** * 配置服务层 @@ -58,8 +59,7 @@ class ConfigService extends BaseAdminService 'copyright_link' => $value['copyright_link'], 'copyright_desc' => $value['copyright_desc'] ]; - $res = $this->core_config_service->setConfig(0,'COPYRIGHT', $data); - return $res; + return $this->core_config_service->setConfig(0,'COPYRIGHT', $data); } /** @@ -120,8 +120,7 @@ class ConfigService extends BaseAdminService "enterprise_wechat" => $value['enterprise_wechat'], "tel" => $value['tel'] ]; - $res = $this->core_config_service->setConfig(0,'SERVICE_INFO', $data); - return $res; + return $this->core_config_service->setConfig(0,'SERVICE_INFO', $data); } /** @@ -134,8 +133,7 @@ class ConfigService extends BaseAdminService $data = [ 'key' => $value['key'], ]; - $res = $this->core_config_service->setConfig($this->site_id,'MAPKEY', $data); - return $res; + return $this->core_config_service->setConfig($this->site_id,'MAPKEY', $data); } /** @@ -148,9 +146,100 @@ class ConfigService extends BaseAdminService { $info = []; $info['value'] = [ - 'key' => '', + 'key' => 'IZQBZ-3UHEU-WTCVD-2464U-I5N4V-ZFFU3', ]; } return $info['value']; } + + /** + * 获取站点主页配置 + * @return mixed|string[] + */ + public function getSiteIndexConfig() + { + $config = (new CoreConfigService())->getConfig($this->site_id, "site_index"); + if(empty($config)) + { + $config['value'] = [ + 'view_path' => 'index/site_index' + ]; + } + return $config['value']['view_path']; + } + + /** + * 站点主页配置 + * @param $data + * @return \app\model\sys\SysConfig|bool|\think\Model + */ + public function setSiteIndexConfig($data) + { + $config = [ + 'view_path' => $data['view_path'] , + ]; + //检测是否路劲一个异常 + $index_list = $this->getSiteIndexList(); + $check_tag = 0; + foreach($index_list as $k => $v) + { + if($v['view_path'] == $data['view_path']) + { + $check_tag = 1; + } + } + if($check_tag == 0) throw new AdminException('SITE_INDEX_VIEW_PATH_NOT_EXIST'); + (new CoreConfigService())->setConfig($this->site_id, "site_index", $config); + return true; + } + + /** + * 获取站点配置的首页列表 + * @return array + */ + public function getSiteIndexList() + { + $result = event("SiteIndex"); + $index_list = []; + foreach ($result as $k => $v) + { + $index_list = empty($index_list) ? $v: array_merge($index_list, $v); + } + $view_path = $this->getSiteIndexConfig(); + foreach ($index_list as $k => $v) + { + $v_view_path = $v['view_path'] ?? ''; + $index_list[$k]['is_use'] = ($v_view_path == $view_path) ? 1: 0; + } + return $index_list; + } + + /** + * 设置站点快捷菜单 + * @param $data + * @return bool + */ + public function setShortcutMenu($data) + { + (new CoreConfigService())->setConfig($this->site_id, 'shortcut_menu', $data); + return true; + } + + /** + * 获取站点快捷菜单 + * @return array|mixed + */ + public function getShortcutMenu() + { + $config = (new CoreConfigService())->getConfig($this->site_id, 'shortcut_menu'); + $menu = $config['value'] ?? []; + if(!empty($menu)){ + $menu_service = new MenuService(); + foreach($menu as &$v){ + $item_router_path = $v['router_path'] ?? ''; + if(!$item_router_path) $v['router_path'] = $menu_service->getFullRouterPath($v['menu_key']); + } + } + return $menu; + } } \ No newline at end of file diff --git a/niucloud/app/service/admin/sys/MenuService.php b/niucloud/app/service/admin/sys/MenuService.php index 05f866a65..48668f316 100644 --- a/niucloud/app/service/admin/sys/MenuService.php +++ b/niucloud/app/service/admin/sys/MenuService.php @@ -142,12 +142,63 @@ class MenuService extends BaseAdminService { $menu_list[$k]['menu_name'] = $lang_menu_name; } + //首页加载 + if($v['menu_key'] == 'overview' && $v['app_type'] == 'site') + { + $view_path = (new ConfigService())->getSiteIndexConfig(); + $menu_list[$k]['view_path'] = $view_path; + } + } return $is_tree ? $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', 1) : $menu_list; } + /** + * 获取所有接口菜单 + */ + public function getAllMenuList($app_type = '', $status = 'all', $is_tree = 0, $is_button = 0) + { + $cache_name = 'menu_api_' .$app_type.'_'. $status . '_' . $is_tree . '_' . $is_button; + $menu_list = cache_remember( + $cache_name, + function () use ($status, $is_tree, $is_button, $app_type) { + $where = [ +// ['menu_type', 'in', [0,1]] + ['app_type', '=', $app_type], + ]; + if ($status != 'all') { + $where[] = ['status', '=', $status]; + } + $menu_list = $this->model->where($where)->order('sort desc')->select()->toArray(); + return $menu_list; + }, + self::$cache_tag_name + ); + foreach ($menu_list as $k => $v) + { + $lang_menu_key = "dict_menu_". $v['app_type']. '.'. $v['menu_key']; + $lang_menu_name = get_lang("dict_menu_". $v['app_type']. '.'. $v['menu_key']); + //语言已定义 + if($lang_menu_key != $lang_menu_name) + { + $menu_list[$k]['menu_name'] = $lang_menu_name; + } + //首页加载 + if($v['menu_key'] == 'overview' && $v['app_type'] == 'site') + { + $view_path = (new ConfigService())->getSiteIndexConfig(); + $menu_list[$k]['view_path'] = $view_path; + } + + } + + return $is_tree ? $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', $is_button) : $menu_list; + + } + + /** * 通过菜单menu_key组获取接口数组 * @param array $menu_keys @@ -173,19 +224,6 @@ class MenuService extends BaseAdminService }, self::$cache_tag_name ); -// return Cache::tag(self::$cache_tag_name)->remember($cache_name, function () use ($menu_keys, $app_type) { -// $where = [ -// ['menu_key', 'in', $menu_keys] -// ]; -// if(!empty($app_type)){ -// $where[] = ['app_type', '=', $app_type]; -// } -// $menu_list = (new SysMenu())->where($where)->order('sort', 'desc')->column('api_url,methods'); -// foreach ($menu_list as $v) { -// $auth_menu_list[$v['methods']][] = $v['api_url']; -// } -// return $auth_menu_list ?? []; -// }); } @@ -214,18 +252,6 @@ class MenuService extends BaseAdminService }, self::$cache_tag_name ); -// return Cache::tag(self::$cache_tag_name)->remember($cache_name, function () use ($menu_keys, $app_type) { -// $where = [ -// ['menu_key', 'in', $menu_keys], -// ['menu_type', '=', MenuTypeDict::BUTTON] -// ]; -// if(!empty($app_type)){ -// $where[] = ['app_type', '=', $app_type]; -// } -// $menu_list = $this->model->where($where)->order('sort', 'desc')->column('menu_key'); -// return $menu_list; -// -// }); } /** @@ -256,21 +282,6 @@ class MenuService extends BaseAdminService }, self::$cache_tag_name ); -// return Cache::tag(self::$cache_tag_name)->remember($cache_name, function () use ($status, $app_type) { -// $where = [ -// ['api_url', '<>', ''], -// ['app_type', '=', $app_type], -// ]; -// if ($status != 'all') { -// $where[] = ['status', '=', $status]; -// } -// $menu_list = $this->model->where($where)->order('sort', 'desc')->column('methods, api_url'); -// $auth_menu_list = []; -// foreach ($menu_list as $v) { -// $auth_menu_list[$v['methods']][] = $v['api_url']; -// } -// return $auth_menu_list; -// }); } /** @@ -296,41 +307,6 @@ class MenuService extends BaseAdminService self::$cache_tag_name ); } - /** - * 获取所有接口菜单 - */ - public function getAllMenuList($app_type = '', $status = 'all', $is_tree = 0, $is_button = 0) - { - $cache_name = 'menu_api_' .$app_type.'_'. $status . '_' . $is_tree . '_' . $is_button; - $menu_list = cache_remember( - $cache_name, - function () use ($status, $is_tree, $is_button, $app_type) { - $where = [ -// ['menu_type', 'in', [0,1]] - ['app_type', '=', $app_type], - ]; - if ($status != 'all') { - $where[] = ['status', '=', $status]; - } - $menu_list = $this->model->where($where)->order('sort desc')->select()->toArray(); - return $menu_list; - }, - self::$cache_tag_name - ); - foreach ($menu_list as $k => $v) - { - $lang_menu_key = "dict_menu_". $v['app_type']. '.'. $v['menu_key']; - $lang_menu_name = get_lang("dict_menu_". $v['app_type']. '.'. $v['menu_key']); - //语言已定义 - if($lang_menu_key != $lang_menu_name) - { - $menu_list[$k]['menu_name'] = $lang_menu_name; - } - } - - return $is_tree ? $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', $is_button) : $menu_list;; - - } @@ -355,17 +331,6 @@ class MenuService extends BaseAdminService }, self::$cache_tag_name ); -// return Cache::tag(self::$cache_tag_name)->remember($cache_name, function () use ($status, $is_tree, $app_type) { -// $where = [ -// ['menu_type', '=', MenuTypeDict::BUTTON], -// ['app_type', '=', $app_type], -// ]; -// if ($status != 'all') { -// $where[] = ['status', '=', $status]; -// } -// $menu_list = $this->model->where($where)->order('sort', 'desc')->column('menu_key'); -// return $menu_list; -// }); } /** @@ -409,6 +374,40 @@ class MenuService extends BaseAdminService } + /** + * 获取完整的路由地址 + * @param $menu + * @return string + */ + public function getFullRouterPath($menu_key){ + $menu = $this->find($menu_key); + $parents = []; + $this->getParentDirectory($menu, $parents); + $parents = array_reverse($parents); + $router_path = implode('/', $parents); + if(!empty($router_path)){ + $router_path .= '/'.$menu['router_path']; + }else{ + $router_path = $menu['router_path']; + } + return $router_path; + } + /** + * 递归查询模板集合 + * @param SysMenu $menu + * @param $parents + * @return void + */ + public function getParentDirectory(SysMenu $menu, &$parents){ + if(!$menu->isEmpty() && !empty($menu['parent_key'])){ + $parent_menu = $this->model->where([['menu_key', '=', $menu['parent_key']]])->findOrEmpty(); + if(!empty($parent_menu)){ + if(!empty($parent_menu['router_path'])) $parents[] = $parent_menu['router_path']; + $this->getParentDirectory($parent_menu, $parents); + } + } + + } } \ No newline at end of file diff --git a/niucloud/app/service/admin/sys/RoleService.php b/niucloud/app/service/admin/sys/RoleService.php index 974b33d8b..9ba8ab04a 100644 --- a/niucloud/app/service/admin/sys/RoleService.php +++ b/niucloud/app/service/admin/sys/RoleService.php @@ -55,7 +55,7 @@ class RoleService extends BaseAdminService * @return mixed */ public function getInfo(int $role_id){ - return $this->model->findOrEmpty($role_id)->append(['status_name'])->toArray(); + return $this->model->append(['status_name'])->findOrEmpty($role_id)->toArray(); } /** @@ -148,13 +148,6 @@ class RoleService extends BaseAdminService }, [MenuService::$cache_tag_name, self::$cache_tag_name.$this->site_id] ); -// return Cache::tag([MenuService::$cache_tag_name, self::$cache_tag_name.$this->site_id])->remember($cache_name, function() use($site_id) { -// $where = [ -// ['site_id', '=', $site_id] -// ]; -// return $this->model->where($where)->column('role_name', 'role_id'); -// }); - } /** @@ -163,20 +156,24 @@ class RoleService extends BaseAdminService * @return array */ public function getMenuIdsByRoleIds(int $site_id, array $role_ids){ - $menu_keys = (new SiteService())->getMenuIdsBySiteId($site_id, true, 1); - $allow_role_ids = array_intersect($role_ids, $menu_keys); + $menu_keys = (new SiteService())->getMenuIdsBySiteId($site_id, 1); + $allow_role_ids = array_merge($role_ids, $menu_keys); sort($allow_role_ids); $cache_name = 'user_role_'.$site_id.'_'.md5(implode('_', $allow_role_ids)); return cache_remember( $cache_name, - function() use($role_ids) { + function() use($role_ids, $menu_keys) { $rules = $this->model::where([['role_id', 'IN', $role_ids], ['status', '=', RoleStatusDict::ON]])->field('rules')->select()->toArray(); if(!empty($rules)){ $temp = []; foreach($rules as $k => $v){ $temp = array_merge($temp, $v['rules']); } - return array_unique($temp); + $temp = array_unique($temp); + if(empty($menu_keys)) return []; + if(empty($temp)) return []; + $allow_menu_ids = array_intersect($temp, $menu_keys); + return $allow_menu_ids; } return []; }, diff --git a/niucloud/app/service/admin/sys/SystemService.php b/niucloud/app/service/admin/sys/SystemService.php index 8edce31d6..306dfbf38 100644 --- a/niucloud/app/service/admin/sys/SystemService.php +++ b/niucloud/app/service/admin/sys/SystemService.php @@ -12,6 +12,7 @@ namespace app\service\admin\sys; use app\job\sys\CheckJob; +use app\model\site\Site; use core\base\BaseAdminService; use think\facade\Db; @@ -47,11 +48,16 @@ class SystemService extends BaseAdminService */ public function getUrl() { - $site_tag = $this->site_id == 1 ? '' : '/s' . $this->site_id; + $site = Site::find($this->site_id); + $site_tag = $site[ 'site_code' ]; + + $wap_domain = !empty(env("system.wap_domain")) ? preg_replace('#/$#', '', env("system.wap_domain")) : request()->domain(); + $web_domain = !empty(env("system.web_domain")) ? preg_replace('#/$#', '', env("system.web_domain")) : request()->domain(); + $data = [ 'wap_domain' => env("system.wap_domain"), - 'wap_url' => ( !empty(env("system.wap_domain")) ? env("system.wap_domain") : request()->domain() ) . "/wap" . $site_tag, - 'web_url' => ( !empty(env("system.web_domain")) ? env("system.web_domain") : request()->domain() ) . "/web" . $site_tag, + 'wap_url' => $wap_domain . "/wap/" . $site_tag, + 'web_url' => $web_domain . "/web/" . $site_tag, ]; return $data; } diff --git a/niucloud/app/service/admin/user/UserRoleService.php b/niucloud/app/service/admin/user/UserRoleService.php index 3a25837bf..8a908f657 100644 --- a/niucloud/app/service/admin/user/UserRoleService.php +++ b/niucloud/app/service/admin/user/UserRoleService.php @@ -102,14 +102,6 @@ class UserRoleService extends BaseAdminService }, [self::$role_cache_name, RoleService::$cache_tag_name.$this->site_id] ); -// return Cache::tag([self::$role_cache_name, RoleService::$cache_tag_name.$this->site_id])->remember($cache_name, function() use($uid, $site_id) { -// $user_role_model = new SysUserRole(); -// $where = array( -// ['uid', '=', $uid], -// ['site_id', '=', $site_id] -// ); -// return $user_role_model::where($where)->findOrEmpty()->toArray(); -// }); } /** @@ -143,32 +135,7 @@ class UserRoleService extends BaseAdminService }, [self::$role_cache_name, RoleService::$cache_tag_name.$this->site_id] ); -// return Cache::tag([self::$role_cache_name, RoleService::$cache_tag_name.$this->site_id])->remember($cache_name, function() use($role_ids, $site_id) { -// $where = array( -// ['role_id', 'in', $role_ids], -// ['site_id', '=', $site_id] -// ); -// return SysRole::where($where)->column('role_name'); -// }); } -// public function getFirstMenuByUser(int $site_id, int $uid){ -// $role_service = (new RoleService())->getMenuIdsByRoleIds(); -// $userrole = $this->getUserRole($site_id, $uid); -// $site_info = (new SiteService())->getSiteCache($site_id); -// if(empty($userrole)) throw new AuthException('SITE_USER_CAN_NOT_LOGIN_IN_ADMIN'); -// if($userrole->is_admin){ -// if($site_info->app_type == AppTypeDict::SITE){ -// -// }else if($site_info->app_type == AppTypeDict::ADMIN){ -// -// } -// }else{ -// $user_role_ids = $userrole->role_ids; -// $menu_keys = (new RoleService())->getMenuIdsByRoleIds($site_id, $user_role_ids); -// if(in_array('siteindex', $menu_keys)){ -// -// } -// } -// } + } \ No newline at end of file diff --git a/niucloud/app/service/admin/user/UserService.php b/niucloud/app/service/admin/user/UserService.php index c2cea50b4..600eb098e 100644 --- a/niucloud/app/service/admin/user/UserService.php +++ b/niucloud/app/service/admin/user/UserService.php @@ -54,11 +54,8 @@ class UserService extends BaseAdminService ['uid', '=', $uid], ); $field = 'uid, username, head_img, real_name, last_ip, last_time, create_time, login_count, status, delete_time, update_time'; - $user = $this->model->where($where)->field($field)->findOrEmpty(); - if($user->isEmpty()){ - return []; - } - return $user->append(['status_name'])->toArray(); + $user = $this->model->where($where)->field($field)->append(['status_name'])->findOrEmpty(); + return $user->toArray(); } /** @@ -248,7 +245,7 @@ class UserService extends BaseAdminService * @return SysUser|array|mixed|\think\Model */ public function getUserInfoByUsername(string $username){ - return $this->model->withSearch(['username'], ['username' => $username])->findOrEmpty(); + return $this->model->where([['username', '=',$username]])->findOrEmpty(); } } \ No newline at end of file diff --git a/niucloud/app/service/api/article/ArticleCategoryService.php b/niucloud/app/service/api/article/ArticleCategoryService.php index ee2531c22..827f30ed0 100644 --- a/niucloud/app/service/api/article/ArticleCategoryService.php +++ b/niucloud/app/service/api/article/ArticleCategoryService.php @@ -36,8 +36,7 @@ class ArticleCategoryService extends BaseApiService $field = 'category_id, site_id, name, sort, is_show, create_time, update_time'; $order = 'create_time desc'; $search_model = $this->model->where([['site_id', '=', $this->site_id]])->withSearch(['name'], $where)->field($field)->order($order); - $list = $this->pageQuery($search_model); - return $list; + return $this->pageQuery($search_model); } /** @@ -47,8 +46,6 @@ class ArticleCategoryService extends BaseApiService public function getInfo(int $id) { $field = 'category_id, site_id, name, sort, is_show, create_time, update_time'; - - $info = $this->model->field($field)->where([['category_id', '=', $id], ['site_id', '=', $this->site_id]])->findOrEmpty()->toArray(); - return $info; + return $this->model->field($field)->where([['category_id', '=', $id], ['site_id', '=', $this->site_id]])->findOrEmpty()->toArray(); } } \ No newline at end of file diff --git a/niucloud/app/service/api/article/ArticleService.php b/niucloud/app/service/api/article/ArticleService.php index c99438cba..0c7277caf 100644 --- a/niucloud/app/service/api/article/ArticleService.php +++ b/niucloud/app/service/api/article/ArticleService.php @@ -39,8 +39,7 @@ class ArticleService extends BaseApiService $field = 'id, category_id, site_id, title, intro, summary, image, author, content, visit, visit_virtual, is_show, sort, create_time, update_time'; $order = 'create_time desc'; $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ 'title', 'category_id'], $where)->with('articleCategory')->field($field)->order($order); - $list = $this->pageQuery($search_model); - return $list; + return $this->pageQuery($search_model); } /** @@ -55,8 +54,7 @@ class ArticleService extends BaseApiService $where[] = [ 'site_id', '=', $this->site_id ]; $field = 'id, category_id, site_id, title, intro, summary, image, author, content, visit, visit_virtual, is_show, sort, create_time, update_time'; $order = 'create_time desc'; - $list = $this->model->where([ [ 'site_id', '=', $this->site_id ] , ['is_show', '=', 1]])->withSearch([ 'title', 'category_id', 'ids' ], $where)->limit($limit)->with('articleCategory')->field($field)->order($order)->select()->toArray(); - return $list; + return $this->model->where([ [ 'site_id', '=', $this->site_id ] , ['is_show', '=', 1]])->withSearch([ 'title', 'category_id', 'ids' ], $where)->limit($limit)->with('articleCategory')->field($field)->order($order)->select()->toArray(); } /** @@ -67,8 +65,7 @@ class ArticleService extends BaseApiService { $field = 'id, category_id, site_id, title, intro, summary, image, author, content, visit, visit_virtual, is_show, sort, create_time, update_time'; - $info = $this->model->with('articleCategory')->field($field)->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); - return $info; + return $this->model->with('articleCategory')->field($field)->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); } } \ No newline at end of file diff --git a/niucloud/app/service/api/diy/DiyService.php b/niucloud/app/service/api/diy/DiyService.php index 129e8da53..0d7ac986f 100644 --- a/niucloud/app/service/api/diy/DiyService.php +++ b/niucloud/app/service/api/diy/DiyService.php @@ -46,7 +46,7 @@ class DiyService extends BaseApiService $condition[] = [ 'is_default', '=', 1 ]; } - $field = 'id,site_id,title,name,type,value,is_default,share,visit_count'; + $field = 'id,site_id,title,name,type,template, mode,value,is_default,share,visit_count'; $info = $this->model->field($field)->where($condition)->findOrEmpty()->toArray(); if (empty($info)) { @@ -57,8 +57,10 @@ class DiyService extends BaseApiService $info = [ 'site_id' => $this->site_id, 'title' => $page_data[ 'title' ], - 'name' => $page_data[ 'template' ], - 'type' => $page_data[ 'template' ], + 'name' => $page_data[ 'type' ], + 'type' => $page_data[ 'type' ], + 'template' => $page_data[ 'template' ], + 'mode' => $page_data[ 'mode' ], 'value' => json_encode($page_data[ 'data' ], JSON_UNESCAPED_UNICODE), 'is_default' => 1, 'share' => '', @@ -72,15 +74,17 @@ class DiyService extends BaseApiService /** * 获取默认页面数据 - * @param $template + * @param $type * @return array|mixed */ - public function getFirstPageData($template) + public function getFirstPageData($type) { - $pages = PagesDict::getPages($template); + $pages = PagesDict::getPages([ 'type' => $type ]); if (!empty($pages)) { + $template = array_key_first($pages); $page = array_shift($pages); $page[ 'template' ] = $template; + $page[ 'type' ] = $type; return $page; } return []; diff --git a/niucloud/app/service/api/login/AuthService.php b/niucloud/app/service/api/login/AuthService.php index dfcfb4e78..1e547d531 100644 --- a/niucloud/app/service/api/login/AuthService.php +++ b/niucloud/app/service/api/login/AuthService.php @@ -50,13 +50,14 @@ class AuthService extends BaseApiService * @return true */ public function checkSite(Request $request){ - $site_id = $request->apiSiteId();//todo 可以是依赖传值,也可以通过domain域名来获取site_id - $site_info = (new CoreSiteService())->getSiteCache($site_id); + $site_code = $request->apiSiteId();//todo 可以是依赖传值,也可以通过domain域名来获取site_id + $site_info = (new CoreSiteService())->getSiteInfoBySiteCode($site_code); if(empty($site_info)) throw new AuthException('SITE_NOT_EXIST'); if($site_info['status'] == SiteDict::CLOSE){ $rule = trim(strtolower($request->rule()->getRule())); if($rule != 'site') throw new AuthException('SITE_CLOSE_NOT_ALLOW'); } + $site_id = $site_info['site_id']; $request->siteId($site_id); return true; } diff --git a/niucloud/app/service/api/member/MemberService.php b/niucloud/app/service/api/member/MemberService.php index 1bc904dda..c28dd2593 100644 --- a/niucloud/app/service/api/member/MemberService.php +++ b/niucloud/app/service/api/member/MemberService.php @@ -67,7 +67,7 @@ class MemberService extends BaseApiService public function getInfo() { $field = 'member_id, site_id, username, member_no, mobile, register_channel, nickname, headimg, member_level, member_label, login_ip, login_type, login_time, create_time, last_visit_time, last_consum_time, sex, status, birthday, point, balance, growth, is_member, member_time, is_del, province_id, city_id, district_id, address, location, money, money_get, wx_openid, weapp_openid, commission, commission_get, commission_cash_outing'; - return $this->model->where([['member_id', '=', $this->member_id]])->field($field)->findOrEmpty()->append(['sex_name'])->toArray(); + return $this->model->where([['member_id', '=', $this->member_id]])->field($field)->append(['sex_name'])->findOrEmpty()->toArray(); } /** @@ -76,7 +76,7 @@ class MemberService extends BaseApiService public function center() { $field = 'member_id, site_id, username, member_no, mobile, register_channel, nickname, headimg, member_level, member_label, login_ip, login_type, login_time, create_time, last_visit_time, last_consum_time, sex, status, birthday, point, balance, growth, is_member, member_time, is_del, province_id, city_id, district_id, address, location, money, money_get, commission, commission_get, commission_cash_outing'; - return $this->model->where([['member_id', '=', $this->member_id]])->field($field)->findOrEmpty()->append(['sex_name'])->toArray(); + return $this->model->where([['member_id', '=', $this->member_id]])->field($field)->append(['sex_name'])->findOrEmpty()->toArray(); } /** diff --git a/niucloud/app/service/core/addon/CoreAddonBaseService.php b/niucloud/app/service/core/addon/CoreAddonBaseService.php index 67c84abec..0dad616b7 100644 --- a/niucloud/app/service/core/addon/CoreAddonBaseService.php +++ b/niucloud/app/service/core/addon/CoreAddonBaseService.php @@ -81,8 +81,7 @@ class CoreAddonBaseService extends BaseCoreService { if (file_exists($json_file_path)) { $content_json = @file_get_contents($json_file_path); - $content_array = json_decode($content_json, true); - return $content_array; + return json_decode($content_json, true); }else return []; } diff --git a/niucloud/app/service/core/addon/CoreAddonInstallService.php b/niucloud/app/service/core/addon/CoreAddonInstallService.php index 9bb3d4984..bfbc5730b 100644 --- a/niucloud/app/service/core/addon/CoreAddonInstallService.php +++ b/niucloud/app/service/core/addon/CoreAddonInstallService.php @@ -16,6 +16,7 @@ use app\job\sys\AddonInstall; use app\service\admin\sys\MenuService; use app\service\admin\sys\SystemService; use app\service\core\menu\CoreMenuService; +use app\service\core\schedule\CoreScheduleInstallService; use core\exception\AddonException; use core\exception\CommonException; use core\util\Terminal; @@ -72,6 +73,7 @@ class CoreAddonInstallService extends CoreAddonBaseService const SQL_INSTALLED = 'sql_installed'; const MENU_INSTALLED = 'menu_installed'; + const SCHEDULE_INSTALLED = 'schedule_installed'; const WAIT_DEPEND = 'wait_depend'; @@ -269,6 +271,13 @@ class CoreAddonInstallService extends CoreAddonBaseService 'desc' => '安装插件菜单', 'state' => AddonDict::INSTALL_UNEXECUTED ], + 'installSchedule' => [//安装计划任务 + 'addon' => $this->addon, + 'step' => 'installSchedule', + 'command' => "php think addon:install {$this->addon} --step installSchedule", + 'desc' => '安装插件计划任务', + 'state' => AddonDict::INSTALL_UNEXECUTED + ], 'installWap' => [ 'addon' => $this->addon, 'step' => 'installWap', @@ -552,7 +561,8 @@ class CoreAddonInstallService extends CoreAddonBaseService if (!$this->uninstallDir()) throw new AddonException(); // 卸载菜单 $this->uninstallMenu(); - + // 卸载计划任务 + $this->uninstallSchedule(); // 卸载wap $this->uninstallWap(); @@ -660,6 +670,9 @@ class CoreAddonInstallService extends CoreAddonBaseService // 编译 diy-group 自定义组件代码文件 $this->compileDiyComponentsCode($this->root_path . "uni-app" . DIRECTORY_SEPARATOR); + // 编译 fixed-group 固定模板组件代码文件 + $this->compileFixedComponentsCode($this->root_path . "uni-app" . DIRECTORY_SEPARATOR); + // 编译 pages.json 页面路由代码文件 $this->installPageCode($this->root_path . "uni-app" . DIRECTORY_SEPARATOR); @@ -674,6 +687,9 @@ class CoreAddonInstallService extends CoreAddonBaseService // 编译 diy-group 自定义组件代码文件 $this->compileDiyComponentsCode($this->root_path . "uni-app" . DIRECTORY_SEPARATOR); + // 编译 fixed-group 固定模板组件代码文件 + $this->compileFixedComponentsCode($this->root_path . "uni-app" . DIRECTORY_SEPARATOR); + // 编译 pages.json 页面路由代码文件 $this->uninstallPageCode($this->root_path . "uni-app" . DIRECTORY_SEPARATOR); } @@ -749,4 +765,26 @@ class CoreAddonInstallService extends CoreAddonBaseService return true; } + + /** + * 安装计划任务 + * @return true + */ + public function installSchedule() + { + ( new CoreScheduleInstallService())->installAddonSchedule($this->addon); + $this->state = self::SCHEDULE_INSTALLED; + return true; + } + + /** + * 卸载计划任务 + * @return true + */ + public function uninstallSchedule() + { + ( new CoreScheduleInstallService())->uninstallAddonSchedule($this->addon); + return true; + } + } \ No newline at end of file diff --git a/niucloud/app/service/core/addon/CoreAddonService.php b/niucloud/app/service/core/addon/CoreAddonService.php index e259280fe..1a1579231 100644 --- a/niucloud/app/service/core/addon/CoreAddonService.php +++ b/niucloud/app/service/core/addon/CoreAddonService.php @@ -83,8 +83,7 @@ class CoreAddonService extends CoreAddonBaseService public function getPage(array $where){ $field = 'id, title, key, desc, version, status, icon, create_time, install_time'; $search_model = $this->model->where([])->withSearch(['title'],$where)->field($field)->order('id desc'); - $data = $this->pageQuery($search_model); - return $data; + return $this->pageQuery($search_model); } /** diff --git a/niucloud/app/service/core/addon/WapTrait.php b/niucloud/app/service/core/addon/WapTrait.php index 31d825850..b6efe10eb 100644 --- a/niucloud/app/service/core/addon/WapTrait.php +++ b/niucloud/app/service/core/addon/WapTrait.php @@ -128,6 +128,66 @@ trait WapTrait return $res; } + /** + * 编译 fixed-group 固定模板组件代码文件 + * @param $compile_path + * @param $addon_name + * @return string + */ + public function compileFixedComponentsCode($compile_path) + { + $content = "\n"; + + $content .= "\n"; + + $content .= "\n"; + + $res = file_put_contents($compile_path . str_replace('/', DIRECTORY_SEPARATOR, 'components/fixed/group/index.vue'), $content); + return $res; + } + /** * 编译 pages.json 页面路由代码文件 * @param $compile_path diff --git a/niucloud/app/service/core/aliapp/CoreAliappConfigService.php b/niucloud/app/service/core/aliapp/CoreAliappConfigService.php index cd1674cf2..ff4b5c6f4 100644 --- a/niucloud/app/service/core/aliapp/CoreAliappConfigService.php +++ b/niucloud/app/service/core/aliapp/CoreAliappConfigService.php @@ -31,7 +31,7 @@ class CoreAliappConfigService extends BaseCoreService */ public function getAliappConfig(int $site_id){ $info = (new CoreConfigService())->getConfig($site_id, ConfigKeyDict::ALIAPP)['value'] ?? []; - $config = [ + return [ 'name' => $info['name'] ?? '', 'app_id' => $info['app_id'] ?? '', 'private_key' => $info['private_key'] ?? '', @@ -41,8 +41,6 @@ class CoreAliappConfigService extends BaseCoreService 'alipay_with_crt' => $info['alipay_with_crt'] ?? '', 'qrcode' => $info['qrcode'] ?? '' ]; - - return $config; } /** diff --git a/niucloud/app/service/core/member/CoreMemberAccountService.php b/niucloud/app/service/core/member/CoreMemberAccountService.php index 8258beed2..78aec8e02 100644 --- a/niucloud/app/service/core/member/CoreMemberAccountService.php +++ b/niucloud/app/service/core/member/CoreMemberAccountService.php @@ -34,7 +34,7 @@ class CoreMemberAccountService extends BaseCoreService [ 'member_id', '=', $member_id ], [ 'site_id', '=', $site_id ] ])->field($account_type .','.$account_type."_get" .', username, mobile, nickname')->lock(true)->find(); - if(empty($member_info)) throw new CommonException('MEMBER_NOT_EXIST');; + if(empty($member_info)) throw new CommonException('MEMBER_NOT_EXIST'); $account_new_data = round((float) $member_info[ $account_type ] + (float) $account_data, 2); if ($account_new_data < 0) { diff --git a/niucloud/app/service/core/member/CoreMemberConfigService.php b/niucloud/app/service/core/member/CoreMemberConfigService.php index 2624808ed..0d0be8215 100644 --- a/niucloud/app/service/core/member/CoreMemberConfigService.php +++ b/niucloud/app/service/core/member/CoreMemberConfigService.php @@ -32,14 +32,13 @@ class CoreMemberConfigService extends BaseCoreService */ public function getLoginConfig(int $site_id){ $info = (new CoreConfigService())->getConfig($site_id, 'LOGIN')['value'] ?? []; - $config = [ + return [ 'is_username' => $info['is_username'] ?? 1,//是否用户名密码登录 'is_mobile' => $info['is_mobile'] ?? 0,//是否手机验证码登录 'is_auth_register' => $info['is_auth_register'] ?? 1,//是否第三方自动注册 'is_bind_mobile' => $info['is_bind_mobile'] ?? 0,//是否强制绑定手机 'agreement_show' => $info['agreement_show'] ?? 0 // 政策协议是否展示 ]; - return $config; } /** @@ -66,11 +65,10 @@ class CoreMemberConfigService extends BaseCoreService */ public function getMemberConfig(int $site_id){ $info = (new CoreConfigService())->getConfig($site_id, 'MEMBER')['value'] ?? []; - $config = [ + return [ 'prefix' => $info['prefix'] ?? '',// 会员编码前缀 'length' => $info['length'] ?? 4, // 会员编码长度 ]; - return $config; } /** diff --git a/niucloud/app/service/core/member/CoreMemberLabelService.php b/niucloud/app/service/core/member/CoreMemberLabelService.php index e730f2615..ff8674f2e 100644 --- a/niucloud/app/service/core/member/CoreMemberLabelService.php +++ b/niucloud/app/service/core/member/CoreMemberLabelService.php @@ -48,9 +48,6 @@ class CoreMemberLabelService extends BaseCoreService }, self::$cache_tag_name.$site_id ); -// return Cache::tag(self::$cache_tag_name.$site_id)->remember($cache_name, function () use ($site_id, $label_ids) { -// return array_keys_search($this->getAll($site_id), $label_ids, 'label_id'); -// }); } /** @@ -72,11 +69,6 @@ class CoreMemberLabelService extends BaseCoreService }, self::$cache_tag_name.$site_id ); -// return Cache::tag(self::$cache_tag_name.$site_id)->remember($cache_name, function () use ($site_id) { -// $field = 'label_id, label_name'; -// return $this->model->where([['site_id', '=', $site_id]])->field($field)->select()->toArray(); -// -// }); } /** diff --git a/niucloud/app/service/core/notice/CoreNoticeLogService.php b/niucloud/app/service/core/notice/CoreNoticeLogService.php index 06cbb98b2..27f03bc85 100644 --- a/niucloud/app/service/core/notice/CoreNoticeLogService.php +++ b/niucloud/app/service/core/notice/CoreNoticeLogService.php @@ -49,6 +49,6 @@ class CoreNoticeLogService extends BaseCoreService public function getInfo(int $site_id, int $id){ $field = 'id, site_id, key, notice_type, uid, member_id, nickname, receiver, is_click, is_visit, visit_time, create_time, params, content'; - return $this->model->where([['site_id', '=', $site_id], ['id', '=', $id]])->field($field)->findOrEmpty()->append(['name', 'notice_type_name'])->toArray(); + return $this->model->where([['site_id', '=', $site_id], ['id', '=', $id]])->field($field)->append(['name', 'notice_type_name'])->findOrEmpty()->toArray(); } } \ No newline at end of file diff --git a/niucloud/app/service/core/notice/CoreNoticeSmsLogService.php b/niucloud/app/service/core/notice/CoreNoticeSmsLogService.php index c3a7bc399..f80802a3b 100644 --- a/niucloud/app/service/core/notice/CoreNoticeSmsLogService.php +++ b/niucloud/app/service/core/notice/CoreNoticeSmsLogService.php @@ -35,25 +35,21 @@ class CoreNoticeSmsLogService extends BaseCoreService */ public function getPage(int $site_id, array $where = []) { - - $field = 'mobile, sms_type, key, content, data, status, result, create_time, send_time, update_time'; + $field = 'id,mobile,sms_type,key,template_id,content,params,status,result,create_time,send_time,update_time'; $order = 'create_time desc'; - $search_model = $this->model->where([['site_id', '=', $site_id]])->withSearch(['name'], $where)->field($field)->order($order)->append(['name', 'app_type_name', 'status_name']); - $list = $this->pageQuery($search_model); - return $list; + $search_model = $this->model->where([['site_id', '=', $site_id]])->withSearch(['name', 'key', 'mobile', 'sms_type'], $where)->field($field)->order($order)->append(['name', 'sms_type_name', 'status_name']); + return $this->pageQuery($search_model); } - /** * 获取短信发送记录信息 * @param int $id */ public function getInfo(int $site_id, int $id) { - $field = 'mobile, sms_type, key, content, data, status, result, create_time, send_time, update_time'; - $info = $this->model->field($field)->where([['id', '=', $id], ['site_id', '=', $site_id]])->findOrEmpty()->append(['name', 'app_type_name', 'status_name'])->toArray(); - return $info; + $field = 'id, mobile,sms_type,key,template_id,content,params,status,result,create_time,send_time,update_time'; + return $this->model->field($field)->where([['id', '=', $id], ['site_id', '=', $site_id]])->append(['name', 'sms_type_name', 'status_name'])->findOrEmpty()->toArray(); } /** @@ -88,8 +84,7 @@ class CoreNoticeSmsLogService extends BaseCoreService */ public function del(int $site_id, int $id) { - $res = $this->model->where([['id', '=', $id], ['site_id', '=', $site_id]])->delete(); - return $res; + return $this->model->where([['id', '=', $id], ['site_id', '=', $site_id]])->delete(); } diff --git a/niucloud/app/service/core/pay/CorePayEventService.php b/niucloud/app/service/core/pay/CorePayEventService.php index 2f7d8b261..e00ebb9ef 100644 --- a/niucloud/app/service/core/pay/CorePayEventService.php +++ b/niucloud/app/service/core/pay/CorePayEventService.php @@ -91,7 +91,8 @@ class CorePayEventService extends BaseCoreService 'refund_url' => $refund_url, 'quit_url' => $quit_url, 'buyer_id' => $buyer_id, - 'openid' => $openid + 'openid' => $openid, + 'site_id' => $this->site_id ); switch ($this->type) { case PayDict::WECHATPAY: @@ -116,7 +117,7 @@ class CorePayEventService extends BaseCoreService $pay_fun = 'app'; break; } - + if (empty($pay_fun)) throw new PayException('PAYMENT_METHOD_NOT_SCENE'); break; case PayDict::ALIPAY: switch ($this->channel) { @@ -133,8 +134,12 @@ class CorePayEventService extends BaseCoreService $pay_fun = 'wap'; break; } + if (empty($pay_fun)) throw new PayException('PAYMENT_METHOD_NOT_SCENE'); + break; } - if (empty($pay_fun)) throw new PayException('PAYMENT_METHOD_NOT_SCENE'); + + if (empty($pay_fun)) $pay_fun = 'pay'; + return $this->app('pay')->$pay_fun($params); } @@ -158,7 +163,7 @@ class CorePayEventService extends BaseCoreService $money = $money * 100; break; case PayDict::ALIPAY: - + break; } return $this->app('transfer')->transfer([ 'transfer_no' => $transfer_no, diff --git a/niucloud/app/service/core/pay/CorePayService.php b/niucloud/app/service/core/pay/CorePayService.php index 418bb13e0..1f4b72814 100644 --- a/niucloud/app/service/core/pay/CorePayService.php +++ b/niucloud/app/service/core/pay/CorePayService.php @@ -45,7 +45,7 @@ class CorePayService extends BaseCoreService * @return string|null */ public function create($site_id, string $main_type, int $main_id, float $money, string $trade_type, string $body){ - $out_trade_no = create_no('pay', $main_id); + $out_trade_no = create_no(); $data = array( 'site_id' => $site_id, 'money' => $money, @@ -262,7 +262,8 @@ class CorePayService extends BaseCoreService return (new CoreRefundService())->refundNotify($site_id, $out_trade_no, $type, $params); break; } - + //找不到对应的业务 + return true; } catch (PayException $e) { return false; } @@ -292,9 +293,8 @@ class CorePayService extends BaseCoreService if(!$money){ $money = $pay->money; } - $new_out_trade_no = $this->create($site_id, $pay->main_type, $pay->main_id, $money, $pay->trade_type, $pay->body); //todo 需要考虑是业务调用重置支付,还是支付重置反馈业务 - return $new_out_trade_no; + return $this->create($site_id, $pay->main_type, $pay->main_id, $money, $pay->trade_type, $pay->body); } /** diff --git a/niucloud/app/service/core/pay/CoreRefundService.php b/niucloud/app/service/core/pay/CoreRefundService.php index ffb54ac08..b93d631c2 100644 --- a/niucloud/app/service/core/pay/CoreRefundService.php +++ b/niucloud/app/service/core/pay/CoreRefundService.php @@ -45,7 +45,7 @@ class CoreRefundService extends BaseCoreService if($pay->isEmpty()) throw new PayException();//单据不存在 //校验当前数据是否存在 //存在就修改,不存在就创建 - $refund_no = create_no('refund', $pay->id); + $refund_no = create_no(); $data = array( 'site_id' => $site_id, 'money' => $money, @@ -217,7 +217,7 @@ class CoreRefundService extends BaseCoreService ['site_id', '=', $site_id], ['refund_no', '=', $refund_no] ])->update([ - 'status' => RefundDict::SUCCESS, + 'status' => RefundDict::FAIL, 'fail_reason' => $data['fail_reason'] ]); return true; diff --git a/niucloud/app/service/core/pay/CoreTransferService.php b/niucloud/app/service/core/pay/CoreTransferService.php index 4b188ba8e..e52bc8a62 100644 --- a/niucloud/app/service/core/pay/CoreTransferService.php +++ b/niucloud/app/service/core/pay/CoreTransferService.php @@ -44,7 +44,7 @@ class CoreTransferService extends BaseCoreService * @return string|null */ public function create(int $site_id, string $main_type, int $main_id, float $money, string $trade_type, string $remark){ - $transfer_no = create_no('pay', $main_id); + $transfer_no = create_no(); $transfer_data = array( 'site_id' => $site_id, 'money' => $money, diff --git a/niucloud/app/service/core/paytype/CoreBalanceService.php b/niucloud/app/service/core/paytype/CoreBalanceService.php index d5698a384..97c434835 100644 --- a/niucloud/app/service/core/paytype/CoreBalanceService.php +++ b/niucloud/app/service/core/paytype/CoreBalanceService.php @@ -42,11 +42,15 @@ class CoreBalanceService extends BaseCoreService // if(empty($password)){ // // } - $site_id = $params['site_id']; - $main_id = $params['main_id']; - $main_type = $params['main_type']; - $money = $params['money']; $out_trade_no = $params['out_trade_no'];//交易流水号 + $site_id = $params['site_id']; + + $pay = (new CorePayService())->findPayInfoByOutTradeNo($site_id, $out_trade_no); + + $main_id = $pay['main_id']; + $main_type = $pay['main_type']; + $money = $params['money']; + switch($main_type){ case 'member': diff --git a/niucloud/app/service/core/schedule/CoreCronService.php b/niucloud/app/service/core/schedule/CoreCronService.php deleted file mode 100644 index acdf91505..000000000 --- a/niucloud/app/service/core/schedule/CoreCronService.php +++ /dev/null @@ -1,203 +0,0 @@ -model = new SysCronTask(); - } - - public function add(int $site_id, array $data){ - $data['site_id'] = $site_id; - return $this->model->create($data); - } - - public function find(int $site_id, int $id){ - $where = array( - ['site_id', '=', $site_id], - ['id', '=', $id] - ); - $cron = $this->model->where($where)->findOrEmpty(); - return $cron; - } - - /** - * 更新 - * @param $site_id - * @param $id - * @param $data - * @return SysCronTask - */ - public function edit(int $site_id, int $id, array $data){ - $where = array( - ['site_id', '=', $site_id], - ['id', '=', $id] - ); - return $this->model->where($where)->update($data); - } - - public function del(int $site_id, int $id){ - - } - - /** - * 发布计划任务 - * @return true - * @throws \think\db\exception\DataNotFoundException - * @throws \think\db\exception\DbException - * @throws \think\db\exception\ModelNotFoundException - */ - public static function execute(){ - $now = time(); -// $between = $now + 60; - //查询未执行的任务 - $where = array( - ['status', '=', 1], -// ['next_time', '<', $between] - ); - $list = self::$model->where($where)->select()->toArray(); - if(!empty($list)){ -// $job_handler_classname = 'app\job\sys\Cronexecute'; - foreach($list as $k => $v){ - $next_time = $v['next_time']; - if($next_time < $now){ - -// create_job($job_handler_classname, $v ?? []); - }else{ -// create_job($job_handler_classname, $v ?? [], $next_time - time()); - } - } - } - return true; - } - - /** - * 任务后续操作 根据任务的周期来计算下一次的任务 - * @param $data - * @return void - */ - public function after(array $data){ - $type = $data['cron']; - $id = $data['id']; - $site_id = $data['site_id']; - $now = time(); - $next_time = $data['next_time']; - $update_data = array( - 'last_time' => $next_time, - 'update_time' => $now - ); - - //查询任务 - if($type == 'crond'){ - - $crond_length = $data['crond_length']; - //计算下次执行的时间 - switch ( $data[ 'crond_type' ] ) { - case 'minute'://分 - - $execute_time = $next_time + $crond_length * 60; - break; - case 1://天 - - $execute_time = strtotime('+' . $crond_length . 'day', $next_time); - break; - case 2://周 - - $execute_time = strtotime('+' . $crond_length . 'week', $next_time); - break; - case 3://月 - - $execute_time = strtotime('+' . $crond_length . 'month', $next_time); - break; - } - $update_data['next_time'] = $execute_time; - }else{ - $update_data['delete_time'] = $now; - } - $this->edit($site_id, $id, $update_data); - } - - - /** - * 消息队列 - * @param $data - * @return false|float|int - */ - public function getNextTime($data){ - $crond_length = $data['crond_length']; - $next_time = $data['next_time']; - $now = time(); - if($now > $next_time){ - $next_time = $now; - } - //计算下次执行的时间 - switch ( $data[ 'crond_type' ] ) { - case 'minute'://分 - $execute_time = $next_time + $crond_length * 60; - break; - case 1://天 - - $execute_time = strtotime('+' . $crond_length . 'day', $next_time); - break; - case 2://周 - - $execute_time = strtotime('+' . $crond_length . 'week', $next_time); - break; - case 3://月 - - $execute_time = strtotime('+' . $crond_length . 'month', $next_time); - break; - } - return $execute_time; - } - /** - * 获取自动任务列表 - * @param array $where - * @return mixed - */ - public function getPage(int $site_id, array $where) - { - $field = 'id, title, count, type, crond_type, crond_length, data, status_desc, last_time, next_time, create_time, delete_time, update_time, sort'; - $order = 'last_time desc'; - $search_model = $this->model->where('site_id', $site_id)->withSearch(['last_time', 'type', 'title'], $where)->field($field)->order($order)->append(['type_name', 'crond_type_name']); - $list = $this->pageQuery($search_model); - return $list; - } - - /** - * 任务详情 - * @param int $id - * @return array - */ - public function getInfo(int $site_id, int $id){ - $where = array( - ['id', '=', $id], - ['site_id', '=', $site_id] - ); - $field = 'title, count, type, crond_type, crond_length, data, status_desc, last_time, next_time, create_time, delete_time, update_time, sort'; - $info = $this->model->where($where)->field($field)->findOrEmpty()->append(['type_name', 'crond_type_name'])->toArray(); - return $info; - } -} \ No newline at end of file diff --git a/niucloud/app/service/core/schedule/CoreScheduleInstallService.php b/niucloud/app/service/core/schedule/CoreScheduleInstallService.php new file mode 100644 index 000000000..a4a73dfff --- /dev/null +++ b/niucloud/app/service/core/schedule/CoreScheduleInstallService.php @@ -0,0 +1,85 @@ +model = new SysSchedule(); + + } + + /** + * 安装系统内置计划任务 + * @return true + */ + public function installSystemSchedule(){ + //安装系统计划任务 + $list = (new CoreScheduleService())->getTemplateList('system'); + $this->install($list); + return true; + } + + /** + * 安装插件计划任务 + * @param string $addon + * @return true + */ + public function installAddonSchedule(string $addon){ + //安装系统计划任务 + $list = (new CoreScheduleService())->getTemplateList($addon); + $this->install($list, $addon); + return true; + } + + /** + * 卸载插件的计划任务 + * @param string $addon + * @return true + */ + public function uninstallAddonSchedule(string $addon){ + //安装系统计划任务 + $this->model->where([['addon', '=', $addon]])->delete(); + return true; + } + /** + * 安装计划任务 + * @param array $data + * @param string $addon + * @return true + */ + public function install(array $data, string $addon = ''){ + $schedule_list = []; + foreach($data as $v){ + $schedule_list[] = array( + 'key' => $v['key'], + 'status' => ScheduleDict::ON, + 'time' => $v['time'], + 'addon' => $addon + ); + } + $this->model->replace()->insertAll($schedule_list); + return true; + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/schedule/CoreScheduleService.php b/niucloud/app/service/core/schedule/CoreScheduleService.php index 7ae3512fc..10fffba50 100644 --- a/niucloud/app/service/core/schedule/CoreScheduleService.php +++ b/niucloud/app/service/core/schedule/CoreScheduleService.php @@ -11,23 +11,25 @@ namespace app\service\core\schedule; -use app\model\sys\SysCronTask; +use app\dict\sys\DateDict; +use app\model\sys\SysSchedule; use core\base\BaseCoreService; use core\dict\DictLoader; +use core\exception\CommonException; +use think\Container; +use think\facade\Log; +use think\helper\Str; /** * 计划任务服务层 - * Class CoreCronService - * @package app\service\core\cron */ class CoreScheduleService extends BaseCoreService { - CONST CROND_LENGTH = 60; public function __construct() { parent::__construct(); - $this->model = new SysCronTask(); + $this->model = new SysSchedule(); } @@ -36,12 +38,169 @@ class CoreScheduleService extends BaseCoreService * @param array $where * @return mixed */ - public function getList() + public function getList(array $where = []) { - $addon_load = new DictLoader('Schedule'); - $list = $addon_load->load([]); + $field = 'id, addon, key, status, time, count, last_time, next_time, create_time, delete_time, update_time'; + $list = $this->model->withSearch(['key','status'],$where)->field($field)->order('id desc')->append(['status_name'])->select()->toArray(); + $template_list = array_column($this->getTemplateList(), null, 'key'); + foreach($list as &$item){ + $item = array_merge($template_list[$item['key']], $item); + } return $list; } + /** + * 任务分页列表 + * @param array $where + * @return mixed + */ + public function getPage(array $where = []) + { + $field = 'id, addon, key, status, time, count, last_time, next_time, create_time, delete_time, update_time'; + $search_model = $this->model->withSearch(['key','status'],$where)->field($field)->order('id desc')->append(['status_name']); + $template_list = array_column($this->getTemplateList(), null, 'key'); + return $this->pageQuery($search_model, function ($item, $key) use($template_list){ + $item['crontab_content'] = $this->getCrontabContent($item['time']); + foreach($template_list[$item['key']] as $k => $v){ + if($k != 'time'){ + $item->$k = $v; + } + } + }); + } + /** + * 获取信息 + * @param int $id + */ + public function getInfo(int $id) + { + $field = 'id, addon, key, status, time, count, last_time, next_time, create_time, delete_time, update_time'; + $info = $this->model->where([['id', '=', $id]])->field($field)->append(['status_name'])->findOrEmpty()->toArray(); + if(!empty($info)){ + $template_list = array_column($this->getTemplateList(), null, 'key'); + $info = array_merge($template_list[$info['key']], $info); + } + return $info; + } + + /** + * 计划任务模板 + * @return array|null + */ + public function getTemplateList(string $addon = ''){ + $addon_load = new DictLoader('Schedule'); + return $addon_load->load([ + 'addon' => $addon + ]); + } + /** + * 计划任务的时间间隔 + * @param $data + * @return string + */ + protected function getCrontabContent($data): string + { + $content = ''; + switch ($data['type']) { + case 'min':// 每隔几分 + $content = '每隔'.$data['min'].'分钟执行一次'; + break; + case 'hour':// 每隔几时第几分钟执行 + $content = '每隔'.$data['hour'].'小时的'.$data['min'].'分执行一次'; + break; + case 'day':// 每隔几日几时几分几秒执行 + $content = '每隔'.$data['day'].'天的'.$data['hour'].'时'.$data['min'].'分执行一次'; + break; + case 'week':// 每周一次,周几具体时间执行 + $week_day = DateDict::getWeek()[$data['week']] ?? ''; + $content = '每周的'.$week_day.'的'.$data['hour'].'时'.$data['min'].'分执行一次'; + break; + case 'month':// 每月一次,某日具体时间执行 + $content = '每月的'.$data['day'].'号的'.$data['hour'].'时'.$data['min'].'分执行一次'; + break; + } + return $content; + } + + /** + * 查询对象实例 + * @param int $id + * @return SysSchedule|array|mixed|\think\Model + */ + public function find(int $id){ + return $this->model->findOrEmpty($id); + } + + /** + * 设置状态(启用和关闭) + * @param int $id + * @param $status + * @return true + */ + public function modifyStatus(int $id, $status){ + $schedule = $this->find($id); + if($schedule->isEmpty()) throw new CommonException(); + $schedule->save([ + 'status' => $status + ]); + return true; + } + + + /** + * 添加任务 + * @param array $data + */ + public function add(array $data) + { + $data[ 'create_time' ] = time(); + $this->model->create($data); + return true; + + } + + /** + * 任务编辑 + * @param int $id + * @param array $data + */ + public function edit(int $id, array $data) + { + $data[ 'update_time' ] = time(); + $this->model->where([ [ 'id', '=', $id ]])->update($data); + return true; + } + + /** + * 删除任务 + * @param int $id + */ + public function del(int $id) + { + return $this->model->where([ [ 'id', '=', $id ]])->delete(); + } + + /** + * 执行任务 + * @param array $schedule + * @return true + */ + public function execute(array $schedule){ + $class = $schedule['class'] ?: 'app\\job\\schedule\\'.Str::studly($schedule['key']); + $function = $schedule['function'] ?: 'doJob'; + try { + $result = Container::getInstance()->invoke([$class, $function ?? 'doJob']); + }catch(\Throwable $e){ + Log::write('计划任务:'.$schedule['name'].'发生错误, 错误原因:'.$e->getMessage()); + } + $schedule = $this->find($schedule['id']); + if(!$schedule->isEmpty()){ + $schedule->save([ + 'last_time' => time(), + 'count' => $schedule['count'] + 1, + ]); + } + return true; + } } \ No newline at end of file diff --git a/niucloud/app/service/core/site/CoreSiteAccountService.php b/niucloud/app/service/core/site/CoreSiteAccountService.php new file mode 100644 index 000000000..aa1b2bb78 --- /dev/null +++ b/niucloud/app/service/core/site/CoreSiteAccountService.php @@ -0,0 +1,86 @@ +where([['out_trade_no', '=', $pay_info['out_trade_no']], ['site_id', '=', $pay_info['site_id']]])->findOrEmpty()->toArray(); + $data = [ + 'site_id' => $pay_info['site_id'], + 'type' => 'pay', + 'money' => $pay_info['money'], + 'trade_no' => $pay_info['out_trade_no'], + ]; + $res = (new SiteAccountLog())->create($data); + return $res->id; + } + + /** + * 添加退款账单记录 + * @param string $refund_no + * @return mixed + */ + public function addRefundLog(int $site_id, string $refund_no) + { + $refund_info = (new Refund())->where([['refund_no', '=', $refund_no], ['site_id', '=', $site_id]])->findOrEmpty()->toArray(); + $data = [ + 'site_id' => $refund_info['site_id'], + 'type' => 'refund', + 'money' => $refund_info['money'] *(-1), + 'trade_no' => $refund_info['refund_no'], + ]; + $res = (new SiteAccountLog())->create($data); + return $res->id; + } + + /** + * 添加转账账单记录 + * @param string $refund_no + * @return mixed + */ + public function addTransferLog(int $site_id, string $transfer_no) + { + $transfer_info = (new Transfer())->where([['transfer_no', '=', $transfer_no], ['site_id', '=', $site_id]])->findOrEmpty()->toArray(); + $data = [ + 'site_id' => $transfer_info['site_id'], + 'type' => 'transfer', + 'money' => $transfer_info['money'] *(-1), + 'trade_no' => $transfer_info['transfer_no'], + ]; + $res = (new SiteAccountLog())->create($data); + return $res->id; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/site/CoreSiteService.php b/niucloud/app/service/core/site/CoreSiteService.php index 3f09e4ec3..c0d88a185 100644 --- a/niucloud/app/service/core/site/CoreSiteService.php +++ b/niucloud/app/service/core/site/CoreSiteService.php @@ -24,66 +24,69 @@ use core\exception\CommonException; class CoreSiteService extends BaseCoreService { public static $cache_tag_name = 'site_cash'; + public function __construct() { parent::__construct(); $this->model = new Site(); } - - /** * 获取授权当前站点信息(用做缓存) - * @return mixed + * @param $site_id + * @return mixed|string */ - public function getSiteCache(int $site_id){ + public function getSiteCache($site_id) + { $cache_name = 'site_info_cache'; return cache_remember( - $cache_name.$site_id, - function () use ($site_id) { + $cache_name . $site_id, + function() use ($site_id) { $where = [ - ['site_id', '=', $site_id], + [ 'site_id', '=', $site_id ], ]; - $site = $this->model->where($where)->field('app_type,site_name,logo,front_end_name,front_end_logo,group_id, status, expire_time')->findOrEmpty(); - if(!$site->isEmpty()){ - $site->append(['status_name']); - } + $site = $this->model->where($where)->field('site_id, app_type,site_name,logo,front_end_name,front_end_logo,group_id, status, expire_time, site_code')->append([ 'status_name' ])->findOrEmpty(); return $site->toArray(); }, - self::$cache_tag_name.$site_id + self::$cache_tag_name . $site_id ); } /** * 模型实例 - * @param int $site_id + * @param $site_id * @return Site|array|mixed|\think\Model */ - public function find(int $site_id){ + public function find($site_id) + { return $this->model->findOrEmpty($site_id); } + /** * 获取过期的站点 * @return void */ - public function getExpireSiteList(){ + public function getExpireSiteList() + { return $this->model->where([ - ['status', '<>', SiteDict::EXPIRE], - ['expire_time', 'between', [1,time()]], + [ 'status', '<>', SiteDict::EXPIRE ], + [ 'expire_time', 'between', [ 1, time() ] ], ])->field('site_id,status,site_name')->select()->toArray(); } + /** * 站点到期(计划任务专用,切勿调用) - * @param int $site_id - * @return void + * @param $site_id + * @return bool */ - public function expire(int $site_id){ + public function expire(int $site_id) + { $site = $this->find($site_id); - if($site->isEmpty())throw new CommonException('SITE_NOT_EXIST'); - if($site->status == SiteDict::EXPIRE) throw new CommonException('SITE_EXPIRE'); - $this->model->where([[ + if ($site->isEmpty()) throw new CommonException('SITE_NOT_EXIST'); + if ($site->status == SiteDict::EXPIRE) throw new CommonException('SITE_EXPIRE'); + $this->model->where([ [ 'site_id', '=', $site_id - ]])->update( + ] ])->update( [ 'status' => SiteDict::EXPIRE, ] @@ -91,4 +94,26 @@ class CoreSiteService extends BaseCoreService return true; } + /** + * 通过站点编号获取站点信息 + * @param $site_code + * @return mixed|string + */ + public function getSiteInfoBySiteCode($site_code){ + $cache_name = 'site_id_cache'; + return cache_remember( + $cache_name . $site_code, + function() use ($site_code) { + $site_info = $this->model->where([[ + 'site_code', '=', $site_code + ]])->findOrEmpty(); + if(!$site_info->isEmpty()){ + return $site_info->toArray(); + } + return []; + } + ); + + } + } \ No newline at end of file diff --git a/niucloud/app/service/core/sys/CoreAgreementService.php b/niucloud/app/service/core/sys/CoreAgreementService.php index 7a440fbd2..64ed16c21 100644 --- a/niucloud/app/service/core/sys/CoreAgreementService.php +++ b/niucloud/app/service/core/sys/CoreAgreementService.php @@ -65,8 +65,7 @@ class CoreAgreementService extends BaseCoreService ['agreement_key', '=', $key], ['site_id', '=', $site_id] ); - $agreement = $this->model->where($where)->findOrEmpty(); - return $agreement; + return $this->model->where($where)->findOrEmpty(); } /** * 设置协议 diff --git a/niucloud/app/service/core/sys/CoreAreaService.php b/niucloud/app/service/core/sys/CoreAreaService.php index 4dc5f75da..b08b73833 100644 --- a/niucloud/app/service/core/sys/CoreAreaService.php +++ b/niucloud/app/service/core/sys/CoreAreaService.php @@ -41,8 +41,7 @@ class CoreAreaService extends BaseCoreService */ public function getInfo($id) { - $info = $this->model->where('id', $id)->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->find()->toArray(); - return $info; + return $this->model->where('id', $id)->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->find()->toArray(); } /** @@ -55,8 +54,7 @@ class CoreAreaService extends BaseCoreService */ public function getListByPid(int $pid) { - $list = $this->model->where('pid', $pid)->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); - return $list; + return $this->model->where('pid', $pid)->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); } /** @@ -70,7 +68,21 @@ class CoreAreaService extends BaseCoreService public function getTree(int $level = 3) { $list = $this->model->where('level', '<=', $level)->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); - $tree = list_to_tree($list, 'id', 'pid', 'child', 0); - return $tree; + return list_to_tree($list, 'id', 'pid', 'child', 0); + } + /** + * 通过对应省市区县,地址,返回完整地址 + * @param $province_id + * @param $city_id + * @param $district_id + * @param $address + * @param string $tag 分隔符 + */ + public function getFullAddress($province_id, $city_id, $district_id, $address, $tag = ' ') + { + $province_name = ($this->model->where([['id', '=', $province_id]])->field("name")->findOrEmpty()->toArray())['name'] ?? ''; + $city_name = ($this->model->where([['id', '=', $city_id]])->field("name")->findOrEmpty()->toArray())['name'] ?? ''; + $district_name = ($this->model->where([['id', '=', $district_id]])->field("name")->findOrEmpty()->toArray())['name'] ?? ''; + return $province_name.$tag.$city_name.$tag. $district_name. $tag. $address; } } \ No newline at end of file diff --git a/niucloud/app/service/core/sys/CoreAttachmentService.php b/niucloud/app/service/core/sys/CoreAttachmentService.php index 47279aee8..f7fc2e69b 100644 --- a/niucloud/app/service/core/sys/CoreAttachmentService.php +++ b/niucloud/app/service/core/sys/CoreAttachmentService.php @@ -90,8 +90,7 @@ class CoreAttachmentService extends BaseCoreService ['site_id', '=', $site_id], ['att_id', '=', $att_id] ); - $res = $this->model->update($data, $where); - return $res; + return $this->model->update($data, $where); } /** @@ -102,8 +101,7 @@ class CoreAttachmentService extends BaseCoreService public function del(int $site_id, int $att_id){ //查询是否有下级菜单或按钮 $menu = $this->find($site_id, $att_id); - $res = $menu->delete(); - return $res; + return $menu->delete(); } diff --git a/niucloud/app/service/core/sys/CoreConfigService.php b/niucloud/app/service/core/sys/CoreConfigService.php index 8d27ebbc9..c831b37bb 100644 --- a/niucloud/app/service/core/sys/CoreConfigService.php +++ b/niucloud/app/service/core/sys/CoreConfigService.php @@ -38,8 +38,7 @@ class CoreConfigService extends BaseCoreService ['config_key', '=', $key], ['site_id', '=', $site_id] ); - $info = $this->model->where($where)->field('id,site_id,config_key,value,status,create_time,update_time')->findOrEmpty()->toArray(); - return $info; + return $this->model->where($where)->field('id,site_id,config_key,value,status,create_time,update_time')->findOrEmpty()->toArray(); } /** @@ -86,7 +85,6 @@ class CoreConfigService extends BaseCoreService $data = array( 'status' => $status, ); - $res = $this->model->where($where)->save($data); - return $res; + return $this->model->where($where)->save($data); } } \ No newline at end of file diff --git a/niucloud/app/service/core/sys/CoreSysConfigService.php b/niucloud/app/service/core/sys/CoreSysConfigService.php index e1c2dc93e..220fcc9d5 100644 --- a/niucloud/app/service/core/sys/CoreSysConfigService.php +++ b/niucloud/app/service/core/sys/CoreSysConfigService.php @@ -11,6 +11,7 @@ namespace app\service\core\sys; +use app\model\site\Site; use core\base\BaseCoreService; /** @@ -32,17 +33,15 @@ class CoreSysConfigService extends BaseCoreService * @return array */ public function getSceneDomain(int $site_id){ - //todo 如果是默认站点 - $domain = env('system.wap_domain') ?: $this->request->domain(); - $wap_domain = $domain.'/wap'; - $web_domain = $domain.'/web'; - if($site_id != $this->request->defaultSiteId()){ - $wap_domain = $wap_domain.'/'.$site_id.'/' ; - $web_domain = $web_domain.'/'.$site_id.'/' ; - } - return [ - 'wap_domain' => $wap_domain, - 'web_domain' => $web_domain, + $site = Site::find($site_id); + $site_tag = $site[ 'site_code' ]; + + $wap_domain = !empty(env("system.wap_domain")) ? preg_replace('#/$#', '', env("system.wap_domain")) : request()->domain(); + $web_domain = !empty(env("system.web_domain")) ? preg_replace('#/$#', '', env("system.web_domain")) : request()->domain(); + + return [ + 'wap_url' => $wap_domain . "/wap/" . $site_tag . "/", + 'web_url' => $web_domain . "/web/" . $site_tag . "/" ]; } diff --git a/niucloud/app/service/core/upload/CoreImageService.php b/niucloud/app/service/core/upload/CoreImageService.php index 35e8c0ef2..fb618eab4 100644 --- a/niucloud/app/service/core/upload/CoreImageService.php +++ b/niucloud/app/service/core/upload/CoreImageService.php @@ -51,8 +51,7 @@ class CoreImageService extends CoreFileService } //如果是网络图片,可以将网络图片拉取到本地 try { - $thumb_list = $this->upload_driver->thumb($file_path, $thumb_type); - return $thumb_list; + return $this->upload_driver->thumb($file_path, $thumb_type); } catch (\Throwable $e) { throw new UploadFileException($e->getMessage()); } diff --git a/niucloud/app/service/core/weapp/CoreWeappConfigService.php b/niucloud/app/service/core/weapp/CoreWeappConfigService.php index c7b47d05a..4c4c63d6f 100644 --- a/niucloud/app/service/core/weapp/CoreWeappConfigService.php +++ b/niucloud/app/service/core/weapp/CoreWeappConfigService.php @@ -31,7 +31,7 @@ class CoreWeappConfigService extends BaseCoreService */ public function getWeappConfig(int $site_id){ $info = (new CoreConfigService())->getConfig($site_id, ConfigKeyDict::WEAPP)['value'] ?? []; - $config = [ + return [ 'weapp_name' => $info['weapp_name'] ?? '',//小程序名称 'weapp_original' => $info['weapp_original'] ?? '',//原始ID 'app_id' => $info['app_id'] ?? '',//AppID @@ -41,7 +41,6 @@ class CoreWeappConfigService extends BaseCoreService 'encoding_aes_key' => $info['encoding_aes_key'] ?? '', 'encryption_type' => $info['encryption_type'] ?? 'not_encrypt',//加解密模式 not_encrypt 明文 compatible 兼容 safe 安全 ]; - return $config; } /** diff --git a/niucloud/app/service/core/weapp/CoreWeappService.php b/niucloud/app/service/core/weapp/CoreWeappService.php index 0a3ef3796..cfc890135 100644 --- a/niucloud/app/service/core/weapp/CoreWeappService.php +++ b/niucloud/app/service/core/weapp/CoreWeappService.php @@ -79,8 +79,7 @@ class CoreWeappService extends BaseCoreService // 'base_uri' => 'https://api.weixin.qq.com/', // 如果你在国外想要覆盖默认的 url 的时候才使用,根据不同的模块配置不同的 uri ], ); - $app = Factory::miniProgram($config); - return $app; + return Factory::miniProgram($config); } } \ No newline at end of file diff --git a/niucloud/app/service/core/wechat/CoreWechatConfigService.php b/niucloud/app/service/core/wechat/CoreWechatConfigService.php index 1acb41b97..fa2f7b6b9 100644 --- a/niucloud/app/service/core/wechat/CoreWechatConfigService.php +++ b/niucloud/app/service/core/wechat/CoreWechatConfigService.php @@ -32,7 +32,7 @@ class CoreWechatConfigService extends BaseCoreService */ public function getWechatConfig(int $site_id){ $info = (new CoreConfigService())->getConfig($site_id, ConfigKeyDict::WECHAT)['value'] ?? []; - $config = [ + return [ 'wechat_name' => $info['wechat_name'] ?? '',//公众号名称 'wechat_original' => $info['wechat_original'] ?? '',//原始ID 'app_id' => $info['app_id'] ?? '',//AppID @@ -42,7 +42,6 @@ class CoreWechatConfigService extends BaseCoreService 'encoding_aes_key' => $info['encoding_aes_key'] ?? '', 'encryption_type' => $info['encryption_type'] ?? 'not_encrypt',//加解密模式 not_encrypt 明文 compatible 兼容 safe 安全 ]; - return $config; } /** diff --git a/niucloud/app/service/core/wechat/CoreWechatServeService.php b/niucloud/app/service/core/wechat/CoreWechatServeService.php index 5132a2e49..19ffe8dea 100644 --- a/niucloud/app/service/core/wechat/CoreWechatServeService.php +++ b/niucloud/app/service/core/wechat/CoreWechatServeService.php @@ -92,7 +92,7 @@ class CoreWechatServeService extends BaseCoreService // ... }); $response = $app->server->serve(); - $response->send(); + return $response->send(); } public function jssdkConfig(int $site_id, string $url = '') diff --git a/niucloud/app/validate/diy/Diy.php b/niucloud/app/validate/diy/Diy.php index 6a61eacab..2f5411f27 100644 --- a/niucloud/app/validate/diy/Diy.php +++ b/niucloud/app/validate/diy/Diy.php @@ -24,7 +24,7 @@ class Diy extends \think\Validate protected $rule = [ 'title' => 'require', 'name' => 'require', - 'type' => 'checkType', + 'type' => 'require', 'value' => 'require', 'is_default' => 'number|between:0,1', ]; @@ -36,16 +36,4 @@ class Diy extends \think\Validate "edit" => [ 'title', 'name', 'value', 'is_default' ], ]; - /** - * 自定义验证 性别 - * @param $value - * @param $rule - * @param array $data - * @return bool|string - */ - protected function checkType($value, $rule, $data = []) - { - return isset(TemplateDict::getTemplate()[ $value ]) ? true : get_lang("validate_diy.type_not_exist"); - } - } \ No newline at end of file diff --git a/niucloud/app/validate/message/AliSms.php b/niucloud/app/validate/message/AliSms.php deleted file mode 100644 index 4e8400bb4..000000000 --- a/niucloud/app/validate/message/AliSms.php +++ /dev/null @@ -1,42 +0,0 @@ - 'require', - 'menu_key' => 'unique:sys_menu',//防止key值重复 - 'menu_type' => 'require|checkMenuType', - 'methods' => 'requireWith:api_url|checkMethodType', - 'router_path' => 'requireIf:menu_type,0|requireIf:menu_type,1', - 'view_path' => 'requireIf:menu_type,1' - - ]; - - protected $message = [ - 'menu_name.require' => 'validate_menu.menu_name_require', - 'router_path.requireIf' => 'validate_menu.router_path_requireif', - 'view_path.requireIf' => 'validate_menu.view_path_requireif', - - 'methods.requireWith' => 'validate_menu.methods_requirewith', - ]; - -} \ No newline at end of file diff --git a/niucloud/composer.json b/niucloud/composer.json index 826f68d2b..23a88fa9c 100644 --- a/niucloud/composer.json +++ b/niucloud/composer.json @@ -49,7 +49,8 @@ "yansongda/pay": "v3.2.14", "symfony/psr-http-message-bridge": "v2.2.0", "fastknife/ajcaptcha": "v1.2.1", - "yzh52521/schedule": "^1.0" + "kosinix/grafika": "dev-master", + "yunwuxin/think-cron": "v3.0.5" }, "require-dev": { "symfony/var-dumper": "v4.4.47", diff --git a/niucloud/composer.lock b/niucloud/composer.lock index d8ca58f4e..f75149476 100644 --- a/niucloud/composer.lock +++ b/niucloud/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "c28d105402847e957afdd94104f190aa", + "content-hash": "f7b6e94eac121eb357defdcb7669d03e", "packages": [ { "name": "adbario/php-dot-notation", @@ -1296,6 +1296,58 @@ ], "time": "2022-05-21T17:30:32+00:00" }, + { + "name": "kosinix/grafika", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/kosinix/grafika.git", + "reference": "211f61fc334b8b36616b23e8af7c5727971d96ee" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/kosinix/grafika/zipball/211f61fc334b8b36616b23e8af7c5727971d96ee", + "reference": "211f61fc334b8b36616b23e8af7c5727971d96ee", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] + }, + "require": { + "php": ">=5.3" + }, + "default-branch": true, + "type": "library", + "autoload": { + "psr-4": { + "Grafika\\": "src/Grafika" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT", + "GPL-2.0+" + ], + "authors": [ + { + "name": "Nico Amarilla", + "homepage": "https://www.kosinix.com" + } + ], + "description": "An image manipulation library for PHP.", + "homepage": "http://kosinix.github.io/grafika", + "keywords": [ + "grafika" + ], + "support": { + "issues": "https://github.com/kosinix/grafika/issues", + "source": "https://github.com/kosinix/grafika/tree/2.0.8" + }, + "time": "2017-06-20T03:13:49+00:00" + }, { "name": "laravel/serializable-closure", "version": "v1.2.2", @@ -5258,17 +5310,17 @@ "time": "2022-03-28T10:25:04+00:00" }, { - "name": "yzh52521/schedule", - "version": "v1.0.0", + "name": "yunwuxin/think-cron", + "version": "v3.0.5", "source": { "type": "git", - "url": "https://github.com/yzh52521/schedule.git", - "reference": "4c8f537f0c08417e785f84b8b91bf16b083cb163" + "url": "https://github.com/yunwuxin/think-cron.git", + "reference": "a5e5c679b7f5daedab9fb4bb00b641b6c4a054ca" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/yzh52521/schedule/zipball/4c8f537f0c08417e785f84b8b91bf16b083cb163", - "reference": "4c8f537f0c08417e785f84b8b91bf16b083cb163", + "url": "https://api.github.com/repos/yunwuxin/think-cron/zipball/a5e5c679b7f5daedab9fb4bb00b641b6c4a054ca", + "reference": "a5e5c679b7f5daedab9fb4bb00b641b6c4a054ca", "shasum": "", "mirrors": [ { @@ -5278,33 +5330,46 @@ ] }, "require": { - "nesbot/carbon": "^2.0", - "php": ">=7.1" + "dragonmantank/cron-expression": "^3.0", + "nesbot/carbon": "^2.28", + "symfony/process": "^4.4|^5.0", + "topthink/framework": "^6.0" + }, + "require-dev": { + "topthink/think-swoole": "^4.0" }, "type": "library", + "extra": { + "think": { + "config": { + "cron": "src/config.php" + }, + "services": [ + "yunwuxin\\cron\\Service" + ] + } + }, "autoload": { "psr-4": { - "schedule\\": "src/" + "yunwuxin\\cron\\": "src/cron" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "Apache-2.0" ], - "description": "task schedule,schedule,thinkphp schedule,任务调度", - "keywords": [ - "schedule", - "task schedule", - "think-schedule", - "thinkphp", - "thinkphp5.1", - "thinkphp6" + "authors": [ + { + "name": "yunwuxin", + "email": "448901948@qq.com" + } ], + "description": "计划任务", "support": { - "issues": "https://github.com/yzh52521/schedule/issues", - "source": "https://github.com/yzh52521/schedule/tree/v1.0.0" + "issues": "https://github.com/yunwuxin/think-cron/issues", + "source": "https://github.com/yunwuxin/think-cron/tree/v3.0.5" }, - "time": "2020-07-02T01:34:32+00:00" + "time": "2021-12-22T09:25:54+00:00" } ], "packages-dev": [ @@ -5545,7 +5610,9 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": [], + "stability-flags": { + "kosinix/grafika": 20 + }, "prefer-stable": false, "prefer-lowest": false, "platform": { diff --git a/niucloud/config/console.php b/niucloud/config/console.php index a2794549e..b408a7c17 100644 --- a/niucloud/config/console.php +++ b/niucloud/config/console.php @@ -11,6 +11,5 @@ return [ 'queue:listen' => 'think\queue\command\Listen', 'addon:install' => 'app\command\Addon\Install', 'addon:uninstall' => 'app\command\Addon\Uninstall', - 'schedule:run'=> 'app\command\Schedule', ], ]; diff --git a/niucloud/config/cron.php b/niucloud/config/cron.php deleted file mode 100644 index bb6c59b8a..000000000 --- a/niucloud/config/cron.php +++ /dev/null @@ -1,9 +0,0 @@ - [ - CronTask::class, //任务的完整类名 - ] -]; \ No newline at end of file diff --git a/niucloud/config/pay.php b/niucloud/config/pay.php index c3aba6c7c..8b76e26e1 100644 --- a/niucloud/config/pay.php +++ b/niucloud/config/pay.php @@ -19,8 +19,8 @@ return [ //支付宝 'alipay' => [], //余额 -// 'balance' => [ -// 'driver' => 'app\service\core\paytype\CoreBalanceService', //反射类的名字 -// ], + 'balancepay' => [ + 'driver' => 'app\service\core\paytype\CoreBalanceService', //反射类的名字 + ], ] ]; diff --git a/niucloud/core/dict/BaseDict.php b/niucloud/core/dict/BaseDict.php index 7d2eb02e0..2c14d9ec3 100644 --- a/niucloud/core/dict/BaseDict.php +++ b/niucloud/core/dict/BaseDict.php @@ -93,7 +93,7 @@ abstract class BaseDict extends Storage */ protected function getDictPath() { - return root_path(). "app". DIRECTORY_SEPARATOR. "dict". DIRECTORY_SEPARATOR;; + return root_path(). 'app'. DIRECTORY_SEPARATOR. 'dict'. DIRECTORY_SEPARATOR; } /** @@ -102,7 +102,7 @@ abstract class BaseDict extends Storage */ protected function getAddonDictPath(string $addon) { - return $this->getAddonPath($addon). "app". DIRECTORY_SEPARATOR. "dict". DIRECTORY_SEPARATOR; + return $this->getAddonPath($addon). 'app'. DIRECTORY_SEPARATOR. 'dict'. DIRECTORY_SEPARATOR; } /** @@ -111,7 +111,7 @@ abstract class BaseDict extends Storage */ protected function getAddonConfigPath(string $addon) { - return $this->getAddonPath($addon). "config". DIRECTORY_SEPARATOR; + return $this->getAddonPath($addon). 'config'. DIRECTORY_SEPARATOR; } /** diff --git a/niucloud/core/dict/Schedule.php b/niucloud/core/dict/Schedule.php index 76c896ada..0d03849fb 100644 --- a/niucloud/core/dict/Schedule.php +++ b/niucloud/core/dict/Schedule.php @@ -20,28 +20,49 @@ class Schedule extends BaseDict */ public function load(array $data = []) { + $addon = $data['addon'] ?? ''; $schedule_files = []; - $system_path = $this->getDictPath(). "schedule". DIRECTORY_SEPARATOR. "schedule.php"; - if(is_file($system_path)) + if(empty($addon)) { - $schedule_files[] = $system_path; - } - $addons = $this->getLocalAddons(); - foreach ($addons as $k => $v) - { - $addon_path = $this->getAddonDictPath($v). "schedule". DIRECTORY_SEPARATOR. "schedule.php"; - if(is_file($addon_path)) + $system_path = $this->getDictPath(). 'schedule'. DIRECTORY_SEPARATOR. 'schedule.php'; + if(is_file($system_path)) { - $schedule_files[] = $addon_path; + $schedule_files[] = $system_path; } + $addons = $this->getLocalAddons(); + foreach ($addons as $k => $v) + { + $addon_path = $this->getAddonDictPath($v). 'schedule'. DIRECTORY_SEPARATOR. 'schedule.php'; + if(is_file($addon_path)) + { + $schedule_files[] = $addon_path; + } + } + }else{ + $schedule_files = []; + if($addon == 'system'){ + $schedule_files = []; + $system_path = $this->getDictPath(). 'schedule'. DIRECTORY_SEPARATOR. 'schedule.php'; + if(is_file($system_path)) + { + $schedule_files[] = $system_path; + } + }else{ + $addon_path = $this->getAddonDictPath($addon). 'schedule'. DIRECTORY_SEPARATOR. 'schedule.php'; + if(is_file($addon_path)) + { + $schedule_files[] = $addon_path; + } + } + } $schedule_files_data = $this->loadFiles($schedule_files); - $schedule_data_array = []; foreach ($schedule_files_data as $file_data) { $schedule_data_array = empty($schedule_data_array) ? $file_data : array_merge($schedule_data_array, $file_data); } return $schedule_data_array; + } } \ No newline at end of file diff --git a/niucloud/core/upload/Aliyun.php b/niucloud/core/upload/Aliyun.php index e094fe93f..e46d04a41 100644 --- a/niucloud/core/upload/Aliyun.php +++ b/niucloud/core/upload/Aliyun.php @@ -24,8 +24,7 @@ class Aliyun extends BaseUpload $access_key_secret = $this->config['secret_key']; $endpoint = $this->config['endpoint'];// yourEndpoint填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。 - $oss_client = new OssClient($access_key_id, $access_key_secret, $endpoint); - return $oss_client; + return new OssClient($access_key_id, $access_key_secret, $endpoint); } /** diff --git a/niucloud/core/util/Snowflake.php b/niucloud/core/util/Snowflake.php new file mode 100644 index 000000000..c5f4cbe58 --- /dev/null +++ b/niucloud/core/util/Snowflake.php @@ -0,0 +1,86 @@ + self::MAX_DATA_CENTER_ID || $data_center_id < 0) { +// throw new Exception('Data center ID can not be greater than ' . self::MAX_DATA_CENTER_ID . ' or less than 0'); +// } +// +// if ($machine_id > self::MAX_MACHINE_ID || $machine_id < 0) { +// throw new Exception('Machine ID can not be greater than ' . self::MAX_MACHINE_ID . ' or less than 0'); +// } + + $this->data_center_id = $data_center_id; + $this->machine_id = $machine_id; + $this->last_timestamp = 0; + $this->sequence = 0; + } + + public function generateId() + { + $timestamp = $this->getTimestamp(); + + // 当前时间小于上一次生成时间,发生时钟回拨 + if ($timestamp < $this->last_timestamp) { + throw new Exception('Clock moved backwards.'); + } + + // 当前时间与上一次生成时间相同 + if ($timestamp == $this->last_timestamp) { + $this->sequence = ($this->sequence + 1) & self::MAX_SEQUENCE; + + // 当前毫秒的序列已经达到最大值,等待下一毫秒 + if ($this->sequence == 0) { + $timestamp = $this->nextMillis($this->last_timestamp); + } + } else { + // 新的一毫秒,序列从0开始 + $this->sequence = 0; + } + + $this->last_timestamp = $timestamp; + + $id = (($timestamp - self::START_EPOCH) << (self::SEQUENCE_BITS + self::MACHINE_ID_BITS + self::DATA_CENTER_ID_BITS)) + | ($this->data_center_id << (self::SEQUENCE_BITS + self::MACHINE_ID_BITS)) + | ($this->machine_id << self::SEQUENCE_BITS) + | $this->sequence; + + return $id; + } + + private function getTimestamp() + { + return floor(microtime(true) * 1000); + } + + private function nextMillis($last_timestamp) + { + $timestamp = $this->getTimestamp(); + + while ($timestamp <= $last_timestamp) { + $timestamp = $this->getTimestamp(); + } + + return $timestamp; + } +} \ No newline at end of file diff --git a/niucloud/public/.gitignore b/niucloud/public/.gitignore index 8b0144799..f6301082f 100644 --- a/niucloud/public/.gitignore +++ b/niucloud/public/.gitignore @@ -1,4 +1,6 @@ /.htaccess upload nginx.htaccess -.htaccess \ No newline at end of file +.htaccess +admin +wap \ No newline at end of file diff --git a/niucloud/public/static/resource/images/diy/template/default_index_cover.png b/niucloud/public/static/resource/images/diy/template/default_index_cover.png new file mode 100644 index 0000000000000000000000000000000000000000..f7cb41093bb6ca74bb6ff687e19a79938efb13c2 GIT binary patch literal 101486 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%0AFhwh-MeVK)gN* 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"Z3jP6PD{1Naka&%eJNs!tU)Tz9^NNYa4Li5Qp*g zxc?WCvkW{I>MrKB49r!^Yt#>2)#4ReZCy@3gO-Y z_x;{-Sj}h)Li3afzuIw!bs0;eT>H}`->fHz#_h~&3+_xgv^3SOIYlgr$H{_S8KG#NP&Q{ zR8mGciEtio_Mpz^1%;fTc2l*4rU;KpM!93AqE%oS=xO@~3(}k4mv^kI`zx{M`64`_ z=r?#;x7hvAh->DU0{C!EH>*3x4eV9ea@^-N8VaW=^mv51x+Cwxome|ttdrVFZq4b% z?R8ZT4EJtJwL3lPe$5VW=SskJUo$*i^NFuvTLahsgM)^VQ*lO;xjv(GJ4JiLy`4QEN&Mn6zQ-@gS%T(UR`G z09#U^rj;p$*i#wTc~S$`rCH|)1xLQ+!sDb6oRJ?R(YH{IjeR#S9`#;M&iaSu%;3Q9 z&^9`Nerj^upM)ATab{2y!R6>CqZXTCdSIu?H>hdpK`rkonwlli9R zP2O1K&t%o!47{+*UQzTW4Z4taW3+i|){n?+9LJT%Q(E#dX8&N`mO2?sn}%+CiwIH2 zLf5QoIs$k9Td>x&QW#i)Y0Gdg=QX^;x;%A81W27b@Gji-d>*E7{NWF*95D+wc&qCg z+)oY_kpy>cunNzNJ0Bm^C^m=)b&`a%6z+N_nRx%@mtSCA#>XW0*MwP|AZmj<;*R+n zJ{)&yg1deF6x>H1mic4LwQ^;3Aj*=w!k}G7l(jp%<@|m(@@g?0VC?*)xp)QfAOQ@zU?$J(k(uWD4N(&d^p*Dp?jD{sXJQytZWY zQVM^?*F7_(PFW^gv!6j0cXpsmzmM{ z1$*&en#%b7r6PH12!=cE^kh01;2>NaL-r-w-i2?IcYs$6UM`Le2xDEYO$Xkl(_TT9 zM`l#%fV)`4$yYoR{%@}>K6GI z(II!_CGL6+u|G$GMJ#`V&(7X33r5j>Fw`+!*}U(|3LWFCUw@?y4y(JH8}GTw+K#xU z2P|ocJ1}sLsssA#Z@%>6i!Z(;dlMs*z5eXk&5a@ND7biL;G4RhOP=RSPKmF2o;O*R z>*OlYF2e24um@%_Y%=<~0zQb;Ozu>xQm&Eu4(VX|@Y&S~|Jy32&o!xj@Wv^7vb@J* zp~>3G_+yS2hP#`9C&730Sl?42iqu+6rc?c`{a$K*)rLyOx?VZ}a{#Xu=Au_Gaou~< zdfGcVdBlK%9pT>LLSV3~!4Sv1B^v1hZ! zbN4h4R&(ZA@g?2Lio307q{lMV@qMl7xom`iMqNtqFDfm<8 z`tA;|Mk=40tqXe7N+x5-P=ETqg#2}|Hp0yg4!%0Dg>lb(Z~*cmJ~NZAyg~Pt3Tx`F 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

    |Ew2;H> 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 S6c_$uwUH8&7p)dH4E!%FHf9z8 literal 0 HcmV?d00001 diff --git a/niucloud/public/static/resource/images/diy/template/tourism_member_index_cover.png b/niucloud/public/static/resource/images/diy/template/tourism_member_index_cover.png new file mode 100644 index 0000000000000000000000000000000000000000..5e65ca1fa38d01b15c743cc20349886bf0128032 GIT binary patch literal 76038 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 z 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ÑWtbzv9<<;7{Vk=*5^!#giNAC1tuHW&j%AQ_x7V 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 z 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 literal 0 HcmV?d00001 diff --git a/niucloud/public/static/resource/images/member/public_money_bg.png b/niucloud/public/static/resource/images/member/public_money_bg.png deleted file mode 100644 index 07fc53d3413d9001470ffd980ff732ab6191eb37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31107 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 WWmfe);8f*(H?Ld%Q}Xx2m;VPbzOvl_

    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 z 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