Untitled
unknown
plain_text
10 months ago
3.8 kB
3
Indexable
const updateParameters = (values = []) => {
const valuesMap = Array.isArray(values)
? values.reduce((acc, { name, value }) => {
acc[name[0]] = value || ""
return acc
}, {})
: {}
const NCC_ID = valuesMap["NCC_ID"] || ""
const Nam_SX = valuesMap["Nam_SX"] || ""
const Nuoc_SX = valuesMap["Nuoc_SX"] || ""
const Nhan_Hieu = valuesMap["Nhan_Hieu"] || ""
const Nguon_Goc_TS = valuesMap["Nguon_Goc_TS"] || ""
const Ly_Do_Tang = valuesMap["Ly_Do_Tang"] || ""
const Muc_Dich_Giao = valuesMap["Muc_Dich_Giao"] || ""
const Hien_Trang_SD = valuesMap["Hien_Trang_SD"] || ""
const Hien_Trang_SD_Nha_Dat = valuesMap["Hien_Trang_SD_Nha_Dat"] || ""
const Loai_TS = valuesMap["Loai_TS"] || ""
const Truong_ID = valuesMap["Truong_ID"] || ""
const Ngay_Filter = valuesMap["Ngay_Filter"] || []
const keyword = valuesMap["keyword"] || ""
const Bien_Kiem_Soat = valuesMap["Bien_Kiem_Soat"] || ""
const So_May = valuesMap["So_May"] || ""
const So_Khung = valuesMap["So_Khung"] || ""
const So_Cho_Ngoi = valuesMap["So_Cho_Ngoi"] || ""
const Tai_Trong = valuesMap["Tai_Trong"] || ""
const formatAddress = {
Tinh_Thanh: getIncludes(valuesMap, "Tinh_Thanh"),
Quan_Huyen: getIncludes(valuesMap, "Quan_Huyen"),
Phuong_Xa: getIncludes(valuesMap, "Phuong_Xa"),
}
const fields = ["Nguon_NS", "Quy", "Nguon_Khac", "Nguon_Vien_Tro", "Nguon_Du_An", "Tong"]
const initialValues = fields.reduce((acc, field) => {
acc[field] = valuesMap[field] || ""
acc[`${field}_select`] = valuesMap[`${field}_select`] || ""
return acc
}, {})
const formattedParamsNumber = fields.reduce((acc, field) => {
const value = initialValues[field]
const selectValue = initialValues[`${field}_select`]
acc[field] = value ? (selectValue ? formatSelect(selectValue, field) : formatRadio(value, field)) : ""
return acc
}, {})
const formattedGiaTri = fields.reduce((acc, field) => {
acc[`${field}_Tu`] = formattedParamsNumber[field]?.[`${field}_Tu`] || ""
acc[`${field}_Den`] = formattedParamsNumber[field]?.[`${field}_Den`] || ""
return acc
}, {})
const formattedParams = {
Nam_SX: formatDate(Nam_SX),
Nguon_Goc_TS: formatArray(Nguon_Goc_TS),
Ly_Do_Tang: formatArray(Ly_Do_Tang),
Muc_Dich_Giao: formatArray(Muc_Dich_Giao),
Hien_Trang_SD: formatArray(Hien_Trang_SD),
Hien_Trang_SD_Nha_Dat: formatArray(Hien_Trang_SD_Nha_Dat),
Nhan_Hieu: formatArray(Nhan_Hieu),
Nuoc_SX: formatArray(Nuoc_SX),
NCC_ID: formatArray(NCC_ID),
Loai_TS: formatArray(Loai_TS.value),
}
const [Ngay_HD_From, Ngay_HD_To] = Ngay_Filter ? Ngay_Filter.map((date) => formatDate(date)) : ["", ""]
const newParams = {
...parameters,
...formattedParams,
...formattedGiaTri,
...formatAddress,
keyword,
Bien_Kiem_Soat,
So_May,
So_Khung,
So_Cho_Ngoi,
Tai_Trong,
Truong_ID,
Ngay_HD_From,
Ngay_HD_To,
}
const debounceValue = keyword || Bien_Kiem_Soat || So_May || So_Khung || So_Cho_Ngoi || Tai_Trong || Tai_Trong
if (debounceValue) {
debounceSearch(newParams, setParameters)
} else {
setParameters({ ...newParams })
}
}
Editor is loading...
Leave a Comment