no message

This commit is contained in:
setthawutttty 2024-03-08 12:44:53 +07:00
parent 01fcd48b06
commit 65ef57f40f
5 changed files with 80 additions and 23 deletions

View file

@ -0,0 +1,4 @@
<template>
<q-card class="q-pa-sm"> หนวยงาน งหมด </q-card>
</template>

View file

@ -6,6 +6,7 @@ import config from "@/app.config";
import genReportXLSX from "@/plugins/genreportxlsx";
import DialogInfoCriteria from "@/modules/13_salary/components/SalaryLists/DialogInfoCriteria.vue";
/** importType*/
import type { DataOption } from "@/modules/13_salary/interface/index/Main";
import type { DataFilter } from "@/modules/13_salary/interface/index/SalaryList";
@ -134,13 +135,19 @@ const itemsCard = ref([
color: "indigo-6",
total: 0,
},
{
lable: "สำรอง",
name: "group2",
color: "red-6",
total: 0,
},
{
lable: "จำนวนเงินคนครองปัจจุบัน",
name: "group1",
color: "secondary",
total: 0,
},
{
lable: "วงเงิน 6%",
name: "group2",
@ -171,6 +178,12 @@ const itemsCard = ref([
color: "green-6",
total: 0,
},
{
lable: "สำรอง",
name: "group2",
color: "red-6",
total: 0,
},
]);
/** ข้อมูลค้นหารายชื่อคยขึ้นเงินเดือน*/
@ -196,14 +209,17 @@ function fetchDataQuota(id: string) {
itemsCard.value[0].total = data.total;
itemsCard.value[1].total = data.fifteenPercent;
itemsCard.value[2].total = data.chosen;
itemsCard.value[3].total = data.remaining;
itemsCard.value[3].total = data.remaining;
itemsCard.value[4].total = data.totalBackup;
itemsCard.value[4].total = data.currentAmount;
itemsCard.value[5].total = data.sixPercentAmount;
itemsCard.value[6].total = data.spentAmount;
itemsCard.value[7].total = data.sixPercentSpentAmount;
itemsCard.value[8].total = data.useAmount;
itemsCard.value[9].total = data.remainingAmount;
itemsCard.value[5].total = data.currentAmount;
itemsCard.value[6].total = data.sixPercentAmount;
itemsCard.value[7].total = data.spentAmount;
itemsCard.value[8].total = data.sixPercentSpentAmount;
itemsCard.value[9].total = data.useAmount;
itemsCard.value[10].total = data.remainingAmount;
itemsCard.value[11].total = data.totalBackup;
})
.catch((err) => {
messageError($q, err);
@ -333,9 +349,9 @@ onMounted(async () => {
<div class="row col-12 items-start q-gutter-md items-center">
<div
v-for="(item, index) in store.roundMainCode === 'APR'
? itemsCard.slice(0, 4)
? itemsCard.slice(0, 5)
: store.roundMainCode === 'OCT'
? itemsCard.slice(4, 10)
? itemsCard.slice(5, 12)
: itemsCard"
:key="index"
:class="store.roundMainCode === 'APR' ? 'my-card' : 'col-3'"

View file

@ -255,8 +255,8 @@ watch(
</script>
<template>
<q-toolbar class="text-primary" style="padding: 0px">
<q-btn flat round dense icon="add" @click="onClickAddPerson">
<q-tooltip>เพ </q-tooltip>
<q-btn v-if="!store.isClosedRound" flat round dense icon="add" @click="onClickAddPerson">
<q-tooltip>เพ</q-tooltip>
</q-btn>
<q-space />
<q-input
@ -313,10 +313,26 @@ watch(
</template>
<template v-slot:body="props">
<q-tr :props="props" class="cursor-pointer">
<q-td v-for="col in props.cols" :key="col.name" :props="props">
<q-td
v-for="col in props.cols"
:key="col.name"
:props="props"
:class="store.tabType !== 'RETIRE' ? props.row.isNext == true ? 'text-red' : '':''"
>
<div v-if="col.name === 'no'">
{{
(formFilter.page - 1) * formFilter.pageSize + props.rowIndex + 1
store.tabType == "FULL"
? props.row.isReserve == true
? (formFilter.page - 1) * formFilter.pageSize +
props.rowIndex +
1 +
"(สำรอง)"
: (formFilter.page - 1) * formFilter.pageSize +
props.rowIndex +
1
: (formFilter.page - 1) * formFilter.pageSize +
props.rowIndex +
1
}}
</div>
<div v-else-if="col.name === 'posNo'">
@ -369,8 +385,9 @@ watch(
{{ col.value ? col.value : "-" }}
</div>
</q-td>
<q-td>
<q-td >
<q-btn
v-if="!store.isClosedRound"
flat
dense
icon="mdi-dots-vertical"

View file

@ -302,7 +302,7 @@ watch(
<template>
<q-toolbar class="text-primary" style="padding: 0px">
<q-btn flat round dense icon="add" @click="onClickAddPerson">
<q-btn v-if="!store.isClosedRound" flat round dense icon="add" @click="onClickAddPerson">
<q-tooltip>เพ </q-tooltip>
</q-btn>
<q-space />
@ -485,6 +485,7 @@ watch(
</q-td>
<q-td>
<q-btn
v-if="!store.isClosedRound"
flat
dense
icon="mdi-dots-vertical"

View file

@ -4,7 +4,7 @@ import { useQuasar } from "quasar";
import config from "@/app.config";
import http from "@/plugins/http";
import ProcessStep from "@/modules/13_salary/components/SalaryLists/ProcessStep.vue";
import PageDashBoard from '@/modules/13_salary/components/SalaryLists/Dashboard.vue'
/** importType*/
import type {
DataOption,
@ -148,10 +148,17 @@ async function getAgency(id: string) {
.get(config.API.activeOrganizationRootById(id))
.then(async (res) => {
const data = res.data.result;
agencyOptions.value = await data.map((x: DataAgency) => ({
id: x.id,
name: x.orgRootName,
}));
agencyOptions.value = await [
{
id: "ALL",
name: "ทั้งหมด",
},
].concat(
data.map((x: DataAgency) => ({
id: x.id,
name: x.orgRootName,
}))
);
// agencyFilter.value = store.rootId;
})
.catch((err) => {
@ -264,7 +271,7 @@ async function onChangeSnap() {
async function onChangeAgency() {
store.rootId = agencyFilter.value;
if (agencyFilter.value && roundFilter.value.id && snapFilter.value) {
if (agencyFilter.value !== 'ALL' && roundFilter.value.id && snapFilter.value) {
await fetchSalalyPeriod(
agencyFilter.value,
roundFilter.value.id,
@ -386,6 +393,9 @@ onMounted(async () => {
</q-tabs>
<q-separator /> -->
<q-card flat bordered>
<div v-if="agencyFilter !== 'ALL'">
<TabGroup v-if="isLoad" :periodLatest="periodLatest" />
<q-card v-else class="q-pa-sm">
<div class="q-pa-sm">
@ -394,9 +404,18 @@ onMounted(async () => {
</q-banner>
</div>
</q-card>
</div>
<div v-else>
<PageDashBoard/>
</div>
</q-card>
<q-card v-if="isLoad && !store.isClosedRound" flat bordered class="row col-12 q-mt-xs">
<q-card
v-if="isLoad && !store.isClosedRound"
flat
bordered
class="row col-12 q-mt-xs"
>
<ProcessStep />
</q-card>