- Dikirim
- 23 September 2026 pukul 12.42 UTC
- Penulis
- Kamo
- Commit
- 19505fa
Setiap get / update / delete -by -uid handler di bawah Controller CommerceMarketController 's sumber daya sub- (kategori, merek, atribut / nilai, gambar, varian, tag, ulasan, pelanggan, penghitung pelanggan, kelas pajak / zona / tingkat, diskon, harga daftar / masukan, kartu hadiah, lokasi, tingkat saham / penyesuaian, pengiriman zona / metode, operator, pengiriman, carts / cart item, perintah draft, order catatan) diselesaikan baris melalui sebuah telanjang findById (uid) / deleteById (uid), dengan tidak Periksa baris ini milik organisasi penelepon. Terotentikasi anggota dari org apapun bisa membaca, menyunting atau menghapus baris organisasi lain oleh menebak atau menghitung uid - untuk pelanggan (sequential Long ids) ini adalah kebocoran PII nama, email dan pengeluaran; untuk kartu hadiah, tingkat saham dan gerobak totals itu menulis akses ke penyewa lain uang dan angka inventaris. getMarketVendor memiliki kesenjangan yang sama: yang POST / PUT / DELETE bersaudara sudah memecahkan pasar melalui find ByIdAndOrganizationId, tetapi GET tidak. Tetap dengan threading orgId ke setiap salah satu pencarian: - Terkait dengan kolom organisasi mereka sendiri (sebagian besar dari mereka) sekarang menyelesaikan melalui sebuah findByUidAnOrganizationId metode repositori, mencerminkan Ada * * * * * * * * * * * * * * * * pola (eksplisit @ Query, karena entities 'id field adalah' uid ', bukan' id '). - Entitas dengan tidak ada kolom organisasi mereka sendiri (gambar produk / varian melalui produk mereka, nilai atribut melalui atribut mereka, item gerobak melalui gerobak mereka, daftar harga entri melalui daftar harga mereka) scoped melalui baru.. query bergabung dengan org induk. - Sejumlah create- waktu kunci asing diambil verbatim dari tubuh permintaan (ID pasar, ID kategori orang tua, id tingkat pelanggan, zona pajak / kelas, gambar / varian sambungan-lintas, pembawa pengiriman / lokasi, draft pesan alamat disimpan) mendapat org- scoped pencarian yang sama, menutup sama class of gap at write time, not just at the by-id read / update / delete. - lookup Market dan lookopoffering baru (id, orgId) overload sentralize ini untuk setiap penangan penciptaan yang sebelumnya menyebut mereka unscoped. - getMarketVendor now resolve its market via findBy Aku dan Organisasi. sebelum daftar vendor, cocok dengan saudara sendiri. Dalam setiap kasus sebuah foregnag-org baris sekarang menjawab persis seperti yang hilang: sama exception, same message, same HTTP response the handler already produced for uid buruk - tidak ada informasi baru bocor oleh memperbaiki itu sendiri. Penugasan massal: updateGiftCard tidak lagi menerima keseimbangan mata uang dari Meminta tubuh. Tidak ada RoleRightType (Manvage _ PRICING, Manvage _ ORDERS,...) jelas mencakup penyesuaian keseimbangan manual, sehingga setiap koordinator berdiri instruksi kita tidak menciptakan satu; sebuah anggota same-org dapat tetap menyunting Kartu bidang lain persis seperti sebelumnya. Catatan untuk koordinator: kamo- internal MarketDiscountsTab.tsx giftt-kartu dialog penyuntingan mengirimkan nilai hari ini dan bidang yang sekarang akan diabaikan diam-diam - sebuah dedicated adjus- balance titik akhir (miroring / stock-level / {uid} / menyesuaikan) dibelakang kanan sendiri adalah memperbaiki kanan dan membutuhkan keputusan produk, bukan unilateral baru RoleRightType. Juga tetap dalam lewat sementara re-deriving signature ini: creatShigment membaca surat perintah dari tempat yang salah (controller melewati orgId posisi di mana perintah milik; UI selalu mengirimkan orderId di Tubuh POST) - sekarang membaca orderId dari tubuh, yang adalah apa yang setiap pemanggil Sudah dikirim. Ini perbaikan fungsional, bukan keamanan. Tes: RetailServiceOrganics Scopin Test dan * * * * * * * * * * * * cantumkan satu perwakilan sumber daya per pola repositori (kolom org sendiri, via- parent join) dengan foreign-org read / update / delete yang gagal tanpa fix dan same-org panggilan yang sukses, ditambah gift- kartu gift- Aturan tugas. Mutasi - dicentang: Mengembalikan pencarian ke findById dibuat semua "asing org" tes gagal merah; dipulihkan sebelum commit.
