fix: detect not work due to floating point
All checks were successful
Spell Check / Spell Check with Typos (push) Successful in 7s

This commit is contained in:
Methapon2001 2025-03-26 14:30:05 +07:00
parent f88b25a52a
commit 5fc4bbab6e

View file

@ -851,20 +851,18 @@ export class QuotationController extends Controller {
finalPrice: 0, finalPrice: 0,
}, },
); );
const changed = list const changed = list?.some((lhs) => {
? record.productServiceList.some( const found = record.productServiceList.find((rhs) => {
(lhs) =>
!list?.find((rhs) => {
return ( return (
lhs.serviceId === rhs.serviceId && lhs.serviceId === rhs.serviceId &&
lhs.workId === rhs.workId && lhs.workId === rhs.workId &&
lhs.productId === rhs.productId && lhs.productId === rhs.productId &&
lhs.discount === rhs.discount && lhs.amount === rhs.amount &&
lhs.pricePerUnit === rhs.pricePerUnit precisionRound(lhs.pricePerUnit, 6) === precisionRound(rhs.pricePerUnit, 6)
); );
}), });
) return !found;
: false; });
await Promise.all([ await Promise.all([
tx.service.updateMany({ tx.service.updateMany({
where: { id: { in: ids.service }, status: Status.CREATED }, where: { id: { in: ids.service }, status: Status.CREATED },