export const transformShowList = (data, currentList): any[] => {
const result: any = [];
try {
let lastCommissionType: any = null;
if (currentList && currentList.length) {
const last = currentList[currentList.length - 1];
lastCommissionType = commissionTypeMap[last?.commissionType];
}
const temp = data.map((item: any) => ({
...item,
commissionTypeText: commissionTypeMap[item?.commissionType],
showSku: item.commissionType === commissionType.SKU_TR_COMMISSION,
cardItem: processCardItem(item),
categoryName: item.categoryName || '不限',
isDeleteRate: commissionChangeType.DELETE === item.changeType,
showIcon: showIconMessage.includes(item.commissionType),
isConfirmed: item.confirmStatus === confirmStatus.confirmed,
}));
temp.forEach((item: any) => {
if (!result.length) {
const isSameWithLast = lastCommissionType === item.commissionTypeText;
if (!item.commissionTypeText || isSameWithLast) {
result.push(item);
} else {
result.push({ ...item, differentRate: true });
}
} else {
if (!item.commissionTypeText || item.commissionTypeText === result[result.length - 1].commissionTypeText) {
result.push(item);
} else {
result.push({ ...item, differentRate: true });
}
}
});
return result;
} catch (error) {
console.error(error);
return result;
}
};