Browse Source

Merge branch 'goods_img'

# Conflicts:
#	config/routes.php
master
Lemon 5 years ago
parent
commit
ca916ee28c
  1. 22
      app/Controller/v3/GoodsController.php
  2. 8
      app/Model/v3/Goods.php
  3. 6
      app/Model/v3/GoodsBanner.php
  4. 111
      app/Service/v3/Implementations/GoodsService.php
  5. 2
      app/Service/v3/Interfaces/GoodsServiceInterface.php
  6. 1
      config/routes.php

22
app/Controller/v3/GoodsController.php

@ -114,7 +114,15 @@ class GoodsController extends BaseController
$data['on_sale'] = $this->request->input('on_sale',0);
$data['is_infinite'] = $this->request->input('is_infinite',0);
$data['user_id'] = $this->request->input('user_id',0);
$data['cover_img'] = $this->request->input('cover_img',0);
$banners = $this->request->input('banner',0);
$res = $this->goodsService->update($data);
if(!empty($banners)){
$banners = explode(',',$banners);
foreach ($banners as $banner){
$this->goodsService->bannerCreate($data['id'],$banner,1);
}
}
return $this->success($res);
}
@ -162,7 +170,15 @@ class GoodsController extends BaseController
$data['on_sale'] = $this->request->input('on_sale',0);
$data['is_infinite'] = $this->request->input('is_infinite',0);
$data['user_id'] = $this->request->input('user_id',0);
$data['cover_img'] = $this->request->input('cover_img',0);
$banners = $this->request->input('banner',0);
$res = $this->goodsService->create($data);
if(!empty($banners)){
$banners = explode(',',$banners);
foreach ($banners as $banner){
$this->goodsService->bannerCreate($res['id'],$banner,1);
}
}
return $this->success($res);
}
@ -177,4 +193,10 @@ class GoodsController extends BaseController
$goodsId = $this->request->input('id',0);
return $this->success($this->goodsService->updateOnSale($goodsId));
}
public function bannerDelete()
{
$bannerId = $this->request->input('banner_id',0);
return $this->success($this->goodsService->bannerDelete($bannerId));
}
}

8
app/Model/v3/Goods.php

@ -62,7 +62,8 @@ class Goods extends Model
'tags',
'remark',
'on_sale',
'is_infinite'
'is_infinite',
'cover_img'
];
/**
* The attributes that should be cast to native types.
@ -177,4 +178,9 @@ class Goods extends Model
{
$this->attributes['spec'] = json_encode(json_decode($value, true));
}
public function banner()
{
return $this->hasMany(GoodsBanner::class, 'goods_id','id');
}
}

6
app/Model/v3/GoodsBanner.php

@ -24,6 +24,12 @@ class GoodsBanner extends Model
'banner_url',
];
protected $fillable = [
'id',
'goods_id',
'path',
'type'
];
public function getBannerUrlAttribute()
{

111
app/Service/v3/Implementations/GoodsService.php

@ -91,26 +91,6 @@ class GoodsService implements GoodsServiceInterface
{
$data =
[
'market_id' => $params['market_id'],
'store_id' => $params['store_id'],
'name' => $params['name'],
'category_id' => $params['category_id'],
'goods_category_id' => $params['goods_category_id'],
'goods_unit' => $params['goods_unit'],
'price' => $params['price'],
'original_price' => $params['original_price'],
'inventory' => $params['inventory'],
'restrict_num' => $params['restrict_num'],
'start_num' => $params['start_num'],
'spec' => $params['spec'],
'tags' => $params['tags'],
'remark' => $params['remark'],
'on_sale' => $params['on_sale'],
'is_infinite' => $params['is_infinite']
];
$this->log->event(LogLabel::CREATE_GOODS_LOG, ['logData' => json_encode(
[
'id' => $params['id'],
'market_id' => $params['market_id'],
'store_id' => $params['store_id'],
'name' => $params['name'],
@ -127,9 +107,30 @@ class GoodsService implements GoodsServiceInterface
'remark' => $params['remark'],
'on_sale' => $params['on_sale'],
'is_infinite' => $params['is_infinite'],
'user_id' => $params['user_id']
]
)]);
'cover_img' => $params['cover_img']
];
// $this->log->event(LogLabel::CREATE_GOODS_LOG, ['logData' => json_encode(
// [
// 'id' => $params['id'],
// 'market_id' => $params['market_id'],
// 'store_id' => $params['store_id'],
// 'name' => $params['name'],
// 'category_id' => $params['category_id'],
// 'goods_category_id' => $params['goods_category_id'],
// 'goods_unit' => $params['goods_unit'],
// 'price' => $params['price'],
// 'original_price' => $params['original_price'],
// 'inventory' => $params['inventory'],
// 'restrict_num' => $params['restrict_num'],
// 'start_num' => $params['start_num'],
// 'spec' => $params['spec'],
// 'tags' => $params['tags'],
// 'remark' => $params['remark'],
// 'on_sale' => $params['on_sale'],
// 'is_infinite' => $params['is_infinite'],
// 'user_id' => $params['user_id']
// ]
// )]);
return Goods::create($data);
}
@ -145,26 +146,6 @@ class GoodsService implements GoodsServiceInterface
)
->update(
[
'name' => $params['name'],
'category_id' => $params['category_id'],
'goods_category_id' => $params['goods_category_id'],
'goods_unit' => $params['goods_unit'],
'price' => $params['price'],
'original_price' => $params['original_price'],
'inventory' => $params['inventory'],
'restrict_num' => $params['restrict_num'],
'start_num' => $params['start_num'],
'spec' => $params['spec'],
'tags' => $params['tags'],
'remark' => $params['remark'],
'on_sale' => $params['on_sale'],
'is_infinite' => $params['is_infinite']
]);
$this->log->event(LogLabel::UPDATE_GOODS_LOG, ['logData' => json_encode(
[
'id' => $params['id'],
'market_id' => $params['market_id'],
'store_id' => $params['store_id'],
'name' => $params['name'],
'category_id' => $params['category_id'],
'goods_category_id' => $params['goods_category_id'],
@ -179,15 +160,36 @@ class GoodsService implements GoodsServiceInterface
'remark' => $params['remark'],
'on_sale' => $params['on_sale'],
'is_infinite' => $params['is_infinite'],
'user_id' => $params['user_id']
]
)]);
'cover_img' => $params['cover_img']
]);
// $this->log->event(LogLabel::UPDATE_GOODS_LOG, ['logData' => json_encode(
// [
// 'id' => $params['id'],
// 'market_id' => $params['market_id'],
// 'store_id' => $params['store_id'],
// 'name' => $params['name'],
// 'category_id' => $params['category_id'],
// 'goods_category_id' => $params['goods_category_id'],
// 'goods_unit' => $params['goods_unit'],
// 'price' => $params['price'],
// 'original_price' => $params['original_price'],
// 'inventory' => $params['inventory'],
// 'restrict_num' => $params['restrict_num'],
// 'start_num' => $params['start_num'],
// 'spec' => $params['spec'],
// 'tags' => $params['tags'],
// 'remark' => $params['remark'],
// 'on_sale' => $params['on_sale'],
// 'is_infinite' => $params['is_infinite'],
// 'user_id' => $params['user_id']
// ]
// )]);
return $goods;
}
public function info($goodsId)
{
$res = Goods::query()->withoutGlobalScope('normal')->where('id',$goodsId)->first();
$res = Goods::query()->withoutGlobalScope('normal')->where('id',$goodsId)->with('banner')->first();
return $res;
}
@ -207,4 +209,19 @@ class GoodsService implements GoodsServiceInterface
$goods->on_sale = $onSale % 2;
return $goods->save();
}
public function bannerDelete($bannerId)
{
return GoodsBanner::query()->where('id',$bannerId)->delete();
}
public function bannerCreate($goodsId,$path,$type = 1)
{
$date = [
'goods_id' => $goodsId,
'path' => $path,
'type' => $type
];
return GoodsBanner::create($date);
}
}

2
app/Service/v3/Interfaces/GoodsServiceInterface.php

@ -16,4 +16,6 @@ interface GoodsServiceInterface
public function info($goodsId);
public function getTags();
public function updateOnSale($goodsId);
public function bannerDelete($bannerId);
public function bannerCreate($goodsId, $path, $type = 1);
}

1
config/routes.php

@ -175,6 +175,7 @@ Router::addGroup('/v3/', function () {
Router::post('horseman/setHorsemanCoordinate', 'App\Controller\v3\HorsemanController@setHorsemanCoordinate');
Router::post('horseman/getOrderInfo', 'App\Controller\v3\HorsemanController@getOrderInfo');
Router::post('horseman/orderComplete', 'App\Controller\v3\HorsemanController@orderComplete');
Router::post('goods/bannerDelete', 'App\Controller\v3\GoodsController@bannerDelete');
},['middleware' => [\App\Middleware\Auth\ApiMiddleware::class, \App\Middleware\Auth\UserMiddleware::class]]);
// 微信支付回调

Loading…
Cancel
Save