diff --git a/app/Admin/Controllers/Setting/WeChat.php b/app/Admin/Controllers/Setting/WeChat.php index 6a40159bb..97ded33b2 100644 --- a/app/Admin/Controllers/Setting/WeChat.php +++ b/app/Admin/Controllers/Setting/WeChat.php @@ -24,7 +24,7 @@ use function Zhiyi\Plus\setting; use Illuminate\Http\JsonResponse; use Zhiyi\Plus\Admin\Controllers\Controller; -use Zhiyi\Plus\Admin\Requests\SeWeChatConfigure as SeWeChatConfigureRequest; +use Zhiyi\Plus\Admin\Requests\SetWeChatConfigure as SetWeChatConfigureRequest; class WeChat extends Controller { @@ -44,12 +44,12 @@ public function getConfigure(): JsonResponse /** * set configure. - * @param \Zhiyi\Plus\Admin\Requests\SeWeChatConfigureRequest $request + * @param \Zhiyi\Plus\Admin\Requests\SetWeChatConfigureRequest $request * @return \Illuminate\Http\Response */ - public function setConfigure(SeWeChatConfigureRequest $request) + public function setConfigure(SetWeChatConfigureRequest $request) { - setting('user')->set('vendor:qq', [ + setting('user')->set('vendor:wechat', [ 'appSecret' => $request->input('appSecret'), 'appKey' => $request->input('appKey'), ]); diff --git a/app/Admin/Controllers/Setting/Weibo.php b/app/Admin/Controllers/Setting/Weibo.php new file mode 100644 index 000000000..86b206878 --- /dev/null +++ b/app/Admin/Controllers/Setting/Weibo.php @@ -0,0 +1,59 @@ + | + * | Homepage: www.thinksns.com | + * +----------------------------------------------------------------------+ + */ + +namespace Zhiyi\Plus\Admin\Controllers\Setting; + +use Illuminate\Http\Response; +use function Zhiyi\Plus\setting; +use Illuminate\Http\JsonResponse; +use Zhiyi\Plus\Admin\Controllers\Controller; +use Zhiyi\Plus\Admin\Requests\SetWeiboConfigure as SetWeiboConfigureRequest; + +class Weibo extends Controller +{ + /** + * Get configure. + * @return \Illuminate\Http\JsonResponse + */ + public function getConfigure(): JsonResponse + { + $settings = setting('user', 'vendor:weibo', [ + 'secret' => '', + 'appId' => '', + ]); + + return new JsonResponse($settings, Response::HTTP_OK); + } + + /** + * set configure. + * @param \Zhiyi\Plus\Admin\Requests\SetWeiboConfigureRequest $request + * @return \Illuminate\Http\Response + */ + public function setConfigure(SetWeiboConfigureRequest $request) + { + setting('user')->set('vendor:weibo', [ + 'secret' => $request->input('secret'), + 'appId' => $request->input('appId'), + ]); + + return new Response('', Response::HTTP_NO_CONTENT); + } +} diff --git a/app/Admin/Requests/SeWeChatConfigure.php b/app/Admin/Requests/SetWeChatConfigure.php similarity index 97% rename from app/Admin/Requests/SeWeChatConfigure.php rename to app/Admin/Requests/SetWeChatConfigure.php index ededc1373..240580567 100644 --- a/app/Admin/Requests/SeWeChatConfigure.php +++ b/app/Admin/Requests/SetWeChatConfigure.php @@ -22,7 +22,7 @@ use Illuminate\Foundation\Http\FormRequest; -class SeWeChatConfigure extends FormRequest +class SetWeChatConfigure extends FormRequest { /** * Determine if the user is authorized to make this request. diff --git a/app/Admin/Requests/SetWeiboConfigure.php b/app/Admin/Requests/SetWeiboConfigure.php new file mode 100644 index 000000000..e6cb7f515 --- /dev/null +++ b/app/Admin/Requests/SetWeiboConfigure.php @@ -0,0 +1,51 @@ + | + * | Homepage: www.thinksns.com | + * +----------------------------------------------------------------------+ + */ + +namespace Zhiyi\Plus\Admin\Requests; + +use Illuminate\Foundation\Http\FormRequest; + +class SetWeiboConfigure extends FormRequest +{ + /** + * Determine if the user is authorized to make this request. + * + * @return bool + * @author Seven Du + */ + public function authorize(): bool + { + return true; + } + + /** + * Get the validation rules that apply to the request. + * + * @return array + * @author Seven Du + */ + public function rules(): array + { + return [ + 'appId' => 'required|string', + 'secret' => 'required|string', + ]; + } +} diff --git a/resources/assets/admin/api/vendor.js b/resources/assets/admin/api/vendor.js index 95c8ad480..5ceb0a49d 100644 --- a/resources/assets/admin/api/vendor.js +++ b/resources/assets/admin/api/vendor.js @@ -24,4 +24,5 @@ class VendorRequestGenerator { export const easemob = new VendorRequestGenerator('setting/vendor/easemob'); export const qq = new VendorRequestGenerator('setting/vendor/qq'); export const wechat = new VendorRequestGenerator('setting/vendor/wechat'); +export const weibo = new VendorRequestGenerator('setting/vendor/weibo'); diff --git a/resources/assets/admin/component/User.vue b/resources/assets/admin/component/User.vue index 26a9b3fd1..a7305debb 100644 --- a/resources/assets/admin/component/User.vue +++ b/resources/assets/admin/component/User.vue @@ -44,7 +44,9 @@ 微信登录 -
  • 微博登录
  • + + 微博登录 +
  • 环信即时聊天 diff --git a/resources/assets/admin/pages/user-vendor/index.js b/resources/assets/admin/pages/user-vendor/index.js index 4d2d555d2..54e728875 100644 --- a/resources/assets/admin/pages/user-vendor/index.js +++ b/resources/assets/admin/pages/user-vendor/index.js @@ -1,3 +1,4 @@ export { default as Easemob } from './easemob'; export { default as QQ } from './qq'; -export { default as WeChat } from './wechat'; \ No newline at end of file +export { default as WeChat } from './wechat'; +export { default as Weibo } from './weibo'; \ No newline at end of file diff --git a/resources/assets/admin/pages/user-vendor/weibo.vue b/resources/assets/admin/pages/user-vendor/weibo.vue new file mode 100644 index 000000000..198a7a893 --- /dev/null +++ b/resources/assets/admin/pages/user-vendor/weibo.vue @@ -0,0 +1,79 @@ + + + + diff --git a/resources/assets/admin/router/user.js b/resources/assets/admin/router/user.js index 6bd6fd7cc..0c39ced2e 100644 --- a/resources/assets/admin/router/user.js +++ b/resources/assets/admin/router/user.js @@ -34,6 +34,7 @@ const routers = { { path: 'vendor-easemob', component: vendorPages.Easemob, name: 'user:vendor/easemob' }, { path: 'vendor-qq', component: vendorPages.QQ, name: 'user:vendor/qq' }, { path: 'vendor-wechat', component: vendorPages.WeChat, name: 'user:vendor/wechat' }, + { path: 'vendor-weibo', component: vendorPages.Weibo, name: 'user:vendor/weibo' }, ] }; diff --git a/routes/new-admin.php b/routes/new-admin.php index f9373ef40..bf14dc67a 100644 --- a/routes/new-admin.php +++ b/routes/new-admin.php @@ -65,4 +65,8 @@ // 微信配置 $route->get('setting/vendor/wechat', AdminControllers\Setting\WeChat::class.'@getConfigure'); $route->put('setting/vendor/wechat', AdminControllers\Setting\WeChat::class.'@setConfigure'); + + // 微博配置 + $route->get('setting/vendor/weibo', AdminControllers\Setting\Weibo::class.'@getConfigure'); + $route->put('setting/vendor/weibo', AdminControllers\Setting\Weibo::class.'@setConfigure'); });