initial commit

This commit is contained in:
2026-07-21 15:36:49 +07:00
commit 77f66132bc
2640 changed files with 850901 additions and 0 deletions
@@ -0,0 +1,100 @@
@page
@{
ViewData["Title"] = "Expense List";
}
<div id="app" v-cloak>
<div class="row">
<div class="col-12">
<div class="grid-container">
<div ref="mainGridRef"></div>
</div>
</div>
</div>
<div class="modal fade" ref="mainModalRef" id="MainModal" aria-hidden="true" tabindex="-1" data-bs-focus="false" data-bs-backdrop="static">
<div class="modal-dialog modal-dialog-centered modal-xl">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">{{ state.mainTitle }}</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body bg-body-tertiary">
<input type="hidden" v-model="state.id" id="Id" name="Id" />
<form>
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<h5>Main Info</h5>
</div>
<div class="card-body bg-body-tertiary">
<div class="row mb-2">
<div class="col-md-6">
<label for="Title">Title</label>
<input ref="titleRef" type="text" v-model="state.title">
<label class="text-danger">{{ state.errors.title }}</label>
</div>
<div class="col-md-6">
<label for="Number">Number</label>
<input ref="numberRef" v-model="state.number" readonly>
</div>
</div>
<div class="row mb-2">
<div class="col-md-6">
<label for="ExpenseDate">Expense Date</label>
<input ref="expenseDateRef" />
<label class="text-danger">{{ state.errors.expenseDate }}</label>
</div>
<div class="col-md-6">
<label for="Amount">Amount</label>
<input ref="amountRef" type="text" step="0.01" v-model="state.amount">
<label class="text-danger">{{ state.errors.amount }}</label>
</div>
</div>
<div class="row mb-2">
<div class="col-md-6">
<label for="CampaignId">Campaign</label>
<div ref="campaignIdRef"></div>
<label class="text-danger">{{ state.errors.campaignId }}</label>
</div>
<div class="col-md-6">
<label for="Status">Status</label>
<div ref="statusRef"></div>
<label class="text-danger">{{ state.errors.status }}</label>
</div>
</div>
<div class="row mb-2">
<div class="col-md-12">
<label for="Description">Description</label>
<textarea class="form-control" rows="3" v-model="state.description"></textarea>
<label class="text-danger">{{ state.errors.description }}</label>
</div>
</div>
</div>
</div>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="button"
id="MainSaveButton"
class="btn"
v-bind:class="state.deleteMode ? 'btn-danger' : 'btn-primary'"
v-on:click="handler.handleSubmit"
v-bind:disabled="state.isSubmitting">
<span class="spinner-border spinner-border-sm me-2" v-if="state.isSubmitting" role="status" aria-hidden="true"></span>
<span v-if="!state.isSubmitting">{{ state.deleteMode ? 'Delete' : 'Save' }}</span>
<span v-else>{{ state.deleteMode ? 'Deleting...' : 'Saving...' }}</span>
</button>
</div>
</div>
</div>
</div>
</div>
@section scripts {
<script src="~/FrontEnd/Pages/Expenses/ExpenseList.cshtml.js"></script>
}