add version 1.3.1.0
fix new bugs , add question dialog , add remove for mh and mhtmaster
parent
f9b29fc024
commit
23c5b09451
|
@ -7,6 +7,7 @@ namespace DocuMed.Api.Controllers;
|
|||
[AllowAnonymous]
|
||||
public class HomeController : Controller
|
||||
{
|
||||
[HttpGet]
|
||||
public IActionResult Index()
|
||||
{
|
||||
return View("Index", new IndexModel());
|
||||
|
|
|
@ -26,7 +26,7 @@ public class MedicalHistoryController : ICarterModule
|
|||
group.MapPut("", Put)
|
||||
.HasApiVersion(1.0);
|
||||
|
||||
group.MapDelete("", Delete)
|
||||
group.MapDelete("{id}", Delete)
|
||||
.HasApiVersion(1.0);
|
||||
}
|
||||
|
||||
|
@ -64,7 +64,7 @@ public class MedicalHistoryController : ICarterModule
|
|||
}
|
||||
|
||||
// DELETE:Delete Entity
|
||||
public virtual async Task<IResult> Delete(int id, IRepositoryWrapper repositoryWrapper, CancellationToken cancellationToken)
|
||||
public virtual async Task<IResult> Delete(Guid id, IRepositoryWrapper repositoryWrapper, CancellationToken cancellationToken)
|
||||
{
|
||||
var ent = await repositoryWrapper.SetRepository<MedicalHistory>().GetByIdAsync(cancellationToken, id);
|
||||
repositoryWrapper.SetRepository<MedicalHistory>().Delete(ent);
|
||||
|
|
|
@ -23,7 +23,7 @@ public class MedicalHistoryTemplateController : ICarterModule
|
|||
group.MapPut("", Put)
|
||||
.HasApiVersion(1.0);
|
||||
|
||||
group.MapDelete("", Delete)
|
||||
group.MapDelete("{id}", Delete)
|
||||
.HasApiVersion(1.0);
|
||||
}
|
||||
|
||||
|
@ -54,7 +54,7 @@ public class MedicalHistoryTemplateController : ICarterModule
|
|||
}
|
||||
|
||||
// DELETE:Delete Entity
|
||||
public virtual async Task<IResult> Delete(int id, IRepositoryWrapper repositoryWrapper, CancellationToken cancellationToken)
|
||||
public virtual async Task<IResult> Delete(Guid id, IRepositoryWrapper repositoryWrapper, CancellationToken cancellationToken)
|
||||
{
|
||||
var ent = await repositoryWrapper.SetRepository<MedicalHistoryTemplate>().GetByIdAsync(cancellationToken, id);
|
||||
repositoryWrapper.SetRepository<MedicalHistoryTemplate>().Delete(ent);
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
|
||||
<DockerComposeProjectPath>..\docker-compose.dcproj</DockerComposeProjectPath>
|
||||
<AssemblyVersion>1.2.1.0</AssemblyVersion>
|
||||
<FileVersion>1.2.1.0</FileVersion>
|
||||
<AssemblyVersion>1.3.1.0</AssemblyVersion>
|
||||
<FileVersion>1.3.1.0</FileVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
"IIS Express": {
|
||||
"commandName": "IISExpress",
|
||||
"launchBrowser": true,
|
||||
"launchUrl": "swagger",
|
||||
"launchUrl": "",
|
||||
"environmentVariables": {
|
||||
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||
}
|
||||
|
@ -21,7 +21,7 @@
|
|||
"Docker": {
|
||||
"commandName": "Docker",
|
||||
"launchBrowser": true,
|
||||
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/swagger",
|
||||
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}",
|
||||
"environmentVariables": {
|
||||
"ASPNETCORE_URLS": "http://+:80"
|
||||
},
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<ServiceWorkerAssetsManifest>service-worker-assets.js</ServiceWorkerAssetsManifest>
|
||||
<AssemblyVersion>1.2.1.0</AssemblyVersion>
|
||||
<FileVersion>1.2.1.0</FileVersion>
|
||||
<AssemblyVersion>1.3.1.0</AssemblyVersion>
|
||||
<FileVersion>1.3.1.0</FileVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -4,10 +4,12 @@
|
|||
@inject IRestWrapper RestWrapper
|
||||
@inject ISnackbar Snackbar
|
||||
@inject IUserUtility UserUtility
|
||||
@inject IDialogService DialogService
|
||||
@inject IJSRuntime JsRuntime
|
||||
|
||||
<BasePageUi Title="افزودن یک شرحال جدید" Description="لطفا اطلاعات بیمار را با دقت کامل وارد کنید">
|
||||
|
||||
<div class="flex flex-col w-full h-full rounded-t-xl p-1">
|
||||
<div class="flex flex-col w-full h-full rounded-t-xl p-2">
|
||||
|
||||
<MudCarousel class="flex-grow w-full h-full overflow-x-hidden overflow-y-scroll" @ref="@ViewModel.Carousel" ShowArrows="false"
|
||||
ShowBullets="false" EnableSwipeGesture="false" AutoCycle="false" TData="object">
|
||||
|
@ -16,6 +18,7 @@
|
|||
<div class="flex flex-col w-full h-full p-4">
|
||||
<MedicalHistoryActionStep1 @bind-ChiefComplaint="@ViewModel.PageDto.ChiefComplaint"
|
||||
DeleteClicked="@ViewModel.DeleteMedicalHistoryAsync"
|
||||
IsEditing="@ViewModel.IsEditing"
|
||||
@bind-SelectedTemplate="@ViewModel.SelectedTemplate"
|
||||
@bind-SelectedSection="@ViewModel.SelectedSelection"
|
||||
@bind-PatientAge="@ViewModel.PageDto.Age"
|
||||
|
@ -103,7 +106,7 @@
|
|||
}
|
||||
|
||||
<p class="my-auto text-lg font-extrabold text-center grow">@ViewModel.StepCounter</p>
|
||||
<MudButton @onclick="@ViewModel.RollBackStepClicked" IconSize="Size.Large" EndIcon="@Icons.Material.Filled.ChevronLeft"
|
||||
<MudButton @onclick="@ViewModel.RollBackStepClicked" Disabled="@ViewModel.DisableBackButton" IconSize="Size.Large" EndIcon="@Icons.Material.Filled.ChevronLeft"
|
||||
class="font-extrabold rounded-full">مرحله قبل</MudButton>
|
||||
</MudPaper>
|
||||
}
|
||||
|
@ -118,7 +121,7 @@
|
|||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
ViewModel = Guid.TryParse(MedicalHistoryId, out Guid medicalHistoryId) ?
|
||||
new MedicalHistoryActionPageViewModel(RestWrapper, NavigationManager, Snackbar, UserUtility, medicalHistoryId)
|
||||
new MedicalHistoryActionPageViewModel(RestWrapper, NavigationManager, Snackbar, UserUtility, DialogService,JsRuntime, medicalHistoryId)
|
||||
: new MedicalHistoryActionPageViewModel(RestWrapper, NavigationManager, Snackbar, UserUtility);
|
||||
|
||||
await ViewModel.InitializeAsync();
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
using Mapster;
|
||||
using DocuMed.PWA.Shared.Dialogs;
|
||||
using Mapster;
|
||||
using Microsoft.JSInterop;
|
||||
|
||||
namespace DocuMed.PWA.Pages;
|
||||
|
||||
|
@ -9,6 +11,9 @@ public class MedicalHistoryActionPageViewModel : BaseViewModel<MedicalHistoryLDt
|
|||
private readonly ISnackbar _snackbar;
|
||||
private readonly IUserUtility _userUtility;
|
||||
private readonly Guid _medicalHistoryId;
|
||||
private readonly IDialogService? _dialogService;
|
||||
private readonly IJSRuntime? _jsRuntime;
|
||||
public bool DisableBackButton { get; set; } = true;
|
||||
|
||||
public MedicalHistoryActionPageViewModel(IRestWrapper restWrapper,
|
||||
NavigationManager navigationManager,
|
||||
|
@ -26,8 +31,12 @@ public class MedicalHistoryActionPageViewModel : BaseViewModel<MedicalHistoryLDt
|
|||
NavigationManager navigationManager,
|
||||
ISnackbar snackbar,
|
||||
IUserUtility userUtility,
|
||||
IDialogService dialogService,
|
||||
IJSRuntime jsRuntime,
|
||||
Guid medicalHistoryId)
|
||||
{
|
||||
_dialogService = dialogService;
|
||||
_jsRuntime = jsRuntime;
|
||||
_restWrapper = restWrapper;
|
||||
_navigationManager = navigationManager;
|
||||
_snackbar = snackbar;
|
||||
|
@ -156,6 +165,7 @@ public class MedicalHistoryActionPageViewModel : BaseViewModel<MedicalHistoryLDt
|
|||
MedicalHistorySubmitted = true;
|
||||
}
|
||||
Carousel?.MoveTo(CurrentStep);
|
||||
DisableBackButton = false;
|
||||
}
|
||||
|
||||
private async Task SelectTemplateAsync()
|
||||
|
@ -269,27 +279,42 @@ public class MedicalHistoryActionPageViewModel : BaseViewModel<MedicalHistoryLDt
|
|||
|
||||
public async Task DeleteMedicalHistoryAsync()
|
||||
{
|
||||
try
|
||||
{
|
||||
IsProcessing = true;
|
||||
var token = await _userUtility.GetBearerTokenAsync();
|
||||
await _restWrapper.CrudDtoApiRest<MedicalHistoryLDto, MedicalHistorySDto, Guid>(Address.MedicalHistoryController)
|
||||
.Delete(PageDto.Id, token);
|
||||
|
||||
}
|
||||
catch (ApiException ex)
|
||||
{
|
||||
var exe = await ex.GetContentAsAsync<ApiResult>();
|
||||
_snackbar.Add(exe != null ? exe.Message : ex.Content, Severity.Error);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_snackbar.Add(e.Message, Severity.Error);
|
||||
}
|
||||
finally
|
||||
if(_dialogService==null)
|
||||
return;
|
||||
var options = new DialogOptions { CloseOnEscapeKey = true };
|
||||
var parameters = new DialogParameters<QuestionDialog>();
|
||||
parameters.Add(x => x.ContentText, "آیا از حذف شرح حال اطمینان دارید ?");
|
||||
var dialogReference = await _dialogService.ShowAsync<QuestionDialog>("حذف شرح حال", parameters, options);
|
||||
var result = await dialogReference.Result;
|
||||
if (!result.Canceled)
|
||||
{
|
||||
|
||||
IsProcessing = false;
|
||||
try
|
||||
{
|
||||
|
||||
IsProcessing = true;
|
||||
var token = await _userUtility.GetBearerTokenAsync();
|
||||
await _restWrapper.CrudDtoApiRest<MedicalHistoryLDto, MedicalHistorySDto, Guid>(Address.MedicalHistoryController)
|
||||
.Delete(PageDto.Id, token);
|
||||
_snackbar.Add("حذف شرح حال با موفقیت انجام شد", Severity.Success);
|
||||
if (_jsRuntime != null)
|
||||
await _jsRuntime.InvokeVoidAsync("history.back");
|
||||
|
||||
}
|
||||
catch (ApiException ex)
|
||||
{
|
||||
var exe = await ex.GetContentAsAsync<ApiResult>();
|
||||
_snackbar.Add(exe != null ? exe.Message : ex.Content, Severity.Error);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_snackbar.Add(e.Message, Severity.Error);
|
||||
}
|
||||
finally
|
||||
{
|
||||
|
||||
IsProcessing = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -299,6 +324,8 @@ public class MedicalHistoryActionPageViewModel : BaseViewModel<MedicalHistoryLDt
|
|||
return;
|
||||
Carousel?.MoveTo(--CurrentStep);
|
||||
StepCounter = $"{CurrentStep + 1} / 5";
|
||||
if (CurrentStep == 0)
|
||||
DisableBackButton = true;
|
||||
}
|
||||
|
||||
public void CompleteCreateMedicalHistory()
|
||||
|
|
|
@ -1,11 +1,8 @@
|
|||
@inject IRestWrapper RestWrapper
|
||||
@inject IUserUtility UserUtility
|
||||
<MudStack class="my-auto text-center font-iranyekan">
|
||||
<MudStack class="my-auto text-center font-iranyekan pb-20">
|
||||
<p class="text-lg font-extrabold">افزودن شرح حال جدید</p>
|
||||
<p class="text-center text-md">
|
||||
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از
|
||||
طراحان گرافیک است چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی
|
||||
مورد ده
|
||||
<p class="text-center text-md">شرح حال بیمار را در مراحل مختلف و اطلاعات را با دقت وارد نمایید ، در مرحله اخر میتوانید شرحال کامل را مشاهده کنید
|
||||
</p>
|
||||
<BasePartDivider Index="1" Title="شکایت اصلی بیمار" />
|
||||
|
||||
|
@ -17,6 +14,7 @@
|
|||
T="string" Label="نام خانوادگی بیمار" Variant="Variant.Outlined" class="text-sm my-5" />
|
||||
<MudNumericField Required="true" RequiredError="سن بیمار خود را وارد کنید" Value="@PatientAge"
|
||||
ValueChanged="async detail => { PatientAge = detail; await PatientAgeChanged.InvokeAsync(detail); }"
|
||||
Min="0"
|
||||
T="int" Label="سن بیمار" Variant="Variant.Outlined" />
|
||||
|
||||
|
||||
|
@ -68,13 +66,14 @@
|
|||
|
||||
</MudFocusTrap>
|
||||
|
||||
@if (IsEditing)
|
||||
{
|
||||
<BaseButtonUi Icon="@Icons.Material.TwoTone.Close"
|
||||
@onclick="@DeleteClicked" Content="حذف شرح حال" Variant="Variant.Outlined" Color="Color.Error" />
|
||||
}
|
||||
|
||||
|
||||
</MudForm>
|
||||
@if (IsEditing)
|
||||
{
|
||||
<BaseButtonUi Icon="@Icons.Material.TwoTone.Close"
|
||||
@onclick="@DeleteClicked" Content="حذف شرح حال" Variant="Variant.Outlined" Color="Color.Error" />
|
||||
}
|
||||
</MudStack>
|
||||
|
||||
@code
|
||||
|
|
|
@ -41,9 +41,10 @@
|
|||
|
||||
<MudNumericField Min="0"
|
||||
Value="@SPO2" ValueChanged="async detail => { SPO2 = detail; await SPO2Changed.InvokeAsync(detail); }"
|
||||
class="mx-2 my-3" Margin="Margin.Dense" Label="اکسیژن" T="double" Variant="Variant.Outlined" />
|
||||
class="mx-2 my-3" Margin="Margin.Dense" Max="100" Label="اکسیژن" T="double" Variant="Variant.Outlined" />
|
||||
|
||||
<MudNumericField Value="@Temperature"
|
||||
Step=".1"
|
||||
ValueChanged="async detail => { Temperature = detail; await TemperatureChanged.InvokeAsync(detail); }"
|
||||
Margin="Margin.Dense" class="my-3" Format="F1" Min="0.0" Label="دمای بدن" T="double" Variant="Variant.Outlined" />
|
||||
</div>
|
||||
|
|
|
@ -4,17 +4,24 @@
|
|||
@inject IRestWrapper RestWrapper
|
||||
@inject IUserUtility UserUtility
|
||||
@inject ISnackbar Snackbar
|
||||
@inject IDialogService DialogService
|
||||
@inject IJSRuntime JsRuntime
|
||||
|
||||
<BasePageUi Title="افزودن یک پیش نویس جدید" Description="پیش نویس خود را با دقت وارد کنید">
|
||||
|
||||
<div class="flex flex-col w-full h-full rounded-t-xl p-1">
|
||||
|
||||
<MudCarousel class="w-full h-full overflow-x-hidden overflow-y-scroll" @ref="@ViewModel.Carousel" ShowArrows="false"
|
||||
<MudCarousel class="w-full h-full overflow-x-hidden overflow-y-scroll"
|
||||
@ref="@ViewModel.Carousel"
|
||||
ShowArrows="false"
|
||||
ShowBullets="false" EnableSwipeGesture="false" AutoCycle="false" TData="object">
|
||||
|
||||
<MudCarouselItem>
|
||||
<div class="flex flex-col w-full h-full p-4">
|
||||
<MedicalHistoryTemplateActionStep1 @bind-ChiefComplaint="@ViewModel.PageDto.ChiefComplaint" @bind-SelectedSection="@ViewModel.SelectedSelection" />
|
||||
<MedicalHistoryTemplateActionStep1
|
||||
IsEditing="@ViewModel.IsEditing"
|
||||
DeleteClicked="@ViewModel.DeleteMedicalHistoryTemplateAsync"
|
||||
@bind-ChiefComplaint="@ViewModel.PageDto.ChiefComplaint" @bind-SelectedSection="@ViewModel.SelectedSelection" />
|
||||
|
||||
</div>
|
||||
</MudCarouselItem>
|
||||
|
@ -86,7 +93,7 @@
|
|||
}
|
||||
|
||||
<p class="my-auto text-lg text-[--color-medicalhistory] font-extrabold text-center grow">@ViewModel.StepCounter</p>
|
||||
<MudButton @onclick="@ViewModel.RollBackStepClicked" IconSize="Size.Large" EndIcon="@Icons.Material.Filled.ChevronLeft"
|
||||
<MudButton @onclick="@ViewModel.RollBackStepClicked" Disabled="@ViewModel.DisableBackButton" IconSize="Size.Large" EndIcon="@Icons.Material.Filled.ChevronLeft"
|
||||
class="font-extrabold text-[--color-medicalhistory] rounded-full">مرحله قبل</MudButton>
|
||||
</MudPaper>
|
||||
}
|
||||
|
@ -102,7 +109,7 @@
|
|||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
ViewModel = Guid.TryParse(TemplateId, out Guid templateId) ?
|
||||
new MedicalHistoryTemplateActionPageViewModel(NavigationManager, Snackbar, RestWrapper, UserUtility, templateId)
|
||||
new MedicalHistoryTemplateActionPageViewModel(NavigationManager, Snackbar, RestWrapper, UserUtility, DialogService,JsRuntime, templateId)
|
||||
: new MedicalHistoryTemplateActionPageViewModel(NavigationManager, Snackbar, RestWrapper, UserUtility);
|
||||
await ViewModel.InitializeAsync();
|
||||
await base.OnInitializedAsync();
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
namespace DocuMed.PWA.Pages;
|
||||
using DocuMed.PWA.Shared.Dialogs;
|
||||
using Microsoft.JSInterop;
|
||||
|
||||
namespace DocuMed.PWA.Pages;
|
||||
|
||||
public class MedicalHistoryTemplateActionPageViewModel : BaseViewModel<MedicalHistoryTemplateLDto>
|
||||
{
|
||||
|
@ -6,12 +9,15 @@ public class MedicalHistoryTemplateActionPageViewModel : BaseViewModel<MedicalHi
|
|||
private readonly ISnackbar _snackbar;
|
||||
private readonly IRestWrapper _restWrapper;
|
||||
private readonly IUserUtility _userUtility;
|
||||
private readonly IDialogService? _dialogService;
|
||||
private readonly IJSRuntime? _jsRuntime;
|
||||
private readonly Guid _templateId;
|
||||
public MudCarousel<object>? Carousel { get; set; }
|
||||
public bool MedicalHistorySubmitted { get; set; }
|
||||
public int CurrentStep { get; set; } = 0;
|
||||
public string StepCounter { get; set; } = "1 / 5";
|
||||
public bool IsEditing { get; set; } = false;
|
||||
public bool DisableBackButton { get; set; } = true;
|
||||
|
||||
public List<MedicalHistoryQuestionSDto> PiQuestions { get; set; } = new();
|
||||
public List<MedicalHistoryQuestionSDto> PdhQuestions { get; set; } = new();
|
||||
|
@ -43,12 +49,16 @@ public class MedicalHistoryTemplateActionPageViewModel : BaseViewModel<MedicalHi
|
|||
ISnackbar snackbar,
|
||||
IRestWrapper restWrapper,
|
||||
IUserUtility userUtility,
|
||||
IDialogService dialogService,
|
||||
IJSRuntime jsRuntime,
|
||||
Guid templateId)
|
||||
{
|
||||
_navigationManager = navigationManager;
|
||||
_snackbar = snackbar;
|
||||
_restWrapper = restWrapper;
|
||||
_userUtility = userUtility;
|
||||
_dialogService = dialogService;
|
||||
_jsRuntime = jsRuntime;
|
||||
_templateId = templateId;
|
||||
IsEditing = true;
|
||||
}
|
||||
|
@ -95,6 +105,46 @@ public class MedicalHistoryTemplateActionPageViewModel : BaseViewModel<MedicalHi
|
|||
await base.InitializeAsync();
|
||||
}
|
||||
|
||||
public async Task DeleteMedicalHistoryTemplateAsync()
|
||||
{
|
||||
if (_dialogService == null)
|
||||
return;
|
||||
var options = new DialogOptions { CloseOnEscapeKey = true };
|
||||
var parameters = new DialogParameters<QuestionDialog>();
|
||||
parameters.Add(x => x.ContentText, "آیا از حذف پیش نویس شرح حال اطمینان دارید ?");
|
||||
var dialogReference = await _dialogService.ShowAsync<QuestionDialog>("حذف پیش نویس", parameters, options);
|
||||
var result = await dialogReference.Result;
|
||||
if (!result.Canceled)
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
|
||||
IsProcessing = true;
|
||||
var token = await _userUtility.GetBearerTokenAsync();
|
||||
await _restWrapper.CrudDtoApiRest<MedicalHistoryTemplateLDto, MedicalHistoryTemplate, Guid>(Address.MedicalHistoryTemplateController)
|
||||
.Delete(PageDto.Id, token);
|
||||
_snackbar.Add("حذف پیش نویس با موفقیت انجام شد", Severity.Success);
|
||||
if (_jsRuntime != null)
|
||||
await _jsRuntime.InvokeVoidAsync("history.back");
|
||||
}
|
||||
catch (ApiException ex)
|
||||
{
|
||||
var exe = await ex.GetContentAsAsync<ApiResult>();
|
||||
_snackbar.Add(exe != null ? exe.Message : ex.Content, Severity.Error);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_snackbar.Add(e.Message, Severity.Error);
|
||||
}
|
||||
finally
|
||||
{
|
||||
|
||||
IsProcessing = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public async Task CompleteStepClicked()
|
||||
{
|
||||
++CurrentStep;
|
||||
|
@ -108,6 +158,7 @@ public class MedicalHistoryTemplateActionPageViewModel : BaseViewModel<MedicalHi
|
|||
MedicalHistorySubmitted = true;
|
||||
}
|
||||
Carousel?.MoveTo(CurrentStep);
|
||||
DisableBackButton = false;
|
||||
}
|
||||
|
||||
public async Task SubmitTemplateAsync()
|
||||
|
@ -187,10 +238,12 @@ public class MedicalHistoryTemplateActionPageViewModel : BaseViewModel<MedicalHi
|
|||
}
|
||||
public void RollBackStepClicked()
|
||||
{
|
||||
if(CurrentStep==0)
|
||||
if (CurrentStep == 0)
|
||||
return;
|
||||
Carousel?.MoveTo(--CurrentStep);
|
||||
StepCounter = $"{CurrentStep + 1} / 5";
|
||||
if (CurrentStep == 0)
|
||||
DisableBackButton = true;
|
||||
}
|
||||
|
||||
public void SubmitCreateTemplateAsync()
|
||||
|
|
|
@ -1,25 +1,27 @@
|
|||
@inject IRestWrapper RestWrapper
|
||||
@inject IUserUtility UserUtility
|
||||
<MudStack class="my-auto text-center font-iranyekan">
|
||||
<MudStack class="my-auto text-center font-iranyekan pb-20">
|
||||
|
||||
<div class="-mb-5">
|
||||
<dotlottie-player src="https://lottie.host/e7dc67f6-baa3-44c1-b136-3b6e04685fb1/pb8uFg7FnQ.json"
|
||||
background="transparent" speed="1" class="m-auto w-64 h-64" loop autoplay />
|
||||
</div>
|
||||
<p class="text-lg font-extrabold">افزودن پیش نویس شرح حال جدید</p>
|
||||
<p class="text-center text-md">
|
||||
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از
|
||||
طراحان گرافیک است چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی
|
||||
مورد ده
|
||||
<p class="text-center text-md">اطلاعات هر بخش شرح حال را میتوانید به صورت پیش نویس وارد کنید و در شرح حال نویسی خود را سریع و کارامد کنید
|
||||
</p>
|
||||
<BasePartDivider Index="1" Title="شکایت اصلی بیمار" />
|
||||
<MudTextField T="string" Value="@ChiefComplaint" ValueChanged="async cc => {ChiefComplaint=cc; await ChiefComplaintChanged.InvokeAsync(ChiefComplaint); }"
|
||||
Label="شکایت اصلی بیمار ( CC )" Variant="Variant.Outlined" Margin="Margin.Normal" />
|
||||
<BasePartDivider Index="1" Title="شکایت اصلی بیمار"/>
|
||||
<MudTextField T="string" Value="@ChiefComplaint" ValueChanged="async cc => {ChiefComplaint = cc; await ChiefComplaintChanged.InvokeAsync(ChiefComplaint); }"
|
||||
Label="شکایت اصلی بیمار ( CC )" Variant="Variant.Outlined" Margin="Margin.Normal"/>
|
||||
<MudAutocomplete Value="@SelectedSection" T="SectionSDto" Label="بخش بیمار" Variant="Variant.Outlined"
|
||||
ToStringFunc="dto => dto.Name"
|
||||
SearchFunc="@SearchSection"
|
||||
ValueChanged="async dto => { SelectedSection=dto; await SelectedSectionChanged.InvokeAsync(SelectedSection); }">
|
||||
ValueChanged="async dto => { SelectedSection = dto; await SelectedSectionChanged.InvokeAsync(SelectedSection); }">
|
||||
|
||||
<ProgressIndicatorInPopoverTemplate>
|
||||
<MudList Clickable="false">
|
||||
<MudListItem>
|
||||
<div class="flex flex-row w-full mx-auto">
|
||||
<MudProgressCircular class="my-auto mr-1 -ml-4" Size="Size.Small" Indeterminate="true" />
|
||||
<MudProgressCircular class="my-auto mr-1 -ml-4" Size="Size.Small" Indeterminate="true"/>
|
||||
<p class="font-bold my-1 mx-auto text-md">منتظر بمانید</p>
|
||||
</div>
|
||||
</MudListItem>
|
||||
|
@ -29,9 +31,22 @@
|
|||
<p>@e.Name</p>
|
||||
</ItemTemplate>
|
||||
</MudAutocomplete>
|
||||
@if (IsEditing)
|
||||
{
|
||||
<BaseButtonUi Icon="@Icons.Material.TwoTone.Close"
|
||||
@onclick="@DeleteClicked" Content="حذف شرح حال" Variant="Variant.Outlined" Color="Color.Error" />
|
||||
}
|
||||
</MudStack>
|
||||
|
||||
@code {
|
||||
|
||||
|
||||
[Parameter]
|
||||
public EventCallback DeleteClicked { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public bool IsEditing { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public string ChiefComplaint { get; set; } = string.Empty;
|
||||
[Parameter]
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
<style>
|
||||
</style>
|
||||
<MudDialog>
|
||||
<DialogContent>
|
||||
<p>@ContentText</p>
|
||||
</DialogContent>
|
||||
<DialogActions>
|
||||
<div class="flex flex-row w-full mt-3">
|
||||
<MudButton Color="Color.Info" Variant="Variant.Filled" OnClick="Submit" DisableElevation="true">تایید</MudButton>
|
||||
|
||||
<MudButton Variant="Variant.Outlined" Color="Color.Error" OnClick="Cancel" class="mx-4">انصراف</MudButton>
|
||||
</div>
|
||||
</DialogActions>
|
||||
</MudDialog>
|
||||
@code
|
||||
{
|
||||
|
||||
[CascadingParameter]
|
||||
MudDialogInstance? MudDialog { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public string ContentText { get; set; } = string.Empty;
|
||||
|
||||
void Submit() => MudDialog?.Close(DialogResult.Ok(true));
|
||||
void Cancel() => MudDialog?.Cancel();
|
||||
}
|
|
@ -42,6 +42,13 @@
|
|||
{
|
||||
MudTheme MyCustomTheme = new MudTheme()
|
||||
{
|
||||
Typography = new Typography()
|
||||
{
|
||||
Default = new Default()
|
||||
{
|
||||
FontFamily = new[] { "iranyekan" }
|
||||
}
|
||||
},
|
||||
Palette = new PaletteLight()
|
||||
{
|
||||
Primary = "#356859",
|
||||
|
|
|
@ -97,9 +97,12 @@
|
|||
}
|
||||
|
||||
|
||||
.mud-dialog-title {
|
||||
font-family: iranyekan !important;
|
||||
}
|
||||
|
||||
h1:focus {
|
||||
outline: none;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
a, .btn-link {
|
||||
|
|
|
@ -583,6 +583,9 @@ video {
|
|||
.-mb-3 {
|
||||
margin-bottom: -0.75rem;
|
||||
}
|
||||
.-mb-5 {
|
||||
margin-bottom: -1.25rem;
|
||||
}
|
||||
.-mb-8 {
|
||||
margin-bottom: -2rem;
|
||||
}
|
||||
|
@ -709,6 +712,9 @@ video {
|
|||
.h-60 {
|
||||
height: 15rem;
|
||||
}
|
||||
.h-64 {
|
||||
height: 16rem;
|
||||
}
|
||||
.h-7 {
|
||||
height: 1.75rem;
|
||||
}
|
||||
|
@ -745,6 +751,9 @@ video {
|
|||
.w-60 {
|
||||
width: 15rem;
|
||||
}
|
||||
.w-64 {
|
||||
width: 16rem;
|
||||
}
|
||||
.w-7 {
|
||||
width: 1.75rem;
|
||||
}
|
||||
|
@ -921,6 +930,9 @@ video {
|
|||
.p-1 {
|
||||
padding: 0.25rem;
|
||||
}
|
||||
.p-2 {
|
||||
padding: 0.5rem;
|
||||
}
|
||||
.p-4 {
|
||||
padding: 1rem;
|
||||
}
|
||||
|
@ -1155,9 +1167,12 @@ video {
|
|||
}
|
||||
|
||||
|
||||
.mud-dialog-title {
|
||||
font-family: iranyekan !important;
|
||||
}
|
||||
|
||||
h1:focus {
|
||||
outline: none;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
a, .btn-link {
|
||||
|
|
|
@ -657,6 +657,10 @@ video {
|
|||
margin-bottom: -0.75rem;
|
||||
}
|
||||
|
||||
.-mb-5 {
|
||||
margin-bottom: -1.25rem;
|
||||
}
|
||||
|
||||
.-mb-8 {
|
||||
margin-bottom: -2rem;
|
||||
}
|
||||
|
@ -825,6 +829,10 @@ video {
|
|||
height: 15rem;
|
||||
}
|
||||
|
||||
.h-64 {
|
||||
height: 16rem;
|
||||
}
|
||||
|
||||
.h-7 {
|
||||
height: 1.75rem;
|
||||
}
|
||||
|
@ -873,6 +881,10 @@ video {
|
|||
width: 15rem;
|
||||
}
|
||||
|
||||
.w-64 {
|
||||
width: 16rem;
|
||||
}
|
||||
|
||||
.w-7 {
|
||||
width: 1.75rem;
|
||||
}
|
||||
|
@ -1103,6 +1115,10 @@ video {
|
|||
padding: 0.25rem;
|
||||
}
|
||||
|
||||
.p-2 {
|
||||
padding: 0.5rem;
|
||||
}
|
||||
|
||||
.p-4 {
|
||||
padding: 1rem;
|
||||
}
|
||||
|
@ -1411,6 +1427,10 @@ video {
|
|||
url('../assets/fonts/ttf/iranyekanwebextrablackfanum.ttf') format('truetype');
|
||||
}
|
||||
|
||||
.mud-dialog-title {
|
||||
font-family: iranyekan !important;
|
||||
}
|
||||
|
||||
h1:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue