diff --git a/src/modules/05_placement/components/OrderPlacement/step/step04.vue b/src/modules/05_placement/components/OrderPlacement/step/step04.vue
index e35338733..969e2d574 100644
--- a/src/modules/05_placement/components/OrderPlacement/step/step04.vue
+++ b/src/modules/05_placement/components/OrderPlacement/step/step04.vue
@@ -286,14 +286,14 @@
unelevated
label="ออกคำสั่ง"
:color="validateForm() ? 'public' : 'grey'"
- :disable="!validateForm()"
+ :disable="statusOrder == 'N'"
/>
@@ -422,16 +422,28 @@ import { VuePDF, usePDF } from "@tato30/vue-pdf";
import type { PDFDocumentLoadingTask } from "pdfjs-dist/types/src/display/api";
import type { QForm } from "quasar";
import { useCounterMixin } from "@/stores/mixin";
+import { useQuasar } from "quasar";
import { useRoute } from "vue-router";
import http from "@/plugins/http";
import config from "@/app.config";
const mixin = useCounterMixin();
-const { date2Thai } = mixin;
+const { date2Thai, messageError, showLoader, hideLoader } = mixin;
const route = useRoute();
+const $q = useQuasar();
const orderId_params = route.params.orderid;
const dialog = ref(false);
+const splitterModel = ref(70);
+const tab = ref("main");
+
+const order = ref("");
+const years = ref(new Date().getDate());
+const date = ref(new Date());
+const fileOrder = ref(null);
+const fileTailer = ref(null);
+
+const statusOrder = ref();
// onUnmounted(() => {
// window.removeEventListener("resize", (e: any) => {
@@ -440,13 +452,12 @@ const dialog = ref(false);
// });
const orderId = ref("");
onMounted(async () => {
- console.log(orderId_params);
if (orderId_params !== undefined) {
- orderId.value == orderId_params.toString();
+ orderId.value = orderId_params.toString();
+ fetchAttachment(orderId.value);
+ fecthstatusOrder(orderId.value);
}
- fetchAttachment(orderId.value);
-
// window.addEventListener("resize", (e: any) => {
// myEventHandler(e);
// });
@@ -460,11 +471,34 @@ onMounted(async () => {
});
const fetchAttachment = async (orderId: string) => {
- console.log(123);
+ showLoader();
await http
- .get(config.API.attachmentOrder("08db94be-f7c6-43e2-83eb-3c5cef3a91c7"))
+ .get(config.API.attachmentOrder(orderId))
.then((res) => {
- console.log(res);
+ let response = res.data.result;
+ console.log(response);
+ order.value = response.orderNo;
+ years.value = Number(response.orderYear);
+ if (response.date !== undefined) {
+ date.value = response.date;
+ }
+ })
+ .catch((e) => {
+ messageError($q, e);
+ })
+ .finally(() => {
+ hideLoader();
+ });
+};
+const fecthstatusOrder = async (orderId: string) => {
+ await http
+ .get(config.API.orderReady(orderId))
+ .then((res) => {
+ let status = res.data.result;
+ statusOrder.value = status.result;
+ })
+ .catch((e) => {
+ console.log(e);
});
};
@@ -496,15 +530,6 @@ const props = defineProps({
const next = () => props.next();
const previous = () => props.previous();
-const splitterModel = ref(70);
-const tab = ref("main");
-const fileOrder = ref(null);
-const fileTailer = ref(null);
-
-const order = ref("");
-const years = ref(new Date().getFullYear());
-const date = ref(new Date());
-
const onchangePage = (val: any) => {
// console.log(val);
if (vuePDFRef !== null) {
@@ -513,14 +538,57 @@ const onchangePage = (val: any) => {
};
const save = () => {
+ // putOrderData();
if (myForm.value !== null) {
myForm.value!.validate().then((success: Boolean) => {
if (success) {
// yay, models are correct
+ $q.dialog({
+ title: "ยืนยันการบันทึกข้อมูล",
+ message: "ต้องการบันทึกข้อมูลนี้ใช่หรือไม่?",
+ cancel: {
+ flat: true,
+ color: "negative",
+ },
+ persistent: true,
+ })
+ .onOk(async () => {
+ await putOrderData();
+ await postfileOrder();
+ await postfileTailer();
+ })
+ .onCancel(() => {})
+ .onDismiss(() => {});
}
});
}
};
+const putOrderData = async () => {
+ const orderData = {
+ orderNo: order.value,
+ orderYear: years.value.toString(),
+ signDate: date.value,
+ };
+ await http
+ .put(config.API.attachmentOrder(orderId.value), orderData)
+ .then((res) => {
+ console.log(res);
+ })
+ .catch((e) => {
+ console.log(e);
+ });
+};
+
+const postfileOrder = async () => {
+ const formData = new FormData();
+ formData.append("File", fileOrder.value);
+ await http.post(config.API.attachmentOrderId(orderId.value), formData);
+};
+const postfileTailer = async () => {
+ const formData = new FormData();
+ formData.append("File", fileTailer.value);
+ await http.post(config.API.attachmentOrderId(orderId.value), formData);
+};
const validateForm = () => {
return (
@@ -529,14 +597,12 @@ const validateForm = () => {
order.value.trim() !== ""
);
};
-
const getClass = (val: boolean) => {
return {
"card-header-active q-px-lg q-py-md cursor-pointer": val,
"card-header q-px-lg q-py-md cursor-pointer": !val,
};
};
-
const setTab = (val: string) => {
tab.value = val;
page.value = 1;
diff --git a/src/modules/05_placement/components/Receive/receiveMain.vue b/src/modules/05_placement/components/Receive/receiveMain.vue
index 98c75f741..8a16fda59 100644
--- a/src/modules/05_placement/components/Receive/receiveMain.vue
+++ b/src/modules/05_placement/components/Receive/receiveMain.vue
@@ -102,6 +102,7 @@ const fecthlistRecevice = async () => {
});
};
+
// const nextPage = (id:string) => {
// router.push("/retirement/resign/"+id);
// };