PHP 获取编码规则公共方法
<?php
namespace app\index\logic;
use app\center\user\Organization;
use app\util\Redis;
class AssetsCode extends Base
{
protected static $assetsWarehouseKey = 'oa:assets_warehouse:code';
public static function getAssetsWarehouseCode($companyId): string
{
$redis = (new Redis())->getRedis();
$code = 'WYLW';
if ($redis->exists(self::$assetsWarehouseKey)) {
$code .= str_pad($redis->incr(self::$assetsWarehouseKey), 4, 0, STR_PAD_LEFT);
} else {
$redis->set(self::$assetsWarehouseKey, 1, self::getBeforeDawnDate());
$code .= "0001";
}
$companyCode = Organization::getDepartmentById($companyId)['code'];
return $code . '.' .$companyCode;
}
public static function getBeforeDawnDate(): int
{
return strtotime(date('Y-m-d',strtotime('+1 day'))) - time();
}
}