@ -32,6 +32,7 @@ using System.Text;
using System.Threading.Tasks ;
using Volo.Abp ;
using Volo.Abp.Application.Services ;
using Volo.Abp.Auditing ;
using Volo.Abp.Caching ;
using Volo.Abp.Data ;
using Volo.Abp.Domain.Entities ;
@ -172,6 +173,8 @@ namespace Shentun.Peis.CCTJExportDatas
private readonly IRepository < Room , Guid > _roomRepository ;
private readonly IRepository < RoomDetail > _roomDetailRepository ;
private readonly IRepository < UserItemType > _userItemTypeRepository ;
private readonly IDataFilter _dataFilter ;
public CCTJExportDataAppService (
UnitOfWorkManager unitOfWorkManager ,
IRepository < DeviceType , Guid > deviceTypeRepository ,
@ -248,7 +251,8 @@ namespace Shentun.Peis.CCTJExportDatas
IRepository < CommonTable , Guid > commonTableRepository ,
IRepository < Room , Guid > roomRepository ,
IRepository < RoomDetail > roomDetailRepository ,
IRepository < UserItemType > userItemTypeRepository )
IRepository < UserItemType > userItemTypeRepository ,
IDataFilter dataFilter )
{
_unitOfWorkManager = unitOfWorkManager ;
_deviceTypeRepository = deviceTypeRepository ;
@ -326,6 +330,7 @@ namespace Shentun.Peis.CCTJExportDatas
_roomRepository = roomRepository ;
_roomDetailRepository = roomDetailRepository ;
_userItemTypeRepository = userItemTypeRepository ;
_dataFilter = dataFilter ;
}
@ -3147,7 +3152,7 @@ namespace Shentun.Peis.CCTJExportDatas
}
}
// Guid autoPatientId = GuidGenerator.Create(); //档案ID
// Guid autoPatientId = GuidGenerator.Create(); //档案ID
Guid autoPatientId = StringConvertGuidHelper . GenerateURLUUID ( row [ "patient_id" ] . ToString ( ) ) ;
var dataPatient = new Patient ( autoPatientId )
@ -3354,7 +3359,31 @@ namespace Shentun.Peis.CCTJExportDatas
SummaryDoctorId = summaryDoctorId ,
ThirdInfo = row [ "third_info" ] . ToString ( ) ,
} ;
await _patientRegisterRepository . InsertAsync ( data , true ) ;
#region 修改创建者日期跟id
Guid registerDoctorId = Guid . Parse ( _configuration . GetValue < string > ( "AdminId" ) ) ;
var registerDoctorEnt = userList . Where ( m = > m . Name = = row [ "register_doctor" ] . ToString ( ) . Trim ( )
| | m . Surname = = row [ "register_doctor" ] . ToString ( ) . Trim ( )
| | m . UserName = = row [ "register_doctor" ] . ToString ( ) . Trim ( ) ) . FirstOrDefault ( ) ;
if ( registerDoctorEnt ! = null )
{
registerDoctorId = registerDoctorEnt . Id ;
}
data . UpdateCreatorId ( registerDoctorId ) ;
data . UpdateCreationTime ( Convert . ToDateTime ( row [ "register_date" ] ) ) ;
#endregion
// 关键:临时禁用审计过滤器
using ( _dataFilter . Disable < IAuditedObject > ( ) )
{
await _patientRegisterRepository . InsertAsync ( data , true ) ;
}
//await _patientRegisterRepository.InsertAsync(data, true);
//stopwatch31.Stop();
//_logger.LogInformation($"{row["patient_register_id"]}_第31片段耗时:{stopwatch31.ElapsedMilliseconds}");
@ -3782,18 +3811,18 @@ namespace Shentun.Peis.CCTJExportDatas
await uow . CompleteAsync ( ) ;
#region 修改创建者日期跟id
Guid registerDoctorId = Guid . Parse ( _configuration . GetValue < string > ( "AdminId" ) ) ;
var registerDoctorEnt = userList . Where ( m = > m . Name = = row [ "register_doctor" ] . ToString ( ) . Trim ( ) ) . FirstOrDefault ( ) ;
if ( registerDoctorEnt ! = null )
{
registerDoctorId = registerDoctorEnt . Id ;
}
string sql_update = $"update patient_register set creator_id='{registerDoctorId}',creation_time='{Convert.ToDateTime(row[" register_date "]).ToString(" yyyy - MM - dd HH : mm : ss ")}'" ;
sql_update + = $" where id='{patientRegisterId}' " ;
await newDb . Ado . ExecuteCommandAsync ( sql_update ) ;
#endregion
;
// #region 修改创建者日期跟id
//Guid registerDoctorId = Guid.Parse(_configuration.GetValue<string>("AdminId"));
//var registerDoctorEnt = userList.Where(m => m.Name == row["register_doctor"].ToString().Trim()).FirstOrDefault();
//if (registerDoctorEnt != null)
//{
// registerDoctorId = registerDoctorEnt.Id;
//}
//string sql_update = $"update patient_register set creator_id='{registerDoctorId}',creation_time='{Convert.ToDateTime(row["register_date"]).ToString("yyyy-MM-dd HH:mm:ss ")}'";
//sql_update += $" where id='{patientRegisterId}' ";
//await newDb.Ado.ExecuteCommandAsync(sql_update);
// #endregion
}
stopwatch3 . Stop ( ) ;
_logger . LogInformation ( $"{row[" patient_register_id "]}_处理单个人总耗时:{stopwatch3.ElapsedMilliseconds}" ) ;