CRMEB多商户系统v1.0
首页
官网
技术社区
开发文档
开源地址
序言
系统简介
系统介绍
前端脑图
项目介绍
安装教程
1.源码上传(必看内容)
2.PHP扩展安装
3.反向代理
4.运行服务/队列
Supervisor管理器
堡塔应用管理器
5.一键安装
注意事项(很重要)
重启swoole服务
linux安装swoole方法
特别注意事项
mysql 5.7注意事项
更新记录
多商户v1.7.3
多商户v1.7.2
多商户v1.7.1
多商户v1.7.0
多商户v1.6.1
多商户v1.6.0
多商户v1.5.1
多商户v1.5.0
多商户v1.4.1
多商户v1.4.0
多商户v1.3.1
多商户v1.3.0
多商户v1.2.1
多商户v1.2.0
多商户v1.1.3
多商户v1.1.2
多商户v1.1.1
多商户v1.1.0
新手入门
运行环境
视频安装教程
服务器及环境搭建
服务器购买
域名购买
域名解析
服务器配置
宝塔配置
创建站点
https域名
公众号配置
公众号配置
公众号开发配置
公众号菜单
设置公众号菜单
关键字
跳转网页
跳转小程序
上传域名校验证书
小程序配置
1.微信平台配置
2.CRMEB后台配置
3.小程序打包
4.下载小程序包(1.7.1及以上版本)
5.确认发布
支付配置
公众号支付
小程序支付
支付宝支付
消息通知
公众号模板消息
小程序订阅消息
一键同步模板消息
商业授权
授权说明
申请授权
测试域名
版本更新
旧版本更新流程
自动更新(1.4及以上版本)
打包H5/公众号
清空数据
部署多套多商户
技术文档
开发规范
数据字典
目录结构
移动端路由
系统配置
后台表单说明
APP打包
基础配置
开发调试
打包上线
App打包
自定义命令
清除缓存
开启热更新
使用说明
商品管理
商品分类
分类说明
分类管理
品牌分类
商品标签
发布商品
商品规格
付费采集商品配置
保障服务
移动端商品管理
开启移动端商品管理
功能说明
商品推荐
虚拟商品
配置说明
文件上传
分销规则
分销配置
分销员管理
分销规则说明
分销员等级
分销礼包
佣金说明
用户管理
商户用户管理
平台用户管理
用户协议
用户搜索记录
会员管理
会员管理
会员权益
会员配置
用户反馈
提现
提现规则
提现步骤
账户管理
账号信息
账户资金
订单管理
后台订单
移动端订单
订单退款
订单打印
客服管理
商家客服
添加客服
自动回复
平台客服
开启客服
自动回复
门店自提
开启门店自提
设置核销权限
订单核销说明
商户管理
商户分类
商户入驻
商户列表
商户菜单管理
店铺类型
财务
财务对账
发票管理
自动分账(v1.5及以后版本)
邮费说明
运费设置
运费组成
运费模板
物流配置
店铺设置
店铺定位设置
店铺街入口
店铺活动
店铺基本信息设置
小票打印
小票打印机配置
小票打印机设置
短信设置
短信账户
短信配置
短信模板
一号通
电子面单
短信提醒
商品采集
物流查询
PC端首页
PC端开启
PC端平台页面配置
PC端店铺页面配置
社区功能
社区分类
社区话题
社区文章
社区评论
社区配置
上传微信校验文件
小程序配置
1. 小程序下载并提交审核
2. 确认发布
3.小程序直播配置
商城装修
移动端首页(v1.7.3及以前)
首页
分类页
个人中心
热门搜索
新闻资讯
新闻页面
发布资讯
商城装修
主题风格
同城配送
账号注册
达达
UU
同城配送
消息管理
消息管理
公告管理
营销活动
秒杀
秒杀规则
开启秒杀活动
直播
主播实名认证
开启直播
添加直播商品
预售
开启全款预售
开启定金预售
预售协议
专题
后台配置
前端展示
助力
开启助力
查看助力活动
拼团
虚拟拼团设置
开启拼团
查看拼团活动
积分
积分设置
积分来源
积分使用
优惠券
商户优惠券
添加优惠券
发布优惠券
领取及使用
发放优惠券
平台优惠券
优惠套餐
商户后台
平台后台
协议与规则
移动端说明
目录结构
配置说明
页面路径
后台前端说明
总后台目录结构
商户后台目录结构
开发和构建
PC端说明
安装教程
目录结构
打包教程
常见问题
服务器问题
服务器环境说明
MySQL 5.7注意事项
PHP fileinfo扩展安装
后台登录页幻灯片
后台登录页logo
论坛常见问题汇总
个人中心菜单加链接
子账号登录名
前后端分离配置
重启swoole进程
开论坛勋章
源码下载地址
查看/隐藏版本号
搜索商品后服务挂了
小程序提示插件未授权
安装完成后台下载小程序报404
商品上架用户端看不到商品
授权失败
前端代码打包后怎么放到服务器
开发文档
架构
config配置文件
容器和依赖注入
异常处理
路由
控制器模块
日志处理
自定义指令
预留事件
订单
微信
商品
用户
订单退款
后台管理
种草社区
CRMEB类库
Basic基类
Exceptions异常处理
Interfaces接口类
Jobs消息队列
services服务类
traits
listens定时监听类
接口流程
Controller
Repository
Dao
Model
流程
订单流程
下单流程
退款流程
二开教程
定义新的接口
创建新的页面
创建新的组合数据
更换短信模板
新增模板消息
Dao
# Dao * ## Dao定义 ### 目录位于 ``` \app\common\dao ``` >具体dao下在分块,根据具体逻辑功能不同划分 dao位于数据模型model层与逻辑处理层repository之间,处理每个特定逻辑数据库操作或有共性的查询、操作等 每一个dao对应一个model,比如在\app\common\model下存在User模型,那么在\app\dao下必然存在一个UserDao,必需继承baseDao并实现getModel方法,关联一个model类 ``` protected function getModel(): string { return User::class; } ``` 一个dao操作一个model类,model也只能通过这个dao被使用,不允许跨dao调用以及夸层级调用model 完整定义一个dao ``` <?php namespace app\dao\user; use app\dao\BaseDao; use app\model\user\User; /** * 用户 * Class UserDao * @package app\dao\user */ class UserDao extends BaseDao { protected function getModel(): string { return User::class; } //公共查询列表 public function search(array $where) { return $this->getModel()->getDb()->where('id',$where['id']); } } ``` * ## 使用 repository->dao->model 都是单一对应 dao必需在对应的repository中调用,不能被其他repository或者dao调用 比如:UserDao 必然只能被UserServices 使用 repository中注入对应dao ``` public function __construct(UserDao $dao) { $this->dao = $dao; } ``` 在repository中使用 ``` $this->dao ``` 就可以直接调用dao中定义的查询或者增删改差逻辑,比如: ``` $this->dao->search(['is_del'=>0]); ``` repository完整使用: ``` namespace app\common\repositories\user; use app\common\dao\user\UserDao; class UserRepository extends BaseRepository { protected $dao; public function __construct(UserDao $dao) { $this->dao = $dao; } public function search(array $where, int $page, int $limit) { $query = $this->dao->search($where); $list = $query->page($page,$limit)->select(); $count =$query->count(); return compact('count','list'); } } ``` * ## baseDao介绍 baseDao中内置了一些常用查询、聚合、添加、修改方法,如下: * @ get(int $id) 获取一条数据(主键) 返回`find()`查询结果集对象 * @ getWhere(array $where, string $field = '*', array $with = [])获取一条数据(多条件) 返回`find()`查询结果集对象 * @ selectWhere(array $where, string $field = '*')获取一条数据(多条件) 返回`select()`查询结果集对象 * @ getWith(int $id, array $with)获取一条数据(关联查询) 返回`find()`结果,查询结果集对象 * @ update($id, array $data) 修改数据 返回`update()`结果,影响数据条数 * @ updates($id,s array $data) 修改数据(多条数据) 返回`update()`结果,影响数据条数 * @ fieldExists($map, string $field = '') 查询一条数据是否存在 返回`true|false` * @ getWhereCount(array $where = []) 获取某些条件总数(复杂条件嵌套,可以是二位数组) 返回`count()`统计条数 * @ findOrCreate(array $where) 查询某个数据是否存在,如果不存在就创建这条数据 返回`create()`结果,当前模型对象实例 * @ delete($id, ?string $key = null) 删除 返回`delete()`结果 * @ create(array $data) 保存数据 返回`create()`结果,当前模型对象实例 * @ insertAll(array $data) 批量保存数据 返回`insertAll()`结果,添加数据条数 * @ getSearch(array $where) 搜索器,传入where条件,在model中定义搜索器就可查询 返回`select()`结果 * @ incField(int $id, string $field , $num = 1) 条件自增 返回`update()`结果 * @ decField(int $id, string $field , $num = 1)条件自减 返回`update()`结果
本页目录