Beispiel #1
0
 /// <summary>
 /// Serializa os dados da entrada do estoque.
 /// </summary>
 /// <param name="writer"></param>
 /// <param name="entrada"></param>
 private static void Serializar(System.Xml.XmlWriter writer, IEntradaEstoqueChapa entrada)
 {
     writer.WriteStartAttribute("id");
     writer.WriteValue(entrada.Id);
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("materialCode");
     writer.WriteValue(entrada.CodigoMaterial);
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("position");
     writer.WriteValue(entrada.Posicao);
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("quantity");
     writer.WriteValue(entrada.Quantidade);
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("xDimension");
     writer.WriteValue(entrada.Largura);
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("yDimension");
     writer.WriteValue(entrada.Altura);
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("rack");
     writer.WriteValue(entrada.Cavalete);
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("priority");
     writer.WriteValue(entrada.Prioridade);
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("crosscutType");
     writer.WriteValue(entrada.TipoCorte.ToString());
     writer.WriteEndAttribute();
     writer.WriteStartAttribute("isWaste");
     writer.WriteValue(entrada.Retalho);
     writer.WriteEndAttribute();
 }
Beispiel #2
0
        /// <summary>
        /// Recupera a sessão de otimização associado com o identificador do arquivo de otimização.
        /// </summary>
        /// <param name="idArquivoOtimizacao">Identificador do arquivo base para a sessão de otimização.</param>
        /// <returns>Sessão de otimização associada com o arquivo.</returns>
        public ISessaoOtimizacao ObterSessaoOtimizacao(int idArquivoOtimizacao)
        {
            // Recupera os identificadores dos produtos associado com o arquivo de otimização
            var idsProd = SourceContext.Instance.CreateQuery()
                          .From <Data.Model.EtiquetaArquivoOtimizacao>("eao")
                          .InnerJoin <Data.Model.ProdutosPedidoEspelho>("eao.IdPedido=ppe.IdPedido", "ppe")
                          .InnerJoin <Data.Model.ProdutoPedidoProducao>("ppe.IdProdPed=ppp.IdProdPed AND ppp.NumEtiqueta=eao.NumEtiqueta", "ppp")
                          .SelectDistinct("ppe.IdProd")
                          .Where("IdArquivoOtimiz=?id")
                          .Add("?id", idArquivoOtimizacao)
                          .Execute()
                          .Select(f => f.GetInt32(0))
                          .ToList();

            IEnumerable <IEntradaEstoqueChapa> entradasEstoqueChapa;

            if (Configuracoes.OtimizacaoConfig.TipoEstoqueChapas == Data.Helper.DataSources.TipoEstoqueChapasOtimizacaoEnum.Interno)
            {
                entradasEstoqueChapa = this.ObterEntradasEstoqueChapas(idsProd);
            }
            else
            {
                entradasEstoqueChapa = new IEntradaEstoqueChapa[0];
            }

            var estoque = new EstoqueChapa(this.ObterMateriais(idsProd), entradasEstoqueChapa);

            return(new SessaoOtimizacao(estoque, new IPecaPadrao[0]));
        }