示例#1
0
        public static FormularioDomain FormularioDomainToFormularioModelView(FormularioModelView formularioModelView)
        {
            var formularioDomain = new FormularioDomain();

            if (formularioModelView != null)
            {
                formularioDomain.IdFormulario         = formularioModelView.IdFormulario;
                formularioDomain.NomeFormulario       = formularioModelView.NomeFormulario;
                formularioDomain.DescricaoFormulario  = formularioModelView.DescricaoFormulario;
                formularioDomain.DataVencimentoInicio = Convert.ToDateTime(formularioModelView.DataVencimentoInicio, System.Globalization.CultureInfo.GetCultureInfo("pt-BR").DateTimeFormat);
                formularioDomain.DataVencimentoFim    = Convert.ToDateTime(formularioModelView.DataVencimentoFim, System.Globalization.CultureInfo.GetCultureInfo("pt-BR").DateTimeFormat);

                if (formularioModelView.FormularioCampos != null && formularioModelView.FormularioCampos.Count > 0)
                {
                    FormularioCampoDomain formularioCampoDomain = null;
                    formularioDomain.FormularioCampoes = new List <FormularioCampoDomain>();

                    foreach (var formularioCampo in formularioModelView.FormularioCampos)
                    {
                        formularioCampoDomain                  = new FormularioCampoDomain();
                        formularioCampoDomain.IdTipoCampo      = formularioCampo.IdTipoCampo;
                        formularioCampoDomain.IdTipoValorCampo = formularioCampo.IdTipoValorCampo;
                        formularioCampoDomain.DescricaoCampo   = formularioCampo.DescricaoCampo;

                        formularioCampoDomain.TipoValorCampo = new TipoValorCampoDomain {
                            IdTipoValorCampo = formularioCampo.IdTipoValorCampo
                        };
                        formularioCampoDomain.TipoCampo = new TipoCampoDomain {
                            IdTipoCampo = formularioCampo.IdTipoCampo
                        };

                        formularioDomain.FormularioCampoes.Add(formularioCampoDomain);

                        if (formularioCampo.ValorCampos != null && formularioCampo.ValorCampos.Count > 0)
                        {
                            formularioCampoDomain.ValorCampoes = new List <ValorCampoDomain>();

                            foreach (var valorCampos in formularioCampo.ValorCampos)
                            {
                                formularioCampoDomain.ValorCampoes.Add(new ValorCampoDomain()
                                {
                                    ValorCampo        = valorCampos.ValorCampo,
                                    IdFormularioCampo = valorCampos.IdFormulario,
                                    IdValorCampo      = valorCampos.IdValorCampo
                                });
                            }
                        }
                    }
                }
            }

            return(formularioDomain);
        }
        public void Insert(FormularioModelView t)
        {
            using (TransactionScope scope = new TransactionScope())
            {
                var formularioDomain = FormularioMapper.FormularioDomainToFormularioModelView(t);

                var _forma = new FormularioDomain()
                {
                    DataVencimentoFim    = formularioDomain.DataVencimentoFim,
                    DataVencimentoInicio = formularioDomain.DataVencimentoInicio,
                    DescricaoFormulario  = formularioDomain.DescricaoFormulario,
                    NomeFormulario       = formularioDomain.NomeFormulario
                };

                _db.FormularioRepositorio.Insert(_forma);
                _db.Commit();

                var idFormulario = _forma.IdFormulario;

                foreach (var formularioCampo in formularioDomain.FormularioCampoes)
                {
                    var _formularioCampo = new FormularioCampoDomain
                    {
                        IdFormulario     = idFormulario,
                        IdTipoCampo      = formularioCampo.IdTipoCampo,
                        IdTipoValorCampo = formularioCampo.IdTipoValorCampo,
                        DescricaoCampo   = formularioCampo.DescricaoCampo
                    };

                    _db.FormularioCampoRepositorio.Insert(_formularioCampo);
                    _db.Commit();

                    var idFormularioCampo = _formularioCampo.IdFormularioCampo;

                    foreach (var valorCampo in formularioCampo.ValorCampoes)
                    {
                        var _valorCampo = new ValorCampoDomain
                        {
                            IdFormularioCampo = idFormularioCampo,
                            ValorCampo        = valorCampo.ValorCampo
                        };

                        _db.ValorCampoRepositorio.Insert(_valorCampo);
                    }
                    _db.Commit();
                }

                scope.Complete();
            }
        }
示例#3
0
        public static FormularioDomain FormularioDomainToFormularioModelView(FormularioModelView formularioModelView)
        {
            var formularioDomain = new FormularioDomain();

            if (formularioDomain != null)
            {
                formularioDomain.IdFormulario         = formularioModelView.IdFormulario;
                formularioDomain.NomeFormulario       = formularioModelView.NomeFormulario;
                formularioDomain.DescricaoFormulario  = formularioModelView.DescricaoFormulario;
                formularioDomain.DataVencimentoInicio = formularioModelView.DataVencimentoInicio;
                formularioDomain.DataVencimentoFim    = formularioModelView.DataVencimentoFim;

                if (formularioModelView.FormularioCampos != null && formularioModelView.FormularioCampos.Count > 0)
                {
                    FormularioCampoDomain formularioCampoDomain = null;
                    formularioDomain.FormularioCampos = new List <FormularioCampoDomain>();

                    foreach (var formularioCampo in formularioModelView.FormularioCampos)
                    {
                        formularioCampoDomain = new FormularioCampoDomain();
                        formularioCampoDomain.TipoValorCampo = new TipoValorCampoDomain {
                            IdTipoValorCampo = formularioCampo.IdTipovalorCampo
                        };
                        formularioCampoDomain.TipoCampo = new TipoCampoDomain {
                            IdTipoCampo = formularioCampo.IdTipoCampo
                        };

                        if (formularioCampo.ValoresCombobox != null && formularioCampo.ValoresCombobox.Count > 0 && formularioCampo.IdTipovalorCampo == 1)// DropDownList / Combobox
                        {
                            formularioCampoDomain.ValoresCombobox = formularioCampo.ValoresCombobox;
                        }
                        else
                        {
                            formularioCampoDomain.ValorCampo = formularioCampo.ValorCampo;
                        }

                        formularioDomain.FormularioCampos.Add(formularioCampoDomain);
                    }
                }
            }

            return(formularioDomain);
        }
示例#4
0
        public int Insert(FormularioCampoDomain t)
        {
            using (var db = GetConnection())
            {
                DynamicParameters p = new DynamicParameters();

                p.AddDynamicParams(
                    new
                {
                    IdTipoCampo      = t.TipoCampo.IdTipoCampo,
                    IdTipoValorCampo = t.TipoValorCampo.IdTipoValorCampo,
                    IdFormulario     = t.FormularioDomain.IdFormulario,
                    DescricaoCampo   = t.FormularioDomain.DescricaoFormulario
                });

                int resultado = db.Execute("sp_formulario_campo_Inserir", p, commandType: CommandType.StoredProcedure);

                return(0);
            }
        }
示例#5
0
 public void Update(FormularioCampoDomain t)
 {
     throw new NotImplementedException();
 }
        public async Task <FormularioDomain> GetById(int id)
        {
            FormularioDomain formualrio;

            using (var db = GetConnection())
            {
                try
                {
                    DynamicParameters p = new DynamicParameters();

                    p.AddDynamicParams(new
                    {
                        idFormulario = id
                    });

                    formualrio = new FormularioDomain();

                    Func <FormularioDomain, FormularioCampoDomain, TipoCampoDomain, TipoValorCampoDomain, ValorCampoDomain, FormularioDomain> mapper = ((f, fc, tc, tvc, vc) =>
                    {
                        if (vc == null)
                        {
                            vc = new ValorCampoDomain();
                        }



                        if (fc == null)
                        {
                            fc = new FormularioCampoDomain();
                        }

                        //fc.Add(tc);
                        //fc.TipoValorCampo = tvc;

                        //if (fc.ValorCampos == null || fc.ValorCampos.Count == 0)
                        //{
                        //    fc.ValorCampos = new List<ValorCampoDomain>();
                        //}
                        //fc.ValorCampos.Add(vc);

                        if (f.FormularioCampos == null || f.FormularioCampos.Count == 0)
                        {
                            f.FormularioCampos = new List <FormularioCampoDomain>();
                        }
                        f.FormularioCampos.Add(fc);

                        return(f);
                    });

                    var query = db.Query <FormularioDomain, FormularioCampoDomain, TipoCampoDomain, TipoValorCampoDomain, ValorCampoDomain, FormularioDomain>
                                    ("sp_get_formulario_by_id", mapper, param: p, commandType: CommandType.StoredProcedure, splitOn: "DescricaoCampo,NomeTipoCampo,NomeTipoValorCampo,ValorCampo");

                    formualrio = query.FirstOrDefault();
                }
                catch (Exception ex)
                {
                    throw;
                }
            }
            return(formualrio);
        }