Pair<DirectoryServiceItem, DirectoryReceptionTypeItem> pair = serRecTypeList.get(rowIndex);
switch (columnIndex) {
case COL_INCONTRACT: {
//Добавить или удалить услугу из договора
if ((Boolean)value) {
ServisePriceData contractServiceData = contract.getContractService(pair);
if (contractServiceData == null) {
contractServiceData = new ServisePriceData(pair);
contract.getContractServiceList().append(contractServiceData);
}
} else {
contract.removeService(pair);//! о как надо
}
break;
}
case COL_PRICE: {
//Назначить другую цену услуги
ServisePriceData contractServiceData = contract.getContractService(pair);
try {
Number v = NumberFormat.getInstance().parse(value.toString());
contractServiceData.setPrice((int) (v.floatValue()*100));
} catch (ParseException ex) {
contractServiceData.setPrice(-1);
System.out.println("Неправильный формат числа, используем -1");
}
break;
}
case COL_MONEY: {
//Назначить другую оплату по договору услуги
ServisePriceData contractServiceData = contract.getContractService(pair);
try {
Number v = NumberFormat.getInstance().parse(value.toString());
contractServiceData.setMoney((int) (v.floatValue()*100));
} catch (ParseException ex) {
contractServiceData.setMoney(-1);
System.out.println("Неправильный формат числа, используем -1");
}
break;
}
default: throw new IllegalArgumentException("Некорректный номер столбца : " + columnIndex);