예제 #1
0
 public void delete(Long tagId, boolean deleteLinks) {
   if (tagId != null) {
     Tag tag = tagDao.find(tagId);
     if (tag != null) {
       if (deleteLinks) {
         for (Client client : tag.getClients()) {
           Set<Tag> cltags = client.getTags();
           cltags.remove(tag);
           client.setTags(cltags);
           if (validate(client)) {
             clientDao.update(client);
             addError(client.getNameCompany());
           }
         }
         tagDao.delete(tag);
       } else {
         tag.setDeleteDate(new Date());
       }
     } else {
       addError("Не удалось найти тэг");
     }
   } else {
     addError("Ид тэга не передан");
   }
 }
예제 #2
0
 public void changeName(Long tagId, String newName, Long pkId) {
   if (tagId != null && newName != null && pkId != null) {
     Tag tag = tagDao.find(tagId);
     boolean unique = true;
     boolean deleted = false;
     Tag existingTag = getTagByNameAndPkId(newName, pkId);
     Tag deletedTag = getDeletedTagByNameAndPkId(newName, pkId);
     if (existingTag != null) {
       unique = false;
       ;
       if (deletedTag != null) {
         deleted = true;
       }
     }
     if (unique) {
       if (tag != null) {
         tag.setName(newName);
         if (validate(tag)) {
           tagDao.update(tag);
         }
       } else {
         addError("Не удалось найти тэг");
       }
     } else {
       if (deleted) {
         tagDao.delete(deletedTag);
         tag.setName(newName);
         if (validate(tag)) {
           tagDao.update(tag);
         }
       } else {
         addError("Такой тэг уже есть");
       }
     }
   } else {
     if (tagId == null) {
       addError("Ид тэга не получен");
     }
     if (newName == null) {
       addError("Имя не получено");
     }
     if (pkId == null) {
       addError("Ошибка личного кабинета");
     }
   }
 }