Esempio n. 1
0
        /// <summary>
        /// Apaga os dados do produto.
        /// </summary>
        /// <param name="session"></param>
        /// <returns></returns>
        public override Colosoft.Business.DeleteResult Delete(Colosoft.Data.IPersistenceSession session)
        {
            var validador = Microsoft.Practices.ServiceLocation.ServiceLocator
                            .Current.GetInstance <IValidadorProduto>();

            var resultadoValidacao = validador.ValidaExistencia(this);

            if (resultadoValidacao.Length > 0)
            {
                return(new Colosoft.Business.DeleteResult(false, resultadoValidacao.Join(" ")));
            }

            // Apaga os produtos/loja
            session.Delete <Data.Model.ProdutoLoja>(Colosoft.Query.ConditionalContainer
                                                    .Parse("IdProd=?idProd").Add("?idProd", this.IdProd));

            return(base.Delete(session));
        }
Esempio n. 2
0
        public override Colosoft.Business.DeleteResult Delete(Colosoft.Data.IPersistenceSession session)
        {
            var validador = Microsoft.Practices.ServiceLocation.ServiceLocator
                            .Current.GetInstance <IValidadorClassificacaoRoteiroProducao>();

            var resultadoValidacao = validador.ValidaExistencia(this);

            if (resultadoValidacao.Length > 0)
            {
                return(new Colosoft.Business.DeleteResult(false, resultadoValidacao.Join(" ")));
            }

            var deleteResult = OnDeleting();

            if (!deleteResult)
            {
                return(deleteResult);
            }

            foreach (var r in Roteiros)
            {
                r.IdClassificacaoRoteiroProducao = 0;
                var saveResult = r.Save(session);
                if (!saveResult)
                {
                    return(new Colosoft.Business.DeleteResult(false, saveResult.Message));
                }
            }

            session.Delete(DataModel, (action, result) =>
            {
                if (result.Success)
                {
                    Roteiros.Clear();
                    OnDeleted(true, null);
                }
                else
                {
                    OnDeleted(false, result.FailureMessage.GetFormatter());
                }
            });

            return(new Colosoft.Business.DeleteResult(true, null));
        }
Esempio n. 3
0
        /// <summary>
        /// Apaga os dados da instancia.
        /// </summary>
        /// <param name="session"></param>
        /// <returns></returns>
        public override Colosoft.Business.DeleteResult Delete(Colosoft.Data.IPersistenceSession session)
        {
            var validador = Microsoft.Practices.ServiceLocation.ServiceLocator
                            .Current.GetInstance <IValidadorParcelas>();

            var resultadoValidacao = validador.ValidaExistencia(this);

            if (resultadoValidacao.Length > 0)
            {
                return(new Colosoft.Business.DeleteResult(false, resultadoValidacao.Join(" ")));
            }

            // Apaga as parcelas não usar associadas
            session.Delete <Glass.Data.Model.ParcelasNaoUsar>(
                Colosoft.Query.ConditionalContainer
                .Parse("IdParcela=?idParcela")
                .Add("?idParcela", IdParcela));

            return(base.Delete(session));
        }