ui รายละเอียดคำสั่ง => tab ประมาลผลคำสั่ง

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2024-09-24 11:55:31 +07:00
parent e89eeeaba3
commit 336a7cefa9
5 changed files with 928 additions and 4 deletions

View file

@ -1,3 +1,174 @@
<script setup lang="ts"></script>
<script setup lang="ts">
import { ref } from "vue";
import { useQuasar } from "quasar";
<template>ประมวลผลคำส</template>
import { useCounterMixin } from "@/stores/mixin";
import LiveView from "@/modules/18_command/components/Step/View0_Live.vue";
import DigitalView from "@/modules/18_command/components/Step/View0_Digital.vue";
const $q = useQuasar();
const { showLoader, hideLoader, messageError, dialogConfirm } =
useCounterMixin();
const step = ref<number>(2);
const isStatus = ref<boolean>(false); //
const signature = ref<string>(""); //
const isSignature = ref<boolean>(false); //
function onConfirmSignature() {
dialogConfirm(
$q,
() => {
isSignature.value = true;
},
"ยืนยันวิธีลงนาม",
"เมื่อยืนยันวิธีลงนามแล้วจะไม่สามารถเปลี่ยนวิธีการได้ คุณต้องการยืนยันใช่หรือไม่?"
);
}
</script>
<template>
<q-card-section>
<div class="col-12 q-col-gutter-md">
<!-- สถานะของคำส -->
<div class="col-12">
<q-card bordered>
<div class="col-12 text-weight-medium bg-grey-1 q-py-xs q-px-md">
สถานะของคำส <spen v-if="isStatus" class="text-red"> (ลบ) </spen>
</div>
<q-separator />
<div class="col-12 q-pa-md">
<q-stepper
v-model="step"
color="primary"
animated
header-class="bg-grey-1"
class="step"
bordered
:active-color="isStatus ? 'grey-6' : 'primary'"
:done-color="isStatus ? 'grey-6' : 'primary'"
>
<q-step
:name="1"
title="แบบร่าง"
prefix="1"
:done="step > 1"
:header-nav="step > 1"
/>
<q-step
:name="2"
title="รอผู้มีอำนาจลงนามอนุมัติ"
prefix="2"
:done="step > 2"
:header-nav="step > 2"
/>
<q-step
:name="3"
title="รอออกคำสั่ง"
prefix="3"
:done="step > 3"
:header-nav="step > 3"
/>
<q-step
:name="4"
title="ออกคำสั่งเสร็จสิ้น"
prefix="4"
:done="step > 4"
:header-nav="step > 4"
/>
</q-stepper>
</div>
</q-card>
</div>
<!-- เลอกวการลงนาม -->
<div class="col-12">
<q-card bordered class="col-12">
<div class="col-12 text-weight-medium bg-grey-1 q-py-xs q-px-md">
เลอกวการลงนาม
</div>
<q-list bordered separator>
<q-item tag="label" v-ripple>
<q-item-section avatar>
<q-radio
v-model="signature"
val="Live"
color="primary"
:disable="isSignature || isStatus"
/>
</q-item-section>
<q-item-section>
<q-item-label>เซนสด</q-item-label>
<q-item-label caption
>ดาวนโหลดเอกสารเปนไฟล word หร pdf นำไป Print
แลวเสนอผอำนาจลงนาม
จากนนสแกนเอกสารและอปโหลดกลบเขาสระบบ
</q-item-label>
</q-item-section>
</q-item>
<q-item tag="label" v-ripple>
<q-item-section avatar>
<q-radio
v-model="signature"
val="Digital"
color="primary"
:disable="isSignature || isStatus"
/>
</q-item-section>
<q-item-section>
<q-item-label>Digital Signature</q-item-label>
<q-item-label caption
>เสนอผอำนาจลงนานดวยกระบวนการ Digital Signature
</q-item-label>
</q-item-section>
</q-item>
</q-list>
<div class="row q-pa-sm" v-if="!isSignature">
<q-btn
label="ยืนยันวิธีการลงนาม"
type="submit"
:color="signature === '' ? 'grey-5' : 'primary'"
:disable="signature === ''"
@click.prevent="onConfirmSignature"
/>
<span class="q-py-sm q-px-md text-red">
*เมอยนยนวลงนามแลวจะไมสามารถเปลยนวการได</span
>
</div>
<!-- กรณลงนามเลอกเซนสด -->
<div class="col-12" v-if="signature === 'Live' && isSignature">
<LiveView />
</div>
<!-- กรณ Digital Signature -->
<div
class="col-12"
v-else-if="signature === 'Digital' && isSignature"
>
<DigitalView />
</div>
</q-card>
</div>
</div>
</q-card-section>
</template>
<style>
.q-stepper {
box-shadow: none;
}
.q-stepper--horizontal .q-stepper__step-inner {
padding: 0px;
}
.step .q-stepper__header--standard-labels .q-stepper__tab {
min-height: 60px;
}
</style>