Package ar.com.AmberSoft.iEvenTask.backend.entities

Source Code of ar.com.AmberSoft.iEvenTask.backend.entities.RelationWithActionCreateTask

package ar.com.AmberSoft.iEvenTask.backend.entities;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.Table;

import org.apache.log4j.Logger;

import ar.com.AmberSoft.iEvenTask.events.BackgroundEventDetectProcess;
import ar.com.AmberSoft.iEvenTask.services.CreateTaskService;
import ar.com.AmberSoft.iEvenTask.services.UpdateEntityService;
import ar.com.AmberSoft.util.ParamsConst;
import ar.com.AmberSoft.util.StatusConst;

@Entity
@Table (name="iet_relacion_nueva_tarea")
public class RelationWithActionCreateTask extends Relation {

  private static Logger logger = Logger
  .getLogger(RelationWithActionCreateTask.class);

  private String name;
  private String user;
 
  private Tarea tarea;
 

  @OneToOne
  @JoinColumn(name="id_tarea")
  public Tarea getTarea() {
    return tarea;
  }

  public void setTarea(Tarea tarea) {
    this.tarea = tarea;
  }
 
  @Basic @Column (name="nombre")
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
 
  @Basic @Column (name="id_user")
  public String getUser() {
    return user;
  }
  public void setUser(String user) {
    this.user = user;
  }
  @SuppressWarnings({"rawtypes", "unchecked"})
  @Override
  public void execute() throws Exception {
 
    if ((this.getTarea()==null) || (this.getTarea().getDelete()!=null) ||
        ((!StatusConst.PENDIENTE.equals(this.getTarea().getEstado())) && (!StatusConst.EN_CURSO.equals(this.getTarea().getEstado()))) ){
      Map params = new HashMap();
      params.put(ParamsConst.NOMBRE_TAREA, name);
      params.put(ParamsConst.ID_USUARIO, user);
     
      Set visibles = this.getVisibles();
      if (visibles!=null){
        Collection<String> nuevosVisibles = new ArrayList<String>();
        Iterator<VisibleRelation> it = visibles.iterator();
        while (it.hasNext()) {
          VisibleRelation visibleRelation = (VisibleRelation) it.next();
          nuevosVisibles.add(visibleRelation.getUsuario());
        }
        params.put(ParamsConst.USERS_VIEW, nuevosVisibles);
      }
     
      CreateTaskService service = new CreateTaskService();
      params.put(ParamsConst.ESTADO, StatusConst.PENDIENTE);
      params.put(ParamsConst.GET_ENTITY, Boolean.TRUE);
      Map result = service.execute(params);
      Tarea tarea = (Tarea) result.get(ParamsConst.ENTITY);
      this.setTarea(tarea);

      result.put(ParamsConst.ENTITY, this);
      UpdateEntityService updateEntityService = new UpdateEntityService();
      updateEntityService.execute(result);
    } else {
      logger.info("La tarea anterior (" + this.getTarea().getNombreTarea() + "), aun no se encuentra finalizada o suspendida." );
    }
   
  }
 
 
}
TOP

Related Classes of ar.com.AmberSoft.iEvenTask.backend.entities.RelationWithActionCreateTask

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.