в процессе
This commit is contained in:
parent
e434d1c1c2
commit
571ad5731c
@ -112,6 +112,10 @@ const DataGridElement: React.FC<MWProps> = ({ openModal }) => {
|
||||
let price = 0;
|
||||
let prices = 0;
|
||||
|
||||
const [ refreshX, setRefreshX ] = React.useState(1);
|
||||
const refresh = () => { setRefreshX( refreshX + 1 ); }
|
||||
console.log("RENDER")
|
||||
|
||||
const { discountsArray, discountsArraySet } = useStore<StoreState>((state) => state);
|
||||
const { discountsActiveArray, discountsActiveArraySet } = useStore<StoreState>((state) => state);
|
||||
|
||||
@ -190,6 +194,8 @@ const DataGridElement: React.FC<MWProps> = ({ openModal }) => {
|
||||
setSelectedPromocode( codeNumber );
|
||||
}
|
||||
|
||||
const fieldAdded = React.useRef<HTMLInputElement | null>(null);
|
||||
|
||||
return (
|
||||
<Box style={{ width: "100%" }}>
|
||||
<Box style={{ height: 400 }}>
|
||||
@ -405,7 +411,8 @@ const DataGridElement: React.FC<MWProps> = ({ openModal }) => {
|
||||
style: {
|
||||
color: theme.palette.secondary.main
|
||||
} }}
|
||||
//inputRef={ fieldPromocode }
|
||||
inputRef={ fieldAdded }
|
||||
onChange={ () => refresh() }
|
||||
/>
|
||||
</Box>
|
||||
|
||||
@ -450,7 +457,7 @@ const DataGridElement: React.FC<MWProps> = ({ openModal }) => {
|
||||
if( selectedPromocode >= 0 && checkboxStates == 1 ) {
|
||||
promocodeArray[ selectedPromocode ].privileges.forEach( (privilege) => {
|
||||
if( tariff.service == privilege.good ) {
|
||||
tariffPrice = tariffPrice * privilege.discount;
|
||||
tariffPrice = tariffPrice - (tariffPrice * privilege.discount);
|
||||
}
|
||||
} )
|
||||
}
|
||||
@ -463,7 +470,7 @@ const DataGridElement: React.FC<MWProps> = ({ openModal }) => {
|
||||
discount.privileges.forEach( (privilege) => {
|
||||
if( tariff.service == privilege.good ) {
|
||||
if( privilege.discount != 0 ) {
|
||||
tariffPrice = tariffPrice * privilege.discount;
|
||||
tariffPrice = tariffPrice - (tariffPrice * privilege.discount);
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -484,7 +491,7 @@ const DataGridElement: React.FC<MWProps> = ({ openModal }) => {
|
||||
if( selectedPromocode >= 0 && checkboxStates == 1 ) {
|
||||
promocodeArray[ selectedPromocode ].privileges.forEach( (privilege) => {
|
||||
if( item.service == privilege.good ) {
|
||||
price = price * privilege.discount;
|
||||
price = price - (price * privilege.discount);
|
||||
}
|
||||
} )
|
||||
}
|
||||
@ -497,7 +504,36 @@ const DataGridElement: React.FC<MWProps> = ({ openModal }) => {
|
||||
discount.privileges.forEach( (privilege) => {
|
||||
if( item.service == privilege.good ) {
|
||||
if( privilege.discount != 0 ) {
|
||||
price = price * privilege.discount;
|
||||
|
||||
if( fieldAdded.current != null ) { // внесено
|
||||
if( fieldAdded.current.value ) {
|
||||
const f = Number(fieldAdded.current.value);
|
||||
let minDiscount = 0;
|
||||
let minI = -1;
|
||||
|
||||
discountsArray.forEach( (x, ii) => {
|
||||
discount.privileges.forEach( (y) => {
|
||||
if( item.service == y.good ) {
|
||||
if( x.active && f - y.discount * 100 >= minDiscount ) {
|
||||
minDiscount = y.discount;
|
||||
minI = ii;
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
discountsArray[ minI ].privileges.forEach( (y) => {
|
||||
price = price - (price * y.discount);
|
||||
});
|
||||
|
||||
} else {
|
||||
price = price - (price * privilege.discount);
|
||||
}
|
||||
|
||||
} else { // не внесено
|
||||
price = price - (price * privilege.discount);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
|
Loading…
Reference in New Issue
Block a user