Code:
public interface NecesidadCompraDAO {
String SELECT_BY_PK="SELECT CDNECESIDADCOMPRA, NMCEDULARESPONSABLE, CDESTADONECESIDAD, FEANULACIONAPROBACION," +
"FECREACION, FEMODIFICACION, DSOBSERVACION, CDUSUARIOANULAAPRUEBA, CDUSUARIOCREACION, CDUSUARIOMODIFICACION, DSOBSERVACIONANULACION " +
"FROM COM_NECESIDADESCOMPRAS WHERE CDNECESIDADCOMPRA=#{consecutivo}";
String SELECTE_ALL_NECESIDADCOMPRA="SELECT CDNECESIDADCOMPRA, NMCEDULARESPONSABLE, CDESTADONECESIDAD, FEANULACIONAPROBACION," +
"FECREACION, FEMODIFICACION, DSOBSERVACION, CDUSUARIOANULAAPRUEBA, CDUSUARIOCREACION, CDUSUARIOMODIFICACION, DSOBSERVACIONANULACION " +
"FROM COM_NECESIDADESCOMPRAS ORDER BY ${orderBy} LIMIT ${start} , ${length}";
String SAVE_NECESIDADCOMPRA="INSERT INTO COM_NECESIDADESCOMPRAS(NMCEDULARESPONSABLE, CDESTADONECESIDAD, FEANULACIONAPROBACION," +
"FECREACION, FEMODIFICACION, DSOBSERVACION, CDUSUARIOANULAAPRUEBA, CDUSUARIOCREACION, CDUSUARIOMODIFICACION) " +
"VALUES (#{responsable.username},#{estado.codigo},#{fechaAnulacionAprobacion},#{fechaCreacion}," +
"#{fechaModificacion},#{observacion},#{usuarioAnulacionAprobacion.username},#{usuarioCreacion.username},#{usuarioModificacion.username})";
String UPDATE_NECESIDADCOMPRA="UPDATE COM_NECESIDADESCOMPRAS SET NMCEDULARESPONSABLE=#{responsable.username}, " +
"CDESTADONECESIDAD = #{estado.codigo}, FEMODIFICACION=#{fechaModificacion}, DSOBSERVACION=#{observacion}, " +
"CDUSUARIOMODIFICACION=#{usuarioModificacion.username}, DSOBSERVACIONANULACION=#{observacionAnulacionAprobacion} " +
"WHERE CDNECESIDADCOMPRA=#{consecutivo}";
String UPDATE_ESTADONECESIDADCOMPRA="UPDATE COM_NECESIDADESCOMPRAS SET CDESTADONECESIDAD = #{estado.codigo}, FEANULACIONAPROBACION=#{fechaAnulacionAprobacion}, " +
"CDUSUARIOANULAAPRUEBA=#{usuarioAnulacionAprobacion.username}, DSOBSERVACIONANULACION=#{observacionAnulacionAprobacion} " +
"WHERE CDNECESIDADCOMPRA=#{consecutivo}";
String DELETE_NECESIDADCOMPRA="DELETE FROM COM_NECESIDADESCOMPRAS WHERE #{consecutivo}";
String COUNT_ALL_NECESIDADCOMPRA="SELECT COUNT(*) FROM COM_NECESIDADESCOMPRAS";
@Select(SELECT_BY_PK)
@Results(value = {
@Result(property = "consecutivo", column = "CDNECESIDADCOMPRA"),
@Result(property = "responsable.username", column = "NMCEDULARESPONSABLE"),
@Result(property = "estado", column = "CDESTADONECESIDAD"),
@Result(property = "fechaAnulacionAprobacion", column = "FEANULACIONAPROBACION"),
@Result(property = "fechaCreacion", column = "FECREACION"),
@Result(property = "fechaModificacion", column = "FEMODIFICACION"),
@Result(property = "observacion", column = "DSOBSERVACION"),
@Result(property = "usuarioAnulacionAprobacion.username", column = "CDUSUARIOANULAAPRUEBA"),
@Result(property = "usuarioCreacion.username", column = "CDUSUARIOCREACION"),
@Result(property = "usuarioModificacion.username", column = "CDUSUARIOMODIFICACION"),
@Result(property = "observacionAnulacionAprobacion", column = "DSOBSERVACIONANULACION"),
})
public NecesidadCompra findByNecesidadCompra(Integer consecutivo);
@Insert(SAVE_NECESIDADCOMPRA)
@Options(useGeneratedKeys = true, keyProperty = "consecutivo", flushCache=true)
public int saveNecesidadCompra(NecesidadCompra necesidadCompra);
@Update(UPDATE_NECESIDADCOMPRA)
@Options(flushCache=true)
public int updateNecesidadCompra(NecesidadCompra necesidadCompra);
@Update(UPDATE_ESTADONECESIDADCOMPRA)
@Options(flushCache=true)
public int updateEstadoNecesidadCompra(NecesidadCompra necesidadCompra);
@Delete(DELETE_NECESIDADCOMPRA)
@Options(flushCache=true)
public int deleteNecesidadCompra(Integer consecutivo);
@Select(SELECTE_ALL_NECESIDADCOMPRA)
@Results(value = {
@Result(property = "consecutivo", column = "CDNECESIDADCOMPRA"),
@Result(property = "responsable.username", column = "NMCEDULARESPONSABLE"),
@Result(property = "estado", column = "CDESTADONECESIDAD"),
@Result(property = "fechaAnulacionAprobacion", column = "FEANULACIONAPROBACION"),
@Result(property = "fechaCreacion", column = "FECREACION"),
@Result(property = "fechaModificacion", column = "FEMODIFICACION"),
@Result(property = "observacion", column = "DSOBSERVACION"),
@Result(property = "usuarioAnulacionAprobacion.username", column = "CDUSUARIOANULAAPRUEBA"),
@Result(property = "usuarioCreacion.username", column = "CDUSUARIOCREACION"),
@Result(property = "usuarioModificacion.username", column = "CDUSUARIOMODIFICACION"),
@Result(property = "observacionAnulacionAprobacion", column = "DSOBSERVACIONANULACION"),
@Result(property = "responsable", column = "NMCEDULARESPONSABLE", javaType=Usuario.class,
one=@One(select="com.sf.crmycompras.persistence.seguridad.UsuarioDAO.findByUsuario"))
})
public List<NecesidadCompra> getAllNecesidadCompra(NecesidadCompra necesidadCompra);
@Select(COUNT_ALL_NECESIDADCOMPRA)
public Integer getCountNecesidadCompra();
@Results(value = {
@Result(property = "consecutivo", column = "CDNECESIDADCOMPRA"),
@Result(property = "responsable.username", column = "NMCEDULARESPONSABLE"),
@Result(property = "estado", column = "CDESTADONECESIDAD"),
@Result(property = "fechaAnulacionAprobacion", column = "FEANULACIONAPROBACION"),
@Result(property = "fechaCreacion", column = "FECREACION"),
@Result(property = "fechaModificacion", column = "FEMODIFICACION"),
@Result(property = "observacion", column = "DSOBSERVACION"),
@Result(property = "usuarioAnulacionAprobacion.username", column = "CDUSUARIOANULAAPRUEBA"),
@Result(property = "usuarioCreacion.username", column = "CDUSUARIOCREACION"),
@Result(property = "usuarioModificacion.username", column = "CDUSUARIOMODIFICACION"),
@Result(property = "observacionAnulacionAprobacion", column = "DSOBSERVACIONANULACION"),
})
@SelectProvider(method="selectByParameters", type=SqlBuilderNecesidadCompra.class)
public List<NecesidadCompra> findByFilters();
}
************************************************** *************