本文介绍CRMEB单商户PRO二次开发的操作流程,从创建数据库到实现添加数据的一个完整过程,其他更多的方法只是路由和方法名的区别是不言而喻。1.创建数据库例如数据库名称为:eb_test,字段为:id,uid,sort,status,add_timeSQL:CREATETABLEeb_test(idint(10)NOTNULLPRIMARYKEYAUTO_INCREMENT,uidint(10)NOTNULLDEFAULT'0'COMMENT'userid'sortSMALLINT(5)NOTNULLDEFAULT'0'COMMENT'sort',statustinyint(1)NOTNULLDEFAULT'1'COMMENT'status',add_timeint(10)NOTNULLDEFAULT'0'COMMENT'添加时间')ENGINE=InnoDBDEFAULTCHARSET=utf8COMMENT='测试表';其次,创建必要的文件。为了更好的管理,我将在这个模块中添加一个单独的测试文件目录。1.首先创建模型:路径:app/model/test/Test.php代码如下:namespaceapp\model\test;usecrmeb\basic\BaseModel;usecrmeb\traits\ModelTrait;usethink\Model;classTestextendsBaseModel{useModelTrait;/***数据表主键*@varstring*/protected$pk='id';/***模型名称*@varstring*/protected$name='test';}2.创建dao文件:路径:app/dao/test/Test.php代码如下:namespaceapp\dao\test;useapp\dao\BaseDao;useapp\model\test\Test;/***ClassTestDao@packageapp\dao\diy*/classTestDaoextendsBaseDao{/***SetModel*@returnstring*/protectedfunctionsetModel():string{returnTest::class;}}3.创建服务文件路径:app/services/test/Test.php代码如下:namespaceapp\services\test;useapp\services\BaseServices;useapp\dao\test\TestDao;/***ClassDiyServices@packageapp\services\test*/classTestServicesextendsBaseServices{/***PageLinkServices构造函数。*@paramTestDao$dao*/publicfunction__construct(TestDao$dao){$this->dao=$dao;}}4.创建controller文件后台controller写在app/admin,前台界面controllerapp/api比如我们现在写后台控制器代码如下:namespaceapp\controller\admin\v1\test;useapp\controller\admin\AuthController;useapp\services\test\TestServices;usethink\facade\App;/**ClassPageLink@packageapp\controller\admin\v1\test*/classTestextendsAuthController{/***PageLink构造函数。*@paramApp$app*@paramTestServices$services*/publicfunction__construct(App$app,TestServices$services){parent::__construct($app);$this->services=$services;}/**获取列表@returnmixed*/publicfunctionlist(){return$this->success($this->services->getList());}}5.路由文件:后台界面路由route/admin前台界面路由route/api//getlistRoute::get('get_test_list','v1.test.Test/list)->option(['real_name'=>'获取列表']);如果您觉得这篇文章对您有用,请给我们的开源项目点个star:http://github.crmeb.net/u/defu非常感谢!
