inputgreen

This commit is contained in:
setthawutttty 2023-12-08 14:00:02 +07:00
parent 6d12f50399
commit a5335df0b6
6 changed files with 206 additions and 158 deletions

View file

@ -375,6 +375,7 @@ onMounted(() => {
<div class="col-xs-12 col-sm-12 row q-col-gutter-md">
<div class="col-xs-12 col-sm-4" id="respondentType">
<q-select
:class="inputEdit(isReadonly)"
for="SelectrespondentType"
v-model="formData.respondentType"
ref="respondentTypeRef"
@ -412,6 +413,7 @@ onMounted(() => {
id="organizationId"
>
<q-select
:class="inputEdit(isReadonly)"
for="inputOffice"
name="organizationId"
ref="organizationIdRef"
@ -434,6 +436,7 @@ onMounted(() => {
<div class="col-xs-12 col-sm-4" id="consideredAgency">
<q-select
:class="inputEdit(isReadonly)"
ref="consideredAgencyRef"
for="selectAgency"
dense
@ -576,6 +579,7 @@ onMounted(() => {
for="inputTopicComplaint"
ref="titleRef"
dense
:class="inputEdit(isReadonly)"
outlined
:readonly="isReadonly"
hide-bottom-space
@ -591,6 +595,7 @@ onMounted(() => {
<div class="col-xs-12 col-sm-12" id="description">
<q-input
:class="inputEdit(isReadonly)"
for="inputDetail"
ref="descriptionRef"
dense
@ -660,6 +665,7 @@ onMounted(() => {
<div class="col-xs-12 col-sm-3" id="levelConsideration">
<q-select
:class="inputEdit(isReadonly)"
for="selectConsiderationLevel"
ref="levelConsiderationRef"
dense
@ -737,6 +743,7 @@ onMounted(() => {
<div class="col-xs-12 col-sm-3" id="offenseDetails">
<q-select
:class="inputEdit(isReadonly)"
for="selectOffenseDescription"
ref="offenseDetailsRef"
dense
@ -810,6 +817,7 @@ onMounted(() => {
<div class="col-xs-12 col-sm-3" id="complaintFrom">
<q-select
:class="inputEdit(isReadonly)"
for="selectReceivecomplaints"
ref="complaintFromRef"
dense
@ -833,6 +841,7 @@ onMounted(() => {
<div class="col-xs-12 col-sm-12" id="appellant">
<q-input
:class="inputEdit(isReadonly)"
for="inputPetitioner"
ref="appellantRef"
dense
@ -850,6 +859,7 @@ onMounted(() => {
</div>
<div class="col-xs-12 col-sm-12">
<q-input
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="result"
ref="resultRef"

View file

@ -487,7 +487,15 @@ function calendarOpen() {
calendarModal.value = true;
}
function inputEdit(val: boolean) {
function inputEdit(val:boolean){
return {
"full-width cursor-pointer ": val,
"full-width cursor-pointer inputgreen": !val,
};
}
function inputEditExtend(val: boolean) {
if (formData.investigationExtendHistory.length > 0) {
return {
"full-width cursor-pointer ": val,
@ -525,6 +533,7 @@ onMounted(async () => {
<div class="col-xs-12 row q-col-gutter-md">
<div class="col-xs-12 col-sm-3" id="respondentType">
<q-select
:class="inputEdit(isReadonly)"
for="SelectrespondentType"
v-model="formData.respondentType"
ref="respondentTypeRef"
@ -562,6 +571,7 @@ onMounted(async () => {
id="organizationId"
>
<q-select
:class="inputEdit(isReadonly)"
for="inputOffice"
name="organizationId"
ref="organizationIdRef"
@ -699,6 +709,7 @@ onMounted(async () => {
<div class="col-xs-12 col-sm-3">
<q-select
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="#investigationDetail"
outlined
@ -737,9 +748,9 @@ onMounted(async () => {
class="col-12"
>
<q-input
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="#investigationDetailOther"
class="full-width cursor-pointer"
outlined
ref="investigationDetailOtherRef"
dense
@ -813,6 +824,7 @@ onMounted(async () => {
<div class="row q-col-gutter-sm">
<div v-if="investigationExtendStatus" class="col-3">
<q-select
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="#daysExtend"
outlined
@ -867,7 +879,7 @@ onMounted(async () => {
<template #trigger>
<q-input
for="#date"
:class="inputEdit(isReadonly)"
:class="inputEditExtend(isReadonly)"
ref="dateRef"
:readonly="
isReadonly ||
@ -929,7 +941,7 @@ onMounted(async () => {
<q-input
for="#dateEnd"
ref="dateEndRef"
:class="inputEdit(isReadonly)"
:class="inputEditExtend(isReadonly)"
:readonly="
isReadonly ||
formData.investigationExtendHistory.length >
@ -1078,9 +1090,9 @@ onMounted(async () => {
<div class="col-12">
<q-input
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="#investigationDescription"
class="full-width cursor-pointer"
outlined
ref="investigationDescriptionRef"
dense
@ -1113,6 +1125,7 @@ onMounted(async () => {
<div class="row col-12 q-col-gutter-md">
<div class="col-3">
<q-select
:class="inputEdit(isReadonly)"
for="#fault"
outlined
dense
@ -1151,6 +1164,7 @@ onMounted(async () => {
class="col-3"
>
<q-select
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="#fault"
outlined
@ -1182,7 +1196,7 @@ onMounted(async () => {
<div class="row col-12">
<q-input
class="full-width cursor-pointer"
:class="inputEdit(isReadonly)"
outlined
ref="resultRef"
:readonly="isReadonly"

View file

@ -219,14 +219,12 @@ function onSubmit() {
formData.disciplinaryDateStart !== null &&
formData.disciplinaryDateEnd !== null
) {
const disciplinaryDateStart = new Date(
formData.disciplinaryDateStart
);
const disciplinaryDateStart = new Date(formData.disciplinaryDateStart);
const disciplinaryDateEnd = new Date(formData.disciplinaryDateEnd);
formData.disciplinaryDateStart = moment(disciplinaryDateStart).format(
"YYYY-MM-DD"
) ;
);
formData.disciplinaryDateEnd =
moment(disciplinaryDateEnd).format("YYYY-MM-DD");
}
@ -465,7 +463,7 @@ function resetExtend() {
formData.daysExtend = 0;
}
function inputEdit(val:boolean){
function inputEdit(val: boolean) {
return {
"full-width cursor-pointer ": val,
"full-width cursor-pointer inputgreen": !val,
@ -488,7 +486,6 @@ function inputEditExtend(val: boolean) {
onMounted(async () => {
mainStore.rowsAdd = [];
await fetchOrganization();
});
</script>
<template>
@ -513,6 +510,7 @@ onMounted(async () => {
<div class="row col-12 q-col-gutter-x-md">
<div class="col-xs-12 col-sm-3">
<q-select
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="SelectrespondentType"
v-model="formData.respondentType"
@ -743,7 +741,6 @@ onMounted(async () => {
outlined
dense
:class="inputEdit(isReadonly)"
hide-bottom-space
:model-value="
formData.disciplinaryDateInvestigation != null
@ -874,6 +871,7 @@ onMounted(async () => {
<div class="row q-col-gutter-sm">
<div v-if="extendStatus" class="col-3">
<q-select
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="#daysExtend"
outlined
@ -1243,139 +1241,153 @@ onMounted(async () => {
</div>
</q-card>
</div>
<q-input
:readonly="isReadonly"
class="col-xs-12 col-sm-3"
dense
outlined
ref="disciplinaryCaseFaultRef"
v-model="formData.disciplinaryCaseFault"
for="#casefault"
label="กรณีมีความผิด"
hide-bottom-space
:rules="[(val) => !!val || `${'กรุณากรอกกรณีมีความผิด'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
<div class="col-xs-12 col-sm-3">
<q-input
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
dense
outlined
ref="disciplinaryCaseFaultRef"
v-model="formData.disciplinaryCaseFault"
for="#casefault"
label="กรณีมีความผิด"
hide-bottom-space
:rules="[(val) => !!val || `${'กรุณากรอกกรณีมีความผิด'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
</div>
<div class="col-xs-12 col-sm-3">
<q-input
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
dense
hide-bottom-space
outlined
for="#whereInvestigate"
ref="disciplinaryInvestigateAtRef"
v-model="formData.disciplinaryInvestigateAt"
label="สอบสวนที่"
:rules="[(val) => !!val || `${'กรุณากรอกสอบสวนที่'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
</div>
<q-input
:readonly="isReadonly"
class="col-xs-12 col-sm-3"
dense
hide-bottom-space
outlined
for="#whereInvestigate"
ref="disciplinaryInvestigateAtRef"
v-model="formData.disciplinaryInvestigateAt"
label="สอบสวนที่"
:rules="[(val) => !!val || `${'กรุณากรอกสอบสวนที่'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
<div class="col-xs-12 col-sm-3">
<q-select
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
dense
outlined
for="#faultLevel"
ref="disciplinaryFaultLevelRef"
v-model="formData.disciplinaryFaultLevel"
option-label="name"
option-value="id"
emit-value
map-options
hide-bottom-space
:options="investigateDis.optionsfaultLevel"
label="ระดับโทษความผิด"
:rules="[
(val) => !!val || `${'กรุณาเลือกระดับโทษความผิด'}`,
]"
lazy-rules
group-label="group"
group-values="options"
@update:model-value="changeFormData()"
>
</q-select>
</div>
<div class="col-xs-12 col-sm-3">
<q-input
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
dense
for="#refLaw"
hide-bottom-space
outlined
ref="disciplinaryRefLawRef"
v-model="formData.disciplinaryRefLaw"
label="อ้างอิงมาตราตามกฎหมาย"
:rules="[
(val) => !!val || `${'กรุณากรอกอ้างอิงมาตราตามกฎหมาย'}`,
]"
lazy-rules
@update:model-value="changeFormData()"
/>
</div>
<div class="col-xs-12 col-sm-6">
<q-input
:readonly="isReadonly"
:class="inputEdit(isReadonly)"
dense
outlined
for="#evidence"
ref="disciplinarySummaryEvidenceRef"
hide-bottom-space
v-model="formData.disciplinarySummaryEvidence"
label="สรุปพยานหลักฐานสนับสนุนข้อกล่าวหา"
type="textarea"
:rules="[(val:string) => !!val || `${'กรุณากรอกสรุปพยานหลักฐานสนับสนุนข้อกล่าวหา'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
</div>
<q-select
:readonly="isReadonly"
dense
class="col-xs-12 col-sm-3"
outlined
for="#faultLevel"
ref="disciplinaryFaultLevelRef"
v-model="formData.disciplinaryFaultLevel"
option-label="name"
option-value="id"
emit-value
map-options
hide-bottom-space
:options="investigateDis.optionsfaultLevel"
label="ระดับโทษความผิด"
:rules="[(val) => !!val || `${'กรุณาเลือกระดับโทษความผิด'}`]"
lazy-rules
group-label="group"
group-values="options"
@update:model-value="changeFormData()"
>
</q-select>
<div class="col-xs-12 col-sm-6">
<q-input
:readonly="isReadonly"
:class="inputEdit(isReadonly)"
dense
outlined
ref="disciplinaryRecordAccuserRef"
for="#recordAccuser"
v-model="formData.disciplinaryRecordAccuser"
label="บันทึกถ้อยคำของผู้กล่าวหา"
hide-bottom-space
type="textarea"
:rules="[(val:string) => !!val || `${'กรุณากรอกบันทึกถ้อยคำของผู้กล่าวหา'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
</div>
<div class="col-xs-12 col-sm-6">
<q-input
:readonly="isReadonly"
:class="inputEdit(isReadonly)"
dense
outlined
for="#witnesses"
ref="disciplinaryWitnessesRef"
v-model="formData.disciplinaryWitnesses"
label="พยานและบันทึกถ้อยคำพยาน"
hide-bottom-space
type="textarea"
:rules="[(val:string) => !!val || `${'กรุณากรอกพยานและบันทึกถ้อยคำพยาน'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
</div>
<q-input
:readonly="isReadonly"
class="col-xs-12 col-sm-3"
dense
for="#refLaw"
hide-bottom-space
outlined
ref="disciplinaryRefLawRef"
v-model="formData.disciplinaryRefLaw"
label="อ้างอิงมาตราตามกฎหมาย"
:rules="[
(val) => !!val || `${'กรุณากรอกอ้างอิงมาตราตามกฎหมาย'}`,
]"
lazy-rules
@update:model-value="changeFormData()"
/>
<q-input
:readonly="isReadonly"
class="col-xs-12 col-sm-6"
dense
outlined
for="#evidence"
ref="disciplinarySummaryEvidenceRef"
hide-bottom-space
v-model="formData.disciplinarySummaryEvidence"
label="สรุปพยานหลักฐานสนับสนุนข้อกล่าวหา"
type="textarea"
:rules="[(val:string) => !!val || `${'กรุณากรอกสรุปพยานหลักฐานสนับสนุนข้อกล่าวหา'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
<q-input
:readonly="isReadonly"
class="col-xs-12 col-sm-6"
dense
outlined
ref="disciplinaryRecordAccuserRef"
for="#recordAccuser"
v-model="formData.disciplinaryRecordAccuser"
label="บันทึกถ้อยคำของผู้กล่าวหา"
hide-bottom-space
type="textarea"
:rules="[(val:string) => !!val || `${'กรุณากรอกบันทึกถ้อยคำของผู้กล่าวหา'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
<q-input
:readonly="isReadonly"
class="col-xs-12 col-sm-6"
dense
outlined
for="#witnesses"
ref="disciplinaryWitnessesRef"
v-model="formData.disciplinaryWitnesses"
label="พยานและบันทึกถ้อยคำพยาน"
hide-bottom-space
type="textarea"
:rules="[(val:string) => !!val || `${'กรุณากรอกพยานและบันทึกถ้อยคำพยาน'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
<q-input
:readonly="isReadonly"
class="col-xs-12 col-sm-6"
dense
outlined
for="#InvestResults"
ref="resultRef"
v-model="formData.result"
label="ผลการสอบสวน"
hide-bottom-space
type="textarea"
:rules="[(val:string) => !!val || `${'กรุณากรอกผลการสอบสวน'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
<div class="col-xs-12 col-sm-6">
<q-input
:readonly="isReadonly"
:class="inputEdit(isReadonly)"
dense
outlined
for="#InvestResults"
ref="resultRef"
v-model="formData.result"
label="ผลการสอบสวน"
hide-bottom-space
type="textarea"
:rules="[(val:string) => !!val || `${'กรุณากรอกผลการสอบสวน'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
</div>
<div class="row col-12">
<q-card
@ -1395,6 +1407,7 @@ onMounted(async () => {
<div class="row col-12 q-col-gutter-md">
<div class="col-3">
<q-select
:class="inputEdit(isReadonly)"
for="#fault"
outlined
dense
@ -1433,6 +1446,7 @@ onMounted(async () => {
class="col-3"
>
<q-select
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
for="#fault"
outlined
@ -1464,6 +1478,7 @@ onMounted(async () => {
<div class="row col-12">
<q-input
:class="inputEdit(isReadonly)"
:readonly="isReadonly"
class="full-width cursor-pointer"
outlined

View file

@ -120,6 +120,7 @@ const dataInvestigatefacts = reactive<FormInvestigateFact>({
respondentType: "",
organizationId: "",
persons: [],
investigationExtendHistory:[]
});
/** function เรียกรายละเอียดสืบสวนข้อเท็จจริง*/
async function fetchDetailInvestigate() {

View file

@ -162,6 +162,13 @@ watch(
}
);
function inputEdit(val: boolean) {
return {
"full-width cursor-pointer ": val,
"full-width cursor-pointer inputgreen": !val,
};
}
/** ฟังก์ชั่นเช็คการแก้ไขฟอร์มแล้วไม่ได้กดบันทึก */
function changeFormData() {
isSave.value = true;
@ -360,20 +367,22 @@ onMounted(async () => {});
</div>
</q-card>
</div>
<q-input
type="textarea"
class="col-12"
dense
outlined
ref="detailRef"
v-model="formData.resultDescription"
for="#detail"
label="สรุปผลการพิจารณา"
hide-bottom-space
:rules="[(val) => !!val || `${'กรุณากรอกสรุปผลการพิจารณา'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
<div class="col-12">
<q-input
:class="inputEdit(isReadonly)"
type="textarea"
dense
outlined
ref="detailRef"
v-model="formData.resultDescription"
for="#detail"
label="สรุปผลการพิจารณา"
hide-bottom-space
:rules="[(val) => !!val || `${'กรุณากรอกสรุปผลการพิจารณา'}`]"
lazy-rules
@update:model-value="changeFormData()"
/>
</div>
</div>
</div>
<q-separator />

View file

@ -486,7 +486,6 @@ onMounted(async () => {
</div>
<div class="col-12">
<q-input
:class="getClass(edit)"
:outlined="edit"
dense
readonly