|
|
|
@ -7,11 +7,15 @@ use Dcat\Admin\Widgets\Form; |
|
|
|
use Symfony\Component\HttpFoundation\Response; |
|
|
|
use App\Models\v3\Goods as GoodsModel; |
|
|
|
use App\Models\v3\GoodsBanners as GoodsBannerModel; |
|
|
|
use Dcat\Admin\Contracts\LazyRenderable; |
|
|
|
use Dcat\Admin\Traits\LazyWidget; |
|
|
|
use Illuminate\Support\Facades\DB; |
|
|
|
|
|
|
|
class GoodsImageForm extends Form |
|
|
|
class GoodsImageForm extends Form implements LazyRenderable |
|
|
|
{ |
|
|
|
use LazyWidget; |
|
|
|
|
|
|
|
protected $search = ''; |
|
|
|
/** |
|
|
|
* Handle the form request. |
|
|
|
* |
|
|
|
@ -28,22 +32,26 @@ class GoodsImageForm extends Form |
|
|
|
|
|
|
|
if($goodsId > 0 && !empty($coverImg)){ |
|
|
|
$data = ['cover_img' => $coverImg]; |
|
|
|
GoodsModel::where('id',$goodsId)->update($data); |
|
|
|
$res1 = GoodsModel::where('id',$goodsId)->update($data); |
|
|
|
} |
|
|
|
if($goodsId > 0 && !empty($bannerImg)){ |
|
|
|
$banner = GoodsBannerModel::where('goods_id',$goodsId)->first(); |
|
|
|
if(empty($banner)){ |
|
|
|
$banner = GoodsBannerModel::where('goods_id',$goodsId)->delete(); |
|
|
|
|
|
|
|
foreach($bannerImg as $value){ |
|
|
|
$banner = new GoodsBanners(); |
|
|
|
$banner->goods_id = $goodsId; |
|
|
|
$banner->type = 1; |
|
|
|
$banner->created_at = time(); |
|
|
|
$banner->updated_at = time(); |
|
|
|
$banner->path = $value; |
|
|
|
$res2 = $banner->save(); |
|
|
|
} |
|
|
|
$banner->path = $bannerImg; |
|
|
|
$banner->updated_at = time(); |
|
|
|
$banner->save(); |
|
|
|
} |
|
|
|
|
|
|
|
return $this->error('修改成功'); |
|
|
|
|
|
|
|
if((isset($res1) && $res1) || (isset($res2) && $res2)){ |
|
|
|
return $this->success('修改成功','/goods?'.$this->getSearch($this->search)); |
|
|
|
} |
|
|
|
return $this->error('未做任何修改'); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
@ -51,13 +59,25 @@ class GoodsImageForm extends Form |
|
|
|
*/ |
|
|
|
public function form() |
|
|
|
{ |
|
|
|
$id = $this->getKey(); |
|
|
|
$goods = GoodsModel::select('name')->find($id); |
|
|
|
$goodName = empty($goods->name)?'':$goods->name; |
|
|
|
$id = $this->payload['id'] ?? 0; |
|
|
|
$goodName = $this->payload['name'] ?? ''; |
|
|
|
$coverImg = $this->payload['cover_img'] ?? ''; |
|
|
|
$this->search = $this->payload['search'] ?? ''; |
|
|
|
// $goods = GoodsModel::select('name','cover_img')->find($id);
|
|
|
|
// $goodName = empty($goods->name)?'':$goods->name;
|
|
|
|
// $coverImg = empty($goods->cover_img) ? '':$goods->cover_img;
|
|
|
|
$this->hidden('goods_id')->value($id); |
|
|
|
$this->display('name','商品名称')->value($goodName); |
|
|
|
$this->image('cover_img','封面图')->autoUpload(); |
|
|
|
$this->image('img_banner','轮播图')->autoUpload(); |
|
|
|
$this->image('cover_img','封面图')->customFormat(function($cover_img) use($coverImg){ |
|
|
|
return [$coverImg]; |
|
|
|
})->autoUpload(); |
|
|
|
$this->multipleImage('img_banner','轮播图')->customFormat(function($img_banner) use($id){ |
|
|
|
if(!$id){ |
|
|
|
return ; |
|
|
|
} |
|
|
|
$banners = GoodsBanners::where('goods_id',$id)->pluck('path')->toArray(); |
|
|
|
return empty($banners) ? [] : $banners; |
|
|
|
})->autoUpload(); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
@ -70,4 +90,16 @@ class GoodsImageForm extends Form |
|
|
|
return []; |
|
|
|
} |
|
|
|
|
|
|
|
public function getSearch($data) |
|
|
|
{ |
|
|
|
$return = ''; |
|
|
|
if(is_array($data) && count($data) > 0){ |
|
|
|
unset($data['_pjax']); |
|
|
|
foreach($data as $key => $value){ |
|
|
|
$return .= $key.'='.$value.'&'; |
|
|
|
} |
|
|
|
} |
|
|
|
return $return; |
|
|
|
} |
|
|
|
|
|
|
|
} |