|
@@ -0,0 +1,49 @@
|
|
|
+<?php
|
|
|
+namespace App\Distributor\Actions;
|
|
|
+
|
|
|
+use Dcat\Admin\Grid\BatchAction;
|
|
|
+use Illuminate\Http\Request;
|
|
|
+use App\Distributor\Forms\ImportProduct;
|
|
|
+use Dcat\Admin\Widgets\Modal;
|
|
|
+
|
|
|
+
|
|
|
+//批量复制导入,最终在form importProduct
|
|
|
+class BatchCopy extends BatchAction
|
|
|
+{
|
|
|
+ protected $title = '倒入产品';
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 重写弹出的表单
|
|
|
+ * @return Modal|string
|
|
|
+ */
|
|
|
+ public function render()
|
|
|
+ {
|
|
|
+ // 实例化表单类
|
|
|
+ $form = ImportProduct::make();
|
|
|
+
|
|
|
+ return Modal::make()
|
|
|
+ ->lg()
|
|
|
+ ->title($this->title)
|
|
|
+ ->body($form)
|
|
|
+ // 因为此处使用了表单异步加载功能,所以一定要用 onLoad 方法
|
|
|
+ // 如果是非异步方式加载表单,则需要改成 onShow 方法
|
|
|
+ ->onShow($this->getModalScript())
|
|
|
+ ->button($this->title);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 填充选择的产品ID
|
|
|
+ * @return string
|
|
|
+ */
|
|
|
+ protected function getModalScript()
|
|
|
+ {
|
|
|
+ // 弹窗显示后往隐藏的id表单中写入批量选中的行ID
|
|
|
+ return <<<JS
|
|
|
+ // 获取选中的ID数组
|
|
|
+ var key = {$this->getSelectedKeysScript()}
|
|
|
+ $('#product_ids').val(key);
|
|
|
+ JS;
|
|
|
+ }
|
|
|
+
|
|
|
+}
|