From 920d4eec06e68b61756dbd91b35b6adc31a5e95f Mon Sep 17 00:00:00 2001 From: yumoqing Date: Sun, 14 Dec 2025 12:57:03 +0800 Subject: [PATCH] bugfix --- models/payfee.xlsx | Bin 0 -> 15327 bytes unipay/init.py | 4 ++++ unipay/payfee.py | 18 ++++++++++++++++++ 3 files changed, 22 insertions(+) create mode 100644 models/payfee.xlsx create mode 100644 unipay/payfee.py diff --git a/models/payfee.xlsx b/models/payfee.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..853047528457fe163a7e2749c21353abf4da5365 GIT binary patch literal 15327 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