$val) { if ($type === $val) { $keyType = ucwords($key); break; } } return $keyType; } function transChartOfAccountType($type) { return $type ? __('chart_of_account.type.' . strtolower($type)) : ""; } /** * @param Builder $query * @param string|null $lessDate * @param array $betweenTwoDates * @param string $columnName * @return Builder */ function lessAndBetweenDateQuery($query, $lessDate = null, $betweenTwoDates = [], $columnName = "date") { if ($lessDate) { $query = $query->where($columnName, '<=', $lessDate); } elseif ($betweenTwoDates[0] ?? "" and $betweenTwoDates[1] ?? "") { $query = $query->whereBetween($columnName, [ $betweenTwoDates[0], $betweenTwoDates[1] ]); } return $query; } function getTaxRate($taxRateId) { $ItaxRepository = app(TaxRepositoryInterface::class); return $ItaxRepository->findById($taxRateId)->rate ?? 0; } function no($prefix, $lastFormat, $numZero = 7) { $lastFormat = (int) str_replace("{$prefix}-", "", $lastFormat ?? "0"); $lastFormat = sprintf("%0{$numZero}d", ++$lastFormat); // menambahkan nol didepan return "{$prefix}-{$lastFormat}"; } function formatDate($val, $format = "Y-m-d") { return $val ? date( $format, strtotime($val) ) : null; } /** * set value only number * * @param string $val * @return string */ function numberOnly(?string $val) { return preg_replace("/[^0-9]/", "", $val); } /** * Menghapus format angka dengan titik, misal "200.000" menjadi "200000". * * @param string $value * @return int */ function removeDots(string $value): int { return (int) str_replace('.', '', $value); } /** * set value only number * * @param string $val * @return string */ function qtyFormat(?string $val) { $newVal = preg_replace("/\,/", ".", $val); return (float) preg_replace("/[^0-9\.]/", "", $newVal); } function currentUserId() { return Auth::id(); } function currentUserRoleId() { return Auth::user()->role_id ?? null; } function ruleArrayTrans($arrayLangKey, $objLangKey = null) { return _($arrayLangKey) . '.*' . ($objLangKey ? '.' . _($objLangKey) : ''); } function ruleObjTrans($objLangKey, $objPropLangKey) { return _($objLangKey) . '.' . _($objPropLangKey); } function throwError($arg) { $msg = $arg->getMessage() ?? ""; throw new Error($msg); } function presenceChannelHandshake($user) { return [ "id" => $user->id, "name" => $user->name, "email" => $user->email, ]; } function getCompany() { $companyRepository = app(CompanyRepositoryInterface::class); return $companyRepository->fetch(); } function getCurrentUser() { return Auth::user() ?? Auth::guard('jwt_mobile')->user(); } function getAuthRoleName() { return strtolower(Auth::user()->userRole->role->name ?? Auth::guard('jwt_mobile')->user()->userRole->role->name ?? ""); } function getAuthRoleId() { return Auth::user()->userRole->role_id ?? Auth::guard('jwt_mobile')->user()->userRole->role_id ?? ""; } function displayRequirementNames($requirements) { if (!$requirements) { return; } $str = "