--- a/heuristics/valueHeuristics.php +++ b/heuristics/valueHeuristics.php @@ -1,10 +1,61 @@ + "unusual value for time of year"); +function VALUE_LARGE_CONTRACT_OVERALL($cn) { + $averageContractPeriod = getAverageContractPeriod(); + $diff = strtotime($cn['contractStart']) - strtotime($cn['publishDate']); + $days = intval($diff / 24); + return ($days > 45 ? 1 : 0); +} - - peculiar value - - Just under 80k, amplified if other contracts with same supplier are just under - - unusual variation amount - - absolute value; large reductions as well as large increases +/* - peculiar value + - Just under 80k, amplified if other contracts with same supplier are just under + */ +$heuristics["VALUE_NEAR_THRESHOLD"] = Array( + "description" => "unusual value for time of year"); +/* + - unusual variation amount - absolute value; large reductions as well as large increases + */ +$heuristics["VALUE_LARGE_VARIATION"] = Array( + "description" => "unusual value for time of year"); + +function VALUE_LARGE_VARIATION($cn) { + $averageContractPeriod = getAverageContractPeriod(); + $diff = strtotime($cn['contractStart']) - strtotime($cn['publishDate']); + $days = intval($diff / 24); + return ($days > 45 ? 1 : 0); +} + +/* - unusual value for time of year + - compare to all other records in last 2 weeks + - ie. many large contracts in june so takes more to standout */ +$heuristics["VALUE_HIGH_FOR_MONTH"] = Array( + "description" => "unusual value for time of year" +); + +function VALUE_HIGH_FOR_MONTH($cn, $monthAsInt) { + $averageContractPeriod = getAverageContractPeriod(); + $diff = strtotime($cn['contractStart']) - strtotime($cn['publishDate']); + $days = intval($diff / 24); + return ($days > 45 ? 1 : 0); +} + +$monthlyValueAverage = Array(); + +function getAgencyTransactions($agencyName) { + global $agencyTransactions; + if (!$agencyTransactions[$agencyName]) { + $query = 'select count(*) from contractnotice where agencyName = "' . $agencyName . '"'; + $result = $conn->query($query); + $r = $result->fetch(PDO::FETCH_BOTH); + $agencyTransactions[$agencyName] = $r[0]; + } + return $agencyTransactions[$agencyName]; +} + +?>