CRMEB单商户,增加商品徽章

当前版本CRMEB-BZ v5.4.0(20240708)

数据库变更

php think migrate:create UpdateStoreProductBadge

public function change()
{
    $this->table('store_product')
        ->addColumn('badge', 'text', ['null' => true, 'comment' => '商品徽章'])
        ->update();
}

代码变更

1. 控制器变更

\app\adminapi\controller\v1\product\StoreProduct::saveCacheData

\app\adminapi\controller\v1\product\StoreProduct::save

接收参数增加

['badge', null], //商品徽章

2. 服务层变更

商品编辑

\app\services\product\product\StoreProductServices::save

数据库事务之前,增加:

// 商品徽章
$data['badge'] = empty($data['badge']) ? null : json_encode($data['badge']);

商品列表

\app\services\product\product\StoreProductServices::getGoodsList方法内,调用 $this->dao->getSearchList 的第四个参数尾部增加 ,badge

\app\services\product\product\StoreProductServices::getProducts方法内,调用 $this->dao->getSearchList 的第四个参数尾部增加 ,badge

3. 模型层变更

\app\model\product\product\StoreProduct

增加获取器、修改器:

/**
 * 【获取器】商品徽章
 * @param string|null $value
 * @return mixed|null
 */
public function getBadgeAttr(?string $value)
{
    return $value ? json_decode($value, true) : null;
}

/**
 * 【修改器】商品徽章
 * @param string|object|array|null $value
 * @return string|null
 */
public function setBadgeAttr($value): ?string
{
    return is_string($value) ? $value : ($value ? json_encode($value) : null);
}
最后修改:2024 年 11 月 20 日 03 : 52 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论