1109 lines
		
	
	
		
			50 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			1109 lines
		
	
	
		
			50 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| 
								 | 
							
								<?php
							 | 
						|||
| 
								 | 
							
								// +----------------------------------------------------------------------
							 | 
						|||
| 
								 | 
							
								// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
							 | 
						|||
| 
								 | 
							
								// +----------------------------------------------------------------------
							 | 
						|||
| 
								 | 
							
								// | Copyright (c) 2016~2023 https://www.crmeb.com All rights reserved.
							 | 
						|||
| 
								 | 
							
								// +----------------------------------------------------------------------
							 | 
						|||
| 
								 | 
							
								// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
							 | 
						|||
| 
								 | 
							
								// +----------------------------------------------------------------------
							 | 
						|||
| 
								 | 
							
								// | Author: CRMEB Team <admin@crmeb.com>
							 | 
						|||
| 
								 | 
							
								// +----------------------------------------------------------------------
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								namespace app\adminapi\controller;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								use app\Request;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								use app\services\activity\coupon\StoreCouponProductServices;
							 | 
						|||
| 
								 | 
							
								use app\services\order\StoreOrderCartInfoServices;
							 | 
						|||
| 
								 | 
							
								use app\services\order\StoreOrderCreateServices;
							 | 
						|||
| 
								 | 
							
								use app\services\order\StoreOrderRefundServices;
							 | 
						|||
| 
								 | 
							
								use app\services\order\StoreOrderServices;
							 | 
						|||
| 
								 | 
							
								use app\services\system\UpgradeServices;
							 | 
						|||
| 
								 | 
							
								use app\services\user\UserBillServices;
							 | 
						|||
| 
								 | 
							
								use app\services\user\UserBrokerageServices;
							 | 
						|||
| 
								 | 
							
								use app\services\user\UserMoneyServices;
							 | 
						|||
| 
								 | 
							
								use app\services\user\UserBrokerageFrozenServices;
							 | 
						|||
| 
								 | 
							
								use think\facade\Db;
							 | 
						|||
| 
								 | 
							
								use think\facade\Env;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								class UpgradeController
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * @var UpgradeServices
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    private $services;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * UpgradeController constructor.
							 | 
						|||
| 
								 | 
							
								     * @param UpgradeServices $services
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function __construct(UpgradeServices $services)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $this->services = $services;
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 升级程序页面
							 | 
						|||
| 
								 | 
							
								     * @param Request $request
							 | 
						|||
| 
								 | 
							
								     * @return \think\response\View
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function index(Request $request)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $data = $this->upData();
							 | 
						|||
| 
								 | 
							
								        $Title = "CRMEB升级程序";
							 | 
						|||
| 
								 | 
							
								        $Powered = "Powered by CRMEB";
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        //获取当前版本号
							 | 
						|||
| 
								 | 
							
								        $version_now = $this->getversion('.version')['version'];
							 | 
						|||
| 
								 | 
							
								        $version_new = $data['new_version'];
							 | 
						|||
| 
								 | 
							
								        $isUpgrade = true;
							 | 
						|||
| 
								 | 
							
								        $executeIng = false;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        return view('/upgrade/step1', [
							 | 
						|||
| 
								 | 
							
								            'title' => $Title,
							 | 
						|||
| 
								 | 
							
								            'powered' => $Powered,
							 | 
						|||
| 
								 | 
							
								            'version_now' => $version_now,
							 | 
						|||
| 
								 | 
							
								            'version_new' => $version_new,
							 | 
						|||
| 
								 | 
							
								            'isUpgrade' => json_encode($isUpgrade),
							 | 
						|||
| 
								 | 
							
								            'executeIng' => json_encode($executeIng),
							 | 
						|||
| 
								 | 
							
								            'next' => 1,
							 | 
						|||
| 
								 | 
							
								            'action' => 'upgrade'
							 | 
						|||
| 
								 | 
							
								        ]);
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 获取当前版本号
							 | 
						|||
| 
								 | 
							
								     * @return array
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function getversion($str)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $version_arr = [];
							 | 
						|||
| 
								 | 
							
								        $curent_version = @file(app()->getRootPath() . $str);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        foreach ($curent_version as $val) {
							 | 
						|||
| 
								 | 
							
								            list($k, $v) = explode('=', $val);
							 | 
						|||
| 
								 | 
							
								            $version_arr[$k] = $v;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        return $version_arr;
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 写入升级过程
							 | 
						|||
| 
								 | 
							
								     * @param string $field
							 | 
						|||
| 
								 | 
							
								     * @param int $n
							 | 
						|||
| 
								 | 
							
								     * @return bool
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function setIsUpgrade(string $field, int $n = 0)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $upgrade = parse_ini_file(public_path('upgrade') . '.upgrade');
							 | 
						|||
| 
								 | 
							
								        if ($n) {
							 | 
						|||
| 
								 | 
							
								            if (!is_array($upgrade)) {
							 | 
						|||
| 
								 | 
							
								                $upgrade = [];
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            $string = '';
							 | 
						|||
| 
								 | 
							
								            foreach ($upgrade as $key => $item) {
							 | 
						|||
| 
								 | 
							
								                $string .= $key . '=' . $item . "\r\n";
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            $string .= $field . '=' . $n . "\r\n";
							 | 
						|||
| 
								 | 
							
								            file_put_contents(public_path('upgrade') . '.upgrade', $string);
							 | 
						|||
| 
								 | 
							
								            return true;
							 | 
						|||
| 
								 | 
							
								        } else {
							 | 
						|||
| 
								 | 
							
								            if (!is_array($upgrade)) {
							 | 
						|||
| 
								 | 
							
								                return false;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            return isset($upgrade[$field]);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 升级方法
							 | 
						|||
| 
								 | 
							
								     *
							 | 
						|||
| 
								 | 
							
								     * @param Request $request HTTP请求对象
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function upgrade(Request $request)
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        list($sleep, $page, $prefix) = $request->getMore([
							 | 
						|||
| 
								 | 
							
								            ['sleep', 0],
							 | 
						|||
| 
								 | 
							
								            ['page', 1],
							 | 
						|||
| 
								 | 
							
								            ['prefix', 'eb_'],
							 | 
						|||
| 
								 | 
							
								        ], true);//
							 | 
						|||
| 
								 | 
							
								        $data = $this->upData();//
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        $code_now = $this->getversion('.version')['version_code'];//
							 | 
						|||
| 
								 | 
							
								        if ($data['new_code'] == $code_now) {
							 | 
						|||
| 
								 | 
							
								            return app('json')->success(['sleep' => -1]);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        $sql_arr = [];
							 | 
						|||
| 
								 | 
							
								        foreach ($data['update_sql'] as $items) {
							 | 
						|||
| 
								 | 
							
								            if ($items['code'] > $code_now) {
							 | 
						|||
| 
								 | 
							
								                $sql_arr[] = $items;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        //sql 执行完成,开始执行修改数据
							 | 
						|||
| 
								 | 
							
								        if (!isset($sql_arr[$sleep])) {
							 | 
						|||
| 
								 | 
							
								//            $limit = 100;
							 | 
						|||
| 
								 | 
							
								//            if (!$this->setIsUpgrade('money')) {
							 | 
						|||
| 
								 | 
							
								//                $res = $this->handleMoney((int)$sleep, (int)$page, (int)$limit);
							 | 
						|||
| 
								 | 
							
								//                return app('json')->success($res);
							 | 
						|||
| 
								 | 
							
								//            } elseif (!$this->setIsUpgrade('brokerage')) {
							 | 
						|||
| 
								 | 
							
								//                $res = $this->handleBrokerage((int)$sleep, (int)$page, (int)$limit);
							 | 
						|||
| 
								 | 
							
								//                return app('json')->success($res);
							 | 
						|||
| 
								 | 
							
								//            } elseif (!$this->setIsUpgrade('orderRefund')) {
							 | 
						|||
| 
								 | 
							
								//                $res = $this->handleOrderRefund((int)$sleep, (int)$page, (int)$limit);
							 | 
						|||
| 
								 | 
							
								//                return app('json')->success($res);
							 | 
						|||
| 
								 | 
							
								//            } else {
							 | 
						|||
| 
								 | 
							
								//                file_put_contents(app()->getRootPath() . '.version', "version=" . $data['new_version'] . "\nversion_code=" . $data['new_code']);
							 | 
						|||
| 
								 | 
							
								//                return app('json')->success(['sleep' => -1]);
							 | 
						|||
| 
								 | 
							
								//            }
							 | 
						|||
| 
								 | 
							
								//            $limit = 100;
							 | 
						|||
| 
								 | 
							
								//            if (!$this->setIsUpgrade('cartInfo')) {
							 | 
						|||
| 
								 | 
							
								//                $res = $this->handleCartInfo((int)$sleep, (int)$page, (int)$limit);
							 | 
						|||
| 
								 | 
							
								//                return app('json')->success($res);
							 | 
						|||
| 
								 | 
							
								//            } else {
							 | 
						|||
| 
								 | 
							
								//                file_put_contents(app()->getRootPath() . '.version', "version=" . $data['new_version'] . "\nversion_code=" . $data['new_code'] . "\napp_id=ze7x9rxsv09l6pvsyo" . "\napp_key=fuF7U9zaybLa5gageVQzxtxQMFnvU2OI");
							 | 
						|||
| 
								 | 
							
								//                $this->services->generateSignature();
							 | 
						|||
| 
								 | 
							
								//                return app('json')->success(['sleep' => -1]);
							 | 
						|||
| 
								 | 
							
								//            }
							 | 
						|||
| 
								 | 
							
								//            $limit = 100;
							 | 
						|||
| 
								 | 
							
								//            if (!$this->setIsUpgrade('coupon')) {
							 | 
						|||
| 
								 | 
							
								//                $res = $this->handleCoupon((int)$sleep, (int)$page, (int)$limit);
							 | 
						|||
| 
								 | 
							
								//                return app('json')->success($res);
							 | 
						|||
| 
								 | 
							
								//            } else {
							 | 
						|||
| 
								 | 
							
								//                $this->setEnv();
							 | 
						|||
| 
								 | 
							
								//                file_put_contents(app()->getRootPath() . '.version', "version=" . $data['new_version'] . "\nversion_code=" . $data['new_code'] . "\nplatform=CRMEB\napp_id=ze7x9rxsv09l6pvsyo" . "\napp_key=fuF7U9zaybLa5gageVQzxtxQMFnvU2OI");
							 | 
						|||
| 
								 | 
							
								//                $this->services->generateSignature();
							 | 
						|||
| 
								 | 
							
								//                return app('json')->success(['sleep' => -1]);
							 | 
						|||
| 
								 | 
							
								//            }
							 | 
						|||
| 
								 | 
							
								            file_put_contents(app()->getRootPath() . '.version', "version=" . $data['new_version'] . "\nversion_code=" . $data['new_code'] . "\nplatform=CRMEB\napp_id=ze7x9rxsv09l6pvsyo" . "\napp_key=fuF7U9zaybLa5gageVQzxtxQMFnvU2OI");
							 | 
						|||
| 
								 | 
							
								            $this->services->generateSignature();
							 | 
						|||
| 
								 | 
							
								            return app('json')->success(['sleep' => -1]);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        $sql = $sql_arr[$sleep];
							 | 
						|||
| 
								 | 
							
								        Db::startTrans();
							 | 
						|||
| 
								 | 
							
								        try {
							 | 
						|||
| 
								 | 
							
								            if ($sql['type'] == 1) {
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['findSql']) && $sql['findSql']) {
							 | 
						|||
| 
								 | 
							
								                    $table = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								                    $findSql = str_replace('@table', $table, $sql['findSql']);
							 | 
						|||
| 
								 | 
							
								                    if (!empty(Db::query($findSql))) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = $table . '表已存在';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['sql']) && $sql['sql']) {
							 | 
						|||
| 
								 | 
							
								                    $upSql = $sql['sql'];
							 | 
						|||
| 
								 | 
							
								                    $upSql = str_replace('@table', $table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    Db::execute($upSql);
							 | 
						|||
| 
								 | 
							
								                    $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                    $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                    $item['error'] = $table . '表添加成功';
							 | 
						|||
| 
								 | 
							
								                    $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                    $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                    Db::commit();
							 | 
						|||
| 
								 | 
							
								                    return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            } elseif ($sql['type'] == 2) {
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['findSql']) && $sql['findSql']) {
							 | 
						|||
| 
								 | 
							
								                    $table = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								                    $findSql = str_replace('@table', $table, $sql['findSql']);
							 | 
						|||
| 
								 | 
							
								                    if (empty(Db::query($findSql))) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = $table . '表不存在';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['sql']) && $sql['sql']) {
							 | 
						|||
| 
								 | 
							
								                    $upSql = $sql['sql'];
							 | 
						|||
| 
								 | 
							
								                    $upSql = str_replace('@table', $table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    Db::execute($upSql);
							 | 
						|||
| 
								 | 
							
								                    $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                    $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                    $item['error'] = $table . '表删除成功';
							 | 
						|||
| 
								 | 
							
								                    $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                    $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                    Db::commit();
							 | 
						|||
| 
								 | 
							
								                    return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            } elseif ($sql['type'] == 3) {
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['findSql']) && $sql['findSql']) {
							 | 
						|||
| 
								 | 
							
								                    $table = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								                    $findSql = str_replace('@table', $table, $sql['findSql']);
							 | 
						|||
| 
								 | 
							
								                    if (!empty(Db::query($findSql))) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = $table . '表中' . $sql['field'] . '已存在';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['sql']) && $sql['sql']) {
							 | 
						|||
| 
								 | 
							
								                    $upSql = $sql['sql'];
							 | 
						|||
| 
								 | 
							
								                    $upSql = str_replace('@table', $table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    Db::execute($upSql);
							 | 
						|||
| 
								 | 
							
								                    $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                    $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                    $item['error'] = $table . '表中' . $sql['field'] . '字段添加成功';
							 | 
						|||
| 
								 | 
							
								                    $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                    $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                    Db::commit();
							 | 
						|||
| 
								 | 
							
								                    return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            } elseif ($sql['type'] == 4) {
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['findSql']) && $sql['findSql']) {
							 | 
						|||
| 
								 | 
							
								                    $table = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								                    $findSql = str_replace('@table', $table, $sql['findSql']);
							 | 
						|||
| 
								 | 
							
								                    if (empty(Db::query($findSql))) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = $table . '表中' . $sql['field'] . '不存在';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['sql']) && $sql['sql']) {
							 | 
						|||
| 
								 | 
							
								                    $upSql = $sql['sql'];
							 | 
						|||
| 
								 | 
							
								                    $upSql = str_replace('@table', $table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    Db::execute($upSql);
							 | 
						|||
| 
								 | 
							
								                    $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                    $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                    $item['error'] = $table . '表中' . $sql['field'] . '字段修改成功';
							 | 
						|||
| 
								 | 
							
								                    $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                    $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                    Db::commit();
							 | 
						|||
| 
								 | 
							
								                    return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            } elseif ($sql['type'] == 5) {
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['findSql']) && $sql['findSql']) {
							 | 
						|||
| 
								 | 
							
								                    $table = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								                    $findSql = str_replace('@table', $table, $sql['findSql']);
							 | 
						|||
| 
								 | 
							
								                    if (empty(Db::query($findSql))) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = $table . '表中' . $sql['field'] . '不存在';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['sql']) && $sql['sql']) {
							 | 
						|||
| 
								 | 
							
								                    $upSql = $sql['sql'];
							 | 
						|||
| 
								 | 
							
								                    $upSql = str_replace('@table', $table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    Db::execute($upSql);
							 | 
						|||
| 
								 | 
							
								                    $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                    $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                    $item['error'] = $table . '表中' . $sql['field'] . '字段删除成功';
							 | 
						|||
| 
								 | 
							
								                    $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                    $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                    Db::commit();
							 | 
						|||
| 
								 | 
							
								                    return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            } elseif ($sql['type'] == 6) {
							 | 
						|||
| 
								 | 
							
								                $table = $prefix . $sql['table'] ?? '';
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['findSql']) && $sql['findSql']) {
							 | 
						|||
| 
								 | 
							
								                    $findSql = str_replace('@table', $table, $sql['findSql']);
							 | 
						|||
| 
								 | 
							
								                    if (!empty(Db::query($findSql))) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = $table . '表中此数据已存在';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['sql']) && $sql['sql']) {
							 | 
						|||
| 
								 | 
							
								                    $upSql = $sql['sql'];
							 | 
						|||
| 
								 | 
							
								                    $upSql = str_replace('@table', $table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    if (isset($sql['whereSql']) && $sql['whereSql']) {
							 | 
						|||
| 
								 | 
							
								                        $whereTable = $prefix . $sql['whereTable'] ?? '';
							 | 
						|||
| 
								 | 
							
								                        $whereSql = str_replace('@whereTable', $whereTable, $sql['whereSql']);
							 | 
						|||
| 
								 | 
							
								                        $tabId = Db::query($whereSql)[0]['tabId'] ?? 0;
							 | 
						|||
| 
								 | 
							
								                        if (!$tabId) {
							 | 
						|||
| 
								 | 
							
								                            $item['table'] = $whereTable;
							 | 
						|||
| 
								 | 
							
								                            $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                            $item['error'] = '查询父类ID不存在';
							 | 
						|||
| 
								 | 
							
								                            $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                            $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                            Db::commit();
							 | 
						|||
| 
								 | 
							
								                            return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        $upSql = str_replace('@tabId', $tabId, $upSql);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (Db::execute($upSql)) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = '数据添加成功';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            } elseif ($sql['type'] == 7) {
							 | 
						|||
| 
								 | 
							
								                $table = $prefix . $sql['table'] ?? '';
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['findSql']) && $sql['findSql']) {
							 | 
						|||
| 
								 | 
							
								                    $findSql = str_replace('@table', $table, $sql['findSql']);
							 | 
						|||
| 
								 | 
							
								                    if (empty(Db::query($findSql))) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = $table . '表中此数据不存在';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['sql']) && $sql['sql']) {
							 | 
						|||
| 
								 | 
							
								                    $upSql = $sql['sql'];
							 | 
						|||
| 
								 | 
							
								                    $upSql = str_replace('@table', $table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    if (isset($sql['whereSql']) && $sql['whereSql']) {
							 | 
						|||
| 
								 | 
							
								                        $whereTable = $prefix . $sql['whereTable'] ?? '';
							 | 
						|||
| 
								 | 
							
								                        $whereSql = str_replace('@whereTable', $whereTable, $sql['whereSql']);
							 | 
						|||
| 
								 | 
							
								                        $tabId = Db::query($whereSql)[0]['tabId'] ?? 0;
							 | 
						|||
| 
								 | 
							
								                        if (!$tabId) {
							 | 
						|||
| 
								 | 
							
								                            $item['table'] = $whereTable;
							 | 
						|||
| 
								 | 
							
								                            $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                            $item['error'] = '查询父类ID不存在';
							 | 
						|||
| 
								 | 
							
								                            $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                            $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                            Db::commit();
							 | 
						|||
| 
								 | 
							
								                            return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        $upSql = str_replace('@tabId', $tabId, $upSql);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (Db::execute($upSql)) {
							 | 
						|||
| 
								 | 
							
								                        $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                        $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                        $item['error'] = '数据修改成功';
							 | 
						|||
| 
								 | 
							
								                        $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                        $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                        Db::commit();
							 | 
						|||
| 
								 | 
							
								                        return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            } elseif ($sql['type'] == 8) {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            } elseif ($sql['type'] == -1) {
							 | 
						|||
| 
								 | 
							
								                $table = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								                if (isset($sql['sql']) && $sql['sql']) {
							 | 
						|||
| 
								 | 
							
								                    $upSql = $sql['sql'];
							 | 
						|||
| 
								 | 
							
								                    $upSql = str_replace('@table', $table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    if (isset($sql['new_table']) && $sql['new_table']) {
							 | 
						|||
| 
								 | 
							
								                        $new_table = $prefix . $sql['new_table'];
							 | 
						|||
| 
								 | 
							
								                        $upSql = str_replace('@new_table', $new_table, $upSql);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    Db::execute($upSql);
							 | 
						|||
| 
								 | 
							
								                    $item['table'] = $table;
							 | 
						|||
| 
								 | 
							
								                    $item['status'] = 1;
							 | 
						|||
| 
								 | 
							
								                    $item['error'] = $table . ' sql执行成功';
							 | 
						|||
| 
								 | 
							
								                    $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								                    $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								                    Db::commit();
							 | 
						|||
| 
								 | 
							
								                    return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        } catch (\Throwable $e) {
							 | 
						|||
| 
								 | 
							
								            $item['table'] = $prefix . $sql['table'];
							 | 
						|||
| 
								 | 
							
								            $item['status'] = 0;
							 | 
						|||
| 
								 | 
							
								            $item['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $item['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								            $item['error'] = $e->getMessage();
							 | 
						|||
| 
								 | 
							
								            Db::rollBack();
							 | 
						|||
| 
								 | 
							
								            return app('json')->success($item);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 重写.env文件
							 | 
						|||
| 
								 | 
							
								     * @author 吴汐
							 | 
						|||
| 
								 | 
							
								     * @email 442384644@qq.com
							 | 
						|||
| 
								 | 
							
								     * @date 2023/03/04
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function setEnv()
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $unique = uniqid();
							 | 
						|||
| 
								 | 
							
								        //读取配置文件,并替换真实配置数据1
							 | 
						|||
| 
								 | 
							
								        $strConfig = file_get_contents(root_path() . 'public/install/.env');
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#DB_HOST#', Env::get('DATABASE.HOSTNAME', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#DB_NAME#', Env::get('DATABASE.DATABASE', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#DB_USER#', Env::get('DATABASE.USERNAME', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#DB_PWD#', Env::get('DATABASE.PASSWORD', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#DB_PORT#', Env::get('DATABASE.HOSTPORT', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#DB_PREFIX#', Env::get('DATABASE.PREFIX', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#DB_CHARSET#', 'utf8', $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#CACHE_TYPE#', 'redis', $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#CACHE_PREFIX#', 'cache_' . $unique . ':', $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#CACHE_TAG_PREFIX#', 'cache_tag_' . $unique . ':', $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#RB_HOST#', Env::get('REDIS.REDIS_HOSTNAME', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#RB_PORT#', Env::get('REDIS.PORT', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#RB_PWD#', Env::get('REDIS.REDIS_PASSWORD', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#RB_SELECT#', Env::get('REDIS.SELECT', ''), $strConfig);
							 | 
						|||
| 
								 | 
							
								        $strConfig = str_replace('#QUEUE_NAME#', $unique, $strConfig);
							 | 
						|||
| 
								 | 
							
								        @chmod(root_path() . '/.env', 0777); //数据库配置文件的地址
							 | 
						|||
| 
								 | 
							
								        @file_put_contents(root_path() . '/.env', $strConfig); //数据库配置文件的地址
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 更新分类券
							 | 
						|||
| 
								 | 
							
								     * @param int $sleep
							 | 
						|||
| 
								 | 
							
								     * @param int $page
							 | 
						|||
| 
								 | 
							
								     * @param int $limit
							 | 
						|||
| 
								 | 
							
								     * @return array
							 | 
						|||
| 
								 | 
							
								     * @author 吴汐
							 | 
						|||
| 
								 | 
							
								     * @email 442384644@qq.com
							 | 
						|||
| 
								 | 
							
								     * @date 2023/03/04
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function handleCoupon(int $sleep = 1, int $page = 1, int $limit = 100)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 处理历史余额数据
							 | 
						|||
| 
								 | 
							
								     * @param int $sleep
							 | 
						|||
| 
								 | 
							
								     * @param int $page
							 | 
						|||
| 
								 | 
							
								     * @param int $limit
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function handleMoney(int $sleep = 1, int $page = 1, int $limit = 100)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        /** @var UserBillServices $userBillServics */
							 | 
						|||
| 
								 | 
							
								        $userBillServics = app()->make(UserBillServices::class);
							 | 
						|||
| 
								 | 
							
								        $where = ['category' => 'now_money', 'type' => ['pay_product', 'pay_product_refund', 'system_add', 'system_sub', 'recharge', 'lottery_use', 'lottery_add']];
							 | 
						|||
| 
								 | 
							
								        $list = $userBillServics->getList($where, '*', $page, $limit, [], 'id asc');
							 | 
						|||
| 
								 | 
							
								        if ($list) {
							 | 
						|||
| 
								 | 
							
								            $allData = $data = [];
							 | 
						|||
| 
								 | 
							
								            foreach ($list as $item) {
							 | 
						|||
| 
								 | 
							
								                $data = [
							 | 
						|||
| 
								 | 
							
								                    'uid' => $item['uid'],
							 | 
						|||
| 
								 | 
							
								                    'link_id' => $item['link_id'],
							 | 
						|||
| 
								 | 
							
								                    'pm' => $item['pm'],
							 | 
						|||
| 
								 | 
							
								                    'title' => $item['title'],
							 | 
						|||
| 
								 | 
							
								                    'type' => $item['type'],
							 | 
						|||
| 
								 | 
							
								                    'number' => $item['number'],
							 | 
						|||
| 
								 | 
							
								                    'balance' => $item['balance'],
							 | 
						|||
| 
								 | 
							
								                    'mark' => $item['mark'],
							 | 
						|||
| 
								 | 
							
								                    'add_time' => strtotime($item['add_time']),
							 | 
						|||
| 
								 | 
							
								                ];
							 | 
						|||
| 
								 | 
							
								                $allData[] = $data;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            if ($allData) {
							 | 
						|||
| 
								 | 
							
								                /** @var UserMoneyServices $userMoneyServices */
							 | 
						|||
| 
								 | 
							
								                $userMoneyServices = app()->make(UserMoneyServices::class);
							 | 
						|||
| 
								 | 
							
								                $userMoneyServices->saveAll($allData);
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            $info['table'] = 'user_money';
							 | 
						|||
| 
								 | 
							
								            $info['status'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['error'] = '余额数据更新成功';
							 | 
						|||
| 
								 | 
							
								            $info['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $info['page'] = $page + 1;
							 | 
						|||
| 
								 | 
							
								            $info['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								            return $info;
							 | 
						|||
| 
								 | 
							
								        } else {
							 | 
						|||
| 
								 | 
							
								            $this->setIsUpgrade('money', 1);
							 | 
						|||
| 
								 | 
							
								            $info['table'] = 'user_money';
							 | 
						|||
| 
								 | 
							
								            $info['status'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['error'] = '余额数据更新成功';
							 | 
						|||
| 
								 | 
							
								            $info['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $info['page'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								            return $info;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 处理历史佣金数据
							 | 
						|||
| 
								 | 
							
								     * @param int $sleep
							 | 
						|||
| 
								 | 
							
								     * @param int $page
							 | 
						|||
| 
								 | 
							
								     * @param int $limit
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function handleBrokerage(int $sleep = 1, int $page = 1, int $limit = 100)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        /** @var UserBillServices $userBillServics */
							 | 
						|||
| 
								 | 
							
								        $userBillServics = app()->make(UserBillServices::class);
							 | 
						|||
| 
								 | 
							
								        $where = ['category' => ['', 'now_money'], 'type' => ['brokerage', 'brokerage_user', 'extract', 'refund', 'extract_fail']];
							 | 
						|||
| 
								 | 
							
								        $list = $userBillServics->getList($where, '*', $page, $limit, [], 'id asc');
							 | 
						|||
| 
								 | 
							
								        if ($list) {
							 | 
						|||
| 
								 | 
							
								            $allData = $data = [];
							 | 
						|||
| 
								 | 
							
								            /** @var  $brokerageFrozenServices */
							 | 
						|||
| 
								 | 
							
								            $brokerageFrozenServices = app()->make(UserBrokerageFrozenServices::class);
							 | 
						|||
| 
								 | 
							
								            $frozenList = $brokerageFrozenServices->getColumn([['uill_id', 'in', array_column($list, 'id')], ['frozen_time', '>', time()]], 'uill_id,frozen_time', 'uill_id');
							 | 
						|||
| 
								 | 
							
								            foreach ($list as $item) {
							 | 
						|||
| 
								 | 
							
								                if (in_array($item['type'], ['brokerage_user', 'extract', 'refund', 'extract_fail'])) {
							 | 
						|||
| 
								 | 
							
								                    $type = $item['type'];
							 | 
						|||
| 
								 | 
							
								                } else {
							 | 
						|||
| 
								 | 
							
								                    if (strpos($item['mark'], '二级')) {
							 | 
						|||
| 
								 | 
							
								                        $type = 'two_brokerage';
							 | 
						|||
| 
								 | 
							
								                    } else {
							 | 
						|||
| 
								 | 
							
								                        $type = 'one_brokerage';
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                $data = [
							 | 
						|||
| 
								 | 
							
								                    'uid' => $item['uid'],
							 | 
						|||
| 
								 | 
							
								                    'link_id' => $item['link_id'],
							 | 
						|||
| 
								 | 
							
								                    'pm' => $item['pm'],
							 | 
						|||
| 
								 | 
							
								                    'title' => $item['title'],
							 | 
						|||
| 
								 | 
							
								                    'type' => $type,
							 | 
						|||
| 
								 | 
							
								                    'number' => $item['number'],
							 | 
						|||
| 
								 | 
							
								                    'balance' => $item['balance'],
							 | 
						|||
| 
								 | 
							
								                    'mark' => $item['mark'],
							 | 
						|||
| 
								 | 
							
								                    'frozen_time' => $frozenList[$item['id']]['frozen_time'] ?? 0,
							 | 
						|||
| 
								 | 
							
								                    'add_time' => strtotime($item['add_time']),
							 | 
						|||
| 
								 | 
							
								                ];
							 | 
						|||
| 
								 | 
							
								                $allData[] = $data;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            if ($allData) {
							 | 
						|||
| 
								 | 
							
								                /** @var UserBrokerageServices $userBrokerageServices */
							 | 
						|||
| 
								 | 
							
								                $userBrokerageServices = app()->make(UserBrokerageServices::class);
							 | 
						|||
| 
								 | 
							
								                $userBrokerageServices->saveAll($allData);
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            $info['table'] = 'user_brokerage';
							 | 
						|||
| 
								 | 
							
								            $info['status'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['error'] = '佣金数据更新成功';
							 | 
						|||
| 
								 | 
							
								            $info['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $info['page'] = $page + 1;
							 | 
						|||
| 
								 | 
							
								            $info['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								            return $info;
							 | 
						|||
| 
								 | 
							
								        } else {
							 | 
						|||
| 
								 | 
							
								            $this->setIsUpgrade('brokerage', 1);
							 | 
						|||
| 
								 | 
							
								            $info['table'] = 'user_brokerage';
							 | 
						|||
| 
								 | 
							
								            $info['status'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['error'] = '佣金数据更新成功';
							 | 
						|||
| 
								 | 
							
								            $info['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $info['page'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								            return $info;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 处理历史退款数据
							 | 
						|||
| 
								 | 
							
								     * @param int $sleep
							 | 
						|||
| 
								 | 
							
								     * @param int $page
							 | 
						|||
| 
								 | 
							
								     * @param int $limit
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\DataNotFoundException
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\DbException
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\ModelNotFoundException
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function handleOrderRefund(int $sleep = 1, int $page = 1, int $limit = 100)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        /** @var StoreOrderServices $storeOrderServices */
							 | 
						|||
| 
								 | 
							
								        $storeOrderServices = app()->make(StoreOrderServices::class);
							 | 
						|||
| 
								 | 
							
								        $list = $storeOrderServices->getSplitOrderList(['refund_status' => [1, 2], ['refund_type' => [1, 2, 4, 5, 6]]], ['*'], [], $page, $limit, 'id asc');
							 | 
						|||
| 
								 | 
							
								        $allData = $refundOrderData = [];
							 | 
						|||
| 
								 | 
							
								        if ($list) {
							 | 
						|||
| 
								 | 
							
								            /** @var StoreOrderCreateServices $storeOrderCreateServices */
							 | 
						|||
| 
								 | 
							
								            $storeOrderCreateServices = app()->make(StoreOrderCreateServices::class);
							 | 
						|||
| 
								 | 
							
								            /** @var StoreOrderCartInfoServices $storeOrderCartInfoServices */
							 | 
						|||
| 
								 | 
							
								            $storeOrderCartInfoServices = app()->make(StoreOrderCartInfoServices::class);
							 | 
						|||
| 
								 | 
							
								            $time = time();
							 | 
						|||
| 
								 | 
							
								            foreach ($list as $order) {
							 | 
						|||
| 
								 | 
							
								                //生成退款订单
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['uid'] = $order['uid'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['store_id'] = $order['store_id'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['store_order_id'] = $order['id'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['order_id'] = $storeOrderCreateServices->getNewOrderId('');
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refund_num'] = $order['total_num'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refund_type'] = $order['refund_type'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refund_price'] = $order['pay_price'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refunded_price'] = 0;
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refund_explain'] = $order['refund_reason_wap_explain'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refund_img'] = $order['refund_reason_wap_img'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refund_reason'] = $order['refund_reason_wap'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refund_express'] = $order['refund_express'];
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['refunded_time'] = $order['refund_type'] == 6 ? $order['refund_reason_time'] : 0;
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['add_time'] = $order['refund_reason_time'];
							 | 
						|||
| 
								 | 
							
								                $cartInfos = $storeOrderCartInfoServices->getCartColunm(['oid' => $order['id']], 'id,cart_id,cart_num,cart_info');
							 | 
						|||
| 
								 | 
							
								                foreach ($cartInfos as &$cartInfo) {
							 | 
						|||
| 
								 | 
							
								                    $cartInfo['cart_info'] = is_string($cartInfo['cart_info']) ? json_decode($cartInfo['cart_info'], true) : $cartInfo['cart_info'];
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                $refundOrderData['cart_info'] = json_encode(array_column($cartInfos, 'cart_info'));
							 | 
						|||
| 
								 | 
							
								                $allData[] = $refundOrderData;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            if ($allData) {
							 | 
						|||
| 
								 | 
							
								                /** @var StoreOrderRefundServices $storeOrderRefundServices */
							 | 
						|||
| 
								 | 
							
								                $storeOrderRefundServices = app()->make(StoreOrderRefundServices::class);
							 | 
						|||
| 
								 | 
							
								                $storeOrderRefundServices->saveAll($allData);
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            $info['table'] = 'store_order_refund';
							 | 
						|||
| 
								 | 
							
								            $info['status'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['error'] = '退款数据更新成功';
							 | 
						|||
| 
								 | 
							
								            $info['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $info['page'] = $page + 1;
							 | 
						|||
| 
								 | 
							
								            $info['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								            return $info;
							 | 
						|||
| 
								 | 
							
								        } else {
							 | 
						|||
| 
								 | 
							
								            $this->setIsUpgrade('orderRefund', 1);
							 | 
						|||
| 
								 | 
							
								            $info['table'] = 'store_order_refund';
							 | 
						|||
| 
								 | 
							
								            $info['status'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['error'] = '退款数据更新成功';
							 | 
						|||
| 
								 | 
							
								            $info['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $info['page'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								            return $info;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 更新订单商品表
							 | 
						|||
| 
								 | 
							
								     * @param int $sleep
							 | 
						|||
| 
								 | 
							
								     * @param int $page
							 | 
						|||
| 
								 | 
							
								     * @param int $limit
							 | 
						|||
| 
								 | 
							
								     * @return array
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function handleCartInfo(int $sleep = 1, int $page = 1, int $limit = 100)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        /** @var StoreOrderCartInfoServices $storeOrderCartInfoServices */
							 | 
						|||
| 
								 | 
							
								        $storeOrderCartInfoServices = app()->make(StoreOrderCartInfoServices::class);
							 | 
						|||
| 
								 | 
							
								        $list = $storeOrderCartInfoServices->selectList(['uid' => 0], 'id,oid', $page, $limit)->toArray();
							 | 
						|||
| 
								 | 
							
								        $allData = $cartData = [];
							 | 
						|||
| 
								 | 
							
								        if ($list) {
							 | 
						|||
| 
								 | 
							
								            /** @var StoreOrderServices $storeOrderServices */
							 | 
						|||
| 
								 | 
							
								            $storeOrderServices = app()->make(StoreOrderServices::class);
							 | 
						|||
| 
								 | 
							
								            $uids = $storeOrderServices->getColumn([['id', 'in', array_column($list, 'oid')]], 'uid', 'id');
							 | 
						|||
| 
								 | 
							
								            foreach ($list as $cart) {
							 | 
						|||
| 
								 | 
							
								                $cartData['id'] = $cart['id'];
							 | 
						|||
| 
								 | 
							
								                $cartData['uid'] = $uids[$cart['oid']] ?? 0;
							 | 
						|||
| 
								 | 
							
								                $allData[] = $cartData;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            if ($allData) {
							 | 
						|||
| 
								 | 
							
								                $storeOrderCartInfoServices->saveAll($allData);
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            $info['table'] = 'store_order_cart_info';
							 | 
						|||
| 
								 | 
							
								            $info['status'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['error'] = '订单商品数据更新成功';
							 | 
						|||
| 
								 | 
							
								            $info['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $info['page'] = $page + 1;
							 | 
						|||
| 
								 | 
							
								        } else {
							 | 
						|||
| 
								 | 
							
								            $this->setIsUpgrade('cartInfo', 1);
							 | 
						|||
| 
								 | 
							
								            $info['table'] = 'store_order_cart_info';
							 | 
						|||
| 
								 | 
							
								            $info['status'] = 1;
							 | 
						|||
| 
								 | 
							
								            $info['error'] = '订单商品数据更新成功';
							 | 
						|||
| 
								 | 
							
								            $info['sleep'] = $sleep + 1;
							 | 
						|||
| 
								 | 
							
								            $info['page'] = 1;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        $info['add_time'] = date('Y-m-d H:i:s', time());
							 | 
						|||
| 
								 | 
							
								        return $info;
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 升级数据
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function upData()
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $data['new_version'] = 'CRMEB-BZ v5.2.1';
							 | 
						|||
| 
								 | 
							
								        $data['new_code'] = 521;
							 | 
						|||
| 
								 | 
							
								        $data['update_sql'] = [
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 3,
							 | 
						|||
| 
								 | 
							
								                'table' => "agent_level",
							 | 
						|||
| 
								 | 
							
								                'field' => "one_brokerage_percent",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "show columns from `@table` like 'one_brokerage_percent'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "ALTER TABLE `@table` ADD `one_brokerage_percent` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '一级分佣比例' AFTER `one_brokerage`"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 3,
							 | 
						|||
| 
								 | 
							
								                'table' => "agent_level",
							 | 
						|||
| 
								 | 
							
								                'field' => "two_brokerage_percent",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "show columns from `@table` like 'two_brokerage_percent'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "ALTER TABLE `@table` ADD `two_brokerage_percent` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '二级分佣比例' AFTER `two_brokerage`"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 3,
							 | 
						|||
| 
								 | 
							
								                'table' => "store_bargain",
							 | 
						|||
| 
								 | 
							
								                'field' => "is_commission",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "show columns from `@table` like 'is_commission'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "ALTER TABLE `@table` ADD `is_commission` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否返佣'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 3,
							 | 
						|||
| 
								 | 
							
								                'table' => "store_seckill",
							 | 
						|||
| 
								 | 
							
								                'field' => "is_commission",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "show columns from `@table` like 'is_commission'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "ALTER TABLE `@table` ADD `is_commission` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否返佣'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `eng_title` = 'wechat_config'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, @tabId, '公众号配置', 'wechat_config', 1, 0, '', 3, 0)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `eng_title` = 'wechat_encoding'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, @tabId, '服务器域名配置', 'wechat_encoding', 1, 0, '', 3, 0)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `eng_title` = 'routine_config'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, @tabId, '小程序配置', 'routine_config', 1, 0, '', 3, 0)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `eng_title` = 'routine_encoding'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, @tabId, '消息推送配置', 'routine_encoding', 1, 0, '', 3, 0)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'wechat_appid'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'wechat_appid'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'wechat_appsecret'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'wechat_appsecret'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'wechat_token'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_encoding'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'wechat_token'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'wechat_encode'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_encoding'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'wechat_encode'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'wechat_encodingaeskey'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_encoding'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'wechat_encodingaeskey'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'wechat_qrcode'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'wechat_qrcode'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_appId'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'routine_appId'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_appsecret'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'routine_appsecret'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'api'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_encoding'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'api'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_name'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'routine_name'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_contact_type'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'routine_contact_type'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'weixin_ckeck_file'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'weixin_ckeck_file'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'create_wechat_user'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'create_wechat_user'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'get_avatar'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'get_avatar'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'share_qrcode'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'share_qrcode'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'order_shipping_open'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'order_shipping_open'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_auth_type'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'routine_auth_type'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 7,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'wechat_template_to_miniprogram'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='wechat_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "UPDATE `@table` SET `config_tab_id` = @tabId WHERE `menu_name` = 'wechat_template_to_miniprogram'"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'refund_time_available'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='refund_config'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, 'refund_time_available', 'text', 'input', @tabId, '', 1, '', 100, 0, '0', '售后期限', '订单收货之后,在多少天内可以进行退款,超出天数前端不显示退款按钮,设置0则永远显示', 0, 1)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_api'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_encoding'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, 'routine_api', 'text', 'input', @tabId, '', 1, '', 100, 0, '\"\\/api\\/wechat\\/miniServe\"', '接口地址', '配置小程序消息推送使用的接口地址,直接复制输入框内容(此项系统生成,无法修改)', 0, 1)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_token'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_encoding'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, 'routine_token', 'text', 'input', @tabId, '', 1, '', 100, 0, '\"\"', '小程序验证TOKEN', '小程序验证TOKEN', 0, 1)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_encode'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_encoding'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, 'routine_encode', 'radio', 'input', @tabId, '0=>明文模式\n1=>兼容模式\n2=>安全模式', 1, '', 0, 0, '0', '消息加解密方式', '小程序消息推送中的消息加密方式,暂时仅支持明文模式', 0, 1)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => 6,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_config",
							 | 
						|||
| 
								 | 
							
								                'whereTable' => "system_config_tab",
							 | 
						|||
| 
								 | 
							
								                'findSql' => "select id from @table where `menu_name` = 'routine_encodingaeskey'",
							 | 
						|||
| 
								 | 
							
								                'whereSql' => "SELECT id as tabId FROM `@whereTable` WHERE `eng_title`='routine_encoding'",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, 'routine_encodingaeskey', 'text', 'input', @tabId, '', 1, '', 0, 0, '\"\"', 'EncodingAESKey', '消息加密密钥由43位字符组成,字符范围为A-Z,a-z,0-9', 0, 1)"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => -1,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_menus",
							 | 
						|||
| 
								 | 
							
								                'sql' => "DELETE FROM `@table` WHERE `id` = 657"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => -1,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_menus",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (657, 656, '', '首页装修', 'admin', '', '', '', '', '[]', 100, 1, 1, 1, '/setting/pages/devise/0', '12/656', 1, '', 0, 'admin-setting-pages-devise', 0, '页面设计')"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => -1,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_menus",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, 656, '', '商品分类', 'admin', '', '', '', '', '[]', 95, 1, 1, 1, '/setting/pages/cate_page/1', '656', 1, '', 0, '', 0, '')"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								            [
							 | 
						|||
| 
								 | 
							
								                'code' => 521,
							 | 
						|||
| 
								 | 
							
								                'type' => -1,
							 | 
						|||
| 
								 | 
							
								                'table' => "system_menus",
							 | 
						|||
| 
								 | 
							
								                'sql' => "INSERT INTO `@table` VALUES (NULL, 656, '', '个人中心', 'admin', '', '', '', '', '[]', 90, 1, 1, 1, '/setting/pages/user_page/2', '656', 1, '', 0, '', 0, '')"
							 | 
						|||
| 
								 | 
							
								            ],
							 | 
						|||
| 
								 | 
							
								        ];
							 | 
						|||
| 
								 | 
							
								        return $data;
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 升级列表
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function upgradeList()
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        return app('json')->success($this->services->getUpgradeList());
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 可升级列表
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function upgradeableList()
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        return app('json')->success($this->services->getUpgradeableList());
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 可升级列表
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function agreement()
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        return app('json')->success($this->services->getAgreement());
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 下载升级包
							 | 
						|||
| 
								 | 
							
								     * @param $packageKey
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function download($packageKey)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        if (empty($packageKey)) {
							 | 
						|||
| 
								 | 
							
								            return app('json')->fail(100100);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        $this->services->packageDownload($packageKey);
							 | 
						|||
| 
								 | 
							
								        return app('json')->success();
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 升级进度
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function progress()
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $result = $this->services->getProgress();
							 | 
						|||
| 
								 | 
							
								        return app('json')->success($result);
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 获取升级状态
							 | 
						|||
| 
								 | 
							
								     * @return mixed
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function upgradeStatus()
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $data = $this->services->getUpgradeStatus();
							 | 
						|||
| 
								 | 
							
								        return app('json')->success($data);
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 升级记录
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\ModelNotFoundException
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\DataNotFoundException
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\DbException
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function upgradeLogList()
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        $data = $this->services->getUpgradeLogList();
							 | 
						|||
| 
								 | 
							
								        return app('json')->success($data);
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    /**
							 | 
						|||
| 
								 | 
							
								     * 导出备份
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\ModelNotFoundException
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\DataNotFoundException
							 | 
						|||
| 
								 | 
							
								     * @throws \think\db\exception\DbException
							 | 
						|||
| 
								 | 
							
								     */
							 | 
						|||
| 
								 | 
							
								    public function export($id, $type)
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        if (!$id || !$type) {
							 | 
						|||
| 
								 | 
							
								            return app('json')->fail(100026);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        return app('json')->success($this->services->export((int)$id, $type));
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |