优化调整

1.蒙自中医的CA部分逻辑调整
2.添加HIS项目到体检时同步ClassName, 用于判断是否迪安外送
dhzzyy
LiJiaWen 1 day ago
parent cf81bbc6fd
commit 33ac66653f
  1. 4
      PEIS/App.config
  2. 1
      PEIS/Entity/FeeItem.cs
  3. 2
      PEIS/LoginForm.cs
  4. 1
      PEIS/Model/Enrollment/EnrollmentPatientModel.cs
  5. 1
      PEIS/Model/Exam/PartModel.cs
  6. 4
      PEIS/Utils/CAHelper.cs
  7. 33
      PEIS/View/Enrollment/EnrollmentSearchForm.Designer.cs
  8. 7
      PEIS/View/Exam/PartForm.Designer.cs
  9. 38
      PEIS/View/Exam/TotalForm.cs
  10. 3
      PEIS/View/Setting/FeeItemForm.cs

@ -11,7 +11,7 @@
<!--公司内网 192.168.12.188-->
<!--<add name="ConnString" connectionString="10C598E364BCAFCFDC6960B18CB026C75BD46245729DFD1D3D78E221B3E0300765B697A8C044694AA8A0575480464D83BBFC4445FA39D2B9C1CA21CD35ACFCC5B3BF8E10022ADBFBF9EF84CC3D425C90"/>-->
<!--德宏中医院 200.200.200.71-->
<add name="ConnString" connectionString="10C598E364BCAFCF71617738597417B368D095FA1A37D76CC4755C411E5B6E792E0D4950863434F9B242AA9F134426A27810AC34D6EDC4F6ABFC4BE6027BB990824DB7092BFDA15709314FEBC2C3C9E312752DFBDF33BC1BF3C0FC84EAA83A4F"/>
<!--<add name="ConnString" connectionString="10C598E364BCAFCF71617738597417B368D095FA1A37D76CC4755C411E5B6E792E0D4950863434F9B242AA9F134426A27810AC34D6EDC4F6ABFC4BE6027BB990824DB7092BFDA15709314FEBC2C3C9E312752DFBDF33BC1BF3C0FC84EAA83A4F"/>-->
<!--芒市妇幼 192.168.11.5 -->
<!--<add name="ConnString" connectionString="10C598E364BCAFCFDC6960B18CB026C71974C5748654F280FDC48E754851202242B4E7B1AA07112A874114ABFCB682AC3D64541EBBF807FEB54E514CC3815F4A0521AC62245D6E0B29E34ADCAE07492C51045002E903C53C8DC45FF6FC4A547A"/>-->
<!--德宏妇幼 192.168.1.37-->
@ -24,6 +24,8 @@
<!--<add name="ConnString" connectionString="10C598E364BCAFCF5A016EA6C7463FAC7D75379F63924F4F82C1749BDA88D9414EC0303E1ECC3E76895E07FCFC13332D1D79643A2AD3AA60507FD3EAF9A41761B30F4FDE900F983F1FE6ED6F0245E5BF8BFCFC5F0A2C03E4"/>-->
<!--宁蒗中医院 192.168.201.73-->
<!--<add name="ConnString" connectionString="10C598E364BCAFCFDC6960B18CB026C70DC3B8A49169216C1749C51F4EDF5B75A5049148D112117979F484C7F946E0D5E74F84A273B2485C1FB00BDFF13CE76F00379FFA912E2DF6A43D30E4CB54F8E7EBEA0C92081E71F8"/>-->
<!--宁蒗人民医院 192.168.200.19-->
<add name="ConnString" connectionString="10C598E364BCAFCFDC6960B18CB026C7CF640EDF7D1D64EE231892101DA02749D2906C6B1906BE5590C6569CE5EBD58E3CF971E9DBB5FBA5D123DCDB354151ACA9C0475E92B4CA139BF42E8D9D202DA05369AA00AA32358E"/>
</connectionStrings>
<entityFramework>
<providers>

@ -17,6 +17,7 @@ namespace PEIS.Entity
public String KeyNo { get; set; }
public String FeeItemTips { get; set; }
public Boolean IsHide { get; set; }
public String ClassName { get; set; }
/// <summary>
/// 是否启用微信预约

@ -221,6 +221,8 @@ namespace PEIS
Global.UpdateAppConfig("UserCode", Global.currentUser.Code);
Global.UpdateAppConfig("UserName", Global.currentUser.Name);
Global.CASignDataId = null;
DialogResult = DialogResult.OK;
Dispose();
Close();

@ -322,6 +322,7 @@ namespace PEIS.Model.Enrollment
SEX,
CAST(AGE AS VARCHAR) + AgeClass AS AgeClass,
CardNo,
Tel1,
CreateTime,
SignTime,
OEID,

@ -256,6 +256,7 @@ FROM StatusData;";
LEFT JOIN Dict_ReportItem C ON C.ID = B.RID
WHERE
A.EID = {eid} AND A.DeptCode = '{deptCode}'
AND B.FID NOT IN (SELECT Code FROM Dict_Config WHERE [Key]='IgnoreFeeItem')
AND (
C.IsAddSummary = 1
OR B.UnusualFlag <> ''

@ -96,12 +96,12 @@ namespace PEIS.Utils
}
}
public static AutoSignResponse AutoSign(string userId, string signToken, string data, string clientType = "PEIS")
public static AutoSignResponse AutoSign(string userId, string signToken, string data, string signID, string clientType = "PEIS")
{
try
{
string url = $"{BaseUrl}/Client/AutoSign?clientType={clientType}";
string requestData = $"{{\"UserId\":\"{userId}\",\"SignToken\":\"{signToken}\",\"Data\":\"{data}\"}}";
string requestData = $"{{\"UserId\":\"{userId}\",\"SignToken\":\"{signToken}\",\"Data\":\"{data}\",\"signID\":\"TJ {signID}\"}}";
string response = PostRequest(url, requestData);
return JsonConvert.DeserializeObject<AutoSignResponse>(response);
}

@ -43,6 +43,7 @@
this.gridColumn4 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn7 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn8 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn11 = new DevExpress.XtraGrid.Columns.GridColumn();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.DgcRegItem)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.DgvRegItem)).BeginInit();
@ -56,7 +57,7 @@
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(1520, 40);
this.panel1.Size = new System.Drawing.Size(1184, 40);
this.panel1.TabIndex = 0;
//
// NameSearch
@ -85,7 +86,7 @@
this.DgcRegItem.Location = new System.Drawing.Point(0, 40);
this.DgcRegItem.MainView = this.DgvRegItem;
this.DgcRegItem.Name = "DgcRegItem";
this.DgcRegItem.Size = new System.Drawing.Size(1520, 919);
this.DgcRegItem.Size = new System.Drawing.Size(1184, 321);
this.DgcRegItem.TabIndex = 135;
this.DgcRegItem.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.DgvRegItem});
@ -107,6 +108,7 @@
this.gridColumn9,
this.gridColumn5,
this.gridColumn6,
this.gridColumn11,
this.gridColumn3,
this.gridColumn4,
this.gridColumn7,
@ -231,7 +233,7 @@
this.gridColumn3.OptionsColumn.ReadOnly = true;
this.gridColumn3.OptionsFilter.AllowFilter = false;
this.gridColumn3.Visible = true;
this.gridColumn3.VisibleIndex = 5;
this.gridColumn3.VisibleIndex = 6;
this.gridColumn3.Width = 109;
//
// gridColumn4
@ -250,7 +252,7 @@
this.gridColumn4.OptionsColumn.ReadOnly = true;
this.gridColumn4.OptionsFilter.AllowFilter = false;
this.gridColumn4.Visible = true;
this.gridColumn4.VisibleIndex = 6;
this.gridColumn4.VisibleIndex = 7;
this.gridColumn4.Width = 109;
//
// gridColumn7
@ -267,7 +269,7 @@
this.gridColumn7.OptionsColumn.ReadOnly = true;
this.gridColumn7.OptionsFilter.AllowFilter = false;
this.gridColumn7.Visible = true;
this.gridColumn7.VisibleIndex = 7;
this.gridColumn7.VisibleIndex = 8;
this.gridColumn7.Width = 69;
//
// gridColumn8
@ -284,13 +286,29 @@
this.gridColumn8.OptionsColumn.ReadOnly = true;
this.gridColumn8.OptionsFilter.AllowFilter = false;
this.gridColumn8.Visible = true;
this.gridColumn8.VisibleIndex = 8;
this.gridColumn8.VisibleIndex = 9;
this.gridColumn8.Width = 271;
//
// gridColumn11
//
this.gridColumn11.AppearanceCell.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.gridColumn11.AppearanceCell.Options.UseFont = true;
this.gridColumn11.Caption = "联系电话";
this.gridColumn11.FieldName = "Tel1";
this.gridColumn11.Name = "gridColumn11";
this.gridColumn11.OptionsColumn.AllowEdit = false;
this.gridColumn11.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn11.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn11.OptionsColumn.ReadOnly = true;
this.gridColumn11.OptionsFilter.AllowFilter = false;
this.gridColumn11.Visible = true;
this.gridColumn11.VisibleIndex = 5;
this.gridColumn11.Width = 117;
//
// EnrollmentSearchForm
//
this.BackColor = System.Drawing.Color.White;
this.ClientSize = new System.Drawing.Size(1520, 959);
this.ClientSize = new System.Drawing.Size(1184, 361);
this.Controls.Add(this.DgcRegItem);
this.Controls.Add(this.panel1);
this.Name = "EnrollmentSearchForm";
@ -319,5 +337,6 @@
private DevExpress.XtraGrid.Columns.GridColumn gridColumn8;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn9;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn10;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn11;
}
}

@ -28,6 +28,7 @@ namespace PEIS.View.Exam
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PartForm));
this.splitContainerBase = new System.Windows.Forms.SplitContainer();
this.panelPatients = new System.Windows.Forms.Panel();
@ -76,7 +77,7 @@ namespace PEIS.View.Exam
this.dgvSign = new DevExpress.XtraGrid.Views.Grid.GridView();
this.gridColumn19 = new DevExpress.XtraGrid.Columns.GridColumn();
this.dgcExamResult = new DevExpress.XtraGrid.GridControl();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.menuGiveUp1 = new System.Windows.Forms.ToolStripMenuItem();
this.menuGiveUp2 = new System.Windows.Forms.ToolStripMenuItem();
this.menuGiveUp3 = new System.Windows.Forms.ToolStripMenuItem();
@ -156,7 +157,7 @@ namespace PEIS.View.Exam
this.OpsPacsImg = new PEIS.View.UControl.OpMenuSimple();
this.panelPacsRptList = new System.Windows.Forms.Panel();
this.dgcRptPacs = new DevExpress.XtraGrid.GridControl();
this.RptPacsMenuStrip = new System.Windows.Forms.ContextMenuStrip();
this.RptPacsMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
this.PrintRptPacsMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.DgvRptPacs = new DevExpress.XtraGrid.Views.Grid.GridView();
this.colPacsTime = new DevExpress.XtraGrid.Columns.GridColumn();
@ -168,7 +169,7 @@ namespace PEIS.View.Exam
this.panelReport = new System.Windows.Forms.Panel();
this.picReportExt = new System.Windows.Forms.PictureBox();
this.dgcRptExt = new DevExpress.XtraGrid.GridControl();
this.RptExtMenuStrip = new System.Windows.Forms.ContextMenuStrip();
this.RptExtMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
this.PrintRptExtMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.DeleteRptExtMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.DgvRptExt = new DevExpress.XtraGrid.Views.Grid.GridView();

@ -1275,41 +1275,15 @@ namespace PEIS.View.Exam
// 构建待签名数据字符串
string signData = BuildSignData();
// 如果没有可用的签名token,尝试获取
// 如果没有可用的签名token,提醒用户扫码登录
if (string.IsNullOrEmpty(Global.CASignDataId))
{
var loginResponse = CAHelper.Login("PEIS");
if (!loginResponse.Success)
{
Global.MsgErr($"获取签名token失败: {loginResponse.Message}");
return false;
}
// 等待用户扫码签名
int timeout = 60; // 60秒超时
int count = 0;
while (count < timeout)
{
System.Threading.Thread.Sleep(1000);
var result = CAHelper.GetSignResult(loginResponse.SignDataId, "PEIS");
if (result.Success && !string.IsNullOrEmpty(result.SignResult))
{
Global.CASignDataId = result.SignResult;
Global.CAUserId = result.UserId;
break;
}
count++;
}
if (string.IsNullOrEmpty(Global.CASignDataId))
{
Global.MsgErr("签名超时,请重新操作");
return false;
}
Global.MsgErr("请重启系统, 使用CA扫码登录!");
return false;
}
// 调用自动签接口
var response = CAHelper.AutoSign(Global.CAUserId, Global.CASignDataId, signData, "PEIS");
var response = CAHelper.AutoSign(Global.CAUserId, Global.CASignDataId, signData, _patient.ID.ToString(), "PEIS");
if (response.Success)
{
Global.Msg("success", "CA签名成功!");
@ -1317,13 +1291,13 @@ namespace PEIS.View.Exam
}
else
{
Global.MsgErr($"CA签名失败: {response.Message}");
Global.MsgErr($"CA签名失败, 请尝试重新扫码登录系统!\r\n{response.Message}");
return false;
}
}
catch (Exception ex)
{
Global.MsgErr($"CA签名异常: {ex.Message}");
Global.MsgErr($"CA签名异常, 请尝试重新扫码登录系统!\r\n{ex.Message}");
return false;
}
}

@ -293,7 +293,8 @@ namespace PEIS.View.Setting
FeeItemCode = hisFeeItem.FeeItemCode?.Trim(),
Unit = hisFeeItem.Unit?.Trim(),
SettlePrice = 0,
KeyNo = hisFeeItem.KeyNo?.Trim()
KeyNo = hisFeeItem.KeyNo?.Trim(),
ClassName = hisFeeItem.ClassName?.Trim()
};
item.Save();
Global.MsgInfo($@"{hisFeeItem.FeeItemName},收费项目添加成功!");

Loading…
Cancel
Save