sku完成,订单、商品上下架管理正在搞

This commit is contained in:
2025-05-21 17:04:10 +08:00
parent 035ab1105c
commit fc503cb95a
18 changed files with 239579 additions and 22 deletions

View File

@@ -3,6 +3,7 @@
namespace App\Service\CodeGeneration;
use App\BaseApp\BaseService;
use App\Models\RegionModel;
use App\Models\UserReceivingAddressModel;
use Exception;
use Psr\Container\ContainerExceptionInterface;
@@ -13,9 +14,15 @@ class UserReceivingAddressService extends BaseService
public function __construct()
{
parent::__construct();
$this->selectField = ["id", "user_id", "province", "city", "district", "detailed_address", "complete_address", "status", "created_at", "updated_at", "deleted_at"];
$this->selectField = ["id", "user_id", "province", "total_address", "city", "district", "name", "phone", "is_default", "detailed_address", "complete_address", "status", "created_at", "updated_at", "deleted_at"];
$this->queryField = ['user_id' => '=','province' => '=','city' => '=','district' => '=','detailed_address' => '=','complete_address' => '=,status='];
$this->model = UserReceivingAddressModel::class;
$this->with = [
'user:id,nick_name',
'provinceInfo:id,name',
'cityInfo:id,name',
'districtInfo:id,name',
];
}
/**
@@ -26,7 +33,11 @@ class UserReceivingAddressService extends BaseService
*/
public function list(): array
{
return $this->getPageList();
$result = $this->getPageList();
foreach ($result['items'] as &$v) {
$v['total_address'] = json_decode($v['total_address']);
}
return $result;
}
/**
@@ -58,6 +69,7 @@ class UserReceivingAddressService extends BaseService
*/
public function create($params): mixed
{
$params = $this->checkAddress($params);
return $this->insert($params);
}
@@ -70,6 +82,7 @@ class UserReceivingAddressService extends BaseService
*/
public function update($id, $params): mixed
{
$params = $this->checkAddress($params);
return $this->save($id, $params);
}
@@ -84,4 +97,15 @@ class UserReceivingAddressService extends BaseService
return $this->del($ids);
}
public function checkAddress($params)
{
$data = RegionModel::whereIn('id', $params['total_address'])->get(['id', 'name']);
$regionName = array_column($data->toArray(), 'name');
$params['complete_address'] = implode('', $regionName). ' '. $params['detailed_address'];
$params['province'] = $params['total_address'][0];
$params['city'] = $params['total_address'][1];
$params['district'] = $params['total_address'][2];
$params['total_address'] = json_encode($params['total_address']);
return $params;
}
}