Выход из альфы
This commit is contained in:
@@ -7,7 +7,7 @@
|
|||||||
- [ ] Сделать обновление валидации от radiobutton
|
- [ ] Сделать обновление валидации от radiobutton
|
||||||
- [ ] Добавить направления других институтов
|
- [ ] Добавить направления других институтов
|
||||||
- [ ] Найти шаблоны других институтов и написать выбор шаблонов
|
- [ ] Найти шаблоны других институтов и написать выбор шаблонов
|
||||||
- [ ] Рефактор кода
|
- [x] Рефактор кода
|
||||||
|
|
||||||
# Лицензия
|
# Лицензия
|
||||||
|
|
||||||
|
|||||||
@@ -5,13 +5,17 @@
|
|||||||
|
|
||||||
<PageTitle>Отчислятор 3000</PageTitle>
|
<PageTitle>Отчислятор 3000</PageTitle>
|
||||||
|
|
||||||
<JS For="this" Args="[AuthenticationStateProvider.GetAuthenticationStateAsync().Result.User.Identity?.IsAuthenticated]" />
|
<JS For="this"
|
||||||
|
Args="[AuthenticationStateProvider.GetAuthenticationStateAsync().Result.User.Identity?.IsAuthenticated]"/>
|
||||||
|
|
||||||
<div class="relative">
|
<div class="relative">
|
||||||
<dialog id="info_modal" class="modal modal-bottom sm:modal-middle">
|
<dialog id="info_modal" class="modal modal-bottom sm:modal-middle">
|
||||||
<div class="modal-box">
|
<div class="modal-box">
|
||||||
<h3 class="text-lg font-bold">Сервис отчислений</h3>
|
<h3 class="text-lg font-bold">Сервис отчислений</h3>
|
||||||
<p class="py-4">Привет, это НЕОФИЦИАЛЬНЫЙ сервис отчислений!<br><br>Авторизуясь Вы соглашаетесь передать личные данные, такие как email + фио (из авторизации ЮФУ), и все остальные запрошенные далее. На нашем сервере хранятся только Ваши сгенерированные pdf заявления, другая информация сохраняется только в браузере.<br><br>Автор: <a target="_blank" href="https://t.me/serega404">@@serega404</a></p>
|
<p class="py-4">Привет, это НЕОФИЦИАЛЬНЫЙ сервис отчислений!<br><br>Авторизуясь Вы соглашаетесь передать
|
||||||
|
личные данные, такие как email + фио (из авторизации ЮФУ), и все остальные запрошенные далее. На нашем
|
||||||
|
сервере хранятся только Ваши сгенерированные pdf заявления, другая информация сохраняется только в
|
||||||
|
браузере.<br><br>Автор: <a target="_blank" href="https://t.me/serega404">@@serega404</a></p>
|
||||||
<div class="modal-action">
|
<div class="modal-action">
|
||||||
<form method="dialog">
|
<form method="dialog">
|
||||||
<button class="btn">Закрыть</button>
|
<button class="btn">Закрыть</button>
|
||||||
@@ -37,7 +41,7 @@
|
|||||||
<div
|
<div
|
||||||
class="text-center font-bold text-4xl md:text-5xl w-max absolute left-1/2 -top-1/2 transform -translate-x-1/2 italic">
|
class="text-center font-bold text-4xl md:text-5xl w-max absolute left-1/2 -top-1/2 transform -translate-x-1/2 italic">
|
||||||
<br>Отчислятор 3000<br>
|
<br>Отчислятор 3000<br>
|
||||||
<p class="text-2xl text-red-500">alpha</p></div>
|
</div>
|
||||||
<div class="flex flex-col space-y-4 w-96">
|
<div class="flex flex-col space-y-4 w-96">
|
||||||
<div class="card rounded-badge bg-base-200 p-4">
|
<div class="card rounded-badge bg-base-200 p-4">
|
||||||
@* <h2 class="card-title text-center text-3xl justify-center my-4">Мне нужно...</h2> *@
|
@* <h2 class="card-title text-center text-3xl justify-center my-4">Мне нужно...</h2> *@
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ namespace Otchinslator.Services;
|
|||||||
|
|
||||||
public interface IStatementGenerator
|
public interface IStatementGenerator
|
||||||
{
|
{
|
||||||
public Task<MemoryStream> GenerateStatementAsync(UserData userData);
|
public Task<MemoryStream> GenerateStatementAsync(UserData userData, string TemplateName = "ictis.docx");
|
||||||
public Task<Stream> ConvertToPDFAsync(MemoryStream stream);
|
public Task<Stream> ConvertToPDFAsync(MemoryStream stream);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -21,9 +21,10 @@ public class StatementGenerator(GotenbergSharpClient gotenbergSharpClient) : ISt
|
|||||||
private const string FreeEducationText = "за счет ассигнований федерального бюджета";
|
private const string FreeEducationText = "за счет ассигнований федерального бюджета";
|
||||||
private const string PaidEducationText = "на договорной (платной) основе";
|
private const string PaidEducationText = "на договорной (платной) основе";
|
||||||
|
|
||||||
public async Task<MemoryStream> GenerateStatementAsync(UserData userData)
|
// TODO: Выбор темплейтов не реализован
|
||||||
|
public async Task<MemoryStream> GenerateStatementAsync(UserData userData, string TemplateName = "ictis.docx")
|
||||||
{
|
{
|
||||||
byte[] textByteArray = File.ReadAllBytes("Templates/ictis.docx");
|
byte[] textByteArray = File.ReadAllBytes("Templates/" + TemplateName);
|
||||||
MemoryStream stream = new MemoryStream();
|
MemoryStream stream = new MemoryStream();
|
||||||
stream.Write(textByteArray, 0, textByteArray.Length);
|
stream.Write(textByteArray, 0, textByteArray.Length);
|
||||||
using (WordprocessingDocument doc = WordprocessingDocument.Open(stream, true))
|
using (WordprocessingDocument doc = WordprocessingDocument.Open(stream, true))
|
||||||
|
|||||||
Reference in New Issue
Block a user