Просмотр исходного кода

【程序目录】优化隐私协议

evoxwht 3 лет назад
Родитель
Сommit
ae17f903c0

+ 54 - 0
crmeb/app/adminapi/controller/v1/setting/SystemAgreement.php

@@ -0,0 +1,54 @@
+<?php
+
+namespace app\adminapi\controller\v1\setting;
+
+use app\adminapi\controller\AuthController;
+use app\services\other\AgreementServices;
+use think\facade\App;
+
+class SystemAgreement extends AuthController
+{
+    /**
+     * 构造方法
+     * SystemCity constructor.
+     * @param App $app
+     * @param AgreementServices $services
+     */
+    public function __construct(App $app, AgreementServices $services)
+    {
+        parent::__construct($app);
+        $this->services = $services;
+    }
+
+    /**
+     * 获取协议内容
+     * @param $type
+     * @return mixed
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
+     */
+    public function getAgreement($type)
+    {
+        if (!$type) return app('json')->fail('协议类型不存在');
+        $info = $this->services->getAgreementBytype($type);
+        return app('json')->success($info);
+    }
+
+    /**
+     * 保存协议内容
+     * @return mixed
+     */
+    public function saveAgreement()
+    {
+        $data = $this->request->postMore([
+            ['id', 0],
+            ['type', 0],
+            ['title', ''],
+            ['content', ''],
+        ]);
+        $data['status'] = 1;
+        $this->services->saveAgreement($data, $data['id']);
+        return app('json')->success('保存成功');
+    }
+}

+ 4 - 0
crmeb/app/adminapi/route/setting.php

@@ -148,6 +148,10 @@ Route::group('setting', function () {
     //修改消息状态
     Route::put('notification/set_status/:type/:status/:id', 'v1.setting.SystemNotification/set_status')->option(['real_name' => '修改消息状态']);
 
+    //协议设置
+    Route::get('get_agreement/:type', 'v1.setting.SystemAgreement/getAgreement')->option(['real_name' => '获取协议内容']);
+    Route::post('save_agreement', 'v1.setting.SystemAgreement/saveAgreement')->option(['real_name' => '设置协议内容']);
+
 })->middleware([
     \app\http\middleware\AllowOriginMiddleware::class,
     \app\adminapi\middleware\AdminAuthTokenMiddleware::class,

+ 16 - 0
crmeb/app/api/controller/v1/PublicController.php

@@ -15,6 +15,7 @@ use app\services\activity\combination\StorePinkServices;
 use app\services\diy\DiyServices;
 use app\services\message\service\StoreServiceServices;
 use app\services\order\DeliveryServiceServices;
+use app\services\other\AgreementServices;
 use app\services\other\CacheServices;
 use app\services\product\product\StoreCategoryServices;
 use app\services\product\product\StoreProductServices;
@@ -525,4 +526,19 @@ class PublicController
         $content = $cache->getDbCache('user_agreement', '');
         return app('json')->success(compact('content'));
     }
+
+    /**
+     * 获取协议
+     * @param AgreementServices $agreementServices
+     * @param $type
+     * @return mixed
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
+     */
+    public function getAgreement(AgreementServices $agreementServices, $type)
+    {
+        $data = $agreementServices->getAgreementBytype($type);
+        return app('json')->success($data);
+    }
 }