public static bool ApproveFraudReport(byte[] fraudId, byte[] signature) { FraudEntry fraudEntry = FraudStorageManager.ReadFraudEntry(fraudId); if (fraudEntry.FraudId == null) { Logger.log("Can not find fraud with Id"); return(false); } if (fraudEntry.Status != FraudStatus.REPORTED) { Logger.log("Invalid Fraud Report Status"); return(false); } Logger.log("Starting Validate Signature For Report Approve Request"); bool signatureValidationResult = SignatureValidator.CheckApproveFraudRequestSignature(fraudId, signature); if (!signatureValidationResult) { Logger.log("Approve Fraud Request signature Invalid"); return(false); } Logger.log("Validated Signature For Approve Fraud Request"); fraudEntry.Status = FraudStatus.APPROVED; fraudEntry.ApproveRejectOperationDate = TransactionContentUtil.retrieveTransactionTime(); FraudStorageManager.updateFraudEntry(fraudEntry); //todo: add fraud notification after log infrastructure fixed return(true); }
public static object LogFraudReportStatus(object[] args) { byte[] fraudId = (byte[])args[0]; FraudEntry fraudEntry = FraudStorageManager.ReadFraudEntry(fraudId); if (fraudEntry.FraudId == null) { Logger.log("Can not find Fraud Report"); } else { Logger.log("Fraud Report Exists in Storage"); Logger.log(fraudEntry.FraudId); Logger.log(fraudEntry.FakeButValidCertificateHash); Logger.log(fraudEntry.Reporter); Logger.log(fraudEntry.Status); } return(true); }