From 7bb85510ec68dd8402713c127cdd418a6ff18ea4 Mon Sep 17 00:00:00 2001 From: anhduy-tech Date: Mon, 5 Jan 2026 14:30:10 +0700 Subject: [PATCH] changes --- api/__pycache__/settings.cpython-313.pyc | Bin 3451 -> 3451 bytes .../document_generator.cpython-313.pyc | Bin 21828 -> 21828 bytes app/__pycache__/models.cpython-313.pyc | Bin 133556 -> 133909 bytes .../workflow_engine.cpython-313.pyc | Bin 4362 -> 4362 bytes .../workflow_utils.cpython-313.pyc | Bin 5031 -> 5031 bytes app/migrations/0347_merge_20260105_1342.py | 14 ++++++++++++++ 6 files changed, 14 insertions(+) create mode 100644 app/migrations/0347_merge_20260105_1342.py diff --git a/api/__pycache__/settings.cpython-313.pyc b/api/__pycache__/settings.cpython-313.pyc index 21a981e16aef23fa05f351e2847f5d3d726c2370..cfe251518f2d9f06a64d03b80cb9acd9e8bedff1 100644 GIT binary patch delta 19 Zcmew@^;?STGcPX}0}$|~Z{#ZE1pqvb1o{8~ delta 19 Zcmew@^;?STGcPX}0}ylsY~(8B1pq$x1zi9D diff --git a/app/__pycache__/document_generator.cpython-313.pyc b/app/__pycache__/document_generator.cpython-313.pyc index 289dab9ea4be01d592a386d81204bbf392b0c02b..b141b67ce7672f624f8be5c9a37c047ed1a1b58f 100644 GIT binary patch delta 22 bcmX@Iit)%QM()qNyj%<*5F5Rb+cFdYQR)T* delta 22 ccmX@Iit)%QM()qNyj%=G5PvmlBe!KJ09Q^1*#H0l diff --git a/app/__pycache__/models.cpython-313.pyc b/app/__pycache__/models.cpython-313.pyc index b37f372a326b8259c90e3f778a90ed60a096fbac..25aea58097dfa58e13efd0672cf6fbda0b808f2f 100644 GIT binary patch delta 7735 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 delta 7296 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 M5k~HnIM`~Nl;hY)ahRk*CpNf z;fz)uM=j?CTQhT4@@%(o$5ZVtNGYPztY%*4ZS?16zR*q+NFh_`?Ph*YndaYG51in- z7S&{)L|IsaxWwkFcDk#|yymF<4%QlGXb4ibf3D)&Q^|XriJa8<9$SBJGe^8?di6al z(yIJEDt(`?__HYG6w2@*J$MRPl<^)HOGi#&JZ*cA=g*=ZAF$^6@8dX?oaW7(e2TBS zubpN^|3uBF*&&TA@=w<}gn2W~DRXtY^F#Es&Xi@$q%I$Dow@Eq$taes%%}`TxOL1>yB|6)t*7DT|ugRFpid<;V2nkQSTUz*&<8GBC3~!~|!&z<8b+LL0 zvu`H-QxwGBAju!AFW*t05K%&&r{$lbL3_eN?4)>e+<-`PZIQ*-|DWg%E~%$|hLH$= zU8DxjtTkp#tE!#JXXD`KsM1$5`|FhR1$JRSUHk%n)tO1OTTxHz={L7M3+M`dcLHd-?k;8Q)^puyxYCo(b1itK|DO z5%Pw7$s4tor3IuJQPTMww_75MSw^0Eb?H@B=B+o%%Kk}p-(h0j3&O)zz8u+>$?Tw^ zdBsEXh86gshhK$OLLQT*dgUD{YuZot@6oBlD8=Vrgtx^~;V!Rlv6k1?Omj~+dds|x zYOlpzHl$7LWe7P)fBqi7XixgRC;N8325TxVA6NuKh15Vf{pbH79U z%_bEtze(ShuRk6F{Vxje?rNvHyBeb@=ZZdfXa{x@CHNji~wU4mHv!u?FKs? z6K)}2&|5#_jCRZ)7-cZUnkM!6l{ep`H0xJn+kL|KnvmV}w_njY z;&u7{e+GN-b9AO||3SNq)LzCvx5?Zqtw^yH@?EmRmWddhU$%7y%MW8IC+cqU%2FvRz0Pvr%v?{s9xp#k7)9u zrQW901Cp^&noEQ%7ou(+>KQ^kK&ZRCx>Ua+qXz=#GF4YXb^BCzI(6An_Yie!P=&ZA zD+v~&iq&ZON)#ehnyRN%MWo6XRaB_bKxKKAp;dxaxl&~}qe|GsbeV<<>?(+>IIAL{ z9AtIC)b25w>0W5bwr{vsVuSZ#UlX){=xI?%UN~(@)uO7l0RC+25r_5*$1N#cRN5B6 spKUkMf*|dQ&={mI?b#Ni_@% diff --git a/app/__pycache__/workflow_engine.cpython-313.pyc b/app/__pycache__/workflow_engine.cpython-313.pyc index a0d34703f423527610ca5a305260c142c1604ecc..2e93c8e580d26f08969a9e465fe3a388b51d4c01 100644 GIT binary patch delta 20 ZcmeBD>QdtV%*)Hg00Obm8@c}r001)t1pWX3 delta 20 acmeBD>QdtV%*)Hg00criqc(E?7XSb?r3GsM diff --git a/app/__pycache__/workflow_utils.cpython-313.pyc b/app/__pycache__/workflow_utils.cpython-313.pyc index 3d2a4646fdf97645918b21277904d94e4c276834..1166deacdec299ce5552060c1bf6b3dc64067945 100644 GIT binary patch delta 20 ZcmZ3kzFeLAGcPX}0|>-MZ{(gM3;;Jn1mXYy delta 20 acmZ3kzFeLAGcPX}0}u$_irUCMM;HJ)qXlmO diff --git a/app/migrations/0347_merge_20260105_1342.py b/app/migrations/0347_merge_20260105_1342.py new file mode 100644 index 00000000..d9d80f30 --- /dev/null +++ b/app/migrations/0347_merge_20260105_1342.py @@ -0,0 +1,14 @@ +# Generated by Django 5.1.7 on 2026-01-05 06:42 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('app', '0344_payment_schedule_ovd_days_and_more'), + ('app', '0346_remove_co_ownership_code'), + ] + + operations = [ + ]