From 6e05f4ad020fc993f337ba32ce21d86e84f68aa1 Mon Sep 17 00:00:00 2001 From: JULLIEN Baptiste Date: Thu, 11 Apr 2024 21:13:22 +0200 Subject: [PATCH] Create a new field bundle_cost_float_ttc to have the exact sum on the frontend and change to always round price --- backend/autogen/bar.gen.go | 263 +++++++++--------- bar.openapi.yml | 4 + frontend/src/lib/api/api.ts | 6 + .../panel/products/reappro/+page.svelte | 30 +- 4 files changed, 162 insertions(+), 141 deletions(-) diff --git a/backend/autogen/bar.gen.go b/backend/autogen/bar.gen.go index 16ecedb..befab66 100644 --- a/backend/autogen/bar.gen.go +++ b/backend/autogen/bar.gen.go @@ -396,12 +396,13 @@ type NewRestock struct { // NewRestockItem defines model for NewRestockItem. type NewRestockItem struct { - AmountOfBundle uint64 `json:"amount_of_bundle" bson:"amount_of_bundle"` - AmountPerBundle uint64 `json:"amount_per_bundle" bson:"amount_per_bundle"` - BundleCostHt uint64 `json:"bundle_cost_ht" bson:"bundle_cost_ht"` - BundleCostTtc uint64 `json:"bundle_cost_ttc" bson:"bundle_cost_ttc"` - ItemId UUID `json:"item_id" bson:"item_id"` - Tva uint64 `json:"tva" bson:"tva"` + AmountOfBundle uint64 `json:"amount_of_bundle" bson:"amount_of_bundle"` + AmountPerBundle uint64 `json:"amount_per_bundle" bson:"amount_per_bundle"` + BundleCostFloatTtc float32 `json:"bundle_cost_float_ttc" bson:"bundle_cost_float_ttc"` + BundleCostHt uint64 `json:"bundle_cost_ht" bson:"bundle_cost_ht"` + BundleCostTtc uint64 `json:"bundle_cost_ttc" bson:"bundle_cost_ttc"` + ItemId UUID `json:"item_id" bson:"item_id"` + Tva uint64 `json:"tva" bson:"tva"` } // NewTransaction defines model for NewTransaction. @@ -10038,131 +10039,131 @@ func (sh *strictHandler) GetTransactionsItems(ctx echo.Context, params GetTransa // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ - "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", - "AgAA//9mKbT9zZkBAA==", + "H4sIAAAAAAAC/+x9bXPjNpLwX2Fpn60kT8kjzc4km/ibx+PkXBvPTGzP5q5yUyqIhCSuKYABIHt8Ln+5", + "33O/6n7JFV5IAiRIgnqXhfkyFvHWaHQ3uhuNxlMvxPMUI4gY7Z0+9Wg4g3Mg/jwLQ7xAjP+ZEpxCwmIo", + "CsYgASiE/E/4FczTBPZOXw+Hw35vgskcsN5pL0bsh7e9fo89plD+hFNIes/9XghINIoj3lgVUkZiNM3L", + "0hhVC/u9rycYpPFJiCM4hegEfmUEnDAwFRD9i2LUO+2d9J6f+70IJpDBaAQE6DlIi3qYshbjR97i/xE4", + "6Z32/jIoMDNQaBl8/nz5nreAcxAnIxBFBFJqncskJpSNEJhDa/EU42kC6xChStM4ZAti70C2dIE1AU2A", + "oDi8qy1MAaUPmESrLUiKY0Vd3cklJXEIRwQnsG26ilw/8QbXvP5zv0cgBzdkMUZi/JjBOXXs6Fpv+5zD", + "BggBj6Jvd5gycCgDzLXNjaj73O89AMToiOERZWAy0VZijHECARIoJvDPRUxg1Dv9g1OGQX46BZQpt58z", + "s5qQgfESArMJaIyaL24Fzi85xvD4XzBkfCqVJTp96kWQhiRO+Qi90x7/GuBJwGYwAEr+9HsQLeZ8ZiFe", + "MCC+pCS+jxM45RJJgDWZjMaA9Pq9OUQLDiFkkIMHvzJIEOTg5MTXo2wRQdFPlaj5WCf3gHB0UT6oDvR5", + "DoD+9YYP/06Mrn/+ZMCol1xJGI2eFbz6t4sM9gJ11yWCLmFPK63HIoFzzOAoW1rIyWWc4PAORiaabBXd", + "EXYtWl/rjVXJu2wwbV5LUEOxiuqv0UPMZqMxRHASC5Kcw/kY8mUB0VwQ63SGqWiwSCGRH1cmjJu8jfnh", + "95jN3hWwqMKrDCT1+0xBpn7+ogDMuuJwyioasm4yMWJiS3yuRxfCbITRGAMSicVQNUb4zsSB9r0LGj5g", + "9hG9y3tXXz/+QwB+DgheUJhczsEUVhWKbezY7vtlzIEcLUhSRbGAP2A4iGKaJuCxgiGrLC46tAlFAzef", + "0wSDqIqhOENcKzw59sYxAsQBQtFzE2C38KtFCQxxgkkVonP+OSNCxlvqtPWXn8W/KlD9PaMBpuZsTo5j", + "ovPqKyRIfLXh+ZxAxdubxfZ65id6sU+Jzq7wPZxDm/0A5pld4WIvCIx0oYushTtdFC3q9eRt0GfRoh4O", + "dxrGSTTqhGoCgVDbn1zIWvVsDJN3YSybsSJVZNvph8EpJo+72SpmcRRBZNO0u6A/W0GTxT6Aeb5HhwtC", + "IGJBmM3WwqjKBBwtSFzt7NcY3XF+VZU69YtpLHtxwaKNAJQ9oQOoddtXtlaOTdsyXxCCyTmO5NJmisoY", + "RCM+GhSa0ASTseyhUFm4KjPBC8TB+JOMYnQPErnTIq4xg2REIbmHZAT5ABxWzEZgwWYQsZhjpdiV9a64", + "ODM+ZAg0PvJ5GR8InMRJYvZEAKJAKOLa9y9O+tQFIe9AdJ0j4IKQnzUcXBBSaFw/q/EuCPnt+jJHwwUh", + "lwoTNwIRFwoPF4R8wOyshAlenSPD7JBvBuaXjCvNr5cMzs0v1wIhpd4KjOQFXDP8t9vbTxK6CquLxRuF", + "OGo1mTU6euZaP6VKW2pqdCWr0Qp1Z+37OgQ28uUzr9vdRgmcMMPl8eZvfSd5Be5BnIBxAkcTgueuUq5o", + "tUAsTlybjRePoySex8uBmvOHu1TcyjYq1ZeR8GQ0uZ2aRtX7aHUZcUr4JGt2MzXoSPgrrFuN8Nqwe+CK", + "KN7TSC1JZja4+LuuIFrkG67F0SX6zXty7lJwh6U7932RD2Xbu3DK4jlINOWmM+Wusq3WgbUMqaQEz3G2", + "Dxea+5vhcBh8e/Jm+Nfveo4TyjoaQRTRDuzl5JPkQCuHpE0VUDPvG7Kvsk6mvKhRIDIPY8YZdXL3U47s", + "kqEk/GjL8XzmXlyudeZpXK51JgaWaKr7QpfrofCfLtO+RBGFk1Z3y5oO23onrXWxXRxeiitzJXLxyHdD", + "pftlvwxHV1HFQSvjYLzLGyidJ/vAFRlDijaYvJ1F1VotjnVbGrX9NZqMFs63LX2+i+wtOtt2hI3sMmvZ", + "MdazPkqD1oy3dyAKCuPtA2ZBiBGC6gDgKqY0RtNgEsMkosFf7wtPcQASAkH0GMCvMdU95gHCLMgMq+xb", + "TMVnkCT4AUYcjQsKAwIpxQsiTrOymiFAvKZRHAAmPWbxHAZjKJlemU/Bb9cBNyUChOWxWGZJBdKmDDKb", + "8j/wIgAESjhKFpX0y0YYSjDzKQkHW/VzJjcsRZz+LZ+liWUbobCzKqVu9ucVnRr25xWdfsDsXF9FOlUL", + "+bNYR/kpO9CQy3iRAVSUaAah8fFMLmLlc2bRyALdvr2iU7t9K2Et27e8esm+vaLTkn17RacW+5Y3Ne3b", + "Kzqt2Le8txr79gN86BRH0XstGPn18NVw+L///T8GMy8XVLFyqEJz/MCKB/RdD9FLcsv5mFudZ2cot4mz", + "D/BhjX5rV2dq2XVaC1mdarFWP6MxuTGgUJ/dmryH5u6iOw1r5n70fpZGN4E3+zub/VU4PjUqYS4csarx", + "v89G/jrs+9y2r2Hya0gZDu8sJz4kvoekg4uxG80WQ9dRLsMMJKMQUzaaOWNca8RY6NxKfGkGWEF7y6tW", + "1Hh15mKCXIFGDdS8Eo1SF09G4wWKEugsN2W7FJKODWVtCfskwaCKT/G1aIsWIsKm1NR95fRWHZZOHAt1", + "CDBw9etaVnikWWvaStiQXEFCdX51KJYw1tCIpu5afHBaGG9ZzKLCdUAimyDtzL0aKHYOruGRHMr2KbY5", + "ITZAH2kc3sFI29dHW0GMTlpWxEjbx4IMdTTrPsP8MLdVMShi2SrUYtEFeq+H30sL6vtOFhQKYdItaqRo", + "stuwkS7nTXTRCRjVoAMsWYN6lDgpI5LO8iBot42RN7Hvi3rAo/FDKSm5ClOcP2SY0pFQmV/DTqrPQHOQ", + "ZT6MjHqqXpm87a2adB7+DOhMCS4VYzARoaThDIZ3XB9jM0gcvTxyhHPZY/ZD9KvG5sJDdq9K1SDy10c5", + "lAC1Rm87qsCtrjqqatAu+2RF60a5IYX4CLXhONdEVg1c21/ded8UYBlGtbJTQHSziXOW1RX0YoYWMNep", + "v9fp6TpvaNsIWIQzIMLpxB8jIWJ6/d59DBHCMYUklveA8ByLLcd1RxGjnWW9G7/fqzHUx3+aQ6mvn4oR", + "n42TjDZ1s6oWrkW3zDqJw7u6ntTlOYfeum+He6Y6dtpEWm0PRzVQ66fQBXPxvXzwarY1NOmE2jjazbdi", + "GW0s12o0NrpyhZRQ56CjCCPYSfZu1B5dk7g+EGf1qta3A/lvYs/qylKax7c7W/V7CxSzFfiwfqPMrbEq", + "Q+ij1rCouc02BZJZUaHtlJQBoq49gjuIRiEgcIQn4notiukMNhty1m2yOqYaolRwy0c8BwR+nFQLfy6G", + "L5Wc59CY89v23Kzzqp2TfT7GXIQgMvw8b8dw+MPbN5OT19FPP558//c345Of/h5GJyH46Ufww/dv3v49", + "ioxYmEVs9Th+TiPAoHEf0+7S3M0Be/MF/SO/Hv9s4Wq5nvUH5k3Xew7iML1mxsdxTL7W2wj+YN0frG/7", + "YL3EvbwTGC5IzB5veH3FtXwbElfWBI1wTIYY3wlrWS54793Z9ejs/dXlh9HNxc1NAR1I439AQRmtzesa", + "JjgEyYjhOykmRfsZBJFwRKr2/37yK691citqWTox8w00gfHxw7uPZ9fva8DhGIrRBPMukjiEiMIi7Kl3", + "dXnLdUKScBAZS+npYIBTiGSg5ytMpgPVaDCP2UAwUMyE/vAxhejs02VwEsjcHfeQUEm0r18NX71+LVkD", + "IpDGvdPem1fDV2+4dgnYTCzRABRxfSbN/wJleOkY0DjMSV5V/4YGfDactOQ9ySlcuQsu78Xfl5Fse5b7", + "IQikKUZUUtXfhkN5mRwxFeAG0jSJQ9F28C8VrybJttbn4rhBL3sTr8wewq1hRP0vwhBSOlkkyWMwxWWs", + "8HHfDl93mmcTcMUFRQssZnzzc7/3fUcMLz2yPSpZlya90z+elAj448szV+BFbqY/snWkvS+8ekbGA5Bp", + "vlaCFMc/QWxKcVDEWPO/IaXSC8Z7ClKAYNJAnFnmkzVSaAiQyFaDjZxZuoOFjlTIeN2Wv9rVUa3/vgHN", + "l0Mn7LfDt9sZuRr1L0b/aTujn2M0SWKpVR8wL+t521LAwlmVoaXNoNFY3qbMsp94B5n5WFRStzze4ehx", + "BZZF8GFUn2VOZbFoqFBiQKN23+zdhQez+VFlHr/kvXMhKCDSSCAEJArSGEmW2xL16zeGvIjzIs5VxCk3", + "XZN0+4ZqKook7WAQxC0iTmkl65BuTW5DLpvqE54qyddQwSL5tLSMRu8uku/cQJCXfl76eem3v9LvT1Lv", + "M/jtOghxJNICqhXOpSDDwS8itXCd3+F3OKY4vIOiahJTBlEwwSSg3MT7z8Vw+LcfghAkyRiEd8G3vCTE", + "OAkAiqUzgn7XYPH9dp13X7b7Xku6L/HrQ8zCWYymwSeCGQ5xIvJJCUeUaKUupSpHXyENGVnAvrZw2ZnX", + "53RKgJHMRxOmNzA8+R2ObwR8J2dhCFPW3G21j2wAJ2gecmRY4Hl+lpmTKVt5oeuXY737nNM2tdSe5LAd", + "iWxegxRNTTBbHcwOZrhCs3csWWVV/6ns6S0JMF7RFF4yYRqt9TVx+gZJEmT1LCR8A5PJdV6cAgLmkAmp", + "8EflBAJMYaAuBfWlE/rPBRQHd8qHnMpsXxaqaTiFqxy4iBHEOUdxgk2DFJJA9W8bWh52rTq2OGwPIi0b", + "ikRdzaDi6H8UyWgJy8iqpMLI5WEvUOQ+KERR9yG/rFUNzU8WnRLygK+jVKmgTkdIHepqDOAYki0Q23aB", + "h2gMISguo658Li5Cd+tyjksITOL/OhwPeoZoU6wxPJ0mkA6qCfutUu5WVhecYzYJJgmYVqSerK/27t95", + "g1ssMs+v14fe2fJa4oWC1qcCLKrADKCpYa7ZcOYtKG9BOVpQ+i7dqokYlS3qyLk8EFMLc2vWPnbt5Oc4", + "YZAE48cgv1xnV0pKykG3uPCXqiuU6bRr/HGr1lCnK5SGPgDV4e3wzXaGLvIxO0kgE4+1Zr3M/R+AAMEH", + "nU2r3mpMyzJmWTPe/Qp5T3okSiy2vrUuDbVz0ipt7dunrF0rFIewt5c4S9/fH+wHQ78WPs1QqJQ0wEi7", + "t2VVA9oamez5u3aY5COwtsuqKyiET8VdsOcBgRQyew6Ta16k3/b7hgbZU2g2sV5f3yQbUc84g2xUHC/f", + "Vy8dCr0qBWxWqFXGBbd6n3R7sHSdftVAGgKJpVkfn4bg5XiJJbXQZhfGpPVmWVZDD4elTSG1TY3qjkla", + "TbhUvcE1hczVhIvgBCwS1jt1TLBdHhLl5lw+m0YAqoZcDsHrJUGgEJBwFuTXwaw2najTazoz+7KJDbLz", + "ZSbbvYqNWoBLeNncu3c28AqGc9j1ryFbEESFdbLjDX8fhPpBitU6HeUsigKA9NNjkXsGMDAGFFoNUE06", + "bsj4zHnTstE1w7tq9JKTxHDXiyWX0CPVfbxburvKYxgjxbN3VcZ9L77XmqJXgNzJKopsL6MDsCveVufp", + "7QZvN7htcPZQqaUu33W9bncQzLXTnfCYFUbPzcuoqy6XlxrD+feVKdevMlvymFjPbLYiATyLexZfSevt", + "GiUqnGH1hzLFLu0YNsqlAgnOAYnWKx9aoyp9vKqPV/XxqgcTr+p3mn3eaYpIXaeom1wiVP2d11nRfu4a", + "ZyJ3k5Nk014cqxuuNdtWFYDbx9RNsKo828tp0EaO/y8bDEfKRFidvDmC66Fezh2inGtVqAdP8o8217LM", + "vkkDUCcVC+eyu2zcqp3dr4fAlFAmADl6vGf7xbA1JmrJX4Qi0+gUkzW/oXm0vcU3Jhl2D11ju2bZqpkM", + "HyQiXS3VDpcYjDeO7EOzjlrVWrSoodeifBz5BqStjwXocp+0pL1t+HapOC9oumL6ss41/Z1Xf+fVBxcJ", + "ubLOe7BLXIDdvYrpr+D6K7j+Cq6Pxd6GSK6/sNgglgdP2i/HiNCm+8OF405/POignAHm9CxQmBjb5zC6", + "RoLz3sFNjqqR/6H6BSu5BeojWhskwi+QeVGwe1GwbzkQvDA4cGHQfFKgVW8+LvCyYV2nBxaAaoyw5QDZ", + "gFHmdZd997WzFye5lrSLBk/qUdnn9odPTOHH27lKQAbnXgouB4l69s8CQvEa8IYlsA7CuvxfxgN/NgiA", + "EZ3XAEIem7eav0/ROB/oGxqoB5QD9YCydVzzjeVOo/sN5iVvMH1je8FEisoXtM0s2GwQAvm4VOXURyTV", + "ZzjPNPAQs5l4KKQ23dN5NRO/qm9uK6reOVjjY1pNz810TNEfyxfsuibrP4qnY0onoMcWxLJv7G68Vlv/", + "+ADn86l8E8OZ05sfSzl3fnRD1cxLG1XHaxjFREHDZjENFiQJwIRBkq1DfcYl0ukWQXnnfmN7hcUEBwYS", + "hwHmCM1OLrU3WX7FkhCW66ge1mfPa7vhtWZeGozhNEaDpz/JCGEUwudubLIeviqSbTYy1m/XgYDRboFk", + "M/ActAEO2n86zl61sl2EUO9dTTBRhBh8PFsI2rHTb0ODEv1mg7ZQrt6JfIzILv5V0Qr3yIyRXIJFNswr", + "ISbiJ0RRimPB40uxiqWfZk7ZY4rVn8N102O0J3HdrJZyK6vYXftjwE32i/sbwIX9stTTv96A8UrV3how", + "h/Xu4ztMEOQ7iX/5sdPLj230UXuZ/Z8gieXphtjyMhxpJGG9266t0/oedhe6dKuwltVc5PMHUdMLZy+c", + "NyuchbANAcELCpOBeFe0OTA+qxuourb3oVSVy6zGSjTsFH9sDGmJQLaepuyR0pthtS1rcQn9lotNkYmK", + "JgE3XyQsTgFhgwkm85MIMOA+YWOYz2mCQVTjJ9fgDZRUKBtSm3xqp0QaPsXFcWRIvmRwnp8Fw68xZfSw", + "Tu80kWCR0YMn8b9rxuQ2uVEEyZfFh2PcR9atLdhBAbqVBBNKufCH5RulbSHLD/RU3Nhq6+//tXFMWc/Z", + "c1axvyD//+vej48REO7P1vfjPd21CmwGvzJHnVpWbSC1W1Vhexo1H/EoFGqO+yZ9+laWbyKXsT6EzNDX", + "qEpzSHepSUuS8Iq0V6QPWpEWwnbwxP/rrkZbpUVVi1ZCw1EzUJ3aYpYlkF6FfjH3r7gMP3wNWjIUnY3m", + "+B7OIWpVdOgsKKpaFR06u9Iq7Ndz8ib828lmsZdPD1bX3FGpLFZ3668QLv2kYGmy60jgfSRKEkSM975H", + "D9Y3CDVjkR1SaBvCoBo1IqoZBL+xtwNNtrJZDhqk4nhUGhnbNR5aYBQgRZ49XuqLhQYNlu2JFfi0qoIM", + "nozfHZT7JobOFHuDoR0V+3LPFg2/DPJWVH05p+h4if/tLohfU/tXpnsGp5jEsD2ZnVbVqnZrpY1EfTPD", + "D8FMoFDrM/hWQB5glDx+V6OkykY2JbXIIvllO65NAfbjAbk1W5Oqasvr+PpHmGHBFiN1XhRuTGfJFsHG", + "LrJsN07Oeri8g/NlaiaK2g7byanxv7k1cHVIzrCDJlQjG3QPZ17FWQnKW1j1nxzGLb5E8XbLJHawHj9j", + "d2k8Na+hnELJOAySGW5xR/FU2FG7aX4nt0G14Q33nQw39VbuejWuode4/OGX3w6bla1Bbo822uailnjS", + "12n/vBSd7p/02n2ueYnIg00yr2fWWu95XU6HTg4SDsfhHM/FOTuseirnxV+LHiZR7ehgUonfqs6lS1lw", + "JMrXB/gg+akmtGoHPq46eLy25QP49lDdyqROu6ZlpkRtc3Mhu4gqfFx7Kqh2mXLUv/K6+9s3B5ySUlMg", + "mn04NbwpHDieLbfrOFqP+jL06osXd0cq7rpoLoM0DtmCwGavkZSPQVbX4i3iePuUF3th2f12ZIqmB3Y/", + "cv9ZZVkmcWKKnHyb+CLzvuwvb7xY+nwhB5CcUKVtGeXvdjQSpqoc5JUtZKlCMc+KKvt19SWD/Ygvvehr", + "7eRH1zJpHYYrHejUt6o33T/LuqdaqRJHNZLMeIGoyY32CZI54HAnj0rCUa6XZlkYv735/Oni+uz91eWH", + "72qC6R0zWe/Be/v+muxu3/3azUP42eiH7DwvmL3W53YNKcMEBqCsqFTYVtU0dZUXwL7eZ+TFhhcb7TpC", + "l0ShmSxxSBiq5Eklb+gRWUC7DPdpSZ768uN+vKVyyFLIMRWm1VwpSScXo2XJrH+VdII+U+ZRRDob5LUb", + "faQExNFZMy2ZPE2j5kWyt7dvvFjxYmVpPaM9g2tF1NRmci2JmSyhqzd1tmrq2LPaekvHWzp7LIHccpW2", + "2DkieXAHM6dbBtNyflSfyvSIlBFWyWm6fV1EwHC8Fo41LbHdwHk5jO2tGy9QvEDpqlk4ZY4rBExT9rhc", + "srgmkdtB4uY8U93+mzTm2qyY0m5/kyobxOINmyMzbLpnJ6szbFRMsZNNc9g5y7w5s7MgdZ+NcAtGTE3q", + "m7L98oKY2JsuXnh44eGiMbRn0srkSOYtrzNTnNJn+SMXn0zKWyRHZJF0yB9Tc/FFXMh2sEK6pa/Yj4wu", + "3vLYyfVtnyNqoxaHNcWMaW0cPLN6C8MLCS8kmnZ+AidxkrjZFlndeuviOq/h7Ysl7Ys9sQz4nHLKcDJ1", + "5NpbnhUybQyikYi3Mo7KylBLP3iSfyx35CHbupgaiiCd9ReS1bdoMDnE3uB4KbqEJI8daRNq8KMzOnIe", + "azI7XgjjeuPDCwwvMNqUAkYAoiDkg7hZIUaDelPk1qzm7ZFDt0fKhOJklGhU0GqZsDLFePPkqMwTff0H", + "T9qv5QwVrQMXa0WnVGfNhxmNbGHpxiy88fJSdBGNWnakkOgQHJ0ZY/Jdky3zMtnamzZenHhx0q5axPMU", + "E2bkSba/HXYpKhZ2wYTgeQCC85t/BpM4qabtkPW1fMn1D2DMFwmLU0DYgGvZJxFgoEnfF8M5pdN20IPb", + "pvW8VlNlDilVBkUTAVzJaoKwEGYjEIYw5WumGxWlyVpMh9bJK4k5WSTJYyApQU+D7QXpS3xOH6NJEofs", + "sIRWTpNKajVGm34r+vkuMN9vfYjZjPM0120CgKIgBdMYAauG9AtkZ0myn5GoL+gR1YYBy5cCSmOatwJW", + "e9qkGFR0bh9QFW0rl72P4XVxX3kfkuvrRgme4oVFVP4qv/ftgjQvNaVj/tnZJpMaRoKnUxgFvO22t/gQ", + "IwRDBvf7RZP+k1D3MBpjQCLBLeYuyCvKBXWJiuJ7X0NE1L6GQulezu3sczcMEBaIlw2tB7bVDY+wUVTe", + "9SrWR3mYCxS5DwJR1D6ED+zqEthVt+EUA/qTk4Pf9fKlVGKSMhzeNcvJvJJVSOZl+yUlM6AP6sGnar+Y", + "sJZeMWHHKQMLynUUgqKBQ3irRtGrauBH4h2CiPHevQR2k8CKwMSBldWZfE6geEY6k2IVySsrXOelm3g9", + "+QN8yHnGFs4kigKGg1AA4/CG8vqosgEwiZrI898LddBmhLeXZ0wWHtfVrMGT+qstIEWePTcIgCxAPit1", + "DrTNGlgjbTPYtnIerc7Xj5dh3m6XYfbt1doaXnEOJwVJEvB699B0iXyLSQQJ/c5mrux1TOn2HTubOMDQ", + "UOxwjpE9t7k/Rws+XNaHy740k8NY6aqYdchOVJwTx6hB6mb5i1qFr9PZcSEmRHKSXcqIrsxnP3L0jHPg", + "jCNa8q4kuS5I0jvtzRhLTweDBIcgmWHKTn8c/jjs8V2vKKe8AjwZA/KKwQSGeI4ACh9fIcgGII0H968t", + "DXjtR/iAk8mrCeHVehps1RjXBIjIVhwsKCTfUF3RlUEc2VO1fKLVTdnSQRGdZr5yS52al/aXauSrWzfK", + "Yx18SyBIgjlG8PG78vVAW09FPuciLCRGwgyiM5xWgiViaOtFCKoAo4CCBNZ0IIWDDQL9OR0RVJO/IpqP", + "LatYMSGDljFRUctcJ8yuKRQ9ZPGKz1+e/y8AAP//p+GvRCCaAQA=", } // GetSwagger returns the content of the embedded swagger specification file diff --git a/bar.openapi.yml b/bar.openapi.yml index 57ada86..dff9f38 100644 --- a/bar.openapi.yml +++ b/bar.openapi.yml @@ -5349,6 +5349,9 @@ components: bundle_cost_ttc: type: integer format: uint64 + bundle_cost_float_ttc: + type: number + format: float tva: type: integer format: uint64 @@ -5358,6 +5361,7 @@ components: - amount_per_bundle - bundle_cost_ht - bundle_cost_ttc + - bundle_cost_float_ttc - tva NewRestock: type: object diff --git a/frontend/src/lib/api/api.ts b/frontend/src/lib/api/api.ts index 7ba6a3a..82e0ef2 100644 --- a/frontend/src/lib/api/api.ts +++ b/frontend/src/lib/api/api.ts @@ -1447,6 +1447,12 @@ export interface NewRestockItem { * @memberof NewRestockItem */ 'bundle_cost_ttc': number; + /** + * + * @type {number} + * @memberof NewRestockItem + */ + 'bundle_cost_float_ttc': number; /** * * @type {number} diff --git a/frontend/src/routes/panel/products/reappro/+page.svelte b/frontend/src/routes/panel/products/reappro/+page.svelte index 697f222..338a8a8 100644 --- a/frontend/src/routes/panel/products/reappro/+page.svelte +++ b/frontend/src/routes/panel/products/reappro/+page.svelte @@ -27,6 +27,7 @@ amount_per_bundle: 0, bundle_cost_ht: 0, bundle_cost_ttc: 0, + bundle_cost_float_ttc: 0, tva: 0 }; let searchName: string = ''; @@ -80,19 +81,25 @@ } function updateTotalHTandTTC() { - newRestock.total_cost_ht = 0.0; + newRestock.total_cost_ht = 0; newRestock.items.forEach((item) => { newRestock.total_cost_ht += item.amount_of_bundle * item.bundle_cost_ht; }); newRestock.total_cost_ttc = 0.0; newRestock.items.forEach((item) => { - Math.floor((newRestock.total_cost_ttc += item.amount_of_bundle * item.bundle_cost_ttc)); + if (item.bundle_cost_float_ttc === 0.0) { + newRestock.total_cost_ttc += item.amount_of_bundle * item.bundle_cost_ttc; + } else { + newRestock.total_cost_ttc += item.amount_of_bundle * item.bundle_cost_float_ttc; + } }); } async function applyRestock() { if (!sure) return; newRestock.driver_id = undefined; + newRestock.total_cost_ttc = Math.round(newRestock.total_cost_ttc); + newRestock.total_cost_ht = Math.round(newRestock.total_cost_ht); restocksApi() .createRestock(newRestock, { withCredentials: true }) .then((res) => { @@ -121,6 +128,7 @@ amount_per_bundle: 0, bundle_cost_ht: 0, bundle_cost_ttc: 0, + bundle_cost_float_ttc: 0.0, tva: 0 }; // @ts-ignore @@ -137,16 +145,16 @@ ); if (displayedValues.bundle_cost_ht === "Prix d'un lot HT") { - newItem.bundle_cost_ht = Math.ceil( + newItem.bundle_cost_ht = Math.round( (displayedValues.item_price_calc * newItem.amount_per_bundle) / (1 + newItem.tva / 10000) ); } displayedValues.bundle_cost_ht = formatPrice(newItem.bundle_cost_ht); if (displayedValues.bundle_cost_ttc === "Prix d'un lot TTC") { - newItem.bundle_cost_ttc = Math.ceil( - displayedValues.item_price_calc * newItem.amount_per_bundle - ); - } + newItem.bundle_cost_ttc = Math.round( + displayedValues.item_price_calc * newItem.amount_per_bundle + ); + } displayedValues.bundle_cost_ttc = formatPrice(newItem.bundle_cost_ttc); } @@ -356,9 +364,10 @@ displayedValues.bundle_cost_ht = r; // @ts-ignore e.target.value = r; - newItem.bundle_cost_ttc = Math.ceil( + newItem.bundle_cost_ttc = Math.round( newItem.bundle_cost_ht * (1 + newItem.tva / 10000) ); + newItem.bundle_cost_float_ttc = newItem.bundle_cost_ht * (1 + newItem.tva / 10000); displayedValues.bundle_cost_ttc = formatPrice( Number((newItem.bundle_cost_ht * (1 + newItem.tva / 10000)).toFixed(0)) ); @@ -393,8 +402,8 @@ class="rounded-lg border-transparent flex-1 appearance-none border border-gray-300 w-full py-2 px-4 bg-white text-gray-700 placeholder-gray-400 shadow-sm text-base focus:outline-none focus:ring-2 focus:ring-blue-600 focus:border-transparent" placeholder={displayedValues.bundle_cost_ttc} on:change={(e) => { - newItem.bundle_cost_ht = Math.ceil( - // @ts-ignore + newItem.bundle_cost_ht = Math.round( + // @ts-ignore parsePrice(e.target?.value) / (1 + (newItem.tva ?? 0) / 10000) ); // @ts-ignore @@ -436,6 +445,7 @@ amount_per_bundle: 0, bundle_cost_ht: 0, bundle_cost_ttc: 0, + bundle_cost_float_ttc: 0.0, tva: 0 }; updateTotalHTandTTC();