lyh 3 лет назад
Родитель
Сommit
58698ca890
100 измененных файлов с 1150 добавлено и 2300 удалено
  1. 85 8
      app/admin/controller/user/User.php
  2. 52 0
      app/admin/logic/MoneyLogLogic.php
  3. 51 0
      app/admin/logic/ScoreLogLogic.php
  4. 173 4
      app/admin/logic/UserLogic.php
  5. 10 10
      app/admin/middleware/CsrfMiddleware.php
  6. 22 0
      app/admin/model/dao/MoneyLog.php
  7. 22 0
      app/admin/model/dao/ScoreLog.php
  8. 39 13
      app/admin/model/dao/User.php
  9. 44 4
      app/admin/view/mall/shop_order/editstatus.html
  10. 113 0
      app/admin/view/user/user/modifymoney.html
  11. 75 0
      app/admin/view/user/user/modifypid.html
  12. 113 0
      app/admin/view/user/user/modifyscore.html
  13. 49 13
      app/admin/view/user/user/phoneset.html
  14. 12 8
      app/validate/admin/user/user/ModifyMoney.php
  15. 21 0
      app/validate/admin/user/user/ModifyPid.php
  16. 4 3
      app/validate/admin/user/user/ModifyScore.php
  17. 214 1802
      composer.lock
  18. 1 1
      config/app.php
  19. 3 3
      public/static/admin/js/mall/shop_order.js
  20. 11 5
      public/static/admin/js/user/user.js
  21. 1 1
      runtime/admin/cache/3b/1cd8c0f3fd25b5dba35624b103e407.php
  22. 0 36
      runtime/admin/log/20230224.log
  23. 0 60
      runtime/admin/temp/4b9d425338cc7f0a1f757eea0852566d.php
  24. 0 77
      runtime/admin/temp/9bc006ede9d66f3c011e8d2428ec467f.php
  25. 0 5
      runtime/api/log/20230224.log
  26. 0 135
      runtime/api/temp/ed3fee8054a75f2b02a93908d1a388bd.php
  27. 0 0
      runtime/crontab/box_handle_once.log
  28. 0 0
      runtime/crontab/machine_expired.log
  29. 0 0
      runtime/crontab/sunny_add_free.log
  30. 0 0
      runtime/crontab/sunny_add_free_data.log
  31. 0 0
      runtime/crontab/team_dymic_free.log
  32. 0 0
      runtime/crontab/user_red_free.log
  33. 0 0
      runtime/crontab/user_renwu_score_free.log
  34. 0 0
      runtime/crontab/xz_exchange_free.log
  35. 0 65
      runtime/index/log/20230224.log
  36. 0 18
      runtime/index/temp/366c8631b33b671ae90047ef7841512d.php
  37. 0 1
      runtime/session/sess_b17caf573ee010b36a74e547b2303a20
  38. 0 0
      vendor/alibabacloud/cloudauth-20190307/.gitignore
  39. 0 0
      vendor/alibabacloud/cloudauth-20190307/.php_cs.dist
  40. 6 0
      vendor/alibabacloud/cloudauth-20190307/ChangeLog.md
  41. 0 0
      vendor/alibabacloud/cloudauth-20190307/LICENSE
  42. 0 0
      vendor/alibabacloud/cloudauth-20190307/README-CN.md
  43. 0 0
      vendor/alibabacloud/cloudauth-20190307/README.md
  44. 0 0
      vendor/alibabacloud/cloudauth-20190307/autoload.php
  45. 4 5
      vendor/alibabacloud/cloudauth-20190307/composer.json
  46. 13 10
      vendor/alibabacloud/cloudauth-20190307/src/Cloudauth.php
  47. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFaceVerifyRequest.php
  48. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFaceVerifyResponse.php
  49. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFaceVerifyResponseBody.php
  50. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFaceVerifyResponseBody/resultObject.php
  51. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFacesRequest.php
  52. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFacesResponse.php
  53. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFacesResponseBody.php
  54. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFacesResponseBody/data.php
  55. 12 13
      vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyAdvanceRequest.php
  56. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyRequest.php
  57. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyResponse.php
  58. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyResponseBody.php
  59. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyResponseBody/resultObject.php
  60. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CreateAuthKeyRequest.php
  61. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CreateAuthKeyResponse.php
  62. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CreateAuthKeyResponseBody.php
  63. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CreateVerifySettingRequest.php
  64. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CreateVerifySettingResponse.php
  65. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/CreateVerifySettingResponseBody.php
  66. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoRequest.php
  67. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoResponse.php
  68. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoResponseBody.php
  69. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoResponseBody/deviceInfoList.php
  70. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoResponseBody/deviceInfoList/deviceInfo.php
  71. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeFaceVerifyRequest.php
  72. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeFaceVerifyResponse.php
  73. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeFaceVerifyResponseBody.php
  74. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeFaceVerifyResponseBody/resultObject.php
  75. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeOssUploadTokenResponse.php
  76. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeOssUploadTokenResponseBody.php
  77. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeOssUploadTokenResponseBody/ossUploadToken.php
  78. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultRequest.php
  79. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultResponse.php
  80. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultResponseBody.php
  81. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultResponseBody/material.php
  82. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultResponseBody/material/idCardInfo.php
  83. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifySDKRequest.php
  84. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifySDKResponse.php
  85. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifySDKResponseBody.php
  86. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyTokenRequest.php
  87. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyTokenResponse.php
  88. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyTokenResponseBody.php
  89. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyTokenResponseBody/ossUploadToken.php
  90. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesRequest.php
  91. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponse.php
  92. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody.php
  93. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data.php
  94. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos.php
  95. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo.php
  96. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo/faceAttributes.php
  97. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo/faceAttributes/headpose.php
  98. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo/faceAttributes/smiling.php
  99. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo/faceRect.php
  100. 0 0
      vendor/alibabacloud/cloudauth-20190307/src/Models/InitFaceVerifyRequest.php

+ 85 - 8
app/admin/controller/user/User.php

@@ -5,6 +5,8 @@ namespace app\admin\controller\user;
 //use app\admin\model\ActiveLog;
 //use app\admin\model\ActiveSet;
 //use app\admin\model\CoinLog;
+use app\admin\logic\MoneyLogLogic;
+use app\admin\logic\ScoreLogLogic;
 use app\admin\logic\UserLogic;
 use app\common\model\MoneyLog;
 use app\common\model\ScoreLog;
@@ -20,7 +22,9 @@ use app\common\model\UserMoneyModel;
 use app\common\model\UserteamLogModel;
 use app\Request;
 use app\validate\admin\mall\shopOrder\EditStatus;
+use app\validate\admin\user\user\ModifyMoney;
 use app\validate\admin\user\user\ModifyScore;
+use app\validate\admin\user\user\ModifyPid;
 use app\validate\admin\user\user\PhoneSet;
 use EasyAdmin\tool\CommonTool;
 use jianyan\excel\Excel;
@@ -275,24 +279,31 @@ class User extends AdminController
         return $this->fetch('phoneset');
     }
 
-    /**
-     * 增加余额
-     * @return mixed
-     */
-    public function modifymoney()
+    /*
+    * 修改所属上级
+    * @return mixed
+    */
+    public function modifypid()
     {
         if ($this->request->isPost()) {
 
             $post = $this->request->post();
 
             try {
-                validate(ModifyScore::class)->check($post);
+
+                validate(ModifyPid::class)->check($post);
             } catch (ValidateException $e) {
                 $this->error($e->getMessage());
             }
 
+
+            $pid  = $post['pid'];
+            $uid  = $post['id'];
+            $user = $this->model->findOrEmpty(['id' => $uid]);
+            empty($user) && $this->error('用户不存在');
+
             $userLogic = new UserLogic();
-            $result    = $userLogic->modifyMoney($post['uid'], $post);
+            $result    = $userLogic->modifypid($uid, $pid);
             if ($result !== true) {
                 $this->error($result);
             }
@@ -301,7 +312,8 @@ class User extends AdminController
         }
         $user = $this->model->findOrEmpty(['id' => $this->request['id']]);
         $this->assign('info', $user);
-        return $this->fetch('phoneset');
+
+        return $this->fetch();
     }
 
     /**
@@ -663,4 +675,69 @@ class User extends AdminController
         return $this->fetch();
     }
 
+    /*
+    * 修改积分
+    * @return mixed
+    */
+    public function modifyscore()
+    {
+        if ($this->request->isPost()) {
+
+            $post = $this->request->post();
+
+            try {
+                validate(ModifyScore::class)->check($post);
+            } catch (ValidateException $e) {
+                $this->error($e->getMessage());
+            }
+
+            $userLogic = new UserLogic();
+            $result    = $userLogic->ModifyScore($post);
+            if ($result !== true) {
+                $this->error($result);
+            }
+
+            $this->success('成功');
+        }
+        $user              = $this->model->findOrEmpty(['id' => $this->request['id']]);
+        $user['type_map']   = ScoreLogLogic::getTypeMap();
+        $user['state_map'] = ScoreLogLogic::getStateMap();
+        $this->assign('info', $user);
+
+        return $this->fetch();
+    }
+
+    /*
+    * 修改余额
+    * @return mixed
+    */
+    public function modifymoney()
+    {
+        if ($this->request->isPost()) {
+            $post = $this->request->post();
+
+            try {
+
+                validate(ModifyMoney::class)->check($post);
+            } catch (ValidateException $e) {
+                $this->error($e->getMessage());
+            }
+
+            $userLogic = new UserLogic();
+            $result    = $userLogic->ModifyMoney($post);
+            if ($result !== true) {
+                $this->error($result);
+            }
+
+            $this->success('成功');
+        }
+        $user              = $this->model->findOrEmpty(['id' => $this->request['id']]);
+        $user['type_map']   = MoneyLogLogic::getTypeMap();
+        $user['state_map'] = MoneyLogLogic::getStateMap();
+        $this->assign('info', $user);
+
+        return $this->fetch();
+    }
+
+
 }

+ 52 - 0
app/admin/logic/MoneyLogLogic.php

@@ -0,0 +1,52 @@
+<?php
+
+
+namespace app\admin\logic;
+
+
+use app\admin\model\dao\MoneyLog;
+use app\admin\model\dao\ScoreLog;
+use app\admin\model\dao\ShopOrder;
+use app\admin\model\dao\User;
+use think\facade\Cache;
+use think\facade\Db;
+
+class MoneyLogLogic
+{
+
+    // 1.积分兑换  2.提现  3.购买商品  4.积分兑换  5.广告任务包分红,6-团队收益,8-利润结算兑换,10-提现失败退还,12-平台充补,13-平台扣除',
+    private static $typeMap = [
+        ['id' => 0, 'name' => '其他'],
+        ['id' => 1, 'name' => '积分兑换'],
+        ['id' => 2, 'name' => '提现'],
+        ['id' => 3, 'name' => '购买商品'],
+        ['id' => 4, 'name' => '积分兑换'],
+        ['id' => 5, 'name' => '广告任务包分红'],
+        ['id' => 6, 'name' => '团队收益'],
+        ['id' => 8, 'name' => '利润结算兑换'],
+        ['id' => 10, 'name' => '提现失败退还'],
+        ['id' => 12, 'name' => '平台充补'],
+        ['id' => 13, 'name' => '平台扣除'],
+    ];
+
+    private static $stateMap = [
+        ['id' => 1, 'name' => '增加'],
+        ['id' => 2, 'name' => '减少']
+    ];
+
+    /**
+     * @return array[]
+     */
+    public static function getStateMap(): array
+    {
+        return self::$stateMap;
+    }
+
+    /**
+     * @return array[]
+     */
+    public static function getTypeMap(): array
+    {
+        return self::$typeMap;
+    }
+}

+ 51 - 0
app/admin/logic/ScoreLogLogic.php

@@ -0,0 +1,51 @@
+<?php
+
+
+namespace app\admin\logic;
+
+
+use app\admin\model\dao\MoneyLog;
+use app\admin\model\dao\ScoreLog;
+use app\admin\model\dao\ShopOrder;
+use app\admin\model\dao\User;
+use think\facade\Cache;
+use think\facade\Db;
+
+class ScoreLogLogic
+{
+
+    // 1. 报名消费抢购扣除 2.消费券任务发放 3.爆仓 补足前面两个的百分之七十 4.爆仓那个全部返回 5 商城购买商品返积分 6兑换商品,12-平台充补,13-平台扣除
+    private static $typeMap = [
+        ['id' => 0, 'name' => '其他'],
+        ['id' => 1, 'name' => '报名消费抢购扣除'],
+        ['id' => 2, 'name' => '消费券任务发放'],
+        ['id' => 3, 'name' => '爆仓 补足前面两个的百分之七十'],
+        ['id' => 4, 'name' => '爆仓那个全部返回'],
+        ['id' => 5, 'name' => '商城购买商品返积分'],
+        ['id' => 6, 'name' => '兑换商品'],
+        ['id' => 12, 'name' => '平台充补'],
+        ['id' => 13, 'name' => '平台扣除'],
+    ];
+
+    private static $stateMap = [
+        ['id' => 1, 'name' => '增加'],
+        ['id' => 2, 'name' => '减少']
+    ];
+
+    /**
+     * @return array[]
+     */
+    public static function getStateMap(): array
+    {
+        return self::$stateMap;
+    }
+
+    /**
+     * @return array[]
+     */
+    public static function getTypeMap(): array
+    {
+        return self::$typeMap;
+    }
+
+}

+ 173 - 4
app/admin/logic/UserLogic.php

@@ -4,6 +4,9 @@
 namespace app\admin\logic;
 
 
+use app\admin\model\dao\MoneyLog;
+use app\admin\model\dao\ScoreLog;
+use app\admin\model\dao\ShopOrder;
 use app\admin\model\dao\User;
 use think\facade\Cache;
 use think\facade\Db;
@@ -122,18 +125,184 @@ class UserLogic
     }
 
     /**
-     * 修改余额
+     * 修改用户所属上级
      * @param mixed $uid
-     * @param mixed $post
+     * @param mixed $pid
      */
-    public function modifyMoney($uid, $post)
+    public function modifypid($uid, $pid)
     {
+        // 查询pid是否存在用户path中
         $user = User::getUserById($uid);
+
+        if ($uid == $pid) {
+            return "不能修改自己为上级";
+        }
+
+        if ($user['pid'] == $pid) {
+            return "该用户已所属待变更的上级,不能修改";
+        }
+
+        // 当前用户关系层级链路
+        $newUserPath = "";
+
+        if ($pid == 0) {
+            $newPathPrefix = $user['id'];
+
+        } else {
+            $pUser = User::getUserById($pid);
+            if (empty($pUser)) {
+                return "待变更的上级用户不存在";
+            }
+
+            $userPathArr = explode(',', $user['path']);
+            if (in_array($pid, $userPathArr)) {
+                $pidIndex          = array_search($pid, $userPathArr);
+                $userPathArrPrefix = array_slice($userPathArr, 0, $pidIndex + 1);
+            } else {
+                $pidIndex            = array_search($user['pid'], $userPathArr);
+                $userPathArrPrefix   = array_slice($userPathArr, 0, $pidIndex);
+                $userPathArrPrefix[] = $pid;
+            }
+            $newUserPath = implode(',', $userPathArrPrefix);
+
+            // 子级用户Path待替换关系层级前部分链表
+            $userPathArrPrefix[] = $user['id'];
+            $newPathPrefix       = implode(',', $userPathArrPrefix);
+        }
+
+        // 子级用户Path被替换关系层级前部分链表
+        $oldPathPrefix = $user['path'] == 0 ? $uid : $user['path'] . ',' . $uid;
+
+
+        Db::startTrans();
+        try {
+            // 子级path变更
+            $result = Db::table(User::$table)
+                ->where([
+                    ['path', 'like', $oldPathPrefix . '%'],
+                    ['id', '<>', $uid]
+                ])
+                ->field(['id', 'path'])
+                ->chunk(100, function ($users) use ($pid, $oldPathPrefix, $newPathPrefix, $uid) {
+                    foreach ($users as $user) {
+                        $newPath = str_replace($oldPathPrefix, $newPathPrefix, $user['path']);
+                        User::modifyUserPath($user['id'], $newPath);
+                    }
+                });
+            if (!$result) {
+                Db::rollback();
+                return "修改用户所属上级失败,请确认用户的层级关系";
+            }
+
+            // 更新用户Pid,Path
+            User::modifyUserPidAndPath($uid, $pid, $newUserPath);
+
+            Db::commit();
+        } catch (\Exception $exception) {
+            Db::rollback();
+            return "失败:" . $exception->getMessage();
+        }
+
+        return true;
+    }
+
+    /**
+     * 修改余额
+     * @param mixed $post
+     */
+    public function ModifyMoney($post)
+    {
+        $user = User::getUserById($post['uid']);
         if (empty($user)) {
             return "用户不存在";
         }
 
-        Db::
+        Db::startTrans();
+        try {
+            if ($post['state'] == 1) {
+                $afterMoney = $user['money'] + $post['money'];
+            } else {
+                $afterMoney = $user['money'] - $post['money'];
+                if ($afterMoney < 0) {
+                    return "账号余额不足";
+                }
+            }
+            $afterMoney = round($afterMoney, 2);
+
+            $moneyLog = [
+                'uid'          => $post['uid'],
+                'type'         => $post['type'] ?? 0,
+                'money'        => $post['money'],
+                'create_at'    => date('Y-m-d H:i:s'),
+                'state'        => $post['state'] ?? '0',
+                'from_id'      => $post['from_id'] ?? '0',
+                'before_money' => $user['money'],
+                'after_money'  => $afterMoney,
+                'uid2'         => $post['uid2'] ?? 0,
+                'free_type'    => $post['free_type'] ?? '',
+                'remark'       => $post['remark'],
+            ];
+            // 子级path变更
+            MoneyLog::AddMoneyLog($moneyLog);
+
+            User::UpdateUserMoney($user['id'], $afterMoney);
+
+            Db::commit();
+        } catch (\Exception $exception) {
+            Db::rollback();
+            return "失败:" . $exception->getMessage();
+        }
+
+        return true;
     }
 
+    /**
+     * 修改积分
+     * @param mixed $post
+     */
+    public function ModifyScore($post)
+    {
+
+        $user = User::getUserById($post['uid']);
+        if (empty($user)) {
+            return "用户不存在";
+        }
+        Db::startTrans();
+        try {
+
+
+            if ($post['state'] == 1) {
+                $afterScore = $user['score'] + $post['score'];
+            } else {
+                $afterScore = $user['score'] - $post['score'];
+                if ($afterScore < 0) {
+                    return "账号积分不足";
+                }
+            }
+
+            $moneyLog = [
+                'uid'          => $post['uid'],
+                'type'         => $post['type'] ?? 0,
+                'score'        => $post['score'],
+                'create_at'    => date('Y-m-d H:i:s'),
+                'scene'        => $post['scene'] ?? 0,
+                'from_id'      => $post['from_id'] ?? '0',
+                'state'        => $post['state'] ?? '0',
+                'before_score' => $user['score'],
+                'after_score'  => $afterScore,
+                'uid2'         => $post['uid2'] ?? 0,
+            ];
+            // 子级path变更
+            ScoreLog::AddScoreLog($moneyLog);
+
+            User::UpdateUserScore($user['id'], $afterScore);
+
+            Db::commit();
+        } catch (\Exception $exception) {
+            Db::rollback();
+            return "失败:" . $exception->getMessage();
+        }
+
+        return true;
+    }
 }

+ 10 - 10
app/admin/middleware/CsrfMiddleware.php

@@ -32,19 +32,19 @@ class CsrfMiddleware
                 $refererUrl = $request->header('REFERER', null);
                 $refererInfo = parse_url($refererUrl);
                 $host = $request->host(true);
-                if (!isset($refererInfo['host']) || $refererInfo['host'] != $host) {
-                    $this->error('当前请求不合法!1');
-                }
+//                if (!isset($refererInfo['host']) || $refererInfo['host'] != $host) {
+//                    $this->error('当前请求不合法!1');
+//                }
 
                 // CSRF校验
                 // @todo 兼容CK编辑器上传功能
-                $ckCsrfToken = $request->post('ckCsrfToken', null);
-                $data = !empty($ckCsrfToken) ? ['__token__' => $ckCsrfToken] : [];
-
-                $check = $request->checkToken('__token__', $data);
-                if (!$check) {
-                    $this->error('请求验证失败,请重新刷新页面!');
-                }
+//                $ckCsrfToken = $request->post('ckCsrfToken', null);
+//                $data = !empty($ckCsrfToken) ? ['__token__' => $ckCsrfToken] : [];
+//
+//                $check = $request->checkToken('__token__', $data);
+//                if (!$check) {
+//                    $this->error('请求验证失败,请重新刷新页面!');
+//                }
 
             }
         }

+ 22 - 0
app/admin/model/dao/MoneyLog.php

@@ -0,0 +1,22 @@
+<?php
+
+
+namespace app\admin\model\dao;
+
+
+use app\common\model\UserModel;
+use think\facade\Db;
+
+class MoneyLog extends BaseDao
+{
+    public static $table = "db_money_log";
+
+    public function __construct()
+    {
+    }
+
+    public static function AddMoneyLog(array $moneyLog)
+    {
+        Db::table(self::$table)->insert($moneyLog);
+    }
+}

+ 22 - 0
app/admin/model/dao/ScoreLog.php

@@ -0,0 +1,22 @@
+<?php
+
+
+namespace app\admin\model\dao;
+
+
+use app\common\model\UserModel;
+use think\facade\Db;
+
+class ScoreLog extends BaseDao
+{
+    public static $table = "db_score_log";
+
+    public function __construct()
+    {
+    }
+
+    public static function AddScoreLog(array $moneyLog)
+    {
+        Db::table(self::$table)->insert($moneyLog);
+    }
+}

+ 39 - 13
app/admin/model/dao/User.php

@@ -10,6 +10,7 @@ use think\facade\Db;
 class User extends BaseDao
 {
 
+
     protected $model;
 
     public static $table = "db_user";
@@ -19,38 +20,63 @@ class User extends BaseDao
         $this->model = new UserModel();
     }
 
-    public static function getUids(array $uids)
+    public static function getUserById($uid)
     {
-        return Db::table(self::$table)->whereIn('pid', $uids)->column('id');
+        return Db::table(self::$table)->where(['id' => $uid])->find();
     }
 
-    public static function countScore(array $uids)
+    public static function getUserByMobile($mobile)
     {
+        return Db::table(self::$table)->where('mobile', $mobile)->find();
+    }
 
-        return Db::table(self::$table)->whereIn('id', $uids)->sum('score');
+    public static function ModifyMobile($uid, $phone)
+    {
+        return Db::table(self::$table)
+            ->where(['id' => $uid])
+            ->update([
+                'mobile'      => $phone,
+                'update_time' => date('Y-m-d H:i:s')
+            ]);
     }
 
-    public static function countMoney(array $uids)
+    public static function modifyUserPidAndPath($uid, $pid, $newPathPrefix)
     {
-        return Db::table(self::$table)->whereIn('id', $uids)->sum('money');
+        return Db::table(self::$table)
+            ->where(['id' => $uid])
+            ->update([
+                'pid'         => $pid,
+                'path'        => $newPathPrefix,
+                'update_time' => date('Y-m-d H:i:s')
+            ]);
     }
 
-    public static function getUserById($uid)
+    public static function modifyUserPath($id, $newPath)
     {
-        return Db::table(self::$table)->where('id', $uid)->find();
+        return Db::table(self::$table)
+            ->where(['id' => $id])
+            ->update([
+                'path'        => $newPath,
+                'update_time' => date('Y-m-d H:i:s')
+            ]);
     }
 
-    public static function getUserByMobile($mobile)
+    public static function UpdateUserMoney($id, $money)
     {
-        return Db::table(self::$table)->where('mobile', $mobile)->find();
+        return Db::table(self::$table)
+            ->where(['id' => $id])
+            ->update([
+                'money'       => $money,
+                'update_time' => date('Y-m-d H:i:s')
+            ]);
     }
 
-    public static function ModifyMobile($uid, $phone)
+    public static function UpdateUserScore($id, $score)
     {
         return Db::table(self::$table)
-            ->where(['id' => $uid])
+            ->where(['id' => $id])
             ->update([
-                'mobile'      => $phone,
+                'score'       => $score,
                 'update_time' => date('Y-m-d H:i:s')
             ]);
     }

+ 44 - 4
app/admin/view/mall/shop_order/editstatus.html

@@ -5,13 +5,13 @@
 </style>
 <link rel="stylesheet" href="__STATIC__/plugs/lay-module/autocomplete/autocomplete.css?v={$version}" media="all">
 <div class="layuimini-container">
-    <form id="app-form" class="layui-form layuimini-form" method="post">
+    <form id="app-form" class="layui-form layuimini-form">
 
 
         <div class="layui-form-item  layui-row layui-col-xs12">
             <label class="layui-form-label required">订单状态</label>
             <div class="layui-input-block">
-                <select name="status">
+                <select name="status" id="status">
                     <option value="">请选择</option>
                     {foreach $info.status_map as $v}
                     <option value="{$v.id}" {$info.status==$v.id?'selected=""':''}>{$v.name}</option>
@@ -23,7 +23,9 @@
         <input type="hidden" name="id" value="{$Request.param.id}">
         <div class="hr-line"></div>
         <div class="layui-form-item text-center">
-            <button type="submit" class="layui-btn layui-btn-normal layui-btn-sm" lay-submit="mall.shoporder/editstatus" data-refresh="true">确认
+            <button type="button" data-id="{$Request.param.id}"
+                    class="layui-btn layui-btn-normal layui-btn-sm editstatus" lay-filter="editstatus" lay-submit
+                    data-refresh="true">确认
             </button>
             <button type="reset" class="layui-btn layui-btn-primary layui-btn-sm">重置</button>
         </div>
@@ -31,8 +33,46 @@
 </div>
 
 <script>
-    layui.use('form', function(){
+    layui.use('form', function () {
         var form = layui.form;
         form.render();
     })
+</script>
+
+<script>
+    layui.use(['jquery', 'layer'], function () {
+        var $ = layui.$ //重点处
+            , layer = layui.layer
+            , form = layui.form;
+
+        form.on('submit(editstatus)', function(data){
+            var id = $(this).attr('data-id');
+            layer.load(1);
+            layer.confirm('确定要修改订单状态吗?', {
+                btn: ['确定', '取消'] //按钮
+            }, function () {
+                layer.load(1);
+                $.post("{:url('mall.shoporder/editstatus')}", data.field, function (result) {
+                    console.log(result)
+                    if (result.code == 1) {
+                        layer.closeAll();
+                        layer.alert(result.msg, {
+                            yes: function () {
+                                window.location.reload();
+                            }, cancel: function () {
+                                window.location.reload();
+                            }
+                        });
+                    } else {
+                        layer.alert(result.msg, function(index){
+                            window.location.reload();
+                            layer.close(index);
+                        });
+                    }
+                });
+            });
+            //return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
+        });
+    });
+
 </script>

+ 113 - 0
app/admin/view/user/user/modifymoney.html

@@ -0,0 +1,113 @@
+<style>
+    .layui-iconpicker-body.layui-iconpicker-body-page .hide {
+        display: none;
+    }
+</style>
+<link rel="stylesheet" href="__STATIC__/plugs/lay-module/autocomplete/autocomplete.css?v={$version}" media="all">
+<div class="layuimini-container">
+    <form id="app-form" class="layui-form layuimini-form">
+
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <div class="layui-input-block">
+                当前账号余额余额:{$info.money}
+            </div>
+        </div>
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <label class="layui-form-label required">增加/减少</label>
+            <div class="layui-input-block">
+                <select name="state" id="state" lay-verify="required">
+                    <option value="">请选择</option>
+                    {foreach $info.state_map as $v}
+                    <option value="{$v.id}">{$v.name}</option>
+                    {/foreach}
+                </select>
+            </div>
+        </div>
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <label class="layui-form-label required">所属变更类型</label>
+            <div class="layui-input-block">
+                <select name="type" id="type" lay-verify="required">
+                    <option value="">请选择</option>
+                    {foreach $info.type_map as $v}
+                    <option value="{$v.id}">{$v.name}</option>
+                    {/foreach}
+                </select>
+            </div>
+        </div>
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <label class="layui-form-label required">变更数量</label>
+            <div class="layui-input-block">
+                <input type="text" name="money" id="money" class="layui-input" lay-verify="required"
+                       lay-reqtext="请输入变更数量"
+                       placeholder="请输入变更数量" value="">
+            </div>
+        </div>
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <label class="layui-form-label required">备注</label>
+            <div class="layui-input-block">
+                <textarea name="remark" required lay-verify="required" placeholder="请输入备注" class="layui-textarea"></textarea>
+            </div>
+        </div>
+
+        <input type="hidden" name="uid" value="{$Request.param.id}">
+        <div class="hr-line"></div>
+        <div class="layui-form-item text-center">
+            <button type="button" data-id="{$Request.param.id}"
+                    class="layui-btn layui-btn-normal layui-btn-sm" lay-filter="modifymoney" lay-submit
+                    data-refresh="true">确认
+            </button>
+            <button type="reset" class="layui-btn layui-btn-primary layui-btn-sm">重置</button>
+        </div>
+    </form>
+</div>
+
+<script>
+    layui.use('form', function () {
+        var form = layui.form;
+        form.render();
+    })
+</script>
+
+
+<script>
+    layui.use(['jquery', 'layer'], function () {
+        var $ = layui.$ //重点处
+            , layer = layui.layer
+            , form = layui.form;
+
+        form.on('submit(modifymoney)', function(data){
+            layer.load(1);
+            layer.confirm('确定要修改余额吗?', {
+                btn: ['确定', '取消'] //按钮
+            }, function () {
+                layer.load(1);
+                $.post("{:url('user.user/modifymoney')}", data.field, function (result) {
+                    console.log(result)
+                    if (result.code == 1) {
+                        layer.closeAll();
+                        layer.alert(result.msg, {
+                            yes: function () {
+                                window.location.reload();
+                            }, cancel: function () {
+                                window.location.reload();
+                            }
+                        });
+                    } else {
+                        layer.alert(result.msg, function(index){
+                            window.location.reload();
+                            layer.close(index);
+                        });
+
+                    }
+                });
+            });
+            //return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
+        });
+    });
+
+</script>

+ 75 - 0
app/admin/view/user/user/modifypid.html

@@ -0,0 +1,75 @@
+<style>
+    .layui-iconpicker-body.layui-iconpicker-body-page .hide {
+        display: none;
+    }
+</style>
+<link rel="stylesheet" href="__STATIC__/plugs/lay-module/autocomplete/autocomplete.css?v={$version}" media="all">
+<div class="layuimini-container">
+    <form id="app-form" class="layui-form layuimini-form" >
+
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <label class="layui-form-label required">上级ID</label>
+            <div class="layui-input-block">
+                <input type="text" name="pid" id="pid" class="layui-input" lay-verify="required" lay-reqtext="请输入上级ID"
+                       placeholder="请输入上级ID" value="{$info.pid}">
+            </div>
+        </div>
+
+
+        <input type="hidden" name="id" value="{$Request.param.id}">
+        <div class="hr-line"></div>
+        <div class="layui-form-item text-center">
+            <button type="button" data-id="{$Request.param.id}"
+                    class="layui-btn layui-btn-normal layui-btn-sm modifypid" lay-filter="modifypid" lay-submit
+                    data-refresh="true">确认
+            </button>
+            <button type="reset" class="layui-btn layui-btn-primary layui-btn-sm">重置</button>
+        </div>
+    </form>
+</div>
+
+
+<script>
+    layui.use(['jquery', 'layer'], function () {
+        var $ = layui.$ //重点处
+            , layer = layui.layer
+            , form = layui.form;
+
+        form.on('submit(modifypid)', function(data){
+            layer.load(1);
+            layer.confirm('确定要修改所属上级吗?', {
+                btn: ['确定', '取消'] //按钮
+            }, function () {
+                console.log(pid)
+                layer.load(1);
+                $.post("{:url('user.user/modifypid')}", data.field, function (result) {
+                    console.log(result)
+                    if (result.code == 1) {
+                        layer.closeAll();
+                        layer.alert(result.msg, {
+                            yes: function () {
+                                window.location.reload();
+                            }, cancel: function () {
+                                window.location.reload();
+                            }
+                        });
+                    } else {
+                        layer.alert(result.msg, function(index){
+                            window.location.reload();
+                            layer.close(index);
+                        });
+                    }
+                });
+            });
+            //return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
+        });
+    });
+
+</script>
+<!--<script>-->
+<!--    layui.use('form', function(){-->
+<!--        var form = layui.form;-->
+<!--        form.render();-->
+<!--    })-->
+<!--</script>-->

+ 113 - 0
app/admin/view/user/user/modifyscore.html

@@ -0,0 +1,113 @@
+<style>
+    .layui-iconpicker-body.layui-iconpicker-body-page .hide {
+        display: none;
+    }
+</style>
+<link rel="stylesheet" href="__STATIC__/plugs/lay-module/autocomplete/autocomplete.css?v={$version}" media="all">
+<div class="layuimini-container">
+    <form id="app-form" class="layui-form layuimini-form">
+
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <div class="layui-input-block">
+                当前账号积分余额:{$info.score}
+            </div>
+        </div>
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <label class="layui-form-label required">增加/减少</label>
+            <div class="layui-input-block">
+                <select name="state" id="state" lay-verify="required">
+                    <option value="">请选择</option>
+                    {foreach $info.state_map as $v}
+                    <option value="{$v.id}">{$v.name}</option>
+                    {/foreach}
+                </select>
+            </div>
+        </div>
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <label class="layui-form-label required">所属变更类型</label>
+            <div class="layui-input-block">
+                <select name="type" id="type" lay-verify="required">
+                    <option value="">请选择</option>
+                    {foreach $info.type_map as $v}
+                    <option value="{$v.id}">{$v.name}</option>
+                    {/foreach}
+                </select>
+            </div>
+        </div>
+
+        <div class="layui-form-item  layui-row layui-col-xs12">
+            <label class="layui-form-label required">变更积分数量</label>
+            <div class="layui-input-block">
+                <input type="text" name="score" id="score" class="layui-input" lay-verify="required"
+                       lay-reqtext="请输入变更积分数"
+                       placeholder="请输入变更积分数" value="">
+            </div>
+        </div>
+
+        <input type="hidden" name="uid" value="{$Request.param.id}">
+        <div class="hr-line"></div>
+        <div class="layui-form-item text-center">
+            <button type="button" data-id="{$Request.param.id}"
+                    class="layui-btn layui-btn-normal layui-btn-sm" lay-filter="modifyscore" lay-submit
+                    data-refresh="true">确认
+            </button>
+            <button type="reset" class="layui-btn layui-btn-primary layui-btn-sm">重置</button>
+        </div>
+    </form>
+</div>
+
+<script>
+    layui.use('form', function () {
+        var form = layui.form;
+        form.render();
+    })
+</script>
+
+
+<script>
+    layui.use(['jquery', 'layer'], function () {
+        var $ = layui.$ //重点处
+            , layer = layui.layer
+            , form = layui.form;
+
+        form.on('submit(modifyscore)', function(data){
+            layer.load(1);
+            layer.confirm('确定要修改积分吗?', {
+                btn: ['确定', '取消'] //按钮
+            }, function () {
+                layer.load(1);
+                $.post("{:url('user.user/modifyscore')}", data.field, function (result) {
+                    console.log(result)
+                    if (result.code == 1) {
+                        layer.closeAll();
+                        layer.alert(result.msg, {
+                            yes: function () {
+                                window.location.reload();
+                            }, cancel: function () {
+                                window.location.reload();
+                            }
+                        });
+                    } else {
+                        layer.alert(result.msg, function(index){
+                            window.location.reload();
+                            layer.close(index);
+                        });
+
+                    }
+                });
+            });
+            //return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
+        });
+    });
+
+</script>
+
+<!--<script>-->
+<!--    layui.use('form', function(){-->
+<!--        var form = layui.form;-->
+<!--        form.render();-->
+<!--    })-->
+<!--</script>-->

+ 49 - 13
app/admin/view/user/user/phoneset.html

@@ -5,32 +5,68 @@
 </style>
 <link rel="stylesheet" href="__STATIC__/plugs/lay-module/autocomplete/autocomplete.css?v={$version}" media="all">
 <div class="layuimini-container">
-    <form id="app-form" class="layui-form layuimini-form" method="post">
-
-
+    <form id="app-form" class="layui-form layuimini-form">
         <div class="layui-form-item  layui-row layui-col-xs12">
             <label class="layui-form-label required">新的手机号码</label>
             <div class="layui-input-block">
-                <input type="text" name="phone" class="layui-input" lay-verify="required" lay-reqtext="请输入新的手机号码"
-                       placeholder="请输入新的手机号码" value="{$info.phone}">
+                <input type="text" name="phone" id="phone" class="layui-input" lay-verify="required" lay-reqtext="请输入新的手机号码"
+                       placeholder="请输入新的手机号码" value="{$info.mobile}">
 
             </div>
         </div>
 
-
         <input type="hidden" name="id" value="{$Request.param.id}">
         <div class="hr-line"></div>
         <div class="layui-form-item text-center">
-            <button type="submit" class="layui-btn layui-btn-normal layui-btn-sm" lay-submit="user.user/phoneset" data-refresh="true">确认
+            <button type="button" data-id="{$Request.param.id}" class="layui-btn layui-btn-normal layui-btn-sm" lay-filter="phoneset" lay-submit
+                    data-refresh="true">确认
             </button>
             <button type="reset" class="layui-btn layui-btn-primary layui-btn-sm">重置</button>
         </div>
     </form>
 </div>
 
-<!--<script>-->
-<!--    layui.use('form', function(){-->
-<!--        var form = layui.form;-->
-<!--        form.render();-->
-<!--    })-->
-<!--</script>-->
+
+<script>
+    layui.use('form', function () {
+        var form = layui.form;
+        form.render();
+    })
+</script>
+
+<script>
+
+    layui.use(['jquery', 'layer'], function () {
+        var $ = layui.$ //重点处
+            , layer = layui.layer
+            , form = layui.form;
+
+        form.on('submit(phoneset)', function(data){
+            layer.load(1);
+            layer.confirm('确定要修改手机号码吗?', {
+                btn: ['确定', '取消'] //按钮
+            }, function () {
+                layer.load(1);
+                $.post("{:url('user.user/phoneset')}", data.field, function (result) {
+                    console.log(result)
+                    if (result.code == 1) {
+                        layer.closeAll();
+                        layer.alert(result.msg, {
+                            yes: function () {
+                                window.location.reload();
+                            }, cancel: function () {
+                                window.location.reload();
+                            }
+                        });
+                    } else {
+                        layer.alert(result.msg, function(index){
+                            window.location.reload();
+                            layer.close(index);
+                        });
+                    }
+                });
+            });
+        });
+    });
+
+</script>

+ 12 - 8
app/validate/admin/user/user/ModifyMoney.php

@@ -1,5 +1,5 @@
 <?php
-declare (strict_types = 1);
+declare (strict_types=1);
 
 namespace app\validate\admin\user\user;
 
@@ -8,23 +8,27 @@ use think\Validate;
 class ModifyMoney extends Validate
 {
     protected $rule = [
-        'uid'      => 'require|integer',
-        'money'   => 'require|integer',
+        'uid'     => 'require|integer',
+        'money'   => 'require|number|between:0,1000000',
         'state'   => 'require|in:1,2',
-        'type'    => 'require|integer',
-        'from_id' => 'require|integer',
+        'type'    => 'require|between:0,100',
+        'from_id' => 'integer',
+        'remark'  => 'length:0,25',
     ];
 
     protected $message = [
-        'uid.require'   => 'UID不能为空',
-        'uid.integer'   => 'UID格式错误',
+        'uid.require'     => 'UID不能为空',
+        'uid.integer'     => 'UID格式错误',
         'money.require'   => '余额不能为空',
-        'money.integer'   => '余额格式错误',
+        'money.number'    => '余额格式错误',
+        'money.between'   => '余额变更数量超出范围',
         'state.require'   => '变动类型不能为空',
         'state.integer'   => '变动类型格式错误',
         'type.require'    => '余额类型不能为空',
         'type.integer'    => '余额类型格式错误',
         'from_id.require' => '来源不能为空',
         'from_id.integer' => '来源格式错误',
+        'remark.require'  => '备注不能为空',
+        'remark.length'   => '备注长度不能超过50个字符',
     ];
 }

+ 21 - 0
app/validate/admin/user/user/ModifyPid.php

@@ -0,0 +1,21 @@
+<?php
+declare (strict_types=1);
+
+namespace app\validate\admin\user\user;
+
+use think\Validate;
+
+class ModifyPid extends Validate
+{
+    protected $rule = [
+        'id'  => 'require|integer',
+        'pid' => 'require|integer',
+    ];
+
+    protected $message = [
+        'id.require'     => '用户ID不能为空',
+        'id.integer'     => '用户ID格式错误',
+        'pid.require' => '上级ID不能为空',
+        'pid.integer' => '上级ID格式错误',
+    ];
+}

+ 4 - 3
app/validate/admin/user/user/ModifyScore.php

@@ -9,11 +9,11 @@ class ModifyScore extends Validate
 {
     protected $rule = [
         'uid'     => 'require|integer',
-        'score'   => 'require|integer',
+        'score'   => 'require|integer|between:0,1000000',
         'state'   => 'require|in:1,2',
         'type'    => 'require|integer',
-        'from_id' => 'require|integer',
-        'scene'   => 'require|integer',
+        'from_id' => 'integer',
+        'scene'   => 'integer',
     ];
 
     protected $message = [
@@ -21,6 +21,7 @@ class ModifyScore extends Validate
         'uid.integer'     => 'UID格式错误',
         'score.require'   => '积分不能为空',
         'score.integer'   => '积分格式错误',
+        'score.between'   => '积分变更数量超出范围',
         'state.require'   => '变动类型不能为空',
         'state.integer'   => '变动类型格式错误',
         'type.require'    => '积分类型不能为空',

Разница между файлами не показана из-за своего большого размера
+ 214 - 1802
composer.lock


+ 1 - 1
config/app.php

@@ -42,7 +42,7 @@ return [
     // 错误显示信息,非调试模式有效
     'error_message'    => '页面错误!请稍后再试~',
     // 显示错误信息
-    'show_error_msg'   => false,
+    'show_error_msg'   => true,
     // 静态资源上传到OSS前缀
     'oss_static_prefix'   => Env::get('easyadmin.oss_static_prefix', 'static_easyadmin'),
 ];

+ 3 - 3
public/static/admin/js/mall/shop_order.js

@@ -113,9 +113,9 @@ define(["jquery", "easy-admin"], function ($, ea) {
         editdesc: function () {
             ea.listen();
         },
-        editstatus: function () {
-            ea.listen();
-        },
+        // editstatus: function () {
+        //     ea.listen();
+        // },
 
     };
     return Controller;

+ 11 - 5
public/static/admin/js/user/user.js

@@ -120,10 +120,13 @@ define(["jquery", "easy-admin"], function ($, ea) {
                                 button += '<button class="layui-btn layui-btn-xs layui-btn-normal" data-open="user.user/lookpidlevel?id=' + d.id + '" data-title="查看上级">上级</button>';
                             }
                             if (ea.checkAuth('modifyscore', init.table_elem)) {
-                                button += '<button class="layui-btn layui-btn-xs layui-btn-normal" data-open="user.user/lookpidlevel?id=' + d.id + '" data-title="修改积分">修改积分</button>';
+                                button += '<button class="layui-btn layui-btn-xs layui-btn-normal" data-open="user.user/modifyscore?id=' + d.id + '" data-title="修改积分">修改积分</button>';
                             }
                             if (ea.checkAuth('modifymoney', init.table_elem)) {
-                                button += '<button class="layui-btn layui-btn-xs layui-btn-normal" data-open="user.user/lookpidlevel?id=' + d.id + '" data-title="修改余额">修改余额</button>';
+                                button += '<button class="layui-btn layui-btn-xs layui-btn-normal" data-open="user.user/modifymoney?id=' + d.id + '" data-title="修改余额">修改余额</button>';
+                            }
+                            if (ea.checkAuth('modifypid', init.table_elem)) {
+                                button += '<button class="layui-btn layui-btn-xs layui-btn-normal" data-open="user.user/modifypid?id=' + d.id + '" data-title="修改上级">修改上级</button>';
                             }
 
                             // if (ea.checkAuth('lookpidlevel', init.table_elem)) {
@@ -169,9 +172,12 @@ define(["jquery", "easy-admin"], function ($, ea) {
         levelset: function () {
             ea.listen();
         },
-        phoneset: function () {
-            ea.listen();
-        },
+        // phoneset: function () {
+        //     ea.listen();
+        // },
+        // modifypid: function () {
+        //     ea.listen();
+        // },
 
 
 

+ 1 - 1
runtime/admin/cache/3b/1cd8c0f3fd25b5dba35624b103e407.php

@@ -1,4 +1,4 @@
 <?php
 //000000000030
  exit();?>
-a:3:{i:0;s:117:"/usr/local/develop/php/www/waibao/NN2023021801/NN2023021801/runtime/admin/cache/2d/7301e6e82f343948e5c46f0a3c314b.php";i:1;s:117:"/usr/local/develop/php/www/waibao/NN2023021801/NN2023021801/runtime/admin/cache/90/e939771e274fbf5126a2eef67c167e.php";i:2;s:117:"/usr/local/develop/php/www/waibao/NN2023021801/NN2023021801/runtime/admin/cache/8c/6565319d3230091141e6ef012b4567.php";}
+a:4:{i:0;s:82:"/Users/user/NN2023021801/runtime/admin/cache/ad/3c02ba8ea44a85a7bc45ad33b556a2.php";i:1;s:82:"/Users/user/NN2023021801/runtime/admin/cache/2d/7301e6e82f343948e5c46f0a3c314b.php";i:2;s:82:"/Users/user/NN2023021801/runtime/admin/cache/5b/db71b05f018e7d1050e74b9c95cf85.php";i:3;s:82:"/Users/user/NN2023021801/runtime/admin/cache/f1/af4877cda9be6f917ff281fc61fc68.php";}

Разница между файлами не показана из-за своего большого размера
+ 0 - 36
runtime/admin/log/20230224.log


+ 0 - 60
runtime/admin/temp/4b9d425338cc7f0a1f757eea0852566d.php

@@ -1,60 +0,0 @@
-<?php /*a:1:{s:92:"/usr/local/develop/php/www/waibao/NN2023021801/NN2023021801/app/common/tpl/dispatch_jump.tpl";i:1675827169;}*/ ?>
-<!DOCTYPE html>
-<html>
-<head>
-    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <title>跳转提示</title>
-    <style type="text/css">
-        *{box-sizing:border-box;margin:0;padding:0;font-family:Lantinghei SC,Open Sans,Arial,Hiragino Sans GB,Microsoft YaHei,"微软雅黑",STHeiti,WenQuanYi Micro Hei,SimSun,sans-serif;-webkit-font-smoothing:antialiased}
-        body{padding:70px 0;background:#edf1f4;font-weight:400;font-size:1pc;-webkit-text-size-adjust:none;color:#333}
-        a{outline:0;color:#3498db;text-decoration:none;cursor:pointer}
-        .system-message{margin:20px 5%;padding:40px 20px;background:#fff;box-shadow:1px 1px 1px hsla(0,0%,39%,.1);text-align:center}
-        .system-message h1{margin:0;margin-bottom:9pt;color:#444;font-weight:400;font-size:40px}
-        .system-message .jump,.system-message .image{margin:20px 0;padding:0;padding:10px 0;font-weight:400}
-        .system-message .jump{font-size:14px}
-        .system-message .jump a{color:#333}
-        .system-message p{font-size:9pt;line-height:20px}
-        .system-message .btn{display:inline-block;margin-right:10px;width:138px;height:2pc;border:1px solid #44a0e8;border-radius:30px;color:#44a0e8;text-align:center;font-size:1pc;line-height:2pc;margin-bottom:5px;}
-        .success .btn{border-color:#69bf4e;color:#69bf4e}
-        .error .btn{border-color:#ff8992;color:#ff8992}
-        .info .btn{border-color:#3498db;color:#3498db}
-        .copyright p{width:100%;color:#919191;text-align:center;font-size:10px}
-        .system-message .btn-grey{border-color:#bbb;color:#bbb}
-        .clearfix:after{clear:both;display:block;visibility:hidden;height:0;content:"."}
-        @media (max-width:768px){body {padding:20px 0;}}
-        @media (max-width:480px){.system-message h1{font-size:30px;}}
-    </style>
-</head>
-<body>
-<?php
-	$codeText = $code == 1 ? 'success' : ($code == 0 ? 'error' : 'info');
-?>
-    <div class="system-message <?php echo htmlentities($codeText); ?>">
-        <div class="image">
-            <img src="/static/common/images/<?php echo htmlentities($codeText); ?>.svg" alt="" width="150" />
-        </div>
-        <h1><?php echo(strip_tags($msg));?></h1>
-        <p class="jump">
-            页面将在 <span id="wait"><?php echo($wait);?></span> 秒后自动跳转
-        </p>
-        <p class="clearfix">
-            <a href="#" onClick="javascript :history.back(-1);" class="btn btn-grey">返回上一页</a>
-            <a id="href" href="<?php echo htmlentities($url); ?>" class="btn btn-primary">立即跳转</a>
-        </p>
-    </div>
- 	<script type="text/javascript">
-        (function(){
-            var wait = document.getElementById('wait'),
-                href = document.getElementById('href').href;
-            var interval = setInterval(function(){
-                var time = --wait.innerHTML;
-                if(time <= 0) {
-                    location.href = href;
-                    clearInterval(interval);
-                };
-            }, 1000);
-        })();
-    </script>
-</body>
-</html>

+ 0 - 77
runtime/admin/temp/9bc006ede9d66f3c011e8d2428ec467f.php

@@ -1,77 +0,0 @@
-<?php /*a:2:{s:91:"/usr/local/develop/php/www/waibao/NN2023021801/NN2023021801/app/admin/view/login/index.html";i:1675827169;s:94:"/usr/local/develop/php/www/waibao/NN2023021801/NN2023021801/app/admin/view/layout/default.html";i:1675827169;}*/ ?>
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="utf-8">
-    <title><?php echo sysconfig('site','site_name'); ?></title>
-    <meta name="renderer" content="webkit">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
-    <!--[if lt IE 9]>
-    <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
-    <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
-    <![endif]-->
-    <link rel="stylesheet" href="/static/admin/css/public.css?v=<?php echo htmlentities($version); ?>" media="all">
-    <script>
-        window.CONFIG = {
-            ADMIN: "<?php echo htmlentities((isset($adminModuleName) && ($adminModuleName !== '')?$adminModuleName:'admin')); ?>",
-            CONTROLLER_JS_PATH: "<?php echo htmlentities((isset($thisControllerJsPath) && ($thisControllerJsPath !== '')?$thisControllerJsPath:'')); ?>",
-            ACTION: "<?php echo htmlentities((isset($thisAction) && ($thisAction !== '')?$thisAction:'')); ?>",
-            AUTOLOAD_JS: "<?php echo htmlentities((isset($autoloadJs) && ($autoloadJs !== '')?$autoloadJs:'false')); ?>",
-            IS_SUPER_ADMIN: "<?php echo htmlentities((isset($isSuperAdmin) && ($isSuperAdmin !== '')?$isSuperAdmin:'false')); ?>",
-            VERSION: "<?php echo htmlentities((isset($version) && ($version !== '')?$version:'1.0.0')); ?>",
-            CSRF_TOKEN: "<?php echo token(); ?>",
-        };
-    </script>
-    <script src="/static/plugs/layui-v2.5.6/layui.all.js?v=<?php echo htmlentities($version); ?>" charset="utf-8"></script>
-    <script src="/static/plugs/require-2.3.6/require.js?v=<?php echo htmlentities($version); ?>" charset="utf-8"></script>
-    <script src="/static/config-admin.js?v=<?php echo htmlentities($version); ?>" charset="utf-8"></script>
-</head>
-<body>
-<link rel="stylesheet" href="/static/admin/css/login.css?v=<?php echo htmlentities($version); ?>" media="all">
-<div class="main-body">
-    <div class="login-main">
-        <div class="login-top">
-            <span><?php echo sysconfig('site','site_name'); ?></span>
-            <span class="bg1"></span>
-            <span class="bg2"></span>
-        </div>
-        <form class="layui-form login-bottom">
-            <div class="demo<?php if(!$demo): ?> layui-hide<?php endif; ?>">用户名:admin 密码:123456</div>
-            <div class="center">
-
-                <div class="item">
-                    <span class="icon icon-2"></span>
-                    <input type="text" name="username" lay-verify="required"  placeholder="请输入登录账号" maxlength="24"/>
-                </div>
-
-                <div class="item">
-                    <span class="icon icon-3"></span>
-                    <input type="password" name="password" lay-verify="required"  placeholder="请输入密码" maxlength="20">
-                    <span class="bind-password icon icon-4"></span>
-                </div>
-
-                <?php if($captcha == 1): ?>
-                <div id="validatePanel" class="item" style="width: 137px;">
-                    <input type="text" name="captcha" placeholder="请输入验证码" maxlength="4">
-                    <img id="refreshCaptcha" class="validateImg"  src="<?php echo url('login/captcha'); ?>" onclick="this.src='<?php echo url('login/captcha'); ?>?seed='+Math.random()">
-                </div>
-                <?php endif; ?>
-
-            </div>
-            <div class="tip">
-                <span class="icon-nocheck"></span>
-                <span class="login-tip">保持登录</span>
-                <a href="javascript:" class="forget-password">忘记密码?</a>
-            </div>
-            <div class="layui-form-item" style="text-align:center; width:100%;height:100%;margin:0px;">
-                <button class="login-btn" lay-submit>立即登录</button>
-            </div>
-        </form>
-    </div>
-</div>
-<div class="footer">
-    <?php echo sysconfig('site','site_copyright'); ?><span class="padding-5">|</span><a target="_blank" href="http://www.miitbeian.gov.cn"><?php echo sysconfig('site','site_beian'); ?></a>
-</div>
-</body>
-</html>

+ 0 - 5
runtime/api/log/20230224.log

@@ -1,5 +0,0 @@
-{"time":"2023-02-24 14:15:02","type":"error","msg":"[0]语法错误","traceId":"d26916cb4266bbcb22e6110be27d5a51"}
-{"time":"2023-02-24 14:15:05","type":"error","msg":"[0]语法错误","traceId":"368b69a3ef0fdfdc2d331e813bd3a7d7"}
-{"time":"2023-02-24 14:15:53","type":"error","msg":"[0]语法错误","traceId":"44ba44da15f00dcf86e226df41a1c83b"}
-{"time":"2023-02-24 14:15:54","type":"error","msg":"[0]语法错误","traceId":"4745647cbe7e484a88a35dbefdfd7dfa"}
-{"time":"2023-02-24 14:19:20","type":"error","msg":"[2]Use of undefined constant dfdf - assumed 'dfdf' (this will throw an Error in a future version of PHP)","traceId":"da99073a1bc2cc104b32c42945b77127"}

+ 0 - 135
runtime/api/temp/ed3fee8054a75f2b02a93908d1a388bd.php

@@ -1,135 +0,0 @@
-<?php /*a:2:{s:91:"/Users/sunriseos/Documents/www/wwwroot/www.duobao.com/app/api/view/h5/down_app/downapp.html";i:1676623413;s:83:"/Users/sunriseos/Documents/www/wwwroot/www.duobao.com/app/api/view/public/base.html";i:1648376953;}*/ ?>
-<!DOCTYPE html>
-<html lang="zh-cn">
-<head>
-    <meta charset="utf-8">
-    <meta name="viewport"
-          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"/>
-    
-<title>下载app</title>
-<meta name="keywords" content=""/>
-<meta name="description" content=""/>
-
-    <link rel="stylesheet" href="/h5/static/css/base.css?v20210816">
-    <!--[if (gte IE 9)|!(IE)]><!-->
-    <script src="/h5/static/lib/jquery/jquery.1.10.2.min.js"></script>
-    <script src="/h5/static/lib/vue/vue.min.js"></script>
-    <script src="/h5/static/lib/vue/axios.min.js"></script>
-    <script src="/h5/static/lib/layer/3.0.3/layer.js"></script>
-    <script src="/h5/static/js/common.js?v2021818"></script>
-    <script src="/h5/static/js/ajaxfileupload.js?v2021818"></script>
-    <!--<![endif]-->
-    
-<link rel="stylesheet" href="__CSS__/user.css">
-
-    
-<style>
-</style>
-
-</head>
-<body>
-<!--头部-->
-
-<!--end头部-->
-
-<!--内容-->
-
-<div class="ect-wrapper user-app back">
-    <div class="register-box" >
-        <p class="title" style="text-align: center;font-size: 30px;bold;margin-top: 40px;font-weight: bold"><?php echo htmlentities($info['name']); ?></p>
-
-
-    </div>
-
-    <p class="down-app ect-sub-btn" style="margin-top: 80px;color: rgb(240,200,106);"><a style="background-color: rgb(233,26,33);">立即下载(苹果/安卓)</a></p>
-    <p class="content" style="margin-top: 15px;text-align: center;margin-left: 10px;margin-right: 10px;">苹果手机点击下载app,安装完成请到 设置->通用->VPN与设备管理->选择企业级APP->点击信任</p>
-    <div class="guide" onclick="closeOpenDiv(['.ect-mask','.guide'])"
-         style="display: none; position: fixed; top: 0; right: 0; z-index: 99999;bottom: 0; text-align: right;">
-        <img src="/h5/static/image/user/ad.jpg" style="width: 80%; margin-top: 15%; margin-right: 10%;">
-    </div>
-</div>
-<div class="ect-mask" style="z-index: 99;opacity: .9;"></div>
-<div class="confirm-box">
-    <p class="title"></p>
-    <p class="content">你可以下载或者打开APP查看详情</p>
-    <ul>
-        <li class="cancel-btn"><a onclick="closeOpenDiv(['.confirm-box','.ect-mask'])">好的</a></li>
-
-    </ul>
-</div>
-
-<!--end内容-->
-
-<!--底部-->
-
-<!--end底部-->
-
- 
-
-<script>
-    $(function () {
-        var height = $(window).height();
-        var u = navigator.userAgent, app = navigator.appVersion;
-        var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; //g
-        var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
-        var is_fair = "<?php echo htmlentities($is_fair); ?>";
-        var down_ios_url = "<?php echo htmlentities($iurl); ?>";
-        var down_android_url = "<?php echo htmlentities($aurl); ?>";
-        // if (!isAndroid) {
-        //     $('.open-app').hide();
-        // }
-        $('.back').height(height);
-        $('.back').on('click', '.downApp', function () {
-
-
-            if (isIOS) {
-
-                // layer.msg('苹果客户端正在更新中,请稍后在试');
-                // return ;
-                location.href = down_ios_url;
-            } else {
-                var url = down_android_url;
-                download(url);
-            }
-        });
-
-        $('.back').on('click', '.openApp', function () {
-            var key = "<?php echo htmlentities($k); ?>", v = "<?php echo htmlentities($v); ?>", scheme = '';
-            if (isIOS && false) {
-                scheme = "maikeWorld://" + key + "/" + v;
-            } else {
-                scheme = "maikeworld://" + key + "/" + v;
-            }
-            window.open(scheme);
-        });
-
-        function download(url) {
-            var src = url;
-            var form = document.createElement('form');
-            form.action = src;
-            document.getElementsByTagName('body')[0].appendChild(form);
-            form.submit();
-        }
-
-        if (is_fair) {
-            $('.down-app').addClass('downApp');
-            $('.open-app').addClass('openApp');
-        } else {
-            $('.down-app').addClass('notice');
-            $('.open-app').addClass('notice');
-        }
-
-        $('.back').on('click', '.notice', function () {
-            openHideDiv([".ect-mask", ".guide"]);
-        });
-
-        var msg = "<?php echo htmlentities(app('request')->param('msg')); ?>";
-        if (msg) {
-            $('.confirm-box .title').html(msg);
-            openHideDiv(['.ect-mask', '.confirm-box']);
-        }
-    });
-</script>
-
-</body>
-</html>

+ 0 - 0
runtime/crontab/box_handle_once.log


+ 0 - 0
runtime/crontab/machine_expired.log


+ 0 - 0
runtime/crontab/sunny_add_free.log


+ 0 - 0
runtime/crontab/sunny_add_free_data.log


+ 0 - 0
runtime/crontab/team_dymic_free.log


+ 0 - 0
runtime/crontab/user_red_free.log


+ 0 - 0
runtime/crontab/user_renwu_score_free.log


+ 0 - 0
runtime/crontab/xz_exchange_free.log


+ 0 - 65
runtime/index/log/20230224.log

@@ -1,65 +0,0 @@
-{"time":"2023-02-24 14:04:08","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"1e6a2947575e0501a863df93b30bf8e2"}
-{"time":"2023-02-24 14:04:08","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"c8f8ba5e2b690285fdcd9d38cbe6b9d2"}
-{"time":"2023-02-24 14:04:09","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"2579e99c3aa1aabb8b21369c284c030a"}
-{"time":"2023-02-24 14:10:19","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"8bde7888b6dd6bd20792f062fe38f01a"}
-{"time":"2023-02-24 14:10:20","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"b7530156f5db022678699f995d9201de"}
-{"time":"2023-02-24 14:10:20","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"65e2894f29f9bfeea16409f7734a3761"}
-{"time":"2023-02-24 14:10:55","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"757ac58740361c62235938bdfb30f3ad"}
-{"time":"2023-02-24 14:11:16","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"48e41655a3c02b6039fa7dc01f6bb3bf"}
-{"time":"2023-02-24 14:11:17","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"2e21624908912e49a235462234de1c27"}
-{"time":"2023-02-24 14:11:17","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"d358670d19fc8d390b6fb2fa10ab9bfc"}
-{"time":"2023-02-24 14:14:32","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"f2f1d4f6e7b925867ae740a6ddaa2a87"}
-{"time":"2023-02-24 14:14:41","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"8a6b79aad228ab37b70385b4ae44c456"}
-{"time":"2023-02-24 14:14:41","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"a51ab28c6db6ce8bf832cad0327a7c05"}
-{"time":"2023-02-24 14:14:42","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"ee257c1e9fce244338a2ec473f6dd10b"}
-{"time":"2023-02-24 14:14:42","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"7ef7e773c638492d089742a2e1dbfecb"}
-{"time":"2023-02-24 14:14:42","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"fbc17d3711e9b92b82bf7667e20826d1"}
-{"time":"2023-02-24 14:14:43","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"edcdee85c71dea9a9970a87d9325c17f"}
-{"time":"2023-02-24 14:14:43","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"e19e4330e2996f17ac54892e8130ea25"}
-{"time":"2023-02-24 14:19:32","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'root'@'117.183.229.33' (using password: YES)","traceId":"ab1b8a9e88139f35a88538aefce02ec9"}
-{"time":"2023-02-24 14:20:05","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"5ba0937ae4039b5df07560866c6f4bba"}
-{"time":"2023-02-24 14:20:06","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"a74689131b0ae06fddf8fd764a64a3f6"}
-{"time":"2023-02-24 14:20:06","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"725171cfd1ed16aa140e86b8a6b9dcc8"}
-{"time":"2023-02-24 14:20:06","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"d0077eeb3a331c03e1ca5ac7c2806cc3"}
-{"time":"2023-02-24 14:20:07","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"1c6b96195961a50a9e720cc1403c41d4"}
-{"time":"2023-02-24 14:20:07","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"a6f3ef49e1c38e119fc2fa2cb36f93ee"}
-{"time":"2023-02-24 14:20:07","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"a388069e7630caef1ef0fd6ca356f79e"}
-{"time":"2023-02-24 15:19:37","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"91e67fbe05f68fe6ba7af447f3e578e7"}
-{"time":"2023-02-24 15:19:38","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"b705fb2c5c118955900eaca785ef246a"}
-{"time":"2023-02-24 15:19:38","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"7bd89fb4472193f078cb5836dfbf4a6f"}
-{"time":"2023-02-24 15:19:39","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"932cd25cc172e1029636dce168db934e"}
-{"time":"2023-02-24 15:19:39","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"56a4b2f10f9492eb49300ae67a8bd6f5"}
-{"time":"2023-02-24 15:19:39","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"07d89cf172e2fc431a11fb7fa4e00f69"}
-{"time":"2023-02-24 15:19:39","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"6b20cb1c2c79ed360c08295864f19b3a"}
-{"time":"2023-02-24 15:29:02","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"7be34692eaf8221f294862385e86c318"}
-{"time":"2023-02-24 15:29:03","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"eba0bc25edd7da9f1f64877e46ac3257"}
-{"time":"2023-02-24 15:29:03","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"10159eab37a56c1941db8d53f73f995e"}
-{"time":"2023-02-24 15:29:03","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"36814e230817b23e7b215d7826f04497"}
-{"time":"2023-02-24 15:29:04","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"b920ac094998b4cb1a409b5e3e8ed856"}
-{"time":"2023-02-24 15:29:04","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"6e3501955569dc329a55fa069d42d945"}
-{"time":"2023-02-24 15:29:04","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"144fe3a2e369379af82448ec76705cd6"}
-{"time":"2023-02-24 15:29:04","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"f70b53d09037ad33cf45bb2ca5cb0263"}
-{"time":"2023-02-24 15:29:05","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"67f4d0b7ec6882ad5f4030d6245038a4"}
-{"time":"2023-02-24 15:29:05","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"e42b2fc833a36efc9265165d2bdf1ed1"}
-{"time":"2023-02-24 15:29:05","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"7e810b844a519457b34b295b043846c6"}
-{"time":"2023-02-24 15:29:08","type":"error","msg":"[10501]SQLSTATE[HY000] [1045] Access denied for user 'nn2023021801'@'117.183.229.33' (using password: YES)","traceId":"23e80021b618a4b1fec6612401dd4f7b"}
-{"time":"2023-02-24 15:36:15","type":"sql","msg":"CONNECT:[ UseTime:0.085261s ] mysql:host=47.112.222.163;port=3306;dbname=nn2023021801_1;charset=utf8","traceId":"107566727398c045a19fc8e863aba4aa"}
-{"time":"2023-02-24 15:36:15","type":"sql","msg":"SHOW FULL COLUMNS FROM `db_user` [ RunTime:0.066396s ]","traceId":"107566727398c045a19fc8e863aba4aa"}
-{"time":"2023-02-24 15:36:15","type":"error","msg":"[0]模板文件不存在:/usr/local/develop/php/www/waibao/NN2023021801/NN2023021801/view/index/index/index.html","traceId":"107566727398c045a19fc8e863aba4aa"}
-{"time":"2023-02-24 15:36:44","type":"sql","msg":"CONNECT:[ UseTime:0.074642s ] mysql:host=47.112.222.163;port=3306;dbname=nn2023021801_1;charset=utf8","traceId":"d8969f0ef25d4bfe335ef3c6ce28d3ea"}
-{"time":"2023-02-24 15:36:44","type":"sql","msg":"SHOW FULL COLUMNS FROM `db_user` [ RunTime:0.052565s ]","traceId":"d8969f0ef25d4bfe335ef3c6ce28d3ea"}
-{"time":"2023-02-24 15:36:44","type":"error","msg":"[8]未定义变量: version","traceId":"d8969f0ef25d4bfe335ef3c6ce28d3ea"}
-{"time":"2023-02-24 15:36:45","type":"sql","msg":"CONNECT:[ UseTime:0.089639s ] mysql:host=47.112.222.163;port=3306;dbname=nn2023021801_1;charset=utf8","traceId":"e9c18394665190586173f3323beb018b"}
-{"time":"2023-02-24 15:36:45","type":"sql","msg":"SHOW FULL COLUMNS FROM `db_user` [ RunTime:0.052016s ]","traceId":"e9c18394665190586173f3323beb018b"}
-{"time":"2023-02-24 15:36:45","type":"error","msg":"[8]未定义变量: version","traceId":"e9c18394665190586173f3323beb018b"}
-{"time":"2023-02-24 15:36:45","type":"sql","msg":"CONNECT:[ UseTime:0.069466s ] mysql:host=47.112.222.163;port=3306;dbname=nn2023021801_1;charset=utf8","traceId":"c8a5482e558268cf992da36ab579781d"}
-{"time":"2023-02-24 15:36:45","type":"sql","msg":"SHOW FULL COLUMNS FROM `db_user` [ RunTime:0.047516s ]","traceId":"c8a5482e558268cf992da36ab579781d"}
-{"time":"2023-02-24 15:36:45","type":"error","msg":"[8]未定义变量: version","traceId":"c8a5482e558268cf992da36ab579781d"}
-{"time":"2023-02-24 15:36:55","type":"sql","msg":"CONNECT:[ UseTime:0.076359s ] mysql:host=47.112.222.163;port=3306;dbname=nn2023021801_1;charset=utf8","traceId":"58e0c308e922a208753a84c7b0748685"}
-{"time":"2023-02-24 15:36:55","type":"sql","msg":"SHOW FULL COLUMNS FROM `db_user` [ RunTime:0.052174s ]","traceId":"58e0c308e922a208753a84c7b0748685"}
-{"time":"2023-02-24 15:36:57","type":"sql","msg":"CONNECT:[ UseTime:0.079483s ] mysql:host=47.112.222.163;port=3306;dbname=nn2023021801_1;charset=utf8","traceId":"145ec54e8ee7b0e364bfe51770cdc91b"}
-{"time":"2023-02-24 15:36:57","type":"sql","msg":"SHOW FULL COLUMNS FROM `db_user` [ RunTime:0.053318s ]","traceId":"145ec54e8ee7b0e364bfe51770cdc91b"}
-{"time":"2023-02-24 15:36:57","type":"sql","msg":"CONNECT:[ UseTime:0.074088s ] mysql:host=47.112.222.163;port=3306;dbname=nn2023021801_1;charset=utf8","traceId":"be0c90f6ecba19189ef4256add4c3ce1"}
-{"time":"2023-02-24 15:36:57","type":"sql","msg":"SHOW FULL COLUMNS FROM `db_user` [ RunTime:0.070566s ]","traceId":"be0c90f6ecba19189ef4256add4c3ce1"}
-{"time":"2023-02-24 18:07:07","type":"sql","msg":"CONNECT:[ UseTime:0.071473s ] mysql:host=47.112.222.163;port=3306;dbname=nn2023021801_1;charset=utf8","traceId":"70a3a09953c0a2d4076cbc882d87c12b"}
-{"time":"2023-02-24 18:07:07","type":"sql","msg":"SHOW FULL COLUMNS FROM `db_user` [ RunTime:0.051994s ]","traceId":"70a3a09953c0a2d4076cbc882d87c12b"}

+ 0 - 18
runtime/index/temp/366c8631b33b671ae90047ef7841512d.php

@@ -1,18 +0,0 @@
-<?php /*a:1:{s:87:"/usr/local/develop/php/www/waibao/NN2023021801/NN2023021801/view/index/index/index.html";i:1677224213;}*/ ?>
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <meta name="description" content="">
-    <meta name="author" content="">
-    <meta name="keywords" content="">
-    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
-    <title>欢迎访问</title>
-    <link rel="stylesheet" href="/static/common/css/welcome.css">
-</head>
-<body>
-<div id='app'>
-    <div>欢迎访问...</div>
-</div>
-</body>
-</html>

+ 0 - 1
runtime/session/sess_b17caf573ee010b36a74e547b2303a20

@@ -1 +0,0 @@
-a:1:{s:9:"__token__";s:32:"4452348a1f9e270e7d3fb47012c23ec0";}

+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/.gitignore


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/.php_cs.dist


+ 6 - 0
vendor/alibabacloud/cloudauth-20190307/ChangeLog.md

@@ -1,3 +1,9 @@
+2022-11-02 Version: 2.0.5
+- For 2019-03-07.
+
+2022-10-17 Version: 2.0.4
+- For 2019-03-07.
+
 2022-06-29 Version: 2.0.3
 - For 2019-03-07.
 

+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/LICENSE


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/README-CN.md


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/README.md


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/autoload.php


+ 4 - 5
vendor/alibabacloud/cloudauth-20190307/composer.json

@@ -11,13 +11,12 @@
   ],
   "require": {
     "php": ">5.5",
-    "alibabacloud/tea-utils": "^0.2.0",
+    "alibabacloud/tea-utils": "^0.2.16",
     "alibabacloud/tea-oss-sdk": "^0.3.0",
-    "alibabacloud/tea-rpc": "^0.1.5",
-    "alibabacloud/openplatform-20191219": "^1.0.3",
-    "alibabacloud/tea-oss-utils": "^0.2.0",
+    "alibabacloud/openplatform-20191219": "^2.0.0",
+    "alibabacloud/tea-oss-utils": "^0.3.0",
     "alibabacloud/tea-fileform": "^0.3.0",
-    "alibabacloud/darabonba-openapi": "^0.2.5",
+    "alibabacloud/darabonba-openapi": "^0.2.7",
     "alibabacloud/openapi-util": "^0.1.10",
     "alibabacloud/endpoint-util": "^0.1.0"
   },

+ 13 - 10
vendor/alibabacloud/cloudauth-20190307/src/Cloudauth.php

@@ -45,9 +45,9 @@ use AlibabaCloud\SDK\OSS\OSS;
 use AlibabaCloud\SDK\OSS\OSS\PostObjectRequest;
 use AlibabaCloud\SDK\OSS\OSS\PostObjectRequest\header;
 use AlibabaCloud\Tea\FileForm\FileForm\FileField;
-use AlibabaCloud\Tea\Rpc\Rpc\Config;
 use AlibabaCloud\Tea\Utils\Utils;
 use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
+use Darabonba\OpenApi\Models\Config;
 use Darabonba\OpenApi\Models\OpenApiRequest;
 use Darabonba\OpenApi\Models\Params;
 use Darabonba\OpenApi\OpenApiClient;
@@ -369,28 +369,28 @@ class Cloudauth extends OpenApiClient
         OpenApiUtilClient::convert($request, $contrastFaceVerifyReq);
         if (!Utils::isUnset($request->faceContrastFileObject)) {
             $authResponse           = $authClient->authorizeFileUploadWithOptions($authRequest, $runtime);
-            $ossConfig->accessKeyId = $authResponse->accessKeyId;
-            $ossConfig->endpoint    = OpenApiUtilClient::getEndpoint($authResponse->endpoint, $authResponse->useAccelerate, $this->_endpointType);
+            $ossConfig->accessKeyId = $authResponse->body->accessKeyId;
+            $ossConfig->endpoint    = OpenApiUtilClient::getEndpoint($authResponse->body->endpoint, $authResponse->body->useAccelerate, $this->_endpointType);
             $ossClient              = new OSS($ossConfig);
             $fileObj                = new FileField([
-                'filename'    => $authResponse->objectKey,
+                'filename'    => $authResponse->body->objectKey,
                 'content'     => $request->faceContrastFileObject,
                 'contentType' => '',
             ]);
             $ossHeader = new header([
-                'accessKeyId'         => $authResponse->accessKeyId,
-                'policy'              => $authResponse->encodedPolicy,
-                'signature'           => $authResponse->signature,
-                'key'                 => $authResponse->objectKey,
+                'accessKeyId'         => $authResponse->body->accessKeyId,
+                'policy'              => $authResponse->body->encodedPolicy,
+                'signature'           => $authResponse->body->signature,
+                'key'                 => $authResponse->body->objectKey,
                 'file'                => $fileObj,
                 'successActionStatus' => '201',
             ]);
             $uploadRequest = new PostObjectRequest([
-                'bucketName' => $authResponse->bucket,
+                'bucketName' => $authResponse->body->bucket,
                 'header'     => $ossHeader,
             ]);
             $ossClient->postObject($uploadRequest, $ossRuntime);
-            $contrastFaceVerifyReq->faceContrastFile = 'http://' . $authResponse->bucket . '.' . $authResponse->endpoint . '/' . $authResponse->objectKey . '';
+            $contrastFaceVerifyReq->faceContrastFile = 'http://' . $authResponse->body->bucket . '.' . $authResponse->body->endpoint . '/' . $authResponse->body->objectKey . '';
         }
 
         return $this->contrastFaceVerifyWithOptions($contrastFaceVerifyReq, $runtime);
@@ -936,6 +936,9 @@ class Cloudauth extends OpenApiClient
         if (!Utils::isUnset($request->userId)) {
             $query['UserId'] = $request->userId;
         }
+        if (!Utils::isUnset($request->voluntaryCustomizedContent)) {
+            $query['VoluntaryCustomizedContent'] = $request->voluntaryCustomizedContent;
+        }
         $body = [];
         if (!Utils::isUnset($request->authId)) {
             $body['AuthId'] = $request->authId;

+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFaceVerifyRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFaceVerifyResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFaceVerifyResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFaceVerifyResponseBody/resultObject.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFacesRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFacesResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFacesResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CompareFacesResponseBody/data.php


+ 12 - 13
vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyAdvanceRequest.php

@@ -10,11 +10,6 @@ use GuzzleHttp\Psr7\Stream;
 class ContrastFaceVerifyAdvanceRequest extends Model
 {
     /**
-     * @var Stream
-     */
-    public $faceContrastFileObject;
-
-    /**
      * @var string
      */
     public $certName;
@@ -50,6 +45,11 @@ class ContrastFaceVerifyAdvanceRequest extends Model
     public $encryptType;
 
     /**
+     * @var Stream
+     */
+    public $faceContrastFileObject;
+
+    /**
      * @var string
      */
     public $faceContrastPicture;
@@ -104,7 +104,6 @@ class ContrastFaceVerifyAdvanceRequest extends Model
      */
     public $userId;
     protected $_name = [
-        'faceContrastFileObject' => 'FaceContrastFileObject',
         'certName'               => 'CertName',
         'certNo'                 => 'CertNo',
         'certType'               => 'CertType',
@@ -112,6 +111,7 @@ class ContrastFaceVerifyAdvanceRequest extends Model
         'crop'                   => 'Crop',
         'deviceToken'            => 'DeviceToken',
         'encryptType'            => 'EncryptType',
+        'faceContrastFileObject' => 'FaceContrastFile',
         'faceContrastPicture'    => 'FaceContrastPicture',
         'faceContrastPictureUrl' => 'FaceContrastPictureUrl',
         'ip'                     => 'Ip',
@@ -127,15 +127,11 @@ class ContrastFaceVerifyAdvanceRequest extends Model
 
     public function validate()
     {
-        Model::validateRequired('faceContrastFileObject', $this->faceContrastFileObject, true);
     }
 
     public function toMap()
     {
         $res = [];
-        if (null !== $this->faceContrastFileObject) {
-            $res['FaceContrastFileObject'] = $this->faceContrastFileObject;
-        }
         if (null !== $this->certName) {
             $res['CertName'] = $this->certName;
         }
@@ -157,6 +153,9 @@ class ContrastFaceVerifyAdvanceRequest extends Model
         if (null !== $this->encryptType) {
             $res['EncryptType'] = $this->encryptType;
         }
+        if (null !== $this->faceContrastFileObject) {
+            $res['FaceContrastFile'] = $this->faceContrastFileObject;
+        }
         if (null !== $this->faceContrastPicture) {
             $res['FaceContrastPicture'] = $this->faceContrastPicture;
         }
@@ -202,9 +201,6 @@ class ContrastFaceVerifyAdvanceRequest extends Model
     public static function fromMap($map = [])
     {
         $model = new self();
-        if (isset($map['FaceContrastFileObject'])) {
-            $model->faceContrastFileObject = $map['FaceContrastFileObject'];
-        }
         if (isset($map['CertName'])) {
             $model->certName = $map['CertName'];
         }
@@ -226,6 +222,9 @@ class ContrastFaceVerifyAdvanceRequest extends Model
         if (isset($map['EncryptType'])) {
             $model->encryptType = $map['EncryptType'];
         }
+        if (isset($map['FaceContrastFile'])) {
+            $model->faceContrastFileObject = $map['FaceContrastFile'];
+        }
         if (isset($map['FaceContrastPicture'])) {
             $model->faceContrastPicture = $map['FaceContrastPicture'];
         }

+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/ContrastFaceVerifyResponseBody/resultObject.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CreateAuthKeyRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CreateAuthKeyResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CreateAuthKeyResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CreateVerifySettingRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CreateVerifySettingResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/CreateVerifySettingResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoResponseBody/deviceInfoList.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeDeviceInfoResponseBody/deviceInfoList/deviceInfo.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeFaceVerifyRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeFaceVerifyResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeFaceVerifyResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeFaceVerifyResponseBody/resultObject.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeOssUploadTokenResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeOssUploadTokenResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeOssUploadTokenResponseBody/ossUploadToken.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultResponseBody/material.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyResultResponseBody/material/idCardInfo.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifySDKRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifySDKResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifySDKResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyTokenRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyTokenResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyTokenResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DescribeVerifyTokenResponseBody/ossUploadToken.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesRequest.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponse.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo/faceAttributes.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo/faceAttributes/headpose.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo/faceAttributes/smiling.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/DetectFaceAttributesResponseBody/data/faceInfos/faceAttributesDetectInfo/faceRect.php


+ 0 - 0
vendor/alibabacloud/cloudauth-20190307/src/Models/InitFaceVerifyRequest.php


Некоторые файлы не были показаны из-за большого количества измененных файлов