package br.com.ec.domain.dto;
import java.util.ArrayList;
import java.util.List;
import br.com.ec.core.util.VerificadorUtil;
import br.com.ec.domain.model.tipos.TipoEstiloProduto;
public class RankingComprasTransferenciasEstiloDTO
{
private TipoEstiloProduto estilo
;
private Integer quantidadeVendasUnissex =
0;
private Integer quantidadeVendasMasculino =
0;
private Integer quantidadeVendasFeminino =
0;
private Integer quantidadeEstoqueUnissex =
0;
private Integer quantidadeEstoqueMasculino =
0;
private Integer quantidadeEstoqueFeminino =
0;
private Integer quantidadePedidosUnissex =
0;
private Integer quantidadePedidosMasculino =
0;
private Integer quantidadePedidosFeminino =
0;
private Integer quantidadeMinimaComprar
;
private RankingComprasTransferenciasEstiloPorLoja rankingLojaDeSaida
;
private List<RankingComprasTransferenciasEstiloPorLoja
> rankingsPorLoja =
new ArrayList<RankingComprasTransferenciasEstiloPorLoja
>();
public RankingComprasTransferenciasEstiloDTO
() {}
public RankingComprasTransferenciasEstiloDTO
(String estilo,
Long quantidadeVendasUnissex,
Long quantidadeVendasMasculino,
Long quantidadeVendasFeminino,
Long quantidadeEstoqueUnissex,
Long quantidadeEstoqueMasculino,
Long quantidadeEstoqueFeminino,
Long quantidadePedidosUnissex,
Long quantidadePedidosMasculino,
Long quantidadePedidosFeminino
) {
this.
estilo = TipoEstiloProduto.
parse(estilo
);
this.
quantidadeVendasUnissex = retornarInteiro
(quantidadeVendasUnissex
);
this.
quantidadeVendasMasculino = retornarInteiro
(quantidadeVendasMasculino
);
this.
quantidadeVendasFeminino = retornarInteiro
(quantidadeVendasFeminino
);
this.
quantidadeEstoqueUnissex = retornarInteiro
(quantidadeEstoqueUnissex
);
this.
quantidadeEstoqueMasculino = retornarInteiro
(quantidadeEstoqueMasculino
);
this.
quantidadeEstoqueFeminino = retornarInteiro
(quantidadeEstoqueFeminino
);
this.
quantidadePedidosUnissex = retornarInteiro
(quantidadePedidosUnissex
);
this.
quantidadePedidosMasculino = retornarInteiro
(quantidadePedidosMasculino
);
this.
quantidadePedidosFeminino = retornarInteiro
(quantidadePedidosFeminino
);
}
private Integer retornarInteiro
(Long quantidade
) {
if (VerificadorUtil.
naoEstaNulo(quantidade
)) {
return quantidade.
intValue();
}
return 0;
}
public RankingComprasTransferenciasEstiloDTO
(String estilo,
Integer quantidadeVendasUnissex,
Integer quantidadeVendasMasculino,
Integer quantidadeVendasFeminino,
Integer quantidadeEstoqueUnissex,
Integer quantidadeEstoqueMasculino,
Integer quantidadeEstoqueFeminino
) {
super();
this.
estilo = TipoEstiloProduto.
parse(estilo
);
this.
quantidadeVendasUnissex = quantidadeVendasUnissex
;
this.
quantidadeVendasMasculino = quantidadeVendasMasculino
;
this.
quantidadeVendasFeminino = quantidadeVendasFeminino
;
this.
quantidadeEstoqueUnissex = quantidadeEstoqueUnissex
;
this.
quantidadeEstoqueMasculino = quantidadeEstoqueMasculino
;
this.
quantidadeEstoqueFeminino = quantidadeEstoqueFeminino
;
}
public TipoEstiloProduto getEstilo
() {
return estilo
;
}
public void setEstilo
(TipoEstiloProduto estilo
) {
this.
estilo = estilo
;
}
public Integer getQuantidadeVendasUnissex
() {
return quantidadeVendasUnissex
;
}
public void setQuantidadeVendasUnissex
(Integer quantidadeVendasUnissex
) {
this.
quantidadeVendasUnissex = quantidadeVendasUnissex
;
}
public Integer getQuantidadeVendasMasculino
() {
return quantidadeVendasMasculino
;
}
public void setQuantidadeVendasMasculino
(Integer quantidadeVendasMasculino
) {
this.
quantidadeVendasMasculino = quantidadeVendasMasculino
;
}
public Integer getQuantidadeVendasFeminino
() {
return quantidadeVendasFeminino
;
}
public void setQuantidadeVendasFeminino
(Integer quantidadeVendasFeminino
) {
this.
quantidadeVendasFeminino = quantidadeVendasFeminino
;
}
public Integer getQuantidadeVendasGeral
() {
return getQuantidadeVendasUnissex
() + getQuantidadeVendasFeminino
() + getQuantidadeVendasMasculino
();
}
public Integer getQuantidadeEstoqueUnissex
() {
return quantidadeEstoqueUnissex
;
}
public void setQuantidadeEstoqueUnissex
(Integer quantidadeEstoqueUnissex
) {
this.
quantidadeEstoqueUnissex = quantidadeEstoqueUnissex
;
}
public Integer getQuantidadeEstoqueMasculino
() {
return quantidadeEstoqueMasculino
;
}
public void setQuantidadeEstoqueMasculino
(Integer quantidadeEstoqueMasculino
) {
this.
quantidadeEstoqueMasculino = quantidadeEstoqueMasculino
;
}
public Integer getQuantidadeEstoqueFeminino
() {
return quantidadeEstoqueFeminino
;
}
public void setQuantidadeEstoqueFeminino
(Integer quantidadeEstoqueFeminino
) {
this.
quantidadeEstoqueFeminino = quantidadeEstoqueFeminino
;
}
public Integer getQuantidadePedidosUnissex
() {
return quantidadePedidosUnissex
;
}
public void setQuantidadePedidosUnissex
(Integer quantidadePedidosUnissex
) {
this.
quantidadePedidosUnissex = quantidadePedidosUnissex
;
}
public Integer getQuantidadePedidosMasculino
() {
return quantidadePedidosMasculino
;
}
public void setQuantidadePedidosMasculino
(Integer quantidadePedidosMasculino
) {
this.
quantidadePedidosMasculino = quantidadePedidosMasculino
;
}
public Integer getQuantidadePedidosFeminino
() {
return quantidadePedidosFeminino
;
}
public void setQuantidadePedidosFeminino
(Integer quantidadePedidosFeminino
) {
this.
quantidadePedidosFeminino = quantidadePedidosFeminino
;
}
public Integer getQuantidadeMinimaComprar
() {
return quantidadeMinimaComprar
;
}
public void setQuantidadeMinimaComprar
(Integer quantidadeMinimaComprar
) {
this.
quantidadeMinimaComprar = quantidadeMinimaComprar
;
}
/***********************************************/
public Integer getQuantidadeEstoqueGeral
() {
return getQuantidadeEstoqueUnissex
() + getQuantidadeEstoqueFeminino
() + getQuantidadeEstoqueMasculino
();
}
public Integer quantidadeParaComprar
(Integer quantidadeVendas,
Integer quantidadeEstoque
) {
return (getQuantidadeMinimaComprar
() * quantidadeVendas
) - quantidadeEstoque
;
}
public Integer quantidadeParaComprarGeral
() {
return quantidadeParaComprar
(getQuantidadeVendasUnissex
() + getQuantidadeVendasFeminino
() + getQuantidadeVendasMasculino
(),
getQuantidadeEstoqueUnissex
() + getQuantidadeEstoqueFeminino
() + getQuantidadeEstoqueMasculino
());
}
public Integer quantidadeParaTransferir
(Integer quantidadeVendas,
Integer quantidadeEstoque
) {
return (getQuantidadeMinimaComprar
() * quantidadeVendas
) - quantidadeEstoque
;
}
public Integer quantidadeParaTransferirGeral
() {
return quantidadeParaTransferir
(getQuantidadeVendasUnissex
() + getQuantidadeVendasFeminino
() + getQuantidadeVendasMasculino
(),
getQuantidadeEstoqueUnissex
() + getQuantidadeEstoqueFeminino
() + getQuantidadeEstoqueMasculino
());
}
public Integer quantidadePedidosGeral
() {
return getQuantidadePedidosUnissex
() + getQuantidadePedidosFeminino
() + getQuantidadePedidosMasculino
();
}
public RankingComprasTransferenciasEstiloPorLoja getRankingLojaDeSaida
() {
return rankingLojaDeSaida
;
}
public void setRankingLojaDeSaida
(RankingComprasTransferenciasEstiloPorLoja rankingLojaDeSaida
) {
this.
rankingLojaDeSaida = rankingLojaDeSaida
;
}
public List<RankingComprasTransferenciasEstiloPorLoja
> getRankingsPorLoja
() {
return rankingsPorLoja
;
}
public void setRankingsPorLoja
(List<RankingComprasTransferenciasEstiloPorLoja
> rankingsPorLoja
) {
this.
rankingsPorLoja = rankingsPorLoja
;
}
}