5.添加后台代码
添加一段PHP代码,功能是在后台取得数据表 eb_cartype的内容,以便管理端前台显示车辆类型信息。
5.1 添加函数具体代码
5.1.1 添加controler代码。修改 v1.product.StoreProduct/cartypelist 函数的定义,修改 crmeb\app\adminapi\controller\v1\product\StoreProduct.php 文件,添加函数代码如下。
/**
* Add by lisypro 2024-10-1
* 显示车辆类型列表
* @return mixed
*/
public function cartypelist()
{
;
$data = $this->service->getcartypelist();
return app('json')->success($data);
}
5.1.1 添加DAO层函数代码。
需要添加一个DAO层文件,文件位置于 H:\phpstudy_pro\WWW\q.cn\crmeb\app\dao\product\product\目录之下的 新建一个Cartype.php 文件。
需要在类 StoreProductDao 之下添加一个函数getcartypelist()的定义。
class StoreProductDao extends BaseDao
具体代码如下:
<?php
namespace app\dao\product\product;
use app\dao\BaseDao;
use app\model\product\product\StoreProduct;
use think\facade\Config;
use think\facade\Log;
/**
* Class StoreProductDao
* @package app\dao\product\product
*/
class Cartype extends BaseDao
{
/**
* 设置模型
* @return string
*/
protected function setModel(): string
{
return Cartype::class;
}
/**
* 获取商品列表
* @return array
*/
public function getList()
{
return $this->getModel()->select()->toArray();
}
}
5.1.2 添加服务层代码。
文件位于 crmeb\app\services\product\product\之下,新建文件名CartypeServices.php,直接在 原来的文件里添加一个功能函数,后期如果代码过多我们再将其独立出来。PHP函数代码如下:
/**
* Add by lisypro 2024-10-1
* 获取车辆类型列表`在这里插入代码片`
* @return mixed
*/
public function getCartypelist()
{
$data = $this->dao->getcartypelist();
return $data;
}
全部代码如下:
<?php
namespace app\services\product\product;
use app\dao\product\product\CartypeDao;
use app\Request;
use app\services\activity\bargain\StoreBargainServices;
use app\services\activity\combination\StoreCombinationServices;
use app\services\activity\seckill\StoreSeckillServices;
use app\services\BaseServices;
/**
*/
class CartypeServices extends BaseServices
{
public function __construct(CartypeDao $dao)
{
$this->dao = $dao;
}
/**
* Add by lisypro 2024-10-1
* 获取车辆类型列表
* @return mixed
*/
public function getCartypelist()
{
$data = $this->dao->getList();
return $data;
}
}
5.1.3 添加API代码
在目录 H:\phpstudy_pro\WWW\q.cn\crmeb\app\adminapi\controller\v1\product\之下新建 Cartype.php文件,内容如下:
<?php
namespace app\adminapi\controller\v1\product;
use app\adminapi\controller\AuthController;
use app\services\product\product\CartypeServices;
use app\services\product\product\StoreProductServices;
use crmeb\services\FileService;
use app\services\other\UploadService;
use think\facade\App;
use think\Request;
/**
* Class StoreProduct
* @package app\adminapi\controller\v1\product
*/
class Cartype extends AuthController
{
protected $service;
public function __construct(App $app, CartypeServices $service)
{
parent::__construct($app);
$this->service = $service;
}
/**
* 显示资源列表头部
* @return mixed
*/
public function cartypelist()
{
$list = $this->service->selectList([]);
return app('json')->success(compact('list'));
}
}
5.1.4 添加thinkphp的路由代码。
在目录crmeb\app\adminapi\route\product.php添加路由。界面内容如下:
这个文件中添加一下路由记录:
/** 车辆类型管理 */
Route::group(function () {
//车辆类型 add by lisypro 2024-10-1
Route::get('product/cartypelist', 'v1.product.Cartype/cartypelist')->option(['real_name' => '车辆类型列表']);
})->option(['parent' => 'product', 'cate_name' => '车辆类型管理']);