V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
SexyPhoenix
V2EX  ›  推广

考勤应用 - 人力资源系统

  •  
  •   SexyPhoenix · 2019-09-03 17:02:50 +08:00 · 1422 次点击
    这是一个创建于 1912 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目地址 Bee

    介绍


    Bee 是人力资源系统中的考勤应用,主要功能用于员工申请假单。Bee 具有较高的性能、扩展性等,其中包括前后端分离、插拔式的规则验证(验证器)、数据过滤(装饰器)、消息队列等,后端在 Laravel 的 MVC 模式上,又添加了 Services、Repositories 层,明确每个类的职责,使用 Passport 的密码模式获取接口数据。

    技术栈


    • 服务器:Linux ( Centos 7 )、Nginx
    • 前端:Element、Vue、Vue-Router、Vuex、Webpack、V-calendar
    • 资源:Elephant
    • 后端:Laravel
    • 缓存:Redis 其他的就是一些基本工具了,比如 node、npm ( cnpm )、composer、git 等

    演示

    1. 登录

    image

    2. 申请

    image

    3. 编辑

    image

    4. 审批

    approval.gif

    5. 搜索

    search.gif

    安装


    1. 下载
    git clone [email protected]:SexyPhoenix/Bee.git 
    
    2. Laravel
    composer install
    chmod -R 777 storage
    php artisan key:generate
    
    3. 上传文件夹
    mkdir -p uploads/bee
    chmod -R 777 uploads
    
    4. 配置.env
    cp .env.example .env
    
    APP_URL=http://localhost
    ASSET_URL=http://localhost
    
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=homestead
    DB_USERNAME=homestead
    DB_PASSWORD=secret
    
    REDIS_HOST=127.0.0.1
    REDIS_PASSWORD=null
    REDIS_PORT=6379
    
    5. 数据库
    php artisan migrate
    
    6. Passport
    php artisan passport:keys
    php artisan passport:client --password --name='bee'  //name 自定义
    
    7. 开启消息队列
    php artisan queue:work bee --queue=apply --sleep=3 --tries=3 & > /dev/null
    
    8. Nginx
    server {
        listen 80;
        server_name dev.bee.goods; // 自定义
        index index.html index.htm index.php;
    
        location / {
            rewrite ^/(.*)$ /index.php/$1 last;
            try_files $uri $uri/ /index.php?$query_string;
        }
    
        location ~ /uploads/ {
           root "/var/www/Bee"; // 自定义
        }
    
        location ~ \.(html|gif|jpg|jpeg|css|js|eot|svg|ttf|woff|woff2|png)$ {
          root "/var/www/Bee/public"; // 自定义
        }
    
        location ~ (.+\.php)(.*)$ {
    
            root /var/www/Bee/public; // 自定义
            fastcgi_split_path_info ^(.+\.php)(.+)$;
            fastcgi_pass unix:/var/run/php-fpm/php7-fpm.sock;  // 自定义
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_path_info;
    
            fastcgi_intercept_errors off;
            fastcgi_buffer_size 16k;
            fastcgi_buffers 4 16k;
            fastcgi_connect_timeout 300;
            fastcgi_send_timeout 300;
            fastcgi_read_timeout 300;
         }
    }
    
    9. 前端
    cnpm install //cnpm 淘宝的
    
    export const API_DOMAIN = 'http://xxx/beeapi'  //resources\js\config\bee.js 文件中修改域名
    npm run dev
    
    10. 导入基本数据( database\sql\bee.sql )

    最后,注意配置域名到 host。

    打开 http://xxx/bee#/
    账号: [email protected] 密码:123456

    5 条回复    2019-09-03 17:45:52 +08:00
    murmur
        1
    murmur  
       2019-09-03 17:06:59 +08:00
    支持一个,但是这个需求在实际应用中拿工作流几下就配出来了啊,而且不能挂接考勤机就没意思了
    incheon
        2
    incheon  
       2019-09-03 17:17:44 +08:00
    感觉没啥用...
    SexyPhoenix
        3
    SexyPhoenix  
    OP
       2019-09-03 17:18:21 +08:00
    考勤机说的是签到签退吗? 是两个东西,不冲突的。我们这边就是分开的, 没有签到签退记录,会自动生成考勤记录
    配出来的都太丑了,这边的项目都是自己做的 O(∩_∩)O 哈哈~
    blindpirate
        4
    blindpirate  
       2019-09-03 17:41:30 +08:00
    道理我都懂,但是 777 真的不会有问题么?
    wbrobot
        5
    wbrobot  
       2019-09-03 17:45:52 +08:00
    建议: 用下钉钉
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1415 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:50 · PVG 07:50 · LAX 15:50 · JFK 18:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.