ปรับระบบทดลองงานใหม่
This commit is contained in:
parent
c8b3863b84
commit
85c755f359
11 changed files with 852 additions and 500 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -66,7 +66,6 @@ const evaluate_no = ref<number>();
|
|||
const evaluate_id = ref<string>("");
|
||||
const start_date = ref<Date>(new Date());
|
||||
const date_finish = ref<Date>(new Date());
|
||||
const commander = ref<any>([]);
|
||||
const status = ref<boolean>(true);
|
||||
const dataArr = ref<any>();
|
||||
|
||||
|
|
@ -94,23 +93,20 @@ const list2_2 = probationStore.behavior_no2;
|
|||
const list2_3 = probationStore.behavior_no3;
|
||||
|
||||
/** get ข้อมูลมอบหมายงาน */
|
||||
async function fecthAssign(){
|
||||
async function fecthAssign() {
|
||||
showLoader();
|
||||
await http
|
||||
.get(config.API.evaluateCreate(assignId.value))
|
||||
.then(async (res) => {
|
||||
if (props.action == "add") {
|
||||
person.value = res.data.data.person;
|
||||
commander.value = res.data.data.commander;
|
||||
option.value.push(commander.value);
|
||||
Autherise.value = commander.value.name;
|
||||
evaluate_no.value = res.data.data.evaluate_no;
|
||||
start_date.value = res.data.data.start_date;
|
||||
date_finish.value = res.data.data.end_date;
|
||||
}
|
||||
Autherise.value =
|
||||
probationStore.director.name +
|
||||
` (${probationStore.director.PositionLineName}, ${probationStore.director.PositionLevelName}, ${probationStore.director.Oc})`;
|
||||
// if (props.action == "add") {
|
||||
person.value = res.data.data.person;
|
||||
// option.value.push(res.data.data.commander);
|
||||
Autherise.value = res.data.data.director;
|
||||
evaluate_no.value = res.data.data.evaluate_no;
|
||||
start_date.value = res.data.data.start_date;
|
||||
date_finish.value = res.data.data.end_date;
|
||||
// }
|
||||
// Autherise.value = probationStore.director;
|
||||
})
|
||||
.catch((e) => {
|
||||
messageError($q, e);
|
||||
|
|
@ -121,10 +117,10 @@ async function fecthAssign(){
|
|||
}
|
||||
hideLoader();
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** get ข้อมูล แบบ ประเมิน*/
|
||||
async function fetchEvaluate(){
|
||||
async function fetchEvaluate() {
|
||||
try {
|
||||
let data = await dataArr.value;
|
||||
evaluate_id.value = data.id;
|
||||
|
|
@ -158,7 +154,7 @@ async function fetchEvaluate(){
|
|||
self_learning.value = data.self_learning.toString();
|
||||
training_seminar.value = data.training_seminar.toString();
|
||||
other_training.value = data.other_training.toString();
|
||||
dateAutherise.value = data.commander_dated
|
||||
dateAutherise.value = data.commander_dated;
|
||||
|
||||
if (
|
||||
data.achievement_other_desc !== "" &&
|
||||
|
|
@ -173,10 +169,10 @@ async function fetchEvaluate(){
|
|||
} catch (error) {
|
||||
hideLoader();
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/** ตรวจเช็คข้อมูล */
|
||||
function savaForm(){
|
||||
function savaForm() {
|
||||
let hasError = false;
|
||||
behavio_strengthRef.value.validate();
|
||||
if (
|
||||
|
|
@ -213,10 +209,10 @@ function savaForm(){
|
|||
if (hasError === true) {
|
||||
notifyError($q, "กรุณากรอกข้อมูลให้ครบ");
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/** อับเดต ข้อมูล*/
|
||||
function save(){
|
||||
function save() {
|
||||
const data = {
|
||||
evaluate_no: evaluate_no.value,
|
||||
start_date: start_date.value,
|
||||
|
|
@ -264,7 +260,7 @@ function save(){
|
|||
messageError($q, e);
|
||||
});
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
watch(props, async () => {
|
||||
if (props.tab && props.action == "edit") {
|
||||
|
|
@ -324,21 +320,19 @@ onMounted(async () => {
|
|||
<div class="row col-12 q-gutter-lg">
|
||||
<div class="col-12 row">
|
||||
<div class="col-12 text-top0 row items-center">
|
||||
|
||||
<div class="col-12 row text-top0">
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
ผู้ทดลองปฏิบัติหน้าที่ราชการ {{ probationStore.person.name }}
|
||||
</div>
|
||||
<div class="col-12 q-pl-md q-pb-md">
|
||||
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span>
|
||||
{{ probationStore.person.PositionLineName }}
|
||||
{{ probationStore.person.positionName }}
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ระดับ</span>
|
||||
{{ probationStore.person.PositionLevelName }}
|
||||
<span class="text-top0 q-pl-sm">ระดับตำแหน่ง</span>
|
||||
{{ probationStore.person.positionLevelName }}
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
|
|
@ -349,8 +343,9 @@ onMounted(async () => {
|
|||
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
การทดลองปฎิบัติหน้าที่ราชการ<span class="text-primary q-pr-sm">{{
|
||||
"ครั้งที่ " + assign.round_no
|
||||
}}</span> ตั้งแต่วันที่
|
||||
"ครั้งที่ " + assign.round_no
|
||||
}}</span>
|
||||
ตั้งแต่วันที่
|
||||
<span class="text-black q-px-sm">{{
|
||||
date2Thai(assign.date_start)
|
||||
}}</span>
|
||||
|
|
@ -994,7 +989,6 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<div class="row">
|
||||
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
|
|
@ -1011,7 +1005,6 @@ onMounted(async () => {
|
|||
val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ"
|
||||
/>
|
||||
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
|
|
@ -1022,7 +1015,6 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<div class="row">
|
||||
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
|
|
@ -1039,7 +1031,6 @@ onMounted(async () => {
|
|||
val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ"
|
||||
/>
|
||||
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
|
|
@ -1050,7 +1041,6 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<div class="row">
|
||||
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
:disable="!status"
|
||||
|
|
@ -1067,7 +1057,6 @@ onMounted(async () => {
|
|||
val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ"
|
||||
/>
|
||||
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
|
|
@ -1080,7 +1069,6 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<div class="row">
|
||||
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
|
|
@ -1097,7 +1085,6 @@ onMounted(async () => {
|
|||
val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ"
|
||||
/>
|
||||
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
|
|
@ -1111,17 +1098,17 @@ onMounted(async () => {
|
|||
<div class="col-xs-12 col-sm-11 row">
|
||||
<div class="col-12 text-top2 row items-center">ผู้บังคับบัญชา</div>
|
||||
<div class="col-12 row q-col-gutter-md">
|
||||
|
||||
<q-select
|
||||
class="col-xs-12 col-sm-8"
|
||||
dense
|
||||
v-model="Autherise"
|
||||
outlined
|
||||
:options="option"
|
||||
option-label="label"
|
||||
label="ผู้บังคับบัญชา"
|
||||
disable
|
||||
/>
|
||||
|
||||
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
<datepicker
|
||||
menu-class-name="modalfix"
|
||||
|
|
|
|||
|
|
@ -33,14 +33,13 @@ const assign = ref<any>([]);
|
|||
const evaluate_no = ref<string>("");
|
||||
const start_date = ref<Date>(new Date());
|
||||
const date_finish = ref<Date>(new Date());
|
||||
const commander = ref<any>([]);
|
||||
const round = ref<any>();
|
||||
const status = ref<boolean>(true);
|
||||
const Autherise = ref<any>(null);
|
||||
const dateAutherise = ref<any>(new Date());
|
||||
const option = ref<any>([]);
|
||||
|
||||
/** part 1 */
|
||||
/** part 1 */
|
||||
const skill_level = ref<number>(0);
|
||||
const competency_level = ref<number>(0);
|
||||
const learn_level = ref<number>(0);
|
||||
|
|
@ -49,7 +48,7 @@ const success_level = ref<number>(0);
|
|||
const etc = ref<any>(false);
|
||||
const achievement_other = ref<any>({ text: "", level: 0 });
|
||||
|
||||
/** part 2 */
|
||||
/** part 2 */
|
||||
const conduct_level = ref<any>([]);
|
||||
const moral_level = ref<any>([]);
|
||||
const discipline_level = ref<any>([]);
|
||||
|
|
@ -72,20 +71,17 @@ const list2_3 = probationStore.behavior_no3;
|
|||
|
||||
/**
|
||||
* get ประเมิน
|
||||
* @param id
|
||||
* @param id
|
||||
*/
|
||||
async function fecthAssign(id: string){
|
||||
async function fecthAssign(id: string) {
|
||||
showLoader();
|
||||
await http
|
||||
.get(config.API.evaluateCreate(id))
|
||||
.then(async (res: any) => {
|
||||
person.value = res.data.data.person;
|
||||
assign.value = res.data.data.assign;
|
||||
commander.value = res.data.data.commander;
|
||||
option.value.push(commander.value);
|
||||
Autherise.value =
|
||||
res.data.data.commander.name +
|
||||
` (${res.data.data.commander.PositionLineName}, ${res.data.data.commander.PositionLevelName}, ${res.data.data.commander.Oc})`;
|
||||
// option.value.push(res.data.data.commander);
|
||||
Autherise.value = res.data.data.director;
|
||||
evaluate_no.value = res.data.data.evaluate_no;
|
||||
start_date.value = res.data.data.start_date;
|
||||
date_finish.value = res.data.data.end_date;
|
||||
|
|
@ -97,9 +93,9 @@ async function fecthAssign(id: string){
|
|||
.finally(() => {
|
||||
hideLoader();
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** part 3 */
|
||||
/** part 3 */
|
||||
const alerts = Array(20)
|
||||
.fill(null)
|
||||
.map(() => ref<boolean>(false));
|
||||
|
|
@ -114,7 +110,6 @@ const lengthdiscipline_level = computed(() => {
|
|||
return discipline_level.value.filter((item: number) => item !== 0).length;
|
||||
});
|
||||
|
||||
|
||||
/** rules */
|
||||
const behavio_strengthRules = [
|
||||
(val: any) => (val && val.length > 0) || "กรุณากรอกข้อมูลจุดเด่น",
|
||||
|
|
@ -195,7 +190,7 @@ const savaForm = () => {
|
|||
};
|
||||
|
||||
/** ฟังชั่น post data*/
|
||||
function putformData(){
|
||||
function putformData() {
|
||||
const data = {
|
||||
evaluate_no: evaluate_no.value,
|
||||
start_date: start_date.value,
|
||||
|
|
@ -239,14 +234,14 @@ function putformData(){
|
|||
messageError($q, e);
|
||||
});
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** ฟังชั่น คลาส css*/
|
||||
function getBordered(i: boolean){
|
||||
function getBordered(i: boolean) {
|
||||
return {
|
||||
border_custom: i,
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
variablesToWatch.forEach((variable, index) => {
|
||||
watch(variable, (item: any) => {
|
||||
|
|
@ -321,15 +316,14 @@ onMounted(async () => {
|
|||
ผู้ทดลองปฏิบัติหน้าที่ราชการ {{ person.name }}
|
||||
</div>
|
||||
<div class="col-12 q-pl-md q-pb-md">
|
||||
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span>
|
||||
{{ person.PositionLineName }}
|
||||
{{ person.positionName }}
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ระดับ</span>
|
||||
{{ person.PositionLevelName }}
|
||||
<span class="text-top0 q-pl-sm">ระดับตำแหน่ง</span>
|
||||
{{ person.positionLevelName }}
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
|
|
@ -440,7 +434,7 @@ onMounted(async () => {
|
|||
</datepicker>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 q-pt-md">
|
||||
<q-separator size="3px" color="grey-2" />
|
||||
</div>
|
||||
|
|
@ -1249,6 +1243,7 @@ onMounted(async () => {
|
|||
v-model="Autherise"
|
||||
outlined
|
||||
:options="option"
|
||||
option-label="label"
|
||||
label="ผู้บังคับบัญชา"
|
||||
disable
|
||||
/>
|
||||
|
|
|
|||
|
|
@ -35,9 +35,9 @@ const evaluate_id = ref<string>("");
|
|||
const start_date = ref<Date>(new Date());
|
||||
const date_finish = ref<Date>(new Date());
|
||||
const status = ref<boolean>(true);
|
||||
const chairman = ref<any>([]);
|
||||
const commander = ref<any>([]);
|
||||
const mentors = ref<any>([{ name: "" }, { name: "" }]);
|
||||
// const chairman = ref<any>([]);
|
||||
// const commander = ref<any>([]);
|
||||
// const mentors = ref<any>([{ name: "" }, { name: "" }]);
|
||||
const dataArr = ref<any>();
|
||||
const props = defineProps({
|
||||
tab: String,
|
||||
|
|
@ -89,35 +89,35 @@ const develop_result_option = ref<any>([
|
|||
]);
|
||||
|
||||
/**set true */
|
||||
function edit(){
|
||||
function edit() {
|
||||
status.value = true;
|
||||
};
|
||||
}
|
||||
|
||||
/** set false */
|
||||
function cancel(){
|
||||
function cancel() {
|
||||
status.value = false;
|
||||
fecthAssign();
|
||||
};
|
||||
}
|
||||
|
||||
/** get ข้อมูล */
|
||||
async function fecthAssign(){
|
||||
async function fecthAssign() {
|
||||
showLoader();
|
||||
await http
|
||||
.get(config.API.evaluateChairman(assignId.value))
|
||||
.then(async (res: any) => {
|
||||
if (props.action == "add") {
|
||||
assign.value = res.data.data.assign;
|
||||
evaluate_no.value = res.data.data.evaluate_no;
|
||||
start_date.value = res.data.data.start_date;
|
||||
date_finish.value = res.data.data.end_date;
|
||||
chairman.value = res.data.data.chairman;
|
||||
commander.value = res.data.data.commander;
|
||||
mentors.value = res.data.data.mentors;
|
||||
}
|
||||
director_id.value = res.data.data.chairman.name;
|
||||
director_id2.value = res.data.data.commander.name;
|
||||
// if (props.action == "add") {
|
||||
assign.value = res.data.data.assign;
|
||||
evaluate_no.value = res.data.data.evaluate_no;
|
||||
start_date.value = res.data.data.start_date;
|
||||
date_finish.value = res.data.data.end_date;
|
||||
// chairman.value = res.data.data.chairman;
|
||||
// commander.value = res.data.data.commander;
|
||||
// mentors.value = res.data.data.mentors;
|
||||
// }
|
||||
director_id.value = res.data.data.chairman;
|
||||
director_id2.value = res.data.data.commander;
|
||||
if (res.data.data.mentors.length != 0) {
|
||||
director_id3.value = res.data.data.mentors[0].name;
|
||||
director_id3.value = res.data.data.mentors[0];
|
||||
}
|
||||
|
||||
// dateAutherise.value = res.data.data.chairman_dated;
|
||||
|
|
@ -133,10 +133,10 @@ async function fecthAssign(){
|
|||
}
|
||||
hideLoader();
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** เอาค่าจ่าก ดาต้า เก็บไว้ที่ตัวเเปร */
|
||||
async function fetchEvaluate(){
|
||||
async function fetchEvaluate() {
|
||||
try {
|
||||
let data = await dataArr.value;
|
||||
evaluate_id.value = data.id;
|
||||
|
|
@ -185,7 +185,7 @@ async function fecthAssign(){
|
|||
} else etc2.value = false;
|
||||
status.value = false;
|
||||
} catch (error) {}
|
||||
};
|
||||
}
|
||||
|
||||
// score
|
||||
const score1 = computed(() => {
|
||||
|
|
@ -295,7 +295,7 @@ const score5 = computed(() => {
|
|||
});
|
||||
|
||||
/** ฟังชั่นเช็คค่าไม่ว่าง */
|
||||
function savaForm(){
|
||||
function savaForm() {
|
||||
let hasError = false;
|
||||
if (
|
||||
learn_level.value === 0 ||
|
||||
|
|
@ -327,10 +327,10 @@ function savaForm(){
|
|||
if (hasError === true) {
|
||||
notifyError($q, "กรุณากรอกข้อมูลให้ครบ");
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/** ฟังชั่น อัพเดต ข้อมูล */
|
||||
function putformData(){
|
||||
function putformData() {
|
||||
const data = {
|
||||
evaluate_no: evaluate_no.value,
|
||||
start_date: start_date.value,
|
||||
|
|
@ -392,7 +392,7 @@ function putformData(){
|
|||
messageError($q, e);
|
||||
});
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** ตรวจสอบการเปลี่ยนเเปลงค่า props */
|
||||
watch(props, async () => {
|
||||
|
|
@ -461,11 +461,11 @@ onMounted(async () => {
|
|||
<!-- <div class="col-12"><span class="text-top0 q-pl-sm">ตำแหน่ง</span> {{ person.Position }}</div> -->
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span>
|
||||
{{ probationStore.person.PositionLineName }}
|
||||
{{ probationStore.person.positionName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ระดับ</span>
|
||||
{{ probationStore.person.PositionLevelName }}
|
||||
<span class="text-top0 q-pl-sm">ระดับตำแหน่ง</span>
|
||||
{{ probationStore.person.positionLevelName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">สังกัด</span>
|
||||
|
|
@ -941,7 +941,7 @@ onMounted(async () => {
|
|||
</q-list>
|
||||
</q-card>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="text-top0 col-xs-12 col-sm-11 q-pt-sm q-px-md q-my-none">
|
||||
<div class="row col-12 justify-between q-py-sm">
|
||||
<div class="text-black">คะแนนรวมพฤติกรรมการปฏิบัติราชการ</div>
|
||||
|
|
@ -1245,7 +1245,7 @@ onMounted(async () => {
|
|||
v-model="director_id"
|
||||
outlined
|
||||
label="ชื่อ-นามสกุล"
|
||||
option-label="name"
|
||||
option-label="label"
|
||||
disable
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
|
|
@ -1305,7 +1305,7 @@ onMounted(async () => {
|
|||
outlined
|
||||
label="ชื่อ-นามสกุล"
|
||||
disable
|
||||
option-label="name"
|
||||
option-label="label"
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
<datepicker
|
||||
|
|
@ -1366,7 +1366,7 @@ onMounted(async () => {
|
|||
outlined
|
||||
label="ชื่อ-นามสกุล"
|
||||
disable
|
||||
option-label="name"
|
||||
option-label="label"
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
<datepicker
|
||||
|
|
|
|||
|
|
@ -96,10 +96,10 @@ const fecthAssign = async (id: string) => {
|
|||
start_date.value = await res.data.data.start_date;
|
||||
date_finish.value = await res.data.data.end_date;
|
||||
|
||||
director_id.value = res.data.data.chairman.name;
|
||||
director_id2.value = res.data.data.commander.name;
|
||||
director_id.value = res.data.data.chairman;
|
||||
director_id2.value = res.data.data.commander;
|
||||
if (res.data.data.mentors.length != 0) {
|
||||
director_id3.value = res.data.data.mentors[0].name;
|
||||
director_id3.value = res.data.data.mentors[0];
|
||||
}
|
||||
})
|
||||
.catch((e) => {
|
||||
|
|
@ -235,7 +235,7 @@ const lengthdiscipline_level = computed(() => {
|
|||
const variablesToWatch = [learn_level, apply_level, success_level];
|
||||
|
||||
/** ฟังชั่นเช็คค่าไม่ว่าง */
|
||||
async function savaForm(){
|
||||
async function savaForm() {
|
||||
let hasError = false;
|
||||
if (
|
||||
learn_level.value === 0 ||
|
||||
|
|
@ -295,7 +295,7 @@ async function savaForm(){
|
|||
|
||||
dialogMessageNotify($q, "กรุณากรอกข้อมูลให้ครบ");
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/** ฟังชั่น อัพเดต ข้อมูล */
|
||||
const putformData = () => {
|
||||
|
|
@ -436,11 +436,11 @@ watch(lengthdiscipline_level, (newLength) => {
|
|||
<!-- <div class="col-12"><span class="text-top0 q-pl-sm">ตำแหน่ง</span> {{ person.Position }}</div> -->
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span>
|
||||
{{ person.PositionLineName }}
|
||||
{{ person.positionName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ระดับ</span>
|
||||
{{ person.PositionLevelName }}
|
||||
<span class="text-top0 q-pl-sm">ระดับตำแหน่ง</span>
|
||||
{{ person.positionLevelName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">สังกัด</span>
|
||||
|
|
@ -507,7 +507,6 @@ watch(lengthdiscipline_level, (newLength) => {
|
|||
</q-input>
|
||||
</template>
|
||||
</datepicker>
|
||||
|
||||
</div>
|
||||
<div class="col-6 q-px-sm">
|
||||
<datepicker
|
||||
|
|
@ -547,7 +546,6 @@ watch(lengthdiscipline_level, (newLength) => {
|
|||
</q-input>
|
||||
</template>
|
||||
</datepicker>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 q-pt-md">
|
||||
|
|
@ -1378,10 +1376,10 @@ watch(lengthdiscipline_level, (newLength) => {
|
|||
v-model="director_id"
|
||||
outlined
|
||||
label="ชื่อ-นามสกุล"
|
||||
option-label="name"
|
||||
option-label="label"
|
||||
disable
|
||||
/>
|
||||
|
||||
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
<datepicker
|
||||
menu-class-name="modalfix"
|
||||
|
|
@ -1441,7 +1439,7 @@ watch(lengthdiscipline_level, (newLength) => {
|
|||
outlined
|
||||
label="ชื่อ-นามสกุล"
|
||||
disable
|
||||
option-label="name"
|
||||
option-label="label"
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
<datepicker
|
||||
|
|
@ -1502,7 +1500,7 @@ watch(lengthdiscipline_level, (newLength) => {
|
|||
outlined
|
||||
label="ชื่อ-นามสกุล"
|
||||
disable
|
||||
option-label="name"
|
||||
option-label="label"
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
<datepicker
|
||||
|
|
|
|||
|
|
@ -41,7 +41,9 @@ const dataArr = ref<any>();
|
|||
const checkArray = ref<number>(0);
|
||||
const list1_1 = ref<any>([]);
|
||||
const option = ref<any>([]);
|
||||
const evaluate_expenct_level = ref<any>([{ id: "1", label: "ผลผลิตของงานที่คาดหวัง 1", level: 0 }]);
|
||||
const evaluate_expenct_level = ref<any>([
|
||||
{ id: "1", label: "ผลผลิตของงานที่คาดหวัง 1", level: 0 },
|
||||
]);
|
||||
const evaluate_ouptut = ref<any>([{ level: 0, text: "" }]);
|
||||
const knowledge_level = ref<number>(0);
|
||||
const skill_level = ref<number>(0);
|
||||
|
|
@ -77,34 +79,34 @@ const props = defineProps({
|
|||
fecthAssign: Function,
|
||||
});
|
||||
|
||||
function edit(){
|
||||
function edit() {
|
||||
status.value = true;
|
||||
};
|
||||
}
|
||||
|
||||
function cancel(){
|
||||
function cancel() {
|
||||
status.value = false;
|
||||
props.fecthAssign?.(assignId.value)
|
||||
};
|
||||
props.fecthAssign?.(assignId.value);
|
||||
}
|
||||
|
||||
/** get data */
|
||||
async function fecthFormdata(){
|
||||
async function fecthFormdata() {
|
||||
await http
|
||||
.get(config.API.formevaluateRecord(assignId.value))
|
||||
.then(async (res: any) => {
|
||||
await fecthAssignoutput(res.data.data);
|
||||
await fectFormfull();
|
||||
})
|
||||
.catch((e: any) => { })
|
||||
.catch((e: any) => {})
|
||||
.finally(() => {
|
||||
if (props.action == "edit") {
|
||||
fecthFormRound();
|
||||
}
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** get form */
|
||||
async function fectFormfull(){
|
||||
Autherise.value = probationStore.director.name + ` (${probationStore.director.PositionLineName}, ${probationStore.director.PositionLevelName}, ${probationStore.director.Oc})`;
|
||||
async function fectFormfull() {
|
||||
Autherise.value = probationStore.director;
|
||||
|
||||
list1_1.value = probationStore.assignOutput;
|
||||
evaluate_expenct_level.value = await probationStore.assignOutput.map(
|
||||
|
|
@ -118,10 +120,10 @@ async function fectFormfull(){
|
|||
}));
|
||||
checkArray.value = list1_1.value.length;
|
||||
fecthFormRound();
|
||||
};
|
||||
}
|
||||
|
||||
/** get form รอบ */
|
||||
async function fecthFormRound(){
|
||||
async function fecthFormRound() {
|
||||
try {
|
||||
let data = await dataArr.value;
|
||||
evaluate_id.value = data.id;
|
||||
|
|
@ -156,7 +158,7 @@ async function fecthFormRound(){
|
|||
self_learning.value = data.self_learning.toString();
|
||||
training_seminar.value = data.training_seminar.toString();
|
||||
other_training.value = data.other_training.toString();
|
||||
dateAutherise.value = data.assessor_dated
|
||||
dateAutherise.value = data.assessor_dated;
|
||||
if (
|
||||
data.achievement_other_desc !== "" &&
|
||||
data.achievement_other_level !== null
|
||||
|
|
@ -178,8 +180,7 @@ async function fecthFormRound(){
|
|||
} catch (error) {
|
||||
hideLoader();
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
const list1_2 = [
|
||||
{ id: "", label: "" },
|
||||
|
|
@ -212,7 +213,7 @@ const behavio_strengthRules = [
|
|||
];
|
||||
|
||||
/** เช็ค data */
|
||||
function savaForm(){
|
||||
function savaForm() {
|
||||
achievement_strengthRef.value.validate();
|
||||
achievement_inproveRef.value.validate();
|
||||
behavio_strengthRef.value.validate();
|
||||
|
|
@ -253,10 +254,10 @@ function savaForm(){
|
|||
if (hasError === true) {
|
||||
notifyError($q, "กรุณากรอกข้อมูลให้ครบ");
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/** update data */
|
||||
function putformData(){
|
||||
function putformData() {
|
||||
const data = {
|
||||
evaluate_no: evaluate_no.value,
|
||||
start_date: start_date.value,
|
||||
|
|
@ -296,12 +297,12 @@ function putformData(){
|
|||
dialogConfirm($q, () =>
|
||||
props.action == "edit" ? editData(data) : saveformdata(data)
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
/** save data
|
||||
/** save data
|
||||
* @param data ข้อมูลที่ส่งไป
|
||||
*/
|
||||
async function saveformdata(data: any){
|
||||
async function saveformdata(data: any) {
|
||||
await http
|
||||
.post(config.API.createformevaluate(assignId.value), data)
|
||||
.then((res: any) => {
|
||||
|
|
@ -311,13 +312,13 @@ async function saveformdata(data: any){
|
|||
.catch((e: any) => {
|
||||
messageError($q, e);
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* แก้ไขข้อมูล
|
||||
* @param data ข้อมูลที่อัปเดต
|
||||
*/
|
||||
async function editData(data: any){
|
||||
async function editData(data: any) {
|
||||
await http
|
||||
.put(config.API.editFormEvaluate(assignId.value, evaluate_id.value), data)
|
||||
.then((res: any) => {
|
||||
|
|
@ -327,7 +328,7 @@ async function editData(data: any){
|
|||
.catch((e: any) => {
|
||||
messageError($q, e);
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** เช็คค่า props */
|
||||
watch(props, async () => {
|
||||
|
|
@ -352,7 +353,14 @@ onMounted(async () => {
|
|||
<div class="toptitle text-dark col-12 row items-center q-gutter-md">
|
||||
<div>แบบบันทึกผล (ผู้ดูเเล)</div>
|
||||
<div v-if="status == false">
|
||||
<q-btn dense flat round color="primary" @click="edit()" icon="mdi-pencil-outline">
|
||||
<q-btn
|
||||
dense
|
||||
flat
|
||||
round
|
||||
color="primary"
|
||||
@click="edit()"
|
||||
icon="mdi-pencil-outline"
|
||||
>
|
||||
<q-tooltip>แก้ไขข้อมูล</q-tooltip>
|
||||
</q-btn>
|
||||
</div>
|
||||
|
|
@ -360,7 +368,15 @@ onMounted(async () => {
|
|||
<q-btn dense flat round color="red" @click="cancel()" icon="mdi-undo">
|
||||
<q-tooltip>ยกเลิก</q-tooltip>
|
||||
</q-btn>
|
||||
<q-btn dense flat round class="q-ml-md" color="public" @click="savaForm()" icon="mdi-content-save-outline">
|
||||
<q-btn
|
||||
dense
|
||||
flat
|
||||
round
|
||||
class="q-ml-md"
|
||||
color="public"
|
||||
@click="savaForm()"
|
||||
icon="mdi-content-save-outline"
|
||||
>
|
||||
<q-tooltip>บันทึกข้อมูล</q-tooltip>
|
||||
</q-btn>
|
||||
</div>
|
||||
|
|
@ -374,18 +390,26 @@ onMounted(async () => {
|
|||
|
||||
<div class="col-12 q-pl-md q-pb-md">
|
||||
<!-- <div class="col-12"><span class="text-top0 q-pl-sm">ตำแหน่ง</span> {{ person.Position }}</div> -->
|
||||
<div class="col-12"><span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span> {{
|
||||
probationStore.person.PositionLineName }}</div>
|
||||
<div class="col-12"><span class="text-top0 q-pl-sm">ระดับ</span> {{ probationStore.person.PositionLevelName }}
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span>
|
||||
{{ probationStore.person.positionName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ระดับตำแหน่ง</span>
|
||||
{{ probationStore.person.positionLevelName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">สังกัด</span>
|
||||
{{ probationStore.person.Oc }}
|
||||
</div>
|
||||
<div class="col-12"><span class="text-top0 q-pl-sm">สังกัด</span> {{ probationStore.person.Oc }}</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 text-top0 row items-center">
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
การทดลองปฎิบัติหน้าที่ราชการ<span class="text-primary q-pr-sm">{{
|
||||
"ครั้งที่ " + assign.round_no
|
||||
}}</span> ตั้งแต่วันที่
|
||||
"ครั้งที่ " + assign.round_no
|
||||
}}</span>
|
||||
ตั้งแต่วันที่
|
||||
<span class="text-black q-px-sm">
|
||||
{{ date2Thai(assign.date_start) }}
|
||||
</span>
|
||||
|
|
@ -430,15 +454,27 @@ onMounted(async () => {
|
|||
ผลผลิตของงานที่คาดหวัง
|
||||
</div>
|
||||
|
||||
<q-card flat bordered class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1">
|
||||
<q-card
|
||||
flat
|
||||
bordered
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1"
|
||||
>
|
||||
<q-list dense v-for="(list, i) in list1_1" :key="i">
|
||||
<q-item dense tag="label" v-ripple>
|
||||
<q-item-section>
|
||||
<q-item-label>{{ list.output_desc }}</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="evaluate_expenct_level[i].level" :val="list.id" max="5" size="sm" color="grey"
|
||||
:color-selected="ratingColors" label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="evaluate_expenct_level[i].level"
|
||||
:val="list.id"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -466,16 +502,37 @@ onMounted(async () => {
|
|||
<div class="col-xs-12 col-sm-11 col-md-10 offset-md-1 text-top2">
|
||||
ผลผลิตของงานที่เกิดขึ้นจริง
|
||||
</div>
|
||||
<q-card flat bordered class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1">
|
||||
<q-card
|
||||
flat
|
||||
bordered
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1"
|
||||
>
|
||||
<q-list dense v-for="(list, i) in list1_2" :key="i">
|
||||
<q-item dense tag="label" v-ripple v-if="i < checkArray">
|
||||
<q-item-section>
|
||||
<q-input outlined dense v-model="evaluate_ouptut[i].text" lazy-rules autogrow hide-bottom-space :row="1"
|
||||
:rules="evaluate_ouptutRules" :disable="!status" />
|
||||
<q-input
|
||||
outlined
|
||||
dense
|
||||
v-model="evaluate_ouptut[i].text"
|
||||
lazy-rules
|
||||
autogrow
|
||||
hide-bottom-space
|
||||
:row="1"
|
||||
:rules="evaluate_ouptutRules"
|
||||
:disable="!status"
|
||||
/>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="evaluate_ouptut[i].level" :val="list.id" max="5" size="sm" color="grey"
|
||||
:color-selected="ratingColors" label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="evaluate_ouptut[i].level"
|
||||
:val="list.id"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -505,11 +562,19 @@ onMounted(async () => {
|
|||
<q-item-section>
|
||||
<q-item-label>
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
1.2. ความรู้ความสามารถ</q-item-label>
|
||||
1.2. ความรู้ความสามารถ</q-item-label
|
||||
>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="knowledge_level" max="5" size="sm" color="grey" :color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="knowledge_level"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -537,11 +602,19 @@ onMounted(async () => {
|
|||
<q-item-section>
|
||||
<q-item-label>
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
1.3. ทักษะ</q-item-label>
|
||||
1.3. ทักษะ</q-item-label
|
||||
>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="skill_level" max="5" size="sm" color="grey" :color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="skill_level"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -569,11 +642,19 @@ onMounted(async () => {
|
|||
<q-item-section>
|
||||
<q-item-label>
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
1.4. สมมรถนะ</q-item-label>
|
||||
1.4. สมมรถนะ</q-item-label
|
||||
>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="competency_level" max="5" size="sm" color="grey" :color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="competency_level"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -601,11 +682,19 @@ onMounted(async () => {
|
|||
<q-item-section>
|
||||
<q-item-label>
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
1.5. ความสามารถในการเรียนรู้งาน</q-item-label>
|
||||
1.5. ความสามารถในการเรียนรู้งาน</q-item-label
|
||||
>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="learn_level" max="5" size="sm" color="grey" :color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="learn_level"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -634,11 +723,19 @@ onMounted(async () => {
|
|||
<q-item-label>
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
1.6.
|
||||
ความสามารถในการปรับใช้ความรู้กับงานในหน้าที่</q-item-label>
|
||||
ความสามารถในการปรับใช้ความรู้กับงานในหน้าที่</q-item-label
|
||||
>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="apply_level" max="5" size="sm" color="grey" :color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="apply_level"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -666,29 +763,55 @@ onMounted(async () => {
|
|||
<q-item-label>
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
1.7 อื่นๆ
|
||||
<q-checkbox class="q-ml-sm" dense v-model="etc" @click="
|
||||
(achievement_other.text = ''),
|
||||
(achievement_other.level = 0)
|
||||
" :disable="!status" /></q-item-label>
|
||||
<q-checkbox
|
||||
class="q-ml-sm"
|
||||
dense
|
||||
v-model="etc"
|
||||
@click="
|
||||
(achievement_other.text = ''),
|
||||
(achievement_other.level = 0)
|
||||
"
|
||||
:disable="!status"
|
||||
/></q-item-label>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
</q-card>
|
||||
|
||||
<q-card v-if="etc" class="text-top0 col-xs-12 col-sm-11 q-pa-xs q-pl-lg">
|
||||
<q-card
|
||||
v-if="etc"
|
||||
class="text-top0 col-xs-12 col-sm-11 q-pa-xs q-pl-lg"
|
||||
>
|
||||
<q-list dense>
|
||||
<q-item dense tag="label" v-ripple>
|
||||
<q-item-section class="q-ml-md">
|
||||
<q-item-label>
|
||||
<q-input v-model="achievement_other.text" label="กรอกอื่นๆ" dense lazy-rules autogrow hide-bottom-space
|
||||
outlined class="bg-white" :rules="[
|
||||
<q-input
|
||||
v-model="achievement_other.text"
|
||||
label="กรอกอื่นๆ"
|
||||
dense
|
||||
lazy-rules
|
||||
autogrow
|
||||
hide-bottom-space
|
||||
outlined
|
||||
class="bg-white"
|
||||
:rules="[
|
||||
(val) => (val && val.length > 0) || 'กรุณากรอกข้อความ',
|
||||
]" :disable="!status" />
|
||||
]"
|
||||
:disable="!status"
|
||||
/>
|
||||
</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="achievement_other.level" max="5" size="sm" color="grey" :color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="achievement_other.level"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -717,18 +840,39 @@ onMounted(async () => {
|
|||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
จุดเด่น (ไม่เกิน 5 บรรทัด)
|
||||
</div>
|
||||
<q-input outlined dense v-model="achievement_strength_desc" class="col-xs-12 col-sm-11 col-md-10 offset-md-1"
|
||||
lazy-rules type="textarea" label="กรอกจุดเด่น" hide-bottom-space :row="5" :rules="achievement_strengthRules"
|
||||
ref="achievement_strengthRef" :disable="!status" />
|
||||
<q-input
|
||||
outlined
|
||||
dense
|
||||
v-model="achievement_strength_desc"
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1"
|
||||
lazy-rules
|
||||
type="textarea"
|
||||
label="กรอกจุดเด่น"
|
||||
hide-bottom-space
|
||||
:row="5"
|
||||
:rules="achievement_strengthRules"
|
||||
ref="achievement_strengthRef"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
<div class="col-12 row">
|
||||
<div class="col-12 text-top0 row items-center q-pl-lg">
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
สิ่งที่ควรปรับปรุง (ไม่เกิน 5 บรรทัด)
|
||||
</div>
|
||||
<q-input outlined dense v-model="achievement_improve_desc" class="col-xs-12 col-sm-11 col-md-10 offset-md-1"
|
||||
lazy-rules type="textarea" hide-bottom-space label="กรอกสิ่งที่ควรปรับปรุง" :row="5"
|
||||
ref="achievement_inproveRef" :disable="!status" />
|
||||
<q-input
|
||||
outlined
|
||||
dense
|
||||
v-model="achievement_improve_desc"
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1"
|
||||
lazy-rules
|
||||
type="textarea"
|
||||
hide-bottom-space
|
||||
label="กรอกสิ่งที่ควรปรับปรุง"
|
||||
:row="5"
|
||||
ref="achievement_inproveRef"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row col-12 q-gutter-lg no-margin">
|
||||
|
|
@ -742,15 +886,27 @@ onMounted(async () => {
|
|||
2.1 ความประพฤติ
|
||||
</div>
|
||||
|
||||
<q-card flat bordered class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1">
|
||||
<q-card
|
||||
flat
|
||||
bordered
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1"
|
||||
>
|
||||
<q-list dense v-for="(list, i) in list2_1" :key="i">
|
||||
<q-item dense tag="label" v-ripple>
|
||||
<q-item-section>
|
||||
<q-item-label>{{ list.label }}</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="conduct_level[i]" :val="list.id" max="5" size="sm" color="grey"
|
||||
:color-selected="ratingColors" label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="conduct_level[i]"
|
||||
:val="list.id"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -779,15 +935,27 @@ onMounted(async () => {
|
|||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
2.2 ความมีคุณธรรมจริยธรรม
|
||||
</div>
|
||||
<q-card flat bordered class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1">
|
||||
<q-card
|
||||
flat
|
||||
bordered
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1"
|
||||
>
|
||||
<q-list dense v-for="(list, i) in list2_2" :key="i">
|
||||
<q-item dense tag="label" v-ripple>
|
||||
<q-item-section>
|
||||
<q-item-label>{{ list.label }}</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="moral_level[i]" :val="list.id" max="5" size="sm" color="grey"
|
||||
:color-selected="ratingColors" label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="moral_level[i]"
|
||||
:val="list.id"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -816,15 +984,27 @@ onMounted(async () => {
|
|||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
2.3 การรักษาวินัย
|
||||
</div>
|
||||
<q-card flat bordered class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1">
|
||||
<q-card
|
||||
flat
|
||||
bordered
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1"
|
||||
>
|
||||
<q-list dense v-for="(list, i) in list2_3" :key="i">
|
||||
<q-item dense tag="label" v-ripple>
|
||||
<q-item-section>
|
||||
<q-item-label>{{ list.label }}</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="discipline_level[i]" :val="list.id" max="5" size="sm" color="grey"
|
||||
:color-selected="ratingColors" label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="discipline_level[i]"
|
||||
:val="list.id"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -852,23 +1032,50 @@ onMounted(async () => {
|
|||
<div class="col-12 text-top0 row items-center q-pl-lg">
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
2.4 อื่นๆ
|
||||
<q-checkbox class="q-ml-sm" dense v-model="etc2"
|
||||
@click="(behavio_orther.text = ''), (behavio_orther.level = 0)" :disable="!status" />
|
||||
<q-checkbox
|
||||
class="q-ml-sm"
|
||||
dense
|
||||
v-model="etc2"
|
||||
@click="(behavio_orther.text = ''), (behavio_orther.level = 0)"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
<q-card v-if="etc2" flat bordered class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1">
|
||||
<q-card
|
||||
v-if="etc2"
|
||||
flat
|
||||
bordered
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1 q-pa-sm bg-grey-1"
|
||||
>
|
||||
<q-list dense>
|
||||
<q-item dense tag="label" v-ripple>
|
||||
<q-item-section>
|
||||
<q-item-label>
|
||||
<q-input v-model="behavio_orther.text" label="กรอกอื่นๆ" dense lazy-rules autogrow hide-bottom-space
|
||||
outlined class="bg-white" :rules="[
|
||||
<q-input
|
||||
v-model="behavio_orther.text"
|
||||
label="กรอกอื่นๆ"
|
||||
dense
|
||||
lazy-rules
|
||||
autogrow
|
||||
hide-bottom-space
|
||||
outlined
|
||||
class="bg-white"
|
||||
:rules="[
|
||||
(val) => (val && val.length > 0) || 'กรุณากรอกข้อความ',
|
||||
]" :disable="!status" />
|
||||
]"
|
||||
:disable="!status"
|
||||
/>
|
||||
</q-item-label>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<q-rating v-model="behavio_orther.level" max="5" size="sm" color="grey" :color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม" :disable="!status">
|
||||
<q-rating
|
||||
v-model="behavio_orther.level"
|
||||
max="5"
|
||||
size="sm"
|
||||
color="grey"
|
||||
:color-selected="ratingColors"
|
||||
label="ระดับการประเมินพฤติกรรม"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:tip-1>
|
||||
<q-tooltip>ต่ำกว่าความคาดหวังมาก (1)</q-tooltip>
|
||||
</template>
|
||||
|
|
@ -897,29 +1104,54 @@ onMounted(async () => {
|
|||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
จุดเด่น (ไม่เกิน 5 บรรทัด)
|
||||
</div>
|
||||
<q-input outlined dense v-model="behavior_strength_desc" class="col-xs-12 col-sm-11 col-md-10 offset-md-1"
|
||||
lazy-rules type="textarea" label="กรอกจุดเด่น" hide-bottom-space :row="5" :rules="behavio_strengthRules"
|
||||
ref="behavio_strengthRef" :disable="!status" />
|
||||
<q-input
|
||||
outlined
|
||||
dense
|
||||
v-model="behavior_strength_desc"
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1"
|
||||
lazy-rules
|
||||
type="textarea"
|
||||
label="กรอกจุดเด่น"
|
||||
hide-bottom-space
|
||||
:row="5"
|
||||
:rules="behavio_strengthRules"
|
||||
ref="behavio_strengthRef"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
<div class="col-12 row">
|
||||
<div class="col-12 text-top0 row items-center q-pl-lg">
|
||||
<q-icon name="mdi-label" color="grey-4" class="q-pr-sm" />
|
||||
สิ่งที่ควรปรับปรุง (ไม่เกิน 5 บรรทัด)
|
||||
</div>
|
||||
<q-input outlined dense v-model="behavior_improve_desc" class="col-xs-12 col-sm-11 col-md-10 offset-md-1"
|
||||
lazy-rules type="textarea" hide-bottom-space label="กรอกสิ่งที่ควรปรับปรุง" :row="5"
|
||||
ref="behavio_inproveRef" :disable="!status" />
|
||||
<q-input
|
||||
outlined
|
||||
dense
|
||||
v-model="behavior_improve_desc"
|
||||
class="col-xs-12 col-sm-11 col-md-10 offset-md-1"
|
||||
lazy-rules
|
||||
type="textarea"
|
||||
hide-bottom-space
|
||||
label="กรอกสิ่งที่ควรปรับปรุง"
|
||||
:row="5"
|
||||
ref="behavio_inproveRef"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row col-12 q-gutter-lg no-margin">
|
||||
<div class="col-12 row justify-center">
|
||||
<div class="col-12 text-top0 items-center">
|
||||
<q-avatar class="bg-grey-2 q-mr-sm" size="28px">3</q-avatar>
|
||||
การพัฒนาผู้ทดลองปฏิบัติบัติหน้าที่ราชการ
|
||||
</div>
|
||||
<q-card flat bordered class="col-xs-12 col-sm-11 col-md-11 q-pa-sm bg-grey-1">
|
||||
<q-card
|
||||
flat
|
||||
bordered
|
||||
class="col-xs-12 col-sm-11 col-md-11 q-pa-sm bg-grey-1"
|
||||
>
|
||||
<q-list dense>
|
||||
<q-item dense tag="label" v-ripple>
|
||||
<q-item-section>
|
||||
|
|
@ -927,10 +1159,22 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<div class="row">
|
||||
<q-radio checked-icon="task_alt" unchecked-icon="panorama_fish_eye" v-model="orientation" val="1"
|
||||
label="ดำเนินการเเล้ว" :disable="!status" />
|
||||
<q-radio checked-icon="task_alt" unchecked-icon="panorama_fish_eye" v-model="orientation" val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ" :disable="!status" />
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
v-model="orientation"
|
||||
val="1"
|
||||
label="ดำเนินการเเล้ว"
|
||||
:disable="!status"
|
||||
/>
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
v-model="orientation"
|
||||
val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
|
|
@ -941,10 +1185,22 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<div class="row">
|
||||
<q-radio checked-icon="task_alt" unchecked-icon="panorama_fish_eye" v-model="self_learning" val="1"
|
||||
label="ดำเนินการเเล้ว" :disable="!status" />
|
||||
<q-radio checked-icon="task_alt" unchecked-icon="panorama_fish_eye" v-model="self_learning" val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ" :disable="!status" />
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
v-model="self_learning"
|
||||
val="1"
|
||||
label="ดำเนินการเเล้ว"
|
||||
:disable="!status"
|
||||
/>
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
v-model="self_learning"
|
||||
val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
|
|
@ -955,24 +1211,50 @@ onMounted(async () => {
|
|||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<div class="row">
|
||||
<q-radio checked-icon="task_alt" unchecked-icon="panorama_fish_eye" v-model="training_seminar" val="1"
|
||||
label="ดำเนินการเเล้ว" :disable="!status" />
|
||||
<q-radio checked-icon="task_alt" unchecked-icon="panorama_fish_eye" v-model="training_seminar" val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ" :disable="!status" />
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
v-model="training_seminar"
|
||||
val="1"
|
||||
label="ดำเนินการเเล้ว"
|
||||
:disable="!status"
|
||||
/>
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
v-model="training_seminar"
|
||||
val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
<q-separator class="q-my-xs" />
|
||||
<q-item dense tag="label" v-ripple>
|
||||
<q-item-section>
|
||||
<q-item-label>4. การอบรมอื่น ๆ ตามที่หน่วยงานกำหนด (ถ้ามี)</q-item-label>
|
||||
<q-item-label
|
||||
>4. การอบรมอื่น ๆ ตามที่หน่วยงานกำหนด (ถ้ามี)</q-item-label
|
||||
>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
<div class="row">
|
||||
<q-radio checked-icon="task_alt" unchecked-icon="panorama_fish_eye" v-model="other_training" val="1"
|
||||
label="ดำเนินการเเล้ว" :disable="!status" />
|
||||
<q-radio checked-icon="task_alt" unchecked-icon="panorama_fish_eye" v-model="other_training" val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ" :disable="!status" />
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
v-model="other_training"
|
||||
val="1"
|
||||
label="ดำเนินการเเล้ว"
|
||||
:disable="!status"
|
||||
/>
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
unchecked-icon="panorama_fish_eye"
|
||||
v-model="other_training"
|
||||
val="0"
|
||||
label=" ยังไม่ได้ดำเนินการ"
|
||||
:disable="!status"
|
||||
/>
|
||||
</div>
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
|
|
@ -987,11 +1269,27 @@ onMounted(async () => {
|
|||
ผู้บังคับบัญชา/ผู้มอบหมายงาน
|
||||
</div>
|
||||
<div class="col-12 row q-col-gutter-md">
|
||||
<q-select class="col-xs-12 col-sm-8" dense v-model="Autherise" outlined :options="option"
|
||||
label="ผู้บังคับบัญชา" option-label="name" disable />
|
||||
<q-select
|
||||
class="col-xs-12 col-sm-8"
|
||||
dense
|
||||
v-model="Autherise"
|
||||
outlined
|
||||
:options="option"
|
||||
label="ผู้บังคับบัญชา"
|
||||
option-label="label"
|
||||
disable
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
<datepicker menu-class-name="modalfix" v-model="dateAutherise" :locale="'th'" autoApply borderless
|
||||
:enableTimePicker="false" week-start="0" :readonly="!status">
|
||||
<datepicker
|
||||
menu-class-name="modalfix"
|
||||
v-model="dateAutherise"
|
||||
:locale="'th'"
|
||||
autoApply
|
||||
borderless
|
||||
:enableTimePicker="false"
|
||||
week-start="0"
|
||||
:readonly="!status"
|
||||
>
|
||||
<template #year="{ year }">
|
||||
{{ year + 543 }}
|
||||
</template>
|
||||
|
|
@ -999,11 +1297,23 @@ onMounted(async () => {
|
|||
{{ parseInt(value + 543) }}
|
||||
</template>
|
||||
<template #trigger>
|
||||
<q-input outlined dense class="full-width datepicker col-3" :model-value="dateAutherise != null ? date2Thai(dateAutherise) : null
|
||||
" :label="`${'ลงวันที่'}`" :rules="[(val) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
|
||||
:disable="!status">
|
||||
<q-input
|
||||
outlined
|
||||
dense
|
||||
class="full-width datepicker col-3"
|
||||
:model-value="
|
||||
dateAutherise != null ? date2Thai(dateAutherise) : null
|
||||
"
|
||||
:label="`${'ลงวันที่'}`"
|
||||
:rules="[(val) => !!val || `${'กรุณาเลือกลงวันที่'}`]"
|
||||
:disable="!status"
|
||||
>
|
||||
<template v-slot:prepend>
|
||||
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)">
|
||||
<q-icon
|
||||
name="event"
|
||||
class="cursor-pointer"
|
||||
style="color: var(--q-primary)"
|
||||
>
|
||||
</q-icon>
|
||||
</template>
|
||||
</q-input>
|
||||
|
|
@ -1013,7 +1323,10 @@ onMounted(async () => {
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<q-toolbar class="text-primary" v-if="routeName == 'probationFormAddresult'">
|
||||
<q-toolbar
|
||||
class="text-primary"
|
||||
v-if="routeName == 'probationFormAddresult'"
|
||||
>
|
||||
<q-space />
|
||||
<q-btn label="บันทึก" color="secondary" @click="savaForm" />
|
||||
</q-toolbar>
|
||||
|
|
|
|||
|
|
@ -139,9 +139,7 @@ async function fecthFormdata(id: string) {
|
|||
person.value = res.data.data.person;
|
||||
assign.value = res.data.data.assign;
|
||||
option.value.push(res.data.data.director);
|
||||
Autherise.value =
|
||||
res.data.data.director.name +
|
||||
` (${res.data.data.director.PositionLineName}, ${res.data.data.director.PositionLevelName}, ${res.data.data.director.Oc})`;
|
||||
Autherise.value = res.data.data.director;
|
||||
|
||||
list1_1.value = res.data.data.assign_output;
|
||||
res.data.data.assign_output.forEach((e: any) => {
|
||||
|
|
@ -388,11 +386,11 @@ onMounted(async () => {
|
|||
<div class="col-12 q-pl-md q-pb-md">
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span>
|
||||
{{ person.PositionLineName }}
|
||||
{{ person.positionName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ระดับ</span>
|
||||
{{ person.PositionLevelName }}
|
||||
<span class="text-top0 q-pl-sm">ระดับตำแหน่ง</span>
|
||||
{{ person.positionLevelName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">สังกัด</span> {{ person.Oc }}
|
||||
|
|
@ -1370,7 +1368,6 @@ onMounted(async () => {
|
|||
/>
|
||||
</div>
|
||||
</q-item-section>
|
||||
|
||||
</q-item>
|
||||
|
||||
<q-separator class="q-my-xs" />
|
||||
|
|
@ -1413,7 +1410,6 @@ onMounted(async () => {
|
|||
>
|
||||
</q-item-section>
|
||||
<q-item-section side>
|
||||
|
||||
<div class="row">
|
||||
<q-radio
|
||||
checked-icon="task_alt"
|
||||
|
|
@ -1430,7 +1426,6 @@ onMounted(async () => {
|
|||
label=" ยังไม่ได้ดำเนินการ"
|
||||
/>
|
||||
</div>
|
||||
|
||||
</q-item-section>
|
||||
</q-item>
|
||||
</q-list>
|
||||
|
|
@ -1451,7 +1446,7 @@ onMounted(async () => {
|
|||
outlined
|
||||
:options="option"
|
||||
label="ผู้บังคับบัญชา"
|
||||
option-label="name"
|
||||
option-label="label"
|
||||
disable
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
|
|
@ -1498,7 +1493,7 @@ onMounted(async () => {
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12">
|
||||
<q-separator size="3px" color="grey-2" />
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -137,7 +137,7 @@ const variablesToWatch = [
|
|||
const ArrayCountbotton = [orientation, self_learning, training_seminar];
|
||||
|
||||
/** เช็คข้อมูลก่อน save */
|
||||
function savaForm(){
|
||||
function savaForm() {
|
||||
achievement_strengthRef.value.validate();
|
||||
behavio_strengthRef.value.validate();
|
||||
|
||||
|
|
@ -209,7 +209,7 @@ function savaForm(){
|
|||
} else {
|
||||
putformData();
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* get data เก็ฐในตัวแปร
|
||||
|
|
@ -227,9 +227,7 @@ async function fecthFormdata(id: string) {
|
|||
person.value = res.data.data.person;
|
||||
assign.value = res.data.data.assign;
|
||||
option.value.push(res.data.data.director);
|
||||
Autherise.value =
|
||||
res.data.data.director.name +
|
||||
` (${res.data.data.director.PositionLineName}, ${res.data.data.director.PositionLevelName}, ${res.data.data.director.Oc})`;
|
||||
Autherise.value = res.data.data.director;
|
||||
|
||||
list1_1.value = res.data.data.assign_output;
|
||||
res.data.data.assign_output.forEach((e: any) => {
|
||||
|
|
@ -399,11 +397,11 @@ onMounted(async () => {
|
|||
<div class="col-12 q-pl-md q-pb-md">
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span>
|
||||
{{ person.PositionLineName }}
|
||||
{{ person.positionName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ระดับ</span>
|
||||
{{ person.PositionLevelName }}
|
||||
<span class="text-top0 q-pl-sm">ระดับตำแหน่ง</span>
|
||||
{{ person.positionLevelName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">สังกัด</span> {{ person.Oc }}
|
||||
|
|
@ -1453,8 +1451,8 @@ onMounted(async () => {
|
|||
v-model="Autherise"
|
||||
outlined
|
||||
:options="option"
|
||||
option-label="label"
|
||||
label="ผู้บังคับบัญชา"
|
||||
option-label="name"
|
||||
disable
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
|
|
|
|||
|
|
@ -109,7 +109,6 @@ const behavio_strengthRules = [
|
|||
(val: any) => (val && val.length > 0) || "กรุณากรอกข้อมูลจุดเด่น",
|
||||
];
|
||||
|
||||
|
||||
/** รับค่า props มาจากหน้าหลัก */
|
||||
const props = defineProps({
|
||||
tab: String,
|
||||
|
|
@ -119,20 +118,20 @@ const props = defineProps({
|
|||
});
|
||||
|
||||
/** ให้ status true */
|
||||
function edit(){
|
||||
function edit() {
|
||||
status.value = true;
|
||||
};
|
||||
}
|
||||
|
||||
/** ให้ status false
|
||||
/** ให้ status false
|
||||
* เรียกใช้ ฟังชั่น จากหน้าหลัก
|
||||
*/
|
||||
function cancel(){
|
||||
function cancel() {
|
||||
status.value = false;
|
||||
props.fecthAssign?.(assignId.value);
|
||||
};
|
||||
}
|
||||
|
||||
/** get data */
|
||||
async function fecthFormdata(){
|
||||
async function fecthFormdata() {
|
||||
await http
|
||||
.get(config.API.formevaluateRecordCommander(assignId.value))
|
||||
.then(async (res: any) => {
|
||||
|
|
@ -145,13 +144,11 @@ async function fecthFormdata(){
|
|||
fecthFormRound();
|
||||
}
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** get data */
|
||||
async function fectFormfull(){
|
||||
Autherise.value =
|
||||
probationStore.director.name +
|
||||
` (${probationStore.director.PositionLineName}, ${probationStore.director.PositionLevelName}, ${probationStore.director.Oc})`;
|
||||
async function fectFormfull() {
|
||||
Autherise.value = probationStore.director;
|
||||
list1_1.value = probationStore.assignOutput;
|
||||
evaluate_expenct_level.value = await probationStore.assignOutput.map(
|
||||
(e: any) => ({
|
||||
|
|
@ -164,10 +161,10 @@ async function fectFormfull(){
|
|||
}));
|
||||
checkArray.value = list1_1.value.length;
|
||||
fecthFormRound();
|
||||
};
|
||||
}
|
||||
|
||||
/** get data */
|
||||
async function fecthFormRound(){
|
||||
async function fecthFormRound() {
|
||||
try {
|
||||
let data = await dataArr.value;
|
||||
evaluate_id.value = data.id;
|
||||
|
|
@ -225,10 +222,10 @@ async function fecthFormRound(){
|
|||
} catch (error) {
|
||||
hideLoader();
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/** เช็คก่อน save */
|
||||
function savaForm(){
|
||||
function savaForm() {
|
||||
achievement_strengthRef.value.validate();
|
||||
achievement_inproveRef.value.validate();
|
||||
behavio_strengthRef.value.validate();
|
||||
|
|
@ -269,10 +266,10 @@ function savaForm(){
|
|||
if (hasError === true) {
|
||||
notifyError($q, "กรุณากรอกข้อมูลให้ครบ");
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/** ยืนยัน save data */
|
||||
function putformData(){
|
||||
function putformData() {
|
||||
const data = {
|
||||
evaluate_no: evaluate_no.value,
|
||||
start_date: start_date.value,
|
||||
|
|
@ -312,10 +309,10 @@ function putformData(){
|
|||
dialogConfirm($q, () =>
|
||||
props.action == "edit" ? editData(data) : saveformdata(data)
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
/** save data */
|
||||
async function saveformdata(data: any){
|
||||
async function saveformdata(data: any) {
|
||||
await http
|
||||
.post(config.API.formevaluateCommander(assignId.value), data)
|
||||
.then((res: any) => {
|
||||
|
|
@ -325,10 +322,10 @@ async function saveformdata(data: any){
|
|||
.catch((e: any) => {
|
||||
messageError($q, e);
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
/** update data */
|
||||
async function editData(data: any){
|
||||
async function editData(data: any) {
|
||||
await http
|
||||
.put(
|
||||
config.API.editEvaluateCommander(assignId.value, evaluate_id.value),
|
||||
|
|
@ -341,7 +338,7 @@ async function editData(data: any){
|
|||
.catch((e: any) => {
|
||||
messageError($q, e);
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
watch(props, async () => {
|
||||
if (props.tab && props.action == "edit") {
|
||||
|
|
@ -405,11 +402,11 @@ onMounted(async () => {
|
|||
<!-- <div class="col-12"><span class="text-top0 q-pl-sm">ตำแหน่ง</span> {{ person.Position }}</div> -->
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ตำแหน่งในสายงาน</span>
|
||||
{{ probationStore.person.PositionLineName }}
|
||||
{{ probationStore.person.positionName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">ระดับ</span>
|
||||
{{ probationStore.person.PositionLevelName }}
|
||||
<span class="text-top0 q-pl-sm">ระดับตำแหน่ง</span>
|
||||
{{ probationStore.person.positionLevelName }}
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<span class="text-top0 q-pl-sm">สังกัด</span>
|
||||
|
|
@ -1294,8 +1291,8 @@ onMounted(async () => {
|
|||
v-model="Autherise"
|
||||
outlined
|
||||
:options="option"
|
||||
option-label="label"
|
||||
label="ผู้บังคับบัญชา"
|
||||
option-label="name"
|
||||
disable
|
||||
/>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
|
|
@ -1342,7 +1339,7 @@ onMounted(async () => {
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<q-toolbar
|
||||
class="text-primary"
|
||||
v-if="routeName == 'probationFormAddresult'"
|
||||
|
|
|
|||
|
|
@ -7,8 +7,8 @@ import { useCounterMixin } from "@/stores/mixin";
|
|||
import { useQuasar } from "quasar";
|
||||
import http from "@/plugins/http";
|
||||
import config from "@/app.config";
|
||||
import PopupPersonal from "@/components/Dialogs/PopupPersonal.vue";
|
||||
|
||||
import PopupPersonal from "@/components/Dialogs/PopupPersonalNew.vue";
|
||||
|
||||
const modalPersonal = ref<boolean>(false);
|
||||
const personId = ref<string>("");
|
||||
const router = useRouter();
|
||||
|
|
@ -22,7 +22,7 @@ const attrs = ref<any>(useAttrs());
|
|||
const paging = ref<boolean>(true);
|
||||
const filterRef = ref<any>(null);
|
||||
const organization = ref<string>("");
|
||||
const avatarprofile = ref<string>("");
|
||||
const avatarProfile = ref<string>("");
|
||||
const filterKeyword = ref<string>("");
|
||||
const position_line = ref<string>("");
|
||||
const position_level = ref<string>("");
|
||||
|
|
@ -178,7 +178,6 @@ async function getpersonalList() {
|
|||
organization.value = data.organization;
|
||||
probation_status.value = data.probation_status;
|
||||
probation_statusold.value = data.probation_status;
|
||||
avatarprofile.value = data.avatar;
|
||||
})
|
||||
.catch(() => {})
|
||||
.finally(() => {
|
||||
|
|
@ -230,10 +229,10 @@ function resetFilter() {
|
|||
filterRef.value.focus();
|
||||
}
|
||||
|
||||
function paginationLabel(start: string, end: string, total: string){
|
||||
function paginationLabel(start: string, end: string, total: string) {
|
||||
if (paging.value == true) return " " + start + "-" + end + " ใน " + total;
|
||||
else return start + "-" + end + " ใน " + total;
|
||||
};
|
||||
}
|
||||
|
||||
function onclickViewinfo(id: string) {
|
||||
modalPersonal.value = true;
|
||||
|
|
@ -244,10 +243,26 @@ function updatemodalPersonal(modal: boolean) {
|
|||
modalPersonal.value = modal;
|
||||
}
|
||||
|
||||
async function fetchProfilePhoto() {
|
||||
await http
|
||||
.get(
|
||||
config.API.fileByFile(
|
||||
"ทะเบียนประวัติ",
|
||||
"โปรไฟล์",
|
||||
personalId.value,
|
||||
`profile-${personalId.value}`
|
||||
)
|
||||
)
|
||||
.then(async (res) => {
|
||||
avatarProfile.value = res.data.downloadUrl;
|
||||
});
|
||||
}
|
||||
|
||||
/** get ค่า เมื่อโหลดหน้า */
|
||||
onMounted(async () => {
|
||||
await getpersonalList();
|
||||
await getAssignList();
|
||||
fetchProfilePhoto();
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
@ -283,7 +298,7 @@ onMounted(async () => {
|
|||
<div class="row col-12 q-pa-md">
|
||||
<div class="col-12 row bg-white q-col-gutter-md">
|
||||
<div class="col-xs-3 col-sm-2 col-md-1 row">
|
||||
<q-img :src="avatarprofile" v-if="avatarprofile !== null" />
|
||||
<q-img :src="avatarProfile" v-if="avatarProfile !== ''" />
|
||||
<q-img src="@/assets/avatar_user.jpg" v-else />
|
||||
</div>
|
||||
|
||||
|
|
@ -349,7 +364,6 @@ onMounted(async () => {
|
|||
>
|
||||
<q-tooltip>เพิ่มงานที่ได้รับมอบหมาย</q-tooltip>
|
||||
</q-btn>
|
||||
|
||||
</div>
|
||||
<q-space />
|
||||
<q-input
|
||||
|
|
@ -448,7 +462,6 @@ onMounted(async () => {
|
|||
</div>
|
||||
</q-card>
|
||||
|
||||
|
||||
<PopupPersonal
|
||||
:modal="modalPersonal"
|
||||
:id="personId"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue