Browse Source

套餐

bjmzak
wxd 1 year ago
parent
commit
ee015934cd
  1. 9
      src/Shentun.Peis.Application.Contracts/MedicalPackages/CreateMedicalPackageDto.cs
  2. 9
      src/Shentun.Peis.Application.Contracts/MedicalPackages/MedicalPackageDto.cs
  3. 8
      src/Shentun.Peis.Application.Contracts/MedicalPackages/UpdateMedicalPackageDto.cs
  4. 50
      src/Shentun.Peis.Application/ImportPacsResults/ImportPacsResultAppService.cs
  5. 2
      src/Shentun.Peis.Application/MedicalPackages/MedicalPackageAppService.cs
  6. 6
      src/Shentun.Peis.Domain/MedicalPackages/MedicalPackageManager.cs
  7. 14999
      src/Shentun.Peis.EntityFrameworkCore/Migrations/20240617144612_init20240617_MedicalPackage.Designer.cs
  8. 39
      src/Shentun.Peis.EntityFrameworkCore/Migrations/20240617144612_init20240617_MedicalPackage.cs
  9. 14
      src/Shentun.Peis.EntityFrameworkCore/Migrations/PeisDbContextModelSnapshot.cs

9
src/Shentun.Peis.Application.Contracts/MedicalPackages/CreateMedicalPackageDto.cs

@ -52,5 +52,14 @@ namespace Shentun.Peis.MedicalPackages
/// 是否基础推荐套餐 /// 是否基础推荐套餐
/// </summary> /// </summary>
public char IsBasicRecommend { get; set; } public char IsBasicRecommend { get; set; }
/// <summary>
/// 适用年龄下限
/// </summary>
public short AgeLowerLimit { get; set; }
/// <summary>
/// 适用年龄上限
/// </summary>
public short AgeUpperLimit { get; set; }
} }
} }

9
src/Shentun.Peis.Application.Contracts/MedicalPackages/MedicalPackageDto.cs

@ -61,5 +61,14 @@ namespace Shentun.Peis.MedicalPackages
/// </summary> /// </summary>
public char IsBasicRecommend { get; set; } public char IsBasicRecommend { get; set; }
/// <summary>
/// 适用年龄下限
/// </summary>
public short AgeLowerLimit { get; set; }
/// <summary>
/// 适用年龄上限
/// </summary>
public short AgeUpperLimit { get; set; }
} }
} }

8
src/Shentun.Peis.Application.Contracts/MedicalPackages/UpdateMedicalPackageDto.cs

@ -49,5 +49,13 @@ namespace Shentun.Peis.MedicalPackages
/// </summary> /// </summary>
public char IsBasicRecommend { get; set; } public char IsBasicRecommend { get; set; }
/// <summary>
/// 适用年龄下限
/// </summary>
public short AgeLowerLimit { get; set; }
/// <summary>
/// 适用年龄上限
/// </summary>
public short AgeUpperLimit { get; set; }
} }
} }

50
src/Shentun.Peis.Application/ImportPacsResults/ImportPacsResultAppService.cs

@ -19,6 +19,7 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using System.Net.Http;
using System.Security.Cryptography.Xml; using System.Security.Cryptography.Xml;
using System.Text; using System.Text;
using System.Threading; using System.Threading;
@ -66,6 +67,7 @@ namespace Shentun.Peis.ImportPacsResults
private List<ReferenceRange> _referenceRanges; private List<ReferenceRange> _referenceRanges;
private static bool _isRunning = false; private static bool _isRunning = false;
private static readonly object lockObject = new object(); private static readonly object lockObject = new object();
private readonly IHttpClientFactory _httpClientFactory;
public ImportPacsResultAppService(IRepository<RegisterCheck, Guid> registerCheckRepository, public ImportPacsResultAppService(IRepository<RegisterCheck, Guid> registerCheckRepository,
IRepository<RegisterCheckItem> registerCheckItemRepository, IRepository<RegisterCheckItem> registerCheckItemRepository,
IRepository<PatientRegister, Guid> patientRegisterRepository, IRepository<PatientRegister, Guid> patientRegisterRepository,
@ -91,7 +93,8 @@ namespace Shentun.Peis.ImportPacsResults
UnitManager unitManager, UnitManager unitManager,
RegisterCheckAppService registerCheckAppService, RegisterCheckAppService registerCheckAppService,
IRepository<RegisterCheckPicture> registerCheckPictureRepository, IRepository<RegisterCheckPicture> registerCheckPictureRepository,
IRepository<ThirdInterface> thirdInterfaceRepository)
IRepository<ThirdInterface> thirdInterfaceRepository,
IHttpClientFactory httpClientFactory)
{ {
_registerCheckRepository = registerCheckRepository; _registerCheckRepository = registerCheckRepository;
_userRepository = userRepository; _userRepository = userRepository;
@ -120,6 +123,7 @@ namespace Shentun.Peis.ImportPacsResults
_registerCheckAppService = registerCheckAppService; _registerCheckAppService = registerCheckAppService;
_registerCheckPictureRepository = registerCheckPictureRepository; _registerCheckPictureRepository = registerCheckPictureRepository;
_thirdInterfaceRepository = thirdInterfaceRepository; _thirdInterfaceRepository = thirdInterfaceRepository;
_httpClientFactory = httpClientFactory;
} }
[HttpPost("api/app/ImportPacsResult/ImportResult")] [HttpPost("api/app/ImportPacsResult/ImportResult")]
@ -242,7 +246,7 @@ namespace Shentun.Peis.ImportPacsResults
{ {
throw new UserFriendlyException("文件Base64不能传值"); throw new UserFriendlyException("文件Base64不能传值");
} }
file.FileBase64 = Shentun.Utilities.FileHelper.ToBase64(file.FileUrl);
file.FileBase64 = ToBase64(file.FileUrl);
} }
else else
{ {
@ -474,7 +478,7 @@ namespace Shentun.Peis.ImportPacsResults
{ {
throw new UserFriendlyException("文件Base64不能传值"); throw new UserFriendlyException("文件Base64不能传值");
} }
file.FileBase64 = Shentun.Utilities.FileHelper.ToBase64str(file.FileUrl);
file.FileBase64 = ToBase64(file.FileUrl);
} }
else else
{ {
@ -581,5 +585,45 @@ namespace Shentun.Peis.ImportPacsResults
} }
} }
private string ToBase64(string filename)
{
Stream stream;
string fileBase64;
if (filename.StartsWith("http"))
{
using (var httpClient = _httpClientFactory.CreateClient())
{
var response = httpClient.GetAsync(filename).Result;
if (response.IsSuccessStatusCode)
{
var contentStream = response.Content.ReadAsStreamAsync().Result;
using var memoryStream = new MemoryStream();
contentStream.CopyTo(memoryStream);
var fileBytes = memoryStream.ToArray();
return Convert.ToBase64String(fileBytes);
}
else
{
throw new Exception("转换base64时,返回错误:" + response.StatusCode);
}
}
}
else
{
using (stream = new FileStream(filename, FileMode.Open, FileAccess.Read))
{
byte[] byteData = new byte[stream.Length];
stream.Read(byteData, 0, byteData.Length);
fileBase64 = Convert.ToBase64String(byteData);
stream.Close();
}
return fileBase64;
}
}
} }
} }

2
src/Shentun.Peis.Application/MedicalPackages/MedicalPackageAppService.cs

@ -106,6 +106,8 @@ namespace Shentun.Peis.MedicalPackages
IsActive = s.IsActive, IsActive = s.IsActive,
IsWebAppoint = s.IsWebAppoint, IsWebAppoint = s.IsWebAppoint,
IsBasicRecommend = s.IsBasicRecommend, IsBasicRecommend = s.IsBasicRecommend,
AgeLowerLimit = s.AgeLowerLimit,
AgeUpperLimit = s.AgeUpperLimit,
CreatorName = EntityHelper.GetSurnameNoSql(userList, s.CreatorId), CreatorName = EntityHelper.GetSurnameNoSql(userList, s.CreatorId),
LastModifierName = EntityHelper.GetSurnameNoSql(userList, s.LastModifierId) LastModifierName = EntityHelper.GetSurnameNoSql(userList, s.LastModifierId)
}).OrderBy(o => o.DisplayOrder).ToList(); }).OrderBy(o => o.DisplayOrder).ToList();

6
src/Shentun.Peis.Domain/MedicalPackages/MedicalPackageManager.cs

@ -61,7 +61,9 @@ namespace Shentun.Peis.MedicalPackages
Remark = entity.Remark, Remark = entity.Remark,
IsWebAppoint = entity.IsWebAppoint, IsWebAppoint = entity.IsWebAppoint,
DisplayOrder = await EntityHelper.CreateMaxDisplayOrder<MedicalPackage>(_repository), DisplayOrder = await EntityHelper.CreateMaxDisplayOrder<MedicalPackage>(_repository),
IsBasicRecommend = entity.IsBasicRecommend
IsBasicRecommend = entity.IsBasicRecommend,
AgeLowerLimit = entity.AgeLowerLimit,
AgeUpperLimit = entity.AgeUpperLimit
}; };
} }
/// <summary> /// <summary>
@ -92,6 +94,8 @@ namespace Shentun.Peis.MedicalPackages
targetEntity.Remark = sourceEntity.Remark; targetEntity.Remark = sourceEntity.Remark;
targetEntity.IsWebAppoint = sourceEntity.IsWebAppoint; targetEntity.IsWebAppoint = sourceEntity.IsWebAppoint;
targetEntity.IsBasicRecommend = sourceEntity.IsBasicRecommend; targetEntity.IsBasicRecommend = sourceEntity.IsBasicRecommend;
targetEntity.AgeLowerLimit = sourceEntity.AgeLowerLimit;
targetEntity.AgeUpperLimit = sourceEntity.AgeUpperLimit;
} }

14999
src/Shentun.Peis.EntityFrameworkCore/Migrations/20240617144612_init20240617_MedicalPackage.Designer.cs
File diff suppressed because it is too large
View File

39
src/Shentun.Peis.EntityFrameworkCore/Migrations/20240617144612_init20240617_MedicalPackage.cs

@ -0,0 +1,39 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Shentun.Peis.Migrations
{
public partial class init20240617_MedicalPackage : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<short>(
name: "age_lower_limit",
table: "medical_package",
type: "smallint",
nullable: false,
defaultValueSql: "0",
comment: "适用年龄下限");
migrationBuilder.AddColumn<short>(
name: "age_upper_limit",
table: "medical_package",
type: "smallint",
nullable: false,
defaultValueSql: "200",
comment: "适用年龄上限");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "age_lower_limit",
table: "medical_package");
migrationBuilder.DropColumn(
name: "age_upper_limit",
table: "medical_package");
}
}
}

14
src/Shentun.Peis.EntityFrameworkCore/Migrations/PeisDbContextModelSnapshot.cs

@ -5680,6 +5680,20 @@ namespace Shentun.Peis.Migrations
.IsFixedLength() .IsFixedLength()
.HasComment("套餐主档编号"); .HasComment("套餐主档编号");
b.Property<short>("AgeLowerLimit")
.ValueGeneratedOnAdd()
.HasColumnType("smallint")
.HasColumnName("age_lower_limit")
.HasDefaultValueSql("0")
.HasComment("适用年龄下限");
b.Property<short>("AgeUpperLimit")
.ValueGeneratedOnAdd()
.HasColumnType("smallint")
.HasColumnName("age_upper_limit")
.HasDefaultValueSql("200")
.HasComment("适用年龄上限");
b.Property<string>("ConcurrencyStamp") b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken() .IsConcurrencyToken()
.HasMaxLength(40) .HasMaxLength(40)

Loading…
Cancel
Save