แก้ popup รายการรอบการปฏิบัติงาน

This commit is contained in:
setthawutttty 2023-10-31 16:21:04 +07:00
parent 37a39c6037
commit d10c919b2d
4 changed files with 40 additions and 27 deletions

View file

@ -48,7 +48,6 @@ function validateForm() {
if (hasError.every((result) => result === true)) {
onSubmit();
} else {
console.log("ไม่ผ่าน ");
console.log(hasError);
}
}
@ -56,7 +55,6 @@ function onSubmit() {
dialogConfirm(
$q,
async () => {
console.log(formData);
props.closeDialog?.();
},
"ยืนยันการบันทึกข้อมูล",
@ -78,21 +76,22 @@ function close() {
watch(
() => props.modal,
(newDetailData, oldDetailData) => {
console.log(props.editCheck);
if (props.editCheck === "add") {
formData.am = "";
formData.amOut = "";
formData.pm = "";
formData.pmOut = "";
formData.note = "";
formData.isDefault = false;
formData.status = false;
} else {
} else if(props.editCheck === "edit"){
if (props.detailData) {
formData.am = props.detailData.am;
formData.amOut = props.detailData.amOut;
formData.pm = props.detailData.pm;
formData.pmOut = props.detailData.pmOut;
formData.note = props.detailData.note;
formData.isDefault = props.detailData.isDefault;
formData.status = props.detailData.status;
}
}
@ -136,10 +135,10 @@ watch(
(val) => {
if (val && formData.amOut) {
if (val > formData.amOut) {
return 'เวลาเข้างานต้องน้อยกว่าเวลาออกงาน';
return 'ต้องน้อยกว่าเวลาออกงาน';
}
if (val >= formData.pm && val <= formData.pmOut) {
return 'เวลาเข้างานต้องไม่อยู่ในช่วงบ่าย';
return 'ช่วงเวลาทับซ้อนกับช่วงบ่าย';
}
if(val === formData.amOut){
return 'เวลาเข้างานช่วงเช้าต้องไม่ซ้ำกับออกงานเช้า'
@ -171,10 +170,10 @@ watch(
(val) => {
if (val && formData.am) {
if (val < formData.am) {
return 'เวลาออกงานต้องมากกว่าเวลาเข้างาน';
return 'ต้องมากกว่าเวลาเข้างาน';
}
if (val >= formData.pm && val <= formData.pmOut) {
return 'เวลาออกงานต้องไม่อยู่ในช่วงบ่าย';
return 'ช่วงเวลาทับซ้อนกับช่วงบ่าย';
}
if(val === formData.am){
return 'เวลาออกงานช่วงเช้าต้องไม่ซ้ำกับเข้างานเช้า'
@ -202,10 +201,10 @@ watch(
(val) => {
if (val && formData.pmOut) {
if (val > formData.pmOut) {
return 'เวลาเข้างานต้องน้อยกว่าเวลาออกงาน';
return 'ต้องน้อยกว่าเวลาออกงาน';
}
if (val >= formData.am && val <= formData.amOut) {
return 'เวลาเข้างานต้องไม่อยู่ในช่วงเช้า';
return 'ช่วงเวลาทับซ้อนกับช่วงเช้า';
}
if(val === formData.pmOut){
return 'เวลาเข้างานช่วงบ่ายต้องไม่ซ้ำกับออกงานช่วงบ่าย'
@ -236,7 +235,7 @@ watch(
(val) => {
if (val && formData.pm) {
if (val < formData.pm) {
return 'เวลาออกงานต้องมากกว่าเวลาเข้างาน';
return 'ต้องมากกว่าเวลาเข้างาน';
}
if (val >= formData.am && val <= formData.amOut) {
return 'เวลาออกงานต้องไม่อยู่ในช่วงเช้า';

View file

@ -14,6 +14,18 @@ interface dataRowRound {
status: 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 {
am: object | null,
amOut: object | null,
@ -24,5 +36,6 @@ interface MyObjectRoundRef {
export type {
RoundRows,
dataRowRound,
MyObjectRoundRef
MyObjectRoundRef,
roundShow
};

View file

@ -1,6 +1,6 @@
import { defineStore } from "pinia";
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";
// store ลา >> รอบการปฏิบัติงาน
@ -10,10 +10,8 @@ export const useRoundDataStore = defineStore(
//ค้นหา คอลัมน์ คอลัมน์ที่แสดง
const visibleColumns = ref<string[]>([
"round",
"am",
"amOut",
"pm",
"pmOut",
"amRound",
"pmRound",
"note",
"status"
]);
@ -30,20 +28,20 @@ export const useRoundDataStore = defineStore(
style: "font-size: 14px",
},
{
name: "am",
name: "amRound",
align: "left",
label: "ช่วงเช้า",
sortable: true,
field: "am",
field: "amRound",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
{
name: "pm",
name: "pmRound",
align: "left",
label: "ช่วงบ่าย",
sortable: true,
field: "pm",
field: "pmRound",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
},
@ -70,11 +68,15 @@ export const useRoundDataStore = defineStore(
// ข้อมูลในตาราง
const rows = ref<dataRowRound[]>([]);
function fetchData(data: dataRowRound[]) {
let datalist: dataRowRound[] = data.map((e: dataRowRound) => {
let datalist: roundShow[] = data.map((e: dataRowRound) => {
return {
round:`${e.am}-${e.pmOut}`,
am: `${e.am}-${e.amOut}`,
pm: `${e.pm}-${e.pmOut}`,
am: e.am,
amOut: e.amOut,
pm: e.pm,
pmOut: e.pmOut,
amRound:`${e.am}-${e.amOut}`,
pmRound:`${e.pm}-${e.pmOut}`,
note: e.note === '' ? '-':e.note,
status: e.status,
isDefault: e.isDefault,

View file

@ -36,7 +36,6 @@ const paginationLabel = (start: string, end: string, total: string) => {
};
function openModal(data:any,check:string){
console.log(check)
modal.value = true
editCheck.value = check
if(check === 'edit'){
@ -66,7 +65,7 @@ onMounted(() => {
pmOut: "15:30",
note: "",
status: false,
isDefault:true
isDefault:false
},
{
am: "09:30",
@ -75,7 +74,7 @@ onMounted(() => {
pmOut: "15:30",
note: "",
status: true,
isDefault:true
isDefault:false
},
{
am: "10:30",