diff --git a/README.md b/README.md
index e6808647d..d79ac602c 100644
--- a/README.md
+++ b/README.md
@@ -1,10 +1,10 @@
-
+
-支持免费商用的PHP **多语言** 商城系统
+CRMEB开源商城系统PHP版
@@ -36,34 +36,67 @@
-### 介绍
-CRMEB打通版是历经6年时间匠心之作!系统全开源可商用,包含小程序商城、H5商城、公众号商城、PC商城、App,多种分销模式、拼团、砍价、秒杀、优惠券、抽奖、积分、会员等级、小程序直播、页面DIY,前后端分离全部100%开源。方便二开,更有详细使用文档、接口文档、数据字典、二开文档/视频教程。为开发者赋能,助力企业发展、国家富强,致力于打造最受欢迎的商城项目
+---
+
+### 📋 更新说明
+
+```
+v5.0.0 更新说明【更新时间2023年06月12日】
+1、后台管理页面增加风格选项切换功能
+2、新增接口管理
+3、新增代码生成功能,能快速生成基础的增删改查代码,并自动生成菜单和功能页面
+4、文件管理和数据库管理增加添加备注功能
+5、后台根据新增的路由表,生成接口文档,并支持在线调试
+6、权限管理优化,业务和开发分离,分工更明确
+7、新增代理商申请页面按钮开关
+8、增加小程序发货信息管理接口
+9、优惠券优化,优惠券修改后台添加,增加多分类,恢复系统赠送功能
+10、后台分类样式统一,优化分类选择体验
+以及其他共计21跳更新和优化
+
+v4.7.1 更新说明【更新时间2023年04月26日】
+1.优化订单下单时订单号的生成
+2.版权设置增加清除缓存,及时生效
+3.企业微信无法通知问题修复
+4.修复重量体积包邮的问题
+5.佣金转入余额报错问题处理
+6.拼团未支付的时候查看拼团报错处理
+7.自提商品下单后默认门店不是最近的问题处理
+8.不能修改cos空间名,cos优化;
+9.核销订单部分退款问题优化
+10.更新修改后台admin之后无法选择图片的问题
+以及其他共计40跳更新和优化
+```
+### 用心做开源,我们也很需要你的鼓励!右上角Star,等你点亮!
+
+---
+
+### 📝 介绍
+CRMEB开源商城系统是一款全开源可商用的系统,前后端分离开发,全部100%开源,在小程序、公众号、H5、APP、PC端都能用,使用方便,二开方便!安装使用也很简单!使用文档、接口文档、数据字典、二开文档、视频教程,各种资料应有尽有,就算你是技术小白,也能轻松上手!
+
+欢迎大家来体验、来提建议,来一起让CRMEB开源商城系统更强大,让更多开发者受益!虽然是开源,但我们该有的功能全都有!拼团、秒杀、优惠券、抽奖、积分、直播、分销、页面DIY... 常用商城系统功能,都是全开源,直接用!
CRMEB开源商城Java版:https://gitee.com/ZhongBangKeJi/crmeb_java
+---
-
-### 系统亮点
+### 🫧 系统亮点
~~~
-多 语 言:后台随时配置语言包,移动端支持多语言切换;
-高 性 能:redis缓存、队列、长连接、多种云储存、支持集群部署;
-个 性 UI:多种风格切换、支持DIY各种首页/专题页面
-前后端分离:后端TP6,管理端iviewui,移动端uniapp;
-代码规范:遵循PSR-2命名规范、Restful标准接口、代码严格分层、注释齐全、统一错误码;
-权限管理:内置强大灵活的权限管理,可以控制到每一个菜单;
-开发配置:低代码增加配置、系统组合数据模块;
-二开效率:PHP快速生成表单、内置所有事件、后台在线编辑器、代码注释齐全、完整接口文档;
-快速上手:详细帮助文档、接口文档、数据库字典、代码注释、一键安装;
-系统安全:系统操作日志、系统生产日志、文件校验、数据备份;
-系统功能:请看帮助文档 https://doc.crmeb.com/single/crmeb_v4/1758
-用户体验:等您来评!
+1.前后端分离:后端TP6,管理端iView UI,移动端Uni-app;
+2.代码规范:遵循PSR-2命名规范、Restful标准接口、代码严格分层、注释齐全、统一错误码;
+3.权限管理:内置强大灵活的权限管理,可以控制到每一个菜单;
+4.开发配置:低代码增加配置、系统组合数据模块;
+5.二开效率:应用form-builder PHP快速生成表单、内置所有事件、后台接口管理调试、后台代码在线编辑器、代码生成,快速对接第三方接口;
+6.快速上手:详细帮助文档、后台接口管理、后台数据库字典、系统文件管理备注、代码注释、一键安装;
+7.系统安全:系统操作日志、系统生产日志、文件校验、数据备份;
+8.高 性 能:支持Redis缓存、队列、长连接、多种云储存、支持集群部署。
~~~
+---
-
-### 运行环境
+### 🖥 运行环境
```
Nignx/Apache/IIS
@@ -73,97 +106,116 @@ Redis
```
-> 温馨提示:虚拟空间不支持,推荐使用bt宝塔面板,服务器推荐阿里云ecs或腾讯云cvm 云服务器: 查看
+> 温馨提示:虚拟空间不支持,推荐使用bt宝塔面板,服务器推荐京东云服务器:注册即享6.5折专属优惠,点我领取!
-### 系统演示
+### 📱 系统演示

-管理后台: http://v4.crmeb.net/admin 账号:demo 密码:crmeb.com
+管理后台: http://v5.crmeb.net/admin
-H5端:http://v4.crmeb.net/(移动端打开)
+账号:demo 密码:crmeb.com
-PC端:http://v4.crmeb.net/(电脑端打开)
+H5端:http://v5.crmeb.net/(移动端打开)
-APP下载:http://app.crmeb.cn/bzv (苹果手机直接在APP Store里搜索CRMEB下载)
+PC端:http://v5.crmeb.net/(电脑端打开)
+
+APP下载:http://app.crmeb.cn/bzv(苹果手机直接在APP Store里搜索CRMEB下载)
+
+> 听说,大神你想看看CRMEB开源项目的完整框架?戳这儿,轻松获取!
---
-#### 体验云部署
- 不懂服务器?不懂技术?无法解决高并发?想数据私有化?还想后期定制开发?
+### 🔐 安装教程
- 推荐云部署版一键超低价格低至 :collision: 9.9元/年,解决以上所有问题点击了解
+想要快速安装,教程来助攻!查看安装教程!
---
-### 官方论坛
+### 📲 核心功能
+#### 商城页面维护:自定义底部菜单、5种主题风格切换、分类页风格切换、个人中心风格切换、数据配置、首页DIY设计、开屏广告...
+#### 商品:商品运营(分类、列表、详情、规格、收藏、评价、视频、海报、采集、口令)、卡密商品、虚拟商品、商品预售、限购
+#### 订单:订单状态、订单类型、移动端订单管理、移动端订单核销、发票管理
+#### 营销功能:拼团、秒杀、砍价、预售、积分商城、九宫格抽奖、优惠券、积分、余额充值、公众号渠道码、微信小程序直播
+#### 物流配送:快递发货、商家发货、虚拟发货、自提点核销、物流跟踪
+#### 分销推广:分销模式、绑定模式、分销推广、返佣设置、佣金提现、拼团返佣
+#### 用户:用户等级、付费会员(SVIP)、用户管理
+#### 客服:客服管理、客服工作台
+#### 第三方设置:短信、商品采集、小票打印、电子面单打印、物流查询、云存储
+#### 多终端适配:小程序、公众号、H5、APP、PC端
+#### 系统设置:开发配置、安全维护、城市数据、权限控制、消息管理、多语言包、在线升级
+#### 方便二开:接口管理、代码自动生成、文件和数据库备注管理、自动生成接口文档、业务与开发权限分管
+
+
-产品BUG、优化建议,欢迎社区反馈:https://www.crmeb.com/ask/thread/list?id=147
+---
+
+### 📖 UI界面展示
+
+
+
+
+
+
+---
-### 页面展示
-(页面仅展示部分UI)
-
-
-
-
-
+### 📕 CRMEB公益
+做开源,帮助更多人!CRMEB开源项目,不仅让开发者从中受益,也在公益活动中帮助了很多人,对此,我们很荣幸,也乐此不疲!
-
+So~~想要用CRMEB开源商城系统做公益项目的朋友,可以来免费申请商业版系统哦!有需要的朋友,快去找官方客服咨询吧!
+---
+### 💎 捐赠
+赠人玫瑰,手留余香!CRMEB诚挚地邀请大家积极参与捐赠,我们会将捐赠获得的费用,悉数用于支持公益项目,让善意无限传递下去!
+在此深表感谢~
-### 推荐项目(欢迎合作,QQ:763569752 )
+---
+### 📞 CRMEB互动
+#### 技术娱乐!代码写累了?那就歇会吧!扫码让你开心一刻!
+
+#### 技术社区!找方法、提bug、看官方消息、拿活跃大奖!都在 CRMEB 技术社区 应有尽有
+#### 技术交流!跟着官方,不迷路!欢迎扫码加入CRMEB 开源项目群,一手消息及资源,尽在掌握!
+
-| 项目名称 | 关注量 | 项目介绍 |
-| ------------ | ------------ | ------------ |
-| [](https://gitee.com/ZhongBangKeJi/CRMChat) | [](https://gitee.com/ZhongBangKeJi/CRMChat/stargazers) | CRMChat客服系统,支持接入各种渠道. |
-| [](https://gitee.com/ZhongBangKeJi/crmeb_java) | [](https://gitee.com/ZhongBangKeJi/crmeb_java/stargazers) | JAVA版开源商城. |
-| [](https://gitee.com/xaboy/form-builder) | [](https://gitee.com/xaboy/form-builder/stargazers) | PHP表单生成器,快速生成现代化的form表单。 |
-| [](https://gitee.com/layui/layui-vue) | [](https://gitee.com/layui/layui-vue/stargazers) | layui-vue(谐音:类UI)是一套Vue3.0 的桌面端组件库. |
-| [](https://gitee.com/ntdgg/tpflow) | [](https://gitee.com/ntdgg/tpflow/stargazers) | TpFlow工作流引擎是一套规范化的流程管理系统,基于业务而驱动系统生命力的一套引擎. |
-
-### 商业版购买
-开源不易,以下如果有需要,请支持一下,感谢您的支持,让我们更多动力!
-
-[](https://www.crmeb.com/index/criteria)
-
-### 🔥🔥庆祝:CRMEB开源商城系统Gitee star突破10000+ 专属活动福利 [点击了解](https://www.crmeb.com/ask/thread/20738)
-
-### 感谢参与开发者
-感谢大神们提交代码(排名不分先后)
+---
+### 📻 感谢参与开发者
+#### 感谢大神们提交代码(排名不分先后)
@yizhisamoye,@bys1123,@xaboy,@youngxj0,@jacklincheung,@392256866,@sxsea
-欢迎反馈问题 [反馈问题](https://gitee.com/ZhongBangKeJi/CRMEB/issues)。
+欢迎反馈问题
-欢迎提交代码 [提交代码](https://gitee.com/ZhongBangKeJi/CRMEB/pulls)。
-
-### 特别鸣谢
+欢迎提交代码
+---
+### 📸 特别鸣谢
排名不分先后,感谢这些软件的开发者:thinkphp、iview、vue、mysql、redis、uniapp、echarts、tree-table-vue、swiper、form-create等,如有遗漏请联系我!
-### 核心开发团队
+---
+### 🎬 核心开发团队
产品:木子刀客
技术:聆听、等风来、xaboy、吴汐、最后一片叶、旺仔、小小、娜娜、归来仍是少年
UI:xy-yyds、LXT
-测试:夏天、绵绵羊、。ws
+测试:夏天、绵绵羊、。ws、半山
-### 使用须知
-1.允许用于个人学习、毕业设计、教学案例、公益事业、商业使用;
+---
+### 📺 使用须知
+1、允许用于个人学习、毕业设计、教学案例、公益事业、商业使用;
-2.如果商用必须保留版权信息,请自觉遵守;
+2、如果商用必须保留版权信息,请自觉遵守;
-3.禁止将本项目的代码和资源进行任何形式的出售,产生的一切任何后果责任由侵权者自负。
+3、禁止将本项目的代码和资源进行任何形式的出售,产生的一切任何后果责任由侵权者自负。
-### 版权信息
+
+---
+### 💾 版权信息
本项目包含的第三方源码和二进制文件之版权信息另行标注。
@@ -173,6 +225,9 @@ All rights reserved。
CRMEB® 商标和著作权所有者为西安众邦网络科技有限公司。
+
+
---
+
[返回顶部 :fa-arrow-circle-up: ](https://gitee.com/ZhongBangKeJi/CRMEB#%E9%A1%B9%E7%9B%AE%E4%BB%8B%E7%BB%8D)
diff --git a/crmeb/.version b/crmeb/.version
index d7f1d2386..76345ae3e 100644
--- a/crmeb/.version
+++ b/crmeb/.version
@@ -1,5 +1,5 @@
-version=CRMEB-KY v5.1.0
-version_code=510
+version=CRMEB-KY v5.2.0
+version_code=520
platform=gitee
app_id=ze7x9rxsv09l6pvsyo
app_key=fuF7U9zaybLa5gageVQzxtxQMFnvU2OI
diff --git a/crmeb/app/adminapi/controller/PublicController.php b/crmeb/app/adminapi/controller/PublicController.php
index 1bc31e70f..d13091ba9 100644
--- a/crmeb/app/adminapi/controller/PublicController.php
+++ b/crmeb/app/adminapi/controller/PublicController.php
@@ -68,7 +68,7 @@ class PublicController
if ($service->cacheDriver()->get('scan_upload') != $uploadToken) {
return app('json')->fail(410086);
}
- $service->upload($pid, $file, $upload_type, $type, '', $uploadToken);
+ $service->upload((int)$pid, $file, $upload_type, $type, '', $uploadToken);
return app('json')->success(100032);
}
}
diff --git a/crmeb/app/adminapi/controller/UpgradeController.php b/crmeb/app/adminapi/controller/UpgradeController.php
index 493c0c28b..d56534c14 100644
--- a/crmeb/app/adminapi/controller/UpgradeController.php
+++ b/crmeb/app/adminapi/controller/UpgradeController.php
@@ -734,8 +734,8 @@ class UpgradeController
*/
public function upData()
{
- $data['new_version'] = 'CRMEB-BZ v5.0.0';
- $data['new_code'] = 500;
+ $data['new_version'] = 'CRMEB-BZ v5.1.0';
+ $data['new_code'] = 510;
$data['update_sql'] = [
[
'code' => 500,
@@ -16797,6 +16797,1281 @@ INSERT INTO `@table` (`id`, `pid`, `app_name`, `name`, `mark`, `path`, `sort`, `
(183, 0, 'api', '发票', '', '', 0, 1683360771);
SQL
],
+
+
+
+
+
+
+ [
+ 'code' => 510,
+ 'type' => -1,
+ 'table' => "express",
+ 'sql' => "truncate table `@table`"
+ ],
+ [
+ 'code' => 510,
+ 'type' => -1,
+ 'table' => "express",
+ 'sql' => << 510,
+ 'type' => 3,
+ 'table' => "store_order",
+ 'field' => "is_stock_up",
+ 'findSql' => "show columns from `@table` like 'is_stock_up'",
+ 'sql' => "ALTER TABLE `@table` ADD `is_stock_up` TINYINT(1) NOT NULL DEFAULT '0' COMMENT '是否备货中' AFTER `status`"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 3,
+ 'table' => "store_product_reply",
+ 'field' => "suk",
+ 'findSql' => "show columns from `@table` like 'suk'",
+ 'sql' => "ALTER TABLE `@table` ADD `suk` varchar(255) NOT NULL DEFAULT '' COMMENT '规格名称'"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 3,
+ 'table' => "system_attachment",
+ 'field' => "scan_token",
+ 'findSql' => "show columns from `@table` like 'scan_token'",
+ 'sql' => "ALTER TABLE `@table` ADD `scan_token` varchar(32) NOT NULL DEFAULT '' COMMENT '扫码上传的token'"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config_tab",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `eng_title` = 'jd_oss_config'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='storage_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, @tabId, '京东云配置', 'jd_oss_config', 0, 0, '', 0, 0)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config_tab",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `eng_title` = 'obs_config'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='storage_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, @tabId, '华为云配置', 'obs_config', 0, 0, '', 0, 0)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config_tab",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `eng_title` = 'ty_oss_config'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='storage_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, @tabId, '天翼云配置', 'ty_oss_config', 0, 0, '', 0, 0)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 7,
+ 'table' => "system_config_tab",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `eng_title` = 'system_sms'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='basics'",
+ 'sql' => "UPDATE `@table` SET `pid` = @tabId, `status` = 1, `type` = 0 WHERE `eng_title` = 'system_sms'"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 7,
+ 'table' => "system_config_tab",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `eng_title` = 'online_translation'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='basics'",
+ 'sql' => "UPDATE `@table` SET `pid` = @tabId WHERE `eng_title` = 'online_translation'"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 7,
+ 'table' => "system_config",
+ 'findSql' => "select id from @table where `menu_name` = 'sms_account'",
+ 'sql' => "UPDATE `@table` SET `info` = '一号通应用AppId', `desc` = '一号通账号内创建应用的AppId' WHERE `menu_name` = 'sms_account'"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 7,
+ 'table' => "system_config",
+ 'findSql' => "select id from @table where `menu_name` = 'sms_token'",
+ 'sql' => "UPDATE `@table` SET `info` = '一号通应用AppSecret', `desc` = '一号通账号内创建应用的AppSecret' WHERE `menu_name` = 'sms_token'"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 7,
+ 'table' => "system_config",
+ 'findSql' => "select id from @table where `menu_name` = 'integral_frozen'",
+ 'sql' => "UPDATE `@table` SET `desc` = '积分冻结(天),0为不冻结' WHERE `menu_name` = 'integral_frozen'"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `menu_name` = 'jd_accessKey'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='jd_oss_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, 'jd_accessKey', 'text', 'input', @tabId, '', 1, '', 100, 0, '\"\"', '京东云accessKey', '京东云accessKey', 0, 1)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `menu_name` = 'jd_secretKey'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='jd_oss_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, 'jd_secretKey', 'text', 'input', @tabId, '', 1, '', 100, 0, '\"\"', '京东云secretKey', '京东云secretKey', 0, 1)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `menu_name` = 'hw_accessKey'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='obs_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, 'hw_accessKey', 'text', 'input', @tabId, '', 1, '', 100, 0, '\"\"', '华为云accessKey', '华为云accessKey', 0, 1)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `menu_name` = 'hw_secretKey'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='obs_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, 'hw_secretKey', 'text', 'input', @tabId, '', 1, '', 100, 0, '\"\"', '华为云secretKey', '华为云secretKey', 0, 1)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `menu_name` = 'ty_secretKey'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='ty_oss_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, 'ty_secretKey', 'text', 'input', @tabId, '', 1, '', 100, 0, '\"\"', '天翼云secretKey', '天翼云secretKey', 0, 1)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `menu_name` = 'ty_accessKey'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='ty_oss_config'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, 'ty_accessKey', 'text', 'input', @tabId, '', 1, '', 100, 0, '\"\"', '天翼云accessKey', '天翼云accessKey', 0, 1)"
+ ],
+ [
+ 'code' => 510,
+ 'type' => 6,
+ 'table' => "system_config",
+ 'whereTable' => "system_config_tab",
+ 'findSql' => "select id from @table where `menu_name` = 'coupon_return_open'",
+ 'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='store_base'",
+ 'sql' => "INSERT INTO `@table` VALUES (NULL, 'coupon_return_open', 'radio', 'input', @tabId, '1=>退还\n0=>不退还', 1, '', 0, 0, '\"1\"', '优惠券退还状态', '优惠券是否退回开关,商品成功退款后,退回/不退回使用的优惠券', 0, 1)"
+ ],
+
];
return $data;
}
diff --git a/crmeb/app/adminapi/controller/v1/setting/SystemRoute.php b/crmeb/app/adminapi/controller/v1/setting/SystemRoute.php
index a8d175401..ebb7415a3 100644
--- a/crmeb/app/adminapi/controller/v1/setting/SystemRoute.php
+++ b/crmeb/app/adminapi/controller/v1/setting/SystemRoute.php
@@ -111,24 +111,25 @@ class SystemRoute extends AuthController
['describe', ''],
]);
- if (!$data['name']) {
- return app('json')->fail(500031);
- }
- if (!$data['path']) {
- return app('json')->fail(500032);
- }
- if (!$data['method']) {
- return app('json')->fail(500033);
- }
- if (!$data['app_name']) {
- return app('json')->fail(500034);
- }
+// if (!$data['name']) {
+// return app('json')->fail(500031);
+// }
+// if (!$data['path']) {
+// return app('json')->fail(500032);
+// }
+// if (!$data['method']) {
+// return app('json')->fail(500033);
+// }
+// if (!$data['app_name']) {
+// return app('json')->fail(500034);
+// }
if ($id) {
$this->services->update($id, $data);
} else {
$data['add_time'] = date('Y-m-d H:i:s');
$this->services->save($data);
}
+ $this->services->cacheDriver()->clear();
return app('json')->success($id ? 100001 : 100021);
}
diff --git a/crmeb/app/api/controller/pc/PublicController.php b/crmeb/app/api/controller/pc/PublicController.php
index a27240474..9e4b05a83 100644
--- a/crmeb/app/api/controller/pc/PublicController.php
+++ b/crmeb/app/api/controller/pc/PublicController.php
@@ -51,6 +51,8 @@ class PublicController
$data['site_keywords'] = sys_config('site_keywords');
$data['site_description'] = sys_config('site_description');
$data['network_security'] = sys_config('network_security');
+ $data['network_security_url'] = sys_config('network_security_url');
+ $data['icp_url'] = sys_config('icp_url');
$logoUrl = sys_config('pc_logo');
if (strstr($logoUrl, 'http') === false && $logoUrl) {
$logoUrl = sys_config('site_url') . $logoUrl;
diff --git a/crmeb/app/common.php b/crmeb/app/common.php
index 8d8575b0d..fb9968911 100644
--- a/crmeb/app/common.php
+++ b/crmeb/app/common.php
@@ -23,6 +23,7 @@ use app\services\system\lang\LangCodeServices;
use app\services\system\lang\LangCountryServices;
use think\facade\Config;
use think\facade\Log;
+use think\facade\Db;
if (!function_exists('crmebLog')) {
/**
@@ -1090,3 +1091,19 @@ if (!function_exists('out_push')) {
return true;
}
}
+
+if (!function_exists('dump_sql')) {
+ /**
+ * 默认数据推送
+ * @param string $pushUrl
+ * @param array $data
+ * @param string $tip
+ * @return bool
+ */
+ function dump_sql()
+ {
+ Db::listen(function ($sql) {
+ var_dump($sql);
+ });
+ }
+}
diff --git a/crmeb/app/dao/activity/coupon/StoreCouponIssueDao.php b/crmeb/app/dao/activity/coupon/StoreCouponIssueDao.php
index dd06cd2e0..6dac47ece 100644
--- a/crmeb/app/dao/activity/coupon/StoreCouponIssueDao.php
+++ b/crmeb/app/dao/activity/coupon/StoreCouponIssueDao.php
@@ -72,6 +72,17 @@ class StoreCouponIssueDao extends BaseDao
->page($page, $limit)->order('id desc')->select()->toArray();
}
+ /**
+ * 优惠券数量
+ * @param $where
+ * @return int
+ * @throws \ReflectionException
+ */
+ public function couponCount($where): int
+ {
+ return $this->search($where)->count();
+ }
+
/**
* 获取优惠券列表
* @param int $uid 用户ID
diff --git a/crmeb/app/dao/activity/integral/StoreIntegralOrderDao.php b/crmeb/app/dao/activity/integral/StoreIntegralOrderDao.php
index 515b21d6b..726c35719 100644
--- a/crmeb/app/dao/activity/integral/StoreIntegralOrderDao.php
+++ b/crmeb/app/dao/activity/integral/StoreIntegralOrderDao.php
@@ -95,7 +95,7 @@ class StoreIntegralOrderDao extends BaseDao
*/
public function count(array $where = [], bool $search = true)
{
- return $this->search($where, $search)->count();
+ return $this->search($where)->count();
}
/**
diff --git a/crmeb/app/dao/activity/seckill/StoreSeckillDao.php b/crmeb/app/dao/activity/seckill/StoreSeckillDao.php
index 7034905d1..efcb6cbbe 100644
--- a/crmeb/app/dao/activity/seckill/StoreSeckillDao.php
+++ b/crmeb/app/dao/activity/seckill/StoreSeckillDao.php
@@ -41,7 +41,7 @@ class StoreSeckillDao extends BaseDao
*/
public function search(array $where = [], bool $search = false)
{
- return parent::search($where, $search)->when(isset($where['seckllTime']), function ($query) use ($where) {
+ return parent::search($where)->when(isset($where['seckllTime']), function ($query) use ($where) {
[$startTime, $stopTime] = is_array($where['seckllTime']) ? $where['seckllTime'] : [time(), time() - 86400];
$query->where('start_time', '<=', $startTime)->where('stop_time', '>=', $stopTime);
})->when(isset($where['sid']) && $where['sid'], function ($query) use ($where) {
@@ -67,6 +67,7 @@ class StoreSeckillDao extends BaseDao
* 条件获取数量
* @param array $where
* @return int
+ * @throws \ReflectionException
*/
public function getCount(array $where)
{
diff --git a/crmeb/app/outapi/controller/User.php b/crmeb/app/outapi/controller/User.php
index 60ac589fe..49d009376 100644
--- a/crmeb/app/outapi/controller/User.php
+++ b/crmeb/app/outapi/controller/User.php
@@ -130,7 +130,8 @@ class User extends AuthController
public function info($uid)
{
if (!$uid) return app('json')->fail(100100);
- return app('json')->success($this->services->userInfo($uid));
+ $data = $this->services->userInfo($uid);
+ return app('json')->success(compact('data'));
}
/**
diff --git a/crmeb/app/services/activity/coupon/StoreCouponIssueServices.php b/crmeb/app/services/activity/coupon/StoreCouponIssueServices.php
index bb667dabc..6c88aff60 100644
--- a/crmeb/app/services/activity/coupon/StoreCouponIssueServices.php
+++ b/crmeb/app/services/activity/coupon/StoreCouponIssueServices.php
@@ -65,8 +65,7 @@ class StoreCouponIssueServices extends BaseServices
foreach ($list as &$item) {
$item['use_time'] = date('Y-m-d', $item['start_use_time']) . ' ~ ' . date('Y-m-d', $item['end_use_time']);
}
-// unset($where['type'], $where['receive_type']);
- $count = $this->dao->count($where);
+ $count = $this->dao->couponCount($where);
return compact('list', 'count');
}
diff --git a/crmeb/app/services/activity/lottery/LuckLotteryServices.php b/crmeb/app/services/activity/lottery/LuckLotteryServices.php
index a5114ede3..0bd1f2d36 100644
--- a/crmeb/app/services/activity/lottery/LuckLotteryServices.php
+++ b/crmeb/app/services/activity/lottery/LuckLotteryServices.php
@@ -210,7 +210,9 @@ class LuckLotteryServices extends BaseServices
$luckPrizeServices = app()->make(LuckPrizeServices::class);
$data = [];
$sort = 1;
+ $prizeStatus = false;
foreach ($prizes as $prize) {
+ if (isset($prize['type']) && $prize['type'] == 1) $prizeStatus = true;
$prize = $luckPrizeServices->checkPrizeData($prize);
$prize['lottery_id'] = $lottery->id;
unset($prize['id']);
@@ -219,6 +221,9 @@ class LuckLotteryServices extends BaseServices
$data[] = $prize;
$sort++;
}
+ if (!$prizeStatus) {
+ throw new AdminException('必须设置至少一个未中奖');
+ }
if (!$luckPrizeServices->saveAll($data)) {
throw new AdminException(400536);
}
@@ -261,7 +266,9 @@ class LuckLotteryServices extends BaseServices
$insert = [];
$time = time();
$sort = 1;
+ $prizeStatus = false;
foreach ($newPrizes as $prize) {
+ if (isset($prize['type']) && $prize['type'] == 1) $prizeStatus = true;
$prize = $luckPrizeServices->checkPrizeData($prize);
$prize['sort'] = $sort;
if (isset($prize['id']) && $prize['id']) {
@@ -280,6 +287,9 @@ class LuckLotteryServices extends BaseServices
}
$sort++;
}
+ if (!$prizeStatus) {
+ throw new AdminException('必须设置至少一个未中奖');
+ }
if ($insert) {
if (!$luckPrizeServices->saveAll($insert)) {
throw new AdminException(100022);
diff --git a/crmeb/app/services/system/SystemRouteServices.php b/crmeb/app/services/system/SystemRouteServices.php
index 4d496df46..a6851ea21 100644
--- a/crmeb/app/services/system/SystemRouteServices.php
+++ b/crmeb/app/services/system/SystemRouteServices.php
@@ -201,6 +201,9 @@ class SystemRouteServices extends BaseServices
{
$oneId = app()->make(SystemRouteCateServices::class)->value(['app_name' => $app, 'name' => $cateName, 'pid' => 0], 'id');
if (!$oneId) {
+ //修复重复同步后反复增加二级文件夹
+ $id = app()->make(SystemRouteCateServices::class)->value(['app_name' => $app, 'name' => $cateName, 'pid' => $pid], 'id');
+ if ($id) return $id;
$res = app()->make(SystemRouteCateServices::class)->save([
'app_name' => $app,
'name' => $cateName,
diff --git a/crmeb/app/services/system/config/SystemConfigServices.php b/crmeb/app/services/system/config/SystemConfigServices.php
index ce1d17cc2..6450f0b51 100644
--- a/crmeb/app/services/system/config/SystemConfigServices.php
+++ b/crmeb/app/services/system/config/SystemConfigServices.php
@@ -91,6 +91,7 @@ class SystemConfigServices extends BaseServices
'spread_banner' => '',
'brokerage_level' => '',
'division_status' => '',
+ 'agent_apply_open' => '',
],
'show_value' => 1
],
diff --git a/crmeb/app/services/user/OutUserServices.php b/crmeb/app/services/user/OutUserServices.php
index 19debd700..1620ae8b1 100644
--- a/crmeb/app/services/user/OutUserServices.php
+++ b/crmeb/app/services/user/OutUserServices.php
@@ -15,6 +15,7 @@ namespace app\services\user;
use app\dao\user\UserDao;
use app\services\activity\coupon\StoreCouponIssueServices;
+use app\services\agent\AgentLevelServices;
use app\services\BaseServices;
use app\services\system\SystemUserLevelServices;
use crmeb\exceptions\ApiException;
@@ -92,9 +93,19 @@ class OutUserServices extends BaseServices
*/
public function userInfo($uid)
{
+ $userType = ['h5' => 'H5', 'wechat' => '公众号', 'routine' => '小程序', 'app' => 'APP', 'pc' => 'PC'];
$fields = ['uid', 'real_name', 'mark', 'nickname', 'avatar', 'phone', 'now_money', 'brokerage_price', 'integral', 'exp', 'sign_num', 'user_type', 'status', 'level',
'agent_level', 'spread_open', 'spread_uid', 'spread_time', 'user_type', 'is_promoter', 'pay_count', 'is_ever_level', 'is_money_level', 'overdue_time', 'add_time'];
- return app()->make(UserServices::class)->get($uid, $fields);
+ $data = app()->make(UserServices::class)->get($uid, $fields);
+ $data['user_type'] = $userType[$data['user_type']];
+ $data['status'] = $data['status'] ? '正常' : '禁用';
+ $data['level'] = app()->make(SystemUserLevelServices::class)->value($data['level'], 'name') ?? '无';
+ $data['agent_level'] = app()->make(AgentLevelServices::class)->value($data['agent_level'], 'name') ?? '无';
+ $data['spread_open'] = $data['spread_open'] ? '分销开启' : '分销关闭';
+ $data['spread_name'] = app()->make(UserServices::class)->value($data['spread_uid'], 'nickname') ?? '无';
+ $data['spread_time'] = date('Y-m-d H:i:s', $data['spread_time']);
+ $data['add_time'] = date('Y-m-d H:i:s', $data['add_time']);
+ return $data;
}
/**
diff --git a/crmeb/app/services/user/UserServices.php b/crmeb/app/services/user/UserServices.php
index 3b64e8b68..5853cfdbf 100644
--- a/crmeb/app/services/user/UserServices.php
+++ b/crmeb/app/services/user/UserServices.php
@@ -2041,6 +2041,17 @@ class UserServices extends BaseServices
if (!$userInfo) {
return false;
}
+
+ //根据手机号码查询此用户注销过,不反推广佣金
+ if ($userInfo['phone'] != '' && $this->dao->getCount(['phone' => $userInfo['phone'], 'is_del' => 1])) {
+ return false;
+ }
+ //根据openid查询此用户注销过,不反推广佣金
+ $openidArray = app()->make(WechatUserServices::class)->getColumn(['uid' => $uid], 'openid', 'id');
+ if ($this->dao->getCount([['openid', 'in', $openidArray], ['is_del', '=', 1]])) {
+ return false;
+ }
+
if (!$spread_user) {
$spread_user = $this->dao->getOne(['uid' => $spread_uid, 'status' => 1]);
}
diff --git a/crmeb/app/services/wechat/WechatServices.php b/crmeb/app/services/wechat/WechatServices.php
index a1f83786d..e79af86dc 100644
--- a/crmeb/app/services/wechat/WechatServices.php
+++ b/crmeb/app/services/wechat/WechatServices.php
@@ -395,8 +395,7 @@ class WechatServices extends BaseServices
if (!$uid && !$res) {
return false;
}
- }
- if ($openid && $storeUserMobile) {
+ } elseif ($openid && $storeUserMobile) {
/** @var UserServices $userServices */
$userServices = app()->make(UserServices::class);
$uid = $this->dao->value(['openid' => $openid], 'uid');
diff --git a/crmeb/crmeb/services/easywechat/orderShipping/OrderClient.php b/crmeb/crmeb/services/easywechat/orderShipping/OrderClient.php
index a5910585b..f888d2c48 100644
--- a/crmeb/crmeb/services/easywechat/orderShipping/OrderClient.php
+++ b/crmeb/crmeb/services/easywechat/orderShipping/OrderClient.php
@@ -4,36 +4,19 @@ namespace crmeb\services\easywechat\orderShipping;
use crmeb\exceptions\AdminException;
use crmeb\services\CacheService;
-use EasyWeChat\Core\AccessToken;
use EasyWeChat\Core\Exceptions\HttpException;
-use think\facade\Cache;
class OrderClient extends BaseOrder
{
- const redis_prefix = 'mini_order';
+ const cache_prefix = 'mini_order';
const express_company = 'ZTO'; // 默认发货快递公司为(中通快递)
-
/**
- * @var \Redis
+ * @var
*/
- protected $redis;
-
- /**
- * @return object|\Redis|null
- *
- * @date 2023/05/10
- * @author yyw
- */
- protected function getRedis()
- {
- if (empty($this->redis)) {
- $this->redis = Cache::store('redis')->handler();
- }
- return $this->redis;
- }
+ protected $cache;
/**
* 处理联系人
@@ -214,8 +197,8 @@ class OrderClient extends BaseOrder
{
$res = $this->isManaged();
if ($res['is_trade_managed']) {
- $key = self::redis_prefix . '_is_trade_managed';
- $this->getRedis()->set($key, $res['is_trade_managed']);
+ $key = self::cache_prefix . '_is_trade_managed';
+ CacheService::set($key, $res['is_trade_managed']);
return true;
} else {
return false;
@@ -232,8 +215,8 @@ class OrderClient extends BaseOrder
*/
public function checkManaged()
{
- $key = self::redis_prefix . '_is_trade_managed';
- if ($this->getRedis()->exists($key)) {
+ $key = self::cache_prefix . '_is_trade_managed';
+ if (CacheService::get($key)) {
return true;
} else {
return $this->setManaged();
@@ -252,10 +235,10 @@ class OrderClient extends BaseOrder
{
$list = $this->getDeliveryList();
if ($list) {
- $key = self::redis_prefix . '_delivery_list';
+ $key = self::cache_prefix . '_delivery_list';
$date = array_column($list['delivery_list'], 'delivery_id', 'delivery_name');
// 创建缓存
- $this->getRedis()->hMSet($key, $date);
+ CacheService::set($key, json_encode($date));
return $date;
} else {
@@ -274,15 +257,14 @@ class OrderClient extends BaseOrder
*/
public function getDelivery($company_name)
{
- $key = self::redis_prefix . '_delivery_list';
- if (!$this->getRedis()->exists($key)) {
+ $key = self::cache_prefix . '_delivery_list';
+ if (!CacheService::get($key)) {
$date = $this->setDeliveryList();
$express_company = $date[$company_name] ?? '';
} else {
- $express_company = $this->getRedis()->hMGet($key, [$company_name])[$company_name] ?? '';
+ $express_company = json_decode(CacheService::get($key), true)[$company_name] ?? '';
}
if (empty($express_company)) {
-// throw new AdminException('物流公司异常2');
$express_company = self::express_company;
}
diff --git a/crmeb/crmeb/services/upload/storage/Cos.php b/crmeb/crmeb/services/upload/storage/Cos.php
index 3e26b9601..1179b8b23 100644
--- a/crmeb/crmeb/services/upload/storage/Cos.php
+++ b/crmeb/crmeb/services/upload/storage/Cos.php
@@ -440,14 +440,11 @@ class Cos extends BaseUpload
public function deleteBucket(string $name)
{
try {
- $res = $this->app()->deleteBucket($name);
- if ($res->get('RequestId')) {
- return true;
- }
+ $this->app()->deleteBucket($name);
+ return true;
} catch (\Throwable $e) {
return $this->setError($e->getMessage());
}
- return false;
}
/**
@@ -459,8 +456,8 @@ class Cos extends BaseUpload
{
$this->storageRegion = $region;
try {
- $res = $this->app()->GetBucketDomain($name);
- $domainRules = $res->toArray()['DomainRules'];
+ $res = $this->app()->getBucketDomain($name);
+ $domainRules = $res['DomainRules'];
return array_column($domainRules, 'Name');
} catch (\Throwable $e) {
}
@@ -533,11 +530,11 @@ class Cos extends BaseUpload
{
$this->storageRegion = $region;
try {
- $res = $this->app()->PutBucketCors($name, [
- 'AllowedHeaders' => ['*'],
- 'AllowedMethods' => ['PUT', 'GET', 'POST', 'DELETE', 'HEAD'],
- 'AllowedOrigins' => ['*'],
- 'ExposeHeaders' => ['ETag', 'Content-Length', 'x-cos-request-id'],
+ $res = $this->app()->putBucketCors($name, [
+ 'AllowedHeader' => ['*'],
+ 'AllowedMethod' => ['PUT', 'GET', 'POST', 'DELETE', 'HEAD'],
+ 'AllowedOrigin' => ['*'],
+ 'ExposeHeader' => ['ETag', 'Content-Length', 'x-cos-request-id'],
'MaxAgeSeconds' => 12
]);
if (isset($res['RequestId'])) {
diff --git a/crmeb/public/install/crmeb.sql b/crmeb/public/install/crmeb.sql
index f76dd5d53..540569c75 100755
--- a/crmeb/public/install/crmeb.sql
+++ b/crmeb/public/install/crmeb.sql
@@ -33607,8 +33607,8 @@ INSERT INTO `eb_system_config` (`id`, `menu_name`, `type`, `input_type`, `config
(116, 'order_seckill_time', 'text', 'number', 27, '', 0, '', 100, 0, '1', '秒杀未支付订单取消时间', '秒杀未支付订单取消时间,单位(小时),如果为0将使用默认活动取消时间,优先使用单独活动配置', 0, 1),
(117, 'order_pink_time', 'text', 'number', 27, '', 0, '', 100, 0, '1', '拼团未支付取消订单时间', '拼团未支付取消订单时间,单位(小时),如果为0将使用默认活动取消时间,优先使用单独活动配置', 0, 1),
(122, 'system_delivery_time', 'text', 'number', 27, '', 0, 'required:true,digits:true,min:0', 100, 0, '7', '自动收货时间', '系统自动收货时间,单位(天),0为不设置自动收货', 80, 1),
-(123, 'sms_account', 'text', 'input', 18, '', 1, '', 0, 0, '\"\"', '一号通AccessKey', '一号通账号内创建的AccessKey', 10, 1),
-(137, 'sms_token', 'text', 'input', 18, '', 1, '', 0, 0, '\"\"', '一号通SecretKey', '一号通账号内创建的SecretKey', 9, 1),
+(123, 'sms_account', 'text', 'input', 18, '', 1, '', 0, 0, '\"\"', '一号通应用AppId', '一号通账号内创建应用的AppId', 10, 1),
+(137, 'sms_token', 'text', 'input', 18, '', 1, '', 0, 0, '\"\"', '一号通应用AppSecret', '一号通账号内创建应用的AppSecret', 9, 1),
(138, 'h5_avatar', 'upload', 'input', 101, '', 1, '', 0, 0, '\"\\/statics\\/system_images\\/default_avatar.jpeg\"', '用户默认头像', '用户默认头像,后台添加用户以及用户登录的默认头像显示,尺寸(80*80)', 3, 1),
(139, 'offline_pay_status', 'radio', 'input', 109, '1=>开启\n2=>关闭', 1, '', 0, 0, '\"1\"', '线下支付', '线下支付请选择开启或关闭', 89, 1),
(141, 'recharge_switch', 'radio', 'input', 28, '1=>开启\n0=>关闭', 1, '', 0, 0, '0', '小程序充值开关', '仅小程序端的充值开关,小程序提交审核前,需要关闭此功能', 4, 1),
@@ -33722,7 +33722,7 @@ INSERT INTO `eb_system_config` (`id`, `menu_name`, `type`, `input_type`, `config
(379, 'ico_path', 'upload', 'input', 26, '', 3, '', 0, 0, '\"\"', 'ICO图标', '程序ICO图标,更换后需要清除浏览器缓存', 85, 1),
(383, 'tengxun_appid', 'text', 'input', 82, '', 0, '', 0, 0, '\"\"', '腾讯云APPID', '腾讯云APPID', 0, 1),
(384, 'extract_type', 'checkbox', 'input', 74, '0=>银行卡\n1=>微信\n2=>支付宝', 1, '', 0, 0, '[\"0\",\"1\",\"2\"]', '提现方式', '提现方式', 0, 1),
-(385, 'integral_frozen', 'text', 'input', 11, '', 1, '', 100, 0, '\"0\"', '积分冻结(天)', '积分冻结(天)', 0, 1),
+(385, 'integral_frozen', 'text', 'input', 11, '', 1, '', 100, 0, '\"0\"', '积分冻结(天)', '积分冻结(天),0为不冻结', 0, 1),
(386, 'print_type', 'radio', 'input', 86, '1=>易联云\n2=>飞鹅云', 1, '', 0, 0, '\"1\"', '平台选择', '打印平台选择', 0, 1),
(387, 'config_export_type', 'radio', 'input', 93, '1=>一号通', 1, '', 0, 0, '1', '电子面单类型', '电子面单类型', 0, 1),
(388, 'customer_corpId', 'text', 'input', 69, '', 1, '', 0, 0, '\"\"', '企业ID', '如果客服链接填写企业微信客服,小程序需要跳转企业微信客服的话需要配置此项,并且在小程序客服中绑定企业ID', 0, 1),
@@ -33806,7 +33806,7 @@ INSERT INTO `eb_system_config_tab` (`id`, `pid`, `title`, `eng_title`, `status`,
(7, 78, '小程序配置', 'routine', 1, 0, 'logo-android', 3, 0),
(9, 0, '分销配置', 'fenxiao', 1, 0, 'md-contacts', 3, 0),
(11, 100, '用户积分配置', 'point', 1, 0, 'logo-euro', 0, 0),
-(18, 65, '一号通', 'system_sms', 1, 0, 'ios-chatboxes', 0, 0),
+(18, 1, '一号通', 'system_sms', 1, 0, 'ios-chatboxes', 0, 0),
(21, 65, '小票打印配置', 'printing_deploy', 1, 0, 'logo-buffer', 3, 0),
(23, 65, '商城支付配置', 'pay_config', 1, 0, 'logo-usd', 3, 70),
(26, 1, '站点配置', 'web_site', 1, 0, '', 0, 100),
@@ -33852,7 +33852,7 @@ INSERT INTO `eb_system_config_tab` (`id`, `pid`, `title`, `eng_title`, `status`,
(103, 102, '基础配置', 'out_basic', 1, 0, '', 3, 0),
(104, 102, '推送配置', 'out_push', 1, 0, '', 3, 0),
(105, 100, '新用户设置', 'new_user_setting', 1, 0, '', 0, 0),
-(106, 5, '机器翻译配置', 'online_translation', 1, 0, '', 0, 0),
+(106, 1, '机器翻译配置', 'online_translation', 1, 0, '', 0, 0),
(107, 21, '飞鹅云配置', 'fey_config', 1, 0, '', 3, 0),
(108, 23, '通联支付', 'allinpay', 1, 0, '', 3, 0),
(109, 23, '基础配置', 'pay_basic', 1, 0, '', 3, 100),
@@ -49486,7 +49486,7 @@ INSERT INTO `eb_system_route` (`id`, `cate_id`, `app_name`, `name`, `describe`,
(840, 91, 'outapi', '用户列表', '', 'user/list', 'GET', 'app/outapi/controller/User.php', 'lst', '[{\"attribute\":\"page\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u5206\\u9875\",\"id\":\"row_333\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"limit\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u6761\\u6570\",\"id\":\"row_340\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '', '[{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u72b6\\u6001\\u7801\",\"id\":\"row_347\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"msg\",\"type\":\"string\",\"trip\":\"\\u4fe1\\u606f\\u63cf\\u8ff0\",\"id\":\"row_354\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"data\",\"type\":\"array\",\"trip\":\"\\u8fd4\\u56de\\u503c\",\"id\":\"row_361\",\"_X_ROW_CHILD\":[{\"attribute\":\"list\",\"type\":\"array\",\"trip\":\"\\u7528\\u6237\\u6570\\u636e\",\"id\":1666945585846,\"parentId\":\"row_361\",\"_X_ROW_CHILD\":[{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":1666945628068,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"real_name\",\"type\":\"string\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":1666945628257,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"trip\":\"\\u5907\\u6ce8\",\"id\":1666945628508,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"nickname\",\"type\":\"string\",\"trip\":\"\\u6635\\u79f0\",\"id\":1666945628681,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"avatar\",\"type\":\"string\",\"trip\":\"\\u5934\\u50cf\",\"id\":1666945629013,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":1666945629174,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"now_money\",\"type\":\"string\",\"trip\":\"\\u4f59\\u989d\",\"id\":1666945629334,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"brokerage_price\",\"type\":\"string\",\"trip\":\"\\u4f63\\u91d1\\u91d1\\u989d\",\"id\":1666945629496,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integral\",\"type\":\"number\",\"trip\":\"\\u79ef\\u5206\",\"id\":1666945629645,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"exp\",\"type\":\"string\",\"trip\":\"\\u4f1a\\u5458\\u7ecf\\u9a8c\",\"id\":1666945629801,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"sign_num\",\"type\":\"number\",\"trip\":\"\\u8fde\\u7eed\\u7b7e\\u5230\\u5929\\u6570\",\"id\":1666945629974,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"user_type\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7c7b\\u578b\",\"id\":1666945630134,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":1666945630280,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\",\"id\":1666945630454,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"agent_level\",\"type\":\"number\",\"trip\":\"\\u5206\\u9500\\u7b49\\u7ea7\",\"id\":1666945630614,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c\",\"id\":1666945630787,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458ID\",\"id\":1666945630933,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_time\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u5173\\u8054\\u65f6\\u95f4\",\"id\":1666945631120,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650\",\"id\":1666945751767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pay_count\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u8d2d\\u4e70\\u6b21\\u6570\",\"id\":1666945751942,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_ever_level\",\"type\":\"number\",\"trip\":\"\\u662f\\u5426\\u6c38\\u4e45\\u6027\\u4f1a\\u5458 0\\u975e\\u6c38\\u4e45 1\\u6c38\\u4e45\",\"id\":1666945752114,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_money_level\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u6765\\u6e90 0\\u4e0d\\u662f 1\\u82b1\\u94b1\\u8d2d\\u4e70\\u7684\\u4f1a\\u5458 2\\u4f1a\\u5458\\u5361\\u9886\\u53d6 3\\u8d60\\u9001\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f\",\"id\":1666945752288,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"overdue_time\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u5230\\u671f\\u65f6\\u95f4\",\"id\":1666945752435,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid_nickname\",\"type\":\"string\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u6635\\u79f0\",\"id\":1666945752623,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level_name\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\\u540d\\u79f0\",\"id\":1666945752767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"add_time\",\"type\":\"number\",\"trip\":\"\\u6dfb\\u52a0\\u65f6\\u95f4\",\"id\":1666945752914,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]}],\"children\":[{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":1666945628068,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"real_name\",\"type\":\"string\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":1666945628257,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"trip\":\"\\u5907\\u6ce8\",\"id\":1666945628508,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"nickname\",\"type\":\"string\",\"trip\":\"\\u6635\\u79f0\",\"id\":1666945628681,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"avatar\",\"type\":\"string\",\"trip\":\"\\u5934\\u50cf\",\"id\":1666945629013,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":1666945629174,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"now_money\",\"type\":\"string\",\"trip\":\"\\u4f59\\u989d\",\"id\":1666945629334,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"brokerage_price\",\"type\":\"string\",\"trip\":\"\\u4f63\\u91d1\\u91d1\\u989d\",\"id\":1666945629496,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integral\",\"type\":\"number\",\"trip\":\"\\u79ef\\u5206\",\"id\":1666945629645,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"exp\",\"type\":\"string\",\"trip\":\"\\u4f1a\\u5458\\u7ecf\\u9a8c\",\"id\":1666945629801,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"sign_num\",\"type\":\"number\",\"trip\":\"\\u8fde\\u7eed\\u7b7e\\u5230\\u5929\\u6570\",\"id\":1666945629974,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"user_type\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7c7b\\u578b\",\"id\":1666945630134,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":1666945630280,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\",\"id\":1666945630454,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"agent_level\",\"type\":\"number\",\"trip\":\"\\u5206\\u9500\\u7b49\\u7ea7\",\"id\":1666945630614,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c\",\"id\":1666945630787,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458ID\",\"id\":1666945630933,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_time\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u5173\\u8054\\u65f6\\u95f4\",\"id\":1666945631120,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650\",\"id\":1666945751767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pay_count\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u8d2d\\u4e70\\u6b21\\u6570\",\"id\":1666945751942,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_ever_level\",\"type\":\"number\",\"trip\":\"\\u662f\\u5426\\u6c38\\u4e45\\u6027\\u4f1a\\u5458 0\\u975e\\u6c38\\u4e45 1\\u6c38\\u4e45\",\"id\":1666945752114,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_money_level\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u6765\\u6e90 0\\u4e0d\\u662f 1\\u82b1\\u94b1\\u8d2d\\u4e70\\u7684\\u4f1a\\u5458 2\\u4f1a\\u5458\\u5361\\u9886\\u53d6 3\\u8d60\\u9001\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f\",\"id\":1666945752288,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"overdue_time\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u5230\\u671f\\u65f6\\u95f4\",\"id\":1666945752435,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid_nickname\",\"type\":\"string\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u6635\\u79f0\",\"id\":1666945752623,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level_name\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\\u540d\\u79f0\",\"id\":1666945752767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"add_time\",\"type\":\"number\",\"trip\":\"\\u6dfb\\u52a0\\u65f6\\u95f4\",\"id\":1666945752914,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]}]},{\"attribute\":\"count\",\"type\":\"number\",\"trip\":\"\\u603b\\u6761\\u6570\",\"id\":1666945588267,\"parentId\":\"row_361\",\"_X_ROW_CHILD\":[],\"children\":[]}],\"children\":[{\"attribute\":\"list\",\"type\":\"array\",\"trip\":\"\\u7528\\u6237\\u6570\\u636e\",\"id\":1666945585846,\"parentId\":\"row_361\",\"_X_ROW_CHILD\":[{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":1666945628068,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"real_name\",\"type\":\"string\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":1666945628257,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"trip\":\"\\u5907\\u6ce8\",\"id\":1666945628508,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"nickname\",\"type\":\"string\",\"trip\":\"\\u6635\\u79f0\",\"id\":1666945628681,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"avatar\",\"type\":\"string\",\"trip\":\"\\u5934\\u50cf\",\"id\":1666945629013,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":1666945629174,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"now_money\",\"type\":\"string\",\"trip\":\"\\u4f59\\u989d\",\"id\":1666945629334,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"brokerage_price\",\"type\":\"string\",\"trip\":\"\\u4f63\\u91d1\\u91d1\\u989d\",\"id\":1666945629496,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integral\",\"type\":\"number\",\"trip\":\"\\u79ef\\u5206\",\"id\":1666945629645,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"exp\",\"type\":\"string\",\"trip\":\"\\u4f1a\\u5458\\u7ecf\\u9a8c\",\"id\":1666945629801,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"sign_num\",\"type\":\"number\",\"trip\":\"\\u8fde\\u7eed\\u7b7e\\u5230\\u5929\\u6570\",\"id\":1666945629974,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"user_type\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7c7b\\u578b\",\"id\":1666945630134,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":1666945630280,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\",\"id\":1666945630454,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"agent_level\",\"type\":\"number\",\"trip\":\"\\u5206\\u9500\\u7b49\\u7ea7\",\"id\":1666945630614,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c\",\"id\":1666945630787,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458ID\",\"id\":1666945630933,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_time\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u5173\\u8054\\u65f6\\u95f4\",\"id\":1666945631120,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650\",\"id\":1666945751767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pay_count\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u8d2d\\u4e70\\u6b21\\u6570\",\"id\":1666945751942,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_ever_level\",\"type\":\"number\",\"trip\":\"\\u662f\\u5426\\u6c38\\u4e45\\u6027\\u4f1a\\u5458 0\\u975e\\u6c38\\u4e45 1\\u6c38\\u4e45\",\"id\":1666945752114,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_money_level\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u6765\\u6e90 0\\u4e0d\\u662f 1\\u82b1\\u94b1\\u8d2d\\u4e70\\u7684\\u4f1a\\u5458 2\\u4f1a\\u5458\\u5361\\u9886\\u53d6 3\\u8d60\\u9001\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f\",\"id\":1666945752288,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"overdue_time\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u5230\\u671f\\u65f6\\u95f4\",\"id\":1666945752435,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid_nickname\",\"type\":\"string\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u6635\\u79f0\",\"id\":1666945752623,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level_name\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\\u540d\\u79f0\",\"id\":1666945752767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"add_time\",\"type\":\"number\",\"trip\":\"\\u6dfb\\u52a0\\u65f6\\u95f4\",\"id\":1666945752914,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]}],\"children\":[{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":1666945628068,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"real_name\",\"type\":\"string\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":1666945628257,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"trip\":\"\\u5907\\u6ce8\",\"id\":1666945628508,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"nickname\",\"type\":\"string\",\"trip\":\"\\u6635\\u79f0\",\"id\":1666945628681,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"avatar\",\"type\":\"string\",\"trip\":\"\\u5934\\u50cf\",\"id\":1666945629013,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":1666945629174,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"now_money\",\"type\":\"string\",\"trip\":\"\\u4f59\\u989d\",\"id\":1666945629334,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"brokerage_price\",\"type\":\"string\",\"trip\":\"\\u4f63\\u91d1\\u91d1\\u989d\",\"id\":1666945629496,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integral\",\"type\":\"number\",\"trip\":\"\\u79ef\\u5206\",\"id\":1666945629645,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"exp\",\"type\":\"string\",\"trip\":\"\\u4f1a\\u5458\\u7ecf\\u9a8c\",\"id\":1666945629801,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"sign_num\",\"type\":\"number\",\"trip\":\"\\u8fde\\u7eed\\u7b7e\\u5230\\u5929\\u6570\",\"id\":1666945629974,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"user_type\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7c7b\\u578b\",\"id\":1666945630134,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":1666945630280,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\",\"id\":1666945630454,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"agent_level\",\"type\":\"number\",\"trip\":\"\\u5206\\u9500\\u7b49\\u7ea7\",\"id\":1666945630614,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c\",\"id\":1666945630787,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458ID\",\"id\":1666945630933,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_time\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u5173\\u8054\\u65f6\\u95f4\",\"id\":1666945631120,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650\",\"id\":1666945751767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pay_count\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u8d2d\\u4e70\\u6b21\\u6570\",\"id\":1666945751942,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_ever_level\",\"type\":\"number\",\"trip\":\"\\u662f\\u5426\\u6c38\\u4e45\\u6027\\u4f1a\\u5458 0\\u975e\\u6c38\\u4e45 1\\u6c38\\u4e45\",\"id\":1666945752114,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_money_level\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u6765\\u6e90 0\\u4e0d\\u662f 1\\u82b1\\u94b1\\u8d2d\\u4e70\\u7684\\u4f1a\\u5458 2\\u4f1a\\u5458\\u5361\\u9886\\u53d6 3\\u8d60\\u9001\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f\",\"id\":1666945752288,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"overdue_time\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u5230\\u671f\\u65f6\\u95f4\",\"id\":1666945752435,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid_nickname\",\"type\":\"string\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u6635\\u79f0\",\"id\":1666945752623,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level_name\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\\u540d\\u79f0\",\"id\":1666945752767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"add_time\",\"type\":\"number\",\"trip\":\"\\u6dfb\\u52a0\\u65f6\\u95f4\",\"id\":1666945752914,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]}]},{\"attribute\":\"count\",\"type\":\"number\",\"trip\":\"\\u603b\\u6761\\u6570\",\"id\":1666945588267,\"parentId\":\"row_361\",\"_X_ROW_CHILD\":[],\"children\":[]}]},{\"attribute\":\"list\",\"type\":\"array\",\"trip\":\"\\u7528\\u6237\\u6570\\u636e\",\"id\":\"1666945585846\",\"parentId\":\"row_361\",\"_X_ROW_CHILD\":[{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":1666945628068,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"real_name\",\"type\":\"string\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":1666945628257,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"trip\":\"\\u5907\\u6ce8\",\"id\":1666945628508,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"nickname\",\"type\":\"string\",\"trip\":\"\\u6635\\u79f0\",\"id\":1666945628681,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"avatar\",\"type\":\"string\",\"trip\":\"\\u5934\\u50cf\",\"id\":1666945629013,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":1666945629174,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"now_money\",\"type\":\"string\",\"trip\":\"\\u4f59\\u989d\",\"id\":1666945629334,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"brokerage_price\",\"type\":\"string\",\"trip\":\"\\u4f63\\u91d1\\u91d1\\u989d\",\"id\":1666945629496,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integral\",\"type\":\"number\",\"trip\":\"\\u79ef\\u5206\",\"id\":1666945629645,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"exp\",\"type\":\"string\",\"trip\":\"\\u4f1a\\u5458\\u7ecf\\u9a8c\",\"id\":1666945629801,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"sign_num\",\"type\":\"number\",\"trip\":\"\\u8fde\\u7eed\\u7b7e\\u5230\\u5929\\u6570\",\"id\":1666945629974,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"user_type\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7c7b\\u578b\",\"id\":1666945630134,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":1666945630280,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\",\"id\":1666945630454,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"agent_level\",\"type\":\"number\",\"trip\":\"\\u5206\\u9500\\u7b49\\u7ea7\",\"id\":1666945630614,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c\",\"id\":1666945630787,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458ID\",\"id\":1666945630933,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_time\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u5173\\u8054\\u65f6\\u95f4\",\"id\":1666945631120,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650\",\"id\":1666945751767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pay_count\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u8d2d\\u4e70\\u6b21\\u6570\",\"id\":1666945751942,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_ever_level\",\"type\":\"number\",\"trip\":\"\\u662f\\u5426\\u6c38\\u4e45\\u6027\\u4f1a\\u5458 0\\u975e\\u6c38\\u4e45 1\\u6c38\\u4e45\",\"id\":1666945752114,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_money_level\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u6765\\u6e90 0\\u4e0d\\u662f 1\\u82b1\\u94b1\\u8d2d\\u4e70\\u7684\\u4f1a\\u5458 2\\u4f1a\\u5458\\u5361\\u9886\\u53d6 3\\u8d60\\u9001\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f\",\"id\":1666945752288,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"overdue_time\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u5230\\u671f\\u65f6\\u95f4\",\"id\":1666945752435,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid_nickname\",\"type\":\"string\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u6635\\u79f0\",\"id\":1666945752623,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level_name\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\\u540d\\u79f0\",\"id\":1666945752767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"add_time\",\"type\":\"number\",\"trip\":\"\\u6dfb\\u52a0\\u65f6\\u95f4\",\"id\":1666945752914,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]}],\"children\":[{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":1666945628068,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"real_name\",\"type\":\"string\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":1666945628257,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"trip\":\"\\u5907\\u6ce8\",\"id\":1666945628508,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"nickname\",\"type\":\"string\",\"trip\":\"\\u6635\\u79f0\",\"id\":1666945628681,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"avatar\",\"type\":\"string\",\"trip\":\"\\u5934\\u50cf\",\"id\":1666945629013,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":1666945629174,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"now_money\",\"type\":\"string\",\"trip\":\"\\u4f59\\u989d\",\"id\":1666945629334,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"brokerage_price\",\"type\":\"string\",\"trip\":\"\\u4f63\\u91d1\\u91d1\\u989d\",\"id\":1666945629496,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integral\",\"type\":\"number\",\"trip\":\"\\u79ef\\u5206\",\"id\":1666945629645,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"exp\",\"type\":\"string\",\"trip\":\"\\u4f1a\\u5458\\u7ecf\\u9a8c\",\"id\":1666945629801,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"sign_num\",\"type\":\"number\",\"trip\":\"\\u8fde\\u7eed\\u7b7e\\u5230\\u5929\\u6570\",\"id\":1666945629974,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"user_type\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7c7b\\u578b\",\"id\":1666945630134,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":1666945630280,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\",\"id\":1666945630454,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"agent_level\",\"type\":\"number\",\"trip\":\"\\u5206\\u9500\\u7b49\\u7ea7\",\"id\":1666945630614,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c\",\"id\":1666945630787,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458ID\",\"id\":1666945630933,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_time\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u5173\\u8054\\u65f6\\u95f4\",\"id\":1666945631120,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650\",\"id\":1666945751767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pay_count\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u8d2d\\u4e70\\u6b21\\u6570\",\"id\":1666945751942,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_ever_level\",\"type\":\"number\",\"trip\":\"\\u662f\\u5426\\u6c38\\u4e45\\u6027\\u4f1a\\u5458 0\\u975e\\u6c38\\u4e45 1\\u6c38\\u4e45\",\"id\":1666945752114,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_money_level\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u6765\\u6e90 0\\u4e0d\\u662f 1\\u82b1\\u94b1\\u8d2d\\u4e70\\u7684\\u4f1a\\u5458 2\\u4f1a\\u5458\\u5361\\u9886\\u53d6 3\\u8d60\\u9001\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f\",\"id\":1666945752288,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"overdue_time\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u5230\\u671f\\u65f6\\u95f4\",\"id\":1666945752435,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid_nickname\",\"type\":\"string\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u6635\\u79f0\",\"id\":1666945752623,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level_name\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\\u540d\\u79f0\",\"id\":1666945752767,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"add_time\",\"type\":\"number\",\"trip\":\"\\u6dfb\\u52a0\\u65f6\\u95f4\",\"id\":1666945752914,\"parentId\":1666945585846,\"_X_ROW_CHILD\":[],\"children\":[]}]},{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":\"1666945628068\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"real_name\",\"type\":\"string\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":\"1666945628257\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"trip\":\"\\u5907\\u6ce8\",\"id\":\"1666945628508\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"nickname\",\"type\":\"string\",\"trip\":\"\\u6635\\u79f0\",\"id\":\"1666945628681\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"avatar\",\"type\":\"string\",\"trip\":\"\\u5934\\u50cf\",\"id\":\"1666945629013\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":\"1666945629174\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"now_money\",\"type\":\"string\",\"trip\":\"\\u4f59\\u989d\",\"id\":\"1666945629334\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"brokerage_price\",\"type\":\"string\",\"trip\":\"\\u4f63\\u91d1\\u91d1\\u989d\",\"id\":\"1666945629496\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integral\",\"type\":\"number\",\"trip\":\"\\u79ef\\u5206\",\"id\":\"1666945629645\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"exp\",\"type\":\"string\",\"trip\":\"\\u4f1a\\u5458\\u7ecf\\u9a8c\",\"id\":\"1666945629801\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"sign_num\",\"type\":\"number\",\"trip\":\"\\u8fde\\u7eed\\u7b7e\\u5230\\u5929\\u6570\",\"id\":\"1666945629974\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"user_type\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7c7b\\u578b\",\"id\":\"1666945630134\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":\"1666945630280\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\",\"id\":\"1666945630454\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"agent_level\",\"type\":\"number\",\"trip\":\"\\u5206\\u9500\\u7b49\\u7ea7\",\"id\":\"1666945630614\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c\",\"id\":\"1666945630787\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458ID\",\"id\":\"1666945630933\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_time\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u5173\\u8054\\u65f6\\u95f4\",\"id\":\"1666945631120\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650\",\"id\":\"1666945751767\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pay_count\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237\\u8d2d\\u4e70\\u6b21\\u6570\",\"id\":\"1666945751942\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_ever_level\",\"type\":\"number\",\"trip\":\"\\u662f\\u5426\\u6c38\\u4e45\\u6027\\u4f1a\\u5458 0\\u975e\\u6c38\\u4e45 1\\u6c38\\u4e45\",\"id\":\"1666945752114\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_money_level\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u6765\\u6e90 0\\u4e0d\\u662f 1\\u82b1\\u94b1\\u8d2d\\u4e70\\u7684\\u4f1a\\u5458 2\\u4f1a\\u5458\\u5361\\u9886\\u53d6 3\\u8d60\\u9001\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f\",\"id\":\"1666945752288\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"overdue_time\",\"type\":\"number\",\"trip\":\"\\u4f1a\\u5458\\u5230\\u671f\\u65f6\\u95f4\",\"id\":\"1666945752435\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid_nickname\",\"type\":\"string\",\"trip\":\"\\u63a8\\u5e7f\\u5458\\u6635\\u79f0\",\"id\":\"1666945752623\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level_name\",\"type\":\"string\",\"trip\":\"\\u7528\\u6237\\u7b49\\u7ea7\\u540d\\u79f0\",\"id\":\"1666945752767\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"add_time\",\"type\":\"number\",\"trip\":\"\\u6dfb\\u52a0\\u65f6\\u95f4\",\"id\":\"1666945752914\",\"parentId\":\"1666945585846\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"count\",\"type\":\"number\",\"trip\":\"\\u603b\\u6761\\u6570\",\"id\":\"1666945588267\",\"parentId\":\"row_361\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '/user/list?page=1&limit=20', '{\n \"status\": 200,\n \"msg\": \"success\",\n \"data\": {\n \"list\": [\n {\n \"uid\": 2,\n \"real_name\": \"喜羊羊\",\n \"mark\": \"\",\n \"nickname\": \"130****0001\",\n \"avatar\": \"http://bz.wuht.net/statics/system_images/default_avatar.jpeg\",\n \"phone\": \"13000000001\",\n \"now_money\": \"97892.39\",\n \"brokerage_price\": \"1.00\",\n \"integral\": 1008,\n \"exp\": \"1008.90\",\n \"sign_num\": 0,\n \"user_type\": \"H5\",\n \"status\": 1,\n \"level\": 2,\n \"agent_level\": 0,\n \"spread_open\": 1,\n \"spread_uid\": 0,\n \"spread_time\": 0,\n \"is_promoter\": 1,\n \"pay_count\": 5,\n \"is_ever_level\": 0,\n \"is_money_level\": 0,\n \"overdue_time\": 0,\n \"add_time\": 1658214778,\n \"spread_uid_nickname\": \"\",\n \"level_name\": \"V2\"\n },\n {\n \"uid\": 1,\n \"real_name\": \"哒答\",\n \"mark\": \"\",\n \"nickname\": \"momo\",\n \"avatar\": \"http://thirdwx.qlogo.cn/mmopen/vi_32/Q3auHgzwzM6XbXMe12oINNuq9uEaxLDWpQxShj4FrLP9vicJRxaP36eLoxIu60pqPfXL6RibvYsGzE4RpXTjgZiag/132\",\n \"phone\": \"13000000000\",\n \"now_money\": \"97982.00\",\n \"brokerage_price\": \"0.00\",\n \"integral\": 0,\n \"exp\": \"0.00\",\n \"sign_num\": 0,\n \"user_type\": \"小程序\",\n \"status\": 1,\n \"level\": 0,\n \"agent_level\": 0,\n \"spread_open\": 1,\n \"spread_uid\": 0,\n \"spread_time\": 0,\n \"is_promoter\": 1,\n \"pay_count\": 3,\n \"is_ever_level\": 0,\n \"is_money_level\": 0,\n \"overdue_time\": 0,\n \"add_time\": 1658214670,\n \"spread_uid_nickname\": \"\",\n \"level_name\": \"\"\n }\n ],\n \"count\": 2\n }\n}', 0, '2023-05-06 08:03:02', NULL),
(841, 91, 'outapi', '新增用户', '', 'user', 'POST', 'app/outapi/controller/User.php', 'save', '[{\"attribute\":\"real_name\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":\"row_247\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":\"row_254\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u5907\\u6ce8\",\"id\":\"row_261\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pwd\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u5bc6\\u7801\",\"id\":\"row_268\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u7b49\\u7ea7ID\\uff0c\\u4ece\\u7b49\\u7ea7\\u5217\\u8868\\u83b7\\u53d6\",\"id\":\"row_275\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c 1\\u5f00\\u542f 0\\u5173\\u95ed(\\u9ed8\\u8ba4)\",\"id\":\"row_282\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650 1\\u5f00\\u542f 0\\u5173\\u95ed(\\u9ed8\\u8ba4)\",\"id\":\"row_289\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":\"row_296\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '', '[{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u72b6\\u6001\\u7801\",\"id\":\"row_303\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"msg\",\"type\":\"string\",\"trip\":\"\\u4fe1\\u606f\\u63cf\\u8ff0\",\"id\":\"row_310\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"data\",\"type\":\"array\",\"trip\":\"\\u8fd4\\u56de\\u503c\",\"id\":\"row_317\",\"_X_ROW_CHILD\":[{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":1665988030602,\"parentId\":\"row_317\",\"_X_ROW_CHILD\":[],\"children\":[]}],\"children\":[{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":1665988030602,\"parentId\":\"row_317\",\"_X_ROW_CHILD\":[],\"children\":[]}]},{\"attribute\":\"uid\",\"type\":\"number\",\"trip\":\"\\u7528\\u6237ID\",\"id\":\"1665988030602\",\"parentId\":\"row_317\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '{\n \"real_name\": \"张三\",\n \"phone\": \"15289381076\",\n \"mark\": \"重要客户\",\n \"pwd\": \"123123\",\n \"level\": 5,\n \"spread_open\": 1,\n \"is_promoter\": 1,\n \"status\": 1\n}', '{\n \"status\": 200,\n \"msg\": \"添加成功\",\n \"data\": {\n \"uid\": 10\n }\n}', 0, '2023-05-06 08:03:02', NULL),
(842, 91, 'outapi', '修改用户', '', 'user/', 'PUT', 'app/outapi/controller/User.php', 'update', '[{\"attribute\":\"real_name\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u771f\\u5b9e\\u59d3\\u540d\",\"id\":\"row_247\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u624b\\u673a\\u53f7\",\"id\":\"row_254\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"mark\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u5907\\u6ce8\",\"id\":\"row_261\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"pwd\",\"type\":\"string\",\"must\":\"0\",\"trip\":\"\\u5bc6\\u7801\\uff0c\\u7559\\u7a7a\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_268\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u7b49\\u7ea7ID\\uff0c\\u4ece\\u7b49\\u7ea7\\u5217\\u8868\\u83b7\\u53d6\",\"id\":\"row_275\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u63a8\\u5e7f\\u8d44\\u683c 1\\u5f00\\u542f 0\\u5173\\u95ed(\\u9ed8\\u8ba4)\",\"id\":\"row_282\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"is_promoter\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u63a8\\u5e7f\\u6743\\u9650 1\\u5f00\\u542f 0\\u5173\\u95ed(\\u9ed8\\u8ba4)\",\"id\":\"row_289\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u7528\\u6237\\u72b6\\u6001 1\\u542f\\u7528 0\\u7981\\u7528\",\"id\":\"row_296\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '', '[{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u72b6\\u6001\\u7801\",\"id\":\"row_210\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"msg\",\"type\":\"string\",\"trip\":\"\\u4fe1\\u606f\\u63cf\\u8ff0\",\"id\":\"row_217\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '/user/1\n{\n \"real_name\": \"张某\",\n \"phone\": \"15289381077\",\n \"mark\": \"重要客户\",\n \"pwd\": \"123123\",\n \"level\": 4,\n \"spread_open\": 1,\n \"is_promoter\": 1,\n \"status\": 1\n}', '{\n \"status\": 200,\n \"msg\": \"修改成功\"\n}', 0, '2023-05-06 08:03:02', NULL),
-(843, 91, 'outapi', '赠送积分/金额', '', 'user/give/', 'PUT', 'app/outapi/controller/User.php', 'give', '[{\"attribute\":\"money_status\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4f59\\u989d\\u4fee\\u6539\\u7c7b\\u578b 1\\u589e\\u52a0 2\\u51cf\\u5c11\",\"id\":\"row_290\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"money\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u4f59\\u989d 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_297\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integration_status\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u79ef\\u5206\\u4fee\\u6539\\u7c7b\\u578b 1\\u589e\\u52a0 2\\u51cf\\u5c11\",\"id\":\"row_304\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integration\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u79ef\\u5206 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_311\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"days\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f \\u4ee5\\u5929\\u4e3a\\u5355\\u4f4d\\u7d2f\\u52a0 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_318\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"coupon\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4f18\\u60e0\\u5238ID 0\\u4e0d\\u8d60\\u9001\",\"id\":\"row_325\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '', '[{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u72b6\\u6001\\u7801\",\"id\":\"row_332\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"msg\",\"type\":\"string\",\"trip\":\"\\u4fe1\\u606f\\u63cf\\u8ff0\",\"id\":\"row_339\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '/user/give/1\n{\n \"money_status\": 1,\n \"money\": \"9.02\",\n \"integration_status\": 1,\n \"integration\": 50,\n \"days\": 1,\n \"coupon\": 0\n}', '{\n \"status\": 200,\n \"msg\": \"操作成功\"\n}', 0, '2023-05-06 08:03:02', NULL),
+(843, 91, 'outapi', '赠送金额', '', 'user/give_balance/', 'PUT', 'app/outapi/controller/User.php', 'giveBalance', '[{\"attribute\":\"money_status\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4f59\\u989d\\u4fee\\u6539\\u7c7b\\u578b 1\\u589e\\u52a0 2\\u51cf\\u5c11\",\"id\":\"row_290\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"money\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u4f59\\u989d 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_297\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integration_status\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u79ef\\u5206\\u4fee\\u6539\\u7c7b\\u578b 1\\u589e\\u52a0 2\\u51cf\\u5c11\",\"id\":\"row_304\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integration\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u79ef\\u5206 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_311\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"days\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f \\u4ee5\\u5929\\u4e3a\\u5355\\u4f4d\\u7d2f\\u52a0 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_318\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"coupon\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4f18\\u60e0\\u5238ID 0\\u4e0d\\u8d60\\u9001\",\"id\":\"row_325\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '', '[{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u72b6\\u6001\\u7801\",\"id\":\"row_332\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"msg\",\"type\":\"string\",\"trip\":\"\\u4fe1\\u606f\\u63cf\\u8ff0\",\"id\":\"row_339\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '/user/give_balance/1\n{\n \"money_status\": 1,\n \"money\": \"9.02\",\n \"integration_status\": 1,\n \"integration\": 50,\n \"days\": 1,\n \"coupon\": 0\n}', '{\n \"status\": 200,\n \"msg\": \"操作成功\"\n}', 0, '2023-05-06 08:03:02', NULL),
(844, 92, 'kefuapi', '账号登录', '', 'login', 'POST', 'app/kefuapi/controller/Login.php', 'login', '', '', '', '', '', 0, '2023-05-06 08:03:19', NULL),
(845, 92, 'kefuapi', '获取扫码登录key', '', 'key', 'GET', 'app/kefuapi/controller/Login.php', 'getLoginKey', '', '', '', '', '', 0, '2023-05-06 08:03:19', NULL),
(846, 92, 'kefuapi', '检测扫码情况', '', 'scan/', 'GET', 'app/kefuapi/controller/Login.php', 'scanLogin', '', '', '', '', '', 0, '2023-05-06 08:03:19', NULL),
@@ -49807,6 +49807,11 @@ INSERT INTO `eb_system_route` (`id`, `cate_id`, `app_name`, `name`, `describe`,
(1692, 183, 'api', '删除发票', '', 'v2/invoice/del/', 'GET', 'app/api/controller/v2/user/UserInvoiceController.php', 'delInvoice', '', '', '', '', '', 0, '2023-05-06 08:12:51', NULL),
(1693, 183, 'api', '订单申请开票记录', '', 'v2/order/invoice_list', 'GET', 'app/api/controller/v2/order/StoreOrderInvoiceController.php', 'list', '', '', '', '', '', 0, '2023-05-06 08:12:51', NULL),
(1694, 183, 'api', '订单开票详情', '', 'v2/order/invoice_detail/', 'GET', 'app/api/controller/v2/order/StoreOrderInvoiceController.php', 'detail', '', '', '', '', '', 0, '2023-05-06 08:12:51', NULL);
+INSERT INTO `eb_system_route` (`id`, `cate_id`, `app_name`, `name`, `describe`, `path`, `method`, `file_path`, `action`, `request`, `request_type`, `response`, `request_example`, `response_example`, `type`, `add_time`, `delete_time`) VALUES
+(1696, 91, 'outapi', '用户详情', '获取用户详情', 'user/info/', 'GET', 'app/outapi/controller/User.php', 'userInfo', '[{\"attribute\":\"uid\",\"type\":\"\",\"must\":\"1\",\"trip\":\"\\u7528\\u6237uid\",\"id\":\"row_17\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '', '[{\"attribute\":\"uid\",\"type\":\"\",\"trip\":\"\\u7528\\u6237uid\",\"id\":\"row_24\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"real_name\",\"type\":\"\",\"trip\":\"\\u540d\\u79f0\",\"id\":\"row_32\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"nickname\",\"type\":\"\",\"trip\":\"\\u6635\\u79f0\",\"id\":\"row_40\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"avatar\",\"type\":\"\",\"trip\":\"\\u5934\\u50cf\",\"id\":\"row_48\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"phone\",\"type\":\"\",\"trip\":\"\\u7535\\u8bdd\",\"id\":\"row_56\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"now_money\",\"type\":\"\",\"trip\":\"\\u4f59\\u989d\",\"id\":\"row_64\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"brokerage_price\",\"type\":\"\",\"trip\":\"\\u4f63\\u91d1\",\"id\":\"row_72\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integral\",\"type\":\"\",\"trip\":\"\\u79ef\\u5206\",\"id\":\"row_80\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"exp\",\"type\":\"\",\"trip\":\"\\u7ecf\\u9a8c\",\"id\":\"row_88\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"user_type\",\"type\":\"\",\"trip\":\"\\u7528\\u6237\\u7c7b\\u578b\",\"id\":\"row_104\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"status\",\"type\":\"\",\"trip\":\"\\u72b6\\u6001\",\"id\":\"row_112\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"level\",\"type\":\"\",\"trip\":\"\\u7b49\\u7ea7\",\"id\":\"row_120\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"agent_level\",\"type\":\"\",\"trip\":\"\\u5206\\u9500\\u7b49\\u7ea7\",\"id\":\"row_128\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_open\",\"type\":\"\",\"trip\":\"\\u5206\\u9500\\u5f00\\u542f\",\"id\":\"row_136\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_uid\",\"type\":\"\",\"trip\":\"\\u4e0a\\u7ea7uid\",\"id\":\"row_144\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_time\",\"type\":\"\",\"trip\":\"\\u4e0a\\u7ea7\\u6635\\u79f0\",\"id\":\"row_152\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"spread_name\",\"type\":\"\",\"trip\":\"\\u7ed1\\u5b9a\\u65f6\\u95f4\",\"id\":\"row_160\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"add_time\",\"type\":\"\",\"trip\":\"\\u6dfb\\u52a0\\u65f6\\u95f4\",\"id\":\"row_168\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '/user/info/1\n{\n \"money_status\": 1,\n \"money\": \"9.02\",\n \"integration_status\": 1,\n \"integration\": 50,\n \"days\": 1,\n \"coupon\": 0\n}', '{\"status\":\"200\",\"msg\":\"success\",\"data\":{\"data\":{\"uid\":1,\"real_name\":\"\\u5f20\\u4e09\",\"mark\":\"\",\"nickname\":\"CRMEB\",\"avatar\":\"\\/statics\\/system_images\\/default_avatar.jpeg\",\"phone\":\"13000000000\",\"now_money\":\"9744.45\",\"brokerage_price\":\"126.89\",\"integral\":9701,\"exp\":\"3000.00\",\"sign_num\":0,\"user_type\":\"H5\",\"status\":\"\\u6b63\\u5e38\",\"level\":\"V3\",\"agent_level\":\"\\u65e0\",\"spread_open\":\"\\u5206\\u9500\\u5f00\\u542f\",\"spread_uid\":0,\"spread_time\":\"1970-01-01 08:00:00\",\"is_promoter\":1,\"pay_count\":2,\"is_ever_level\":0,\"is_money_level\":0,\"overdue_time\":0,\"add_time\":1642573867,\"spread_name\":\"\\u65e0\"}}}', 0, '2023-07-07 14:42:04', NULL);
+INSERT INTO `eb_system_route` (`id`, `cate_id`, `app_name`, `name`, `describe`, `path`, `method`, `file_path`, `action`, `request`, `request_type`, `response`, `request_example`, `response_example`, `type`, `add_time`, `delete_time`) VALUES
+(1697, 91, 'outapi', '赠送积分', '', 'user/give_point/', 'GET', 'app/outapi/controller/User.php', 'givePoint', '[{\"attribute\":\"money_status\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4f59\\u989d\\u4fee\\u6539\\u7c7b\\u578b 1\\u589e\\u52a0 2\\u51cf\\u5c11\",\"id\":\"row_290\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"money\",\"type\":\"string\",\"must\":\"1\",\"trip\":\"\\u4f59\\u989d 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_297\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integration_status\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u79ef\\u5206\\u4fee\\u6539\\u7c7b\\u578b 1\\u589e\\u52a0 2\\u51cf\\u5c11\",\"id\":\"row_304\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"integration\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u79ef\\u5206 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_311\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"days\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4ed8\\u8d39\\u4f1a\\u5458\\u65f6\\u957f \\u4ee5\\u5929\\u4e3a\\u5355\\u4f4d\\u7d2f\\u52a0 0\\u4e0d\\u66f4\\u65b0\",\"id\":\"row_318\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"coupon\",\"type\":\"number\",\"must\":\"1\",\"trip\":\"\\u4f18\\u60e0\\u5238ID 0\\u4e0d\\u8d60\\u9001\",\"id\":\"row_325\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '', '[{\"attribute\":\"status\",\"type\":\"number\",\"trip\":\"\\u72b6\\u6001\\u7801\",\"id\":\"row_332\",\"_X_ROW_CHILD\":[],\"children\":[]},{\"attribute\":\"msg\",\"type\":\"string\",\"trip\":\"\\u4fe1\\u606f\\u63cf\\u8ff0\",\"id\":\"row_339\",\"_X_ROW_CHILD\":[],\"children\":[]}]', '/user/give_point/1\n{\n \"money_status\": 1,\n \"money\": \"9.02\",\n \"integration_status\": 1,\n \"integration\": 50,\n \"days\": 1,\n \"coupon\": 0\n}', '', 0, '0000-00-00 00:00:00', NULL);
+
-- --------------------------------------------------------
@@ -49984,6 +49989,7 @@ CREATE TABLE IF NOT EXISTS `eb_system_storage` (
`region` varchar(100) NOT NULL DEFAULT '' COMMENT '地域',
`acl` enum('private','public-read','public-read-write') NOT NULL DEFAULT 'public-read' COMMENT '权限',
`domain` varchar(100) NOT NULL DEFAULT '' COMMENT '空间域名',
+ `cdn` varchar(255) NOT NULL DEFAULT '' COMMENT 'CDN加速域名',
`cname` varchar(255) NOT NULL DEFAULT '' COMMENT 'CNAME值',
`is_ssl` tinyint(1) NOT NULL DEFAULT '0' COMMENT '0=http,1=https',
`status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态',
diff --git a/readme/pic/PHP功能列表.jpg b/readme/pic/PHP功能列表.jpg
new file mode 100644
index 000000000..8f0d7e411
Binary files /dev/null and b/readme/pic/PHP功能列表.jpg differ
diff --git a/readme/pic/ui.jpg b/readme/pic/ui.jpg
new file mode 100644
index 000000000..3308da8bb
Binary files /dev/null and b/readme/pic/ui.jpg differ
diff --git a/readme/pic/ui2.jpg b/readme/pic/ui2.jpg
new file mode 100644
index 000000000..a735a7fa6
Binary files /dev/null and b/readme/pic/ui2.jpg differ
diff --git a/readme/pic/ui2_01.jpg b/readme/pic/ui2_01.jpg
new file mode 100644
index 000000000..e6abccb5e
Binary files /dev/null and b/readme/pic/ui2_01.jpg differ
diff --git a/readme/pic/ui2_02.jpg b/readme/pic/ui2_02.jpg
new file mode 100644
index 000000000..68081d412
Binary files /dev/null and b/readme/pic/ui2_02.jpg differ
diff --git a/readme/pic/ui_01.jpg b/readme/pic/ui_01.jpg
new file mode 100644
index 000000000..a9d2a62fd
Binary files /dev/null and b/readme/pic/ui_01.jpg differ
diff --git a/readme/pic/ui_02.jpg b/readme/pic/ui_02.jpg
new file mode 100644
index 000000000..ac8c7234b
Binary files /dev/null and b/readme/pic/ui_02.jpg differ
diff --git a/readme/pic/小剧场.jpg b/readme/pic/小剧场.jpg
new file mode 100644
index 000000000..b79b5da7f
Binary files /dev/null and b/readme/pic/小剧场.jpg differ
diff --git a/readme/pic/联系我们.jpg b/readme/pic/联系我们.jpg
new file mode 100644
index 000000000..1cdd25b33
Binary files /dev/null and b/readme/pic/联系我们.jpg differ
diff --git a/template/admin/src/components/goodsList/index.vue b/template/admin/src/components/goodsList/index.vue
index 72b461884..ed8e64eea 100644
--- a/template/admin/src/components/goodsList/index.vue
+++ b/template/admin/src/components/goodsList/index.vue
@@ -13,7 +13,7 @@
v-model="formValidate.cate_id"
size="small"
:options="treeSelect"
- :props="{ emitPath: false }"
+ :props="{ checkStrictly: true, emitPath: false }"
clearable
>
diff --git a/template/admin/src/components/uploadPictures/index.vue b/template/admin/src/components/uploadPictures/index.vue
index baa82f824..ab562e14c 100644
--- a/template/admin/src/components/uploadPictures/index.vue
+++ b/template/admin/src/components/uploadPictures/index.vue
@@ -402,6 +402,7 @@ export default {
pid: this.pids,
images: this.ids.toString(),
};
+ if (!data.images) return;
moveApi(data)
.then(async (res) => {
this.$message.success(res.msg);
diff --git a/template/admin/src/pages/marketing/storeIntegralOrder/components/tableList.vue b/template/admin/src/pages/marketing/storeIntegralOrder/components/tableList.vue
index e06575382..b4719ff81 100644
--- a/template/admin/src/pages/marketing/storeIntegralOrder/components/tableList.vue
+++ b/template/admin/src/pages/marketing/storeIntegralOrder/components/tableList.vue
@@ -67,7 +67,7 @@
订单备注
已收货
-
+ 删除订单
diff --git a/template/admin/src/pages/order/orderList/handle/orderDetails.vue b/template/admin/src/pages/order/orderList/handle/orderDetails.vue
index 3642b29e2..e2cf8b3a8 100644
--- a/template/admin/src/pages/order/orderList/handle/orderDetails.vue
+++ b/template/admin/src/pages/order/orderList/handle/orderDetails.vue
@@ -96,9 +96,23 @@
>虚拟发货备注:{{ orderDatalist.orderInfo.fictitious_content }}
-
+
+ 商品信息
+
+
+
+
![]()
+
+
{{ val.productInfo.store_name + ' | '
+ }}{{ val.productInfo.attrInfo ? val.productInfo.attrInfo.suk : '' }}
+
{{ '¥' + val.truePrice + ' x ' + val.cart_num }}
+
+
+
-
+
发票信息
发票抬头:{{ orderDatalist.orderInfo.invoice.name }}
@@ -150,7 +164,6 @@
联系邮箱:{{ orderDatalist.orderInfo.invoice.email || '' }}
联系电话:{{ orderDatalist.orderInfo.invoice.user_phone || '' }}
-
开票状态:{{ orderDatalist.orderInfo.invoice.is_invoice ? '已开票' : '未开票' }}
-
-
+
表单信息
diff --git a/template/admin/src/pages/product/productList/index.vue b/template/admin/src/pages/product/productList/index.vue
index a2c72edda..d0cfbc990 100644
--- a/template/admin/src/pages/product/productList/index.vue
+++ b/template/admin/src/pages/product/productList/index.vue
@@ -13,11 +13,6 @@
-
{
- console.log(err);
- this.$message.error(err);
+ this.$message.error(err.msg);
});
} catch (error) {
console.log(error);
@@ -696,7 +695,7 @@ export default {
this.formValidate = res.data;
})
.catch((err) => {
- this.$message.error(err);
+ this.$message.error(err.msg);
});
},
async handleSubmit() {
@@ -718,7 +717,7 @@ export default {
this.getRoteData(this.paramsId);
})
.catch((err) => {
- this.$message.error(err);
+ this.$message.error(err.msg);
});
},
async insertEvent(type) {
@@ -833,7 +832,7 @@ export default {
this.getInterfaceList();
})
.catch((err) => {
- this.$message.error(err);
+ this.$message.error(err.msg);
});
},
//侧边栏右键点击事件
@@ -938,7 +937,7 @@ export default {
node.remove();
})
.catch((err) => {
- this.$message.error(err);
+ this.$message.error(err.msg);
});
},
onCancel: () => {},
@@ -956,7 +955,7 @@ export default {
this.$message.success(res.msg);
})
.catch((err) => {
- this.$message.error(err);
+ this.$message.error(err.msg);
});
}
},
diff --git a/template/admin/src/styles/style.css b/template/admin/src/styles/style.css
index 940987c10..b65eb23a2 100644
--- a/template/admin/src/styles/style.css
+++ b/template/admin/src/styles/style.css
@@ -213,8 +213,9 @@ body {
font-size: 13px;
padding: 10px 5px !important;
}
-
-.ivu-form .ivu-form-item-label,
+.ivu-form .ivu-form-item-label {
+ font-size: 12px !important;
+}
.ivu-radio-group-button .ivu-radio-wrapper,
.ivu-table {
font-size: 13px !important;
diff --git a/template/uni-app/components/productWindow/index.vue b/template/uni-app/components/productWindow/index.vue
index bdcd5758c..2638d9544 100644
--- a/template/uni-app/components/productWindow/index.vue
+++ b/template/uni-app/components/productWindow/index.vue
@@ -151,7 +151,7 @@
*
*/
bindCode: function(e) {
- this.$emit('iptCartNum', this.attr.productSelect.cart_num);
+ this.$emit('iptCartNum', e);
},
closeAttr: function() {
this.$emit('myevent');
diff --git a/template/uni-app/config/app.js b/template/uni-app/config/app.js
index 7ebce379f..6e3b9007d 100644
--- a/template/uni-app/config/app.js
+++ b/template/uni-app/config/app.js
@@ -13,7 +13,7 @@ module.exports = {
// 后台版本号
- SYSTEM_VERSION: 510,
+ SYSTEM_VERSION: 520,
// 以下配置在不做二开的前提下,不需要做任何的修改
HEADER: {
diff --git a/template/uni-app/pages/goods_details/index.vue b/template/uni-app/pages/goods_details/index.vue
index 43c91200c..7591d087e 100644
--- a/template/uni-app/pages/goods_details/index.vue
+++ b/template/uni-app/pages/goods_details/index.vue
@@ -806,7 +806,15 @@
*
*/
iptCartNum: function(e) {
- this.$set(this.attr.productSelect, "cart_num", e);
+ if (e) {
+ let number = 1
+ if (Number.isInteger(parseInt(e)) && parseInt(e) > 0) {
+ number = parseInt(e);
+ }
+ this.$nextTick(e => {
+ this.$set(this.attr.productSelect, "cart_num", e < 0 ? 1 : number);
+ })
+ }
},
// 后退
returns() {
diff --git a/template/uni-app/pages/users/promoter-list/index.vue b/template/uni-app/pages/users/promoter-list/index.vue
index 56707f3b9..9354ceb49 100644
--- a/template/uni-app/pages/users/promoter-list/index.vue
+++ b/template/uni-app/pages/users/promoter-list/index.vue
@@ -18,7 +18,7 @@
-->
-
diff --git a/template/uni-app/pages/users/promoter-order/index.vue b/template/uni-app/pages/users/promoter-order/index.vue
index 468687318..f597dcfac 100644
--- a/template/uni-app/pages/users/promoter-order/index.vue
+++ b/template/uni-app/pages/users/promoter-order/index.vue
@@ -4,7 +4,7 @@