Browse Source

报告

bjmzak
wxd 2 years ago
parent
commit
e24e2b07e6
  1. 117
      src/Shentun.Peis.Application/DataMigrations/BaseDataHandleAppService.cs
  2. 3
      src/Shentun.Peis.Application/SysParmTypes/SysParmTypeAppService.cs
  3. 19
      src/Shentun.Peis.Domain/ReportTemplates/CustomerOrgReportManager.cs

117
src/Shentun.Peis.Application/DataMigrations/BaseDataHandleAppService.cs

@ -42,8 +42,8 @@ namespace Shentun.Peis.DataMigrations
/// <summary>
/// 基础数据处理
/// </summary>
//[Authorize]
//[RemoteService(false)]
[Authorize]
[RemoteService(false)]
public class BaseDataHandleAppService : ApplicationService
{
@ -133,6 +133,9 @@ namespace Shentun.Peis.DataMigrations
private readonly IRepository<ReportFormatTemplate, string> _reportFormatTemplateRepository;
private readonly IRepository<SampleGroup, Guid> _sampleGroupRepository;
private readonly IRepository<SampleGroupDetail> _sampleGroupDetailRepository;
private readonly IRepository<SysParmType> _sysParmTypeRepository;
private readonly IRepository<SysParm> _sysParmRepository;
private readonly IRepository<SysParmValue> _sysParmValueRepository;
private Dictionary<string, string> veryPatientNo = new Dictionary<string, string>();
@ -184,7 +187,10 @@ namespace Shentun.Peis.DataMigrations
IRepository<ReportFormat, string> reportFormatRepository,
IRepository<ReportFormatTemplate, string> reportFormatTemplateRepository,
IRepository<SampleGroup, Guid> sampleGroupRepository,
IRepository<SampleGroupDetail> sampleGroupDetailRepository)
IRepository<SampleGroupDetail> sampleGroupDetailRepository,
IRepository<SysParmType> sysParmTypeRepository,
IRepository<SysParm> sysParmRepository,
IRepository<SysParmValue> sysParmValueRepository)
{
_deviceTypeRepository = deviceTypeRepository;
_itemTypeRepository = itemTypeRepository;
@ -234,6 +240,9 @@ namespace Shentun.Peis.DataMigrations
_reportFormatTemplateRepository = reportFormatTemplateRepository;
_sampleGroupRepository = sampleGroupRepository;
_sampleGroupDetailRepository = sampleGroupDetailRepository;
_sysParmTypeRepository = sysParmTypeRepository;
_sysParmRepository = sysParmRepository;
_sysParmValueRepository = sysParmValueRepository;
}
@ -3214,6 +3223,108 @@ namespace Shentun.Peis.DataMigrations
#endregion
#region 迁移系统参数
/// <summary>
/// 迁移系统参数类别数据
/// </summary>
/// <returns></returns>
public async Task TransferSysParmTypeData()
{
var oldSysParmType = await PgDb.Ado.GetDataTableAsync("select * from sys_parm_type ");
if (oldSysParmType.Rows.Count > 0)
{
foreach (DataRow row in oldSysParmType.Rows)
{
using (var uow = _unitOfWorkManager.Begin(requiresNew: true, isTransactional: true))
{
SysParmType data = new SysParmType
{
Id = row["id"].ToString(),
DisplayName = row["display_name"].ToString(),
DisplayOrder = Convert.ToInt32(row["display_order"].ToString()),
ParentId = row["parent_id"].ToString(),
SimpleCode = row["simple_code"].ToString()
};
await _sysParmTypeRepository.InsertAsync(data, true);
await uow.CompleteAsync();
}
}
}
}
/// <summary>
/// 迁移系统参数数据
/// </summary>
/// <returns></returns>
public async Task TransferSysParmData()
{
var oldSysParm = await PgDb.Ado.GetDataTableAsync("select * from sys_parm ");
if (oldSysParm.Rows.Count > 0)
{
foreach (DataRow row in oldSysParm.Rows)
{
using (var uow = _unitOfWorkManager.Begin(requiresNew: true, isTransactional: true))
{
SysParm data = new SysParm
{
Id = row["id"].ToString(),
DisplayName = row["display_name"].ToString(),
DisplayOrder = Convert.ToInt32(row["display_order"].ToString()),
IsPublic = Convert.ToChar(row["is_public"].ToString()),
Remark = row["remark"].ToString(),
ValueType = Convert.ToChar(row["value_type"].ToString()),
SysParmTypeId = row["sys_parm_type_id"].ToString(),
SimpleCode = row["simple_code"].ToString()
};
await _sysParmRepository.InsertAsync(data, true);
await uow.CompleteAsync();
}
}
}
}
/// <summary>
/// 迁移系统参数值数据
/// </summary>
/// <returns></returns>
public async Task TransferSysParmValueData()
{
var oldSysParmValue = await PgDb.Ado.GetDataTableAsync("select * from sys_parm_value where medical_center_id='00000000-0000-0000-0000-000000000000' ");
if (oldSysParmValue.Rows.Count > 0)
{
foreach (DataRow row in oldSysParmValue.Rows)
{
using (var uow = _unitOfWorkManager.Begin(requiresNew: true, isTransactional: true))
{
SysParmValue data = new SysParmValue
{
SysParmId = row["sys_parm_id"].ToString(),
Remark = row["remark"].ToString(),
MedicalCenterId = Guid.Empty,
ParmValue = row["parm_value"].ToString()
};
await _sysParmValueRepository.InsertAsync(data, true);
await uow.CompleteAsync();
}
}
}
}
#endregion
private void LoadDLL()
{
// 定义dll文件夹路径

3
src/Shentun.Peis.Application/SysParmTypes/SysParmTypeAppService.cs

@ -64,7 +64,8 @@ namespace Shentun.Peis.SysParmTypes
DisplayOrder = p.DisplayOrder
};
return GetTree(items.ToList(), null);
return GetTree(items.ToList(), "");
}
/// <summary>

19
src/Shentun.Peis.Domain/ReportTemplates/CustomerOrgReportManager.cs

@ -1916,9 +1916,11 @@ namespace Shentun.Peis.ReportTemplates
string Checked_MaleExamineRatio = Register_MaleNumber != 0 ? Math.Round(Checked_MaleNumber * 100M / Register_MaleNumber, 2).ToString() + "%" : "0%";
string Checked_FemaleExamineRatio = Register_FemaleNumber != 0 ? Math.Round(Checked_FemaleNumber * 100M / Register_FemaleNumber, 2).ToString() + "%" : "0%";
string Checked_AverageExamineRatio = Math.Round(
(Register_MaleNumber != 0 ? Math.Round(Checked_MaleNumber * 100M / Register_MaleNumber, 2) : 0
+ Register_FemaleNumber != 0 ? Math.Round(Checked_FemaleNumber * 100M / Register_FemaleNumber, 2) : 0) / 2, 2
).ToString() + "%";
(
(Register_MaleNumber != 0 ? Math.Round(Checked_MaleNumber * 100M / Register_MaleNumber, 2) : 0)
+ (Register_FemaleNumber != 0 ? Math.Round(Checked_FemaleNumber * 100M / Register_FemaleNumber, 2) : 0)
) / 2
, 2).ToString() + "%";
documentData.CheckedDetail = new InspectionPersonnel_Detail
{
@ -1948,8 +1950,11 @@ namespace Shentun.Peis.ReportTemplates
string UnChecked_MaleExamineRatio = Register_MaleNumber != 0 ? Math.Round(UnChecked_MaleNumber * 100M / Register_MaleNumber, 2).ToString() + "%" : "0%";
string UnChecked_FemaleExamineRatio = Register_FemaleNumber != 0 ? Math.Round(UnChecked_FemaleNumber * 100M / Register_FemaleNumber, 2).ToString() + "%" : "0%";
string UnChecked_AverageExamineRatio = Math.Round(
(Register_MaleNumber != 0 ? Math.Round(UnChecked_MaleNumber * 100M / Register_MaleNumber, 2) : 0
+ Register_FemaleNumber != 0 ? Math.Round(UnChecked_FemaleNumber * 100M / Register_FemaleNumber, 2) : 0) / 2, 2).ToString() + "%";
(
(Register_MaleNumber != 0 ? Math.Round(UnChecked_MaleNumber * 100M / Register_MaleNumber, 2) : 0)
+ (Register_FemaleNumber != 0 ? Math.Round(UnChecked_FemaleNumber * 100M / Register_FemaleNumber, 2) : 0)
) / 2, 2
).ToString() + "%";
documentData.UnCheckedDetail = new InspectionPersonnel_Detail
{
@ -2041,8 +2046,8 @@ namespace Shentun.Peis.ReportTemplates
FemaleAsbitemCheckRatio = documentData.CheckedDetail.FemaleNumber != 0 ?
Math.Round(s.Where(m => m.SexId == SexFlag.Female).Count() * 100M / documentData.CheckedDetail.FemaleNumber, 2) + "%" : "0%",
TotalAsbitemCheckRatio = Math.Round(
(documentData.CheckedDetail.MaleNumber != 0 ? Math.Round(s.Where(m => m.SexId == SexFlag.Male).Count() * 100M / documentData.CheckedDetail.MaleNumber, 2) : 0
+ documentData.CheckedDetail.FemaleNumber != 0 ? Math.Round(s.Where(m => m.SexId == SexFlag.Female).Count() * 100M / documentData.CheckedDetail.FemaleNumber, 2) : 0) / 2, 2
((documentData.CheckedDetail.MaleNumber != 0 ? Math.Round(s.Where(m => m.SexId == SexFlag.Male).Count() * 100M / documentData.CheckedDetail.MaleNumber, 2) : 0)
+ (documentData.CheckedDetail.FemaleNumber != 0 ? Math.Round(s.Where(m => m.SexId == SexFlag.Female).Count() * 100M / documentData.CheckedDetail.FemaleNumber, 2) : 0)) / 2, 2
) + "%"
});

Loading…
Cancel
Save