tijian_tieying/winform/cn.xinelu.MedicalCheckup.Client/MainWindow.cs
2025-02-20 12:01:17 +08:00

2219 lines
75 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using cn.sancainet.Resident.health.register;
using cn.sancainet.Resident.health.register.XiTong;
using cn.xinelu.MedicalCheckup.Client.Common;
using cn.xinelu.MedicalCheckup.Client.Models;
using cn.xinelu.MedicalCheckup.Client.Properties;
using CSTest;
using FastReport;
using Google.Protobuf.WellKnownTypes;
using NetDimension.NanUI;
using NetDimension.NanUI.HostWindow;
using NetDimension.NanUI.JavaScript;
using Newtonsoft.Json.Linq;
using Org.BouncyCastle.Crypto.Tls;
using System;
using System.Configuration;
using System.Diagnostics;
using System.Diagnostics.Eventing.Reader;
using System.Drawing;
using System.IO;
using System.IO.Ports;
using System.Linq;
using System.Speech.Synthesis;
using System.Text;
using System.Threading;
using System.Windows.Forms;
using System.Xml.Linq;
namespace cn.xinelu.MedicalCheckup.Client
{
public class MainWindow : Formium
{
internal static string ConnMain { get; set; }
internal static string ConnLocal { get; set; }
internal static string ConnServer { get; set; }
internal static string CurrJGMC { get; set; }
private SpeechSynthesizer speaker;
public override HostWindowType WindowType => HostWindowType.System; //带窗口
//public override HostWindowType WindowType => HostWindowType.Borderless; //不带窗口
public override string StartUrl => ConfigurationManager.AppSettings["StartUrl"];//设备启动页面
SerialPort sp;
//public void InitializeChromium()
//{
// CefSettings settings = new CefSettings();
// settings.CefCommandLineArgs.Add("enable-media-stream", "1");
// Cef.Initialize(settings);
//}
public MainWindow()
{
//InitializeChromium();
Icon ico = Resources.favicon;
//Icon ico = Resources.Icon1;
this.Icon = new Icon(ico, new Size(32, 32));
Location = Screen.PrimaryScreen.WorkingArea.Location;
Size = Screen.PrimaryScreen.WorkingArea.Size;
Title = ConfigurationManager.AppSettings["AppTitle"];
///IsFullScreen = true;
///
WindowState = FormWindowState.Maximized;
//AutoShowMask = false;
CustomizeMaskPanel();
ConnMain = ConfigurationManager.ConnectionStrings["ConnMain"].ConnectionString;
//ConnLocal = ConfigurationManager.ConnectionStrings["ConnLocal"].ConnectionString;
//ConnServer = ConfigurationManager.ConnectionStrings["ConnServer"].ConnectionString;
//身高体重秤
if (ConfigurationManager.AppSettings["EnableHeightWeight"] == "true")
{
try
{
sp = new SerialPort();
sp.DataReceived += Sp_DataReceived;
sp.PortName = ConfigurationManager.AppSettings["hw_PortName"];
sp.DataBits = int.Parse(ConfigurationManager.AppSettings["hw_DataBits"]);
sp.BaudRate = int.Parse(ConfigurationManager.AppSettings["hw_BaudRate"]);
switch (ConfigurationManager.AppSettings["hw_StopBits"])
{
case "None":
sp.StopBits = StopBits.None;
break;
case "One":
sp.StopBits = StopBits.One;
break;
case "OnePointFive":
sp.StopBits = StopBits.OnePointFive;
break;
case "Two":
sp.StopBits = StopBits.Two;
break;
default:
sp.StopBits = StopBits.One;
break;
}
switch (ConfigurationManager.AppSettings["hw_Parity"])
{
case "None":
sp.Parity = Parity.None;
break;
case "Even":
sp.Parity = Parity.Even;
break;
case "Mark":
sp.Parity = Parity.Mark;
break;
case "Odd":
sp.Parity = Parity.Odd;
break;
case "Space":
sp.Parity = Parity.Space;
break;
default:
sp.Parity = Parity.None;
break;
}
sp.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
string twstr = "";
private void Sp_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
//throw new NotImplementedException();
while (true)
{
if (sp.BytesToRead > 0)
{
byte[] bs = new byte[sp.BytesToRead];
sp.Read(bs, 0, bs.Length);
string ls = System.Text.Encoding.ASCII.GetString(bs);
twstr += ls;
if (twstr.IndexOf("\r\n") >= 0)
{
ls = twstr.Substring(0, twstr.IndexOf("\r\n") + 2);
twstr = twstr.Substring(twstr.IndexOf("\u000d") + 2);
new Thread(() =>
{
ls = ls.Replace("\r\n", "");
string[] hw = ls.Split(' ');
string w = hw[0];
string h = hw[1];
h = h.Replace("H:", "");
w = w.Replace("W:", "");
try
{
decimal dw = decimal.Parse(w);
decimal dh = decimal.Parse(h);
ExecuteJavaScript(@"if(window.setHW){window.setHW(" + dh + "," + dw + ")}");
}
catch
{
InvokeIfRequired(() =>
{
MessageBox.Show("身高体重异常!");
});
}
}).Start();
}
}
else
{
break;
}
}
}
private void CustomizeMaskPanel()
{
var label = new Label
{
Text = ConfigurationManager.AppSettings["AppTitle"],
AutoSize = false,
TextAlign = ContentAlignment.MiddleCenter,
Anchor = AnchorStyles.None,
ForeColor = Color.White,
Font = new Font("微软雅黑", 24.0f, GraphicsUnit.Point)
};
label.Width = Width;
label.Height = Height / 2;
label.Location = new Point(0, (Height - label.Height) / 2);
// Add a label
Mask.Content.Add(label);
// Add a picture box
//Mask.Content.Add(loaderGif);
Mask.Image = null;
}
protected override void OnReady()
{
base.OnReady();
registerMyobj();
try
{
try
{
// 如果没有语音,则try掉
speaker = new SpeechSynthesizer();
string test = "";
foreach (InstalledVoice iv in speaker.GetInstalledVoices())
{
test += iv.VoiceInfo.Name + ",";
}
//speaker.SelectVoice("VW Lily");
//Microsoft Huihui Desktop
//Microsoft Zira Desktop
speaker.SelectVoice("Microsoft Huihui Desktop");
speaker.Volume = 100;
speaker.Rate = 0;
initSpeaker();
} catch(Exception e)
{
//MessageBox.Show(e.Message + e.StackTrace);
}
Print();
frm();
dicom();
//2023-12-15 xulu 添加记住密码方法
isRememberPwd();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
MessageBox.Show(ex.StackTrace);
}
//print.finit();
#if DEBUG
string showdevtools = "false";
if (ConfigurationManager.AppSettings.Get("showdevtools") != null)
showdevtools = ConfigurationManager.AppSettings.Get("showdevtools").ToString();
if (showdevtools == "true")
{
//工具箱
ShowDevTools();
}
#endif
}
/// <summary>
/// 语音功能
/// </summary>
private void initSpeaker()
{
var obj = JavaScriptValue.CreateObject();
obj.SetValue("Speak", JavaScriptValue.CreateFunction(args => {
var msg = args.FirstOrDefault(x => x.IsString);
speaker.SpeakAsync(msg.GetString());
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 1 }));
}));
RegisterExternalObjectValue("Speaker", obj);
}
/// <summary>
/// 读卡
/// </summary>
private void registerMyobj()
{
//throw new NotImplementedException();
var obj = JavaScriptValue.CreateObject();
obj.SetValue("ReadIdCard", JavaScriptValue.CreateFunction(args =>
{
//var msg = args.FirstOrDefault(x => x.IsString);
//var text = msg?.GetString();
string errmsg = "";
IDCardInfo info = new IDCardInfo();
InvokeIfRequired(() =>
{
string idcarddevice = ConfigurationManager.AppSettings.Get("IDCardDevice") ?? "HuaShi100UC";
if (idcarddevice == "HuaShi100UC")
info = ReadInfo_HuaShi100UC(out errmsg);
else
info = ReadInfo_ShenSi(out errmsg);
});
if (errmsg == "")
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 1, info, msg = "读身份证成功!" }));
else
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
RegisterExternalObjectValue("IDCard", obj);
}
IDCardInfo ReadInfo_ShenSi(out string errmsg)
{
IDCardInfo info = new IDCardInfo();
int iPort = 1001;
int iIfOpen = 1;
byte[] byCHMsg = new byte[256 + 1]; //个人基本信息
uint uiCHMsgSize = 0; //个人基本信息字节数
byte[] byPHMsg = new byte[1024 + 1]; //照片信息
uint uiPHMsgSize = 0; //照片信息字节数
byte[] byFPMsg = new byte[1024 + 1]; //指纹信息
uint uiFPMsgSize = 0; //指纹信息字节数
int iIsSaveToBmp = 0;
byte[] byBgrBuffer = new byte[38556]; //解码后图片BGR编码值
byte[] byRgbBuffer = new byte[38808]; //解码后图片RGB编码值
byte[] byBmpBuffer = new byte[38862]; //解码后图片RGB编码值
// uint uiDevBaud = 0;
//uint uiCurBaud = 0;
StringBuilder strSAMID = new StringBuilder(64 + 1);
//获得设备SAM模块ID。
//PS SAM模块ID为二代证设备唯一标志ID
//PS2此函通常用来数来区分设备或判断设备是否连接正常若只读卡信息的话无需添加此函数。
int iResult = extend.SDT_GetSAMIDToStr(1001, strSAMID, 1);
if (0x90 != iResult)
{
errmsg = String.Format("获取SAMID号失败错误代码{0:D}", iResult);
//log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType).Info(DateTime.Now.ToString() + errmsg);
//MessageBox.Show(strMsg, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
return info;
}
byte[] byManaID = new byte[8];
//寻卡
iResult = extend.SDT_StartFindIDCard(iPort, byManaID, iIfOpen);
if (0x9F != iResult)
{
errmsg = String.Format("寻卡失败,错误代码:{0:D}", iResult);
//Status s = new Status(errmsg);
//s.ShowDialog();
//log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType).Info(DateTime.Now.ToString() + "没有找到身份证!" + errmsg);
return info;
}
//选卡
byManaID.Initialize();
iResult = extend.SDT_SelectIDCard(iPort, byManaID, iIfOpen);
if (0x90 != iResult)
{
errmsg = String.Format("选卡失败,错误代码:{0:D}", iResult);
return info;
}
//读取身份证个人基本信息、照片信息和指纹信息;
//PS指纹信息需要专门的指纹比对设备这里只获取加密的原始数据。
iResult = extend.SDT_ReadBaseFPMsg(iPort, byCHMsg, ref uiCHMsgSize, byPHMsg, ref uiPHMsgSize, byFPMsg, ref uiFPMsgSize, iIfOpen);
if (0x21 == iResult)//0501模块(一种老模块)无法读取指纹信息,会返回0x21错误这里进行兼容处理这种模块早就不用了实际可以不做处理。
{
iResult = extend.SDT_ReadBaseMsg(iPort, byCHMsg, ref uiCHMsgSize, byPHMsg, ref uiPHMsgSize, iIfOpen);//采用只读卡信息和照片,不读指纹信息的接口
}
if (0x90 != iResult)
{
errmsg = String.Format("读取身份信息失败,错误代码:{0:D}", iResult);
return info;
}
//解码照片数据获得BGR格式数据
//iIsSaveToBmp = 1; //调用解码库unpack函数后由接口自动生成名为zp.bmp的图片文件该BMP文件可直接打开不用B、R转换
iIsSaveToBmp = 0; //不自动生成zp.bmp图片
//PS 解码库需要依赖授权文件license.dat要确保“当前工作目录下”license.dat文件存在且正确否则会返回-22和-12的错误
//PS2 若设置iIsSaveToBmp = 1即由接口自动生成zp.bmp文件请确认“当前工作目录”具有写权限否侧接口会崩溃WIN7以上系统需注意此项
iResult = extend.unpack(byPHMsg, byBgrBuffer, iIsSaveToBmp);
if (1 != iResult)
{
errmsg = String.Format("照片解码失败,错误代码:{0:D}", iResult);
return info;
}
//拼接BMP图片格式头14字节
byte[] byBmpHead = new byte[14] { 0x42, 0x4D, 0xCE, 0x97, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00 };
Array.Copy(byBmpHead, 0, byBmpBuffer, 0, 14);
//拼接BMP图像信息40字节
byte[] byBmpInfo = new byte[40]{ 0x28,0x00,0x00,0x00,//结构所占用40字节
0x66,0x00,0x00,0x00,//位图的宽度102像素
0x7E,0x00,0x00,0x00,//位图的高度126像素
0x01,0x00, //目标设备的级别必须为1
0x18,0x00, //每个像素所需的位数24
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00//......其他信息省略为0
};
Array.Copy(byBmpInfo, 0, byBmpBuffer, 14, 40);
//将解码后的BGR格式数据进行B、R互换
iResult = GFunction.bgr2rgb(byBgrBuffer, byBgrBuffer.Length, byRgbBuffer, byRgbBuffer.Length, 102, 126);
if (iResult <= 0)
{
//MessageBox.Show("照片数据B、R互换失败.", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
errmsg = String.Format("照片数据B、R互换失败.", iResult);
return info;
}
Array.Copy(byRgbBuffer, 0, byBmpBuffer, 54, iResult);
//截取个人信息数据。信息采用UNICODE存储具体格式参可见《二代证机读信息说明.doc》
byte[] byName = new byte[30];
byte[] bySex = new byte[2];
byte[] byRace = new byte[4];
byte[] byBirth = new byte[16];
byte[] byAddress = new byte[70];
byte[] byID = new byte[36];
byte[] byCompany = new byte[30];
byte[] byBeginDate = new byte[16];
byte[] byEndDate = new byte[16];
Array.Copy(byCHMsg, 0, byName, 0, 30);
Array.Copy(byCHMsg, 30, bySex, 0, 2);
Array.Copy(byCHMsg, 32, byRace, 0, 4);
Array.Copy(byCHMsg, 36, byBirth, 0, 16);
Array.Copy(byCHMsg, 52, byAddress, 0, 70);
Array.Copy(byCHMsg, 122, byID, 0, 36);
Array.Copy(byCHMsg, 158, byCompany, 0, 30);
Array.Copy(byCHMsg, 188, byBeginDate, 0, 16);
Array.Copy(byCHMsg, 204, byEndDate, 0, 16);
info.Name = Encoding.Unicode.GetString(byName).Trim().Replace("\0", "");
info.IDCardNo = Encoding.Unicode.GetString(byID).Trim().Replace("\0", "");
string csrq = Encoding.Unicode.GetString(byBirth).Trim().Replace("\0", "");
info.Born = csrq.Substring(0, 4) + "-" + csrq.Substring(4, 2) + "-" + csrq.Substring(6, 2).Replace("\0", "");
info.Address = Encoding.Unicode.GetString(byAddress).Trim().Replace("\0", "");
info.Sex = Encoding.Unicode.GetString(bySex).Trim().Replace("\0", "");
info.Nation = Encoding.Unicode.GetString(byRace).Trim();
var age = GetBirthdayAgeSex(info.IDCardNo);
info.Age = age.Age;
info.ImageBase64 = Convert.ToBase64String(byBmpBuffer);
errmsg = "";
return info;
}
IDCardInfo ReadInfo_HuaShi100UC(out string errmsg)
{
IDCardInfo info = new IDCardInfo();
bool bool_Init = false;
for (int m = 1001; m <= 1016; m++)
{
int i = extend_100UC.CVR_InitComm(m);
if (i == 1)
{
bool_Init = true;
break;
}
}
//初始化链接
if (!bool_Init)
{
errmsg = "身份证读卡器连接失败";
return info;
}
int i2 = extend_100UC.CVR_AuthenticateForNoJudge();
if (i2 != 1)
{
errmsg = String.Format("寻卡失败,错误代码:{0:D}", i2);
return info;
}
int i3 = extend_100UC.CVR_Read_Content(1);
if (i3 != 1)
{
errmsg = String.Format("读取身份证信息失败,错误代码:{0:D}", i3);
return info;
}
string path = System.IO.Directory.GetCurrentDirectory();
string[] strArray = File.ReadAllLines(path+"\\wz.txt", Encoding.GetEncoding("gb2312"));
info.Name = strArray[0];
info.Sex = strArray[1];
info.Nation = strArray[2];
info.Born = strArray[3];
info.Address=strArray[4];
info.IDCardNo = strArray[5];
//info.IDCardNo = Encoding.Unicode.GetString(byID).Trim().Replace("\0", "");
//string csrq = Encoding.Unicode.GetString(byBirth).Trim().Replace("\0", "");
//info.Born = csrq.Substring(0, 4) + "-" + csrq.Substring(4, 2) + "-" + csrq.Substring(6, 2).Replace("\0", "");
//info.Address = Encoding.Unicode.GetString(byAddress).Trim().Replace("\0", "");
var age = GetBirthdayAgeSex(info.IDCardNo);
info.Age = age.Age;
info.ImageBase64 = GetBase64FromImgFilePath(path+"\\zp.bmp");
errmsg = "";
return info;
}
string GetBase64FromImgFilePath(string path)
{
using (Image image = Image.FromFile(path))
{
using (MemoryStream m = new MemoryStream())
{
image.Save(m, image.RawFormat);
byte[] imageBytes = m.ToArray();
// Convert byte[] to Base64 String
string base64String = Convert.ToBase64String(imageBytes);
return base64String;
}
}
}
/// <summary>
/// 打印
/// </summary>
private void Print()
{
var obj = JavaScriptValue.CreateObject();
finit(obj);
PrintTm(obj);
PrintZyd(obj);
PrinterSetting(obj);
PrintJFD(obj);
PrintRJS(obj);
PrintFPB(obj);
PrintFPD(obj);
PrintJZMYTM(obj);
PrintHZBG(obj);
PrintFJTZ(obj);
PrintBHGTZ(obj);
PrintJKZM_YP(obj);
PrintJKZM_GG(obj);
Printzyzyd(obj);
PrintJKZM_SP(obj);
PrintTJB(obj);
PrintBg(obj);
PrintFjbg(obj);
PrintRKD(obj);
PrintCKD(obj);
PrintPDD(obj);
PrintTHD(obj);
PrintTKD(obj);
PrintCGSQD(obj);
PrintFjtzd(obj);
PrintFjrylb(obj);
PrintSftj(obj);
PrintSftjws(obj);
PrintYmtj(obj);
printJFD(obj);
printBSD(obj);
PrintKCPDD(obj);
PrintCBHS(obj);
PrintWSXKZ(obj);
PrintWSXKZ1(obj);
PrintFSXKZ(obj);
PrintFYZC(obj);
PrintWZCGSP(obj);
PrintJFSP(obj);
PrintYSSP(obj);
PrintCCBXD(obj);
PrintSZYD(obj);
PrintCCD(obj);
PrintXXXD(obj);
PrintJKD(obj);
PrintWX(obj);
PrintJBYC(obj);
PrintGWJD(obj);
PrintQTBXD(obj);
PrintWZCGBXD(obj);
PrintGWJDbc(obj);
PrintXgtm(obj);
PrintXgtm1(obj);
PrintXgtmHB(obj);
PaiZhao(obj);
RegisterExternalObjectValue("Print", obj);
}
/// <summary>
/// 记住密码
/// 2023-12-15 xulu
/// </summary>
private void isRememberPwd()
{
var obj = JavaScriptValue.CreateObject();
obj.SetValue("show", JavaScriptValue.CreateFunction(args =>
{
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = ConfigurationManager.AppSettings["RememberPwd"], pwd = ConfigurationManager.AppSettings["Pwd"], user = ConfigurationManager.AppSettings["UserName"] }));
}));
obj.SetValue("remember", JavaScriptValue.CreateFunction(args =>
{
var a = args[0].GetString();
var b = args[1].GetString();
var c = args[2].GetString();
Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
if (a== "true")
{
cfa.AppSettings.Settings["RememberPwd"].Value = a;
cfa.AppSettings.Settings["Pwd"].Value = b;
cfa.AppSettings.Settings["UserName"].Value = c;
}
else
{
cfa.AppSettings.Settings["RememberPwd"].Value = a;
cfa.AppSettings.Settings["Pwd"].Value = "";
cfa.AppSettings.Settings["UserName"].Value = "";
}
cfa.Save();
ConfigurationManager.RefreshSection("appSettings");
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = "" }));
}));
RegisterExternalObjectValue("isRememberPwd", obj);
}
private void frm()
{
var obj = JavaScriptValue.CreateObject();
obj.SetValue("CaiChao", JavaScriptValue.CreateFunction(args =>
{
InvokeIfRequired(() =>
{
Frm c = new Frm();
c.num = args[0].GetString();
c.name = args[1].GetString();
c.sex = args[2].GetString();
c.age = args[3].GetString();
c.caichao();
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = "", data = frm_CaiChao.data }));
}));
obj.SetValue("setting", JavaScriptValue.CreateFunction(args =>
{
frm_photobc bc = new frm_photobc();
bc.ShowDialog();
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = "" }));
}));
RegisterExternalObjectValue("frm", obj);
}
private void dicom()
{
var obj = JavaScriptValue.CreateObject();
obj.SetValue("open", JavaScriptValue.CreateFunction(args =>
{
//MessageBox.Show("aaaa");
FormMain c = new FormMain();
c.num = args[0].GetString();
c.name = args[1].GetString();
c.sex = args[2].GetString();
c.age = args[3].GetInt();
c.filepath = args[4].GetString();
c.ShowDialog();
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = "", data = c.data }));
}));
obj.SetValue("show", JavaScriptValue.CreateFunction(args =>
{
//MessageBox.Show("aaaa");
FormMain c = new FormMain();
c.hideok();
c.filepath = args[0].GetString();
c.ShowDialog();
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = "", data = c.data }));
}));
RegisterExternalObjectValue("dicom", obj);
}
public static BirthdayAgeSex GetBirthdayAgeSex(string identityCard)
{
if (string.IsNullOrEmpty(identityCard))
{
return null;
}
else
{
if (identityCard.Length != 15 && identityCard.Length != 18)//身份证号码只能为15位或18位其它不合法
{
return null;
}
}
BirthdayAgeSex entity = new BirthdayAgeSex();
string strSex = string.Empty;
if (identityCard.Length == 18)//处理18位的身份证号码从号码中得到生日和性别代码
{
entity.Birthday = identityCard.Substring(6, 4) + "-" + identityCard.Substring(10, 2) + "-" + identityCard.Substring(12, 2);
strSex = identityCard.Substring(14, 3);
}
if (identityCard.Length == 15)
{
entity.Birthday = "19" + identityCard.Substring(6, 2) + "-" + identityCard.Substring(8, 2) + "-" + identityCard.Substring(10, 2);
strSex = identityCard.Substring(12, 3);
}
entity.Age = CalculateAge(entity.Birthday);//根据生日计算年龄
if (int.Parse(strSex) % 2 == 0)//性别代码为偶数是女性奇数为男性
{
entity.Sex = "女";
}
else
{
entity.Sex = "男";
}
return entity;
}
/// <summary>
/// 根据出生日期,计算精确的年龄
/// </summary>
/// <param name="birthDate">生日</param>
/// <returns></returns>
public static int CalculateAge(string birthDay)
{
DateTime birthDate = DateTime.Parse(birthDay);
DateTime nowDateTime = DateTime.Now;
int age = nowDateTime.Year - birthDate.Year;
//再考虑月、天的因素
if (nowDateTime.Month < birthDate.Month || (nowDateTime.Month == birthDate.Month && nowDateTime.Day < birthDate.Day))
{
age--;
}
return age;
}
#region printjs
static Print print = new Print();
/// <summary>
/// finit
/// </summary>
/// <param name="obj"></param>
public static void finit(JavaScriptValue obj)
{
obj.SetValue("finit", JavaScriptValue.CreateFunction(args =>
{
var msg = args.FirstOrDefault(x => x.IsString);
string val = msg.GetString();
bool b = print.finit(val);
return JavaScriptValue.CreateBool(b);
}));
}
/// <summary>
/// 打印条码
/// </summary>
/// <param name="obj"></param>
public void PrintTm(JavaScriptValue obj)
{
//obj.SetValue("PrintTM", JavaScriptValue.CreateFunction(args =>
//{
// var msg = args.FirstOrDefault(x => x.IsString);
// string val = msg.GetString();
// string errmsg = "";
// print.finit("barcode.frx");
// print.PrintTM(val);
// return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
//}));
obj.SetValue("PrintTM", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var physicalNum = args[0].GetString();
InvokeIfRequired(() =>
{
print.PrintTM(physicalNum);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印指引单
/// </summary>
/// <param name="obj"></param>
public void PrintZyd(JavaScriptValue obj)
{
//obj.SetValue("Printzyd", JavaScriptValue.CreateFunction(args =>
//{
// //var msg = args.FirstOrDefault(x => x.IsString);
// var reportname = args[0];
// var tm = args[1];
// string errmsg = "";
// print.finit(reportname.GetString());
// print.Printzyd(tm.GetString());
// return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
//}));
obj.SetValue("Printzyd", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var physicalNum = args[0].GetString();
InvokeIfRequired(() =>
{
print.Printzyd(physicalNum);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印机设置
/// </summary>
/// <param name="obj"></param>
public static void PrinterSetting(JavaScriptValue obj)
{
obj.SetValue("PrinterSetting", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
print.PrinterSetting();
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
/// <summary>
/// 打印缴费单
/// </summary>
/// <param name="obj"></param>
public void PrintJFD(JavaScriptValue obj)
{
obj.SetValue("printJFD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
InvokeIfRequired(() =>
{
print.printJFD(val);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
/// <summary>
/// 打印机设置
/// </summary>
/// <param name="obj"></param>
public void PrintRJS(JavaScriptValue obj)
{
obj.SetValue("PrintRJS", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var result = args[0].GetString();
string sfsj;
try
{
sfsj = args[1].GetString();
}
catch
{
sfsj = "";
}
string sfr;
try
{
sfr = args[2].GetString();
}
catch
{
sfr = "";
}
InvokeIfRequired(() =>
{
print.PrintRJS(result, sfsj, sfr);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
/// <summary>
/// 打印机设置
/// </summary>
/// <param name="obj"></param>
public void PrintFPB(JavaScriptValue obj)
{
obj.SetValue("PrintFPB", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var result = args[0].GetString();
InvokeIfRequired(() =>
{
print.PrintFPB(result);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
/// <summary>
/// 打印发票段
/// </summary>
/// <param name="obj"></param>
public void PrintFPD(JavaScriptValue obj)
{
obj.SetValue("PrintFPD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var result = args[0].GetString();
InvokeIfRequired(() =>
{
print.PrintFPD(result);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
/// <summary>
/// 打印疫苗条码
/// </summary>
/// <param name="obj"></param>
public void PrintJZMYTM(JavaScriptValue obj)
{
obj.SetValue("PrintJZMYTM", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var barcode = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintJZMYTM(barcode, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印单位汇总报告
/// </summary>
/// <param name="obj"></param>
public void PrintHZBG(JavaScriptValue obj)
{
obj.SetValue("PrintHZBG", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
var ids = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintHZBG(ids, val1);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印复检证明
/// </summary>
/// <param name="obj"></param>
public void PrintFJTZ(JavaScriptValue obj)
{
obj.SetValue("PrintFJTZ", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var ids = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintFJTZ(ids, val1);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印不合格通知
/// </summary>
/// <param name="obj"></param>
public void PrintBHGTZ(JavaScriptValue obj)
{
obj.SetValue("PrintBHGTZ", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var ids = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintBHGTZ(ids, val1);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印健康证明药品
/// </summary>
/// <param name="obj"></param>
public void PrintJKZM_YP(JavaScriptValue obj)
{
obj.SetValue("PrintJKZM_YP", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var ids = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintJKZM_YP(ids, val1);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印实例
/// </summary>
/// <param name="obj"></param>
public void PrintJKZM_GG(JavaScriptValue obj)
{
obj.SetValue("PrintJKZM_GG", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var ids = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintJKZM_GG(ids, val1);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印实例
/// </summary>
/// <param name="obj"></param>
public void Printzyzyd(JavaScriptValue obj)
{
obj.SetValue("Printzyzyd", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var physicalNum = args[0].GetString();
InvokeIfRequired(() =>
{
print.Printzyzyd(physicalNum);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
/// <summary>
/// 打印实例
/// </summary>
/// <param name="obj"></param>
public void PrintJKZM_SP(JavaScriptValue obj)
{
obj.SetValue("PrintJKZM_SP", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
object data = null;
// args为传递过来的参数,按顺序来
var ids = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintJKZM_SP(ids, val1);
});
//如果方法有返回值,则将返回值赋值到data
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, data, msg = errmsg }));
}));
}
public void PrintTJB(JavaScriptValue obj)
{
obj.SetValue("PrintTJB", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
InvokeIfRequired(() =>
{
print.PrintTJB(val);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintBg(JavaScriptValue obj)
{
obj.SetValue("PrintBg", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
//2023-10-13 xulu
if(args.Count()==2)
{
print.PrintBg(val, val1);
}
else
{
print.PrintBg(val, val1, args[2].GetInt(), args[3].GetString());
}
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintFjbg(JavaScriptValue obj)
{
obj.SetValue("PrintFjbg", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintFjbg(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintRKD(JavaScriptValue obj)
{
obj.SetValue("PrintRKD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintRKD(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintCKD(string ckdh, string lx);
//void PrintPDD(string pddh, string lx);
//void PrintTHD(string thdh, string lx);
public void PrintCKD(JavaScriptValue obj)
{
obj.SetValue("PrintCKD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintCKD(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintPDD(JavaScriptValue obj)
{
obj.SetValue("PrintPDD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintPDD(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintTHD(JavaScriptValue obj)
{
obj.SetValue("PrintTHD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintTHD(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintTKD(string tkdh, string lx);
//void PrintCGSQD(string sqdh, string lx);
//void PrintFjtzd(string ids, string lx);
//void PrintFjrylb(string ids, string lx);
public void PrintTKD(JavaScriptValue obj)
{
obj.SetValue("PrintTKD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintTKD(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintCGSQD(JavaScriptValue obj)
{
obj.SetValue("PrintCGSQD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintCGSQD(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintFjtzd(JavaScriptValue obj)
{
obj.SetValue("PrintFjtzd", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintFjtzd(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintFjrylb(JavaScriptValue obj)
{
obj.SetValue("PrintFjrylb", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintFjrylb(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintSftj(string lx, string start, string end);
//void PrintSftjws(string lx, string start, string end, string bm);
//void PrintYmtj(string lx, string start, string end, string xm);
public void PrintSftj(JavaScriptValue obj)
{
obj.SetValue("PrintSftj", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
string val2;
try
{
val2 = args[2].GetString();
}
catch
{
val2 = "";
}
InvokeIfRequired(() =>
{
print.PrintSftj(val, val1, val2);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintSftjws(JavaScriptValue obj)
{
obj.SetValue("PrintSftjws", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
string val2;
try
{
val2 = args[2].GetString();
}
catch
{
val2 = "";
}
string val3;
try
{
val3 = args[3].GetString();
}
catch
{
val3 = "";
}
InvokeIfRequired(() =>
{
print.PrintSftjws(val, val1, val2, val3);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
public void PrintYmtj(JavaScriptValue obj)
{
obj.SetValue("PrintYmtj", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
string val2;
try
{
val2 = args[2].GetString();
}
catch
{
val2 = "";
}
string val3;
try
{
val3 = args[3].GetString();
}
catch
{
val3 = "";
}
InvokeIfRequired(() =>
{
print.PrintYmtj(val, val1, val2, val3);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
/// <summary>
/// 打印缴费单--------------------------------------------------------------------------------------
/// </summary>
/// <param name="id">收费表ID</param>
//void printJFD(string id);
public void printJFD(JavaScriptValue obj)
{
obj.SetValue("printJFD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
InvokeIfRequired(() =>
{
print.printJFD(val);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void printBSD(string id, string lx);
public void printBSD(JavaScriptValue obj)
{
obj.SetValue("printBSD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.printBSD(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintKCPDD(string kcid, string wzfl, string key, string lx);
public void PrintKCPDD(JavaScriptValue obj)
{
obj.SetValue("PrintKCPDD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
string val2;
try
{
val2 = args[2].GetString();
}
catch
{
val2 = "";
}
string val3;
try
{
val3 = args[3].GetString();
}
catch
{
val3 = "";
}
InvokeIfRequired(() =>
{
print.PrintKCPDD(val, val1, val2, val3);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintCBHS(string b, string e, string lx);
public void PrintCBHS(JavaScriptValue obj)
{
obj.SetValue("PrintCBHS", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
string val2;
try
{
val2 = args[2].GetString();
}
catch
{
val2 = "";
}
InvokeIfRequired(() =>
{
print.PrintCBHS(val, val1, val2);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintWSXKZ(string id, string lx);
public void PrintWSXKZ(JavaScriptValue obj)
{
obj.SetValue("PrintWSXKZ", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintWSXKZ(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintWSXKZ1(string id, string lx);
public void PrintWSXKZ1(JavaScriptValue obj)
{
obj.SetValue("PrintWSXKZ1", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintWSXKZ1(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintFSXKZ(string id, string lx);
public void PrintFSXKZ(JavaScriptValue obj)
{
obj.SetValue("PrintFSXKZ", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintFSXKZ(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
// 打印费用支出
//void PrintFYZC(string id, string lx);
public void PrintFYZC(JavaScriptValue obj)
{
obj.SetValue("PrintFYZC", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintFYZC(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印物资采购
//void PrintWZCGSP(string id, string lx);
public void PrintWZCGSP(JavaScriptValue obj)
{
obj.SetValue("PrintWZCGSP", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintWZCGSP(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
// 打印项目经费
//void PrintJFSP(string id, string lx);
public void PrintJFSP(JavaScriptValue obj)
{
obj.SetValue("PrintJFSP", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
InvokeIfRequired(() =>
{
print.PrintJFSP(val, val1);
});
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印预算
//void PrintYSSP(string id, string lx);
public static void PrintYSSP(JavaScriptValue obj)
{
obj.SetValue("PrintYSSP", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintYSSP(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印出差报销单
//void PrintCCBXD(string id, string lx);
public static void PrintCCBXD(JavaScriptValue obj)
{
obj.SetValue("PrintCCBXD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintCCBXD(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
// 打印三重一大
//void PrintSZYD(string id, string lx);
public static void PrintSZYD(JavaScriptValue obj)
{
obj.SetValue("PrintSZYD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintSZYD(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
// 打印出差申请
//void PrintCCD(string id, string lx);
public static void PrintCCD(JavaScriptValue obj)
{
obj.SetValue("PrintCCD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintCCD(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印学习心得
//void PrintXXXD(string id, string lx);
public static void PrintXXXD(JavaScriptValue obj)
{
obj.SetValue("PrintXXXD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintXXXD(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
// 打印借款
//void PrintJKD(string id, string lx);
public static void PrintJKD(JavaScriptValue obj)
{
obj.SetValue("PrintJKD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintJKD(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印维修申请
//void PrintWX(string id, string lx);
public static void PrintWX(JavaScriptValue obj)
{
obj.SetValue("PrintWX", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintWX(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印加班用餐
//void PrintJBYC(string id, string lx);
public static void PrintJBYC(JavaScriptValue obj)
{
obj.SetValue("PrintJBYC", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintJBYC(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印公务接待
//void PrintGWJD(string id, string lx);
public static void PrintGWJD(JavaScriptValue obj)
{
obj.SetValue("PrintGWJD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintGWJD(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印其他报销单
//void PrintQTBXD(string id, string lx);
public static void PrintQTBXD(JavaScriptValue obj)
{
obj.SetValue("PrintQTBXD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintQTBXD(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//打印物资采购报销单
//void PrintWZCGBXD(string id, string lx);
public static void PrintWZCGBXD(JavaScriptValue obj)
{
obj.SetValue("PrintWZCGBXD", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintWZCGBXD(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
/// <summary>
/// 公务接待补充
/// </summary>
/// <param name="id"></param>
/// <param name="lx"></param>
//void PrintGWJDbc(string id, string lx);
public static void PrintGWJDbc(JavaScriptValue obj)
{
obj.SetValue("PrintGWJDbc", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintGWJDbc(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintXgtm(string id);
public static void PrintXgtm(JavaScriptValue obj)
{
obj.SetValue("PrintXgtm", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
print.PrintXgtm(val);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintXgtm1(string id, string a);
public static void PrintXgtm1(JavaScriptValue obj)
{
obj.SetValue("PrintXgtm1", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintXgtm1(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PrintXgtmHB(string id, string a);
public static void PrintXgtmHB(JavaScriptValue obj)
{
obj.SetValue("PrintXgtmHB", JavaScriptValue.CreateFunction(args =>
{
string errmsg = "";
var val = args[0].GetString();
string val1;
try
{
val1 = args[1].GetString();
}
catch
{
val1 = "";
}
print.PrintXgtmHB(val, val1);
return JavaScriptValue.CreateString(Newtonsoft.Json.JsonConvert.SerializeObject(new { state = 0, msg = errmsg }));
}));
}
//void PaiZhao(string id, string a);
public static void PaiZhao(JavaScriptValue obj)
{
obj.SetValue("PaiZhao", JavaScriptValue.CreateFunction(args =>
{
string errmsg = print.PaiZhao();
return JavaScriptValue.CreateString(errmsg);
}));
}
#endregion
}
/// <summary>
/// 定义 生日年龄性别 实体
/// </summary>
public class BirthdayAgeSex
{
public string Birthday { get; set; }
public int Age { get; set; }
public string Sex { get; set; }
}
}