raysulkobir/zkteco-laravel

一个简单的包,用于将 ZKTeco 考勤日志集成到 Laravel 项目中

v0.1.0 2024-03-22 16:14 UTC

This package is auto-updated.

Last update: 2024-09-22 17:52:08 UTC


README

此包提供简单易用的功能,用于通过 laravel 框架与 ZKTeco 设备活动交互。

要求: Laravel >= 10.0

许可证: MIT

关于

Laravel ZKLibrary 是一个用于 ZK 考勤设备的 PHP 库。此库支持通过 UDP 协议读取和写入考勤设备(指纹、人脸识别或 RFID)的数据。此库允许 web 服务器与考勤设备直接通信,无需额外的程序。此库的实现形式为类。因此,您可以构建一个对象,然后使用其功能。

因此,您可以构建一个对象,然后使用其功能。

web 服务器必须通过局域网(LAN)连接到考勤设备。用于此传输的 UDP 端口为 4370。您不能在不首先更新考勤设备软件的情况下更新此端口。只需使用它即可。

数据格式为二进制、字符串和数值。参数的长度。

安装

首先通过 Composer 安装此包。只需在终端中运行以下命令即可-

composer require raysulkobir/zkteco-laravel

一旦此操作完成,下一步是添加服务提供者。打开 config/app.php,并在 providers 数组中添加一个新项目。

'providers' => [

        // .........................
         ZktecoServiceProvider::class,

    ]

如果您想更改 Zkteco 设置,则需要发布其配置文件。为此,您需要在终端中设置 IP 地址-

php artisan vendor:publish

用法

创建 ZKTeco 类的对象。
    use Raysulkobir\ZktecoLaravel\Lib\ZKTeco;;

//  1 s't parameter is string ip Device IP Address
//  2 nd  parameter is integer port Default: 4370

    $zk = new ZKTeco('192.168.1.210');

//  or you can use with port
//    $zk = new ZKTeco('192.168.1.210', 8080);

// Create database
// php artisan migrate
- Create table
   // finger_devices
   // employees
   // schedules
   // attendances
   // latetimes
   // leaves
   // overtimes
   // attendance_logs

   - Add schedules first.
   - Add employment

   - Get attendance
   // Current information Every guest receives this and a point request.
   // http://example-app.com/zkteco/get-attendance-log

   - Generate report
   // generate a report using current data
   // example-app.com/zkteco/get-attendanc
调用 ZKTeco 方法。
  • 连接

    //   this return bool
         $zk->connect()
    
  • 断开连接

     // this is return bool
     $zk->disconnect()
    
  • 启用设备

     // this is return bool//mixed
     $zk->enableDevice()
    
  • 禁用设备

     // this is return bool//mixed
     $zk->disableDevice()
    
  • 设备版本

    // 此返回 bool/mixed

    $zk->version();
    
  • 设备重启

     // this is return bool//mixed
     $zk->restart()
    
  • 设备序列号

      //    get device serial number
     $zk->serialNumber()
    
  • 设备名称

      //    get device name
     $zk->deviceName()
    
  • 设备 PIN 宽度

      //    get device pin width
     $zk->pinWidth()
    
  • 设备 SSR

      //    get device ssr
     $zk->ssr()
    
  • 设备平台

      //    get device platform
     $zk->platform()
    
  • 获取考勤

     //    return array[]
     $zk->getAttendance()
    
  • 清除考勤

     //   return bool/mixed
     $zk->clearAttendance()
    
  • 清除管理员

     //    remove all admin
     //    return bool|mixed
     $zk->clearAdmin()
    
  • 清除用户

     //    remove all users
     //    return bool|mixed
     $zk->clearUser()
    
  • 获取用户

      //    get User
      //    this return array[]
      $zk->getUser()
    
  • 删除用户

      //    parameter integer $uid
      //    return bool|mixed
      $zk->deleteUser()
    
  • 设置/添加用户

      //    1 s't parameter int $uid Unique ID (max 65535)
      //    2 nd parameter int|string $userid ID in DB (same like $uid, max length = 9, only numbers - depends device setting)
      //    3 rd parameter string $name (max length = 24)
      //    4 th parameter int|string $password (max length = 8, only numbers - depends device setting)
      //    5 th parameter int $role Default Util::LEVEL_USER
      //    return bool|mixed
      $zk->setUser()