แก้ popup รายการรอบการปฏิบัติงาน
This commit is contained in:
parent
37a39c6037
commit
d10c919b2d
4 changed files with 40 additions and 27 deletions
|
|
@ -48,7 +48,6 @@ function validateForm() {
|
||||||
if (hasError.every((result) => result === true)) {
|
if (hasError.every((result) => result === true)) {
|
||||||
onSubmit();
|
onSubmit();
|
||||||
} else {
|
} else {
|
||||||
console.log("ไม่ผ่าน ");
|
|
||||||
console.log(hasError);
|
console.log(hasError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -56,7 +55,6 @@ function onSubmit() {
|
||||||
dialogConfirm(
|
dialogConfirm(
|
||||||
$q,
|
$q,
|
||||||
async () => {
|
async () => {
|
||||||
console.log(formData);
|
|
||||||
props.closeDialog?.();
|
props.closeDialog?.();
|
||||||
},
|
},
|
||||||
"ยืนยันการบันทึกข้อมูล",
|
"ยืนยันการบันทึกข้อมูล",
|
||||||
|
|
@ -78,21 +76,22 @@ function close() {
|
||||||
watch(
|
watch(
|
||||||
() => props.modal,
|
() => props.modal,
|
||||||
(newDetailData, oldDetailData) => {
|
(newDetailData, oldDetailData) => {
|
||||||
console.log(props.editCheck);
|
|
||||||
if (props.editCheck === "add") {
|
if (props.editCheck === "add") {
|
||||||
formData.am = "";
|
formData.am = "";
|
||||||
formData.amOut = "";
|
formData.amOut = "";
|
||||||
formData.pm = "";
|
formData.pm = "";
|
||||||
formData.pmOut = "";
|
formData.pmOut = "";
|
||||||
formData.note = "";
|
formData.note = "";
|
||||||
|
formData.isDefault = false;
|
||||||
formData.status = false;
|
formData.status = false;
|
||||||
} else {
|
} else if(props.editCheck === "edit"){
|
||||||
if (props.detailData) {
|
if (props.detailData) {
|
||||||
formData.am = props.detailData.am;
|
formData.am = props.detailData.am;
|
||||||
formData.amOut = props.detailData.amOut;
|
formData.amOut = props.detailData.amOut;
|
||||||
formData.pm = props.detailData.pm;
|
formData.pm = props.detailData.pm;
|
||||||
formData.pmOut = props.detailData.pmOut;
|
formData.pmOut = props.detailData.pmOut;
|
||||||
formData.note = props.detailData.note;
|
formData.note = props.detailData.note;
|
||||||
|
formData.isDefault = props.detailData.isDefault;
|
||||||
formData.status = props.detailData.status;
|
formData.status = props.detailData.status;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -136,10 +135,10 @@ watch(
|
||||||
(val) => {
|
(val) => {
|
||||||
if (val && formData.amOut) {
|
if (val && formData.amOut) {
|
||||||
if (val > formData.amOut) {
|
if (val > formData.amOut) {
|
||||||
return 'เวลาเข้างานต้องน้อยกว่าเวลาออกงาน';
|
return 'ต้องน้อยกว่าเวลาออกงาน';
|
||||||
}
|
}
|
||||||
if (val >= formData.pm && val <= formData.pmOut) {
|
if (val >= formData.pm && val <= formData.pmOut) {
|
||||||
return 'เวลาเข้างานต้องไม่อยู่ในช่วงบ่าย';
|
return 'ช่วงเวลาทับซ้อนกับช่วงบ่าย';
|
||||||
}
|
}
|
||||||
if(val === formData.amOut){
|
if(val === formData.amOut){
|
||||||
return 'เวลาเข้างานช่วงเช้าต้องไม่ซ้ำกับออกงานเช้า'
|
return 'เวลาเข้างานช่วงเช้าต้องไม่ซ้ำกับออกงานเช้า'
|
||||||
|
|
@ -171,10 +170,10 @@ watch(
|
||||||
(val) => {
|
(val) => {
|
||||||
if (val && formData.am) {
|
if (val && formData.am) {
|
||||||
if (val < formData.am) {
|
if (val < formData.am) {
|
||||||
return 'เวลาออกงานต้องมากกว่าเวลาเข้างาน';
|
return 'ต้องมากกว่าเวลาเข้างาน';
|
||||||
}
|
}
|
||||||
if (val >= formData.pm && val <= formData.pmOut) {
|
if (val >= formData.pm && val <= formData.pmOut) {
|
||||||
return 'เวลาออกงานต้องไม่อยู่ในช่วงบ่าย';
|
return 'ช่วงเวลาทับซ้อนกับช่วงบ่าย';
|
||||||
}
|
}
|
||||||
if(val === formData.am){
|
if(val === formData.am){
|
||||||
return 'เวลาออกงานช่วงเช้าต้องไม่ซ้ำกับเข้างานเช้า'
|
return 'เวลาออกงานช่วงเช้าต้องไม่ซ้ำกับเข้างานเช้า'
|
||||||
|
|
@ -202,10 +201,10 @@ watch(
|
||||||
(val) => {
|
(val) => {
|
||||||
if (val && formData.pmOut) {
|
if (val && formData.pmOut) {
|
||||||
if (val > formData.pmOut) {
|
if (val > formData.pmOut) {
|
||||||
return 'เวลาเข้างานต้องน้อยกว่าเวลาออกงาน';
|
return 'ต้องน้อยกว่าเวลาออกงาน';
|
||||||
}
|
}
|
||||||
if (val >= formData.am && val <= formData.amOut) {
|
if (val >= formData.am && val <= formData.amOut) {
|
||||||
return 'เวลาเข้างานต้องไม่อยู่ในช่วงเช้า';
|
return 'ช่วงเวลาทับซ้อนกับช่วงเช้า';
|
||||||
}
|
}
|
||||||
if(val === formData.pmOut){
|
if(val === formData.pmOut){
|
||||||
return 'เวลาเข้างานช่วงบ่ายต้องไม่ซ้ำกับออกงานช่วงบ่าย'
|
return 'เวลาเข้างานช่วงบ่ายต้องไม่ซ้ำกับออกงานช่วงบ่าย'
|
||||||
|
|
@ -236,7 +235,7 @@ watch(
|
||||||
(val) => {
|
(val) => {
|
||||||
if (val && formData.pm) {
|
if (val && formData.pm) {
|
||||||
if (val < formData.pm) {
|
if (val < formData.pm) {
|
||||||
return 'เวลาออกงานต้องมากกว่าเวลาเข้างาน';
|
return 'ต้องมากกว่าเวลาเข้างาน';
|
||||||
}
|
}
|
||||||
if (val >= formData.am && val <= formData.amOut) {
|
if (val >= formData.am && val <= formData.amOut) {
|
||||||
return 'เวลาออกงานต้องไม่อยู่ในช่วงเช้า';
|
return 'เวลาออกงานต้องไม่อยู่ในช่วงเช้า';
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,18 @@ interface dataRowRound {
|
||||||
status: boolean
|
status: boolean
|
||||||
isDefault: boolean
|
isDefault: boolean
|
||||||
}
|
}
|
||||||
|
interface roundShow {
|
||||||
|
round: string;
|
||||||
|
am: string;
|
||||||
|
amOut: string;
|
||||||
|
pm: string;
|
||||||
|
pmOut: string;
|
||||||
|
amRound: string;
|
||||||
|
pmRound: string;
|
||||||
|
note: string;
|
||||||
|
status: boolean;
|
||||||
|
isDefault: boolean;
|
||||||
|
}
|
||||||
interface MyObjectRoundRef {
|
interface MyObjectRoundRef {
|
||||||
am: object | null,
|
am: object | null,
|
||||||
amOut: object | null,
|
amOut: object | null,
|
||||||
|
|
@ -24,5 +36,6 @@ interface MyObjectRoundRef {
|
||||||
export type {
|
export type {
|
||||||
RoundRows,
|
RoundRows,
|
||||||
dataRowRound,
|
dataRowRound,
|
||||||
MyObjectRoundRef
|
MyObjectRoundRef,
|
||||||
|
roundShow
|
||||||
};
|
};
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { defineStore } from "pinia";
|
import { defineStore } from "pinia";
|
||||||
import { ref } from "vue";
|
import { ref } from "vue";
|
||||||
import type { dataRowRound } from "@/modules/09_leave/interface/response/round.ts";
|
import type { dataRowRound,roundShow } from "@/modules/09_leave/interface/response/round.ts";
|
||||||
import type { QTableProps } from "quasar";
|
import type { QTableProps } from "quasar";
|
||||||
|
|
||||||
// store ลา >> รอบการปฏิบัติงาน
|
// store ลา >> รอบการปฏิบัติงาน
|
||||||
|
|
@ -10,10 +10,8 @@ export const useRoundDataStore = defineStore(
|
||||||
//ค้นหา คอลัมน์ คอลัมน์ที่แสดง
|
//ค้นหา คอลัมน์ คอลัมน์ที่แสดง
|
||||||
const visibleColumns = ref<string[]>([
|
const visibleColumns = ref<string[]>([
|
||||||
"round",
|
"round",
|
||||||
"am",
|
"amRound",
|
||||||
"amOut",
|
"pmRound",
|
||||||
"pm",
|
|
||||||
"pmOut",
|
|
||||||
"note",
|
"note",
|
||||||
"status"
|
"status"
|
||||||
]);
|
]);
|
||||||
|
|
@ -30,20 +28,20 @@ export const useRoundDataStore = defineStore(
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "am",
|
name: "amRound",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "ช่วงเช้า",
|
label: "ช่วงเช้า",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "am",
|
field: "amRound",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "pm",
|
name: "pmRound",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "ช่วงบ่าย",
|
label: "ช่วงบ่าย",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "pm",
|
field: "pmRound",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
style: "font-size: 14px",
|
style: "font-size: 14px",
|
||||||
},
|
},
|
||||||
|
|
@ -70,11 +68,15 @@ export const useRoundDataStore = defineStore(
|
||||||
// ข้อมูลในตาราง
|
// ข้อมูลในตาราง
|
||||||
const rows = ref<dataRowRound[]>([]);
|
const rows = ref<dataRowRound[]>([]);
|
||||||
function fetchData(data: dataRowRound[]) {
|
function fetchData(data: dataRowRound[]) {
|
||||||
let datalist: dataRowRound[] = data.map((e: dataRowRound) => {
|
let datalist: roundShow[] = data.map((e: dataRowRound) => {
|
||||||
return {
|
return {
|
||||||
round:`${e.am}-${e.pmOut}`,
|
round:`${e.am}-${e.pmOut}`,
|
||||||
am: `${e.am}-${e.amOut}`,
|
am: e.am,
|
||||||
pm: `${e.pm}-${e.pmOut}`,
|
amOut: e.amOut,
|
||||||
|
pm: e.pm,
|
||||||
|
pmOut: e.pmOut,
|
||||||
|
amRound:`${e.am}-${e.amOut}`,
|
||||||
|
pmRound:`${e.pm}-${e.pmOut}`,
|
||||||
note: e.note === '' ? '-':e.note,
|
note: e.note === '' ? '-':e.note,
|
||||||
status: e.status,
|
status: e.status,
|
||||||
isDefault: e.isDefault,
|
isDefault: e.isDefault,
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,6 @@ const paginationLabel = (start: string, end: string, total: string) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
function openModal(data:any,check:string){
|
function openModal(data:any,check:string){
|
||||||
console.log(check)
|
|
||||||
modal.value = true
|
modal.value = true
|
||||||
editCheck.value = check
|
editCheck.value = check
|
||||||
if(check === 'edit'){
|
if(check === 'edit'){
|
||||||
|
|
@ -66,7 +65,7 @@ onMounted(() => {
|
||||||
pmOut: "15:30",
|
pmOut: "15:30",
|
||||||
note: "",
|
note: "",
|
||||||
status: false,
|
status: false,
|
||||||
isDefault:true
|
isDefault:false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
am: "09:30",
|
am: "09:30",
|
||||||
|
|
@ -75,7 +74,7 @@ onMounted(() => {
|
||||||
pmOut: "15:30",
|
pmOut: "15:30",
|
||||||
note: "",
|
note: "",
|
||||||
status: true,
|
status: true,
|
||||||
isDefault:true
|
isDefault:false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
am: "10:30",
|
am: "10:30",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue