update edit / login / responsive
All checks were successful
frontend-action / build-image (push) Successful in 57s

This commit is contained in:
2024-04-23 18:57:44 +07:00
parent b1e2d326a5
commit e5683c7f2b
26 changed files with 1884 additions and 88 deletions

259
src/views/CheckDetail.vue Normal file
View File

@@ -0,0 +1,259 @@
<template>
<div class="bg-yellow-page mt-5">
<v-container>
<div class="text-title text-center mt-10">
ตวรจเชคคณสมบ-กษณะตองหาม ของผจะสมคร สว.<br />
<!-- <v-icon icon="mdi-circle" color="white" class="mt-2"></v-icon> -->
</div>
<div class="text-center mb-10">
<v-icon icon="mdi-circle" color="white" class="mt-2"></v-icon>
</div>
<br />
<v-row>
<v-col cols="12" md="">
<v-img
:aspect-ratio="1"
src="../assets/Group 195.png"
height="100%"
class="img-checkdetail"
></v-img>
</v-col>
<v-col class="text-sub2 bline" cols="12" md="">
<div class="text-subtitle">
<v-icon icon="mdi-check-circle-outline" color="#4C884C"></v-icon>
ณสมบของสมาชกวสภา
</div>
<div class="text-sub">
สมาชกวสภาตองไมกใฝหรอยอมตนอยภายใตของพรรคการเมองใดๆ
โดยมณสมบงน
</div>
<div class="d-flex align-center">
<v-img
:aspect-ratio="1"
src="../assets/Group 196.png"
width="50"
inline
class="mr-3"
></v-img>
ญชาตไทยโดยการเก
</div>
<div class="d-flex align-center">
<v-img
:aspect-ratio="1"
src="../assets/Group 197.png"
width="50"
inline
class="mr-3"
></v-img
>อายไมำกว 40 ในวนสมครรบเลอก
</div>
<div class="d-flex align-start">
<v-img
:aspect-ratio="1"
src="../assets/Group 198.png"
width="50"
inline
class="mr-3"
></v-img>
ความร ความเชยวชาญ และประสบการณ หรอทำงานในดาน
สมครไมอยกวาสบป ยกเว สมครในกลมสตร งอาย
คนพการ
</div>
<div class="d-flex align-start">
<v-img
:aspect-ratio="1"
src="../assets/Group 199.png"
width="50"
inline
class="mr-3"
></v-img>
สมครตองมกษณะอยางใดอยางหน งตอไปนวย<br />()
เปนบคคลซงเกดในอำเภอทสมครรบเลอก <br />()
ออยในทะเบยนบานในอำเภอทสมครรบเลอกมาแลวเปนเวลา
ดตอกนไมอยกว สองปบถงวนสมครรบเลอก <br />()
ทำงานอยในอำเภอทสมครรบเลอกมาแลวเปนเวลาตดตอก
ไมอยกวาสองป บถงวนสมครรบเลอก <br />()
เคยทำงานหรอเคยมออยในทะเบยนบานอยในอำเภอทสมคร บเลอก
แลวแตกรณ เปนเวลาตดตอกนไมอยกวาสองป <br />()
เคยศกษาในสถานศกษาทงอยในอำเภอทสมครรบเลอกเป
เวลาตดตอกนไมอยกว สองปการศกษา
</div>
</v-col>
</v-row>
<v-row class="my-10">
<v-col cols="12" md="" class="border-blue text-sub2 bline pa-5">
<div class="text-subtitle">
<v-icon icon="mdi-close-circle-outline" color="#DD3131"></v-icon>
กษณะตองหามของสมาชกวสภา
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
ดยาเสพตดใหโทษ
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนบคคลลมละลายหรอเคยเปนบคคลลมละลายทจร
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนเจาของหรอผอหนในกจการหนงสอพมพหรอสอมวลชนใด
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนภกษ สามเณร กพรต หรอนกบวช
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
อยในระหวางถกเพกถอนสทธเลอกตงไมาคดนจะถงทดแลวหรอไม
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
กลจรตหรอจตฟนเฟอนไมสมประกอบ
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
อยระหวางถกระงบการใชทธสมครรบเลอกตงเปนการชวคราวหร
กเพกถอนสทธสมครรบเลอกต
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
องคำพพากษาใหจำคกและถกคมขงอยโดยหมายของศาล
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เคยไดบโทษจำคกโดยไดนโทษมายงไมงสบปบถงวนเลอกในระด
อำเภอ เวนแต ในความผดอนไดกระทำโดยประมาทหรอความผดลหโทษ
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เคยถกสงใหนจากราชการ หนวยงานของร หรอรฐวสาหกจเพราะ
จรตตอหนาท หรอถอวากระทำการทจรตหรอประพฤตชอบใน วงราชการ
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เคยตองคำพพากษาหรอคำสงของศาลอนถงทดใหทรพยนตกเป
ของแผนดนเพราะรำรวยผดปกต หรอเคยตองคำพพากษาอนถงท
ใหลงโทษจำคกเพราะกระทำความผดตามกฎหมายวาดวยการปองก
และปราบปรามการทจร
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เคยตองคำพพากษาอนถงทดวากระทำการอนเปนการทจรตในการเลอกต
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เคยเปนสมาชกวสภาตามรฐธรรมนญน
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เคยตองคำพพากษาอนถงทดวากระทำความผดตอตำแหนงหนาท
ราชการหร อตำแหนงหนาทในการยธรรม หรอกระทำความผ
ตามกฎหมายวาดวยความผดของพนกงานในองคการ หรอหนวยงาน ของร
หรอความผดเกยวกบทรพยกระทำโดยทจรตตามประมวล กฎหมายอาญา
ความผดตามกฎหมายวาดวยการกมเงนทเป การฉอโกงประชาชน
กฎหมายวาดวยยาเสพต ในความผดฐานเปนผผล นำเข งออก
หรอผ กฎหมายวาดวยการพนนในความผดฐานเปนเจาม หรอเจาสำน
กฎหมายวาดวยการปองกนและปราบปรามการคามนษย
หรอกฎหมายวาดวยการปองก และปราบปรามการฟอกเงนในความผ
ฐานฟอกเง
</div>
</v-col>
<v-col class="text-sub2 bline pa-5" cols="12" md="">
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
อยในระหวางตองหามมใหดำรงตำแหนงทางการเมอง
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนพนกงานหรอลกจางของหนวยราชการ หนวยงานของร หรอรฐวสาหก
หรอเปนเจาหนาทนของร
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนตลาการศาลรฐธรรมน หรอผดำรงตำแหนงในองคกรอสระ
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เคยพนจากตำแหนงเพราะศาลรฐธรรมนญวจฉยวามการเสนอ การแปรญตต
หร การกระทำดวยประการใด ผลใหสมาช สภาผแทนราษฎร
สมาชกวสภา หรอกรรมาธการ วนไม
โดยทางตรงหรอทางออมในการใชงบประมาณรายจาย
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เคยพนจากตำแหนงเพราะศาลฎกาหรอศาลฎกาแผนกคดอาญา
ของผดำรงตำแหนงทางการเมองมคำพพากษาวาเปนผ
พฤตการณำรวยผดปกต หรอกระทำความผดฐานทจรตตอหนาท
หรอจงใจปฏหนาทหรอใชอำนาจขดตอบทบญญแห
ฐธรรมนญหรอกฎหมาย หรอฝาฝนหรอไมปฏ ตามมาตรฐาน
ทางจรยธรรมอยางรายแรง
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนขาราชการ
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนหรอเคยเปนสมาชกสภาผแทนราษฎร เวนแต ไดนจากการ
เปนสมาชกสภาผแทนราษฎร มาแลวไมอยกวาหาปบถ
นสมครรบเลอก
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนสมาชกพรรคการเมอง
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนหรอเคยเปนผดำรงตำแหนงใดในพรรคการเมอง เวนแต
ไดนจากการดำรงตำแหนงในพรรคการเมองมาแลวไมอยกว
าปบถงวนสมครรบเลอก
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนหรอเคยเปนรฐมนตร เวนแต ไดนจากการเปนรฐมนตรมา
แลวไมอยกวาหาปบถงวนสมครรบเลอก
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนหรอเคยเปนสมาชกสภาทองถนหรอบรหารทองถ เวนแต
ไดนจากการเปนสมาชกสภาทองถนหรอผบรหารทองถนมาแล
ไมอยกวาหาปบถงวนสมครรบเลอก
</div>
<div>
<v-icon icon=" mdi-menu-right" size="47" color="#1B76BA"></v-icon>
เปนบพการ สมรส หรอบตรของผดำรงตาแหนงสมาชกสภา แทนราษฎร
สมาชกวสภา าราชการการเมองสมาชกสภาทองถ
หรอผบรหารทองถ สมครรบเลอกเปนสมาชกวสภาในคราว
เดยวก หรอผดำรงตำแหนงใดในศาลรฐธรรมนญหรอองคกรอสระ
</div>
</v-col>
</v-row>
</v-container>
</div>
</template>
<script>
export default {};
</script>
<style>
.bline div {
margin: 15px 0px;
}
.bg-yellow-page {
background: #f7d278;
}
.border-blue {
border-right: 5px solid #1b76ba;
}
@media only screen and (min-width: 0px) and (max-width: 700px) {
.border-blue {
border-right: 0px solid #1b76ba;
}
.img-checkdetail {
/* height: 250px !important; */
}
}
</style>

134
src/views/LoginForm.vue Normal file
View File

@@ -0,0 +1,134 @@
<template>
<div>
<v-img
class="mx-auto"
:aspect-ratio="1"
src="@/assets/logo-title.png"
width="250"
></v-img>
<v-card
class="mx-auto pa-12 pb-8"
elevation="8"
max-width="600"
rounded="lg"
>
<v-form fast-fail @submit.prevent v-model="form1">
<div class="text-subtitle-1 text-medium-emphasis">ID card number</div>
<v-text-field
density="compact"
placeholder="เลขประจำตัว 13 หลัก"
prepend-inner-icon="mdi-card-account-details"
variant="outlined"
color="#4c884c"
v-model="payload.cid"
:rules="rules.id"
></v-text-field>
<!--
<div class="text-subtitle-1 text-medium-emphasis d-flex align-center justify-space-between">
Password
<a
class="text-caption text-decoration-none text-blue"
href="#"
rel="noopener noreferrer"
target="_blank"
>
Forgot login password?</a>
</div> -->
<v-text-field
:append-inner-icon="visible ? 'mdi-eye-off' : 'mdi-eye'"
:type="visible ? 'text' : 'password'"
density="compact"
placeholder="เบอร์โทรศัพท์"
prepend-inner-icon="mdi-lock-outline"
variant="outlined"
@click:append-inner="visible = !visible"
v-model="payload.phone"
:rules="rules.tel"
color="#4c884c"
></v-text-field>
<!-- <v-card
class="mb-12"
color="surface-variant"
variant="tonal"
>
<v-card-text class="text-medium-emphasis text-caption">
Warning:
</v-card-text>
</v-card> -->
<v-btn
class="mb-8"
size="large"
variant="tonal"
block
@click="login"
color="#4c884c"
:disabled="!form1"
>
Log In
</v-btn>
</v-form>
</v-card>
</div>
</template>
<script>
import { client } from "@/utils/trpc";
export default {
data: () => ({
form1: false,
visible: false,
payload: { cid: "", phone: "" },
rules: {
tel: [
(v) =>
// (parseInt(v) == v && v.length == 10) || 'เบอร์โทรไม่ถูกต้อง',
/^([0-9]{10})$/.test(v) || "Invalid phone number",
],
id: [
(v) => (parseInt(v) == v && v.length == 13) || "Invalid ID card number",
],
},
}),
methods: {
getUser() {
client.user.getSelf
.mutate({})
.then((data) => {
localStorage.setItem("username", data.firstName);
this.$store.commit("setUsername", data.firstName);
// this.$emitter.emit("loginUser", data.firstName );
this.$router.push("/");
// location.reload();
// this.$store.dispatch('setLocalStorageValue',data.firstName)
})
.catch((error) => {
alert("ไม่สามารถโหลดข้อมูลได้");
console.error("เกิดข้อผิดพลาดในการโหลดข้อมูล:", error);
});
},
login() {
client.user.login
.mutate(this.payload)
.then((data) => {
console.log("data", data);
localStorage.setItem("token", data.token);
// this.uploadImage();
this.getUser();
// this.provinceItems = data;
})
.catch((error) => {
alert("ไม่สามารถบันทึกข้อมูลได้: " + error.message);
console.error("เกิดข้อผิดพลาดในการโหลดข้อมูล:", error);
});
},
},
};
</script>

13
src/views/ProfileUser.vue Normal file
View File

@@ -0,0 +1,13 @@
<template lang="">
<div>
<FormMain />
</div>
</template>
<script>
import FormMain from "../components/edit/FormMainEdit.vue";
export default {
components: { FormMain },
};
</script>
<style lang=""></style>