From 4f98a84635ab34129768b07cc81cef25694f4b96 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Sat, 25 Oct 2025 20:38:00 +0800 Subject: [PATCH] bugfix --- models/pricing_item.xlsx | Bin 0 -> 17764 bytes models/pricing_program.xlsx | Bin 0 -> 17756 bytes models/pricing_spec.xlsx | Bin 0 -> 17853 bytes models/pricing_type.xlsx | Bin 0 -> 17427 bytes pricing/__init__.py | 0 pricing/init.py | 0 pricing/pricing.py | 63 ++++++++++++++++++++++++++++++++++++ pyproject.toml | 4 +++ setup.cfg | 15 +++++++++ 9 files changed, 82 insertions(+) create mode 100644 models/pricing_item.xlsx create mode 100644 models/pricing_program.xlsx create mode 100644 models/pricing_spec.xlsx create mode 100644 models/pricing_type.xlsx create mode 100644 pricing/__init__.py create mode 100644 pricing/init.py create mode 100644 pricing/pricing.py create mode 100644 pyproject.toml create mode 100644 setup.cfg diff --git a/models/pricing_item.xlsx b/models/pricing_item.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..b9942ed42b737e1b71ee3d4ef6576469d756bc74 GIT binary patch literal 17764 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 TjK6$V6adV7A*c}luhIVpv3lB& literal 0 HcmV?d00001 diff --git a/models/pricing_program.xlsx b/models/pricing_program.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..640797c2b49f852b1794a94c725f650a73149404 GIT binary patch literal 17756 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 OAXq?wCy(H-tN#y)D$;WR literal 0 HcmV?d00001 diff --git a/models/pricing_spec.xlsx b/models/pricing_spec.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..7cf502d0fdca5d1a5a53462d604ab9539c2d91cb GIT binary patch literal 17853 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 literal 0 HcmV?d00001 diff --git a/models/pricing_type.xlsx b/models/pricing_type.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..b1bbf4edffc61b911c7e32b7a77a6284c6cb57b8 GIT binary patch literal 17427 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

t)(whqSs<@x{NcpxCJ1O=&n z2GrmU@HgR6&rih#AB9%^$Fgx@R8TjB96ExVBqj6LUc1aY7T^bmKRKQabEX>zrRu$H3Dt1ib%p`QJ@m?;NTxrNU=qD0>ijFZ9rCc$H$TGw&Ja(%Wmyp?As9ZQRk@D{ zK)sCfGky-}iD8=rHK23L{1_0%`&NbA&E0d9XPLA=C}ht9lN0Ms+DkRxF?#s~Y_P}D z3opo*zpCKM$3x4u0q-|b-f5?9ef_pkZL(>Qi&u#I0%m>3|)%n>=^VQaPhH}u)G0gNbJ)J zNr_k_&AG_4fd}KBt{hP}0I&7$mb)7ECA6Isn6JHxV4b6m+oLB(k74HRrbxn!g= z@mN@b`?Ld)>3cNVk3bDBqc{NVjS$5o_uF*2m7zBxUhWih(sc>4q=!% zTQm1aBrX%B5ox7*^D|^OWj%KLxAfR76PwS0@iudhVJ}J%9{fd)bbXj@PtJnYwK7Mj zqDP)F-^-s)F&o-fC$^CzA014tS4WSeN@U0)6D6zIpOq)%L3DY|*RXZnV!1BGi{)!?vi=n=+`QGfs zw_)#Ht!dig#TiD!+9`SQn!M9kmPtwUiQ&o8_nW0){t8pos09d13I2tTZDYFFW_z{@ zcS-z^>-|kDv+5bA?D$Vnf#_BEF>UyHle@mm*45yK`zdNW-0i1Ybgre>O5~AP zi9}#Qeu#)5LIO}wz(j<94*cz*c!2)r_Xh@{1!Ri;x#u0Q=--Zi=zy1(`geeT@3Q?X z^)$ew|0|UBD}ePo;lKA9{*@2}5EJ^(ork~U{N7deCz2i@^7LDe+3&=^x8M9p?DXz` ziT~D&^E=A#4H18$PykH8ACK@?lwa);zoYzK?ffT7JfPg_A5ebPKL3vLd#&f6C|}Y4 z5#?9q=kF-L*LwYlLV)uN<@d_3-vNFv68IB9E%w_NA% z2)`$9{zSl__!q+ergDBK{XIzgC#eO^?_c2`L$<#I{vPxE6VQtGcfeoV@+$)RJIe2| zoIg=k82%CES7hgRlz-o|{fPkt#K8&#^bb3@-vR#JasMlT6QFG5e*yk*=61", "wheel"] +build-backend = "setuptools.build_meta" + diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..59ae3c6 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,15 @@ +[metadata] +name=pricing +version = 0.0.1 +description = A pricing module for online store +author = "yu moqing" +author_email = "yumoqing@gmail.com" +readme = "README.md" +license = "MIT" +[options] +packages = find: +requires_python = ">=3.8" +install_requires = + apppublic + ahserver + sqlor