本文介绍一下CRMEB单商户PRO二次开发的操作流程,从创建数据库,到实现一个完整添加数据的过程,其他更多方法实现只是路由和方法名的差异,也就不过多赘述。一、创建数据库例如数据库名为:eb_test字
顺晟科技
2021-09-24 14:28:09
106
本文介绍一下CRMEB单商户PRO二次开发的操作流程,从创建数据库,到实现一个完整添加数据的过程,其他更多方法实现只是路由和方法名的差异,也就不过多赘述。
一、创建数据库
例如数据库名为:eb_test
字段为:id,uid,sort,status,add_time 
SQL:
CREATE TABLE eb_test (id int(10) NOT NULL PRIMARY KEY AUTO_INCREMENT,uid int(10) NOT NULL DEFAULT '0' COMMENT '用户id'sort SMALLINT(5) NOT NULL DEFAULT '0' COMMENT '排序',status tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态',add_time int(10) NOT NULL DEFAULT '0' COMMENT '添加时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='test表';
二、创建必要文件,为了更好的管理我给这个模块单独增加一个test文件目录。
1.首创建model :
路径:app/model/test/Test.php
代码如下:
namespace app\model\test;
use crmeb\basic\BaseModel;
use crmeb\traits\ModelTrait;
use think\Model;
class Test extends BaseModel
{
use ModelTrait;
/**
 * 数据表主键
 * @var string
 */
protected $pk = 'id';
/**
 * 模型名称
 * @var string
 */
protected $name = 'test';}
2.创建dao文件:
路径 :app/dao/test/Test.php
代码如下:
namespace app\dao\test;
use app\dao\BaseDao;
use app\model\test\Test;
/**
 *
class TestDao extends BaseDao
{
/**
 * 设置模型
 * @return string
 */
protected function setModel(): string
{
    return Test::class;
}}
3、创建services文件
路径 :app/services/test/Test.php
代码如下:namespace app\services\test;
use app\services\BaseServices;
use app\dao\test\TestDao;
/**
 *
class TestServices extends BaseServices
{
/**
 * PageLinkServices constructor.
 * @param TestDao $dao
 */
public function __construct(TestDao $dao)
{
    $this->dao = $dao;
}}
4、创建控制器文件
后台的控制器我们写在app/admin,前台接口控制器app/api
比如我们现在写后台的控制器代码如下:
·namespace app\controller\admin\v1\test;
use app\controller\admin\AuthController;
use app\services\test\TestServices;
use think\facade\App;
/**
Class PageLink@package app\controller\admin\v1\testclass Test extends AuthController
{
/**
 * PageLink constructor.
 * @param App $app
 * @param TestServices $services
 */
public function __construct(App $app, TestServices $services)
{
    parent::__construct($app);
    $this->services = $services;}
/**
24
2021-09
23
2021-09
03
2021-07
30
2021-06
25
2021-06