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

news2024/11/24 7:32:30

随着医保电子凭证使用普及,医疗行业的各个场景都要求支持医保码一码通办,在此分享一下,在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.coloradmin.cn/o/1306878.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【干货分享】KingIOServer与三菱PLC的通讯的应用案例

哈喽&#xff0c;大家好&#xff0c;我是雷工&#xff01; 最近一个项目涉及用KingIOServer采集三菱PLC数据&#xff0c;特记录通讯过程方便备忘。 一、版本说明&#xff1a; 1、KingIOServer版本&#xff1a;3.7SP2 2、PLC型号&#xff1a;Q03UDV 和Q03UDE自带以太网网口。…

阿里云国际跨境直播解决方案,视频AI创新营销模式丰富直播场景

据第三方咨询公司iiMedia Research预测&#xff0c;2017-2020年&#xff0c;视频直播行业一直处于高速发展阶段。2020年&#xff0c;视频直播行业市场收入超1万亿元&#xff0c;累计覆盖用户5.26亿。 视频直播的应用范围已从视频娱乐、电子商务等泛互联网行业扩展到在线教育、…

docker安装rabbitmq并安装死信队列插件

环境 debian11 docker 20.10.22 rabbitmq 3.10.0 拉取镜像到本地 docker pull rabbitmq3.10.0 实例化 docker run -d --name rabbit -e RABBITMQ_DEFAULT_USERadmin -e RABBITMQ_DEFAULT_PASSadmin -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:…

如何利用淘宝商品详情关键词搜索电商API接口,实现个人收藏的梦想?

随着互联网的快速发展&#xff0c;电子商务市场越来越繁荣&#xff0c;个人收藏爱好者面临着越来越多的商品选择。如何能够高效地找到自己心仪的商品成为了让这一群体头疼的问题。而淘宝商品详情关键词搜索电商API接口的出现&#xff0c;联讯数据为个人实现收藏梦想提供了全新的…

ISP去噪(1)

#灵感# 因为理解的2DNR、3DNR 和当前调试平台标注的2DNR、3DNR 作用有很大差异&#xff0c;所以在网上广撒网&#xff0c;搜集知识。 目前收集出来一个这样的文章&#xff0c;有点像大学生的论文“取其精华&#xff0c;合成糟粕”。------权当一个记录册 目录 运动阈值&…

创建第一个Vue2项目-----HelloWorld

创建第一个Vue项目 第一步先去安装Vue&#xff0c;一共有两种安装方式&#xff0c;这里使用 点击这里下载&#xff1a;Vue.js 添加到自己的项目中 在使用的页面引入<script src"../js/vue.js"></script> 2. 准备好一个容器 <div id"root&qu…

迪拜义乌中国小商品城,开启中东区域展贸新商机

迪拜义乌中国小商品城&#xff0c;一颗璀璨的批发市场新星&#xff0c;正在迪拜杰贝阿里自贸区内冉冉升起。      在全球格局巨变的背景下&#xff0c;阿联酋与欧美货币深度绑定&#xff0c;同时又积极加入金砖国家集团&#xff0c;与发展中国家的经济不断融合。而作为国际…

微信小程序---wxs脚本

WXS&#xff08;WeiXin Script&#xff09;是小程序的一套脚本语言&#xff0c;结合 WXML&#xff0c;可以构建出页面的结构。 WXS 与 JavaScript 是不同的语言&#xff0c;有自己的语法&#xff0c;并不和 JavaScript 一致。 1.wxs和JavaScript的区别 2.wxs脚本基础语法 &a…

uniapp+vite+ts+express踩坑总结

1 关于引入express包报 import express from "express"; ^^^^^^ SyntaxError: Cannot use import statement outside a module的问题。 解决方案&#xff1a; 在package.json中添加type&#xff1a;“module”选项 2 Response is a type and must be imported …

崩坏:星穹铁道【V1.5攻略】五星(金)-遗器主、副词条成长数值参考

星穹铁道中五星遗器词条成长数值攻略&#xff1a; 温馨提示&#xff1a;以下数据会可能会出现一点一点误差&#xff0c;见谅... --------------------------- 一、如图&#xff1a; ----->>细节补充<<----- ①实际数值可能与游戏中不一&#xff0c;若数据出现无法忽…

【BigDecimal类—常用API系列】解决java浮点计算精度损失问题

文章目录 Java浮点计算精度损失问题BigDecimal进行精确运算的解决方案 Java浮点计算精度损失问题 BigDecimal它是干什么用的呢&#xff1f;什么是java浮点计算精度损失问题&#xff1f;我们先看一段代码&#xff0c;看这个代码有什么问题&#xff1f;再说BigDeimal这个类是干什…

Leetcode—113.路径总和II【中等】

2023每日刷题&#xff08;五十七&#xff09; Leetcode—113.路径总和II 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* …

Javac编译原理

文章目录 1. Javac是什么2. Javac编译器的基本结构3. Javac工作原理分析 1. Javac是什么 Javac是一种编译器&#xff0c;能将一种语言规范转成另一种语言规范&#xff0c;javac编译器将Java编译器对所有机器都非常友好的一种语言。注意这种语言不是针对某个机器的&#xff0c;…

leetcode对称二叉树(每日一题)

https://leetcode.cn/problems/symmetric-tree/description/ 今天我们在来个题目&#xff0c;对称二叉树&#xff0c;其实这道题的思路我觉得和那到判断两棵树是不是相同的题目很相似&#xff0c;写这个题目的思路还是递归&#xff0c;但是我们看这个题目的时候需要注意的一个…

智能优化算法应用:基于猫群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于猫群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于猫群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.猫群算法4.实验参数设定5.算法结果6.参考文献7.MA…

python-爬取壁纸

代理池的&#xff0c;防止IP 被封 找到图片真实地址 现在看到的只是图片的预览地址 (previews) 1.检查&#xff1a; 2.鼠标变为箭头时查看网页源代码 关于怎样在源代码中找到图片的真实地址 ??? 为什么在源代码界面 ctrl f 时候搜索的是 .png ??? 首先图片地址是以 .j…

死锁(面试常问)

1.什么是死锁 简单来说就是一个线程加锁后解锁不了 一个线程&#xff0c;一把锁&#xff0c;线程连续加锁两次。如果这个锁是不可重入锁&#xff0c;会死锁。两个线程&#xff0c;两把锁。 举几个例子&#xff0c;1.钥匙锁车里了&#xff0c;车钥匙锁家里了。2. 现在有一本书…

MySQL低版本中:字符串中的数字、英文字符、汉字提取

我们如何提醒一个字段中的汉字和数字呢 高版本指mysql8.0以上 使用sql语句 SELECT REGEXP_REPLACE(column_name, [^\\p{Han}], ) AS chinese_characters FROM table_name;其中 column_name指名称列&#xff0c;table_name是表名 2.低版本使用 需要新建函数 DELIMITER $$DR…

phpstudy搭建WordPress教程

一、phpstudy新建配置WordPress 打开phpstudy&#xff0c;启动Apache&#xff08;或者Nginx&#xff09;和MySQL服务 来到数据库部分&#xff0c;点击[创建数据库]&#xff0c;填写新建数据库的名称&#xff0c;用户名以及密码&#xff0c;完成后点击确认 来到网站部分&#x…