Exemplo n.º 1
0
        public async Task <Response> PostNewClient(ClientesModel clienteModel)
        {
            Response response = new Response();

            try
            {
                if (!ModelState.IsValid || clienteModel == null)
                {
                    return(response);
                }
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        var lastClient = db.clientes.OrderByDescending(x => x.idtercero).FirstOrDefault();
                        db.clientes.Add(new API.Models.cliente
                        {
                            tipodoc   = clienteModel.TypeDoc,
                            id        = clienteModel.Id,
                            primname  = clienteModel.FirstName.ToUpper(),
                            segname   = clienteModel.SecondName.ToUpper(),
                            primapel  = clienteModel.FirstLastName.ToUpper(),
                            segapel   = clienteModel.SecondLastName.ToUpper(),
                            name      = clienteModel.NameComplete.ToUpper(),
                            idtercero = lastClient.idtercero + 1,
                            Gustos    = clienteModel.Gustos
                        });
                        clienteModel.IdTercero = (lastClient.idtercero + 1) ?? 0;
                        db.SaveChanges();
                        dbContextTransaction.Commit();
                        response.IsSuccess = true;
                        response.Message   = "Agregado correctamente";
                        response.Result    = clienteModel.IdTercero;
                    }
                    catch (Exception ex)
                    {
                        dbContextTransaction.Rollback();
                        response.Message = ex.ToString();
                        return(response);
                    }
                }
                return(response);
            }
            catch (Exception ex)
            {
                response.Message = ex.ToString();
                return(response);
            }
        }
        public async Task <Response> PostEvidences(ObservableCollection <EvidenciasModel> evidenciasModel)
        {
            Response response = new Response();

            try
            {
                if (!ModelState.IsValid || evidenciasModel == null)
                {
                    return(response);
                }
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        string codeTipoEvid = "DOCUMENTO";
                        string codeCarpeta  = "Soporte";
                        foreach (var item in evidenciasModel)
                        {
                            List <evidencia> lsTemp = db.evidencias.Where(x => x.idIdentifica == item.idTercero).ToList();
                            if (lsTemp.Count == 0)
                            {
                                db.evidencias.Add(new API.Models.evidencia
                                {
                                    id           = Guid.NewGuid(),
                                    codeTipoEvid = codeTipoEvid,
                                    codeCarpeta  = codeCarpeta,
                                    idSerialNum  = 1,
                                    idIdentifica = item.idTercero,
                                    evidencia1   = item.evidencia1,
                                    descripcion  = item.descripcion ?? "",
                                    fileName     = item.fileName + "_" + 1 + ".jpg" ?? "",
                                    fecha        = DateTime.Now,
                                    usuario      = item.usuario ?? ""
                                });
                                //db.SaveChanges();
                                //dbContextTransaction.Commit();
                            }
                            else
                            {
                                evidencia evidence = lsTemp.Last();
                                db.evidencias.Add(new API.Models.evidencia
                                {
                                    id           = Guid.NewGuid(),
                                    codeTipoEvid = codeTipoEvid,
                                    codeCarpeta  = codeCarpeta,
                                    idSerialNum  = evidence.idSerialNum + 1,
                                    idIdentifica = item.idTercero,
                                    evidencia1   = item.evidencia1,
                                    descripcion  = item.descripcion ?? "",
                                    fileName     = item.fileName + "_" + (evidence.idSerialNum + 1) + ".jpg" ?? "",
                                    fecha        = DateTime.Now,
                                    usuario      = item.usuario ?? ""
                                });
                            }
                        }
                        db.SaveChanges();
                        dbContextTransaction.Commit();
                        //evidenciasModel.codeTipoEvid = "DOCUMENTO";
                        //evidenciasModel.codeCarpeta = "Soporte";
                        //List<evidencia> lsTemp = db.evidencias.Where(x => x.idIdentifica == evidenciasModel.idTercero).ToList();
                        //if (lsTemp.Count == 0)
                        //{
                        //    db.evidencias.Add(new API.Models.evidencia
                        //    {
                        //        id = Guid.NewGuid(),
                        //        codeTipoEvid = evidenciasModel.codeTipoEvid,
                        //        codeCarpeta = evidenciasModel.codeCarpeta,
                        //        idSerialNum = 1,
                        //        idIdentifica = evidenciasModel.idTercero,
                        //        evidencia1 = evidenciasModel.evidencia1,
                        //        descripcion = evidenciasModel.descripcion ?? "",
                        //        fileName = evidenciasModel.fileName + "_" + 1 + ".jpg" ?? "",
                        //        fecha = DateTime.Now,
                        //        usuario = evidenciasModel.usuario ?? ""
                        //    });
                        //    db.SaveChanges();
                        //    dbContextTransaction.Commit();
                        //    response.IsSuccess = true;
                        //    response.Message = "Agregado correctamente";
                        //}
                        //else
                        //{
                        //    evidencia evidence = lsTemp.Last();
                        //        db.evidencias.Add(new API.Models.evidencia
                        //        {
                        //            id = Guid.NewGuid(),
                        //            codeTipoEvid = evidenciasModel.codeTipoEvid,
                        //            codeCarpeta = evidenciasModel.codeCarpeta,
                        //            idSerialNum = evidence.idSerialNum + 1,
                        //            idIdentifica = evidenciasModel.idTercero,
                        //            evidencia1 = evidenciasModel.evidencia1,
                        //            descripcion = evidenciasModel.descripcion ?? "",
                        //            fileName = evidenciasModel.fileName + "_" + (evidence.idSerialNum + 1) + ".jpg" ?? "",
                        //            fecha = DateTime.Now,
                        //            usuario = evidenciasModel.usuario ?? ""
                        //        });
                        //        db.SaveChanges();
                        //        dbContextTransaction.Commit();
                        //        response.IsSuccess = true;
                        //        response.Message = "Agregado correctamente";
                        //}

                        response.IsSuccess = true;
                        response.Message   = "Agregado correctamente";
                    }
                    catch (Exception ex)
                    {
                        dbContextTransaction.Rollback();
                        response.Message = ex.ToString();
                        return(response);
                    }
                }

                return(response);
            }
            catch (Exception ex)
            {
                response.Message = ex.ToString();
                return(response);
            }
        }