`CRMEB-Java`遵循`PSR-2`命名规范和`PSR-4`自动加载规范,并且注意如下规范:

### 目录和文件

* 目录使用小写+下划线;.

* 类库、函数文件统一以`.php`为后缀;

* 类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致;

* 类文件采用驼峰法命名(首字母大写),其它文件采用小写+下划线命名;

* **类名和类文件名保持一致**,统一采用驼峰法命名(首字母大写);

### 函数和类、属性命名

* 类的命名采用大驼峰法(首字母大写),例如`User`、`UserType`,默认不需要添加后缀,例如`UserController`应该直接命名为`User`;

* 方法命名使用小驼峰法,例如`getClientIp`;

* 属性命名使用小驼峰法,例如`tableName`、`instance`;

### 常量和配置

* 常量以大写字母和下划线命名,例如`APP_PATH`;

* 配置参数以小写字母和下划线命名,例如`url-route-on`和`url-convert`;

### 数据表和字段

* 数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如`think_user`表和`user_name`字段,不建议使用驼峰和中文作为数据表及字段命名。

### 系统编码

UTF-8 LF

**请理解并尽量遵循以上命名规范,可以减少在开发过程中出现不必要的错误。**

# **开发规范**

JAVA子项目 遵循阿里巴巴开发规范文档

# CRMEB Admin

## 开发规范

统一使用ES6 语法

方法注释

* th => 表头
* data => 数据
* fileName => 文件名
* fileType => 文件类型
* sheetName => sheet页名
export default function toExcel ({ th, data, fileName, fileType, sheetName })

行注释 //

### 命名

页面目录 文件夹命名格式骆驼式命名法,例如:用户列表 userList

例如:商品模块

store 商品

├─ store 商品管理

├─index.vue 首页

├─ creatStore 新建商品

├─ index.vue

├─ sort 商品分类

├─ index.vue

├─storeAttr 商品规格

├─ index.vue

├─storeComment 商品评论

├─ index.vue

页面命名、组建、文件夹 命名格式小驼峰命名法,例如:用户列表 userList

类名函数命名 大驼峰式 例如:addUser

变量命名 小驼峰式 例如:user 或者 userInfo

常量 采用全大些下划线命名 例如:VUE_APP_API_URl

### 文件管理规范

views 页面模块必须件文件夹区分

api 接口一个模块一个文件

组建 一个组建一个文件夹

plugins 插件一个插件一个文件夹

vuex 路由状态管理,一个模块在modules 中建一个文件夹

router 一个模块一个模块在modules 中建一个文件夹

style 样式尽量采用iView自带组建,common.less 系统通用样式不要轻易动

自定义通用样式 style.less,每次添加必须加注释,页面独立样式在在页面内写,后缀less 格式

组建样式 styles 中添加文件夹 composents 对应components 目录新建样式文件

utils 自定义工具js 独立命名,一般不用新建文件夹

## 模块命名

~~~

├─ login 登录

├─ dashboard 首页

├─ store 商品管理

├─ order 系统订单管理

├─ distribution 分销

├─ user 用户管理

├─ content 内容管理

├─ appSetting 各个应用模块功能管理公众号、小程序、支付宝、百度小程序、今日头条小程序

├─ marketing 营销管理 优惠劵 积分

├─ sms 设置 短信设置

├─ systemSetting 设置 管理员权限 系统设置 物流设置

├─ maintain 维护 配置分类 组合数据 表单配置

├─ error-page 错误页

~~~
## 开发
```bash
# 克隆项目
git clone https://gitee.com/ZhongBangKeJi/crmeb_java/
# 进入项目目录
cd ##
# 安装依赖
npm install
# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npm.taobao.org
# 启动服务
npm run dev
```
浏览器访问 http://localhost:9527
## 发布
```bash
# 构建测试环境
npm run build:stage
# 构建生产环境
npm run build:prod
```
## 其它
```bash
# 预览发布环境效果
npm run preview
# 预览发布环境效果 + 静态资源分析
npm run preview -- --report
# 代码格式检查
npm run lint
# 代码格式检查并自动修复
npm run lint -- --fix
```