checkCommandAccessibility(COMMAND_WRITE);
HashMap<String, MkbItem> nameMap = new HashMap<String, MkbItem>();
for (MkbItem mkbItem : newlist) {
mkbItem.setMKB10Item(null);
if (nameMap.containsKey(mkbItem.getMkbCode())) {
throw new ClipsServerException("Попытка загрузить два элемента с одним кодом MKB! (" + mkbItem.getMkbCode() + ")");
}
nameMap.put(mkbItem.getMkbCode(), mkbItem);
}
@SuppressWarnings("unchecked")
/**Все мкб итемы*/
List<Mkb10> items = findEntityList(Mkb10.class, new Field[0]);
/**Мап код - сущность*/
HashMap<String, Mkb10> hashItems = new HashMap<String, Mkb10>();
ArrayList<Mkb10> change = new ArrayList<Mkb10>(items.size());
//идем по всем существующим итемам, заполняем мап, выявляем новые и выявляем измененные
for (Mkb10 mkb10 : items) {
//Добавляем в хэш, заодно проверка вдруг есть двойные
if (hashItems.containsKey(mkb10.getCode())) {
throw new ClipsServerException("В базе существуют два элемента с одним кодом MKB! (" + mkb10.getCode() + ")");
}
hashItems.put(mkb10.getCode(),mkb10);
MkbItem item = nameMap.remove(mkb10.getCode());
if (item == null) {
String s = mkb10.getCode();