using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
namespace 医惠平台
{
public class QueueMsg
{
#region MyRegion
#endregion
public static bool 上传平台(SFYXXKSB sfy, string guid, int v)
{
try
{
if(!上传报告(sfy, guid, 0)) //!false
{
return false;
}
if (!更新报告状态(sfy))//!false
{
return false;
}
return true;
}
catch
{
return false;
}
}
/// <summary>
/// 根据住院号获取基本信息
/// </summary>
/// <param name="inPatientNO"></param>
/// <returns></returns>
public static OraRecordsViewModel GetInPatient(string inPatientNO)
{
//创建 QueueTools 类的新实例:
MQDLL.QueueTools mqSdk = new MQDLL.QueueTools();
//连接到指定配置节点的队列管理器
int ret = mqSdk.connect("QMGR.S20_1");
if (ret == 1)
{
string message = File.ReadAllText("BS10003.txt")
.Replace("{{DateTimeNow}}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
.Replace("{{HOSP_NO}}", inPatientNO)
.Replace("{{HOSP_TYPE}}", "INHOSP_NO");
string messageId = string.Empty;
ret = mqSdk.putMsg("BS10003", "0", message, ref messageId);
message = string.Empty;
messageId = string.Empty;
ret = mqSdk.getMsg("BS10003", "1", 10000, ref messageId, ref message);
mqSdk.disconnect();
dynamic as1 = message.AsSimpleXml();
string msg = as1.MsgInfo.Msg;
//dynamic msgBody = msg.AsSimpleXml().body;
OraRecordsViewModel oraRecordsViewModel = new OraRecordsViewModel();
try
{
oraRecordsViewModel.MedicalNo = msg.AsSimpleXml().body.row.VISIT_CARD_NO; //就诊卡号
oraRecordsViewModel.IDCard = msg.AsSimpleXml().body.row.ID_NUMBER; //身份证号
oraRecordsViewModel.Name = msg.AsSimpleXml().body.row.PAT_NAME; //姓名
oraRecordsViewModel.Age = AgeUtil.Pare_2(msg.AsSimpleXml().body.row.DATE_BIRTH); //年龄
oraRecordsViewModel.Sex = msg.AsSimpleXml().body.row.PHYSI_SEX_NAME; //性别
oraRecordsViewModel.Information = msg.AsSimpleXml().body.row.PHONE_NO; //联系信息
oraRecordsViewModel.SendDept = msg.AsSimpleXml().body.row.CURR_DEPT_NAME; //送检科室
oraRecordsViewModel.InPatientId2 = msg.AsSimpleXml().body.row.INHOSP_NO; //住院号
//oraRecordsViewModel.OutPatientId = msg.AsSimpleXml().body.row.CURR_DEPT_NAME; //门诊号
oraRecordsViewModel.BedId = msg.AsSimpleXml().body.row.ADMIT_BED_NAME; //床号
oraRecordsViewModel.MainDoc = msg.AsSimpleXml().body.row.ATTEND_DR_NAME; //送检医生、主治医生
oraRecordsViewModel.Disease = msg.AsSimpleXml().body.row.CURR_WARD_NAME; //病区
oraRecordsViewModel.YbkNo = msg.AsSimpleXml().body.row.MEDICARE_CARD_NO; //医保卡号
oraRecordsViewModel.Marry = msg.AsSimpleXml().body.row.MARITAL_STATUS_NAME; //婚姻状况
}
catch
{
}
return oraRecordsViewModel;
}
return null;
}
/// <summary>
/// 根据门诊号获取基本信息
/// </summary>
/// <param name="inPatientNO"></param>
/// <returns></returns>
public static OraRecordsViewModel GetOutPatient(string outPatientNO)
{
//创建 QueueTools 类的新实例:
MQDLL.QueueTools mqSdk = new MQDLL.QueueTools();
//连接到指定配置节点的队列管理器
int ret = mqSdk.connect("QMGR.S20_1");
if (ret == 1)
{
string message = File.ReadAllText("BS10002.txt")
.Replace("{{DateTimeNow}}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
.Replace("{{HOSP_NO}}", outPatientNO)
.Replace("{{HOSP_TYPE}}", "VISIT_CARD_NO");
string messageId = string.Empty;
ret = mqSdk.putMsg("BS10002", "0", message, ref messageId);
//MessageBox.Show(message);
message = string.Empty;
messageId = string.Empty;
ret = mqSdk.getMsg("BS10002", "1", 10000, ref messageId, ref message);
mqSdk.disconnect();
//MessageBox.Show(message);
dynamic as1 = message.AsSimpleXml();
string msg = as1.MsgInfo.Msg;
OraRecordsViewModel oraRecordsViewModel = new OraRecordsViewModel();
try
{
oraRecordsViewModel.MedicalNo = msg.AsSimpleXml().body.row.VISIT_CARD_NO; //就诊卡号
oraRecordsViewModel.IDCard = msg.AsSimpleXml().body.row.ID_NUMBER; //身份证号
oraRecordsViewModel.Name = msg.AsSimpleXml().body.row.PAT_NAME; //姓名
oraRecordsViewModel.Age = AgeUtil.Pare_2(msg.AsSimpleXml().body.row.DATE_BIRTH); //年龄
oraRecordsViewModel.Sex = msg.AsSimpleXml().body.row.PHYSI_SEX_NAME; //性别
oraRecordsViewModel.Information = msg.AsSimpleXml().body.row.PHONE_NO; //联系信息
oraRecordsViewModel.SendDept = msg.AsSimpleXml().body.row.CURR_DEPT_NAME; //送检科室
oraRecordsViewModel.InPatientId2 = msg.AsSimpleXml().body.row.INHOSP_NO; //住院号
//oraRecordsViewModel.OutPatientId = msg.AsSimpleXml().body.row.CURR_DEPT_NAME; //门诊号
oraRecordsViewModel.BedId = msg.AsSimpleXml().body.row.ADMIT_BED_NAME; //床号
oraRecordsViewModel.MainDoc = msg.AsSimpleXml().body.row.ATTEND_DR_NAME; //送检医生、主治医生
oraRecordsViewModel.Disease = msg.AsSimpleXml().body.row.CURR_WARD_NAME; //病区
oraRecordsViewModel.YbkNo = msg.AsSimpleXml().body.row.MEDICARE_CARD_NO; //医保卡号
oraRecordsViewModel.Marry = msg.AsSimpleXml().body.row.MARITAL_STATUS_NAME; //婚姻状况
}
catch
{
}
return oraRecordsViewModel;
}
return null;
}
/// <param name="sFYXXKSB"></param>
/// <param name="reportPath">报告路径</param>
/// <param name="type">类型:0常规/TCT/HPV;1冰冻;2补充</param>
public static bool 上传报告(SFYXXKSB sFYXXKSB, string reportPath = null, int type = 0)
{
//开始上传日志
//ILog log = LogManager.GetLogger(typeof(QueueMsg));
//log.Info(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "上传报告,病理号【" + sFYXXKSB.CurrentCaseViewModel.CaseNO + "】");
#region Photograph图像/报告网络地址
SampleService sampleService = IOContainer.GetContainer().Resolve<SampleService>();
List<PhotographViewModel> photos = sampleService.GetPhotos(sFYXXKSB.CurrentCaseViewModel.Id);
string emagepath = "";
if (photos != null && photos.Count > 0)
{
for (int i = 0; i < photos.Count; i++)
{
if (i != 0)
{
emagepath += "<EXAM_IMAGE_PATH>";
}
emagepath += "ftp://192.168.100.114:21/" + photos[i].PhotoUrl;
if (i != photos.Count - 1)
{
emagepath += "</EXAM_IMAGE_PATH>";
}
}
}
#endregion
//创建 QueueTools 类的新实例:
MQDLL.QueueTools mqSdk = new MQDLL.QueueTools();
//连接到指定配置节点的队列管理器
int ret = mqSdk.connect("QMGR.P20_1");
if (ret == 1)
{
//连接上传平台成功进行构造、发送消息
#region 构造消息
//报告路径
string ReportPath = "";
//原报告路径
string OldReportPath = "";
//检查结果
string EXAM_RESULT = "";
//报告名称
string REPORT_NAME = "";
//诊断医生编码
string DIAG_DR_CODE = "";
//诊断医生名称
string DIAG_DR_NAME = "";
//报告医生编号
string REPORT_DR_CODE = "";
//报告医生名称
string REPORT_DR_NAME = "";
//申请单号
string ELECTR_REQUISITION_NO = "";
//报告时间
string ReportDate = DateTime.Now.ToString("yyyyMMddHHmmss");
switch (type)
{
case 0:
ReportDate = sFYXXKSB.CurrentCaseViewModel.ReportDate.HasValue ? sFYXXKSB.CurrentCaseViewModel.ReportDate.Value.ToString("yyyyMMddHHmmss") : DateTime.Now.ToString("yyyyMMddHHmmss");
ReportPath = reportPath;
OldReportPath = sFYXXKSB.CurrentCaseViewModel.ReportPath;
DIAG_DR_CODE = sFYXXKSB.CurrentCaseViewModel.Doctor1Id == null ? "" : sFYXXKSB.CurrentCaseViewModel.Doctor1Id.ToString();
DIAG_DR_NAME = sFYXXKSB.CurrentCaseViewModel.Doctor1Name;
REPORT_NAME = "病理诊断报告";
REPORT_DR_CODE = sFYXXKSB.CurrentCaseViewModel.Doctor2Id == null ? DIAG_DR_CODE : sFYXXKSB.CurrentCaseViewModel.Doctor2Id.ToString();
REPORT_DR_NAME = string.IsNullOrEmpty(sFYXXKSB.CurrentCaseViewModel.Doctor2Name) ? DIAG_DR_NAME : sFYXXKSB.CurrentCaseViewModel.Doctor2Name;
EXAM_RESULT = sFYXXKSB.CurrentCaseViewModel.Diagnosis;
break;
case 1:
ReportDate = sFYXXKSB.IceReportViewModel.ReportDateTime.ToString("yyyyMMddHHmmss");
ReportPath = reportPath;
OldReportPath = sFYXXKSB.IceReportViewModel.ReportPath;
DIAG_DR_CODE = sFYXXKSB.IceReportViewModel.ReportUser_Id == null ? "" : sFYXXKSB.IceReportViewModel.ReportUser_Id.ToString();
DIAG_DR_NAME = sFYXXKSB.IceReportViewModel.ReportUserName;
REPORT_NAME = "快速冰冻病理诊断报告";
REPORT_DR_CODE = sFYXXKSB.IceReportViewModel.CheckUser_Id == null ? DIAG_DR_CODE : sFYXXKSB.IceReportViewModel.CheckUser_Id.ToString();
REPORT_DR_NAME = string.IsNullOrEmpty(sFYXXKSB.IceReportViewModel.CheckUserName) ? DIAG_DR_NAME : sFYXXKSB.IceReportViewModel.CheckUserName;
EXAM_RESULT = sFYXXKSB.IceReportViewModel.DiagnosticResult;
break;
case 2:
ReportDate = sFYXXKSB.ReviseReportViewModel.ReportTime.ToString("yyyyMMddHHmmss");
ReportPath = reportPath;
OldReportPath = sFYXXKSB.ReviseReportViewModel.ReportPath;
DIAG_DR_CODE = sFYXXKSB.ReviseReportViewModel.ReportDoc.ToString();
DIAG_DR_NAME = sFYXXKSB.ReviseReportViewModel.ReportDocUserName;
REPORT_NAME = "病理诊断补充报告";
REPORT_DR_CODE = sFYXXKSB.ReviseReportViewModel.AuditDoc == 0 ? DIAG_DR_CODE : sFYXXKSB.ReviseReportViewModel.AuditDoc.ToString();
REPORT_DR_NAME = string.IsNullOrEmpty(sFYXXKSB.ReviseReportViewModel.AuditDocUserName) ? DIAG_DR_NAME : sFYXXKSB.ReviseReportViewModel.AuditDocUserName;
EXAM_RESULT = sFYXXKSB.ReviseReportViewModel.Content;
break;
}
if (sFYXXKSB.CurrentCaseViewModel.PatientCategory != ApplyType.HPV && sFYXXKSB.CurrentCaseViewModel.PatientCategory != ApplyType.TCT)
{
ELECTR_REQUISITION_NO = sFYXXKSB.ELECTR_REQUISITION_NO + "_" + type;
}
else
{
ELECTR_REQUISITION_NO = sFYXXKSB.ELECTR_REQUISITION_NO;
}
// XML字符串消息
string message = "";
//判断是新增还是更新
if (OldReportPath == ReportPath || string.IsNullOrEmpty(OldReportPath))
{
message = File.ReadAllText("PS25109.txt");
}
else
{
message = File.ReadAllText("PS25110.txt");
}
#region message变量赋值
message = string.Format(message
, sFYXXKSB.PAT_INDEX_NO //1
, sFYXXKSB.PAT_NAME //2
, sFYXXKSB.PATIENT_ID //3
, sFYXXKSB.PHYSI_SEX_CODE //4
, sFYXXKSB.PHYSI_SEX_NAME //5
, sFYXXKSB.DATE_BIRTH //6
, sFYXXKSB.AGE //7
, sFYXXKSB.ETHNIC_CODE //8
, sFYXXKSB.ETHNIC_NAME //9
, sFYXXKSB.MARITAL_STATUS_CODE //10
, sFYXXKSB.MARITAL_STATUS_NAME //11
, sFYXXKSB.INHOSP_NO
, sFYXXKSB.OUTHOSP_NO
, sFYXXKSB.INHOSP_NUM
, sFYXXKSB.MR_NO
, sFYXXKSB.CurrentCaseViewModel.CaseNO //sFYXXKSB.ANAMNESIS_NO //病理号
, sFYXXKSB.VISIT_CARD_NO
, ELECTR_REQUISITION_NO
, sFYXXKSB.ORDER_NO
, sFYXXKSB.ORDER_GROUP_NO
, sFYXXKSB.CurrentCaseViewModel.CaseNO //sFYXXKSB.REPORT_NO 报告单编号
, REPORT_NAME //sFYXXKSB.REPORT_NAME 报告名称
, "" //sFYXXKSB.SAMPLE_NO 样本编号
, sFYXXKSB.PAT_TYPE_CODE
, sFYXXKSB.PAT_TYPE_NAME
, sFYXXKSB.ID_NUMBER
, sFYXXKSB.EXAM_PAT_RESOURCE_CODE
, sFYXXKSB.EXAM_PAT_RESOURCE_NAME
, sFYXXKSB.APPLY_DATE
, sFYXXKSB.EXECUT_DATE
, sFYXXKSB.SAMPLING_DATE
, "" //sFYXXKSB.SAMPLING_STAFF 取材记录者
, sFYXXKSB.CLINIC_SYMPTOM //sFYXXKSB.CLINIC_DIAG_CODE 临床诊断代码
, sFYXXKSB.CLINIC_SYMPTOM // sFYXXKSB.CLINIC_DIAG_NAME 临床诊断名称
, sFYXXKSB.DIAG_DATE
, DIAG_DR_CODE // sFYXXKSB.DIAG_DR_CODE //诊断医生工号
, DIAG_DR_NAME // sFYXXKSB.DIAG_DR_NAME //诊断医生姓名
, sFYXXKSB.PROOF_DR_CODE
, sFYXXKSB.PROOF_DR_NAME
, "" // sFYXXKSB.FROZEN_DIAG //冰冻诊断
, "" // sFYXXKSB.FROZEN_DIAG_DR //冰冻诊断医生
, "" // sFYXXKSB.SEND_TEST_DEPT //送检科室
, sFYXXKSB.SEND_TEST_UNIT
, sFYXXKSB.SEND_TEST_DR_NAME
, sFYXXKSB.PHONE_NO
, "" // sFYXXKSB.SUPPLEMENTARY_OPINION 补充意见
, ReportDate // sFYXXKSB.EXAM_REPORT_DATE 检查报告日期
, "" // sFYXXKSB.EXAM_TECHNICIAN_SIGN 检查技师姓名
, "" // sFYXXKSB.EXAM_DR_SIGN 检查医师姓名
, "" // sFYXXKSB.SYMPTOM_DESCR 症状描述
, "" // sFYXXKSB.OPER_CODE 操作编码
, "" // sFYXXKSB.OPER_NAME 操作名称
, "" // sFYXXKSB.OPER_DATE 操作日期
, sFYXXKSB.OPER_PART_CODE
, sFYXXKSB.OPER_PART_NAME
, "" // sFYXXKSB.INTERVENTION_OBJ_NAME 介入物名称
, "" // sFYXXKSB.ANES_METHOD_CODE 麻醉方式代码
, "" // sFYXXKSB.ANES_DR_SIGN 麻醉医师签名
, "" // sFYXXKSB.ANES_OBSERVE_RESULT 麻醉观察结果
, "" // sFYXXKSB.ANES_CWM_IND_CODE 麻醉中西医标识代码
, "" // sFYXXKSB.SPECIAL_EXAM_FLAG 特殊检查标志
, sFYXXKSB.EXAM_METHOD_CODE
, sFYXXKSB.EXAM_METHOD_NAME
, sFYXXKSB.EXAM_CATEG_CODE
, sFYXXKSB.EXAM_CATEG_NAME
, ReportDate // sFYXXKSB.EXAM_DATE 检查日期
, sFYXXKSB.EXAM_APPLY_ITEM_CODE // sFYXXKSB.EXAM_ITEM_CODE 检查项目代码
, sFYXXKSB.EXAM_APPLY_ITEM_NAME // sFYXXKSB.EXAM_ITEM_NAME 检查项目名称
, "" // sFYXXKSB.SPECIMEN_SAMPLING_DATE_TIME 标本采样日期时间
, "" // sFYXXKSB.RECEIVE_DATE 标本接收日期
, sFYXXKSB.SAMPLE_TYPE_CODE
, "" // sFYXXKSB.SAMPLE_TYPE_NAME 样本类型名称
, "" // sFYXXKSB.SPECIMEN_FIXATIVE_NAME 标本固定液名称
, "" // sFYXXKSB.EXAM_RESULT_CODE 检查结果代码
, EXAM_RESULT // sFYXXKSB.EXAM_RESULT 检查结果
, sFYXXKSB.CurrentCaseViewModel.OrganizationDescription
, "" // sFYXXKSB.EXAM_RESULT_TATION 检查定量结果
, "" // sFYXXKSB.EXAM_RESULT_VALUE_UNIT 检查定量结果计量单位
, EXAM_RESULT // sFYXXKSB.EXAM_REPORT_RESULT 检查报告结果-主观提示
, sFYXXKSB.CurrentCaseViewModel.OrganizationDescription // sFYXXKSB.EXAM_RESULT_PROMPT 检查报告结果-客观所见
, "病理科" // sFYXXKSB.EXAM_REPORT_DEPT 检查报告科室
, "山东第一医科大学附属济南妇幼保健院" // sFYXXKSB.EXAM_REPORT_MI_NAME 检查报告机构名称
, "" // sFYXXKSB.EXAM_REPORT_NOTE 检查报告备注
, sFYXXKSB.APPLY_DEPT_CODE
, sFYXXKSB.APPLY_DEPT_NAME
, sFYXXKSB.EXECUT_DEPT_CODE
, sFYXXKSB.EXECUT_DEPT_NAME
, sFYXXKSB.APPLY_DR_CODE
, sFYXXKSB.APPLY_DR_NAME
, sFYXXKSB.EXECUT_DR_CODE
, sFYXXKSB.EXECUT_DR_NAME
, REPORT_DR_CODE // sFYXXKSB.REPORT_DR_CODE 报告医生工号
, REPORT_DR_NAME // sFYXXKSB.REPORT_DR_NAME 报告医生姓名
, sFYXXKSB.RECORD_DATE
, sFYXXKSB.UPDATE_DATE
, "" // sFYXXKSB.EQUIPMENT_CODE 设备代码
, "" // sFYXXKSB.EQUIPMENT_NAME 设备名称
, sFYXXKSB.NOTE
, "" // sFYXXKSB.CRITICAL_VALUE_FLAG 危急值标志
//, ""
, "http://192.168.200.114:8018/Report/AllReport?menzhen=" + sFYXXKSB.CurrentCaseViewModel.OutpatientNumber + "&zhuyuan=" + sFYXXKSB.CurrentCaseViewModel.InpatientNumber
, DateTime.Now.ToString("yyyyMMddHHmmss")
, "ftp://192.168.100.114:21/" + reportPath.Replace(@"\", "/") + ".jpg"
, emagepath.Replace(@"\", "/")
, "192.168.100.114"
, "xf"
, "@Aef115116"
//, sFYXXKSB.CurrentCaseViewModel.ReportPath
);
#endregion
#endregion
#region 发送消息
string messageId = string.Empty;
if (OldReportPath == ReportPath || string.IsNullOrEmpty(OldReportPath))
{
ret = mqSdk.putMsg("PS25109", "0", message, ref messageId);
}
else
{
ret = mqSdk.putMsg("PS25110", "0", message, ref messageId);
}
if (ret == 1)
{
上传成功日志记录
// log.Info(
// DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") +
// "上传报告结束,病理号【" + sFYXXKSB.CurrentCaseViewModel.CaseNO +
// "】,类型【" + (string.IsNullOrEmpty(sFYXXKSB.CurrentCaseViewModel.ReportPath) ? "25109" : "25110") +
// "】,结果【" + ret +
// "】,messageId【" + messageId +
// "】,type【" + type + "】\r\n");
#region 日志记录--
string LogPath = "D:\\报告推送记录";
string fileName = sFYXXKSB.CurrentCaseViewModel.CaseNO + "_" + messageId;
SaveLog(LogPath, fileName, message);
#endregion
return true;
}
else
{
//上传失败
}
mqSdk.disconnect();//断开队列
#endregion
}
else
{
//连接上传平台失败
}
return false;
}
public static bool 更新报告状态(SFYXXKSB sFYXXKSB)
{
//创建 QueueTools 类的新实例:
MQDLL.QueueTools mqSdk = new MQDLL.QueueTools();
//连接到指定配置节点的队列管理器
int ret = mqSdk.connect("QMGR.P20_1");
if (ret == 1)
{
//连接上传平台成功进行构造、发送消息
#region 构造消息
string message = File.ReadAllText("PS25120.txt");
message = string.Format(message,
sFYXXKSB.ELECTR_REQUISITION_NO, //电子申请单编号
sFYXXKSB.REQUISITION_NAME, //申请单名称
"", //sFYXXKSB.BAR_CODE_NO, //样本条码号 BAR_CODE_NO
sFYXXKSB.SAMPLE_TYPE_CODE, //样本类型代码
"", //sFYXXKSB.SAMPLE_TYPE_NAME, //样本类型名称
"报告已出", //申请单状态
DateTime.Now.ToString("yyyyMMddHHmmss"), //sFYXXKSB.OPER_DATE, //操作日期
"", // sFYXXKSB.OPER_STAFF_CODE, //操作职工工号
"", // sFYXXKSB.OPER_STAFF_NAME, //操作职工姓名
sFYXXKSB.EXECUT_DEPT_CODE, //执行科室代码
sFYXXKSB.EXECUT_DEPT_NAME, //执行科室名称
"J", // sFYXXKSB.OPER_STATUS_CODE, //操作状态代码
"报告审核", // sFYXXKSB.OPER_STATUS_NAME, //操作状态名称
sFYXXKSB.VISIT_NO, //就诊流水号
sFYXXKSB.INHOSP_NUM, //住院次数
sFYXXKSB.PAT_TYPE_CODE, //患者类型代码
sFYXXKSB.PAT_TYPE_NAME, //患者类型名称
sFYXXKSB.PATIENT_ID, //患者ID
sFYXXKSB.OUTHOSP_NO, //门诊流水号
sFYXXKSB.INHOSP_NO, //住院流水号
sFYXXKSB.MR_NO, //病案号
sFYXXKSB.PAT_NAME, //患者姓名
sFYXXKSB.ID_NUMBER, //身份证号码
sFYXXKSB.MEDICARE_CARD_NO, //医疗保险卡号
sFYXXKSB.PHYSI_SEX_CODE, //生理性别代码
sFYXXKSB.PHYSI_SEX_NAME, //生理性别名称
sFYXXKSB.DATE_BIRTH, //出生日期
sFYXXKSB.BED_CODE, //床位代码
sFYXXKSB.BED_NAME, //床位名称
sFYXXKSB.CURR_SICKROOM_CODE, //当前病房代码
sFYXXKSB.CURR_SICKROOM_NAME, //当前病房名称
sFYXXKSB.DEPT_ALIAS, //科室别名
sFYXXKSB.DEPT_CODE, //科室代码
"", // sFYXXKSB.WARD_ALIAS, //病区别名
sFYXXKSB.WARD_CODE, //病区代码
sFYXXKSB.WARD_NAME, //病区名称
DateTime.Now.ToString("yyyyMMddHHmmss")
);
#endregion
#region 发送消息
string messageId = string.Empty;
ret = mqSdk.putMsg("PS25120", "0", message, ref messageId);
if (ret == 1)
{
return true;
}
else
{
//上传失败
}
#endregion
mqSdk.disconnect();
}
else
{
//连接上传平台失败
}
return false;
}
private static void SaveLog(string logPath, string fileName, string message)
{
try
{
StringBuilder logNameSb = new StringBuilder();
string date = System.DateTime.Today.ToString("yyyy-MM-dd" + "-");
logNameSb.Append(date);
logNameSb.Append(fileName);
logNameSb.Append(".log");
if (!Directory.Exists(logPath))
{
Directory.CreateDirectory(logPath);
}
string filePath = logPath + "\\" + logNameSb.ToString();
FileStream fs;
if (!File.Exists(filePath))
{
fs = File.Create(filePath);
}
else
{
fs = File.Open(filePath, FileMode.Append);
}
string strToWrite = System.DateTime.Now.ToString() + ":" + message + "\r\n";
byte[] b = System.Text.Encoding.Default.GetBytes(strToWrite);
fs.Write(b, 0, b.Length);
fs.Close();
}
catch (Exception)
{
throw;
}
}
}
}
通过MQ机制上传报告至平台
最新推荐文章于 2024-10-01 18:51:18 发布