HI 10 months ago
commit f5082091d5
  1. 22
      PEIS/Entity/BasePatient.cs
  2. 5
      PEIS/Entity/EnrollmentPatient.cs
  3. 6
      PEIS/Model/Enrollment/EnrollmentPatientModel.cs
  4. 2
      PEIS/Model/EnrollmentFeeItemModel.cs
  5. 3
      PEIS/PEIS.csproj
  6. 1
      PEIS/Presenter/EnrollmentPersonPresenter.cs
  7. BIN
      PEIS/ReportFiles/体检基本信息登记表.xls
  8. BIN
      PEIS/ReportFiles/体检基本信息登记表1.0.xls
  9. BIN
      PEIS/ReportFiles/医院体检人员信息收集样表.xlsx
  10. BIN
      PEIS/ReportFiles/基本信息表.xls
  11. 278
      PEIS/Utils/ExcelHelper.cs
  12. 241
      PEIS/View/Base/PatientImportForm.Designer.cs
  13. 110
      PEIS/View/Base/PatientImportForm.cs
  14. 23
      PEIS/View/Base/PersonForm.cs
  15. 725
      PEIS/View/Enrollment/EnrollmentOrgForm.Designer.cs
  16. 137
      PEIS/View/Enrollment/EnrollmentOrgForm.cs
  17. 16
      PEIS/View/Enrollment/EnrollmentOrgForm.resx
  18. 6
      PEIS/View/Enrollment/EnrollmentPersonForm.cs

@ -86,6 +86,28 @@ namespace PEIS.Entity
}
/// <summary>
/// 验证
/// </summary>
/// <returns></returns>
public bool Validate()
{
if (string.IsNullOrEmpty(Name)) return false;
if (string.IsNullOrEmpty(Sex)) return false;
if (string.IsNullOrEmpty(Nation)) return false;
if (string.IsNullOrEmpty(Marriage)) return false;
if (CardNo?.Trim()?.Length != 18) return false;
var year = CardNo.Substring(6, 4);
var month = CardNo.Substring(10, 2);
var day = CardNo.Substring(12, 2);
var isDay = DateTime.TryParse($"{year}-{month}-{day}", out var birthday);
if (!isDay) return false;
Birthday = birthday;
CardType = "居民身份证";
return true;
}
public virtual bool Exits()
{

@ -101,7 +101,10 @@ namespace PEIS.Entity
[RefFlag(true)]
public DateTime? CostTime { get; set; }
[RefFlag(true)]
public Int64 RowNumber { get; set; }
#endregion Other
}
}

@ -69,14 +69,14 @@ namespace PEIS.Model.Enrollment
return DAOHelp.GetDataBySQL<EnrollmentPatient>($@"Select a.Name,
a.ID,
a.SEX,
a.Age,
a.AgeClass,
CONVERT(VARCHAR,a.Age) + a.AgeClass AgeClass,
b.BirthDay,
a.CardNo,
a.CardType,
b.Marriage,
c.DeptName AS GroupName,
a.SignTime,
a.SignTime,
a.Tel1,
CASE WHEN a.SignTime IS NULL
THEN NULL
ELSE ''

@ -33,7 +33,7 @@ namespace PEIS.Model
public List<EnrollmentFeeItem> GetItemsByEnrollmentID(Int64 enrollmentID)
{
return DAOHelp.GetDataBySQL<EnrollmentFeeItem>($"Select a.*, b.Address, c.IsHide From Enrollment_FeeItem a LEFT JOIN Dict_Dept b ON a.DeptCode = b.HISCode LEFT JOIN Dict_FeeItem c ON a.KeyNo = c.KeyNo Where a.EID = {enrollmentID} Order by a.OrderNo, a.DeptName");
return DAOHelp.GetDataBySQL<EnrollmentFeeItem>($"Select a.*, b.Address, c.IsHide From Enrollment_FeeItem a LEFT JOIN Dict_Dept b ON a.DeptCode = b.HISCode LEFT JOIN Dict_FeeItem c ON a.KeyNo = c.KeyNo Where a.EID = {enrollmentID} Order by a.PackName DESC, a.OrderNo, a.DeptName");
}
public List<EnrollmentFeeItem> GetItems4CheckCost(Int64 oeID, Int64 enrollmentID)

@ -667,6 +667,9 @@
<None Include="ReportFiles\Work.frx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="ReportFiles\医院体检人员信息收集样表.xlsx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="Utils\SS860\RDCard64\license.dat" />
<None Include="Utils\SS860\RDCard86\license.dat" />
</ItemGroup>

@ -58,7 +58,6 @@ namespace PEIS.Presenter
View.ShowCancelRegInfo(new EnrollmentPatientModel().CancelRegInfo(args.ID));
};
View.DeleteOrder += (send, args) =>
{
View.ShowDeleteOrder(new EnrollmentPatientModel().DeleteOrder(args.ID));
};

@ -1,10 +1,10 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Windows.Forms;
using NPOI.HSSF.UserModel;
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
using PEIS.Entity;
@ -12,9 +12,9 @@ namespace PEIS.Utils
{
public class ExcelHelper
{
private int StartRow = 4;
public List<BasePatient> SuccessList = new List<BasePatient>();
public List<BasePatient> ErrorList = new List<BasePatient>();
public List<ExcelRowModel> ErrorList = new List<ExcelRowModel>();
public void ReadOrgPatientList()
{
try
@ -24,17 +24,7 @@ namespace PEIS.Utils
dialog.Filter = @"Excel文件 (*.xls;*.xlsx)|*.xls;*.xlsx";
if (dialog.ShowDialog() != DialogResult.OK) return;
var excelFilePath = dialog.FileName;
var fileExtension = Path.GetExtension(excelFilePath);
switch (fileExtension)
{
case ".xls":
ReadXLS(excelFilePath);
break;
case ".xlsx":
ReadXLSX(excelFilePath);
break;
}
ReadExcelData(excelFilePath);
}
catch (Exception e)
{
@ -42,215 +32,117 @@ namespace PEIS.Utils
Global.Msg("err", e.Message);
}
}
/// <summary>
/// 读取Excel XLS文件
/// 读取Excel文件
/// </summary>
/// <param name="excelFilePath"></param>
public void ReadXLS(string excelFilePath)
/// <param name="excelFilePath">指定 .xlsx/.xls 文件的路径</param>
public void ReadExcelData(string excelFilePath)
{
var fileExtension = Path.GetExtension(excelFilePath);
if (fileExtension != ".xls" && fileExtension != ".xlsx") return;
using (var fileStream = new FileStream(excelFilePath, FileMode.Open, FileAccess.Read))
{
// 使用 HSSFWorkbook 打开 .xls 文件
var workbook = new HSSFWorkbook(fileStream);
// 选择工作表 第一个工作表
var sheet = workbook.GetSheetAt(0);
// 获取工作表的行数
var rowCount = sheet.PhysicalNumberOfRows;
int continuousEmpty = 0;
// 遍历工作表并读取数据
for (var row = 3; row < rowCount; row++)
var sheet = GetSheet(fileStream, fileExtension); // 第一个工作表
for (int startIndex = 0; startIndex < StartRow; startIndex++)
{
if (continuousEmpty == 3)
{
break; // 如果连续三个错误,停止循环
}
var dataRow = sheet.GetRow(row);
var name = dataRow.GetCell(0).ToString();
var cardNo = dataRow.GetCell(4)?.ToString();
if (string.IsNullOrEmpty(dataRow.GetCell(0).ToString())
|| !string.IsNullOrEmpty(cardNo) && cardNo.Length != 18
|| (cardNo?.Length == 18 && !DateTime.TryParseExact(cardNo.Substring(6, 8), "yyyyMMdd", null,
DateTimeStyles.None, out _)))
{
continuousEmpty++;
ErrorList.Add(new BasePatient()
{
ID = row,
Name = dataRow.GetCell(0).ToString(),
Sex = dataRow.GetCell(1).ToString(),
Marriage = dataRow.GetCell(2).ToString(),
Nation = dataRow.GetCell(3).ToString(),
CardNo = dataRow.GetCell(4).ToString(),
CardType = "居民身份证",
Education = dataRow.GetCell(5).ToString(),
Tel1 = dataRow.GetCell(6).ToString(),
Address1 = dataRow.GetCell(7).ToString(),
DeptName = dataRow.GetCell(8).ToString(),
});
continue;
}
SuccessList.Add(new BasePatient()
{
Name = name,
Sex = dataRow.GetCell(1).ToString(),
Marriage = dataRow.GetCell(2).ToString(),
Nation = dataRow.GetCell(3).ToString(),
CardNo = cardNo,
CardType = "居民身份证",
Education = dataRow.GetCell(5).ToString(),
Tel1 = dataRow.GetCell(6).ToString(),
Address1 = dataRow.GetCell(7).ToString(),
DeptName = dataRow.GetCell(8).ToString(),
});
continuousEmpty = 0;
ErrorList.Add(new ExcelRowModel(startIndex, sheet.GetRow(startIndex)));
}
};
}
/// <summary>
/// 读取Excel XLSX文件
/// </summary>
/// <param name="excelFilePath">指定 .xlsx 文件的路径</param>
public void ReadXLSX(string excelFilePath)
{
using (var fileStream = new FileStream(excelFilePath, FileMode.Open, FileAccess.Read))
{
var workbook = new XSSFWorkbook(fileStream);
var sheet = workbook.GetSheetAt(0); // 第一个工作表
// 获取工作表的行数和列数
var rowCount = sheet.PhysicalNumberOfRows;
int continuousEmpty = 0;
// 遍历工作表并读取数据
for (var row = 2; row < rowCount; row++)
for (var row = StartRow; row < rowCount; row++)
{
if (continuousEmpty == 3)
if (continuousEmpty == 5)
{
break; // 如果连续三个错误,停止循环
break; // 如果连续5行错误,停止循环
}
var dataRow = sheet.GetRow(row);
var name = dataRow.GetCell(0).ToString();
var cardNo = dataRow.GetCell(4)?.ToString();
if (string.IsNullOrEmpty(dataRow.GetCell(0).ToString()) || !string.IsNullOrEmpty(cardNo) && cardNo.Length != 18 || (cardNo?.Length == 18 && !DateTime.TryParseExact(cardNo.Substring(6, 8), "yyyyMMdd", null,
DateTimeStyles.None, out _)))
var readPatient = ReadRowToBasePatient(dataRow);
var isBasePatient = readPatient.Validate();
if (!isBasePatient || SuccessList.Any(p => p.CardNo == readPatient.CardNo))
{
continuousEmpty++;
ErrorList.Add(new BasePatient()
{
ID = row,
Name = dataRow.GetCell(0).ToString(),
Sex = dataRow.GetCell(1).ToString(),
Marriage = dataRow.GetCell(2).ToString(),
Nation = dataRow.GetCell(3).ToString(),
CardNo = dataRow.GetCell(4).ToString(),
CardType = "居民身份证",
Education = dataRow.GetCell(5).ToString(),
Tel1 = dataRow.GetCell(6).ToString(),
Address1 = dataRow.GetCell(7).ToString(),
DeptName = dataRow.GetCell(8).ToString(),
});
ErrorList.Add(new ExcelRowModel(row, dataRow));
continue;
}
SuccessList.Add(new BasePatient()
{
Name = name,
Sex = dataRow.GetCell(1).ToString(),
Marriage = dataRow.GetCell(2).ToString(),
Nation = dataRow.GetCell(3).ToString(),
CardNo = cardNo,
CardType = "居民身份证",
Education = dataRow.GetCell(5).ToString(),
Tel1 = dataRow.GetCell(6).ToString(),
Address1 = dataRow.GetCell(7).ToString(),
DeptName = dataRow.GetCell(8).ToString(),
});
SuccessList.Add(readPatient);
continuousEmpty = 0;
}
};
}
// /// <summary>
// /// 导出Excel
// /// </summary>
// /// <param name="list"></param>
// /// <param name="propertyStr"></param>
// /// <returns></returns>
// private MemoryStream ExportExcel(List<EnrollmentPatient> list, string propertyStr)
// {
// var properties = propertyStr.Split(',').ToList();
// using (var package = new ExcelPackage())
// {
// // 添加工作表
// var worksheet = package.Workbook.Worksheets.Add($"{DateTime.Now:yyyyMMdd}");
// // 将列名添加到第一行
// for (var i = 0; i < properties.Count; i++)
// {
// if (Properties.ContainsKey(properties[i]))
// worksheet.Cells[1, i + 1].Value = Properties[(properties[i])];
// }
// // 将数据写入单元格
// for (var row = 0; row < list.Count; row++)
// {
// for (var col = 0; col < properties.Count; col++)
// {
// worksheet.Cells[row + 2, col + 1].Value = GetValueByPropertyNameHandle(list[row], properties[col]);
// }
// }
// // 自动调整列宽
// worksheet.Cells.AutoFitColumns();
// // 保存文件到 MemoryStream
// var memoryStream = new MemoryStream(package.GetAsByteArray());
// // 设置流的位置为起始位置
// memoryStream.Seek(0, SeekOrigin.Begin);
// // 返回 Excel 文件
// return memoryStream;
// }
// }
/// <summary>
/// 可选字段
/// </summary>
private static Dictionary<string, string> Properties = new Dictionary<string, string>()
private static ISheet GetSheet(FileStream fileStream, string fileExtension)
{
{"Id", "id"},
{"CriticalName", "项目名称"},
{"CriticalCode", "项目代码"},
{"CriticalValue", "危急值"},
{"Description", "描述"},
{"Unit", "单位"},
};
if (fileExtension == ".xls")
return new HSSFWorkbook(fileStream).GetSheetAt(0);
/// <summary>
/// 根据属性名获取对象的属性值
/// </summary>
/// <param name="patient"></param>
/// <param name="propertyName"></param>
/// <returns></returns>
private string GetValueByPropertyNameHandle(EnrollmentPatient patient, string propertyName)
if (fileExtension == ".xlsx")
return new XSSFWorkbook(fileStream).GetSheetAt(0); // 第一个工作表
return null;
}
private static BasePatient ReadRowToBasePatient(IRow dataRow)
{
switch (propertyName)
var sex = dataRow.GetCell(2)?.ToString()??"";
return new BasePatient()
{
case "Id":
return patient.ID.ToString();
case "Name":
return patient.Name;
case "Age":
return patient.Age + " " + patient.AgeClass;
default:
return "";
}
// A-0-序号,B-1-姓名,C-2-性别,D-3-民族,E-4-婚姻,F-5-身份证号,G-6-住址,H-7-电话,I-8-部门,J-9备注
Name = dataRow.GetCell(1)?.ToString(),
Sex = sex.Contains("女")?"2":"1",
Nation = dataRow.GetCell(3)?.ToString(),
Marriage = dataRow.GetCell(4)?.ToString(),
CardNo = dataRow.GetCell(5)?.ToString(),
CardType = "居民身份证",
Address1 = dataRow.GetCell(6)?.ToString(),
Tel1 = dataRow.GetCell(7)?.ToString(),
DeptName = dataRow.GetCell(8)?.ToString(),
};
}
}
}
public class ExcelRowModel
{
public int RowCount { get; set; }
public string ColumnA { get; set; }
public string ColumnB { get; set; }
public string ColumnC { get; set; }
public string ColumnD { get; set; }
public string ColumnE { get; set; }
public string ColumnF { get; set; }
public string ColumnG { get; set; }
public string ColumnH { get; set; }
public string ColumnI { get; set; }
public string ColumnJ { get; set; }
public ExcelRowModel()
{
}
public ExcelRowModel(int rowCount, IRow row)
{
RowCount = rowCount + 1;
ColumnA = row.GetCell(0)?.ToString()??"";
ColumnB = row.GetCell(1)?.ToString()??"";
ColumnC = row.GetCell(2)?.ToString()??"";
ColumnD = row.GetCell(3)?.ToString()??"";
ColumnE = row.GetCell(4)?.ToString()??"";
ColumnF = row.GetCell(5)?.ToString()??"";
ColumnG = row.GetCell(6)?.ToString()??"";
ColumnH = row.GetCell(7)?.ToString()??"";
ColumnI = row.GetCell(8)?.ToString()??"";
ColumnJ = row.GetCell(9)?.ToString()??"";
}
public ExcelRowModel(BasePatient p)
{
ColumnA = p.Name;
ColumnB = p.Sex;
ColumnC = p.Nation;
ColumnD = p.Marriage;
ColumnE = p.CardNo;
ColumnF = p.CardType;
ColumnG = p.Address1;
ColumnH = p.Tel1;
ColumnI = p.DeptName;
}
}
}

@ -65,15 +65,6 @@
this.DgcError = new DevExpress.XtraGrid.GridControl();
this.DgvError = new DevExpress.XtraGrid.Views.Grid.GridView();
this.colNo = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn7 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn8 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn14 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn15 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn16 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn17 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn19 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn21 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn27 = new DevExpress.XtraGrid.Columns.GridColumn();
this.repositoryItemComboBox1 = new DevExpress.XtraEditors.Repository.RepositoryItemComboBox();
this.repositoryItemComboBox2 = new DevExpress.XtraEditors.Repository.RepositoryItemComboBox();
this.repositoryItemComboBox3 = new DevExpress.XtraEditors.Repository.RepositoryItemComboBox();
@ -90,6 +81,15 @@
this.gridColumn36 = new DevExpress.XtraGrid.Columns.GridColumn();
this.panel2 = new System.Windows.Forms.Panel();
this.label1 = new System.Windows.Forms.Label();
this.gridColumn7 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn8 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn14 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn15 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn16 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn17 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn19 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn21 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn27 = new DevExpress.XtraGrid.Columns.GridColumn();
this.gridColumn37 = new DevExpress.XtraGrid.Columns.GridColumn();
this.panel1.SuspendLayout();
this.OpsPatient.SuspendLayout();
@ -582,133 +582,11 @@
// colNo
//
this.colNo.Caption = "Excel行号";
this.colNo.FieldName = "id";
this.colNo.FieldName = "RowCount";
this.colNo.Name = "colNo";
this.colNo.Visible = true;
this.colNo.VisibleIndex = 0;
//
// gridColumn7
//
this.gridColumn7.AppearanceCell.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.gridColumn7.AppearanceCell.Options.UseFont = true;
this.gridColumn7.Caption = "姓名";
this.gridColumn7.FieldName = "Name";
this.gridColumn7.Name = "gridColumn7";
this.gridColumn7.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn7.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn7.OptionsColumn.ReadOnly = true;
this.gridColumn7.OptionsFilter.AllowFilter = false;
this.gridColumn7.Visible = true;
this.gridColumn7.VisibleIndex = 1;
this.gridColumn7.Width = 100;
//
// gridColumn8
//
this.gridColumn8.AppearanceCell.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.gridColumn8.AppearanceCell.Options.UseFont = true;
this.gridColumn8.Caption = "性别";
this.gridColumn8.FieldName = "Sex";
this.gridColumn8.Name = "gridColumn8";
this.gridColumn8.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn8.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn8.OptionsColumn.ReadOnly = true;
this.gridColumn8.OptionsFilter.AllowFilter = false;
this.gridColumn8.Visible = true;
this.gridColumn8.VisibleIndex = 2;
this.gridColumn8.Width = 50;
//
// gridColumn14
//
this.gridColumn14.AppearanceCell.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.gridColumn14.AppearanceCell.Options.UseFont = true;
this.gridColumn14.Caption = "婚况";
this.gridColumn14.FieldName = "Marriage";
this.gridColumn14.Name = "gridColumn14";
this.gridColumn14.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn14.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn14.OptionsColumn.ReadOnly = true;
this.gridColumn14.OptionsFilter.AllowFilter = false;
this.gridColumn14.Visible = true;
this.gridColumn14.VisibleIndex = 3;
this.gridColumn14.Width = 60;
//
// gridColumn15
//
this.gridColumn15.Caption = "民族";
this.gridColumn15.FieldName = "Nation";
this.gridColumn15.Name = "gridColumn15";
this.gridColumn15.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn15.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn15.OptionsColumn.ReadOnly = true;
this.gridColumn15.Visible = true;
this.gridColumn15.VisibleIndex = 4;
this.gridColumn15.Width = 100;
//
// gridColumn16
//
this.gridColumn16.Caption = "身份证号";
this.gridColumn16.FieldName = "CardNo";
this.gridColumn16.Name = "gridColumn16";
this.gridColumn16.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn16.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn16.OptionsColumn.ReadOnly = true;
this.gridColumn16.OptionsFilter.AllowFilter = false;
this.gridColumn16.Visible = true;
this.gridColumn16.VisibleIndex = 5;
this.gridColumn16.Width = 140;
//
// gridColumn17
//
this.gridColumn17.AppearanceCell.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.gridColumn17.AppearanceCell.Options.UseFont = true;
this.gridColumn17.Caption = "教育程度";
this.gridColumn17.FieldName = "Education";
this.gridColumn17.Name = "gridColumn17";
this.gridColumn17.OptionsColumn.AllowEdit = false;
this.gridColumn17.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn17.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn17.OptionsColumn.ReadOnly = true;
this.gridColumn17.OptionsFilter.AllowFilter = false;
this.gridColumn17.Summary.AddRange(new DevExpress.XtraGrid.GridSummaryItem[] {
new DevExpress.XtraGrid.GridColumnSummaryItem(DevExpress.Data.SummaryItemType.Count, "BloodCode", "合计:{0} 个血袋")});
this.gridColumn17.Visible = true;
this.gridColumn17.VisibleIndex = 6;
this.gridColumn17.Width = 93;
//
// gridColumn19
//
this.gridColumn19.Caption = "联系电话";
this.gridColumn19.FieldName = "Tel1";
this.gridColumn19.Name = "gridColumn19";
this.gridColumn19.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn19.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn19.OptionsColumn.ReadOnly = true;
this.gridColumn19.Visible = true;
this.gridColumn19.VisibleIndex = 7;
this.gridColumn19.Width = 100;
//
// gridColumn21
//
this.gridColumn21.Caption = "联系地址";
this.gridColumn21.FieldName = "Address1";
this.gridColumn21.MinWidth = 200;
this.gridColumn21.Name = "gridColumn21";
this.gridColumn21.OptionsColumn.AllowGroup = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn21.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn21.OptionsColumn.ReadOnly = true;
this.gridColumn21.Visible = true;
this.gridColumn21.VisibleIndex = 8;
this.gridColumn21.Width = 300;
//
// gridColumn27
//
this.gridColumn27.Caption = "部门";
this.gridColumn27.FieldName = "DeptName";
this.gridColumn27.Name = "gridColumn27";
this.gridColumn27.Visible = true;
this.gridColumn27.VisibleIndex = 9;
this.gridColumn27.Width = 187;
//
// repositoryItemComboBox1
//
this.repositoryItemComboBox1.AutoHeight = false;
@ -877,18 +755,85 @@
this.label1.Text = "导入失败列表:";
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// gridColumn7
//
this.gridColumn7.Caption = "A";
this.gridColumn7.FieldName = "ColumnA";
this.gridColumn7.Name = "gridColumn7";
this.gridColumn7.Visible = true;
this.gridColumn7.VisibleIndex = 1;
//
// gridColumn8
//
this.gridColumn8.Caption = "B";
this.gridColumn8.FieldName = "ColumnB";
this.gridColumn8.Name = "gridColumn8";
this.gridColumn8.Visible = true;
this.gridColumn8.VisibleIndex = 2;
//
// gridColumn14
//
this.gridColumn14.Caption = "C";
this.gridColumn14.FieldName = "ColumnC";
this.gridColumn14.Name = "gridColumn14";
this.gridColumn14.Visible = true;
this.gridColumn14.VisibleIndex = 3;
//
// gridColumn15
//
this.gridColumn15.Caption = "D";
this.gridColumn15.FieldName = "ColumnD";
this.gridColumn15.Name = "gridColumn15";
this.gridColumn15.Visible = true;
this.gridColumn15.VisibleIndex = 4;
//
// gridColumn16
//
this.gridColumn16.Caption = "E";
this.gridColumn16.FieldName = "ColumnE";
this.gridColumn16.Name = "gridColumn16";
this.gridColumn16.Visible = true;
this.gridColumn16.VisibleIndex = 5;
//
// gridColumn17
//
this.gridColumn17.Caption = "F";
this.gridColumn17.FieldName = "ColumnF";
this.gridColumn17.Name = "gridColumn17";
this.gridColumn17.Visible = true;
this.gridColumn17.VisibleIndex = 6;
//
// gridColumn19
//
this.gridColumn19.Caption = "G";
this.gridColumn19.FieldName = "ColumnG";
this.gridColumn19.Name = "gridColumn19";
this.gridColumn19.Visible = true;
this.gridColumn19.VisibleIndex = 7;
//
// gridColumn21
//
this.gridColumn21.Caption = "H";
this.gridColumn21.FieldName = "ColumnH";
this.gridColumn21.Name = "gridColumn21";
this.gridColumn21.Visible = true;
this.gridColumn21.VisibleIndex = 8;
//
// gridColumn27
//
this.gridColumn27.Caption = "I";
this.gridColumn27.FieldName = "ColumnI";
this.gridColumn27.Name = "gridColumn27";
this.gridColumn27.Visible = true;
this.gridColumn27.VisibleIndex = 9;
//
// gridColumn37
//
this.gridColumn37.Caption = "失败原因";
this.gridColumn37.FieldName = "ImportErrorInfo";
this.gridColumn37.Caption = "J";
this.gridColumn37.FieldName = "ColumnJ";
this.gridColumn37.Name = "gridColumn37";
this.gridColumn37.OptionsColumn.AllowEdit = false;
this.gridColumn37.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
this.gridColumn37.OptionsColumn.ReadOnly = true;
this.gridColumn37.OptionsFilter.AllowFilter = false;
this.gridColumn37.Visible = true;
this.gridColumn37.VisibleIndex = 10;
this.gridColumn37.Width = 125;
//
// PatientImportForm
//
@ -965,15 +910,6 @@
private DevExpress.XtraGrid.GridControl DgcError;
private DevExpress.XtraGrid.Views.Grid.GridView DgvError;
private DevExpress.XtraGrid.Columns.GridColumn colNo;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn7;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn8;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn14;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn15;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn16;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn17;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn19;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn21;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn27;
private DevExpress.XtraEditors.Repository.RepositoryItemComboBox repositoryItemComboBox1;
private DevExpress.XtraEditors.Repository.RepositoryItemComboBox repositoryItemComboBox2;
private DevExpress.XtraEditors.Repository.RepositoryItemComboBox repositoryItemComboBox3;
@ -990,6 +926,15 @@
private DevExpress.XtraGrid.Columns.GridColumn gridColumn36;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Label label1;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn7;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn8;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn14;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn15;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn16;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn17;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn19;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn21;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn27;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn37;
}
}

@ -14,11 +14,11 @@ namespace PEIS.View.Base
{
public partial class PatientImportForm : ViewBase
{
protected override object CreatePresenter()
{
return new Presenter<ViewBase>(this);
}
private List<BaseOrgPatient> _lstPatient = new List<BaseOrgPatient>();
// 定义一个委托
@ -44,18 +44,21 @@ namespace PEIS.View.Base
private void TsmiDown_Click(object sender, EventArgs e)
{
var file = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ReportFiles", "体检基本信息登记表.xls");
// var file = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ReportFiles", "体检基本信息登记表.xls");
var file = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ReportFiles", "医院体检人员信息收集样表.xlsx");
if (!File.Exists(file))
{
Global.MsgErr(@"未找到模板文件!");
return;
}
// 创建文件目标路径(用户选择的位置)
using (var folderDialog = new FolderBrowserDialog())
{
if (folderDialog.ShowDialog() != DialogResult.OK) return;
var targetFolderPath = folderDialog.SelectedPath;
var targetFilePath = Path.Combine(targetFolderPath, "体检基本信息登记表.xls");
// var targetFilePath = Path.Combine(targetFolderPath, "体检基本信息登记表.xls");
var targetFilePath = Path.Combine(targetFolderPath, "医院体检人员信息收集样表.xlsx");
try
{
// 复制文件
@ -83,100 +86,77 @@ namespace PEIS.View.Base
Global.MsgInfo($"数据为空,请导入数据!");
return;
}
int succeedCount = 0;
var errorList = new List<BasePatient>();
var errorList = new List<ExcelRowModel>();
_lstPatient = new List<BaseOrgPatient>();
var createTime = DateTime.Now;
foreach (var item in _patients)
{
try
{
var birthday = DateTime.Today;
if (item.CardNo.Length == 18 && DateTime.TryParseExact(item.CardNo.Substring(6, 8), "yyyyMMdd", null,
DateTimeStyles.None, out DateTime result))
{
birthday = result;
}
var basePatient = new BasePatient()
{
Name = item.Name?.Trim(),
Sex = item.Sex == "女" ? "2" : "1",
Nation = item.Nation,
Birthday = birthday,
CardType = "居民身份证",
CardNo = item.CardNo,
Marriage = item.Marriage,
Occupation = item.Occupation,
Education = item.Education,
Contactor1 = item.Name,
Contactor2 = item.Contactor2,
Tel1 = item.Tel1,
Tel2 = item.Tel2,
Address1 = item.Address1,
Address2 = item.Address2,
Description = item.Description,
CreateTime = createTime,
Creator = Global.currentUser.Name,
CreatorCode = Global.currentUser.Code
};
var basePatient = item;
basePatient.CreateTime = createTime;
basePatient.Creator = Global.currentUser.Name;
basePatient.CreatorCode = Global.currentUser.Code;
if (!basePatient.Exits())
{
// item.ImportErrorInfo = "身份证号已存在";
// errorList.Add(item);
// continue;
if (!basePatient.Save())
{
item.ImportErrorInfo = "信息保存失败";
errorList.Add(item);
errorList.Add(new ExcelRowModel(item));
continue;
}
}
succeedCount++;
var sql = $@"SELECT ID,Name,Sex,CardNo, CardType, Birthday, Education, Nation, Tel1, Tel2,Marriage,Address1
succeedCount++;
var sql =
$@"SELECT ID,Name,Sex,CardNo, CardType, Birthday, Education, Nation, Tel1, Tel2,Marriage,Address1
FROM Base_Patient WHERE Name='{basePatient.Name}' AND CardNo = '{basePatient.CardNo}' ";
var add = (DAOHelp.GetDataBySQL<BasePatient>(sql).FirstOrDefault());
if (add != null)
_lstPatient?.Add(new BaseOrgPatient
{
OID = _org.ID,
PID = add.ID,
Seq = _lstPatient.Count + 1,
Name = add.Name,
Sex = add.Sex == "1" ? "男" : "女",
CardNo = add.CardNo,
CardType = add.CardType,
Birthday = add.Birthday,
Education = add.Education,
Nation = add.Nation,
Tel1 = add.Tel1,
Tel2 = add.Tel2,
Marriage = add.Marriage,
DeptName = item.DeptName,
Address1 = add.Address1
});
if (add == null)
{
errorList.Add(new ExcelRowModel(item));
continue;
}
_lstPatient?.Add(new BaseOrgPatient
{
OID = _org.ID,
PID = add.ID,
Seq = _lstPatient.Count + 1,
Name = add.Name,
Sex = add.Sex == "1" ? "男" : "女",
CardNo = add.CardNo,
CardType = add.CardType,
Birthday = add.Birthday,
Education = add.Education,
Nation = add.Nation,
Tel1 = add.Tel1,
Tel2 = add.Tel2,
Marriage = add.Marriage,
DeptName = item.DeptName,
Address1 = add.Address1
});
}
catch (Exception ex)
{
item.ImportErrorInfo = "错误:" + ex.Message;
errorList.Add(item);
errorList.Add(new ExcelRowModel(item));
}
}
if (errorList.Count > 0)
{
Global.MsgErr($"添加成功:{succeedCount},添加失败:{ errorList.Count}。");
Global.MsgErr($"添加成功:{succeedCount},添加失败:{errorList.Count}。");
DgcPatient.DataSource = null;
DgcError.DataSource = errorList;
}
else
{
Global.MsgInfo($"添加成功!");
Global.MsgInfo($"添加成功:{succeedCount}!");
ImportFormClosed?.Invoke(_lstPatient);
Close();
}
@ -191,10 +171,12 @@ FROM Base_Patient WHERE Name='{basePatient.Name}' AND CardNo = '{basePatient.Car
{
var excel = new ExcelHelper();
excel.ReadOrgPatientList();
var list = excel.SuccessList.Where(p=>!string.IsNullOrEmpty(p.CardNo)).ToList().Distinct().ToList();
var list = excel.SuccessList;
_patients = list.Count > 0 ? list : new List<BasePatient>();
label1.Text = "导入失败列表:" + $@"(已从Excel成功读取到 {excel.SuccessList.Count}行 数据)";
DgcPatient.DataSource = _patients;
DgcError.DataSource = excel.ErrorList.Distinct();
DgvError.BestFitColumns();
}
}
}

@ -1,12 +1,12 @@
 using PEIS.Base;
using PEIS.Base;
using PEIS.Entity;
using PEIS.Event;
using PEIS.Presenter;
using PEIS.Utils;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using PEIS.Utils;
using System.Threading;
using System.Windows.Forms;
namespace PEIS.View.Base
{
@ -29,11 +29,16 @@ namespace PEIS.View.Base
OpsPatient.TsmiDelete.Visible = false;
OpsPatient.TsmiSave.Visible = false;
OpsPatient.TsmiSearch.Visible = false;
OpsPatient.TstbKey.TextChanged += Search_TextChanged;
OpsPatient.TstbKey.KeyDown += TstbKey_KeyDown;
DgvPatient.Initialize();
}
private void TstbKey_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter) OnGetBasePatient();
}
protected override object CreatePresenter()
{
return new BasePatientPresenter(this);
@ -43,12 +48,6 @@ namespace PEIS.View.Base
{
ThreadPool.QueueUserWorkItem(state => OnGetBasePatient());
}
private void Search_TextChanged(object sender, EventArgs e)
{
var search = OpsPatient.TstbKey.Text.Trim();
if (search == @"输入条件查询") return;
DgcPatient.SetDataSource(string.IsNullOrEmpty(search) ? _lstBasePatients : _lstBasePatients.Where(a => a.Name.Contains(search) || a.CardNo.Contains(search)).ToList());
}
private void DgvPatient_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
@ -80,7 +79,7 @@ namespace PEIS.View.Base
}
protected virtual void OnGetBasePatient()
{
GetBasePatient?.Invoke(this, new Args<BasePatient>{});
GetBasePatient?.Invoke(this, new Args<BasePatient>{ Code = OpsPatient.TstbKey.Text.Trim() == "输入条件查询" ? null : string.IsNullOrEmpty(OpsPatient.TstbKey.Text) ? null : OpsPatient.TstbKey.Text.Trim() });
}
#endregion

File diff suppressed because it is too large Load Diff

@ -1,4 +1,7 @@
using DevExpress.XtraGrid.Views.Grid.ViewInfo;
using DevExpress.Utils;
using DevExpress.XtraGrid.Columns;
using DevExpress.XtraGrid.Views.Grid;
using DevExpress.XtraGrid.Views.Grid.ViewInfo;
using DevExpress.XtraPrinting.Native;
using PEIS.Base;
using PEIS.Entity;
@ -8,6 +11,7 @@ using PEIS.Utils;
using PEIS.View.Base;
using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Globalization;
using System.Linq;
@ -153,6 +157,7 @@ namespace PEIS.View.Enrollment
FeeItemSearch2.TextChanged += FeeItemSearch2_TextChanged;
FastGroupMove.Click += FastGroupMove_Click;
FastExport.Click += FastExport_Click;
FastExportTime.Click += FastExportTime_Click;
FastDelete.Click += FastDelete_Click;
FastGroup.Click += FastGroup_Click;
FastCancelGroup.Click += FastCancelGroup_Click;
@ -847,7 +852,7 @@ namespace PEIS.View.Enrollment
}
}
private void FastExport_Click(object sender, EventArgs e) // 导出团体成员
private void FastExport_Click(object sender, EventArgs e) // 导出所有团体成员
{
if (_lstEnrollmentPatient.Count != 0)
{
@ -863,12 +868,112 @@ namespace PEIS.View.Enrollment
options.TextExportMode = DevExpress.XtraPrinting.TextExportMode.Value;
options.ExportType = DevExpress.Export.ExportType.WYSIWYG;
// 首先,创建一个新的列对象
GridColumn newColumn = new GridColumn();
// 设置列的标题,例如"序号"
newColumn.Caption = "序号";
// 设置列的字段名称,这将用于数据绑定
newColumn.FieldName = "RowNumber";
newColumn.VisibleIndex = 0;
newColumn.AppearanceCell.Font = new Font("微软雅黑", 12);
// 将列添加到GridView的Columns集合中
DgvEnrollment.Columns.Add(newColumn);
for (int i = 0; i < _lstEnrollmentPatient.Count(); i++)
{
// 使用GetRowCellValue方法获取当前行的序号列的值
int rowNumber = DgvEnrollment.GetRowHandle(i); // 行句柄
DgvEnrollment.SetRowCellValue(rowNumber, "RowNumber", i + 1); // 设置序号列的值
}
DgcEnrollment.ExportToXls(saveFileDialog.FileName, options);
DgvEnrollment.Columns.Remove(newColumn);
}
}
}
private void FastExportTime_Click(object sender, EventArgs e) // 导出指定时间范围成员
{
DateTime currentDate = DateTime.Now;
Form dateForm = new Form();
dateForm.Font = new Font("微软雅黑", 12);
dateForm.Text = "时间选择器";
dateForm.StartPosition = FormStartPosition.CenterScreen;
dateForm.Size = new Size(330, 226);
Label begLabel = new Label();
begLabel.Location = new Point(10, 20);
begLabel.Text = "开始时间:";
DateTimePicker begTime = new DateTimePicker();
begTime.Location = new Point(110, 20);
begTime.Value = currentDate.AddDays(-6);
Label endLabel = new Label();
endLabel.Location = new Point(10, 70);
endLabel.Text = "结束时间:";
DateTimePicker endTime = new DateTimePicker();
endTime.Location = new Point(110, 70);
endTime.Value = currentDate;
Button confirmBtn = new Button();
confirmBtn.Text = "确认选择";
confirmBtn.Location = new Point(110, 120);
confirmBtn.AutoSize = true;
confirmBtn.Click += delegate (object a, EventArgs b)
{
if (_lstEnrollmentPatient.Count != 0)
{
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Title = "导出Excel";
saveFileDialog.FileName = "团体名单";
saveFileDialog.Filter = "Excel文件(*.xls)|*.xls";
DialogResult dialogResult = saveFileDialog.ShowDialog(this);
if (dialogResult == DialogResult.OK)
{
DevExpress.XtraPrinting.XlsExportOptionsEx options = new DevExpress.XtraPrinting.XlsExportOptionsEx();
options.ShowGridLines = true;
options.TextExportMode = DevExpress.XtraPrinting.TextExportMode.Value;
options.ExportType = DevExpress.Export.ExportType.WYSIWYG;
// 首先,创建一个新的列对象
GridColumn newColumn = new GridColumn();
// 设置列的标题,例如"序号"
newColumn.Caption = "序号";
// 设置列的字段名称,这将用于数据绑定
newColumn.FieldName = "RowNumber";
newColumn.VisibleIndex = 0;
newColumn.AppearanceCell.Font = new Font("微软雅黑", 12);
// 将列添加到GridView的Columns集合中
DgvEnrollment.Columns.Add(newColumn);
DgcEnrollment.DataSource = _lstEnrollmentPatient.Where(w => w.SignTime > begTime.Value.Date && w.SignTime < endTime.Value.AddDays(1).Date);
for (int i = 0; i < _lstEnrollmentPatient.Where(w => w.SignTime > begTime.Value.Date && w.SignTime < endTime.Value.AddDays(1).Date).Count(); i++)
{
// 使用GetRowCellValue方法获取当前行的序号列的值
int rowNumber = DgvEnrollment.GetRowHandle(i); // 行句柄
DgvEnrollment.SetRowCellValue(rowNumber, "RowNumber", i + 1); // 设置序号列的值
}
DgcEnrollment.ExportToXls(saveFileDialog.FileName, options);
DgvEnrollment.Columns.Remove(newColumn);
}
}
ShowEnrollmentPatient(_lstEnrollmentPatient);
dateForm.Close();
};
dateForm.Controls.Add(begLabel);
dateForm.Controls.Add(begTime);
dateForm.Controls.Add(endLabel);
dateForm.Controls.Add(endTime);
dateForm.Controls.Add(confirmBtn);
dateForm.ShowDialog();
}
private void FastDelete_Click(object sender, EventArgs e) // 删除未签到成员
@ -878,7 +983,7 @@ namespace PEIS.View.Enrollment
OnCancelRegInfo(item.ID);
}
private void DgvEnrollment_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e)
private void DgvEnrollment_RowCellClick(object sender, RowCellClickEventArgs e)
{
if (e.Column.AbsoluteIndex == 0)
{
@ -1056,6 +1161,12 @@ namespace PEIS.View.Enrollment
return;
}
if(item?.CancelTime != null)
{
Global.Msg("info", "该订单为退费订单留存记录,不能删除!");
return;
}
if (item == null) return;
OnDeleteOrder(item.ID);
OnGetCheckCost(Convert.ToInt64(DgvOrg.GetRowCellValue(DgvOrg.GetSelectedRows()[0], "ID").ToString()), _chooseRegItem.ID);
@ -1168,6 +1279,12 @@ namespace PEIS.View.Enrollment
return;
}
if (item?.CancelTime != null)
{
Global.Msg("info", "该订单为退费订单留存记录,不能删除!");
return;
}
if (item == null) return;
OnDeleteOrder(item.ID);
OnGetCheckCost(Convert.ToInt64(DgvOrg.GetRowCellValue(DgvOrg.GetSelectedRows()[0], "ID").ToString()), _chooseRegItem.ID);
@ -1216,7 +1333,7 @@ namespace PEIS.View.Enrollment
#endregion 交互事件
private void DgvCheckCost_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArgs e)
private void DgvCheckCost_RowStyle(object sender, RowStyleEventArgs e)
{
if (DgvCheckCost.RowCount == 0) return;
if (DgvCheckCost.GetRowCellValue(e.RowHandle, "SendTime") != null)
@ -1235,7 +1352,7 @@ namespace PEIS.View.Enrollment
e.Appearance.ForeColor = Color.Black;
}
private void DgvCheckCost2_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArgs e)
private void DgvCheckCost2_RowStyle(object sender, RowStyleEventArgs e)
{
if (DgvCheckCost2.RowCount == 0) return;
if (DgvCheckCost2.GetRowCellValue(e.RowHandle, "SendTime") != null)
@ -1261,7 +1378,7 @@ namespace PEIS.View.Enrollment
grid.GroupText = Convert.ToBoolean(DgvCheckCost.GetRowCellValue(index, "GroupTag")) ? "分组缴费订单" : "未分组缴费订单";
}
private void DgvEnrollmentFeeItem_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArgs e)
private void DgvEnrollmentFeeItem_RowStyle(object sender, RowStyleEventArgs e)
{
if (DgvEnrollmentFeeItem.RowCount == 0) return;
e.Appearance.ForeColor = DgvEnrollmentFeeItem.GetRowCellValue(e.RowHandle, "OrderNo") == null ? Color.Black : Color.DodgerBlue;
@ -1335,7 +1452,7 @@ namespace PEIS.View.Enrollment
splitter7.Visible = PnlFeeItem.Visible;
}
private void DgvOrg_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e)
private void DgvOrg_CustomDrawRowIndicator(object sender, RowIndicatorCustomDrawEventArgs e)
{
if (e.RowHandle >= 0)
e.Info.DisplayText = (e.RowHandle + 1).ToString();
@ -1403,13 +1520,13 @@ namespace PEIS.View.Enrollment
}
}
private void DgvGroupPatient_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e)
private void DgvGroupPatient_CustomDrawRowIndicator(object sender, RowIndicatorCustomDrawEventArgs e)
{
if (e.RowHandle >= 0)
e.Info.DisplayText = (e.RowHandle + 1).ToString();
}
private void DgvPatient_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e)
private void DgvPatient_CustomDrawRowIndicator(object sender, RowIndicatorCustomDrawEventArgs e)
{
if (e.RowHandle >= 0)
e.Info.DisplayText = (e.RowHandle + 1).ToString();

@ -454,7 +454,7 @@
<data name="新建NToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAAERSURBVDhPrZDbSgJRGIXnpewd6jXsjSQvIrwoI0RQMChU
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAERSURBVDhPrZDbSgJRGIXnpewd6jXsjSQvIrwoI0RQMChU
0iiDPCGiE3ZCRkvR8VzTeBhnyR5/ccaZNnPhB4t9sdf6Ln5hb8QeathNJFVFKF5C8DqL4ksDVHWGDf7j
LHyPg6NjviSaFqlu5yQYR+KpupaIkrMknCxT3Y7v/NYYb0ITK1c3BarbWWhLQ7IR0cTKReyZ6lZ0XYei
ztHpK4bAc+h1FgQijzSxMptrGIxVSO0xX3AaStFki7bUMVFmaMm/eJMGfIH/MkGzLep0AXn4h/r3CJV3
@ -465,7 +465,7 @@
<data name="打开OToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAAJHSURBVDhPxZBdSNNhFMb/F110ZZEVhVBgeeHNICiiuggp
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJHSURBVDhPxZBdSNNhFMb/F110ZZEVhVBgeeHNICiiuggp
olAUyyxI0oSaH1QYC3N+tKnp5ubm1JUua5uuqdNKMwr7kApFItTUkWZqVhSVYmao5Nevvy7UoYR3HXh4
4XCe33nOKyy3lAY7l9RWMo0O/raWXxEyo5spVYTNvOGyfIRPfW+ptOkXqaPl6T83hcRmExSdgzAz3NVm
YWyoYla/B+1M9JtxWLPpaH22JORIjI6gKAMB0jyEimIdo4OlbuaprwVMOOMovammpDADc34qppwUrmnl
@ -481,7 +481,7 @@
<data name="保存SToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAAIySURBVDhPrZLfS5NRGMfff6H7boIuuq2pMZyL1eAt11CW
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIySURBVDhPrZLfS5NRGMfff6H7boIuuq2pMZyL1eAt11CW
DcOKsB9vpFmaLtNExco0av6CbIVLJ61Wk3BSkT/AFCkRZSpZmrmiJQ41xSaCwdfznL15XEUX0Reem5f3
8znnec4j/Zc8fxYGla91CS3eRTx0z6OpMYS7jmnU1X6B/VYA18snUVoyjsKCt8jLHcH5c36ouCQR2NUJ
1Nas4G9ZXlmFKbULh1Kf8lJxSfI+WeCCyopv6q+/h+DQ/DJ2WV5Ao1FgPegRAveDOS4oLfmq/h6dn/DH
@ -497,7 +497,7 @@
<data name="打印PToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAAIpSURBVDhPtZL/T1JRGMb5p1itrVZbbRpqZbawnBENV1I0
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIpSURBVDhPtZL/T1JRGMb5p1itrVZbbRpqZbawnBENV1I0
jGlByTSyJTXJwq2oKZQb1KAv6JCYWSxvBrkkZUq4CeQEiRABFeLL072Xa0zRra31bO8v57zP5znnPYf1
X+TxhWF6O7VtGYcnwbSWijKPOLzYrPSvLPwLS3huGUMlT7o9wGD9grVUBj+icdid03S9tDmgNxNwTgVQ
J+rA8XNtWwM+uuZATMwxmQVRycuJFNyzIRitDlScugKzjSgFRGJJaIwEsrk8AsHIhnSL/Ssck37UNipQ
@ -512,7 +512,7 @@
<data name="打印预览VToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAAGCSURBVDhPnZK9S0JRGMb9F1xb2gqaq6mhwCGDtvYIIyLI
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGCSURBVDhPnZK9S0JRGMb9F1xb2gqaq6mhwCGDtvYIIyLI
cJOE1paoIYpMKUjFRDH87lpoakGlIZF9DA2hZJEQhJXl1xPn3HPV29WQfvBwOfA+P95zuDJ39A6/4wyl
YOOSMHvOcHGThuwvSKEVRvsR+pQqWD3R1pK98DUbl7Jm5hA8SfESd6S5xH5wycalrO4E0D8yWQuriLH6
E2xcSqlcoRJBxCpiTO5TNi4m/ZgDF4nDsOulsfujyGRzUsmWM8YqdcggKbveS3A88bEkslRye58RSzZt
@ -525,7 +525,7 @@
<data name="剪切TToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAAGDSURBVDhPrZFNSwJRGIX9NYGbFoUlFElY1EJQKEYhCJsi
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGDSURBVDhPrZFNSwJRGIX9NYGbFoUlFElY1EJQKEYhCJsi
LaVsERnRF5iCaSZJO1toCDVGFkgoFpWQWWRR2aIvUxm1BKN1wSnHCFw4TOCzue+9nPNw4eVVnav4Izzb
QfxeGZ5TWaxT/rK3irzmC7CsusvC1G4IkbNLboIiDieF4GGUKeTeClDpppF8eeEu2PIfwfrzizSdw3Hk
EnKlFpkMzV2wH77AosOFTV8A+vkl9CiHuJeLJNNZjM8tYWB0FkTvMAwmy/8ERTR6CwjlGAi1Ccence6C
@ -538,7 +538,7 @@
<data name="复制CToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAAHkSURBVDhPvZHfS1NhHIf3p5QypLr2D4goMwoMCi/qIugH
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHkSURBVDhPvZHfS1NhHIf3p5QypLr2D4goMwoMCi/qIugH
Xe1Cr7qKDIMkZixwNhfWLGWbnuki0kXKzLU023KubBNPJrbRdOzocm6e2dPOO21mMS+CHvjcvOf9PF++
79H9M+7RT2iRRsIi9sEAXe43yAvf2LpSHq28G9uAnytNT4jMLewtcQ2Ht2pF8ps/aOt+gccX5lxD694S
+1BQFD1RkN5DSFa4Z3uONKbgHE3h8KZ4OJTC1J8UiSzmfhd2uf1CoJHbyKOsZokl0kKwm+aeJaov+wjO
@ -552,7 +552,7 @@
<data name="粘贴PToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAAHYcAAB2HAY/l8WUAAAJSSURBVDhPtZJrSJNRGMdf6IN9KbpQn/pUEH2JIoLqQ0Zh
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJSSURBVDhPtZJrSJNRGMdf6IN9KbpQn/pUEH2JIoLqQ0Zh
FqYZRmJG1iKmUqKyLB2pqSm6vC1Nm5GXoeatEsVJ0RASR3eNzegikRq5lrV3857Fr/d9ddlICoL+8OfA
Oef/e57zcIT/os7WLMw302muSGJ2689qqi7A44q8IzjtNYzarzHQm8tZtT8FmRqu6LToMxN+B8qhCbGR
KVcDE85ajKUaxoaryEuL4UVXIudPB5Ko2oy98xjDptXERuz3hsgAOTzlqqMk6yjdllzE90UM9Wp5azlB

@ -649,6 +649,12 @@ namespace PEIS.View.Enrollment
return;
}
if (item?.CancelTime != null)
{
Global.Msg("info", "该订单为退费订单留存记录,不能删除!");
return;
}
OnDeleteOrder(item.ID);
}

Loading…
Cancel
Save