diff --git a/app/Admin/Actions/Tree/CategoryTie.php b/app/Admin/Actions/Tree/CategoryTie.php new file mode 100644 index 0000000..f98d23a --- /dev/null +++ b/app/Admin/Actions/Tree/CategoryTie.php @@ -0,0 +1,76 @@ +response() + ->success('跳转到绑定页面' ) + ->redirect('/categoryTie'); + } + + /** + * @return string|void + */ + // public function href() + // { + // return admin_url('category/tie'); + // } + + /** + * @return string|array|void + */ + public function confirm() + { + // return ['Confirm?', 'contents']; + } + +// protected function actionScript() +// { + +// return <<branch(function ($branch) { + // 查询分类ssdb + $ssdb = new SsdbClient(); + $category = $ssdb->client()->hgetall('applet_index_category'); + $select = array_keys($category); + $src = $branch['cover_img_url']; $logo = ""; - $actions = '绑定'; - + $actions = ''; + $actions = (in_array($branch['id'],$select)) ?'已绑定':$actions; + return "{$branch['id']} - {$branch['title']} $logo $actions"; }); + $tree->tools(function (Tree\Tools $tools) { + $tools->add(new CategoryTie()); + }); $row->column(12, $tree); }); @@ -34,14 +47,14 @@ class CategoryController extends AdminController public function form() { return Form::make(new Category(),function (Form $form){ - + // 只查一级 $parentList = Category::getCategoryArray([['parent_id','=',0]],[0=>'顶级']); $form->select('parent_id')->default(0)->options($parentList); $form->text('title'); $form->image('cover_img'); - + $form->number('sort'); $form->disableResetButton(); @@ -51,7 +64,13 @@ class CategoryController extends AdminController }); } - + public function CategoryTieForms(Content $content) + { + return $content + ->title('绑定分类到首页') + ->body(new Card(new CategoryTieForm())); + } + /** * Make a show builder. * diff --git a/app/Admin/Controllers/v3/StoreController.php b/app/Admin/Controllers/v3/StoreController.php index ff08d63..7faea5a 100644 --- a/app/Admin/Controllers/v3/StoreController.php +++ b/app/Admin/Controllers/v3/StoreController.php @@ -13,6 +13,7 @@ use App\Admin\Common\StoreQRCode; use App\Models\v3\Store as StoreModel; use App\Models\v3\User as UserModel; use App\Models\v3\Category as CategoryModel; +use App\Models\LanzuUserBalance as UserBalanceModel; class StoreController extends AdminController { @@ -166,8 +167,22 @@ class StoreController extends AdminController $form->saved(function (Form $form){ $id = $form->getKey(); - // $form->isCreating() && - if(!empty($id)){ + $store = StoreModel::find($id); + + // 添加商户钱包 + $userBalance = UserBalanceModel::where([ + ['user_type','=',5], + ['source_id','=',$id] + ])->first(); + + if(empty($userBalance)){ + $userBalance = new UserBalanceModel(); + $userBalance->user_type = 5; + $userBalance->source_id = $id; + $userBalance->save(); + } + + if($form->isCreating() && !empty($id)){ $qrCode = new StoreQRCode(); // 生成小程序码 店铺 $sRes = $qrCode->SetStoreWeChatCode($id); @@ -176,11 +191,9 @@ class StoreController extends AdminController $pRes = $qrCode->SetPayWeChatCode($id); // 保存图片 - $store = StoreModel::find($id); $store->store_applet_img = $sRes['status'] ? $sRes['path'] : ''; - $store->cash_code_img = $pRes['status'] ? $pRes['path'] : '';; + $store->cash_code_img = $pRes['status'] ? $pRes['path'] : ''; $store->save(); - // 剪裁图片 // $form->image('cash_code_img')->crop(270, 270, [5, 5]); } diff --git a/app/Admin/Extensions/TypeCorrelationBind.php b/app/Admin/Extensions/TypeCorrelationBind.php deleted file mode 100644 index d1f1fb5..0000000 --- a/app/Admin/Extensions/TypeCorrelationBind.php +++ /dev/null @@ -1,34 +0,0 @@ -setHtmlAttribute(['class' => 'coupon-edit-row']); - return parent::html(); - } - -} diff --git a/app/Admin/Forms/CategoryTieForm.php b/app/Admin/Forms/CategoryTieForm.php new file mode 100644 index 0000000..01f7e36 --- /dev/null +++ b/app/Admin/Forms/CategoryTieForm.php @@ -0,0 +1,69 @@ +whereIn('id',$ids)->get(); + $data = []; + if(!empty($category)){ + foreach ($category as $key => $value){ + $data[$value->id] = json_encode([ + 'icon' => $value->cover_img, + 'name' => $value->title + ]); + } + } + + $category = $this->ssdb->client()->multi_hset('applet_index_category',$data); + if($category === false){ + return $this->error('修改失败'); + } + + return $this->success('修改成功', '/category'); + } + + /** + * Build a form here. + */ + public function form() + { + $this->ssdb = new SsdbClient(); + $category = $this->ssdb->client()->hgetall('applet_index_category'); + $select = array_keys($category); + + // 只查一级 + $parentList = CategoryModel::where('parent_id',0)->pluck('title','id')->toArray(); + + $this->multipleSelect('category_ids','选择分类')->required()->options($parentList)->value($select)->default($select); + } + + /** + * The data of the form. + * + * @return array + */ + public function default() + { + return []; + } + +} diff --git a/app/Admin/routes.php b/app/Admin/routes.php index 4f0ac25..a3d9fa1 100644 --- a/app/Admin/routes.php +++ b/app/Admin/routes.php @@ -46,7 +46,7 @@ Route::group([ // 分类 $router->resource('/category', 'v3\CategoryController'); - $router->get('/category/TieForm', 'v3\CategoryTieController@CategoryTieForm'); + $router->get('/categoryTie', 'v3\CategoryController@CategoryTieForms'); // 店铺 $router->resource('/store', 'v3\StoreController'); diff --git a/app/Models/v3/Category.php b/app/Models/v3/Category.php index 5f4a950..90fe607 100644 --- a/app/Models/v3/Category.php +++ b/app/Models/v3/Category.php @@ -67,7 +67,7 @@ class Category extends Model return $array; } - + /** * 处理旧图片 * @param $value @@ -81,4 +81,5 @@ class Category extends Model return $value; } } + } diff --git a/resources/lang/zh-CN/category-tie.php b/resources/lang/zh-CN/category-tie.php new file mode 100644 index 0000000..46424de --- /dev/null +++ b/resources/lang/zh-CN/category-tie.php @@ -0,0 +1,13 @@ + [ + 'CategoryTie' => '绑定', + 'categoryTie' => '绑定', + ], + 'fields' => [ + 'category_ids' => '选择分类', + ], + 'options' => [ + 'actions' => '操作' + ], +];