修复竞争比和按钮问题
This commit is contained in:
@@ -292,7 +292,7 @@ class CrawlerService
|
||||
}
|
||||
|
||||
/**
|
||||
* 计算竞争比(格式:招聘人数:审核通过人数,简化比例,保留2位小数)
|
||||
* 计算竞争比(格式:1:比例,保留2位小数)
|
||||
* @param int $zprs 招聘人数
|
||||
* @param int $bkrs 审核通过人数
|
||||
* @return string
|
||||
@@ -304,33 +304,13 @@ class CrawlerService
|
||||
}
|
||||
|
||||
if ($bkrs <= 0) {
|
||||
return $zprs . ':0';
|
||||
return '1:0';
|
||||
}
|
||||
|
||||
// 计算最大公约数
|
||||
$gcd = $this->gcd($zprs, $bkrs);
|
||||
// 将招聘人数简化为1,计算审核通过人数与招聘人数的比例
|
||||
$ratio = $bkrs / $zprs;
|
||||
|
||||
// 简化比例
|
||||
$simplifiedZprs = $zprs / $gcd;
|
||||
$simplifiedBkrs = $bkrs / $gcd;
|
||||
|
||||
// 如果两个数都是整数,直接返回
|
||||
if ($simplifiedZprs == intval($simplifiedZprs) && $simplifiedBkrs == intval($simplifiedBkrs)) {
|
||||
return intval($simplifiedZprs) . ':' . intval($simplifiedBkrs);
|
||||
}
|
||||
|
||||
// 如果招聘人数是1,审核通过人数保留2位小数
|
||||
if ($simplifiedZprs == 1) {
|
||||
$bkrsFormatted = number_format($simplifiedBkrs, 2, '.', '');
|
||||
// 如果小数部分是.00,则显示为整数
|
||||
if (floatval($bkrsFormatted) == intval($bkrsFormatted)) {
|
||||
return '1:' . intval($bkrsFormatted);
|
||||
}
|
||||
return '1:' . $bkrsFormatted;
|
||||
}
|
||||
|
||||
// 否则,将招聘人数简化为1,审核通过人数按比例计算并保留2位小数
|
||||
$ratio = $simplifiedBkrs / $simplifiedZprs;
|
||||
// 保留2位小数
|
||||
$ratioFormatted = number_format($ratio, 2, '.', '');
|
||||
|
||||
// 如果小数部分是.00,则显示为整数
|
||||
|
||||
Reference in New Issue
Block a user