Refactor Code การทดลองปฏิบัติหน้าที่ราชการ

This commit is contained in:
setthawutttty 2023-09-21 16:08:12 +07:00
parent 01f23e51f8
commit a8f24024bf
14 changed files with 898 additions and 1269 deletions

View file

@ -31,6 +31,7 @@ const date_start = ref<Date>();
const date_finish = ref<any>();
const other_desc = ref<object>({});
const other4_desc = ref<string>();
const monthOp: MonthOption[] = [];
const Other5 = ref<string>();
const other5_no1_desc = ref<object>({});
const group = ref<any | null>(null);
@ -48,22 +49,37 @@ const date1 = ref<any>();
const date2 = ref<any>();
const date3 = ref<any>();
const date4 = ref<any>();
const OPmain = ref<
Array<{
id: number;
title: string;
description: string;
level: number;
}>
>([]);
const OPgroup = ref<
Array<{
id: number;
title: string;
description: string;
level: number;
}>
>([]);
const OtherLaw = ref<string>("");
const skill = ref<any>();
const skill2 = ref<any>();
const skill3 = ref<any>();
const skill4 = ref<any>();
const knowledgeCount = ref<number>(3);
const knowledge = ref<any[]>([]);
const position = ref<string>("");
const monthSelect = ref<any>();
const caretaker1 = ref<any>("");
const caretaker2 = ref<any>("");
const productivityCount = ref<number>(1);
const output_desc = ref<string[]>(Array(productivityCount.value).fill(""));
const indicator_desc = ref<string[]>(Array(productivityCount.value).fill(""));
const activityCount = ref<number>(2);
const activity_desc = ref<string[]>(Array(activityCount.value).fill(""));
const goal_desc = ref<string[]>(Array(activityCount.value).fill(""));
const checkRule = ref<CheckboxItem[]>([]);
const OPmain = ref< Array<{ id: number; title: string; description: string; level: number; }> >([]);
const OPgroup = ref< Array<{ id: number; title: string; description: string; level: number; }> >([]);
const OPcomputer = ref< Array<{ id: number; title: string; level: number; level_description: string; }> >([]);
const OPenglish = ref< Array<{ id: number; title: string; level: number; level_description: string; }> >([]);
const OPinfomation = ref< Array<{ id: number; title: string; level: number; level_description: string; }> >([]);
const OPresourse = ref< Array<{ id: number; title: string; level: number; level_description: string; }> >([]);
const OPknowledge = ref< Array<{ id: number; title: number; description: string; level: string; }> >([]);
const OPcaretaker = ref< Array<{ id: string; prefix: string; firstName: string; lastName: string; name: string; citizenId: number; isDirector: boolean; }>[] >([]);
const OPcommander = ref< Array<{ id: string; prefix: string; firstName: string; lastName: string; name: string; citizenId: number; isDirector: boolean; }>[] >([]);
const OPchairman = ref<Array<{ id: string; prefix: string; firstName: string; lastName: string; name: string; citizenId: number; isDirector: boolean; }>[] >([]);
const dataEdit = async (id: string) => {
await myForm.value.validate().then((result: boolean) => {
@ -120,57 +136,13 @@ const isDatePicker2Readonly = computed(() => {
return date_start.value === undefined;
});
const position = ref<string>("");
const monthSelect = ref<any>();
const caretaker1 = ref<any>("");
const caretaker2 = ref<any>("");
const OPcaretaker = ref<
Array<{
id: string;
prefix: string;
firstName: string;
lastName: string;
name: string;
citizenId: number;
isDirector: boolean;
}>[]
>([]);
const OPcommander = ref<
Array<{
id: string;
prefix: string;
firstName: string;
lastName: string;
name: string;
citizenId: number;
isDirector: boolean;
}>[]
>([]);
const OPchairman = ref<
Array<{
id: string;
prefix: string;
firstName: string;
lastName: string;
name: string;
citizenId: number;
isDirector: boolean;
}>[]
>([]);
interface MonthOption {
value: number;
label: string;
}
const monthOp: MonthOption[] = [];
//-----------------(3.1)-----------//
const activityCount = ref<number>(2);
const activityDataArray = ref<any[]>([]);
const activity_desc = ref<string[]>(Array(activityCount.value).fill(""));
const goal_desc = ref<string[]>(Array(activityCount.value).fill(""));
const addActivity = () => {
activityCount.value++;
};
@ -184,23 +156,9 @@ const deleteactivity = (item: number) => {
const activityArray = computed(() => {
return Array(activityCount.value).fill("");
});
const resetActivity = () => {
activityCount.value = 2;
activity_desc.value = Array(activityCount.value).fill("");
goal_desc.value = Array(activityCount.value).fill("");
};
//-----------------(3.2)-----------//
const knowledgeCount = ref<number>(3);
const knowledge = ref<any[]>([]);
const OPknowledge = ref<
Array<{
id: number;
title: number;
description: string;
level: string;
}>
>([]);
const addKnowledge = () => {
if (knowledgeCount.value < 6) {
knowledgeCount.value++;
@ -217,9 +175,7 @@ const deleteknowledge = (item: number) => {
knowledgeCount.value--;
}
};
const productivityCount = ref<number>(1);
const output_desc = ref<string[]>(Array(productivityCount.value).fill(""));
const indicator_desc = ref<string[]>(Array(productivityCount.value).fill(""));
const deleteProductivitys = (item: number) => {
output_desc.value.splice(item, 1);
indicator_desc.value.splice(item, 1);
@ -241,8 +197,6 @@ interface CheckboxItem {
checked: number;
}
const checkRule = ref<CheckboxItem[]>([]);
const getUser = async () => {
await http.get(config.API.userPlacement(personalId)).then((res: any) => {
const data = res.data.result;
@ -455,8 +409,6 @@ const putDataEdit = (id: string) => {
date_finish.value instanceof Date
? dateToISO(date_finish.value)
: dateToISO(new Date(date_finish.value)),
// caretaker_1: caretaker1.value,
// caretaker_2: caretaker2.value,
assign_knowledges: know_ledge,
assign_jobs: assign_job.filter((item) => item !== null),
other_desc: OtherLaw.value,
@ -466,15 +418,9 @@ const putDataEdit = (id: string) => {
other4_desc: Other.value,
other5_no1_desc: Other5.value,
assign_outputs: Productivity_assign.filter((item) => item !== null),
// commander: commander.value,
assign_director: assign_director,
experimenter_dated:
date1.value instanceof Date ? dateToISO(date1.value) : new Date(),
// date_2: date2.value instanceof Date ? dateToISO(date2.value) : new Date(),
// date_3: date3.value instanceof Date ? dateToISO(date3.value) : new Date(),
// date_4: date4.value instanceof Date ? dateToISO(date4.value) : new Date(),
// caretaker_foot: caretakerFoot.value,
// caretaker_foot2: caretakerFoot2.value,
assign_law: checkRule.value
.filter((item) => item.checked === 1)
.map((item) => ({
@ -632,49 +578,11 @@ const DataSave = async (id: string) => {
hideLoader();
});
};
const OtherLaw = ref<string>("");
const skill = ref<any>();
const skill2 = ref<any>();
const skill3 = ref<any>();
const skill4 = ref<any>();
const OPcomputer = ref<
Array<{
id: number;
title: string;
level: number;
level_description: string;
}>
>([]);
const OPenglish = ref<
Array<{
id: number;
title: string;
level: number;
level_description: string;
}>
>([]);
const OPinfomation = ref<
Array<{
id: number;
title: string;
level: number;
level_description: string;
}>
>([]);
const OPresourse = ref<
Array<{
id: number;
title: string;
level: number;
level_description: string;
}>
>([]);
const getAssign = async () => {
await http.get(config.API.probationsGetAssign(assignId.value)).then((res) => {
status.value = false;
const data = res.data.data;
console.log(data);
fullname.value = data.profile.name;
position.value = data.profile.Position;
date_start.value = data.assign.date_start;
@ -764,6 +672,19 @@ const clickdownloadFile = async (type: string) => {
});
};
watch(
() => [monthSelect.value, date_start.value],
() => {
if (monthSelect.value !== undefined && date_start.value !== undefined) {
postDateTime();
}
}
);
watch(knowledge.value, () => {
knowledge.value.forEach((item) => {
OPknowledge.value = OPknowledge.value.filter((e) => e.id != item.id);
});
});
onMounted(async () => {
await getUser();
await getLaw(personalId);
@ -776,25 +697,6 @@ onMounted(async () => {
await getAssign();
}
});
watch(
() => [monthSelect.value, date_start.value],
() => {
if (monthSelect.value !== undefined && date_start.value !== undefined) {
postDateTime();
}
}
);
watch(knowledge.value, () => {
knowledge.value.forEach((item) => {
OPknowledge.value = OPknowledge.value.filter((e) => e.id != item.id);
});
});
const countCheckedItems = checkRule.value.filter(
(item) => item.checked === 1
).length;
console.log(countCheckedItems);
</script>
<template>
@ -1249,10 +1151,10 @@ console.log(countCheckedItems);
<q-card
flat
bordered
class="col-12 q-pa-md q-mt-sm"
class="col-12 q-pa-md q-mt-sm"
style="max-height: 500px; overflow-y: scroll"
>
<div class="example-row-column-width ">
<div class="example-row-column-width">
<div class="bg-grey-3 q-py-xs">
<div
class="row"
@ -2494,5 +2396,4 @@ console.log(countCheckedItems);
overflow: hidden;
text-overflow: ellipsis;
}
</style>