医保电子凭证在项目中的集成应用

2023-12-14 12:12

本文主要是介绍医保电子凭证在项目中的集成应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

随着医保电子凭证使用普及,医疗行业的各个场景都要求支持医保码一码通办,在此分享一下,在C#和js中集成医保电子凭证的demo 供有需要的小伙伴参考。

一、项目效果图

  • 在c#中集成医保电子凭证效果
    在这里插入图片描述
  • 在js中集成医保电子凭证效果

在这里插入图片描述

二、主要代码

  • c#集成医保电子凭证主要代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Windows.Forms;namespace 医保电子凭证sdk
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void btn核验_Click(object sender, EventArgs e){try {               StringBuilder outData = new StringBuilder(4000);string str = "";string inData = "{\"data\":{\"businessType\":\"01101\",\"officeId\":\"32760\",\"officeName\":\"消化内科\",\"operatorId\":\"test001\",\"operatorName\":\"超级管理员\",\"orgId\":\"H34110200888\"},\"orgId\":\"H34110200888\",\"transType\":\"ec.query\"}";string surl = "http://10.66.159.55:8080/localcfc/api/hsecfc/localQrCodeQuery";str = DecodeTip(surl, inData, outData);string rs = str;txt出参.Text = rs;}catch (Exception ex){MessageBox.Show(ex.Message);}}private void Form1_Load(object sender, EventArgs e){}[DllImport("NationECCode.dll")]private static extern string NationEcTrans(string strUrl, string InData, StringBuilder outData);private string DecodeTip(string surl, string inData, StringBuilder outData){try{string str = "";str = NationEcTrans(surl, inData, outData);string rs = outData.ToString();// int i = 10;return rs;}catch (Exception ex){return ex.Message;}}}
}
  • javascript集成医保电子凭证主要代码
 <html><head id="Head1"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><style type="text/css">.form-table{line-height: 40px;}.form-table input{padding: 6px 8px;border-radius: 4px;border: 1px solid #aaa;}textarea{width: 800px;border: 1px solid #ccc;border-radius: 4px;}</style><title>国家电子凭证库测试 </title><script type="text/javascript">var DUmsocx1;var ws;var flag=0;function ToggleConnectionClicked() {          try {/*//检测当前浏览器是否支持websocket模式window.WebSocket = window.WebSocket || window.MozWebSocket;if (!window.WebSocket){alert("WebSocket not supported by this browser");return;}*/ws = new WebSocket("ws://127.0.0.1:8899");//连接服务器	ws.onopen = function(event){alert("已经与服务器建立了连接\r\n当前连接状态:"+this.readyState);flag=1;ws.send(DUmsocx1);//SendData(DUmsocx1);	};ws.onmessage = function(event){//alert("接收到服务器发送的数据:\r\n"+event.data);document.getElementById('respdata').value = event.data;flag=1;};ws.onclose = function(event){alert("已经与服务器断开连接\r\n当前连接状态:"+this.readyState);};ws.onerror = function(event){if (flag!=1)alert("WebSocket接收异常!");};} catch (ex) {alert(ex.message);      }};function SendData(str) {try{ws.send(str);}catch(ex){alert(ex.message);}};function SocektClose() {try{ws.close();}catch(ex){alert(ex.message);}};function seestate(){alert("当前连接状:"+ws.readyState);}function getResult_hs() {var url_val = document.getElementById("input-text-url").value;var aaa = {};aaa.url = url_val;aaa.indata = {"data":{"businessType":"01101","gainWay":"ALL","idNo":"","infoFrom":"","officeId":"32760","officeName":"消化内科","operatorId":"test001","operatorName":"超级管理员","orgId":"35020319001","outBizNo":"202102231332361130F1","userName":""},"orgId":"35020319001","transType":"iot.gain.ec.qrcode"};aaa = JSON.stringify(aaa);document.getElementById('result').value = aaa;};function getResult_jgtz() {var url_val = document.getElementById("input-text-url").value;var aaa = {};aaa.url = url_val;aaa.indata = {"data":{"bizNo":"20210223135202090EFB","bizType":"register","discountFee":"0","ecQrCode":"","medicalFee":"164","medicalSettleNo":"YB20200228","medicalSettleState":"SUCCESS","operatorId":"test001","operatorName":"超级管理员","outBizNo":"20210223135202090EFB","selfFee":"52","totalFee":"216"},"orgId":"35020319001","transType":"iot.medical.settle.notify"};aaa = JSON.stringify(aaa);document.getElementById('result').value = aaa;};function getResult_smd() {var url_val = document.getElementById("input-text-url").value;var aaa = {};aaa.url = url_val;aaa.indata = {"data":{"businessType":"01101","deviceType":"","officeId":"32760","officeName":"消化内科","operatorId":"test001","operatorName":"超级管理员","orgId":"35020319001"},"orgId":"35020319001","transType":"ec.query"};aaa = JSON.stringify(aaa);document.getElementById('result').value = aaa;};function qingqiu(){	document.getElementById('respdata').value = "";DUmsocx1= document.getElementById('result').value;//alert(DUmsocx1);ToggleConnectionClicked();	}function qingqiu1(){	document.getElementById('respdata').value = "";DUmsocx1= document.getElementById('result').value;//alert(DUmsocx1);ws.send(DUmsocx1);}</script></head>		<body onload=""><h1>国家电子凭证库测试程序</h1><div ><p>URL:</p><input id='input-text-url' style="width:500px" type='text' value="https://此处替换成中台地址/localcfc/api/hsecfc/localQrCodeQuery"/></div><div ><p></p><button onclick="getResult_hs();" id="btn_hs"> 核身 </button></div><div ><p></p><button onclick="getResult_jgtz();" id="btn_jgtz"> 结果通知 </button></div><div ><p></p><button onclick="getResult_smd();" id="btn_smd"> 扫码墩 </button></div><div ><p>入参:</p><textarea id='result' style="width:1000px" rows="7"></textarea></div><div ><p>出参:</p><textarea id='respdata' style="width:1000px" rows="7"></textarea></div><table cellpadding="20" cellspacing="0"><td><button onclick="qingqiu();">请求</button></td><td><button onclick="qingqiu1();">请求1</button></td></table></body>
</html>

三、资料下载

医保电子凭证集成demo
链接:https://pan.baidu.com/s/1aUCWSxOJmKhZJRkXUd1Y6A
提取码:lxq0

这篇关于医保电子凭证在项目中的集成应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/492476

相关文章

springboot集成easypoi导出word换行处理过程

《springboot集成easypoi导出word换行处理过程》SpringBoot集成Easypoi导出Word时,换行符n失效显示为空格,解决方法包括生成段落或替换模板中n为回车,同时需确... 目录项目场景问题描述解决方案第一种:生成段落的方式第二种:替换模板的情况,换行符替换成回车总结项目场景s

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat

PostgreSQL简介及实战应用

《PostgreSQL简介及实战应用》PostgreSQL是一种功能强大的开源关系型数据库管理系统,以其稳定性、高性能、扩展性和复杂查询能力在众多项目中得到广泛应用,本文将从基础概念讲起,逐步深入到高... 目录前言1. PostgreSQL基础1.1 PostgreSQL简介1.2 基础语法1.3 数据库