mh_custom/wtmProject.Shared/Pages/Index_en.razor

277 lines
14 KiB
Plaintext
Raw Normal View History

2026-01-06 10:55:05 +08:00
@using Newtonsoft.Json
@inherits BasePage
<style>
.indexSelect {
height: 44px;
}
.indexInputGroup {
width: 80%;
position: absolute;
top: 20%;
left: 50%;
transform: translate(-50%,-50%);
z-index: 1;
opacity: 0.9;
}
.rowIndex {
width: 80%;
position: absolute;
top: 55%;
left: 50%;
transform: translate(-50%,-50%);
}
</style>
2024-05-28 14:49:22 +08:00
<div class="index">
<div class="welcome container">
<div class="form-inline">
<div class="row">
</div>
</div>
<div class="form-inline">
2026-01-06 10:55:05 +08:00
<div>
<BootstrapInputGroup class="indexInputGroup">
<Select @bind-Value="@inputText" Items="@AllWTM_CUSTOMs" DisplayText="<22>ͻ<EFBFBD>ȫ<EFBFBD>ƣ<EFBFBD>" ShowLabel="true" ShowSearch="true" class="indexSelect" />
@*<BootstrapInput @bind-Value="@inputText" PlaceHolder="<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ..." DisplayText="<22>ͻ<EFBFBD>ȫ<EFBFBD>ƣ<EFBFBD>" ShowLabel="true" style="margin-right:10px;"></BootstrapInput>*@
<Button Color="Color.Primary" ButtonType="ButtonType.Submit" Icon="fa fa-search" Text="<22><><EFBFBD>ݲ<EFBFBD>ѯ" IsAsync="true" OnClick="() => CustomReportClick()" style="width:108px;height:44px;" />
</BootstrapInputGroup>
</div>
2024-05-28 14:49:22 +08:00
<div class="row">
2026-01-06 10:55:05 +08:00
<div class="col-12">
2024-05-28 14:49:22 +08:00
<div class="welcome-footer">
<div class="d-flex flex-wrap q-link">
2026-01-06 10:55:05 +08:00
<div style="margin-bottom:20px;">
<Button Color="Color.None" OnClick="@CustomCreateClick"><i class="fa fa-clipboard fa-0" style="color:#367FA9;"></i><p class="link-ctx" style="color:#367FA9;"><3E><><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD></p></Button>
</div>
<div style="margin-bottom:20px;">
<TabLink Text="<22><><EFBFBD><EFBFBD><EFBFBD>ݷüƻ<C3BC>" Url="/_Admin/WTM_VISIT_PLAN/Create"><i class="fa fa-bars fa-0" style="padding:6px 12px 0px 12px"></i><p style="padding:0px 12px 6px 12px"><3E><><EFBFBD><EFBFBD><EFBFBD>ݷüƻ<C3BC></p></TabLink>
</div>
<div style="margin-bottom:20px;">
<Button Color="Color.None" OnClick="@BusinessCreateClick"><i class="fa fa-users fa-0" style="color:#367FA9;"></i><p class="link-ctx" style="color:#367FA9;"><3E><><EFBFBD><EFBFBD><EFBFBD>̻<EFBFBD><CCBB><EFBFBD><EFBFBD><EFBFBD></p></Button>
</div>
<div style="margin-bottom:20px;">
<Button Color="Color.None" OnClick="@ContractCreateClick"><i class="fa fa-shield fa-0" style="color:#367FA9;"></i><p class="link-ctx" style="color:#367FA9;"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ</p></Button>
</div>
<div style="margin-bottom:20px;">
<Button Color="Color.None" OnClick="@BillingCreateClick"><i class="fa fa-text fa-0" style="color:#367FA9;"></i><p class="link-ctx" style="color:#367FA9;"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ</p></Button>
</div>
@* <div>
2024-05-28 14:49:22 +08:00
<TabLink Text="Customs" Url="/_Admin/WTM_CUSTOM/Create" Icon="fa fa-clipboard fa-0"><i class="fa fa-clipboard fa-0"></i><p class="link-ctx">Customs</p></TabLink>
</div>
<div>
<TabLink Text="VisitPlans" Url="/_Admin/WTM_VISIT_PLAN/Create" Icon="fa fa-bars fa-0"><i class="fa fa-bars fa-0"></i><p class="link-ctx">VisitPlans</p></TabLink>
</div>
<div>
<TabLink Text="Business" Url="/_Admin/WTM_BUSINESS/Create" Icon="fa fa-users fa-0"><i class="fa fa-users fa-0"></i><p class="link-ctx">Business</p></TabLink>
</div>
<div>
<TabLink Text="Contract" Url="/_Admin/WTM_CONTRACT/Create" Icon="fa fa-shield fa-0"><i class="fa fa-shield fa-0"></i><p class="link-ctx">Contract</p></TabLink>
</div>
<div>
<TabLink Text="Billing" Url="/_Admin/WTM_BILLING_LIST/Create" Icon="fa fa-text fa-0"><i class="fa fa-text fa-0"></i><p class="link-ctx">Billing</p></TabLink>
2026-01-06 10:55:05 +08:00
</div>*@
2024-05-28 14:49:22 +08:00
@*<div>
<a target="_self" href="/_Admin/FrameworkGroup" :underline="false">
<i class="fa fa-users fa-3"></i>
<p class="link-ctx">Groups</p>
</a>
</div>
<div>
<a target="_self" href="/_Admin/DataPrivilege" :underline="false">
<i class="fa fa-shield fa-3"></i>
<p class="link-ctx">DataPris</p>
</a>
</div>
<div>
<a target="_self" href="/_Admin/ActionLog" :underline="false">
<i class="fa fa-database fa-3"></i>
<p class="link-ctx">Logs</p>
</a>
</div>
<div>
<a target="_blank" href="https://wtmdoc.walkingtec.cn/" :underline="false">
<i class="fa fa-file-text fa-3"></i>
<p class="link-ctx">Doc</p>
</a>
</div>
<div>
<a target="_blank" href="/_codegen?ui=blazor" :underline="false">
<i class="fa fa-cogs fa-3"></i>
<p class="link-ctx">CodeGen</p>
</a>
</div>*@
</div>
</div>
</div>
</div>
</div>
</div>
@* <div class="intro container">
<div class="form-inline">
<div class="row">
<div class="form-group col-12 col-sm-6 col-md-4">
<div class="card border-success" style="height: 293px;">
<p class="d-none d-sm-block">
<i class="fa fa-cubes"></i>
</p>
<h3>Rich modules</h3>
<div>
Provides a variety of base classes, encapsulating most of the common background operations<br />
Provides common modules such as users, roles, user groups, menus, logs, permissions configuration, etc.<br />
</div>
</div>
</div>
<div class="form-group col-12 col-sm-6 col-md-4">
<div class="card border-primary" style="height: 293px;">
<p class="d-none d-sm-block">
<i class="fa fa-rocket"></i>
</p>
<h3>Performance</h3>
<div>
Support one-to-many, many-to-many association model recognition and code generation<br />
Support React, Vue, Blazor, LayUI and other front-end architectures<br />
Support sqlserver, sqlite, mysql, pgsql, oracle and other databases<br />
</div>
</div>
</div>
<div class="form-group col-12 col-sm-6 col-md-4">
<div class="card border-info" style="height: 293px;">
<p class="d-none d-sm-block">
<i class="fa fa-trophy"></i>
</p>
<h3>Easy to use</h3>
<div>
One-click generation of WTM project<br />
One-click generation of additions, deletions, corrections, import and export, batch operation codes<br />
Most of the controls of Layui, AntD, Element, Blazor are encapsulated, making it easier to write the front desk<br />
</div>
</div>
</div>
<div class="form-group col-12 col-sm-6 col-md-4">
<div class="card border-danger">
<p class="d-none d-sm-block">
<i class="fa fa-github"></i>
</p>
<h3>Free and open source</h3>
<div>
<div class="form-inline">
<div class="row">
<div class="col-12">
<div class="d-flex flex-wrap" style=" justify-content: space-around;">
<div class="badge-widget">
<i class="fa fa-star"></i>Star
<Badge style="display:block" Color="Color.Success"><span style="padding: 0 2px;">@model.stargazers_count</span></Badge>
</div>
<div class="badge-widget">
<i class="fa fa-code-fork"></i>Frok
<Badge style="display:block" Color="Color.Success"><span style="padding: 0 2px;">@model.forks_count</span></Badge>
</div>
<div class="badge-widget">
<i class="fa fa-eye"></i>Watch
<Badge style="display:block" Color="Color.Success"><span style="padding: 0 2px;">@model.subscribers_count</span></Badge>
</div>
<div class="badge-widget">
<i class="fa fa-calendar"></i>Issue
<Badge style="display:block" Color="Color.Success"><span style="padding: 0 2px;">@model.open_issues_count</span></Badge>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="form-group col-12 col-sm-6 col-md-4">
<div class="card border-warning">
<p class="d-none d-sm-block">
<i class="fa fa-code"></i>
</p>
<h3>Demonstrations and examples</h3>
<div>Detailed documentation and online demonstration, ready to use out of the box</div>
</div>
</div>
<div class="form-group col-12 col-sm-6 col-md-4">
<div class="card border-secondary">
<p class="d-none d-sm-block">
<i class="fa fa-refresh"></i>
</p>
<h3>Continuous update</h3>
<div>MIT agreement, never close the source, keep updating, respond to questions and feedback in time</div>
</div>
</div>
</div>
</div>
</div>*@
</div>
@code {
[Parameter]
public Index.githubpoco model { get; set; }
2026-01-06 10:55:05 +08:00
[Inject]
private IJSRuntime jsRuntime { get; set; }
[Inject]
private NavigationManager NavigationManager { get; set; }
public string inputText { get; set; }
private List<SelectedItem> AllWTM_CUSTOMs = new List<SelectedItem>();
protected override async Task OnInitializedAsync()
{
AllWTM_CUSTOMs = await WtmBlazor.Api.CallItemsApi("/api/WTM_VISIT_PLAN/GetWTM_CUSTOMs", placeholder: WtmBlazor.Localizer["Sys.All"]);
await base.OnInitializedAsync();
}
private async Task CustomCreateClick()
{
if (await OpenDialog<CustomCreate>("<22><><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>") == DialogResult.Yes)
{
//CloseDialog();
var path = "/_Admin/WTM_CUSTOM";
NavigationManager.NavigateTo(path);
}
}
private async Task BusinessCreateClick()
{
if (await OpenDialog<BusinessCreate>("<22><><EFBFBD><EFBFBD><EFBFBD>̻<EFBFBD><CCBB><EFBFBD><EFBFBD><EFBFBD>") == DialogResult.Yes)
{
//CloseDialog();
var path = "/_Admin/WTM_BUSINESS";
NavigationManager.NavigateTo(path);
}
}
private async Task ContractCreateClick()
{
if (await OpenDialog<ContractCreate>("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ") == DialogResult.Yes)
{
//CloseDialog();
var path = "/_Admin/WTM_CONTRACT";
NavigationManager.NavigateTo(path);
}
}
private async Task BillingCreateClick()
{
if (await OpenDialog<BillingCreate>("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ") == DialogResult.Yes)
{
//CloseDialog();
var path = "/_Admin/WTM_BILLING_LIST";
NavigationManager.NavigateTo(path);
}
}
private void CustomReportClick()
{
if (!string.IsNullOrEmpty(inputText))
{
var path = $"/CustomReport/Report/{inputText}";
NavigationManager.NavigateTo(path);
}
else
{
WtmBlazor.Toast.Error(WtmBlazor.Localizer["Sys.Error"], "<22><>Ч<EFBFBD>Ŀͻ<C4BF><CDBB><EFBFBD><EFBFBD><EFBFBD>");
}
}
2024-05-28 14:49:22 +08:00
}