- fix bug generate แนบท้ายไม่ generate ใหม่
- ปิด log
This commit is contained in:
parent
eea8ce1b6d
commit
3da536acb0
7 changed files with 132 additions and 479 deletions
|
|
@ -64,7 +64,6 @@ const destroyLocalStorage = () => {
|
||||||
localStorage.clear();
|
localStorage.clear();
|
||||||
};
|
};
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
// console.log("route query===>", route.query)
|
|
||||||
if (route.query.step) {
|
if (route.query.step) {
|
||||||
step.value = Number(route.query.step);
|
step.value = Number(route.query.step);
|
||||||
localStorage.setItem("currentStep", step.value.toString());
|
localStorage.setItem("currentStep", step.value.toString());
|
||||||
|
|
@ -79,7 +78,6 @@ onMounted(() => {
|
||||||
|
|
||||||
if (orderId_params !== undefined) {
|
if (orderId_params !== undefined) {
|
||||||
orderId.value = orderId_params.toString();
|
orderId.value = orderId_params.toString();
|
||||||
// console.log("orderId.value");
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -141,7 +141,6 @@ const OriginalDataFetch = async () => {
|
||||||
await http
|
await http
|
||||||
.get(config.API.listOrder())
|
.get(config.API.listOrder())
|
||||||
.then((res: any) => {
|
.then((res: any) => {
|
||||||
// console.log("list", res);
|
|
||||||
rows.value = res.data.result.map((e: any) => ({
|
rows.value = res.data.result.map((e: any) => ({
|
||||||
orderId: e.orderId,
|
orderId: e.orderId,
|
||||||
Order: e.orderName,
|
Order: e.orderName,
|
||||||
|
|
@ -234,7 +233,6 @@ const fiscalyearOP = reactive<DataOption[]>([{ id: 0, name: "ทั้งหม
|
||||||
const addedfiscalYearValues: number[] = [];
|
const addedfiscalYearValues: number[] = [];
|
||||||
const fiscalYearFilter = async () => {
|
const fiscalYearFilter = async () => {
|
||||||
await http.get(config.API.yearOptionsOrder()).then((res) => {
|
await http.get(config.API.yearOptionsOrder()).then((res) => {
|
||||||
// console.log(res);
|
|
||||||
const response = res.data.result;
|
const response = res.data.result;
|
||||||
fiscalyearOP.push(...response);
|
fiscalyearOP.push(...response);
|
||||||
});
|
});
|
||||||
|
|
@ -247,7 +245,6 @@ const OrderTypeFilter = async () => {
|
||||||
await http
|
await http
|
||||||
.get(config.API.typeOrder())
|
.get(config.API.typeOrder())
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
// console.log(res.data);
|
|
||||||
const response = res.data.result;
|
const response = res.data.result;
|
||||||
OrderTypeOption.push(...response);
|
OrderTypeOption.push(...response);
|
||||||
})
|
})
|
||||||
|
|
@ -275,8 +272,6 @@ const OrderStatusFilter = async () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!addedOrderStatusValues.includes(OrderStatusValue)) {
|
if (!addedOrderStatusValues.includes(OrderStatusValue)) {
|
||||||
// console.log(OrderStatusValue);
|
|
||||||
|
|
||||||
OrderStatusOption.push({
|
OrderStatusOption.push({
|
||||||
// id: OrderStatusValue,
|
// id: OrderStatusValue,
|
||||||
id: OrderStatusOption.length.toString(),
|
id: OrderStatusOption.length.toString(),
|
||||||
|
|
@ -303,12 +298,6 @@ const searchFilterTable = async () => {
|
||||||
if (OrderStatus.value == "ทั้งหมด") {
|
if (OrderStatus.value == "ทั้งหมด") {
|
||||||
OrderStatus.value = "";
|
OrderStatus.value = "";
|
||||||
}
|
}
|
||||||
console.log(
|
|
||||||
"Input value changed:",
|
|
||||||
OrderType.value,
|
|
||||||
OrderStatus.value,
|
|
||||||
fiscalyear.value
|
|
||||||
);
|
|
||||||
|
|
||||||
await DataStore.DataUpdateOrder(
|
await DataStore.DataUpdateOrder(
|
||||||
OrderType.value,
|
OrderType.value,
|
||||||
|
|
@ -316,7 +305,6 @@ const searchFilterTable = async () => {
|
||||||
fiscalyear.value
|
fiscalyear.value
|
||||||
);
|
);
|
||||||
UpdataData.value = DataStore.DataMainUpdateOrder;
|
UpdataData.value = DataStore.DataMainUpdateOrder;
|
||||||
// console.log(UpdataData.value);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const paging = ref<boolean>(true);
|
const paging = ref<boolean>(true);
|
||||||
|
|
|
||||||
|
|
@ -93,13 +93,11 @@ const clickSearch = async () => {
|
||||||
year: reportYear.value,
|
year: reportYear.value,
|
||||||
posno: reportNo.value,
|
posno: reportNo.value,
|
||||||
};
|
};
|
||||||
// console.log(body);
|
|
||||||
showLoader();
|
showLoader();
|
||||||
http
|
http
|
||||||
.post(config.API.searchOrderprofile(), body)
|
.post(config.API.searchOrderprofile(), body)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
let data = res.data.result;
|
let data = res.data.result;
|
||||||
console.log(data);
|
|
||||||
|
|
||||||
if (data.length !== 0) {
|
if (data.length !== 0) {
|
||||||
rows.value = data.map((e: any) => ({
|
rows.value = data.map((e: any) => ({
|
||||||
|
|
|
||||||
|
|
@ -178,7 +178,6 @@ watch(byOrder, async () => {
|
||||||
.get(config.API.approverOC(byOrder.value))
|
.get(config.API.approverOC(byOrder.value))
|
||||||
.then((res: any) => {
|
.then((res: any) => {
|
||||||
CommandOption.value = res.data.result;
|
CommandOption.value = res.data.result;
|
||||||
// console.log(CommandOption.value);
|
|
||||||
})
|
})
|
||||||
.catch((e: any) => {
|
.catch((e: any) => {
|
||||||
console.log(e);
|
console.log(e);
|
||||||
|
|
@ -220,10 +219,8 @@ const fetchdetailOrder = async () => {
|
||||||
await http
|
await http
|
||||||
.get(config.API.detailOrder(orderIdString))
|
.get(config.API.detailOrder(orderIdString))
|
||||||
.then((res: any) => {
|
.then((res: any) => {
|
||||||
// console.log(res);
|
|
||||||
|
|
||||||
const data = res.data.result;
|
const data = res.data.result;
|
||||||
// console.log(data);
|
|
||||||
typeOrder.value = typeOrderOption.value.find(
|
typeOrder.value = typeOrderOption.value.find(
|
||||||
(e) => e.id === data.orderTypeValue
|
(e) => e.id === data.orderTypeValue
|
||||||
);
|
);
|
||||||
|
|
@ -234,7 +231,6 @@ const fetchdetailOrder = async () => {
|
||||||
byOrder.value = data.orderBy;
|
byOrder.value = data.orderBy;
|
||||||
nameCommand.value = data.signatoryBy;
|
nameCommand.value = data.signatoryBy;
|
||||||
positionCommand.value = data.signatoryPosition;
|
positionCommand.value = data.signatoryPosition;
|
||||||
// console.log("nameCommand===>",nameCommand.value);
|
|
||||||
|
|
||||||
examRound.value = data.examRound;
|
examRound.value = data.examRound;
|
||||||
conclusionRegisterNo.value = data.conclusionRegisterNo;
|
conclusionRegisterNo.value = data.conclusionRegisterNo;
|
||||||
|
|
@ -309,8 +305,6 @@ const fecthCommand = async () => {
|
||||||
await http
|
await http
|
||||||
.get(config.API.organizationsOrder())
|
.get(config.API.organizationsOrder())
|
||||||
.then((res: any) => {
|
.then((res: any) => {
|
||||||
console.log(res);
|
|
||||||
|
|
||||||
byOrderOption.value = res.data.result;
|
byOrderOption.value = res.data.result;
|
||||||
})
|
})
|
||||||
.catch((e: any) => {
|
.catch((e: any) => {
|
||||||
|
|
@ -319,7 +313,6 @@ const fecthCommand = async () => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const nameOrderFilter = (selectOrder: any) => {
|
const nameOrderFilter = (selectOrder: any) => {
|
||||||
console.log(selectOrder);
|
|
||||||
switch (selectOrder) {
|
switch (selectOrder) {
|
||||||
case "C-PM-01":
|
case "C-PM-01":
|
||||||
return "บรรจุและแต่งตั้งผู้สอบแข่งขันได้";
|
return "บรรจุและแต่งตั้งผู้สอบแข่งขันได้";
|
||||||
|
|
@ -434,9 +427,6 @@ const fecthExamRoundOption = async (commandCode: string) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const submit = async () => {
|
const submit = async () => {
|
||||||
// console.log(nameCommand.value);
|
|
||||||
// console.log(CommandOption.value);
|
|
||||||
|
|
||||||
let signBy = null;
|
let signBy = null;
|
||||||
if (!nameCommand.value.length) {
|
if (!nameCommand.value.length) {
|
||||||
signBy = await nameCommand.value.name;
|
signBy = await nameCommand.value.name;
|
||||||
|
|
@ -447,9 +437,7 @@ const submit = async () => {
|
||||||
(x: any) => x.name == nameCommand.value
|
(x: any) => x.name == nameCommand.value
|
||||||
);
|
);
|
||||||
signBy = await name2?.name;
|
signBy = await name2?.name;
|
||||||
console.log("signBy", signBy);
|
|
||||||
}
|
}
|
||||||
console.log(signBy);
|
|
||||||
|
|
||||||
const orderByOrganizationName = await byOrderOption.value.find(
|
const orderByOrganizationName = await byOrderOption.value.find(
|
||||||
(x: any) => x.id == byOrder.value
|
(x: any) => x.id == byOrder.value
|
||||||
|
|
@ -553,8 +541,6 @@ const submit = async () => {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// console.log(formdata);
|
|
||||||
|
|
||||||
await myForm.value!.validate().then((result: boolean) => {
|
await myForm.value!.validate().then((result: boolean) => {
|
||||||
if (result) {
|
if (result) {
|
||||||
dialogConfirm($q, () => {
|
dialogConfirm($q, () => {
|
||||||
|
|
@ -591,8 +577,6 @@ const updateOrder = async (formData: Object, orderId: string, type: string) => {
|
||||||
await http
|
await http
|
||||||
.put(config.API.orderCPMUpdate(type, orderId), formData)
|
.put(config.API.orderCPMUpdate(type, orderId), formData)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log(res);
|
|
||||||
|
|
||||||
next();
|
next();
|
||||||
success($q, "บันทึกข้อมูลสำเร็จ");
|
success($q, "บันทึกข้อมูลสำเร็จ");
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -118,7 +118,6 @@ const getData = async (id: string) => {
|
||||||
.get(config.API.personsselectedOrder(id))
|
.get(config.API.personsselectedOrder(id))
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
const data = res.data.result;
|
const data = res.data.result;
|
||||||
// console.log(data);
|
|
||||||
let list: ResponseData[] = [];
|
let list: ResponseData[] = [];
|
||||||
data.map((r: ResponseData) => {
|
data.map((r: ResponseData) => {
|
||||||
list.push({
|
list.push({
|
||||||
|
|
@ -134,7 +133,6 @@ const getData = async (id: string) => {
|
||||||
monthSalaryAmount: r.monthSalaryAmount,
|
monthSalaryAmount: r.monthSalaryAmount,
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
// console.log("list", list);
|
|
||||||
rows.value = list;
|
rows.value = list;
|
||||||
selected.value = rows.value;
|
selected.value = rows.value;
|
||||||
})
|
})
|
||||||
|
|
@ -182,8 +180,6 @@ const deleteData = async (id: string) => {
|
||||||
await http
|
await http
|
||||||
.delete(config.API.personsOrder(id))
|
.delete(config.API.personsOrder(id))
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
// const data = res.data.result;
|
|
||||||
// console.log(res);
|
|
||||||
success($q, "ลบข้อมูลสำเร็จ");
|
success($q, "ลบข้อมูลสำเร็จ");
|
||||||
})
|
})
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
|
|
@ -199,10 +195,6 @@ const swapUp = async (id: string) => {
|
||||||
// id = personalId
|
// id = personalId
|
||||||
await http
|
await http
|
||||||
.put(config.API.swapUpOrder(id))
|
.put(config.API.swapUpOrder(id))
|
||||||
.then((res) => {
|
|
||||||
// const data = res.data.result;
|
|
||||||
// console.log(res);
|
|
||||||
})
|
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
messageError($q, e);
|
messageError($q, e);
|
||||||
})
|
})
|
||||||
|
|
@ -216,10 +208,6 @@ const swapDown = async (id: string) => {
|
||||||
// id = personalId
|
// id = personalId
|
||||||
await http
|
await http
|
||||||
.put(config.API.swapDownOrder(id))
|
.put(config.API.swapDownOrder(id))
|
||||||
.then((res) => {
|
|
||||||
// const data = res.data.result;
|
|
||||||
// console.log(res);
|
|
||||||
})
|
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
messageError($q, e);
|
messageError($q, e);
|
||||||
})
|
})
|
||||||
|
|
@ -249,7 +237,6 @@ const saveModal = () => {
|
||||||
};
|
};
|
||||||
const personalId = ref<string>("");
|
const personalId = ref<string>("");
|
||||||
const selectModal = (e: any) => {
|
const selectModal = (e: any) => {
|
||||||
// console.log(e);
|
|
||||||
titleName.value = e.name;
|
titleName.value = e.name;
|
||||||
personalId.value = e.personalId;
|
personalId.value = e.personalId;
|
||||||
modalOpenClose(e.personalId);
|
modalOpenClose(e.personalId);
|
||||||
|
|
@ -265,12 +252,10 @@ const modalOpenClose = async (personalId: string) => {
|
||||||
myForm.value?.reset();
|
myForm.value?.reset();
|
||||||
};
|
};
|
||||||
const fetchSalary = async (personalId: string) => {
|
const fetchSalary = async (personalId: string) => {
|
||||||
// console.log(personalId);
|
|
||||||
showLoader();
|
showLoader();
|
||||||
await http
|
await http
|
||||||
.get(config.API.salaryOrder(personalId))
|
.get(config.API.salaryOrder(personalId))
|
||||||
.then((res: any) => {
|
.then((res: any) => {
|
||||||
console.log(res);
|
|
||||||
const data = res.data.result;
|
const data = res.data.result;
|
||||||
modalData.value = {
|
modalData.value = {
|
||||||
salaryAmount:
|
salaryAmount:
|
||||||
|
|
@ -292,10 +277,8 @@ const fetchSalary = async (personalId: string) => {
|
||||||
? null
|
? null
|
||||||
: data.monthSalaryAmount,
|
: data.monthSalaryAmount,
|
||||||
};
|
};
|
||||||
// console.log("data", modalData.value);
|
|
||||||
})
|
})
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
// console.log(e);
|
|
||||||
messageError($q, e);
|
messageError($q, e);
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
|
|
@ -318,11 +301,9 @@ const putSalary = async (salary: any) => {
|
||||||
await http
|
await http
|
||||||
.put(config.API.salaryOrder(personalId.value), modalData.value)
|
.put(config.API.salaryOrder(personalId.value), modalData.value)
|
||||||
.then((res: any) => {
|
.then((res: any) => {
|
||||||
// console.log(res);
|
|
||||||
success($q, "บันทึกข้อมูลสำเร็จ");
|
success($q, "บันทึกข้อมูลสำเร็จ");
|
||||||
})
|
})
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
// console.log(e);
|
|
||||||
messageError($q, e);
|
messageError($q, e);
|
||||||
})
|
})
|
||||||
.finally(async () => {
|
.finally(async () => {
|
||||||
|
|
@ -353,7 +334,6 @@ const fetchaddlist = async (id: string) => {
|
||||||
.get(config.API.personsOrder(id))
|
.get(config.API.personsOrder(id))
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
const data = res.data.result;
|
const data = res.data.result;
|
||||||
console.log(data);
|
|
||||||
let list = [];
|
let list = [];
|
||||||
list = data.map((r: ResponseData) => ({
|
list = data.map((r: ResponseData) => ({
|
||||||
education: r.education ?? "",
|
education: r.education ?? "",
|
||||||
|
|
@ -408,7 +388,6 @@ const addlist = async (data: Object) => {
|
||||||
success($q, "บันทึกสำเร็จ");
|
success($q, "บันทึกสำเร็จ");
|
||||||
})
|
})
|
||||||
.catch((e: any) => {
|
.catch((e: any) => {
|
||||||
console.log(e);
|
|
||||||
messageError($q, e);
|
messageError($q, e);
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
|
|
@ -418,8 +397,6 @@ const addlist = async (data: Object) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const save = async () => {
|
const save = async () => {
|
||||||
// console.log("save===>", rows.value);
|
|
||||||
// console.log(statuscode.value);
|
|
||||||
const check = rows.value.find((x: any) => x.salaryAmount == 0);
|
const check = rows.value.find((x: any) => x.salaryAmount == 0);
|
||||||
if (
|
if (
|
||||||
(selected.value.length > 0 && !check) ||
|
(selected.value.length > 0 && !check) ||
|
||||||
|
|
|
||||||
|
|
@ -207,7 +207,6 @@ const getData = async (id: string) => {
|
||||||
.get(config.API.copyOrderId(id))
|
.get(config.API.copyOrderId(id))
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
const data = res.data.result;
|
const data = res.data.result;
|
||||||
// console.log(data);
|
|
||||||
let list: DataCopyOrder[] = [];
|
let list: DataCopyOrder[] = [];
|
||||||
data.map((r: ResponseCopyOrder) => {
|
data.map((r: ResponseCopyOrder) => {
|
||||||
let selectCopyOrder = [];
|
let selectCopyOrder = [];
|
||||||
|
|
@ -248,7 +247,6 @@ const getData = async (id: string) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const saveData = async () => {
|
const saveData = async () => {
|
||||||
// console.log("select", selectedModal.value);
|
|
||||||
const id = route.params.orderid
|
const id = route.params.orderid
|
||||||
? route.params.orderid.toString()
|
? route.params.orderid.toString()
|
||||||
: localStorage.getItem("orderId")
|
: localStorage.getItem("orderId")
|
||||||
|
|
@ -258,10 +256,6 @@ const saveData = async () => {
|
||||||
showLoader();
|
showLoader();
|
||||||
await http
|
await http
|
||||||
.post(config.API.copyOrderPersonsId(id), selectedModal.value)
|
.post(config.API.copyOrderPersonsId(id), selectedModal.value)
|
||||||
.then((res) => {
|
|
||||||
// const data = res.data.result;
|
|
||||||
// console.log(res);
|
|
||||||
})
|
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
messageError($q, e);
|
messageError($q, e);
|
||||||
})
|
})
|
||||||
|
|
@ -332,8 +326,6 @@ const deleteData = async (id: string) => {
|
||||||
await http
|
await http
|
||||||
.delete(config.API.copyOrderId(id))
|
.delete(config.API.copyOrderId(id))
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
// const data = res.data.result;
|
|
||||||
// console.log(res);
|
|
||||||
success($q, "ลบข้อมูลสำเร็จ");
|
success($q, "ลบข้อมูลสำเร็จ");
|
||||||
})
|
})
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,6 @@ const getCommandDetail = async () => {
|
||||||
code.value = orderTypeCode ?? "";
|
code.value = orderTypeCode ?? "";
|
||||||
orderName.value = res.data.result.orderTitle;
|
orderName.value = res.data.result.orderTitle;
|
||||||
orderStatusName.value = data.orderStatusName;
|
orderStatusName.value = data.orderStatusName;
|
||||||
// console.log(orderStatusName.value);
|
|
||||||
|
|
||||||
fetchReportCover("pdf", orderId.value);
|
fetchReportCover("pdf", orderId.value);
|
||||||
|
|
||||||
|
|
@ -211,7 +210,6 @@ const viewPDFUpload = async (pdf: string) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
watch(tab, () => {
|
watch(tab, () => {
|
||||||
// console.log(tab.value);
|
|
||||||
if (tab.value === "main") {
|
if (tab.value === "main") {
|
||||||
viewPDF(orderCoverPdf.value);
|
viewPDF(orderCoverPdf.value);
|
||||||
}
|
}
|
||||||
|
|
@ -244,7 +242,6 @@ const props = defineProps({
|
||||||
const previous = () => props.previous();
|
const previous = () => props.previous();
|
||||||
|
|
||||||
const onchangePage = (val: any) => {
|
const onchangePage = (val: any) => {
|
||||||
// console.log(val);
|
|
||||||
if (vuePDFRef !== null) {
|
if (vuePDFRef !== null) {
|
||||||
vuePDFRef.value.reload();
|
vuePDFRef.value.reload();
|
||||||
}
|
}
|
||||||
|
|
@ -260,6 +257,7 @@ const downloadFile = (response: any, filename: string) => {
|
||||||
document.body.removeChild(link);
|
document.body.removeChild(link);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// การอัพโหลดไฟล์คำสั่งและเอกสารแนบท้าย
|
||||||
const saveUpload = () => {
|
const saveUpload = () => {
|
||||||
if (myFormUpload.value !== null) {
|
if (myFormUpload.value !== null) {
|
||||||
myFormUpload.value!.validate().then((success: Boolean) => {
|
myFormUpload.value!.validate().then((success: Boolean) => {
|
||||||
|
|
@ -288,32 +286,41 @@ const saveUpload = () => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// แก้ไขรายละเอียดคำสั่ง
|
||||||
const saveDetail = () => {
|
const saveDetail = () => {
|
||||||
console.log(tab.value);
|
|
||||||
|
|
||||||
if (myForm.value !== null) {
|
if (myForm.value !== null) {
|
||||||
myForm.value!.validate().then((success: Boolean) => {
|
myForm.value!.validate().then((success: Boolean) => {
|
||||||
if (success) {
|
if (success) {
|
||||||
|
// ยืนยันการบันทึก
|
||||||
dialogConfirm($q, async () => {
|
dialogConfirm($q, async () => {
|
||||||
showLoader();
|
showLoader();
|
||||||
await putOrderData();
|
|
||||||
if (tab.value == "main") {
|
await putOrderData(); // บันทึกข้อมูลในส่วนของรายละเอียด
|
||||||
await fetchReportCover("pdf", orderId.value);
|
await fetchReportCover("pdf", orderId.value); // ดึงรายงานคำสั่งใหม่
|
||||||
} else {
|
|
||||||
if (
|
// เช็คประเภทคำสั่งถ้าไม่ใช่ type เหล่านี้จะมีแนบท้าย
|
||||||
code.value != "c-pm-10" &&
|
if (
|
||||||
code.value != "c-pm-11" &&
|
code.value != "c-pm-10" &&
|
||||||
code.value != "c-pm-12" &&
|
code.value != "c-pm-11" &&
|
||||||
code.value != "c-pm-16" &&
|
code.value != "c-pm-12" &&
|
||||||
code.value != "c-pm-18" &&
|
code.value != "c-pm-16" &&
|
||||||
code.value != "c-pm-19" &&
|
code.value != "c-pm-18" &&
|
||||||
code.value != "c-pm-20" &&
|
code.value != "c-pm-19" &&
|
||||||
code.value != "c-pm-21"
|
code.value != "c-pm-20" &&
|
||||||
) {
|
code.value != "c-pm-21"
|
||||||
await fetchReportAttachment("pdf", orderId.value);
|
) {
|
||||||
await viewPDF(orderAttachmentPdf.value);
|
// ดึงรายงานในส่วนของแนบท้ายมาใหม่
|
||||||
|
await fetchReportAttachment("pdf", orderId.value);
|
||||||
|
|
||||||
|
// เช็คว่าถ้าอยู่ใน tab ของแนบท้ายไหมถ้าอยู่เข้าเงื่อนไขนี้
|
||||||
|
if (tab.value == "second") {
|
||||||
|
// แสดงผลส่วนของแนบท้ายใหม่
|
||||||
|
await viewPDF(orderAttachmentPdf.value);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ดึงข้อมูลสถานะการออกคำสั่ง (Y = ออกคำสั่งได้แล้ว, N = เงื่อนไขยังไม่ครบไม่สามารถกดออกคำสั่งได้)
|
||||||
await fecthstatusOrder();
|
await fecthstatusOrder();
|
||||||
|
|
||||||
hideLoader();
|
hideLoader();
|
||||||
|
|
@ -323,6 +330,7 @@ const saveDetail = () => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// ฟังก์ชั่นการบันทึกข้อมูลในส่วนของรายละเอียด
|
||||||
const putOrderData = async () => {
|
const putOrderData = async () => {
|
||||||
const orderData = {
|
const orderData = {
|
||||||
orderNo: order.value,
|
orderNo: order.value,
|
||||||
|
|
@ -438,108 +446,61 @@ const viewFileUpload = async (url: string) => {
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div style="min-height: 70vh">
|
<div style="min-height: 70vh">
|
||||||
<q-splitter
|
<q-splitter v-model="splitterModel" style="height: 70vh" @update:model-value="onchangePage">
|
||||||
v-model="splitterModel"
|
|
||||||
style="height: 70vh"
|
|
||||||
@update:model-value="onchangePage"
|
|
||||||
>
|
|
||||||
<template v-slot:before>
|
<template v-slot:before>
|
||||||
<div class="space">
|
<div class="space">
|
||||||
<div @click="setTab('main')" :class="getClass(tab == 'main')">
|
<div @click="setTab('main')" :class="getClass(tab == 'main')">
|
||||||
<div class="q-pr-sm">คำสั่ง</div>
|
<div class="q-pr-sm">คำสั่ง</div>
|
||||||
<q-btn
|
<q-btn v-if="orderStatusName != 'ออกคำสั่งแล้ว'" size="12px" flat dense icon="mdi-download"
|
||||||
v-if="orderStatusName != 'ออกคำสั่งแล้ว'"
|
:disable="tab !== 'main'" :color="tab !== 'main' ? 'grey' : 'add'">
|
||||||
size="12px"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
icon="mdi-download"
|
|
||||||
:disable="tab !== 'main'"
|
|
||||||
:color="tab !== 'main' ? 'grey' : 'add'"
|
|
||||||
>
|
|
||||||
<q-tooltip>ดาวน์โหลด</q-tooltip>
|
<q-tooltip>ดาวน์โหลด</q-tooltip>
|
||||||
<q-menu>
|
<q-menu>
|
||||||
<q-list style="min-width: 150px">
|
<q-list style="min-width: 150px">
|
||||||
<q-item
|
<q-item clickable v-close-popup @click="downloadCover('pdf')">
|
||||||
clickable
|
|
||||||
v-close-popup
|
|
||||||
@click="downloadCover('pdf')"
|
|
||||||
>
|
|
||||||
<!-- type="a"
|
<!-- type="a"
|
||||||
:href="orderCoverPdf"
|
:href="orderCoverPdf"
|
||||||
target="_blank" -->
|
target="_blank" -->
|
||||||
<q-item-section avatar
|
<q-item-section avatar><q-icon color="red" name="mdi-file-pdf" /></q-item-section>
|
||||||
><q-icon color="red" name="mdi-file-pdf"
|
|
||||||
/></q-item-section>
|
|
||||||
<q-item-section>ไฟล์ .PDF</q-item-section>
|
<q-item-section>ไฟล์ .PDF</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
<q-item
|
<q-item clickable v-close-popup @click="downloadCover('docx')">
|
||||||
clickable
|
|
||||||
v-close-popup
|
|
||||||
@click="downloadCover('docx')"
|
|
||||||
>
|
|
||||||
<!-- type="a"
|
<!-- type="a"
|
||||||
:href="orderCoverDocs"
|
:href="orderCoverDocs"
|
||||||
target="_blank" -->
|
target="_blank" -->
|
||||||
<q-item-section avatar
|
<q-item-section avatar><q-icon color="blue" name="mdi-file-word" /></q-item-section>
|
||||||
><q-icon color="blue" name="mdi-file-word"
|
|
||||||
/></q-item-section>
|
|
||||||
<q-item-section>ไฟล์ .docx</q-item-section>
|
<q-item-section>ไฟล์ .docx</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
</q-list>
|
</q-list>
|
||||||
</q-menu>
|
</q-menu>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div v-if="code != 'c-pm-10' &&
|
||||||
v-if="
|
code != 'c-pm-11' &&
|
||||||
code != 'c-pm-10' &&
|
code != 'c-pm-12' &&
|
||||||
code != 'c-pm-11' &&
|
code != 'c-pm-16' &&
|
||||||
code != 'c-pm-12' &&
|
code != 'c-pm-18' &&
|
||||||
code != 'c-pm-16' &&
|
code != 'c-pm-19' &&
|
||||||
code != 'c-pm-18' &&
|
code != 'c-pm-20' &&
|
||||||
code != 'c-pm-19' &&
|
code != 'c-pm-21'
|
||||||
code != 'c-pm-20' &&
|
" @click="setTab('second')" :class="getClass(tab == 'second')">
|
||||||
code != 'c-pm-21'
|
|
||||||
"
|
|
||||||
@click="setTab('second')"
|
|
||||||
:class="getClass(tab == 'second')"
|
|
||||||
>
|
|
||||||
<div class="q-pr-sm">เอกสารแนบท้าย</div>
|
<div class="q-pr-sm">เอกสารแนบท้าย</div>
|
||||||
<q-btn
|
<q-btn v-if="orderStatusName != 'ออกคำสั่งแล้ว'" size="12px" flat dense
|
||||||
v-if="orderStatusName != 'ออกคำสั่งแล้ว'"
|
:color="tab !== 'second' ? 'grey' : 'add'" icon="mdi-download" :disable="tab !== 'second'">
|
||||||
size="12px"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
:color="tab !== 'second' ? 'grey' : 'add'"
|
|
||||||
icon="mdi-download"
|
|
||||||
:disable="tab !== 'second'"
|
|
||||||
>
|
|
||||||
<q-tooltip>ดาวน์โหลด</q-tooltip>
|
<q-tooltip>ดาวน์โหลด</q-tooltip>
|
||||||
<q-menu>
|
<q-menu>
|
||||||
<q-list style="min-width: 150px">
|
<q-list style="min-width: 150px">
|
||||||
<q-item
|
<q-item clickable v-close-popup @click="downloadAttachment('pdf')">
|
||||||
clickable
|
|
||||||
v-close-popup
|
|
||||||
@click="downloadAttachment('pdf')"
|
|
||||||
>
|
|
||||||
<!-- type="a"
|
<!-- type="a"
|
||||||
:href="orderAttachmentPdf"
|
:href="orderAttachmentPdf"
|
||||||
target="_blank" -->
|
target="_blank" -->
|
||||||
<q-item-section avatar
|
<q-item-section avatar><q-icon color="red" name="mdi-file-pdf" /></q-item-section>
|
||||||
><q-icon color="red" name="mdi-file-pdf"
|
|
||||||
/></q-item-section>
|
|
||||||
<q-item-section>ไฟล์ .PDF</q-item-section>
|
<q-item-section>ไฟล์ .PDF</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
<q-item
|
<q-item clickable v-close-popup @click="downloadAttachment('xlsx')">
|
||||||
clickable
|
|
||||||
v-close-popup
|
|
||||||
@click="downloadAttachment('xlsx')"
|
|
||||||
>
|
|
||||||
<!-- type="a"
|
<!-- type="a"
|
||||||
:href="orderAttachmentXlsx"
|
:href="orderAttachmentXlsx"
|
||||||
target="_blank" -->
|
target="_blank" -->
|
||||||
<q-item-section avatar
|
<q-item-section avatar><q-icon color="green-7" name="mdi-file-excel" /></q-item-section>
|
||||||
><q-icon color="green-7" name="mdi-file-excel"
|
|
||||||
/></q-item-section>
|
|
||||||
<q-item-section>ไฟล์ .xls</q-item-section>
|
<q-item-section>ไฟล์ .xls</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
</q-list>
|
</q-list>
|
||||||
|
|
@ -547,24 +508,12 @@ const viewFileUpload = async (url: string) => {
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
<q-space />
|
<q-space />
|
||||||
<q-btn
|
<q-btn class="text-dark" flat dense icon="mdi-fullscreen" color="add" @click="dialog = true" />
|
||||||
class="text-dark"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
icon="mdi-fullscreen"
|
|
||||||
color="add"
|
|
||||||
@click="dialog = true"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
<q-separator style="margin-top: -1px; z-index: 1" />
|
<q-separator style="margin-top: -1px; z-index: 1" />
|
||||||
<q-card bordered class="card-pdf q-ma-md q-pa-md">
|
<q-card bordered class="card-pdf q-ma-md q-pa-md">
|
||||||
<div class="justify-between items-center align-center q-pb-sm row">
|
<div class="justify-between items-center align-center q-pb-sm row">
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page > 1 ? page - 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page > 1 ? page - 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-left" />
|
<q-icon name="mdi-chevron-left" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
|
|
@ -572,12 +521,7 @@ const viewFileUpload = async (url: string) => {
|
||||||
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page < numOfPages ? page + 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page < numOfPages ? page + 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-right" />
|
<q-icon name="mdi-chevron-right" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -586,12 +530,7 @@ const viewFileUpload = async (url: string) => {
|
||||||
<!-- <VuePdf :key="page" :src="pdfSrc" :page="page" /> -->
|
<!-- <VuePdf :key="page" :src="pdfSrc" :page="page" /> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="justify-between items-center align-center q-pt-sm row">
|
<div class="justify-between items-center align-center q-pt-sm row">
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page > 1 ? page - 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page > 1 ? page - 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-left" />
|
<q-icon name="mdi-chevron-left" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
|
|
@ -599,12 +538,7 @@ const viewFileUpload = async (url: string) => {
|
||||||
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page < numOfPages ? page + 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page < numOfPages ? page + 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-right" />
|
<q-icon name="mdi-chevron-right" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -612,12 +546,7 @@ const viewFileUpload = async (url: string) => {
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-slot:separator>
|
<template v-slot:separator>
|
||||||
<q-avatar
|
<q-avatar color="primary" text-color="white" size="30px" icon="drag_indicator" />
|
||||||
color="primary"
|
|
||||||
text-color="white"
|
|
||||||
size="30px"
|
|
||||||
icon="drag_indicator"
|
|
||||||
/>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-slot:after>
|
<template v-slot:after>
|
||||||
|
|
@ -629,94 +558,47 @@ const viewFileUpload = async (url: string) => {
|
||||||
<div>
|
<div>
|
||||||
<label class="text-file">คำสั่ง</label>
|
<label class="text-file">คำสั่ง</label>
|
||||||
<div v-if="OrderPDFUpload != ''" class="text-right">
|
<div v-if="OrderPDFUpload != ''" class="text-right">
|
||||||
<q-btn
|
<q-btn size="12px" flat dense color="primary" icon="mdi-eye"
|
||||||
size="12px"
|
@click="viewFileUpload(OrderPDFUpload)">
|
||||||
flat
|
|
||||||
dense
|
|
||||||
color="primary"
|
|
||||||
icon="mdi-eye"
|
|
||||||
@click="viewFileUpload(OrderPDFUpload)"
|
|
||||||
>
|
|
||||||
<q-tooltip>ดูไฟล์คำสั่ง</q-tooltip>
|
<q-tooltip>ดูไฟล์คำสั่ง</q-tooltip>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
<q-btn
|
<q-btn type="a" :href="OrderPDFUpload" size="12px" flat dense color="red" icon="mdi-download"
|
||||||
type="a"
|
target="_blank">
|
||||||
:href="OrderPDFUpload"
|
|
||||||
size="12px"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
color="red"
|
|
||||||
icon="mdi-download"
|
|
||||||
target="_blank"
|
|
||||||
>
|
|
||||||
<q-tooltip>ดาวน์โหลดไฟล์คำสั่ง</q-tooltip>
|
<q-tooltip>ดาวน์โหลดไฟล์คำสั่ง</q-tooltip>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
<q-file
|
<q-file v-if="orderStatusName != 'ออกคำสั่งแล้ว'" outlined dense v-model="fileOrder"
|
||||||
v-if="orderStatusName != 'ออกคำสั่งแล้ว'"
|
label="เลือกไฟล์คำสั่ง" hide-bottom-space lazy-rules
|
||||||
outlined
|
:rules="[(val) => val || 'กรุณาเลือกไฟล์ไฟล์คำสั่ง']" accept=".pdf">
|
||||||
dense
|
|
||||||
v-model="fileOrder"
|
|
||||||
label="เลือกไฟล์คำสั่ง"
|
|
||||||
hide-bottom-space
|
|
||||||
lazy-rules
|
|
||||||
:rules="[(val) => val || 'กรุณาเลือกไฟล์ไฟล์คำสั่ง']"
|
|
||||||
accept=".pdf"
|
|
||||||
>
|
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
<q-icon name="attach_file" />
|
<q-icon name="attach_file" />
|
||||||
</template>
|
</template>
|
||||||
</q-file>
|
</q-file>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div v-if="code != 'c-pm-10' &&
|
||||||
v-if="
|
code != 'c-pm-11' &&
|
||||||
code != 'c-pm-10' &&
|
code != 'c-pm-12' &&
|
||||||
code != 'c-pm-11' &&
|
code != 'c-pm-16' &&
|
||||||
code != 'c-pm-12' &&
|
code != 'c-pm-18' &&
|
||||||
code != 'c-pm-16' &&
|
code != 'c-pm-19' &&
|
||||||
code != 'c-pm-18' &&
|
code != 'c-pm-20' &&
|
||||||
code != 'c-pm-19' &&
|
code != 'c-pm-21'
|
||||||
code != 'c-pm-20' &&
|
">
|
||||||
code != 'c-pm-21'
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<label class="text-file">เอกสารแนบท้าย</label>
|
<label class="text-file">เอกสารแนบท้าย</label>
|
||||||
<div v-if="TailerPDFUpload != ''" class="text-right">
|
<div v-if="TailerPDFUpload != ''" class="text-right">
|
||||||
<q-btn
|
<q-btn size="12px" flat dense color="primary" icon="mdi-eye"
|
||||||
size="12px"
|
@click="viewFileUpload(TailerPDFUpload)">
|
||||||
flat
|
|
||||||
dense
|
|
||||||
color="primary"
|
|
||||||
icon="mdi-eye"
|
|
||||||
@click="viewFileUpload(TailerPDFUpload)"
|
|
||||||
>
|
|
||||||
<q-tooltip>ดูเอกสารแนบท้าย</q-tooltip>
|
<q-tooltip>ดูเอกสารแนบท้าย</q-tooltip>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
<q-btn
|
<q-btn type="a" :href="TailerPDFUpload" size="12px" flat dense color="red" icon="mdi-download"
|
||||||
type="a"
|
target="_blank">
|
||||||
:href="TailerPDFUpload"
|
|
||||||
size="12px"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
color="red"
|
|
||||||
icon="mdi-download"
|
|
||||||
target="_blank"
|
|
||||||
>
|
|
||||||
<q-tooltip>ดาวน์โหลดเอกสารแนบท้าย</q-tooltip>
|
<q-tooltip>ดาวน์โหลดเอกสารแนบท้าย</q-tooltip>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<q-file
|
<q-file v-if="orderStatusName != 'ออกคำสั่งแล้ว'" outlined dense v-model="fileTailer"
|
||||||
v-if="orderStatusName != 'ออกคำสั่งแล้ว'"
|
label="เลือกไฟล์เอกสารแนบท้าย" hide-bottom-space lazy-rules
|
||||||
outlined
|
:rules="[(val) => val || 'กรุณาเลือกไฟล์เอกสารแนบท้าย']" accept=".pdf">
|
||||||
dense
|
|
||||||
v-model="fileTailer"
|
|
||||||
label="เลือกไฟล์เอกสารแนบท้าย"
|
|
||||||
hide-bottom-space
|
|
||||||
lazy-rules
|
|
||||||
:rules="[(val) => val || 'กรุณาเลือกไฟล์เอกสารแนบท้าย']"
|
|
||||||
accept=".pdf"
|
|
||||||
>
|
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
<q-icon name="attach_file" />
|
<q-icon name="attach_file" />
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -724,26 +606,15 @@ const viewFileUpload = async (url: string) => {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- บันทึกอัพโหลดเอกสาร -->
|
<!-- บันทึกอัพโหลดเอกสาร -->
|
||||||
<div
|
<div v-if="orderStatusName != 'ออกคำสั่งแล้ว'" class="row col-12 q-mt-md">
|
||||||
v-if="orderStatusName != 'ออกคำสั่งแล้ว'"
|
|
||||||
class="row col-12 q-mt-md"
|
|
||||||
>
|
|
||||||
<q-space></q-space>
|
<q-space></q-space>
|
||||||
<q-btn
|
<q-btn unelevated label="บันทึก" :color="validateFormUpload() &&
|
||||||
unelevated
|
orderStatusName != 'ออกคำสั่งแล้ว'
|
||||||
label="บันทึก"
|
? 'public'
|
||||||
:color="
|
: 'grey'
|
||||||
validateFormUpload() &&
|
" :disable="!validateFormUpload() ||
|
||||||
orderStatusName != 'ออกคำสั่งแล้ว'
|
orderStatusName == 'ออกคำสั่งแล้ว'
|
||||||
? 'public'
|
" @click="saveUpload">
|
||||||
: 'grey'
|
|
||||||
"
|
|
||||||
:disable="
|
|
||||||
!validateFormUpload() ||
|
|
||||||
orderStatusName == 'ออกคำสั่งแล้ว'
|
|
||||||
"
|
|
||||||
@click="saveUpload"
|
|
||||||
>
|
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -756,54 +627,25 @@ const viewFileUpload = async (url: string) => {
|
||||||
<div class="q-gutter-y-md q-mb-md">
|
<div class="q-gutter-y-md q-mb-md">
|
||||||
<div>
|
<div>
|
||||||
<label class="text-file">เลขที่คำสั่ง</label>
|
<label class="text-file">เลขที่คำสั่ง</label>
|
||||||
<q-input
|
<q-input :outlined="true" dense lazy-rules :readonly="!true" :borderless="!true" v-model="order"
|
||||||
:outlined="true"
|
:rules="[(val) => !!val || `${'กรุณากรอกเลขที่คำสั่ง'}`]" hide-bottom-space
|
||||||
dense
|
:label="`${'เลขที่คำสั่ง'}`" :disable="orderStatusName == 'ออกคำสั่งแล้ว'" />
|
||||||
lazy-rules
|
|
||||||
:readonly="!true"
|
|
||||||
:borderless="!true"
|
|
||||||
v-model="order"
|
|
||||||
:rules="[(val) => !!val || `${'กรุณากรอกเลขที่คำสั่ง'}`]"
|
|
||||||
hide-bottom-space
|
|
||||||
:label="`${'เลขที่คำสั่ง'}`"
|
|
||||||
:disable="orderStatusName == 'ออกคำสั่งแล้ว'"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<label class="text-file">ปีที่ออกคำสั่ง</label>
|
<label class="text-file">ปีที่ออกคำสั่ง</label>
|
||||||
<datepicker
|
<datepicker :disabled="orderStatusName == 'ออกคำสั่งแล้ว'" menu-class-name="modalfix" v-model="years"
|
||||||
:disabled="orderStatusName == 'ออกคำสั่งแล้ว'"
|
:locale="'th'" autoApply year-picker :enableTimePicker="false" week-start="0">
|
||||||
menu-class-name="modalfix"
|
|
||||||
v-model="years"
|
|
||||||
:locale="'th'"
|
|
||||||
autoApply
|
|
||||||
year-picker
|
|
||||||
:enableTimePicker="false"
|
|
||||||
week-start="0"
|
|
||||||
>
|
|
||||||
<template #year="{ year }">{{ year + 543 }}</template>
|
<template #year="{ year }">{{ year + 543 }}</template>
|
||||||
<template #year-overlay-value="{ value }">{{
|
<template #year-overlay-value="{ value }">{{
|
||||||
parseInt(value + 543)
|
parseInt(value + 543)
|
||||||
}}</template>
|
}}</template>
|
||||||
<template #trigger>
|
<template #trigger>
|
||||||
<q-input
|
<q-input :disable="orderStatusName == 'ออกคำสั่งแล้ว'" outlined dense lazy-rules
|
||||||
:disable="orderStatusName == 'ออกคำสั่งแล้ว'"
|
:model-value="years + 543" :rules="[
|
||||||
outlined
|
|
||||||
dense
|
|
||||||
lazy-rules
|
|
||||||
:model-value="years + 543"
|
|
||||||
:rules="[
|
|
||||||
(val) => !!val || `${'กรุณาเลือกปีที่ออกคำสั่ง'}`,
|
(val) => !!val || `${'กรุณาเลือกปีที่ออกคำสั่ง'}`,
|
||||||
]"
|
]" hide-bottom-space :label="`${'ปีที่ออกคำสั่ง'}`">
|
||||||
hide-bottom-space
|
|
||||||
:label="`${'ปีที่ออกคำสั่ง'}`"
|
|
||||||
>
|
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
<q-icon
|
<q-icon name="event" class="cursor-pointer" style="color: var(--q-grey)">
|
||||||
name="event"
|
|
||||||
class="cursor-pointer"
|
|
||||||
style="color: var(--q-grey)"
|
|
||||||
>
|
|
||||||
</q-icon>
|
</q-icon>
|
||||||
</template>
|
</template>
|
||||||
</q-input>
|
</q-input>
|
||||||
|
|
@ -812,16 +654,8 @@ const viewFileUpload = async (url: string) => {
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<label class="text-file">วันที่ลงนาม</label>
|
<label class="text-file">วันที่ลงนาม</label>
|
||||||
<datepicker
|
<datepicker :disabled="orderStatusName == 'ออกคำสั่งแล้ว'" menu-class-name="modalfix" v-model="date"
|
||||||
:disabled="orderStatusName == 'ออกคำสั่งแล้ว'"
|
:locale="'th'" autoApply borderless :enableTimePicker="false" week-start="0">
|
||||||
menu-class-name="modalfix"
|
|
||||||
v-model="date"
|
|
||||||
:locale="'th'"
|
|
||||||
autoApply
|
|
||||||
borderless
|
|
||||||
:enableTimePicker="false"
|
|
||||||
week-start="0"
|
|
||||||
>
|
|
||||||
<template #year="{ year }">
|
<template #year="{ year }">
|
||||||
{{ year + 543 }}
|
{{ year + 543 }}
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -829,24 +663,13 @@ const viewFileUpload = async (url: string) => {
|
||||||
{{ parseInt(value + 543) }}
|
{{ parseInt(value + 543) }}
|
||||||
</template>
|
</template>
|
||||||
<template #trigger>
|
<template #trigger>
|
||||||
<q-input
|
<q-input :disable="orderStatusName == 'ออกคำสั่งแล้ว'" outlined dense
|
||||||
:disable="orderStatusName == 'ออกคำสั่งแล้ว'"
|
class="full-width datepicker" hide-bottom-space
|
||||||
outlined
|
:model-value="date != null ? date2Thai(date) : null" :label="`${'วันที่ลงนาม'}`" :rules="[
|
||||||
dense
|
|
||||||
class="full-width datepicker"
|
|
||||||
hide-bottom-space
|
|
||||||
:model-value="date != null ? date2Thai(date) : null"
|
|
||||||
:label="`${'วันที่ลงนาม'}`"
|
|
||||||
:rules="[
|
|
||||||
(val) => !!val || `${'กรุณาเลือกวันที่ลงนาม'}`,
|
(val) => !!val || `${'กรุณาเลือกวันที่ลงนาม'}`,
|
||||||
]"
|
]">
|
||||||
>
|
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
<q-icon
|
<q-icon name="event" class="cursor-pointer" style="color: var(--q-grey)">
|
||||||
name="event"
|
|
||||||
class="cursor-pointer"
|
|
||||||
style="color: var(--q-grey)"
|
|
||||||
>
|
|
||||||
</q-icon>
|
</q-icon>
|
||||||
</template>
|
</template>
|
||||||
</q-input>
|
</q-input>
|
||||||
|
|
@ -855,24 +678,13 @@ const viewFileUpload = async (url: string) => {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- บันทึกรายละเอียดคำสั่ง -->
|
<!-- บันทึกรายละเอียดคำสั่ง -->
|
||||||
<div
|
<div v-if="orderStatusName != 'ออกคำสั่งแล้ว'" class="row col-12 q-mt-md">
|
||||||
v-if="orderStatusName != 'ออกคำสั่งแล้ว'"
|
|
||||||
class="row col-12 q-mt-md"
|
|
||||||
>
|
|
||||||
<q-space></q-space>
|
<q-space></q-space>
|
||||||
<q-btn
|
<q-btn unelevated label="บันทึก" :color="validateForm() && orderStatusName != 'ออกคำสั่งแล้ว'
|
||||||
unelevated
|
? 'public'
|
||||||
label="บันทึก"
|
: 'grey'
|
||||||
:color="
|
" :disable="!validateForm() || orderStatusName == 'ออกคำสั่งแล้ว'
|
||||||
validateForm() && orderStatusName != 'ออกคำสั่งแล้ว'
|
" @click="saveDetail">
|
||||||
? 'public'
|
|
||||||
: 'grey'
|
|
||||||
"
|
|
||||||
:disable="
|
|
||||||
!validateForm() || orderStatusName == 'ออกคำสั่งแล้ว'
|
|
||||||
"
|
|
||||||
@click="saveDetail"
|
|
||||||
>
|
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -884,26 +696,13 @@ const viewFileUpload = async (url: string) => {
|
||||||
</div>
|
</div>
|
||||||
<q-separator />
|
<q-separator />
|
||||||
<div class="flex justify-end q-pa-sm q-gutter-sm">
|
<div class="flex justify-end q-pa-sm q-gutter-sm">
|
||||||
<q-btn
|
<q-btn v-if="orderStatusName !== 'ออกคำสั่งแล้ว'" dense outline color="primary" icon="chevron_left"
|
||||||
v-if="orderStatusName !== 'ออกคำสั่งแล้ว'"
|
@click="previous" class="q-pr-md" label="เลือกรายชื่อส่งสำเนา">
|
||||||
dense
|
|
||||||
outline
|
|
||||||
color="primary"
|
|
||||||
icon="chevron_left"
|
|
||||||
@click="previous"
|
|
||||||
class="q-pr-md"
|
|
||||||
label="เลือกรายชื่อส่งสำเนา"
|
|
||||||
>
|
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
<!-- ออกคำสั่ง -->
|
<!-- ออกคำสั่ง -->
|
||||||
<q-btn
|
<q-btn v-if="orderStatusName !== 'ออกคำสั่งแล้ว'" :disable="statusOrder == 'N'" unelevated label="ออกคำสั่ง"
|
||||||
v-if="orderStatusName !== 'ออกคำสั่งแล้ว'"
|
:color="statusOrder == 'Y' ? 'public' : 'grey'">
|
||||||
:disable="statusOrder == 'N'"
|
|
||||||
unelevated
|
|
||||||
label="ออกคำสั่ง"
|
|
||||||
:color="statusOrder == 'Y' ? 'public' : 'grey'"
|
|
||||||
>
|
|
||||||
<q-menu>
|
<q-menu>
|
||||||
<q-list style="min-width: 150px">
|
<q-list style="min-width: 150px">
|
||||||
<q-item clickable v-close-popup @click="clickExecute(orderId)">
|
<q-item clickable v-close-popup @click="clickExecute(orderId)">
|
||||||
|
|
@ -916,42 +715,18 @@ const viewFileUpload = async (url: string) => {
|
||||||
</q-menu>
|
</q-menu>
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
<q-btn
|
<q-btn v-else disable unelevated label="ออกคำสั่งเสร็จสิ้น" color="green"></q-btn>
|
||||||
v-else
|
|
||||||
disable
|
|
||||||
unelevated
|
|
||||||
label="ออกคำสั่งเสร็จสิ้น"
|
|
||||||
color="green"
|
|
||||||
></q-btn>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<q-dialog
|
<q-dialog v-model="dialog" persistent :maximized="true" transition-show="slide-up" transition-hide="slide-down">
|
||||||
v-model="dialog"
|
|
||||||
persistent
|
|
||||||
:maximized="true"
|
|
||||||
transition-show="slide-up"
|
|
||||||
transition-hide="slide-down"
|
|
||||||
>
|
|
||||||
<q-card class="bg-white text-white">
|
<q-card class="bg-white text-white">
|
||||||
<div class="flex justify-end items-center align-center q-mr-md q-mt-sm">
|
<div class="flex justify-end items-center align-center q-mr-md q-mt-sm">
|
||||||
<q-btn
|
<q-btn icon="close" unelevated round dense style="color: #ff8080; background-color: #ffdede" size="12px"
|
||||||
icon="close"
|
v-close-popup />
|
||||||
unelevated
|
|
||||||
round
|
|
||||||
dense
|
|
||||||
style="color: #ff8080; background-color: #ffdede"
|
|
||||||
size="12px"
|
|
||||||
v-close-popup
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
<q-card-section bordered class="card-pdf q-ma-md q-pa-md">
|
<q-card-section bordered class="card-pdf q-ma-md q-pa-md">
|
||||||
<div class="justify-between items-center align-center q-pb-sm row">
|
<div class="justify-between items-center align-center q-pb-sm row">
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page > 1 ? page - 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page > 1 ? page - 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-left" />
|
<q-icon name="mdi-chevron-left" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
|
|
@ -959,32 +734,16 @@ const viewFileUpload = async (url: string) => {
|
||||||
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page < numOfPages ? page + 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page < numOfPages ? page + 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-right" />
|
<q-icon name="mdi-chevron-right" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
<div class="pdfWidth">
|
<div class="pdfWidth">
|
||||||
<VuePDF
|
<VuePDF ref="vuePDFRef" :pdf="pdfSrc" :page="page" fit-parent :scale="0.1" />
|
||||||
ref="vuePDFRef"
|
|
||||||
:pdf="pdfSrc"
|
|
||||||
:page="page"
|
|
||||||
fit-parent
|
|
||||||
:scale="0.1"
|
|
||||||
/>
|
|
||||||
<!-- <VuePdf :key="page" :src="pdfSrc" :page="page" /> -->
|
<!-- <VuePdf :key="page" :src="pdfSrc" :page="page" /> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="justify-between items-center align-center q-pt-sm row">
|
<div class="justify-between items-center align-center q-pt-sm row">
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page > 1 ? page - 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page > 1 ? page - 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-left" />
|
<q-icon name="mdi-chevron-left" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
|
|
@ -992,12 +751,7 @@ const viewFileUpload = async (url: string) => {
|
||||||
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page < numOfPages ? page + 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page < numOfPages ? page + 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-right" />
|
<q-icon name="mdi-chevron-right" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -1005,33 +759,16 @@ const viewFileUpload = async (url: string) => {
|
||||||
</q-card>
|
</q-card>
|
||||||
</q-dialog>
|
</q-dialog>
|
||||||
|
|
||||||
<q-dialog
|
<q-dialog v-model="dialogFileUpload" persistent :maximized="true" transition-show="slide-up"
|
||||||
v-model="dialogFileUpload"
|
transition-hide="slide-down">
|
||||||
persistent
|
|
||||||
:maximized="true"
|
|
||||||
transition-show="slide-up"
|
|
||||||
transition-hide="slide-down"
|
|
||||||
>
|
|
||||||
<q-card class="bg-white text-white">
|
<q-card class="bg-white text-white">
|
||||||
<div class="flex justify-end items-center align-center q-mr-md q-mt-sm">
|
<div class="flex justify-end items-center align-center q-mr-md q-mt-sm">
|
||||||
<q-btn
|
<q-btn icon="close" unelevated round dense style="color: #ff8080; background-color: #ffdede" size="12px"
|
||||||
icon="close"
|
v-close-popup />
|
||||||
unelevated
|
|
||||||
round
|
|
||||||
dense
|
|
||||||
style="color: #ff8080; background-color: #ffdede"
|
|
||||||
size="12px"
|
|
||||||
v-close-popup
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
<q-card-section bordered class="card-pdf q-ma-md q-pa-md">
|
<q-card-section bordered class="card-pdf q-ma-md q-pa-md">
|
||||||
<div class="justify-between items-center align-center q-pb-sm row">
|
<div class="justify-between items-center align-center q-pb-sm row">
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page > 1 ? page - 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page > 1 ? page - 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-left" />
|
<q-icon name="mdi-chevron-left" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
|
|
@ -1039,32 +776,16 @@ const viewFileUpload = async (url: string) => {
|
||||||
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page < numOfPages ? page + 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page < numOfPages ? page + 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-right" />
|
<q-icon name="mdi-chevron-right" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
<div class="pdfWidth">
|
<div class="pdfWidth">
|
||||||
<VuePDF
|
<VuePDF ref="vuePDFRef" :pdf="pdfFileUploadSrc" :page="page" fit-parent :scale="0.1" />
|
||||||
ref="vuePDFRef"
|
|
||||||
:pdf="pdfFileUploadSrc"
|
|
||||||
:page="page"
|
|
||||||
fit-parent
|
|
||||||
:scale="0.1"
|
|
||||||
/>
|
|
||||||
<!-- <VuePdf :key="page" :src="pdfSrc" :page="page" /> -->
|
<!-- <VuePdf :key="page" :src="pdfSrc" :page="page" /> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="justify-between items-center align-center q-pt-sm row">
|
<div class="justify-between items-center align-center q-pt-sm row">
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page > 1 ? page - 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page > 1 ? page - 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-left" />
|
<q-icon name="mdi-chevron-left" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
|
|
@ -1072,12 +793,7 @@ const viewFileUpload = async (url: string) => {
|
||||||
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
หน้าที่ {{ page }} จาก {{ numOfPages }}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<q-btn
|
<q-btn class="text-dark bg-grey-4" flat dense @click="page = page < numOfPages ? page + 1 : page">
|
||||||
class="text-dark bg-grey-4"
|
|
||||||
flat
|
|
||||||
dense
|
|
||||||
@click="page = page < numOfPages ? page + 1 : page"
|
|
||||||
>
|
|
||||||
<q-icon name="mdi-chevron-right" />
|
<q-icon name="mdi-chevron-right" />
|
||||||
</q-btn>
|
</q-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue