添加项目文件。

This commit is contained in:
lxd 2024-12-11 19:48:43 +08:00
parent 458f937646
commit be31f2688f
35 changed files with 4631 additions and 0 deletions

44
App.config Normal file
View File

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1"/></startup>
<appSettings>
<!-- 当前显示 1 超声 2病理-->
<add key="type" value="1"/>
<!-- 请求接口地址 https://pacs.gw12320.com/admin http://114.55.171.231:48080-->
<add key="URL" value="http://114.55.171.231:48080"/>
<!--上传前缀 也就是图片或者视频的访问地址 /video-->
<add key="path" value="/video"/>
<!--FTP -->
<add key="ftppath" value="ftp://114.55.171.231:21/"/>
<add key="username" value="pacs"/>
<add key="password" value="pacs"/>
<add key="path1" value=""/>
<!--当前上传文件模式 0接口 1FTP -->
<add key="model" value="0"/>
<!--接口模式上传文件存放路径 D:\FLYPACS\ftp C:\work\pacs -->
<add key="filepath" value="C:\work\pacs"/>
<!--病理截图存放路径 -->
<add key="blpath" value="D:\工作\病理截图"/>
<!--病理截图快捷键 -->
<add key="strkey" value="B"/>
<!--病理文件访问前缀-->
<add key="blprefix" value="https://114.55.171.231:48082/"/>
<!--区域截图设置默认值-->
<add key="xywh" value="0,10,200,200"/>
<!--医院名称 新增患者需要 5fd5a125-89a8-bbf7-5b4f-bec7467074c2-->
<add key="yymc" value="土贵乌拉乡卫生院"/>
<add key="yycode" value="5fd5a125-89a8-bbf7-5b4f-bec7467074c2"/>
<!--HIS获取患者相关-->
<add key="hisGetTokenUrl" value="https://wlcbhis.gw12320.com:8443/his/web/api/pacs/getPacsToken"/>
<add key="hisGetDataUrl" value="https://wlcbhis.gw12320.com:8443/his/web/api/pacs/getpacsdata"/>
<add key="inHisCode" value="150926461008697"/>
<add key="hisAppkey" value="7653571505643966826"/>
<add key="appsecret" value="z8SVG1NBFY9d74LM"/>
</appSettings>
</configuration>

27
ExamRecord.cs Normal file
View File

@ -0,0 +1,27 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class ExamRecord
{
public string examId { get; set; }
public string pname { get; set; }
public string gender { get; set; }
public string birthday { get; set; }
public string deviceType { get; set; }
public string deviceName { get; set; }
public string seDc { get; set; }
public string examDate { get; set; }
public string examItemCode { get; set; }
public string examItemName { get; set; }
public string reportstatus { get; set; }
public string applicationDate { get; set; }
public string orgId { get; set; }
public string orgName { get; set; }
public string regId { get; set; }
}
}

13
ExamRecords.cs Normal file
View File

@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class ExamRecords
{
public List<ExamRecord> Records { get; set; }
}
}

46
FlyHisEcgdataModel.cs Normal file
View File

@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
public class FlyHisEcgDataModel
{
public int total { get; set; }
public List<patientInfo> rows { get; set; }
}
public class patientInfo
{
public string jianchaid { get; set; }
public string jianchabh { get; set; }
public string name { get; set; }
public string sfz { get; set; }
public string birthdate { get; set; }
public int age { get; set; }
public string sex { get; set; }
public string yiyuanname { get; set; }
public string yiyuanid { get; set; }
public string yiyuancode { get; set; }
public string kaifangsj { get; set; }
public string departmentCode { get; set; }
public string departmentName { get; set; }
public string resDoctorName { get; set; }
public string resDoctorCode { get; set; }
public string nation { get; set; }
public string patientCode { get; set; }
public string visitType { get; set; }
public List<projectsInfo> projects { get; set; }
public int code { get; set; }
public string msg { get; set; }
}
public class projectsInfo
{
public string jianchamingcheng { get; set; }
public string nhbm { get; set; }
public string category { get; set;}
}
}

23
FlyHisTokenMsg.cs Normal file
View File

@ -0,0 +1,23 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
//福乐云HIS的token信息结构
public class FlyHisTokenMsgModel
{
public int code { get; set; }
public dataInfo data { get; set; }
}
public class dataInfo
{
public string access_token { get; set; }
public string expires_in { get; set; }
}
}

267
FtpHelper.cs Normal file
View File

@ -0,0 +1,267 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
public class FtpHelper
{
//基本设置
//private static string ftppath = @"ftp://" + "10.13.1.36" + "/";
private static string ftppath = ConfigurationManager.AppSettings["ftppath"];
private static string username = ConfigurationManager.AppSettings["username"];
private static string password = ConfigurationManager.AppSettings["password"];
//获取FTP上面的文件夹和文件
public static string[] GetFolderAndFileList(string s)
{
string[] getfolderandfilelist;
FtpWebRequest request;
StringBuilder sb = new StringBuilder();
try
{
request = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftppath));
request.UseBinary = true;
request.Credentials = new NetworkCredential(username, password);
request.Method = WebRequestMethods.Ftp.ListDirectory;
request.UseBinary = true;
WebResponse response = request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
string line = reader.ReadLine();
while (line != null)
{
sb.Append(line);
sb.Append("\n");
Console.WriteLine(line);
line = reader.ReadLine();
}
sb.Remove(sb.ToString().LastIndexOf('\n'), 1);
reader.Close();
response.Close();
return sb.ToString().Split('\n');
}
catch (Exception ex)
{
Console.WriteLine("获取FTP上面的文件夹和文件" + ex.Message);
getfolderandfilelist = null;
return getfolderandfilelist;
}
}
//获取FTP上面的文件大小
public static int GetFileSize(string fileName)
{
FtpWebRequest request;
try
{
request = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftppath + fileName));
request.UseBinary = true;
request.Credentials = new NetworkCredential(username, password);
request.Method = WebRequestMethods.Ftp.GetFileSize;
int n = (int)request.GetResponse().ContentLength;
return n;
}
catch (Exception ex)
{
Console.WriteLine("获取FTP上面的文件大小" + ex.Message);
return -1;
}
}
//FTP上传文件
public static string FileUpLoad(string filePath, string objPath = "")
{
try
{
string url = ftppath;
if (objPath != "")
url += objPath + "/";
try
{
FtpWebRequest request = null;
try
{
FileInfo fi = new FileInfo(filePath);
using (FileStream fs = fi.OpenRead())
{
request = (FtpWebRequest)FtpWebRequest.Create(new Uri(url + fi.Name));
request.Credentials = new NetworkCredential(username, password);
request.KeepAlive = false;
request.Method = WebRequestMethods.Ftp.UploadFile;
request.UseBinary = true;
using (Stream stream = request.GetRequestStream())
{
int bufferLength = 5120;
byte[] buffer = new byte[bufferLength];
int i;
while ((i = fs.Read(buffer, 0, bufferLength)) > 0)
{
stream.Write(buffer, 0, i);
}
return "上传成功";
}
}
}
catch (Exception ex)
{
return ex.ToString();
}
finally
{
}
}
catch (Exception ex)
{
return ex.ToString();
}
finally
{
}
}
catch (Exception ex)
{
return ex.ToString();
}
}
//FTP上传文件
public static string FileUpLoad(string filePath, string objPath ,string ftpFileName)
{
try
{
string url = ftppath;
if (objPath != "")
url += objPath + "/";
FtpWebRequest request = null;
FileInfo fi = new FileInfo(filePath);
using (FileStream fs = fi.OpenRead())
{
request = (FtpWebRequest)FtpWebRequest.Create(new Uri(url + ftpFileName));
request.Credentials = new NetworkCredential(username, password);
request.KeepAlive = false;
request.Method = WebRequestMethods.Ftp.UploadFile;
request.UseBinary = true;
request.UsePassive = true;//被动传输模式 设置
using (Stream stream = request.GetRequestStream())
{
int bufferLength = 5120;
byte[] buffer = new byte[bufferLength];
int i;
while ((i = fs.Read(buffer, 0, bufferLength)) > 0)
{
stream.Write(buffer, 0, i);
}
return "上传成功";
}
}
}
catch (Exception ex)
{
return ex.ToString();
}
}
//FTP下载文件
public static void FileDownLoad(string fileName)
{
FtpWebRequest request;
try
{
string downloadPath = @"D:";
FileStream fs = new FileStream(downloadPath + "\\" + fileName, FileMode.Create);
request = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftppath + fileName));
request.Method = WebRequestMethods.Ftp.DownloadFile;
request.UseBinary = true;
request.Credentials = new NetworkCredential(username, password);
request.UsePassive = false;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
int bufferLength = 5120;
int i;
byte[] buffer = new byte[bufferLength];
i = stream.Read(buffer, 0, bufferLength);
while (i > 0)
{
fs.Write(buffer, 0, i);
i = stream.Read(buffer, 0, bufferLength);
}
stream.Close();
fs.Close();
response.Close();
}
catch (Exception ex)
{
Console.WriteLine("FTP下载文件" + ex.Message);
}
}
//FTP删除文件
public static void FileDelete(string fileName)
{
try
{
string uri = ftppath + fileName;
FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
request.UseBinary = true;
request.Credentials = new NetworkCredential(username, password);
request.KeepAlive = false;
request.Method = WebRequestMethods.Ftp.DeleteFile;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
response.Close();
}
catch (Exception ex)
{
Console.WriteLine("FTP删除文件" + ex.Message);
}
}
//FTP新建目录上一级须先存在
public static void MakeDir(string dirName)
{
try
{
string uri = ftppath + dirName;
FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
request.UseBinary = true;
request.Credentials = new NetworkCredential(username, password);
request.Method = WebRequestMethods.Ftp.MakeDirectory;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
response.Close();
}
catch (Exception ex)
{
Console.WriteLine("FTP新建目录" + ex.Message);
}
}
//FTP删除目录上一级须先存在
public static void DelDir(string dirName)
{
try
{
string uri = ftppath + dirName;
FtpWebRequest reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
reqFTP.Credentials = new NetworkCredential(username, password);
reqFTP.Method = WebRequestMethods.Ftp.RemoveDirectory;
FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
response.Close();
}
catch (Exception ex)
{
Console.WriteLine("FTP删除目录" + ex.Message);
}
}
}
}

36
HisInfo.cs Normal file
View File

@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
public class HisInfo
{
public string jianchaid { get; set; }
public string jianchabh { get; set; }
public string name { get; set; }
public string sfz { get; set; }
public string birthdate { get; set; }
public int age { get; set; }
public string sex { get; set; }
public string yiyuanname { get; set; }
public string yiyuancode { get; set; }
public string yiyuanid { get; set; }
public string kaifangsj { get; set; }
public string departmentCode { get; set; }
public string departmentName { get; set; }
public string resDoctorName { get; set; }
public string resDoctorCode { get; set; }
public string nation { get; set; }
public string patientCode { get; set; }
public string visitType { get; set; }
public string jianchamingcheng { get; set; }
public string nhbm { get; set; }
public string category { get; set; }
}
}

163
Imaganddcm.cs Normal file
View File

@ -0,0 +1,163 @@
using System;
using System.Collections.Generic;
using System.Drawing.Imaging;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Dicom;
using Dicom.Imaging;
using Dicom.IO.Buffer;
using System.IO;
using System.Collections;
namespace videoGather
{
public class Imaganddcm
{
/// <summary>
/// 存放转换后的dcm文件名称
/// </summary>
public static ArrayList Array=new ArrayList();
/// <summary>
/// 转换为Dicom格式
/// </summary>
/// <param name="patId">患者ID</param>
/// <param name="pisId">影像唯一号</param>
/// <param name="textId">访问号</param>
/// <param name="patName">患者姓名</param>
/// <param name="inputImagePath">jpg图像</param>
/// <param name="outputDicomPath">dicom输出路径</param>
/// <returns></returns>
public static bool ConvertToDicomImages(string patId, string pisId, string textId, string patName, Bitmap inputImagePath, string outputDicomPath)
{
// 读取图像
// 创建DICOM数据集
var dicomDataset = new DicomDataset
{
{ DicomTag.PatientID, patId },
{ DicomTag.PatientName, patName },
{ DicomTag.StudyInstanceUID, pisId },//StudyUid
{ DicomTag.SeriesInstanceUID, DicomUIDGenerator.GenerateDerivedFromUUID().UID },
{ DicomTag.SOPInstanceUID, DicomUIDGenerator.GenerateDerivedFromUUID().UID },
{ DicomTag.AccessionNumber,textId },//访问号
{ DicomTag.SOPClassUID, DicomUID.SecondaryCaptureImageStorage },
{ DicomTag.PhotometricInterpretation, "RGB" },
{ DicomTag.Rows, (ushort)inputImagePath.Height },
{ DicomTag.Columns, (ushort)inputImagePath.Width },
{ DicomTag.SamplesPerPixel, (ushort)3 },
{ DicomTag.BitsAllocated, (ushort)8 },
{ DicomTag.BitsStored, (ushort)8 },
{ DicomTag.HighBit, (ushort)7 }
};
// 创建像素数据
var pixelData = DicomPixelData.Create(dicomDataset, true);
byte[] imageData = GetImageData(inputImagePath);
pixelData.AddFrame(new MemoryByteBuffer(imageData));
// 创建 DICOM 文件
var dicomFile = new DicomFile(dicomDataset);
string guid= Guid.NewGuid().ToString("D");
// 保存 DICOM 文件
dicomFile.Save(outputDicomPath+"\\"+ guid+".dcm");
Array.Add(outputDicomPath + "\\" + guid + ".dcm");
return File.Exists(outputDicomPath+ "\\" + guid + ".dcm");
}
private static byte[] GetImageData(Bitmap image)
{
// 将图像数据转换为DICOM格式
BitmapData bitmapData = image.LockBits(new Rectangle(0, 0, image.Width, image.Height), ImageLockMode.ReadOnly, PixelFormat.Format24bppRgb);
int actualDataWidth = image.Width * 3;
int byteCount = actualDataWidth * image.Height;
byte[] pixels = new byte[byteCount];
IntPtr ptr = bitmapData.Scan0;
for (int y = 0; y < image.Height; y++)
{
// Copy the data from the bitmap into the array
System.Runtime.InteropServices.Marshal.Copy(ptr + (y * bitmapData.Stride), pixels, y * actualDataWidth, actualDataWidth);
}
image.UnlockBits(bitmapData);
// Swap the Red and Blue channels to convert from RGB to BGR
for (int i = 0; i < byteCount; i += 3)
{
byte temp = pixels[i];
pixels[i] = pixels[i + 2];
pixels[i + 2] = temp;
}
return pixels;
}
public static bool ImportImage(string patId, string pisId, string textId, string patName, Bitmap inputImagePath, string outputDicomPath)
{
//bitmap = GetValidImage(bitmap);
byte[] pixels = GetPixels(inputImagePath);
MemoryByteBuffer buffer = new MemoryByteBuffer(pixels);
DicomDataset dataset = new DicomDataset();
//FillDataset(dataset);
dataset.Add(DicomTag.PhotometricInterpretation, PhotometricInterpretation.Rgb.Value);
dataset.Add(DicomTag.Rows, (ushort)inputImagePath.Height);
dataset.Add(DicomTag.Columns, (ushort)inputImagePath.Width);
dataset.Add(DicomTag.BitsAllocated, (ushort)8);
dataset.Add(DicomTag.SOPClassUID, DicomUIDGenerator.GenerateDerivedFromUUID().UID);
dataset.Add(DicomTag.SOPInstanceUID, DicomUIDGenerator.GenerateDerivedFromUUID().UID);
dataset.Add(DicomTag.PatientID, patId);
dataset.Add(DicomTag.PatientName, patName);
dataset.Add(DicomTag.StudyInstanceUID, pisId);
DicomPixelData pixelData = DicomPixelData.Create(dataset, true);
pixelData.BitsStored = 8;
//pixelData.BitsAllocated = 8;
pixelData.SamplesPerPixel = 3;
pixelData.HighBit = 7;
pixelData.PixelRepresentation = 0;
pixelData.PlanarConfiguration = 0;
pixelData.AddFrame(buffer);
DicomFile dicomfile = new DicomFile(dataset);
string guid = Guid.NewGuid().ToString("D");
Array.Add(outputDicomPath + "\\" + guid + ".dcm");
dicomfile.Save(outputDicomPath + "\\" + guid + ".dcm");
return File.Exists(outputDicomPath + "\\" + guid + ".dcm");
}
public static byte[] GetPixels(Bitmap bitmap)
{
byte[] bytes = new byte[bitmap.Width * bitmap.Height * 3];
int wide = bitmap.Width;
int i = 0;
int height = bitmap.Height;
for (int y = 0; y < height; y++)
{
for (int x = 0; x < wide; x++)
{
var srcColor = bitmap.GetPixel(x, y);
//bytes[i] = (byte)(srcColor.R * .299 + srcColor.G * .587 + srcColor.B * .114);
bytes[i] = srcColor.R;
i++;
bytes[i] = srcColor.G;
i++;
bytes[i] = srcColor.B;
i++;
}
}
return bytes;
}
}
}

15
ImageInfo.cs Normal file
View File

@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class image
{
public string ImageNumber { get; set; }
public string ObjectFile { get; set; }
public string UrlPrefix { get; set; }
}
}

388
InfoForm.Designer.cs generated Normal file
View File

@ -0,0 +1,388 @@
namespace videoGather
{
partial class InfoForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.button1 = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.textjianchaid = new System.Windows.Forms.TextBox();
this.txt_jianchabh = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.txtname = new System.Windows.Forms.TextBox();
this.label3 = new System.Windows.Forms.Label();
this.textsfz = new System.Windows.Forms.TextBox();
this.label4 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.datebirthdate = new System.Windows.Forms.DateTimePicker();
this.textage = new System.Windows.Forms.TextBox();
this.label6 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.comboBoxsex = new System.Windows.Forms.ComboBox();
this.label8 = new System.Windows.Forms.Label();
this.datekaifangsj = new System.Windows.Forms.DateTimePicker();
this.label9 = new System.Windows.Forms.Label();
this.textexamItemName = new System.Windows.Forms.TextBox();
this.textexamItemcode = new System.Windows.Forms.TextBox();
this.label10 = new System.Windows.Forms.Label();
this.button2 = new System.Windows.Forms.Button();
this.button3 = new System.Windows.Forms.Button();
this.button4 = new System.Windows.Forms.Button();
this.button5 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// button1
//
this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.button1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button1.Location = new System.Drawing.Point(306, 625);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(75, 43);
this.button1.TabIndex = 0;
this.button1.Text = "新增";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// label1
//
this.label1.AutoSize = true;
this.label1.BackColor = System.Drawing.Color.Transparent;
this.label1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.ForeColor = System.Drawing.Color.Red;
this.label1.Location = new System.Drawing.Point(5, 28);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(63, 21);
this.label1.TabIndex = 1;
this.label1.Text = "患者ID:";
//
// textjianchaid
//
this.textjianchaid.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.textjianchaid.Location = new System.Drawing.Point(70, 26);
this.textjianchaid.Name = "textjianchaid";
this.textjianchaid.Size = new System.Drawing.Size(161, 29);
this.textjianchaid.TabIndex = 2;
//
// txt_jianchabh
//
this.txt_jianchabh.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txt_jianchabh.Location = new System.Drawing.Point(371, 28);
this.txt_jianchabh.Name = "txt_jianchabh";
this.txt_jianchabh.Size = new System.Drawing.Size(192, 29);
this.txt_jianchabh.TabIndex = 4;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label2.ForeColor = System.Drawing.Color.Red;
this.label2.Location = new System.Drawing.Point(294, 31);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(78, 21);
this.label2.TabIndex = 3;
this.label2.Text = "检查编号:";
//
// txtname
//
this.txtname.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txtname.ForeColor = System.Drawing.SystemColors.WindowText;
this.txtname.Location = new System.Drawing.Point(75, 83);
this.txtname.Name = "txtname";
this.txtname.Size = new System.Drawing.Size(161, 29);
this.txtname.TabIndex = 6;
//
// label3
//
this.label3.AutoSize = true;
this.label3.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label3.ForeColor = System.Drawing.Color.Red;
this.label3.Location = new System.Drawing.Point(-1, 86);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(78, 21);
this.label3.TabIndex = 5;
this.label3.Text = "患者姓名:";
//
// textsfz
//
this.textsfz.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.textsfz.Location = new System.Drawing.Point(603, 83);
this.textsfz.Name = "textsfz";
this.textsfz.Size = new System.Drawing.Size(169, 29);
this.textsfz.TabIndex = 8;
//
// label4
//
this.label4.AutoSize = true;
this.label4.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label4.Location = new System.Drawing.Point(535, 86);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(62, 21);
this.label4.TabIndex = 7;
this.label4.Text = "身份证:";
//
// label5
//
this.label5.AutoSize = true;
this.label5.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label5.Location = new System.Drawing.Point(254, 86);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(78, 21);
this.label5.TabIndex = 9;
this.label5.Text = "出生日期:";
//
// datebirthdate
//
this.datebirthdate.CustomFormat = "yyyy-MM-dd";
this.datebirthdate.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.datebirthdate.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
this.datebirthdate.Location = new System.Drawing.Point(335, 83);
this.datebirthdate.Name = "datebirthdate";
this.datebirthdate.Size = new System.Drawing.Size(192, 26);
this.datebirthdate.TabIndex = 10;
//
// textage
//
this.textage.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.textage.Location = new System.Drawing.Point(717, 28);
this.textage.Name = "textage";
this.textage.Size = new System.Drawing.Size(55, 29);
this.textage.TabIndex = 12;
//
// label6
//
this.label6.AutoSize = true;
this.label6.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label6.Location = new System.Drawing.Point(665, 33);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(46, 21);
this.label6.TabIndex = 11;
this.label6.Text = "年龄:";
//
// label7
//
this.label7.AutoSize = true;
this.label7.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label7.Location = new System.Drawing.Point(23, 138);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(46, 21);
this.label7.TabIndex = 13;
this.label7.Text = "性别:";
//
// comboBoxsex
//
this.comboBoxsex.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.comboBoxsex.FormattingEnabled = true;
this.comboBoxsex.Items.AddRange(new object[] {
"男",
"女"});
this.comboBoxsex.Location = new System.Drawing.Point(75, 136);
this.comboBoxsex.Name = "comboBoxsex";
this.comboBoxsex.Size = new System.Drawing.Size(161, 28);
this.comboBoxsex.TabIndex = 15;
//
// label8
//
this.label8.AutoSize = true;
this.label8.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label8.ForeColor = System.Drawing.Color.DarkRed;
this.label8.Location = new System.Drawing.Point(251, 143);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(78, 21);
this.label8.TabIndex = 16;
this.label8.Text = "开方时间:";
//
// datekaifangsj
//
this.datekaifangsj.CustomFormat = "yyyy-MM-dd HH:mm:ss";
this.datekaifangsj.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.datekaifangsj.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
this.datekaifangsj.Location = new System.Drawing.Point(335, 139);
this.datekaifangsj.Name = "datekaifangsj";
this.datekaifangsj.Size = new System.Drawing.Size(192, 26);
this.datekaifangsj.TabIndex = 17;
//
// label9
//
this.label9.AutoSize = true;
this.label9.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label9.ForeColor = System.Drawing.Color.Red;
this.label9.Location = new System.Drawing.Point(527, 142);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(78, 21);
this.label9.TabIndex = 18;
this.label9.Text = "检查名称:";
//
// textexamItemName
//
this.textexamItemName.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.textexamItemName.ForeColor = System.Drawing.SystemColors.WindowText;
this.textexamItemName.Location = new System.Drawing.Point(603, 139);
this.textexamItemName.Name = "textexamItemName";
this.textexamItemName.Size = new System.Drawing.Size(169, 29);
this.textexamItemName.TabIndex = 19;
//
// textexamItemcode
//
this.textexamItemcode.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.textexamItemcode.Location = new System.Drawing.Point(75, 197);
this.textexamItemcode.Name = "textexamItemcode";
this.textexamItemcode.Size = new System.Drawing.Size(161, 29);
this.textexamItemcode.TabIndex = 21;
//
// label10
//
this.label10.AutoSize = true;
this.label10.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label10.ForeColor = System.Drawing.Color.Red;
this.label10.Location = new System.Drawing.Point(-1, 200);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(78, 21);
this.label10.TabIndex = 20;
this.label10.Text = "项目编码:";
//
// button2
//
this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.button2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button2.Location = new System.Drawing.Point(400, 625);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(75, 43);
this.button2.TabIndex = 22;
this.button2.Text = "取消";
this.button2.UseVisualStyleBackColor = true;
this.button2.Click += new System.EventHandler(this.button2_Click);
//
// button3
//
this.button3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.button3.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button3.Location = new System.Drawing.Point(567, 28);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(59, 32);
this.button3.TabIndex = 23;
this.button3.Text = "生成";
this.button3.UseVisualStyleBackColor = true;
this.button3.Click += new System.EventHandler(this.button3_Click);
//
// button4
//
this.button4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.button4.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button4.Location = new System.Drawing.Point(242, 197);
this.button4.Name = "button4";
this.button4.Size = new System.Drawing.Size(59, 32);
this.button4.TabIndex = 24;
this.button4.Text = "生成";
this.button4.UseVisualStyleBackColor = true;
this.button4.Click += new System.EventHandler(this.button4_Click);
//
// button5
//
this.button5.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.button5.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button5.Location = new System.Drawing.Point(232, 25);
this.button5.Name = "button5";
this.button5.Size = new System.Drawing.Size(59, 32);
this.button5.TabIndex = 25;
this.button5.Text = "生成";
this.button5.UseVisualStyleBackColor = true;
this.button5.Click += new System.EventHandler(this.button5_Click);
//
// InfoForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(800, 680);
this.Controls.Add(this.button5);
this.Controls.Add(this.button4);
this.Controls.Add(this.button3);
this.Controls.Add(this.button2);
this.Controls.Add(this.textexamItemcode);
this.Controls.Add(this.label10);
this.Controls.Add(this.textexamItemName);
this.Controls.Add(this.label9);
this.Controls.Add(this.datekaifangsj);
this.Controls.Add(this.label8);
this.Controls.Add(this.comboBoxsex);
this.Controls.Add(this.label7);
this.Controls.Add(this.textage);
this.Controls.Add(this.label6);
this.Controls.Add(this.datebirthdate);
this.Controls.Add(this.label5);
this.Controls.Add(this.textsfz);
this.Controls.Add(this.label4);
this.Controls.Add(this.txtname);
this.Controls.Add(this.label3);
this.Controls.Add(this.txt_jianchabh);
this.Controls.Add(this.label2);
this.Controls.Add(this.textjianchaid);
this.Controls.Add(this.label1);
this.Controls.Add(this.button1);
this.MaximizeBox = false;
this.Name = "InfoForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "新增患者";
this.Load += new System.EventHandler(this.InfoForm_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Button button1;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TextBox textjianchaid;
private System.Windows.Forms.TextBox txt_jianchabh;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox txtname;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.TextBox textsfz;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.DateTimePicker datebirthdate;
private System.Windows.Forms.TextBox textage;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.ComboBox comboBoxsex;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.DateTimePicker datekaifangsj;
private System.Windows.Forms.Label label9;
private System.Windows.Forms.TextBox textexamItemName;
private System.Windows.Forms.TextBox textexamItemcode;
private System.Windows.Forms.Label label10;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.Button button4;
private System.Windows.Forms.Button button5;
}
}

115
InfoForm.cs Normal file
View File

@ -0,0 +1,115 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace videoGather
{
public partial class InfoForm : Form
{
public InfoForm()
{
InitializeComponent();
}
public HisInfo info;
/// <summary>
/// 新增
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
if (!inspect())
{
return;
}
info = new HisInfo();
info.jianchaid = textjianchaid.Text.Trim();
info.name = txtname.Text.Trim();
info.jianchabh = txt_jianchabh.Text.Trim();
info.sfz = textsfz.Text.Trim();
info.birthdate = datebirthdate.Value.ToString("yyyy-MM-dd");
info.age = string.IsNullOrEmpty(textage.Text.Trim())?0:int.Parse(textage.Text.Trim());
info.sex = comboBoxsex.Text;
info.yiyuanname = ConfigurationManager.AppSettings["yymc"];
info.yiyuancode = ConfigurationManager.AppSettings["yycode"];
info.kaifangsj = datekaifangsj.Value.ToString("yyyy-MM-dd HH:mm:ss");
info.jianchamingcheng = textexamItemName.Text;
info.nhbm = textexamItemcode.Text;
this.DialogResult = DialogResult.OK;
}
/// <summary>
/// 初始化
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void InfoForm_Load(object sender, EventArgs e)
{
datekaifangsj.Value = DateTime.Now;
}
private void button2_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.Cancel;
}
/// <summary>
/// 生成项目编码
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button4_Click(object sender, EventArgs e)
{
Guid guid = Guid.NewGuid();
string guidString = guid.ToString("N"); // 没有分隔符
textexamItemcode.Text = "US" + guidString;
}
/// <summary>
/// 生成检查编号
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button3_Click(object sender, EventArgs e)
{
Guid guid = Guid.NewGuid();
string guidString = guid.ToString("N"); // 没有分隔符
txt_jianchabh.Text = guidString;
}
/// <summary>
/// 验证必填
/// </summary>
private bool inspect()
{
bool bol=true;
if (string.IsNullOrEmpty(textjianchaid.Text.Trim()) ||
string.IsNullOrEmpty(txt_jianchabh.Text.Trim()) ||
string.IsNullOrEmpty(txtname.Text.Trim()) ||
string.IsNullOrEmpty(textexamItemName.Text.Trim()) ||
string.IsNullOrEmpty(textexamItemcode.Text.Trim()))
{
MessageBox.Show("必填字段不能为空");
return false;
}
return bol;
}
/// <summary>
/// 生成患者ID
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button5_Click(object sender, EventArgs e)
{
string time= DateTime.Now.ToString("yyyyMMddHHmmss");
textjianchaid.Text = "M"+time;
}
}
}

120
InfoForm.resx Normal file
View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

15
MsgInfo.cs Normal file
View File

@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class MsgInfo
{
public string code { get; set; }
public string data { get; set; }
public string msg { get; set; }
}
}

20
Patient.cs Normal file
View File

@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class Patient
{
public string PatientID { get; set; }
public string PatientNam { get; set; }
public string PatientBir { get; set; }
public string PatientSex { get; set; }
public string OrgId { get; set; }
public string OrgName { get; set; }
public string StudyDate { get; set; }
public List<Study> Studies { get; set; }
}
}

62
ProcessForm.Designer.cs generated Normal file
View File

@ -0,0 +1,62 @@
namespace videoGather
{
partial class ProcessForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.progressBar1 = new System.Windows.Forms.ProgressBar();
this.SuspendLayout();
//
// progressBar1
//
this.progressBar1.Location = new System.Drawing.Point(12, 23);
this.progressBar1.Name = "progressBar1";
this.progressBar1.Size = new System.Drawing.Size(362, 23);
this.progressBar1.TabIndex = 0;
//
// ProcessForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(386, 69);
this.Controls.Add(this.progressBar1);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "ProcessForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "正在上传";
this.TopMost = true;
this.Load += new System.EventHandler(this.ProcessForm_Load);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.ProgressBar progressBar1;
}
}

44
ProcessForm.cs Normal file
View File

@ -0,0 +1,44 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace videoGather
{
public partial class ProcessForm : Form
{
private BackgroundWorker backgroundWorker1;
public ProcessForm(BackgroundWorker backgroundWorker1)
{
InitializeComponent();
this.backgroundWorker1 = backgroundWorker1;
this.backgroundWorker1.ProgressChanged += new ProgressChangedEventHandler(backgroundWorker1_ProgressChanged);
this.backgroundWorker1.RunWorkerCompleted += new RunWorkerCompletedEventHandler(backgroundWorker1_RunWorkerCompleted);
}
private void ProcessForm_Load(object sender, EventArgs e)
{
}
void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
this.Close();//执行完之后,直接关闭页面
}
void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
this.progressBar1.Value = e.ProgressPercentage;
}
private void button1_Click(object sender, EventArgs e)
{
this.backgroundWorker1.CancelAsync();
this.Close();
}
}
}

120
ProcessForm.resx Normal file
View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

23
Program.cs Normal file
View File

@ -0,0 +1,23 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using videoGather;
namespace videoGather
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new video());
}
}
}

View File

@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("视频采集")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("AForge拍照及录像")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("2990c129-31d9-4aa3-b10d-d2773f140ff4")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

63
Properties/Resources.Designer.cs generated Normal file
View File

@ -0,0 +1,63 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace videoGather.Properties {
using System;
/// <summary>
/// 一个强类型的资源类,用于查找本地化的字符串等。
/// </summary>
// 此类是由 StronglyTypedResourceBuilder
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// 返回此类使用的缓存的 ResourceManager 实例。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("videoGather.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// 重写当前线程的 CurrentUICulture 属性,对
/// 使用此强类型资源类的所有资源查找执行重写。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
}
}

117
Properties/Resources.resx Normal file
View File

@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

26
Properties/Settings.Designer.cs generated Normal file
View File

@ -0,0 +1,26 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace videoGather.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.10.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
}
}

View File

@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

23
SaveFile.cs Normal file
View File

@ -0,0 +1,23 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class SaveFile
{
public string folderPath { get; set; }
public string imagebase { get; set; }
public string fileName { get; set; }
public string extension { get; set; }
public string orgId { get; set; }
}
}

16
Series.cs Normal file
View File

@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class Series
{
public string SeriesNumb { get; set; }
public string SeriesDesc { get; set; }
public string Modality { get; set; }
public List<image> image { get; set; }
}
}

16
StudyInfo.cs Normal file
View File

@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class Study
{
public string StudyDescr { get; set; }
public string StudyID { get; set; }
public string StudyModal { get; set; }
public List<Series> Series { get; set; }
}
}

22
insimagescreenshotVO.cs Normal file
View File

@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace videoGather
{
internal class insimagescreenshotVO
{
public string id { get; set; }
public string imagebase { get; set; }
public string imgType { get; set; }
public string imgDescription { get; set; }
public string orgId { get; set; }
}
}

16
packages.config Normal file
View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Accord" version="3.8.2-alpha" targetFramework="net461" />
<package id="Accord.Video" version="3.8.2-alpha" targetFramework="net461" />
<package id="Accord.Video.FFMPEG" version="3.8.2-alpha" targetFramework="net461" />
<package id="AForge" version="2.2.5" targetFramework="net461" />
<package id="AForge.Controls" version="2.2.5" targetFramework="net461" />
<package id="AForge.Imaging" version="2.2.5" targetFramework="net461" />
<package id="AForge.Math" version="2.2.5" targetFramework="net461" />
<package id="AForge.Video" version="2.2.5" targetFramework="net461" />
<package id="AForge.Video.DirectShow" version="2.2.5" targetFramework="net461" />
<package id="AForge.Video.FFMPEG" version="2.2.5.1-rc" targetFramework="net461" />
<package id="fo-dicom" version="4.0.0" targetFramework="net48" />
<package id="fo-dicom.Desktop" version="4.0.0" targetFramework="net48" />
<package id="Newtonsoft.Json" version="13.0.3" targetFramework="net48" />
</packages>

633
video.Designer.cs generated Normal file
View File

@ -0,0 +1,633 @@

namespace videoGather
{
partial class video
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows
/// <summary>
/// 设计器支持所需的方法 - 不要修改
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(video));
this.cb_CameraSelect = new System.Windows.Forms.ComboBox();
this.btn_Capture = new System.Windows.Forms.Button();
this.btn_Close = new System.Windows.Forms.Button();
this.gb_ButtonBox = new System.Windows.Forms.GroupBox();
this.button6 = new System.Windows.Forms.Button();
this.label3 = new System.Windows.Forms.Label();
this.btn_Connect = new System.Windows.Forms.Button();
this.button1 = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.button4 = new System.Windows.Forms.Button();
this.label6 = new System.Windows.Forms.Label();
this.lab_Time = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.btn_EndVideo = new System.Windows.Forms.Button();
this.btn_PauseVideo = new System.Windows.Forms.Button();
this.btn_StartVideo = new System.Windows.Forms.Button();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.button5 = new System.Windows.Forms.Button();
this.txt_h = new System.Windows.Forms.TextBox();
this.lab_h = new System.Windows.Forms.Label();
this.txt_w = new System.Windows.Forms.TextBox();
this.lab_w = new System.Windows.Forms.Label();
this.txt_y = new System.Windows.Forms.TextBox();
this.lab_y = new System.Windows.Forms.Label();
this.txt_x = new System.Windows.Forms.TextBox();
this.lab_x = new System.Windows.Forms.Label();
this.checkBox1 = new System.Windows.Forms.CheckBox();
this.label5 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.button3 = new System.Windows.Forms.Button();
this.button2 = new System.Windows.Forms.Button();
this.groupBox3 = new System.Windows.Forms.GroupBox();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.dGVPatient = new System.Windows.Forms.DataGridView();
this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.name = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.sex = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.age = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.jianchamingcheng = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.kaifangsi = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.gb_CameraPanel = new System.Windows.Forms.GroupBox();
this.vsp_Panel = new AForge.Controls.VideoSourcePlayer();
this.backgroundWorker1 = new System.ComponentModel.BackgroundWorker();
this.gb_ButtonBox.SuspendLayout();
this.groupBox2.SuspendLayout();
this.groupBox3.SuspendLayout();
this.groupBox1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dGVPatient)).BeginInit();
this.gb_CameraPanel.SuspendLayout();
this.SuspendLayout();
//
// cb_CameraSelect
//
this.cb_CameraSelect.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.cb_CameraSelect.FormattingEnabled = true;
this.cb_CameraSelect.Location = new System.Drawing.Point(24, 140);
this.cb_CameraSelect.Margin = new System.Windows.Forms.Padding(2);
this.cb_CameraSelect.Name = "cb_CameraSelect";
this.cb_CameraSelect.Size = new System.Drawing.Size(150, 24);
this.cb_CameraSelect.TabIndex = 12;
//
// btn_Capture
//
this.btn_Capture.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btn_Capture.Location = new System.Drawing.Point(19, 104);
this.btn_Capture.Margin = new System.Windows.Forms.Padding(2);
this.btn_Capture.Name = "btn_Capture";
this.btn_Capture.Size = new System.Drawing.Size(98, 31);
this.btn_Capture.TabIndex = 4;
this.btn_Capture.Text = "截图(F9)";
this.btn_Capture.UseVisualStyleBackColor = true;
this.btn_Capture.Click += new System.EventHandler(this.btn_Capture_Click);
//
// btn_Close
//
this.btn_Close.Location = new System.Drawing.Point(255, 138);
this.btn_Close.Margin = new System.Windows.Forms.Padding(2);
this.btn_Close.Name = "btn_Close";
this.btn_Close.Size = new System.Drawing.Size(52, 28);
this.btn_Close.TabIndex = 15;
this.btn_Close.Text = "关闭源";
this.btn_Close.UseVisualStyleBackColor = true;
this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
//
// gb_ButtonBox
//
this.gb_ButtonBox.Controls.Add(this.button6);
this.gb_ButtonBox.Controls.Add(this.label3);
this.gb_ButtonBox.Controls.Add(this.btn_Connect);
this.gb_ButtonBox.Controls.Add(this.button1);
this.gb_ButtonBox.Controls.Add(this.label1);
this.gb_ButtonBox.Controls.Add(this.button4);
this.gb_ButtonBox.Controls.Add(this.label6);
this.gb_ButtonBox.Controls.Add(this.btn_Close);
this.gb_ButtonBox.Controls.Add(this.lab_Time);
this.gb_ButtonBox.Controls.Add(this.label2);
this.gb_ButtonBox.Controls.Add(this.btn_EndVideo);
this.gb_ButtonBox.Controls.Add(this.btn_PauseVideo);
this.gb_ButtonBox.Controls.Add(this.btn_StartVideo);
this.gb_ButtonBox.Controls.Add(this.btn_Capture);
this.gb_ButtonBox.Controls.Add(this.cb_CameraSelect);
this.gb_ButtonBox.Dock = System.Windows.Forms.DockStyle.Top;
this.gb_ButtonBox.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.gb_ButtonBox.Location = new System.Drawing.Point(3, 157);
this.gb_ButtonBox.Margin = new System.Windows.Forms.Padding(2);
this.gb_ButtonBox.Name = "gb_ButtonBox";
this.gb_ButtonBox.Padding = new System.Windows.Forms.Padding(2);
this.gb_ButtonBox.Size = new System.Drawing.Size(556, 204);
this.gb_ButtonBox.TabIndex = 16;
this.gb_ButtonBox.TabStop = false;
this.gb_ButtonBox.Text = "功能区";
this.gb_ButtonBox.Enter += new System.EventHandler(this.gb_ButtonBox_Enter);
//
// button6
//
this.button6.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button6.Location = new System.Drawing.Point(400, 173);
this.button6.Margin = new System.Windows.Forms.Padding(2);
this.button6.Name = "button6";
this.button6.Size = new System.Drawing.Size(127, 31);
this.button6.TabIndex = 30;
this.button6.Text = "添加患者";
this.button6.UseVisualStyleBackColor = true;
this.button6.Click += new System.EventHandler(this.button6_Click);
//
// label3
//
this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.label3.AutoSize = true;
this.label3.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label3.ForeColor = System.Drawing.Color.Red;
this.label3.Location = new System.Drawing.Point(2, 182);
this.label3.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(109, 16);
this.label3.TabIndex = 29;
this.label3.Text = "双击选择患者";
//
// btn_Connect
//
this.btn_Connect.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btn_Connect.Location = new System.Drawing.Point(199, 138);
this.btn_Connect.Margin = new System.Windows.Forms.Padding(2);
this.btn_Connect.Name = "btn_Connect";
this.btn_Connect.Size = new System.Drawing.Size(52, 27);
this.btn_Connect.TabIndex = 17;
this.btn_Connect.Text = "连接";
this.btn_Connect.UseVisualStyleBackColor = true;
this.btn_Connect.Click += new System.EventHandler(this.btn_Connect_Click);
//
// button1
//
this.button1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button1.Location = new System.Drawing.Point(400, 139);
this.button1.Margin = new System.Windows.Forms.Padding(2);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(127, 31);
this.button1.TabIndex = 28;
this.button1.Text = "刷新患者(HIS)";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click_1);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(226, 111);
this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(15, 16);
this.label1.TabIndex = 26;
this.label1.Text = "0";
//
// button4
//
this.button4.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button4.Location = new System.Drawing.Point(400, 23);
this.button4.Margin = new System.Windows.Forms.Padding(2);
this.button4.Name = "button4";
this.button4.Size = new System.Drawing.Size(127, 112);
this.button4.TabIndex = 16;
this.button4.Text = "患者数据上传";
this.button4.UseVisualStyleBackColor = true;
this.button4.Click += new System.EventHandler(this.button4_Click);
//
// label6
//
this.label6.AutoSize = true;
this.label6.Location = new System.Drawing.Point(129, 111);
this.label6.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(87, 16);
this.label6.TabIndex = 27;
this.label6.Text = "截图数量:";
//
// lab_Time
//
this.lab_Time.AutoSize = true;
this.lab_Time.Location = new System.Drawing.Point(116, 74);
this.lab_Time.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lab_Time.Name = "lab_Time";
this.lab_Time.Size = new System.Drawing.Size(87, 16);
this.lab_Time.TabIndex = 13;
this.lab_Time.Text = "000000";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(25, 74);
this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(87, 16);
this.label2.TabIndex = 12;
this.label2.Text = "录制时间:";
//
// btn_EndVideo
//
this.btn_EndVideo.Location = new System.Drawing.Point(255, 23);
this.btn_EndVideo.Margin = new System.Windows.Forms.Padding(2);
this.btn_EndVideo.Name = "btn_EndVideo";
this.btn_EndVideo.Size = new System.Drawing.Size(112, 32);
this.btn_EndVideo.TabIndex = 11;
this.btn_EndVideo.Text = "停止录像(F8)";
this.btn_EndVideo.UseVisualStyleBackColor = true;
this.btn_EndVideo.Click += new System.EventHandler(this.btn_EndVideo_Click);
//
// btn_PauseVideo
//
this.btn_PauseVideo.Location = new System.Drawing.Point(132, 23);
this.btn_PauseVideo.Margin = new System.Windows.Forms.Padding(2);
this.btn_PauseVideo.Name = "btn_PauseVideo";
this.btn_PauseVideo.Size = new System.Drawing.Size(119, 32);
this.btn_PauseVideo.TabIndex = 10;
this.btn_PauseVideo.Text = "暂停录像(F7)";
this.btn_PauseVideo.UseVisualStyleBackColor = true;
this.btn_PauseVideo.Click += new System.EventHandler(this.btn_PauseVideo_Click);
//
// btn_StartVideo
//
this.btn_StartVideo.Location = new System.Drawing.Point(15, 23);
this.btn_StartVideo.Margin = new System.Windows.Forms.Padding(2);
this.btn_StartVideo.Name = "btn_StartVideo";
this.btn_StartVideo.Size = new System.Drawing.Size(113, 32);
this.btn_StartVideo.TabIndex = 9;
this.btn_StartVideo.Text = "开始录像(F6)";
this.btn_StartVideo.UseVisualStyleBackColor = true;
this.btn_StartVideo.Click += new System.EventHandler(this.btn_StartVideo_Click);
//
// groupBox2
//
this.groupBox2.Controls.Add(this.button5);
this.groupBox2.Controls.Add(this.txt_h);
this.groupBox2.Controls.Add(this.lab_h);
this.groupBox2.Controls.Add(this.txt_w);
this.groupBox2.Controls.Add(this.lab_w);
this.groupBox2.Controls.Add(this.txt_y);
this.groupBox2.Controls.Add(this.lab_y);
this.groupBox2.Controls.Add(this.txt_x);
this.groupBox2.Controls.Add(this.lab_x);
this.groupBox2.Controls.Add(this.checkBox1);
this.groupBox2.Controls.Add(this.label5);
this.groupBox2.Controls.Add(this.label4);
this.groupBox2.Controls.Add(this.button3);
this.groupBox2.Controls.Add(this.button2);
this.groupBox2.Dock = System.Windows.Forms.DockStyle.Top;
this.groupBox2.Font = new System.Drawing.Font("宋体", 12F);
this.groupBox2.Location = new System.Drawing.Point(3, 17);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(556, 140);
this.groupBox2.TabIndex = 18;
this.groupBox2.TabStop = false;
this.groupBox2.Text = "病理";
//
// button5
//
this.button5.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button5.Location = new System.Drawing.Point(388, 98);
this.button5.Margin = new System.Windows.Forms.Padding(2);
this.button5.Name = "button5";
this.button5.Size = new System.Drawing.Size(127, 31);
this.button5.TabIndex = 30;
this.button5.Text = "图片转换成DCM";
this.button5.UseVisualStyleBackColor = true;
this.button5.Visible = false;
this.button5.Click += new System.EventHandler(this.button5_Click);
//
// txt_h
//
this.txt_h.Location = new System.Drawing.Point(487, 25);
this.txt_h.Name = "txt_h";
this.txt_h.Size = new System.Drawing.Size(28, 26);
this.txt_h.TabIndex = 25;
//
// lab_h
//
this.lab_h.AutoSize = true;
this.lab_h.Location = new System.Drawing.Point(466, 31);
this.lab_h.Name = "lab_h";
this.lab_h.Size = new System.Drawing.Size(15, 16);
this.lab_h.TabIndex = 24;
this.lab_h.Text = "h";
//
// txt_w
//
this.txt_w.Location = new System.Drawing.Point(430, 25);
this.txt_w.Name = "txt_w";
this.txt_w.Size = new System.Drawing.Size(28, 26);
this.txt_w.TabIndex = 23;
//
// lab_w
//
this.lab_w.AutoSize = true;
this.lab_w.Location = new System.Drawing.Point(409, 31);
this.lab_w.Name = "lab_w";
this.lab_w.Size = new System.Drawing.Size(15, 16);
this.lab_w.TabIndex = 22;
this.lab_w.Text = "w";
//
// txt_y
//
this.txt_y.Location = new System.Drawing.Point(377, 25);
this.txt_y.Name = "txt_y";
this.txt_y.Size = new System.Drawing.Size(28, 26);
this.txt_y.TabIndex = 21;
//
// lab_y
//
this.lab_y.AutoSize = true;
this.lab_y.Location = new System.Drawing.Point(356, 31);
this.lab_y.Name = "lab_y";
this.lab_y.Size = new System.Drawing.Size(15, 16);
this.lab_y.TabIndex = 20;
this.lab_y.Text = "y";
//
// txt_x
//
this.txt_x.Location = new System.Drawing.Point(319, 25);
this.txt_x.Name = "txt_x";
this.txt_x.Size = new System.Drawing.Size(28, 26);
this.txt_x.TabIndex = 19;
//
// lab_x
//
this.lab_x.AutoSize = true;
this.lab_x.Location = new System.Drawing.Point(298, 28);
this.lab_x.Name = "lab_x";
this.lab_x.Size = new System.Drawing.Size(15, 16);
this.lab_x.TabIndex = 18;
this.lab_x.Text = "x";
//
// checkBox1
//
this.checkBox1.AutoSize = true;
this.checkBox1.Location = new System.Drawing.Point(145, 27);
this.checkBox1.Name = "checkBox1";
this.checkBox1.Size = new System.Drawing.Size(154, 20);
this.checkBox1.TabIndex = 17;
this.checkBox1.Text = "是否开启区域截图";
this.checkBox1.UseVisualStyleBackColor = true;
this.checkBox1.Click += new System.EventHandler(this.checkBox1_Click);
//
// label5
//
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(239, 66);
this.label5.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(15, 16);
this.label5.TabIndex = 16;
this.label5.Text = "0";
//
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(142, 66);
this.label4.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(87, 16);
this.label4.TabIndex = 16;
this.label4.Text = "截图数量:";
//
// button3
//
this.button3.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button3.Location = new System.Drawing.Point(19, 59);
this.button3.Margin = new System.Windows.Forms.Padding(2);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(112, 31);
this.button3.TabIndex = 16;
this.button3.Text = "上传";
this.button3.UseVisualStyleBackColor = true;
this.button3.Click += new System.EventHandler(this.button3_Click);
//
// button2
//
this.button2.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button2.Location = new System.Drawing.Point(19, 24);
this.button2.Margin = new System.Windows.Forms.Padding(2);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(109, 31);
this.button2.TabIndex = 16;
this.button2.Text = "开启截图";
this.button2.UseVisualStyleBackColor = true;
this.button2.Click += new System.EventHandler(this.button2_Click);
//
// groupBox3
//
this.groupBox3.Controls.Add(this.groupBox1);
this.groupBox3.Controls.Add(this.gb_ButtonBox);
this.groupBox3.Controls.Add(this.groupBox2);
this.groupBox3.Dock = System.Windows.Forms.DockStyle.Left;
this.groupBox3.Location = new System.Drawing.Point(0, 0);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(562, 994);
this.groupBox3.TabIndex = 19;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "操作";
//
// groupBox1
//
this.groupBox1.Controls.Add(this.dGVPatient);
this.groupBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.groupBox1.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.groupBox1.Location = new System.Drawing.Point(3, 361);
this.groupBox1.Margin = new System.Windows.Forms.Padding(2);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Padding = new System.Windows.Forms.Padding(2);
this.groupBox1.Size = new System.Drawing.Size(556, 630);
this.groupBox1.TabIndex = 19;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "患者信息";
//
// dGVPatient
//
this.dGVPatient.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dGVPatient.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.Column1,
this.name,
this.sex,
this.age,
this.jianchamingcheng,
this.kaifangsi});
this.dGVPatient.Dock = System.Windows.Forms.DockStyle.Fill;
this.dGVPatient.Location = new System.Drawing.Point(2, 21);
this.dGVPatient.Name = "dGVPatient";
this.dGVPatient.ReadOnly = true;
this.dGVPatient.RowTemplate.Height = 23;
this.dGVPatient.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dGVPatient.Size = new System.Drawing.Size(552, 607);
this.dGVPatient.TabIndex = 0;
this.dGVPatient.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dGVPatient_CellDoubleClick);
//
// Column1
//
this.Column1.DataPropertyName = "jianchaid";
this.Column1.HeaderText = "检查ID";
this.Column1.Name = "Column1";
this.Column1.ReadOnly = true;
//
// name
//
this.name.DataPropertyName = "name";
this.name.HeaderText = "姓名";
this.name.Name = "name";
this.name.ReadOnly = true;
this.name.Width = 70;
//
// sex
//
this.sex.DataPropertyName = "sex";
this.sex.HeaderText = "性别";
this.sex.Name = "sex";
this.sex.ReadOnly = true;
this.sex.Width = 70;
//
// age
//
this.age.DataPropertyName = "age";
this.age.HeaderText = "年龄";
this.age.Name = "age";
this.age.ReadOnly = true;
this.age.Width = 70;
//
// jianchamingcheng
//
this.jianchamingcheng.DataPropertyName = "jianchamingcheng";
this.jianchamingcheng.HeaderText = "检查项目";
this.jianchamingcheng.Name = "jianchamingcheng";
this.jianchamingcheng.ReadOnly = true;
//
// kaifangsi
//
this.kaifangsi.DataPropertyName = "kaifangsj";
this.kaifangsi.HeaderText = "日期";
this.kaifangsi.Name = "kaifangsi";
this.kaifangsi.ReadOnly = true;
//
// gb_CameraPanel
//
this.gb_CameraPanel.Controls.Add(this.vsp_Panel);
this.gb_CameraPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.gb_CameraPanel.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.gb_CameraPanel.Location = new System.Drawing.Point(562, 0);
this.gb_CameraPanel.Margin = new System.Windows.Forms.Padding(2);
this.gb_CameraPanel.Name = "gb_CameraPanel";
this.gb_CameraPanel.Padding = new System.Windows.Forms.Padding(2);
this.gb_CameraPanel.Size = new System.Drawing.Size(1153, 994);
this.gb_CameraPanel.TabIndex = 20;
this.gb_CameraPanel.TabStop = false;
this.gb_CameraPanel.Text = "拍摄";
//
// vsp_Panel
//
this.vsp_Panel.Dock = System.Windows.Forms.DockStyle.Fill;
this.vsp_Panel.Location = new System.Drawing.Point(2, 21);
this.vsp_Panel.Margin = new System.Windows.Forms.Padding(2);
this.vsp_Panel.Name = "vsp_Panel";
this.vsp_Panel.Size = new System.Drawing.Size(1149, 971);
this.vsp_Panel.TabIndex = 1;
this.vsp_Panel.VideoSource = null;
//
// backgroundWorker1
//
this.backgroundWorker1.WorkerReportsProgress = true;
this.backgroundWorker1.WorkerSupportsCancellation = true;
this.backgroundWorker1.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorker1_DoWork);
this.backgroundWorker1.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorker1_RunWorkerCompleted);
//
// video
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1715, 994);
this.Controls.Add(this.gb_CameraPanel);
this.Controls.Add(this.groupBox3);
this.DoubleBuffered = true;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Margin = new System.Windows.Forms.Padding(2);
this.Name = "video";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "视频采集";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
this.Load += new System.EventHandler(this.Form1_Load);
this.gb_ButtonBox.ResumeLayout(false);
this.gb_ButtonBox.PerformLayout();
this.groupBox2.ResumeLayout(false);
this.groupBox2.PerformLayout();
this.groupBox3.ResumeLayout(false);
this.groupBox1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dGVPatient)).EndInit();
this.gb_CameraPanel.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.ComboBox cb_CameraSelect;
private System.Windows.Forms.Button btn_Capture;
private System.Windows.Forms.Button btn_Close;
private System.Windows.Forms.GroupBox gb_ButtonBox;
private System.Windows.Forms.Button btn_EndVideo;
private System.Windows.Forms.Button btn_PauseVideo;
private System.Windows.Forms.Button btn_StartVideo;
private System.Windows.Forms.Button btn_Connect;
private System.Windows.Forms.Label lab_Time;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.GroupBox groupBox2;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.TextBox txt_h;
private System.Windows.Forms.Label lab_h;
private System.Windows.Forms.TextBox txt_w;
private System.Windows.Forms.Label lab_w;
private System.Windows.Forms.TextBox txt_y;
private System.Windows.Forms.Label lab_y;
private System.Windows.Forms.TextBox txt_x;
private System.Windows.Forms.Label lab_x;
private System.Windows.Forms.CheckBox checkBox1;
private System.Windows.Forms.GroupBox groupBox3;
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.GroupBox gb_CameraPanel;
private AForge.Controls.VideoSourcePlayer vsp_Panel;
private System.Windows.Forms.DataGridView dGVPatient;
private System.Windows.Forms.DataGridViewTextBoxColumn Column1;
private System.Windows.Forms.DataGridViewTextBoxColumn name;
private System.Windows.Forms.DataGridViewTextBoxColumn sex;
private System.Windows.Forms.DataGridViewTextBoxColumn age;
private System.Windows.Forms.DataGridViewTextBoxColumn jianchamingcheng;
private System.Windows.Forms.DataGridViewTextBoxColumn kaifangsi;
private System.Windows.Forms.Button button4;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label6;
private System.ComponentModel.BackgroundWorker backgroundWorker1;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Button button5;
private System.Windows.Forms.Button button6;
}
}

1734
video.cs Normal file

File diff suppressed because it is too large Load Diff

161
video.resx Normal file
View File

@ -0,0 +1,161 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="name.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="sex.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="age.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="jianchamingcheng.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="kaifangsi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="backgroundWorker1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAADJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQoAAAAAAADJsQrJsQrJ
sQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrIsArJsQoAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAADJsQrIsArJsQoAAAAAAAAAAAAAAADJsQrJsQrJsQrJsQrIsAkA
AAAAAAAAAAAAAADJsQrIsArJsQoAAAAAAADJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQoAAAAAAADJ
sQrIsArJsQoAAADJsQrJsQoAAAAAAADJsQrJsQrJsQoAAAAAAADJsQrJsQoAAADJsQrIsArJsQoAAAAA
AADJsQoAAADJsQrJsQrJsQrJsQrJsQoAAADJsQoAAAAAAADJsQrIsArJsQoAAAAAAADJsQoAAAAAAAAA
AAAAAAAAAAAAAAAAAADJsQoAAAAAAADJsQrIsArJsQoAAAAAAADJsQrJsQoAAADJsQrJsQrJsQoAAADJ
sQrJsQoAAAAAAADJsQrIsArJsQoAAAAAAAAAAADJsQoAAAAAAAAAAAAAAAAAAADJsQoAAAAAAAAAAADJ
sQrIsArJsQoAAAAAAAAAAADJsQrJsQrJsQrJsQrJsQrJsQrJsQoAAAAAAAAAAADJsQrIsArJsQoAAAAA
AAAAAAAAAADJsQrJsQrJsQrJsQrJsQrIrQkAAAAAAAAAAADJsQrIsArJsQoAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAADJsQoAAADJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJ
sQrJsQrJsQrJsQrJsQoAAAAAAADJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQrJsQoA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAQAAgAAAAD/+
AAA8HgAAMAYAACYyAAA0FgAAN/YAADImAAA77gAAOA4AADwOAAA//gAAgAAAAMABAAD//wAA
</value>
</data>
</root>

189
videoGather.csproj Normal file
View File

@ -0,0 +1,189 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{2990C129-31D9-4AA3-B10D-D2773F140FF4}</ProjectGuid>
<OutputType>WinExe</OutputType>
<RootNamespace>videoGather</RootNamespace>
<AssemblyName>videoGather</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x86\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<LangVersion>7.3</LangVersion>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>true</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<OutputPath>bin\x86\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<Optimize>true</Optimize>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x86</PlatformTarget>
<LangVersion>7.3</LangVersion>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>true</Prefer32Bit>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>超声.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Reference Include="AForge, Version=2.2.5.0, Culture=neutral, PublicKeyToken=c1db6ff4eaa06aeb, processorArchitecture=MSIL">
<HintPath>packages\AForge.2.2.5\lib\AForge.dll</HintPath>
</Reference>
<Reference Include="AForge.Controls, Version=2.2.5.0, Culture=neutral, PublicKeyToken=a8ac264d1dc6b9d9, processorArchitecture=MSIL">
<HintPath>packages\AForge.Controls.2.2.5\lib\AForge.Controls.dll</HintPath>
</Reference>
<Reference Include="AForge.Imaging, Version=2.2.5.0, Culture=neutral, PublicKeyToken=ba8ddea9676ca48b, processorArchitecture=MSIL">
<HintPath>packages\AForge.Imaging.2.2.5\lib\AForge.Imaging.dll</HintPath>
</Reference>
<Reference Include="AForge.Math, Version=2.2.5.0, Culture=neutral, PublicKeyToken=abba2e25397ee8c9, processorArchitecture=MSIL">
<HintPath>packages\AForge.Math.2.2.5\lib\AForge.Math.dll</HintPath>
</Reference>
<Reference Include="AForge.Video, Version=2.2.5.0, Culture=neutral, PublicKeyToken=cbfb6e07d173c401, processorArchitecture=MSIL">
<HintPath>packages\AForge.Video.2.2.5\lib\AForge.Video.dll</HintPath>
</Reference>
<Reference Include="AForge.Video.DirectShow, Version=2.2.5.0, Culture=neutral, PublicKeyToken=61ea4348d43881b7, processorArchitecture=MSIL">
<HintPath>packages\AForge.Video.DirectShow.2.2.5\lib\AForge.Video.DirectShow.dll</HintPath>
</Reference>
<Reference Include="AForge.Video.FFMPEG, Version=2.2.5.0, Culture=neutral, PublicKeyToken=03563089b1be05dd, processorArchitecture=x86">
<HintPath>packages\AForge.Video.FFMPEG.2.2.5.1-rc\lib\AForge.Video.FFMPEG.dll</HintPath>
</Reference>
<Reference Include="Dicom.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=3a13f649e28eb09a, processorArchitecture=MSIL">
<HintPath>packages\fo-dicom.Desktop.4.0.0\lib\net45\Dicom.Core.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="PresentationFramework" />
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ExamRecord.cs" />
<Compile Include="ExamRecords.cs" />
<Compile Include="FlyHisEcgdataModel.cs" />
<Compile Include="FlyHisTokenMsg.cs" />
<Compile Include="FtpHelper.cs" />
<Compile Include="HisInfo.cs" />
<Compile Include="Imaganddcm.cs" />
<Compile Include="ImageInfo.cs" />
<Compile Include="InfoForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="InfoForm.Designer.cs">
<DependentUpon>InfoForm.cs</DependentUpon>
</Compile>
<Compile Include="insimagescreenshotVO.cs" />
<Compile Include="MsgInfo.cs" />
<Compile Include="Patient.cs" />
<Compile Include="ProcessForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="ProcessForm.Designer.cs">
<DependentUpon>ProcessForm.cs</DependentUpon>
</Compile>
<Compile Include="SaveFile.cs" />
<Compile Include="Series.cs" />
<Compile Include="StudyInfo.cs" />
<Compile Include="video.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="video.Designer.cs">
<DependentUpon>video.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="InfoForm.resx">
<DependentUpon>InfoForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="ProcessForm.resx">
<DependentUpon>ProcessForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="video.resx">
<DependentUpon>video.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
<DesignTime>True</DesignTime>
</Compile>
<None Include="packages.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<Content Include="超声.ico" />
<Content Include="超声诊断仪.ico" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="packages\Accord.3.8.2-alpha\build\Accord.targets" Condition="Exists('packages\Accord.3.8.2-alpha\build\Accord.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>这台计算机上缺少此项目引用的 NuGet 程序包。使用“NuGet 程序包还原”可下载这些程序包。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 {0}。</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('packages\Accord.3.8.2-alpha\build\Accord.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Accord.3.8.2-alpha\build\Accord.targets'))" />
<Error Condition="!Exists('packages\Accord.Video.FFMPEG.3.8.2-alpha\build\Accord.Video.FFMPEG.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\Accord.Video.FFMPEG.3.8.2-alpha\build\Accord.Video.FFMPEG.targets'))" />
<Error Condition="!Exists('packages\fo-dicom.Desktop.4.0.0\build\net45\fo-dicom.Desktop.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\fo-dicom.Desktop.4.0.0\build\net45\fo-dicom.Desktop.targets'))" />
</Target>
<Import Project="packages\Accord.Video.FFMPEG.3.8.2-alpha\build\Accord.Video.FFMPEG.targets" Condition="Exists('packages\Accord.Video.FFMPEG.3.8.2-alpha\build\Accord.Video.FFMPEG.targets')" />
<Import Project="packages\fo-dicom.Desktop.4.0.0\build\net45\fo-dicom.Desktop.targets" Condition="Exists('packages\fo-dicom.Desktop.4.0.0\build\net45\fo-dicom.Desktop.targets')" />
</Project>

31
videoGather.sln Normal file
View File

@ -0,0 +1,31 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.10.34916.146
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "videoGather", "videoGather.csproj", "{2990C129-31D9-4AA3-B10D-D2773F140FF4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{2990C129-31D9-4AA3-B10D-D2773F140FF4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2990C129-31D9-4AA3-B10D-D2773F140FF4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2990C129-31D9-4AA3-B10D-D2773F140FF4}.Debug|x86.ActiveCfg = Debug|x86
{2990C129-31D9-4AA3-B10D-D2773F140FF4}.Debug|x86.Build.0 = Debug|x86
{2990C129-31D9-4AA3-B10D-D2773F140FF4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2990C129-31D9-4AA3-B10D-D2773F140FF4}.Release|Any CPU.Build.0 = Release|Any CPU
{2990C129-31D9-4AA3-B10D-D2773F140FF4}.Release|x86.ActiveCfg = Release|x86
{2990C129-31D9-4AA3-B10D-D2773F140FF4}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {3E17FD25-7A81-4A33-875D-BBE10821FECA}
EndGlobalSection
EndGlobal

BIN
超声.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 B

BIN
超声诊断仪.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB