فهرست منبع

Merge branch 'v4.7.0dev' of https://gitee.com/ZhongBangKeJi/CRMEB into v4.7.0dev

From-wh 2 سال پیش
والد
کامیت
5dbc05f539

+ 4 - 8
crmeb/app/adminapi/controller/v1/notification/sms/SmsConfig.php

@@ -103,14 +103,10 @@ class SmsConfig extends AuthController
      */
      */
     public function logout()
     public function logout()
     {
     {
-        $res = CacheService::delete('sms_account');
-        if ($res) {
-            $this->services->updateSmsConfig('', '');
-            CacheService::clear();
-            return app('json')->success(100042);
-        } else {
-            return app('json')->fail(100043);
-        }
+        CacheService::delete('sms_account');
+        $this->services->updateSmsConfig('', '');
+        CacheService::clear();
+        return app('json')->success(100042);
     }
     }
 
 
     /**
     /**

+ 1 - 1
crmeb/app/listener/crontab/SystemCrontabListener.php

@@ -148,7 +148,7 @@ class SystemCrontabListener implements ListenerInterface
         $timer_log_open = config("log.timer_log", false);
         $timer_log_open = config("log.timer_log", false);
         if ($timer_log_open){
         if ($timer_log_open){
             $date = date('Y-m-d H:i:s', time());
             $date = date('Y-m-d H:i:s', time());
-            Log::info($date . $msg);
+            Log::write($date . $msg, 'crontab');
         }
         }
     }
     }
 
 

+ 13 - 5
crmeb/app/services/system/config/SystemConfigServices.php

@@ -358,11 +358,19 @@ class SystemConfigServices extends BaseServices
                 break;
                 break;
             default:
             default:
                 $data['value'] = isset($data['value']) ? json_decode($data['value'], true) : '';
                 $data['value'] = isset($data['value']) ? json_decode($data['value'], true) : '';
-                $formbuider[] = $this->builder->input($data['menu_name'], $data['info'], $data['value'])->appendRule('suffix', [
-                    'type' => 'div',
-                    'class' => 'tips-info',
-                    'domProps' => ['innerHTML' => $data['desc']]
-                ])->col(13);
+                if ($data['menu_name'] == 'api') {
+                    $formbuider[] = $this->builder->input($data['menu_name'], $data['info'], strpos($data['value'], 'http') === false ? sys_config('site_url') . $data['value'] : $data['value'])->appendRule('suffix', [
+                        'type' => 'div',
+                        'class' => 'tips-info',
+                        'domProps' => ['innerHTML' => $data['desc']]
+                    ])->col(13)->readonly(true);
+                } else {
+                    $formbuider[] = $this->builder->input($data['menu_name'], $data['info'], $data['value'])->appendRule('suffix', [
+                        'type' => 'div',
+                        'class' => 'tips-info',
+                        'domProps' => ['innerHTML' => $data['desc']]
+                    ])->col(13);
+                }
                 break;
                 break;
         }
         }
         return $formbuider;
         return $formbuider;

+ 1 - 1
crmeb/app/services/system/crontab/SystemCrontabServices.php

@@ -265,7 +265,7 @@ class SystemCrontabServices extends BaseServices
         $timer_log_open = config("log.timer_log", false);
         $timer_log_open = config("log.timer_log", false);
         if ($timer_log_open) {
         if ($timer_log_open) {
             $date = date('Y-m-d H:i:s', time());
             $date = date('Y-m-d H:i:s', time());
-            Log::info($date . $msg);
+            Log::write($date . $msg, 'crontab');
         }
         }
     }
     }
 }
 }

+ 2 - 2
crmeb/config/log.php

@@ -17,7 +17,7 @@ return [
     // 默认日志记录通道
     // 默认日志记录通道
     'default'      => Env::get('log.channel', 'file'),
     'default'      => Env::get('log.channel', 'file'),
     // 日志记录级别
     // 日志记录级别
-    'level'        => ['error', 'warning', 'fail', 'success', 'info', 'notice'],
+    'level'        => ['error', 'warning', 'fail', 'success', 'info', 'notice', 'crontab'],
     // 日志类型记录的通道 ['error'=>'email',...]
     // 日志类型记录的通道 ['error'=>'email',...]
     'type_channel' => [],
     'type_channel' => [],
     //是否开启业务成功日志
     //是否开启业务成功日志
@@ -36,7 +36,7 @@ return [
             // 单文件日志写入
             // 单文件日志写入
             'single'      => false,
             'single'      => false,
             // 独立日志级别
             // 独立日志级别
-            'apart_level' => ['error', 'fail', 'success'],
+            'apart_level' => ['error', 'fail', 'success', 'crontab'],
             // 最大日志文件数量
             // 最大日志文件数量
             'max_files'   => 60,
             'max_files'   => 60,
             'time_format' => 'Y-m-d H:i:s',
             'time_format' => 'Y-m-d H:i:s',

+ 7 - 11
crmeb/public/install/crmeb.sql

@@ -33321,7 +33321,7 @@ INSERT INTO `eb_system_config` (`id`, `menu_name`, `type`, `input_type`, `config
 (13, 'wechat_appid', 'text', 'input', 2, '', 1, '', 0, 0, '\"\"', 'AppID', '微信公众号的AppID', 99, 1),
 (13, 'wechat_appid', 'text', 'input', 2, '', 1, '', 0, 0, '\"\"', 'AppID', '微信公众号的AppID', 99, 1),
 (14, 'wechat_appsecret', 'text', 'input', 2, '', 1, '', 0, 0, '\"\"', 'AppSecret', '微信公众号的AppSecret', 95, 1),
 (14, 'wechat_appsecret', 'text', 'input', 2, '', 1, '', 0, 0, '\"\"', 'AppSecret', '微信公众号的AppSecret', 95, 1),
 (15, 'wechat_token', 'text', 'input', 2, '', 1, '', 0, 0, '\"\"', '微信验证TOKEN', '微信验证TOKEN', 88, 1),
 (15, 'wechat_token', 'text', 'input', 2, '', 1, '', 0, 0, '\"\"', '微信验证TOKEN', '微信验证TOKEN', 88, 1),
-(16, 'wechat_encode', 'radio', 'input', 2, '0=>明文模式\n1=>兼容模式\n2=>安全模式', 1, '', 0, 0, '0', '消息加解密方式', '如需使用安全模式请在管理中心修改,仅限服务号和认证订阅号', 84, 0),
+(16, 'wechat_encode', 'radio', 'input', 2, '0=>明文模式\n1=>兼容模式\n2=>安全模式', 1, '', 0, 0, '0', '消息加解密方式', '如需使用安全模式请在管理中心修改,仅限服务号和认证订阅号', 84, 1),
 (17, 'wechat_encodingaeskey', 'text', 'input', 2, '', 1, '', 0, 0, '\"\"', 'EncodingAESKey', '公众号消息加解密Key,在使用安全模式情况下要填写该值,请先在管理中心修改,然后填写该值,仅支持认证服务号', 80, 1),
 (17, 'wechat_encodingaeskey', 'text', 'input', 2, '', 1, '', 0, 0, '\"\"', 'EncodingAESKey', '公众号消息加解密Key,在使用安全模式情况下要填写该值,请先在管理中心修改,然后填写该值,仅支持认证服务号', 80, 1),
 (18, 'wechat_share_img', 'upload', '', 70, '', 1, '', 0, 0, '\"\\/statics\\/system_images\\/share_image.jpeg\"', '微信分享图片', '若填写此图片地址,则分享网页出去时会分享此图片。可有效防止分享图片变形', 0, 1),
 (18, 'wechat_share_img', 'upload', '', 70, '', 1, '', 0, 0, '\"\\/statics\\/system_images\\/share_image.jpeg\"', '微信分享图片', '若填写此图片地址,则分享网页出去时会分享此图片。可有效防止分享图片变形', 0, 1),
 (19, 'wechat_qrcode', 'upload', 'input', 2, '', 1, '', 0, 0, '\"\"', '公众号关注二维码', '引导关注公众号显示的公众号关注二维码', 76, 1),
 (19, 'wechat_qrcode', 'upload', 'input', 2, '', 1, '', 0, 0, '\"\"', '公众号关注二维码', '引导关注公众号显示的公众号关注二维码', 76, 1),
@@ -33342,7 +33342,7 @@ INSERT INTO `eb_system_config` (`id`, `menu_name`, `type`, `input_type`, `config
 (58, 'replenishment_num', 'text', 'number', 27, '', 0, 'required:true,number:true,min:0', 100, 0, '5', '待补货数量', '商品待补货数量低于多少时,提示补货', 0, 1),
 (58, 'replenishment_num', 'text', 'number', 27, '', 0, 'required:true,number:true,min:0', 100, 0, '5', '待补货数量', '商品待补货数量低于多少时,提示补货', 0, 1),
 (59, 'routine_appId', 'text', 'input', 7, '', 0, '', 100, 0, '\"\"', 'appId', '小程序appID', 0, 1),
 (59, 'routine_appId', 'text', 'input', 7, '', 0, '', 100, 0, '\"\"', 'appId', '小程序appID', 0, 1),
 (60, 'routine_appsecret', 'text', 'input', 7, '', 0, '', 100, 0, '\"\"', 'AppSecret', '小程序AppSecret', 0, 1),
 (60, 'routine_appsecret', 'text', 'input', 7, '', 0, '', 100, 0, '\"\"', 'AppSecret', '小程序AppSecret', 0, 1),
-(61, 'api', 'text', 'input', 2, '', 1, '', 0, 0, '\"\\/api\\/wechat\\/serve\"', '接口地址', '配置服务器域名使用的接口地址,填入https://您的域名/api/wechat/serve', 92, 1),
+(61, 'api', 'text', 'input', 2, '', 1, '', 0, 0, '\"\\/api\\/wechat\\/serve\"', '接口地址', '配置服务器域名使用的接口地址,直接复制输入框内容(此项系统生成,无法修改)', 92, 1),
 (74, 'routine_name', 'text', 'input', 7, '', 0, '', 100, 0, '\"\"', '小程序名称', '小程序名称', 0, 1),
 (74, 'routine_name', 'text', 'input', 7, '', 0, '', 100, 0, '\"\"', '小程序名称', '小程序名称', 0, 1),
 (77, 'store_stock', 'text', 'number', 27, '', 1, '', 0, 0, '\"2\"', '警戒库存', '商品待补货数量低于多少时,提示库存不足', 0, 1),
 (77, 'store_stock', 'text', 'number', 27, '', 1, '', 0, 0, '\"2\"', '警戒库存', '商品待补货数量低于多少时,提示库存不足', 0, 1),
 (85, 'stor_reason', 'textarea', 'input', 71, '', 1, '', 100, 8, '\"\\u6536\\u8d27\\u5730\\u5740\\u586b\\u9519\\u4e86\\n\\u4e0e\\u63cf\\u8ff0\\u4e0d\\u7b26\\n\\u4fe1\\u606f\\u586b\\u9519\\u4e86\\uff0c\\u91cd\\u65b0\\u62cd\\n\\u6536\\u5230\\u5546\\u54c1\\u635f\\u574f\\u4e86\\n\\u672a\\u6309\\u9884\\u5b9a\\u65f6\\u95f4\\u53d1\\u8d27\\n\\u5176\\u5b83\\u539f\\u56e0\"', '退货理由', '配置退货理由,一行一个理由', 0, 1),
 (85, 'stor_reason', 'textarea', 'input', 71, '', 1, '', 100, 8, '\"\\u6536\\u8d27\\u5730\\u5740\\u586b\\u9519\\u4e86\\n\\u4e0e\\u63cf\\u8ff0\\u4e0d\\u7b26\\n\\u4fe1\\u606f\\u586b\\u9519\\u4e86\\uff0c\\u91cd\\u65b0\\u62cd\\n\\u6536\\u5230\\u5546\\u54c1\\u635f\\u574f\\u4e86\\n\\u672a\\u6309\\u9884\\u5b9a\\u65f6\\u95f4\\u53d1\\u8d27\\n\\u5176\\u5b83\\u539f\\u56e0\"', '退货理由', '配置退货理由,一行一个理由', 0, 1),
@@ -33381,7 +33381,7 @@ INSERT INTO `eb_system_config` (`id`, `menu_name`, `type`, `input_type`, `config
 (159, 'extract_time', 'text', 'input', 73, '', 0, '', 100, 0, '\"0\"', '冻结时间', '防止用户退款,佣金被提现了,所以需要设置佣金冻结时间(天)', 0, 1),
 (159, 'extract_time', 'text', 'input', 73, '', 0, '', 100, 0, '\"0\"', '冻结时间', '防止用户退款,佣金被提现了,所以需要设置佣金冻结时间(天)', 0, 1),
 (160, 'store_brokerage_price', 'text', 'input', 72, '', 0, '', 100, 0, '\"100\"', '满额分销最低金额', '满额分销满足金额开通分销权限', 0, 1),
 (160, 'store_brokerage_price', 'text', 'input', 72, '', 0, '', 100, 0, '\"100\"', '满额分销最低金额', '满额分销满足金额开通分销权限', 0, 1),
 (162, 'price_revision_switch', 'radio', 'input', 20, '0=>关闭\n1=>开启', 0, '', 0, 0, '0', '改价短信提醒开关', '改价短信提醒开关', 0, 1),
 (162, 'price_revision_switch', 'radio', 'input', 20, '0=>关闭\n1=>开启', 0, '', 0, 0, '0', '改价短信提醒开关', '改价短信提醒开关', 0, 1),
-(168, 'site_logo_square', 'upload', 'input', 26, '', 1, '', 0, 0, '\"\\/statics\\/system_images\\/admin_logo_small.png\"', '后台小LOGO', '后台菜单缩进小LOGO,尺寸180*180', 6, 1),
+(168, 'site_logo_square', 'upload', 'input', 26, '', 1, '', 0, 0, '\"\\/statics\\/system_images\\/admin_logo_small.png\"', '后台小LOGO', '后台菜单缩进小LOGO,尺寸180*180', 6, 0),
 (170, 'yue_pay_status', 'radio', 'input', 109, '1=>开启\n2=>关闭', 1, '', 0, 0, '\"1\"', '余额支付', '余额支付请选择开启或关闭', 95, 1),
 (170, 'yue_pay_status', 'radio', 'input', 109, '1=>开启\n2=>关闭', 1, '', 0, 0, '\"1\"', '余额支付', '余额支付请选择开启或关闭', 95, 1),
 (171, 'login_logo', 'upload', 'input', 26, '', 1, '', 0, 0, '\"\\/statics\\/system_images\\/admin_login_logo.png\"', '后台登录页LOGO', '后台登录页LOGO,建议尺寸270x75', 8, 1),
 (171, 'login_logo', 'upload', 'input', 26, '', 1, '', 0, 0, '\"\\/statics\\/system_images\\/admin_login_logo.png\"', '后台登录页LOGO', '后台登录页LOGO,建议尺寸270x75', 8, 1),
 (173, 'qiniu_accessKey', 'text', 'input', 80, '', 0, '', 100, 0, '\"\"', 'accessKey', '七牛云accessKey', 0, 1),
 (173, 'qiniu_accessKey', 'text', 'input', 80, '', 0, '', 100, 0, '\"\"', 'accessKey', '七牛云accessKey', 0, 1),
@@ -33427,9 +33427,9 @@ INSERT INTO `eb_system_config` (`id`, `menu_name`, `type`, `input_type`, `config
 (328, 'record_No', 'text', 'input', 26, '', 1, '', 0, 0, '\"\"', '备案号', '网站的备案号,显示在H5和PC端底部', 0, 1),
 (328, 'record_No', 'text', 'input', 26, '', 1, '', 0, 0, '\"\"', '备案号', '网站的备案号,显示在H5和PC端底部', 0, 1),
 (329, 'routine_contact_type', 'radio', 'input', 7, '0=>跟随系统\n1=>小程序客服', 1, '', 0, 0, '0', '小程序客服类型', '跟随系统:跟随系统使用默认客服、电话或者跳转链接;小程序客服:需要在小程序后台配置客服用户;', 0, 1),
 (329, 'routine_contact_type', 'radio', 'input', 7, '0=>跟随系统\n1=>小程序客服', 1, '', 0, 0, '0', '小程序客服类型', '跟随系统:跟随系统使用默认客服、电话或者跳转链接;小程序客服:需要在小程序后台配置客服用户;', 0, 1),
 (330, 'station_open', 'radio', 'input', 26, '1=>开启\n0=>关闭', 1, '', 0, 0, '\"1\"', '站点开启', '站点开始|关闭(用于升级等临时关闭),关闭后前端会弹窗显示站点升级中,请稍后访问', 11, 1),
 (330, 'station_open', 'radio', 'input', 26, '1=>开启\n0=>关闭', 1, '', 0, 0, '\"1\"', '站点开启', '站点开始|关闭(用于升级等临时关闭),关闭后前端会弹窗显示站点升级中,请稍后访问', 11, 1),
-(331, 'uni_brokerage_price', 'text', 'input', 73, '', 0, '', 100, 0, '\"2\"', '推广佣金单价(每推广一个用户)', '分销推广佣金单价(每推广一个用户)', 93, 1),
+(331, 'uni_brokerage_price', 'text', 'input', 73, '', 0, '', 100, 0, '\"2\"', '推广佣金单价', '分销推广佣金单价(每推广一个用户)', 93, 1),
 (332, 'day_brokerage_price_upper', 'text', 'input', 73, '', 0, '', 100, 0, '\"-1\"', '每日推广佣金上限', '每日推广佣金上限(0:不发佣金-1:不限制;注最好是推广佣金单价的整数倍)', 92, 1),
 (332, 'day_brokerage_price_upper', 'text', 'input', 73, '', 0, '', 100, 0, '\"-1\"', '每日推广佣金上限', '每日推广佣金上限(0:不发佣金-1:不限制;注最好是推广佣金单价的整数倍)', 92, 1),
-(333, 'is_self_brokerage', 'radio', '', 73, '0=>关闭\n1=>开启', 0, '', 0, 0, '0', '自购返佣', '是否开启自购返佣(开启:分销员自己购买商品,享受一级返佣,上级享受二级返佣; 关闭:分销员自己购买商品没有返佣)', 94, 1),
+(333, 'is_self_brokerage', 'radio', '', 73, '0=>关闭\n1=>开启', 0, '', 0, 0, '0', '自购返佣', '是否开启自购返佣(开启:分销员自己购买商品,享受一级返佣,上级享受二级返佣; 关闭:分销员自己购买商品没有返佣)', 99, 1),
 (334, 'store_brokerage_binding_status', 'radio', '', 72, '1=>永久\n2=>有效期\n3=>临时', 0, '', 0, 0, '1', '绑定模式', '永久”一次绑定永久有效,“有效期”绑定后一段时间内有效,“临时” 临时有效', 91, 1),
 (334, 'store_brokerage_binding_status', 'radio', '', 72, '1=>永久\n2=>有效期\n3=>临时', 0, '', 0, 0, '1', '绑定模式', '永久”一次绑定永久有效,“有效期”绑定后一段时间内有效,“临时” 临时有效', 91, 1),
 (335, 'store_brokerage_binding_time', 'text', 'input', 72, '', 0, '', 100, 0, '\"1\"', '绑定有效期', '绑定有效期(绑定后N天内有效)', 90, 1),
 (335, 'store_brokerage_binding_time', 'text', 'input', 72, '', 0, '', 100, 0, '\"1\"', '绑定有效期', '绑定有效期(绑定后N天内有效)', 90, 1),
 (336, 'refund_name', 'text', 'input', 71, '', 1, '', 0, 0, '\"\"', '退货收货人姓名', '用户退货退款后台同意之后,显示在退货订单详情显示的接受退货的人员姓名', 90, 1),
 (336, 'refund_name', 'text', 'input', 71, '', 1, '', 0, 0, '\"\"', '退货收货人姓名', '用户退货退款后台同意之后,显示在退货订单详情显示的接受退货的人员姓名', 90, 1),
@@ -33507,10 +33507,10 @@ INSERT INTO `eb_system_config` (`id`, `menu_name`, `type`, `input_type`, `config
 (423, 'allin_private_key', 'text', 'input', 108, '', 1, '', 100, 5, '\"\"', '通联MD5私钥', '通联支付的MD5私钥,可以在商户后台设置中进行配置', 96, 1),
 (423, 'allin_private_key', 'text', 'input', 108, '', 1, '', 100, 5, '\"\"', '通联MD5私钥', '通联支付的MD5私钥,可以在商户后台设置中进行配置', 96, 1),
 (425, 'allin_cusid', 'text', '', 108, '', 1, '', 0, 0, '\"\"', '通联商户号', '通联支付商户号,由贵公司申请获得', 99, 1),
 (425, 'allin_cusid', 'text', '', 108, '', 1, '', 0, 0, '\"\"', '通联商户号', '通联支付商户号,由贵公司申请获得', 99, 1),
 (426, 'allin_appid', 'text', '', 108, '', 1, '', 100, 0, '\"\"', '通联支付Appid', '通联商户后台的设置-》对接设置中查看', 98, 1),
 (426, 'allin_appid', 'text', '', 108, '', 1, '', 100, 0, '\"\"', '通联支付Appid', '通联商户后台的设置-》对接设置中查看', 98, 1),
-(428, 'queue_open', 'radio', 'input', 26, '0=>关闭\n1=>开启', 1, '', 0, 0, '\"0\"', '消息队列', '是否启用消息队列,启用后提升程序运行速度,启用前必须配置Redis缓存', 0, 1),
+(428, 'queue_open', 'radio', 'input', 26, '0=>关闭\n1=>开启', 1, '', 0, 0, '\"0\"', '消息队列', '是否启用消息队列,启用后提升程序运行速度,启用前必须配置Redis缓存,文档地址:https://doc.crmeb.com/single/crmeb_v4/7217', 0, 1),
 (429, 'get_avatar', 'radio', 'input', 7, '0=>关闭\n1=>开启', 1, '', 0, 0, '\"0\"', '强制获取昵称头像', '是否在小程序用户授权之后,弹窗获取用户的昵称和头像', 0, 1),
 (429, 'get_avatar', 'radio', 'input', 7, '0=>关闭\n1=>开启', 1, '', 0, 0, '\"0\"', '强制获取昵称头像', '是否在小程序用户授权之后,弹窗获取用户的昵称和头像', 0, 1),
 (430, 'share_qrcode', 'radio', 'input', 2, '0=>商城\n1=>公众号', 1, '', 0, 0, '\"0\"', '公众号推广码类型', '公众号生成的推广码类型:商城:扫码直接进入商城,公众号:扫码进入公众号后推送商城的链接', 0, 1),
 (430, 'share_qrcode', 'radio', 'input', 2, '0=>商城\n1=>公众号', 1, '', 0, 0, '\"0\"', '公众号推广码类型', '公众号生成的推广码类型:商城:扫码直接进入商城,公众号:扫码进入公众号后推送商城的链接', 0, 1),
-(431, 'member_brokerage', 'radio', 'input', 73, '1=>开启\n0=>关闭', 1, '', 0, 0, '\"0\"', '购买付费会员返佣', '购买付费会员是否按照设置的佣金比例进行返佣', 0, 1);
+(431, 'member_brokerage', 'radio', 'input', 73, '1=>开启\n0=>关闭', 1, '', 0, 0, '\"0\"', '购买付费会员返佣', '购买付费会员是否按照设置的佣金比例进行返佣', 98, 1);
 
 
 -- --------------------------------------------------------
 -- --------------------------------------------------------
 
 
@@ -34371,9 +34371,6 @@ INSERT INTO `eb_system_menus` (`id`, `pid`, `icon`, `menu_name`, `module`, `cont
 (713, 707, '', '设置直播间是否显示', 'admin', '', '', 'live/room/set_show/<id>/<is_show>', 'GET', '[]', 0, 0, 0, 1, '', '', 2, '', 0, '', 0),
 (713, 707, '', '设置直播间是否显示', 'admin', '', '', 'live/room/set_show/<id>/<is_show>', 'GET', '[]', 0, 0, 0, 1, '', '', 2, '', 0, '', 0),
 (714, 707, '', '同步直播间状态', 'admin', '', '', 'live/room/syncRoom', 'GET', '[]', 0, 0, 0, 1, '', '', 2, '', 0, '', 0),
 (714, 707, '', '同步直播间状态', 'admin', '', '', 'live/room/syncRoom', 'GET', '[]', 0, 0, 0, 1, '', '', 2, '', 0, '', 0),
 (715, 898, '', '一键同步订阅消息', 'admin', '', '', 'app/routine/syncSubscribe', 'GET', '[]', 0, 0, 0, 1, '', '12/898', 2, '', 0, 'app-wechat-template-sync', 0),
 (715, 898, '', '一键同步订阅消息', 'admin', '', '', 'app/routine/syncSubscribe', 'GET', '[]', 0, 0, 0, 1, '', '12/898', 2, '', 0, 'app-wechat-template-sync', 0),
-(716, 0, 'md-stats', '统计', 'admin', '', '', '', '', '[]', 105, 1, 0, 1, '/statistic', '', 1, '', 0, 'admin-statistic', 0),
-(717, 716, '', '商品统计', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '/statistic/product', '', 1, '', 0, 'admin-statistic', 0),
-(718, 716, '', '用户统计', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '/statistic/user', '', 1, '', 0, 'admin-statistic', 0),
 (719, 71, '', '添加优惠卷', 'admin', '', '', '', '', '[]', 0, 0, 0, 1, '/marketing/store_coupon_issue/create', '27/30/71', 1, '', 0, 'marketing-store_coupon_issue-create', 0),
 (719, 71, '', '添加优惠卷', 'admin', '', '', '', '', '[]', 0, 0, 0, 1, '/marketing/store_coupon_issue/create', '27/30/71', 1, '', 0, 'marketing-store_coupon_issue-create', 0),
 (720, 303, '', '配送员管理', 'admin', '', '', '', '', '[]', 10, 1, 0, 1, '/setting/delivery_service/index', '', 1, '', 0, 'setting-delivery-service', 0),
 (720, 303, '', '配送员管理', 'admin', '', '', '', '', '[]', 10, 1, 0, 1, '/setting/delivery_service/index', '', 1, '', 0, 'setting-delivery-service', 0),
 (721, 729, '', '编辑配送员', 'admin', '', '', '', '', '[]', 0, 0, 0, 1, '/setting/delivery_service/edit', '', 1, '', 0, 'setting-delivery_service-edit', 0),
 (721, 729, '', '编辑配送员', 'admin', '', '', '', '', '[]', 0, 0, 0, 1, '/setting/delivery_service/edit', '', 1, '', 0, 'setting-delivery_service-edit', 0),
@@ -34420,7 +34417,6 @@ INSERT INTO `eb_system_menus` (`id`, `pid`, `icon`, `menu_name`, `module`, `cont
 (763, 731, '', '会员记录', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '/user/grade/record', '', 1, '', 0, 'admin-user-grade-record', 0),
 (763, 731, '', '会员记录', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '/user/grade/record', '', 1, '', 0, 'admin-user-grade-record', 0),
 (764, 763, '', '会员记录列表', 'admin', '', '', 'user/member/record', 'GET', '[]', 0, 0, 0, 1, '', '', 2, '', 0, 'user-member-record', 0),
 (764, 763, '', '会员记录列表', 'admin', '', '', 'user/member/record', 'GET', '[]', 0, 0, 0, 1, '', '', 2, '', 0, 'user-member-record', 0),
 (765, 731, '', '会员权益', 'admin', '', '', '', '', '[]', 4, 1, 0, 1, '/user/grade/right', '', 1, '', 0, 'admin-user-grade-right', 0),
 (765, 731, '', '会员权益', 'admin', '', '', '', '', '[]', 4, 1, 0, 1, '/user/grade/right', '', 1, '', 0, 'admin-user-grade-right', 0),
-(766, 716, '', '交易统计', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '/statistic/transaction', '', 1, '', 0, 'admin-statistic', 0),
 (767, 36, '', '发票管理', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '/order/invoice/list', '', 1, '', 0, 'admin-order-startOrderInvoice-index', 0),
 (767, 36, '', '发票管理', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '/order/invoice/list', '', 1, '', 0, 'admin-order-startOrderInvoice-index', 0),
 (768, 210, '', '编辑', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '', '', 2, '', 0, 'admin-order-invoice-edit', 0),
 (768, 210, '', '编辑', 'admin', '', '', '', '', '[]', 0, 1, 0, 1, '', '', 2, '', 0, 'admin-order-invoice-edit', 0),
 (769, 210, '', '订单信息', 'admin', '', '', 'order/invoice_order_info/<id>', 'GET', '[]', 0, 1, 0, 1, '', '', 2, '', 0, 'admin-order-invoice-orderInfo', 0),
 (769, 210, '', '订单信息', 'admin', '', '', 'order/invoice_order_info/<id>', 'GET', '[]', 0, 1, 0, 1, '', '', 2, '', 0, 'admin-order-invoice-orderInfo', 0),

+ 1 - 1
crmeb/public/install/css/install.css

@@ -332,7 +332,7 @@ input[type=checkbox]:checked:after {
 	display:block;
 	display:block;
 	overflow-y:scroll;
 	overflow-y:scroll;
 	padding: 20px 50px;
 	padding: 20px 50px;
-	margin:20px auto;
+	margin:30px auto 10px auto;
 	font-size:12px;
 	font-size:12px;
 	line-height:1.5;
 	line-height:1.5;
 	outline:none;
 	outline:none;

+ 1 - 0
crmeb/public/install/css/step1.css

@@ -43,6 +43,7 @@
 .section {
 .section {
     height: 100%;
     height: 100%;
     z-index: 11;
     z-index: 11;
+    text-align: left;
     position: absolute;
     position: absolute;
     background: rgba(34, 34, 34, 0.6);
     background: rgba(34, 34, 34, 0.6);
     border-radius: 36px 36px 36px 36px;
     border-radius: 36px 36px 36px 36px;

+ 6 - 6
crmeb/public/install/templates/step3.php

@@ -35,17 +35,17 @@
                         </td>
                         </td>
                     </tr>
                     </tr>
                     <tr>
                     <tr>
-                        <td class="tar">数据库:</td>
-                        <td><input type="text" name="dbname" id="dbname" value="crmeb" class="input"></td>
+                        <td class="tar">数据库密码:</td>
+                        <td><input type="password" name="dbpw" id="dbpw" value="" class="input" autoComplete="off"></td>
                         <td>
                         <td>
-                            <div id="J_install_tip_dbname"></div>
+                            <div id="J_install_tip_dbpw"></div>
                         </td>
                         </td>
                     </tr>
                     </tr>
                     <tr>
                     <tr>
-                        <td class="tar">数据库密码:</td>
-                        <td><input type="password" name="dbpw" id="dbpw" value="" class="input" autoComplete="off"></td>
+                        <td class="tar">数据库:</td>
+                        <td><input type="text" name="dbname" id="dbname" value="crmeb" class="input"></td>
                         <td>
                         <td>
-                            <div id="J_install_tip_dbpw"></div>
+                            <div id="J_install_tip_dbname"></div>
                         </td>
                         </td>
                     </tr>
                     </tr>
                     <tr>
                     <tr>

+ 2 - 2
template/admin/src/components/main/components/side-menu/side-menu.vue

@@ -368,11 +368,11 @@ export default {
     }
     }
     .ivu-menu-submenu {
     .ivu-menu-submenu {
       .ivu-menu-item {
       .ivu-menu-item {
-        padding-left: 16px !important;
+        padding-left: 23px !important;
       }
       }
       .ivu-menu-submenu {
       .ivu-menu-submenu {
         .ivu-menu-submenu-title {
         .ivu-menu-submenu-title {
-          padding-left: 16px !important;
+          padding-left: 23px !important;
         }
         }
       }
       }
     }
     }

+ 0 - 1
template/admin/src/pages/marketing/recharge/index.vue

@@ -1386,7 +1386,6 @@ export default {
   padding: 20px;
   padding: 20px;
   background-color: #fff;
   background-color: #fff;
   border-radius: 5px;
   border-radius: 5px;
-  margin: 20px;
 }
 }
 
 
 .iview-video-style {
 .iview-video-style {

+ 11 - 1
template/admin/src/pages/system/crontab/index.vue

@@ -1,5 +1,11 @@
 <template>
 <template>
   <Card :bordered="false" dis-hover>
   <Card :bordered="false" dis-hover>
+    <Alert>
+      <template slot="desc">
+        如果使用命令启动定时任务,修改定时任务之后需要重新启动命令才能生效<br />
+        使用接口访问情况下,修改定时任务不需要重新启动,接口地址 https://您的域名/api/crontab/run
+      </template>
+    </Alert>
     <Button type="primary" @click="addTask">添加定时任务</Button>
     <Button type="primary" @click="addTask">添加定时任务</Button>
     <Table :columns="columns" :data="tableData" :loading="loading" class="ivu-mt">
     <Table :columns="columns" :data="tableData" :loading="loading" class="ivu-mt">
       <template slot-scope="{ row }" slot="execution_cycle">
       <template slot-scope="{ row }" slot="execution_cycle">
@@ -164,4 +170,8 @@ export default {
 };
 };
 </script>
 </script>
 
 
-<style lang="stylus" scoped></style>
+<style lang="stylus" scoped>
+.ivu-mt {
+  padding-top:10px
+}
+</style>

+ 0 - 1
template/admin/src/pages/system/group/visualization.vue

@@ -1801,7 +1801,6 @@ export default {
   padding: 20px;
   padding: 20px;
   background-color: #fff;
   background-color: #fff;
   border-radius: 5px;
   border-radius: 5px;
-  margin: 20px;
 }
 }
 
 
 .iview-video-style {
 .iview-video-style {

+ 3 - 4
template/admin/src/styles/style.css

@@ -391,6 +391,7 @@ body {
 .fl_header {
 .fl_header {
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
+  padding-left: 0px !important;
 }
 }
 .header_top {
 .header_top {
   padding-bottom: 16px !important;
   padding-bottom: 16px !important;
@@ -507,7 +508,7 @@ body {
   border: 0;
   border: 0;
 }
 }
 .i-layout-page-header {
 .i-layout-page-header {
-  margin: 0 -18px;
+  margin: 0;
   /* display: none; */
   /* display: none; */
   background-color: #fff;
   background-color: #fff;
   padding: 7px 32px 0 32px;
   padding: 7px 32px 0 32px;
@@ -517,8 +518,6 @@ body {
   color: #17233d;
   color: #17233d;
   font-weight: 500;
   font-weight: 500;
   font-size: 20px;
   font-size: 20px;
-  padding-bottom: 16px;
-  margin-left: 10px;
 }
 }
 .main .content-wrapper {
 .main .content-wrapper {
   padding-top: 0;
   padding-top: 0;
@@ -687,4 +686,4 @@ body {
 }
 }
 .pt10{
 .pt10{
   padding-top: 10px;
   padding-top: 10px;
-}
+}