# ehr-zero **Repository Path**: luckean/ehr-zero ## Basic Information - **Project Name**: ehr-zero - **Description**: zero - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-10-15 - **Last Updated**: 2025-07-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # laravel代码相关 1. 相关功能写在laravel相关目录中,如没有目录请新建目录(如Model写在Models目录) 2. 路由相关控制器之前执行代码写在中间件middleware中。和类相关的写在类构造函数中(记住laravel构造函数是在中间件之前执行的) 3. 异常统一定义输出在Exceptions下相关Exception->render而不写在Handle->render中,异常状态吗定义常量在Handle中 4. API返回使用json,带上通讯状态码code和业务状态码status_code { code:1, status_code:200...} 5. 代码书写使用模块分层,抽离Controller和Services(Controller写交互,Services写业务,Model做数据存储) 6. 交互事件如错误日志,短信,微信推送,账单纪录等终端使用Event/Listeners,而不要直接写在逻辑后面 7. 数据库查询建议使用UserModel::query() 而不是DB::table('user') 8. 数据库创建的时候相关功能的列表和1对多的关联表采用复数形式 示例:tables, 一对一的不加s # 代码生成命令: 1. `php artisan generation:code {class_name?} {dir?} {m?} {--table_name=} {--model_dir=}` //脚本文件在app/Console/Commands/CodeGeneration 2. `php artisan generation:code ns_user` //生成 API、Admin模块Controller.Services.Manages.Requests.Views 和Models 3. `php artisan generation:code ns_user User Admin` //只生成Admin模块 子目录为User 4. `php artisan generation:code ns_user User Admin --model_dir=user` //只生成Admin模块 子目录为User model目录为User 5. `php artisan create:models {model?} {path?}` //生成指定models 6. 生成文件时 按数据表的第一个单词生成 model目录 , 按数据表的第一个单词生成 其他文件目录,如果需要多级按第二单词生成子目录,以此类推 7. php artisan create:menu {m} {path?} // m = Admin path = 子目录 ,没有就是admin下面全部 # 其他: 1. 后台账号配置文件 加盐:`APP_ADMIN_SALT=PjYjkbBSjAUEZ00HCCtQ`; 2. 编号生成类 App\Util\GenerateNumber; 示例:生成员工编号: `App\Util\GenerateNumber::generateStaffNumber($project_id, $staff_user_id)`; # 部署: 1. 第一次部署需要执行 `composer install/update` 安装依赖包 2. 创建.env 文件。 3. 在.env文件中追加 `APP_ADMIN_SALT= “任意字符”` 4. 执行 `php artisan jwt:secret` 生成jwt密钥 5. 修改env文件`APP_ENV=production` # env文件设置 1. APP_NAME=ehr-api 2. APP_ENV=production //生产环境 3. APP_DEBUG=false //关闭debug # 开启队列 生成员工社保方案 = 'staff_social_plan'; 生成员工信息 = 'create_staff_user'; 员工实名三要素 = 'user_authentication'; 计算薪资 专项附加扣除,五险一金,累计减免 = 'staff_salary'; 发送薪资工资条 = 'send_salary_message'; 合同签署 = 'ehr_contract_sign'; #生成菜单 php artisan create:menu Admin #定时任务 * * * * * /www/server/php/81/bin/php /www/wwwroot/saas.gzhclw.com/ehr-master/artisan schedule:run >> /dev/null 2>&1