protected void btnGuardar_Click(object sender, EventArgs e) { if (IsValid) { try { Documento doc = new Documento(); doc.Activo = true; bool error = false; Cliente cli = Sistema.GetInstancia().BuscarClienteId(Int32.Parse(ddlCliente.SelectedValue)); doc.cliente = cli; doc.Fecha = DateTime.Parse(txtFecha.Text); doc.IdCliente = cli.IdCliente; doc.TipoDocumento = "182"; doc.retenciones = ObtenerRetenciones(); if (!error) { XmlDocument xml = null; xml = GenerarXmlResguardo(doc); String xmlTexto = ""; xmlTexto = AjustarCFE(xml.InnerXml, "eResg"); try { var client = new CfeServiceClient(); var client2 = new ConsultaCfeClient(); client.ClientCredentials.UserName.UserName = "******"; client.ClientCredentials.UserName.Password = Sistema.GetInstancia().Contrasena(Session["rut"].ToString()); client2.ClientCredentials.UserName.UserName = "******"; client2.ClientCredentials.UserName.Password = Sistema.GetInstancia().Contrasena(Session["rut"].ToString()); ReqBody solicitud = new ReqBody(); solicitud.CodComercio = Sistema.GetInstancia().CodComercio(Session["idLocal"].ToString()); solicitud.CodTerminal = Sistema.GetInstancia().CodTerminal(Session["idLocal"].ToString()); solicitud.HMAC = ""; RequerimientoParaUcfe req = new RequerimientoParaUcfe(); req.TipoMensaje = 310; // req.Uuid = "10000222"; req.Uuid = "RES" + Sistema.GetInstancia().ObtenerProximoCodigo(Session["rut"].ToString()).ToString(); req.TipoCfe = doc.TipoDocumento; req.IdReq = "1"; req.FechaReq = doc.Fecha.Year + "" + doc.Fecha.Month + "" + doc.Fecha.Day; req.HoraReq = doc.Fecha.Hour + "" + doc.Fecha.Minute + "" + doc.Fecha.Second; req.CodComercio = Sistema.GetInstancia().CodComercio(Session["idLocal"].ToString()); req.CodTerminal = Sistema.GetInstancia().CodTerminal(Session["idLocal"].ToString()); if (!String.IsNullOrEmpty(txtAdenda.Text)) { req.Adenda = txtAdenda.Text; } req.CfeXmlOTexto = xmlTexto; if (doc.retenciones != null) { String adenda = ""; foreach (RetencionPercepcionResguardos retencion in doc.retenciones) { adenda += retencion.CodigoPercepcionRetencion.NroForm.ToString() + retencion.CodigoPercepcionRetencion.NroLinea.ToString() + " : " + retencion.CodigoPercepcionRetencion.Descripcion; adenda += System.Environment.NewLine; } req.Adenda = adenda; } solicitud.Req = req; solicitud.RequestDate = doc.Fecha.Year + "-" + doc.Fecha.Month + "-" + doc.Fecha.Day + "T" + doc.Fecha.Hour + ":" + doc.Fecha.Minute + ":" + doc.Fecha.Second; solicitud.Tout = 120000; RespBody respuesta = null; if (client.InnerChannel.State != System.ServiceModel.CommunicationState.Faulted) { respuesta = client.Invoke(solicitud); } if (respuesta != null) { if (respuesta.ErrorCode != 0) { string script = @"<script type='text/javascript'> alert('" + "Error: " + respuesta.ErrorMessage + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else { if (respuesta.Resp.CodRta.Equals("00")) { doc.NroSerie = Int32.Parse(respuesta.Resp.NumeroCfe); doc.Serie = respuesta.Resp.Serie; doc.xmlFirmado = respuesta.Resp.XmlCfeFirmado; doc.EstadoDGI = "Procesado"; String msg = Sistema.GetInstancia().GuardarDocumento(doc); try { byte[] pdf = client2.ObtenerPdf("120185850015", Int32.Parse(respuesta.Resp.TipoCfe), respuesta.Resp.Serie, doc.NroSerie); // Sistema.GetInstancia().PDFActual = pdf; Session["pdf"] = pdf; //if (Sistema.GetInstancia().PDFActual != null) //{ // Response.Redirect("VisorPDF.aspx"); //} if (Session["pdf"] != null) { Response.Redirect("VisorPDF.aspx"); } } catch (Exception ex) { } } else if (respuesta.Resp.CodRta.Equals("11")) { doc.NroSerie = Int32.Parse(respuesta.Resp.NumeroCfe); doc.Serie = respuesta.Resp.Serie; doc.xmlFirmado = respuesta.Resp.XmlCfeFirmado; doc.EstadoDGI = "Aceptado"; String msg = Sistema.GetInstancia().GuardarDocumento(doc); try { byte[] pdf = client2.ObtenerPdf("120185850015", Int32.Parse(respuesta.Resp.TipoCfe), respuesta.Resp.Serie, doc.NroSerie); //Sistema.GetInstancia().PDFActual = pdf; Session["pdf"] = pdf; //if (Sistema.GetInstancia().PDFActual != null) //{ // Response.Redirect("VisorPDF.aspx"); //} if (Session["pdf"] != null) { Response.Redirect("VisorPDF.aspx"); } } catch (Exception ex) { } } else if (respuesta.Resp.CodRta.Equals("01")) { string script = @"<script type='text/javascript'> alert('" + "Denegado: " + respuesta.Resp.MensajeRta + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("03")) { string script = @"<script type='text/javascript'> alert('" + "Comercio invalido" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("05")) { string script = @"<script type='text/javascript'> alert('" + "CFE Rechazado por DGI" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("12")) { string script = @"<script type='text/javascript'> alert('" + "Requerimiento invalido" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("30")) { string script = @"<script type='text/javascript'> alert('" + "Error en formato: " + respuesta.Resp.MensajeRta + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("31")) { string script = @"<script type='text/javascript'> alert('" + "Error en formato CFE" + respuesta.Resp.MensajeRta + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("89")) { string script = @"<script type='text/javascript'> alert('" + "Terminal invalida" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("96")) { string script = @"<script type='text/javascript'> alert('" + "Error en sistema" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("99")) { string script = @"<script type='text/javascript'> alert('" + "Sesion no iniciada" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else { string script = @"<script type='text/javascript'> alert('" + "Denegado: " + respuesta.Resp.MensajeRta + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } } } else { string script = @"<script type='text/javascript'> alert('" + "Error de conexión con el punto de emisión" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } } catch (Exception ex) { } //Guardar serie y nro } } catch (Exception ex) { string script = @"<script type='text/javascript'> alert('" + "Error al guardar" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } } }
protected void btnGuardar_Click(object sender, EventArgs e) { try { List <Documento> documentos = Sistema.GetInstancia().ObtenerDocumentosAceptados(Session["rut"].ToString()); if (documentos != null) { var client = new CfeServiceClient(); client.ClientCredentials.UserName.UserName = "******"; client.ClientCredentials.UserName.Password = "******"; foreach (Documento documento in documentos) { ReqBody solicitud = new ReqBody(); solicitud.CodComercio = "UWTEST01"; solicitud.CodTerminal = "UWCAJA01"; solicitud.HMAC = ""; RequerimientoParaUcfe req = new RequerimientoParaUcfe(); req.TipoMensaje = 360; // req.Uuid = "10000222"; req.TipoCfe = documento.TipoDocumento; req.Serie = documento.Serie; req.NumeroCfe = documento.NroSerie.ToString(); req.IdReq = "1"; req.FechaReq = documento.Fecha.Year + "" + documento.Fecha.Month + "" + documento.Fecha.Day; req.HoraReq = documento.Fecha.Hour + "" + documento.Fecha.Minute + "" + documento.Fecha.Second; req.CodComercio = "UWTEST01"; req.CodTerminal = "UWCAJA01"; solicitud.Req = req; solicitud.RequestDate = documento.Fecha.Year + "-" + documento.Fecha.Month + "-" + documento.Fecha.Day + "T" + documento.Fecha.Hour + ":" + documento.Fecha.Minute + ":" + documento.Fecha.Second; solicitud.Tout = 120000; RespBody respuesta = null; if (client.InnerChannel.State != System.ServiceModel.CommunicationState.Faulted) { respuesta = client.Invoke(solicitud); } if (respuesta != null) { if (respuesta.ErrorCode != 0) { string script = @"<script type='text/javascript'> alert('" + "Error: " + respuesta.ErrorMessage + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else { if (respuesta.Resp.CodRta.Equals("00")) { Sistema.GetInstancia().ModificarEstado(documento.IdDocumento, "Procesado", null); } else if (respuesta.Resp.CodRta.Equals("11")) { } else if (respuesta.Resp.CodRta.Equals("01") || respuesta.Resp.CodRta.Equals("05")) { Sistema.GetInstancia().ModificarEstado(documento.IdDocumento, "Anulado", respuesta.Resp.MensajeRta); } else if (respuesta.Resp.CodRta.Equals("03")) { string script = @"<script type='text/javascript'> alert('" + "Comercio invalido" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("30")) { string script = @"<script type='text/javascript'> alert('" + "Error en formato" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("31")) { string script = @"<script type='text/javascript'> alert('" + "Error en formato CFE" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("89")) { string script = @"<script type='text/javascript'> alert('" + "Terminal invalida" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else if (respuesta.Resp.CodRta.Equals("96")) { string script = @"<script type='text/javascript'> alert('" + "Error en sistema" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else { string script = @"<script type='text/javascript'> alert('" + "Denegado: " + respuesta.Resp.MensajeRta + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } } } else { string script = @"<script type='text/javascript'> alert('" + "Error de conexión con el punto de emisión" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } } } string script2 = @"<script type='text/javascript'> alert('" + "Los estados se actualizaron correctamente" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script2, false); } catch { string script3 = @"<script type='text/javascript'> alert('" + "Error al actualizar los estados" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script3, false); } }
protected void btnGuardar_Click(object sender, EventArgs e) { try { foreach (GridViewRow row in gridViewDocumentos.Rows) { var chkBox = row.FindControl("ckActivo") as CheckBox; IDataItemContainer container = (IDataItemContainer)chkBox.NamingContainer; if (chkBox.Checked) { PersistRowIndex(container.DataItemIndex); } else { RemoveRowIndex(container.DataItemIndex); } } List <Documento> documentos = DocumentosAsociados(); if (documentos == null || documentos.Count == 0 || documentos.Count > 1) { string script = @"<script type='text/javascript'> alert('" + "Debe seleccionar un Documento" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else { Documento documento = documentos.ElementAt(0); var client = new CfeServiceClient(); client.ClientCredentials.UserName.UserName = "******"; client.ClientCredentials.UserName.Password = "******"; ReqBody solicitud = new ReqBody(); solicitud.CodComercio = "UWTEST01"; solicitud.CodTerminal = "UWCAJA01"; solicitud.HMAC = ""; RequerimientoParaUcfe req = new RequerimientoParaUcfe(); req.TipoMensaje = 320; // req.Uuid = "10000222"; req.TipoCfe = documento.TipoDocumento; req.Serie = documento.Serie; req.NumeroCfe = documento.NroSerie.ToString(); req.IdReq = "1"; req.FechaReq = documento.Fecha.Year + "" + documento.Fecha.Month + "" + documento.Fecha.Day; req.HoraReq = documento.Fecha.Hour + "" + documento.Fecha.Minute + "" + documento.Fecha.Second; req.CodComercio = "UWTEST01"; req.CodTerminal = "UWCAJA01"; solicitud.Req = req; solicitud.RequestDate = documento.Fecha.Year + "-" + documento.Fecha.Month + "-" + documento.Fecha.Day + "T" + documento.Fecha.Hour + ":" + documento.Fecha.Minute + ":" + documento.Fecha.Second; solicitud.Tout = 120000; RespBody respuesta = null; if (client.InnerChannel.State != System.ServiceModel.CommunicationState.Faulted) { respuesta = client.Invoke(solicitud); } if (respuesta != null) { if (respuesta.ErrorCode != 0) { string script = @"<script type='text/javascript'> alert('" + "Error: " + respuesta.ErrorMessage + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } else { if (respuesta.Resp.CodRta.Equals("00")) { Sistema.GetInstancia().AnularDocumento(documento.IdDocumento); string script = @"<script type='text/javascript'> alert('" + "El documento se anulo correctamente" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); limpiarSeleccion(); } else { string script = @"<script type='text/javascript'> alert('" + respuesta.Resp.MensajeRta + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } } } else { string script = @"<script type='text/javascript'> alert('" + "Error de conexión con el punto de emisión" + "');</script>"; ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false); } } } catch { } }
public void ProcessRequest(HttpContext context) { string name = context.Request["name"]; string idCard = context.Request["id_card"]; if (string.IsNullOrEmpty(name) || string.IsNullOrEmpty(idCard)) { apiResp.msg = "姓名和身份证为必填信息"; apiResp.code = (int)BLLJIMP.Enums.APIErrCode.IsNotFound; bllUser.ContextResponse(context, apiResp); return; } UserExpand userExpand = bllUserExpand.GetUserExpand(BLLJIMP.Enums.UserExpandType.StudentStatus, idCard); if (userExpand != null) { RespBody body = new RespBody(); body.STUDYSTYLE = userExpand.Ex1; body.EDUCATIONDEGREE = userExpand.Ex2; body.GRADUATETIME = userExpand.Ex3; body.STUDYRESULT = userExpand.Ex4; body.GRADUATE = userExpand.Ex5; body.SPECIALITYNAME = userExpand.Ex6; body.ENROLDATE = userExpand.Ex7; bllUserExpand.ContextResponse(context, body); return; } Request model = new Request(); model.header = new Header(); model.body = new Body(); model.header.version = "1.0"; model.header.product = "B1001093"; model.header.merchant = "201512179102"; model.header.outOrderId = Math.Ceiling(bllUser.GetTimeStamp(DateTime.Now)).ToString(); model.body.realName = name; model.body.cardId = idCard; var sign1 = new { body = model.body, header = model.header }; string singStr = ZentCloud.Common.JSONHelper.ObjectToJson(sign1); string key = "sFpCmChE9VLpVcSrefDh"; string sign = Payment.Alipay.AlipayMD5.Sign(singStr, key, "utf-8").ToLower(); var postData = new { request = model, sign = sign }; string strPostdata = ZentCloud.Common.JSONHelper.ObjectToJson(postData); string sResult = string.Empty; string sError = string.Empty; string sResponseStatusCode = string.Empty; string sResponseStatusDescription = string.Empty; HttpWebResponse oHttpWebResponse = null; HttpWebRequest oHttpWebRequest = null; Stream oStream = null; StreamReader oStreamReader = null; byte[] bytes = Encoding.UTF8.GetBytes(strPostdata); try { oHttpWebRequest = (HttpWebRequest)WebRequest.Create("https://api.udcredit.com/api/credit/v1/education_checkinfo"); oHttpWebRequest.Method = "POST"; oHttpWebRequest.ContentType = "application/json"; oHttpWebRequest.ContentLength = bytes.Length; oHttpWebRequest.Timeout = 1000 * 50; oStream = oHttpWebRequest.GetRequestStream(); oStream.Write(bytes, 0, bytes.Length); oStream.Close(); oHttpWebResponse = (HttpWebResponse)oHttpWebRequest.GetResponse(); oStreamReader = new StreamReader(oHttpWebResponse.GetResponseStream()); sResponseStatusCode = oHttpWebResponse.StatusCode.ToString(); sResponseStatusDescription = oHttpWebResponse.StatusDescription; sResult = oStreamReader.ReadToEnd(); ResponseModel resultModel = ZentCloud.Common.JSONHelper.JsonToModel <ResponseModel>(sResult); if (resultModel.response.header.retCode == "0000") { bllUserExpand.AddUserExpand(BLLJIMP.Enums.UserExpandType.StudentStatus, idCard, name, resultModel.response.body.STUDYSTYLE, resultModel.response.body.EDUCATIONDEGREE, resultModel.response.body.GRADUATETIME, resultModel.response.body.STUDYRESULT, resultModel.response.body.GRADUATE, resultModel.response.body.SPECIALITYNAME, resultModel.response.body.ENROLDATE ); bllUser.ContextResponse(context, resultModel.response.body); } else { apiResp.status = false; apiResp.msg = resultModel.response.header.retMsg; bllUser.ContextResponse(context, apiResp); } } catch (Exception ex) { apiResp.msg = ex.ToString(); apiResp.code = (int)BLLJIMP.Enums.APIErrCode.OperateFail; bllUser.ContextResponse(context, apiResp); } finally { oStream = null; } }