public override OrdemServico InitDto(IReader reader, OrdemServico dto) { base.InitDto(reader, dto); // Sobreescreve a geração default para estes campos: dto.DescricaoArmacao = MockReader.GenerateParagraph(); dto.ObservacaoArmacao = MockReader.GenerateParagraph(); dto.Ta = MockReader.GenerateDecimal(-9999.999m, 9999.999m, "###0.000"); dto.Md = MockReader.GenerateDecimal(-9999.999m, 9999.999m, "###0.000"); dto.Diametro = MockReader.GenerateDecimal(-9999.999m, 9999.999m, "###0.000"); dto.ObservacaoLente = MockReader.GenerateParagraph(); dto.Dp = MockReader.GenerateDecimal(-99.9m, 99.9m, "#0.0"); dto.Aa = MockReader.GenerateDecimal(-9999.999m, 9999.999m, "###0.000"); dto.Eixo = MockReader.GenerateDecimal(0, 180, "##0"); dto.Ponte = MockReader.GenerateDecimal(-9999.999m, 9999.999m, "###0.000"); return dto; }
public ActionResult NovaOs(ComprasNovaOs viewModel) { var os = new OrdemServico { CodCliente = GetCodCliente(), Observacao = viewModel.ObservacaoGeral, Referencia = viewModel.Referencia, DescricaoArmacao = viewModel.Armacao, ObservacaoArmacao = viewModel.ObservacaoArmacao, CodMaterial = viewModel.MaterialArmacao, TipoVt = 1, Ta = viewModel.Ta, Md = viewModel.Md, Diametro = viewModel.Diametro, ObservacaoLente = string.Empty, Dp = viewModel.Dp, Aa = viewModel.Aa, Eixo = viewModel.Eixo, Ponte = viewModel.Ponte }; var lenteOd = new OrdemServicoLente { TipoLente = TipoLente.OlhoDireito, CodFamilia = viewModel.FamiliaOd, Descricao = viewModel.DescricaoLenteOd, LongeEsf = viewModel.EsfLongeOd, LongeCil = viewModel.CilLongeOd, LongeEixo = viewModel.EixoLongeOd, Adicao = viewModel.AdicaoOd, PertoEsf = viewModel.EsfPertoOd, PertoCil = viewModel.CilPertoOd, PertoEixo = viewModel.EixoPertoOd, Dnp = viewModel.DnpOd, Alt = viewModel.AltOd }; var lenteOe = new OrdemServicoLente { TipoLente = TipoLente.OlhoEsquerdo, CodFamilia = viewModel.FamiliaOe, Descricao = viewModel.DescricaoLenteOe, LongeEsf = viewModel.EsfLongeOe, LongeCil = viewModel.CilLongeOe, LongeEixo = viewModel.EixoLongeOe, Adicao = viewModel.AdicaoOe, PertoEsf = viewModel.EsfPertoOe, PertoCil = viewModel.CilPertoOe, PertoEixo = viewModel.EixoPertoOe, Dnp = viewModel.DnpOe, Alt = viewModel.AltOe }; // Determina a quantidade dos serviços a partir das famílias selecionadas: var quantidade = lenteOd.CodFamilia == lenteOe.CodFamilia? 2 : 1; var itens = new ItemTransacao[viewModel.Servicos.Length]; for (var i = 0; i < itens.Length; i++) { var servico = new ItemTransacao { CodItem = viewModel.Servicos[i], Quantidade = quantidade }; itens[i] = servico; } os.LenteOd = lenteOd; os.LenteOe = lenteOe; os.Itens = itens; try { os = ProdutoSC.InsertOrdemServico(os); } catch (FaultException<DatawebFault> ex) { ModelState.AddModelError("ordemServicoMsg", ex.Detail.Message); } if (ModelState.IsValid) { return RedirectToAction("NovaOsSucesso", new {id = os.Numero}); } return View(); }
private string GetDescricaoMaterial(OrdemServico os) { var materiais = ProdutoSC.FindAllMaterial(); var material = materiais.First(m => m.CodMaterial == os.CodMaterial); return material == null? null : material.Descricao; }