277 lines
14 KiB
Plaintext
277 lines
14 KiB
Plaintext
@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>
|
|
<div class="index">
|
|
<div class="welcome container">
|
|
<div class="form-inline">
|
|
<div class="row">
|
|
|
|
</div>
|
|
</div>
|
|
<div class="form-inline">
|
|
<div>
|
|
<BootstrapInputGroup class="indexInputGroup">
|
|
<Select @bind-Value="@inputText" Items="@AllWTM_CUSTOMs" DisplayText="客户全称:" ShowLabel="true" ShowSearch="true" class="indexSelect" />
|
|
@*<BootstrapInput @bind-Value="@inputText" PlaceHolder="请输入 ..." DisplayText="客户全称:" ShowLabel="true" style="margin-right:10px;"></BootstrapInput>*@
|
|
<Button Color="Color.Primary" ButtonType="ButtonType.Submit" Icon="fa fa-search" Text="快捷查询" IsAsync="true" OnClick="() => CustomReportClick()" style="width:108px;height:44px;" />
|
|
</BootstrapInputGroup>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="welcome-footer">
|
|
<div class="d-flex flex-wrap q-link">
|
|
<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;">新增客户档案</p></Button>
|
|
</div>
|
|
<div style="margin-bottom:20px;">
|
|
<TabLink Text="新增拜访计划" 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">新增拜访计划</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;">新增商机线索</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;">新增合同</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;">新增开票</p></Button>
|
|
</div>
|
|
@* <div>
|
|
<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>
|
|
</div>*@
|
|
@*<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; }
|
|
[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>("新增客户档案") == DialogResult.Yes)
|
|
{
|
|
//CloseDialog();
|
|
var path = "/_Admin/WTM_CUSTOM";
|
|
NavigationManager.NavigateTo(path);
|
|
}
|
|
}
|
|
private async Task BusinessCreateClick()
|
|
{
|
|
if (await OpenDialog<BusinessCreate>("新增商机线索") == DialogResult.Yes)
|
|
{
|
|
//CloseDialog();
|
|
var path = "/_Admin/WTM_BUSINESS";
|
|
NavigationManager.NavigateTo(path);
|
|
}
|
|
}
|
|
private async Task ContractCreateClick()
|
|
{
|
|
if (await OpenDialog<ContractCreate>("新增合同") == DialogResult.Yes)
|
|
{
|
|
//CloseDialog();
|
|
var path = "/_Admin/WTM_CONTRACT";
|
|
NavigationManager.NavigateTo(path);
|
|
}
|
|
}
|
|
private async Task BillingCreateClick()
|
|
{
|
|
if (await OpenDialog<BillingCreate>("新增开票") == 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"], "无效的客户名称");
|
|
}
|
|
}
|
|
|
|
}
|