update 1399-12-01
This commit is contained in:
+14
-2
@@ -8,7 +8,8 @@ export var getHeader = () => {
|
|||||||
|
|
||||||
return {
|
return {
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
'Authorization': 'Bearer ' + localStorage.getItem("accessToken") || localStorage.accessToken
|
//'Authorization': 'Bearer ' + localStorage.getItem("accessToken") || localStorage.accessToken
|
||||||
|
'Authorization': 'Bearer ' + sessionStorage.getItem("accessToken") || sessionStorage.accessToken
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -21,7 +22,7 @@ var myax= new axios.create({
|
|||||||
|
|
||||||
myax.interceptors.request.use(
|
myax.interceptors.request.use(
|
||||||
config => {
|
config => {
|
||||||
config.headers["Authorization"] = "Bearer " + localStorage.getItem("accessToken");
|
config.headers["Authorization"] = "Bearer " + sessionStorage.getItem("accessToken");
|
||||||
return config;
|
return config;
|
||||||
},
|
},
|
||||||
error => {
|
error => {
|
||||||
@@ -29,6 +30,17 @@ myax.interceptors.request.use(
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
myax.interceptors.request.use(
|
||||||
|
config => {
|
||||||
|
config.headers["Authorization"] = "Bearer " + sessionStorage.getItem("accessToken");
|
||||||
|
return config;
|
||||||
|
},
|
||||||
|
error => {
|
||||||
|
Promise.reject(error);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
export default myax;
|
export default myax;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -47,14 +47,14 @@
|
|||||||
// },
|
// },
|
||||||
username(){
|
username(){
|
||||||
const data = localStorage.getItem('user')
|
const data = localStorage.getItem('user')
|
||||||
console.log(data,'dayaaaaaaa');
|
// console.log(data,'dayaaaaaaa');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
logout() {
|
logout() {
|
||||||
if (localStorage.getItem('accessToken')) {
|
if (sessionStorage.getItem('accessToken')) {
|
||||||
localStorage.removeItem('user');
|
sessionStorage.removeItem('user');
|
||||||
localStorage.removeItem('accessToken');
|
sessionStorage.removeItem('accessToken');
|
||||||
}
|
}
|
||||||
this.$router.push('/auth/login').catch(() => {
|
this.$router.push('/auth/login').catch(() => {
|
||||||
});
|
});
|
||||||
|
|||||||
+2
-1
@@ -9,8 +9,9 @@
|
|||||||
|
|
||||||
|
|
||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
import App from './App.vue'
|
|
||||||
import Antd from 'ant-design-vue';
|
import Antd from 'ant-design-vue';
|
||||||
|
import App from './App.vue'
|
||||||
|
|
||||||
import 'ant-design-vue/dist/antd.less';
|
import 'ant-design-vue/dist/antd.less';
|
||||||
|
|
||||||
// Vuesax Component Framework
|
// Vuesax Component Framework
|
||||||
|
|||||||
+3
-2
@@ -103,11 +103,12 @@ router.afterEach(() => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
router.beforeEach((to, from, next) => {
|
router.beforeEach((to, from, next) => {
|
||||||
return next();
|
// return next();
|
||||||
let isLogin = localStorage.getItem('accessToken');
|
let isLogin = sessionStorage.getItem('accessToken');
|
||||||
console.log("to.path ==> ", to.path);
|
console.log("to.path ==> ", to.path);
|
||||||
if (
|
if (
|
||||||
(
|
(
|
||||||
|
to.path === "/register/form" ||
|
||||||
to.path === "/auth/login" ||
|
to.path === "/auth/login" ||
|
||||||
to.path === "/auth/register" ||
|
to.path === "/auth/register" ||
|
||||||
to.path === "/pages/error-404" ||
|
to.path === "/pages/error-404" ||
|
||||||
|
|||||||
@@ -93,7 +93,8 @@ export default {
|
|||||||
.then(response => {
|
.then(response => {
|
||||||
if (response.data) {
|
if (response.data) {
|
||||||
// Navigate User to homepage
|
// Navigate User to homepage
|
||||||
localStorage.setItem("accessToken", response.data.api_token)
|
sessionStorage.setItem("accessToken", response.data.api_token);
|
||||||
|
//localStorage.setItem("accessToken", response.data.api_token)
|
||||||
// Set accessToken
|
// Set accessToken
|
||||||
// Update user details
|
// Update user details
|
||||||
commit('UPDATE_USER_INFO', response.data, {root: true})
|
commit('UPDATE_USER_INFO', response.data, {root: true})
|
||||||
@@ -390,7 +391,8 @@ export default {
|
|||||||
.then(response => {
|
.then(response => {
|
||||||
if (response.data) {
|
if (response.data) {
|
||||||
// Navigate User to homepage
|
// Navigate User to homepage
|
||||||
localStorage.setItem("accessToken", response.data.api_token)
|
sessionStorage.setItem("accessToken", response.data.api_token);
|
||||||
|
//localStorage.setItem("accessToken", response.data.api_token)
|
||||||
|
|
||||||
// Set accessToken
|
// Set accessToken
|
||||||
// Update user details
|
// Update user details
|
||||||
@@ -428,7 +430,8 @@ export default {
|
|||||||
router.push(router.currentRoute.query.to || '/')
|
router.push(router.currentRoute.query.to || '/')
|
||||||
|
|
||||||
// Update data in localStorage
|
// Update data in localStorage
|
||||||
localStorage.setItem("accessToken", response.data.accessToken)
|
sessionStorage.setItem("accessToken", response.data.accessToken);
|
||||||
|
//localStorage.setItem("accessToken", response.data.accessToken)
|
||||||
commit('UPDATE_USER_INFO', response.data.userData, {root: true})
|
commit('UPDATE_USER_INFO', response.data.userData, {root: true})
|
||||||
|
|
||||||
resolve(response)
|
resolve(response)
|
||||||
|
|||||||
@@ -60,7 +60,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<div>
|
<div>
|
||||||
<a-card title="پرسنلی که تازه و یا نزدیک به فسخ قرادادشان هست">
|
<a-card title="پرسنلی که تازه و یا نزدیک به اتمام قرادادشان هست">
|
||||||
<ATable
|
<ATable
|
||||||
class="p-0 m-0"
|
class="p-0 m-0"
|
||||||
:pagination="true"
|
:pagination="true"
|
||||||
@@ -98,14 +98,22 @@
|
|||||||
},
|
},
|
||||||
async created() {
|
async created() {
|
||||||
this.cols = TableCol.default;
|
this.cols = TableCol.default;
|
||||||
console.log('111111111',axios.defaults.headers);
|
//console.log('111111111',axios.defaults.headers);
|
||||||
await axios.get('dashboard')
|
try {
|
||||||
.then((res)=>{
|
await axios.get('dashboard')
|
||||||
this.model=res.data;
|
.then((res)=>{
|
||||||
this.personelPerMonth=res.data.personnel;
|
//console.log('dsfsdfsdfds');
|
||||||
}).catch((error)=>{
|
this.model=res.data;
|
||||||
console.log(error);
|
this.personelPerMonth=res.data.personnel;
|
||||||
});
|
}).catch((error)=>{
|
||||||
|
//console.log('dsafsdfsdfsdf');
|
||||||
|
console.log(error);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
catch (error)
|
||||||
|
{
|
||||||
|
// console.log('gggggggg');
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -93,7 +93,7 @@
|
|||||||
|
|
||||||
title="از حذف این تنوع مطمئنید؟"
|
title="از حذف این تنوع مطمئنید؟"
|
||||||
ok-text="بله"
|
ok-text="بله"
|
||||||
cancel-text="بی خیال"
|
cancel-text="انصراف"
|
||||||
style="z-index: 20000000">
|
style="z-index: 20000000">
|
||||||
<a-icon slot="icon" type="question-circle-o" style="color: red"/>
|
<a-icon slot="icon" type="question-circle-o" style="color: red"/>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
|
|||||||
@@ -257,41 +257,41 @@
|
|||||||
<a-dropdown class="mt-3" v-if="item.id">
|
<a-dropdown class="mt-3" v-if="item.id">
|
||||||
<a-menu slot="overlay" >
|
<a-menu slot="overlay" >
|
||||||
<a-menu-item key="1">
|
<a-menu-item key="1">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=1`" target="_blank">نوع 1</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=1`" target="_blank">نوع 1</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="2">
|
<a-menu-item key="2">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=2`" target="_blank">نوع 2</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=2`" target="_blank">نوع 2</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="3">
|
<a-menu-item key="3">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=3`" target="_blank">نوع 3</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=3`" target="_blank">نوع 3</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="4">
|
<a-menu-item key="4">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=4`" target="_blank">نوع 4</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=4`" target="_blank">نوع 4</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="5">
|
<a-menu-item key="5">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=5`" target="_blank">نوع 5</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=5`" target="_blank">نوع 5</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="6">
|
<a-menu-item key="6">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=6`" target="_blank">نوع 6</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=6`" target="_blank">نوع 6</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="7">
|
<a-menu-item key="7">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=7`" target="_blank">نوع 7</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=7`" target="_blank">نوع 7</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="8">
|
<a-menu-item key="8">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=8`" target="_blank">نوع 8</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=8`" target="_blank">نوع 8</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="9">
|
<a-menu-item key="9">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=9`" target="_blank">نوع 9</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=9`" target="_blank">نوع 9</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<a-menu-item key="10">
|
<a-menu-item key="10">
|
||||||
<a :href="`${getBaseURL}/back/public/api/personnel/print?id=${item.id}&type=10`" target="_blank">نوع 10</a>
|
<a :href="`http://hr.asco-intl.com/back/public/api/personnel/print?id=${item.id}&type=10`" target="_blank">نوع 10</a>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<!-- <a-menu-item key="7">
|
<!-- <a-menu-item key="7">
|
||||||
<a href="222" target="_blank">نوع سوم</a>
|
<a href="222" target="_blank">نوع سوم</a>
|
||||||
</a-menu-item>-->
|
</a-menu-item>-->
|
||||||
|
|
||||||
</a-menu>
|
</a-menu>
|
||||||
<a-button > چاپ <a-icon type="down" /> </a-button>
|
<a-button > چاپ <a-icon type="down" /> </a-button>
|
||||||
</a-dropdown>
|
</a-dropdown>
|
||||||
</div>
|
</div>
|
||||||
<div></div>
|
<div></div>
|
||||||
|
|||||||
@@ -357,43 +357,56 @@
|
|||||||
<div>تلفن ثابت : {{ personalInformation.phone }}</div>
|
<div>تلفن ثابت : {{ personalInformation.phone }}</div>
|
||||||
<div>شماره بیمه : {{ personalInformation.name }}</div>
|
<div>شماره بیمه : {{ personalInformation.name }}</div>
|
||||||
<div>تلفن ضروری : {{ personalInformation.phone_emergency }}</div>
|
<div>تلفن ضروری : {{ personalInformation.phone_emergency }}</div>
|
||||||
<div>نام طرف مرتبط : {{ personalInformation.phone_emergency_related }}</div>
|
<div>نام فرد مرتبط : {{ personalInformation.phone_emergency_related }}</div>
|
||||||
<div>نسبت طرف : </div>
|
<div>نسبت فرد : </div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
<!-- <a-card title="اطلاعات خانوادگی" :bordered="true" >
|
||||||
|
<div class="grid grid-cols-3 gap-4" v-if="personalDetails.family[0]">
|
||||||
|
<div>مقطع : {{ personalDetails.pro[0].university }}</div>
|
||||||
|
<div>دانشگاه : {{ personalDetails.pro[0].university }}</div>
|
||||||
|
<div>رشته تحصیلی: {{ personalDetails.pro[0].title }}</div>
|
||||||
|
<div>گرایش: {{ personalDetails.pro[0].trend }}</div>
|
||||||
|
<div>سال شروع: {{ personalDetails.pro[0].start_at }}</div>
|
||||||
|
<div>سال خاتمه: {{ personalDetails.pro[0].end_at }}</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</a-card>-->
|
||||||
<br/>
|
<br/>
|
||||||
|
|
||||||
<a-card title="اطلاعات تحصیلی" :bordered="true" >
|
<a-card title="اطلاعات تحصیلی" :bordered="true" >
|
||||||
<div class="grid grid-cols-3 gap-4" v-if="personalDetails[0]">
|
<div class="grid grid-cols-3 gap-4" v-if="personalDetails.pro && personalDetails.pro[0] ">
|
||||||
<div>مقطع : {{ personalDetails[0].university }}</div>
|
<div>مقطع : {{ personalDetails.pro[0].university }}</div>
|
||||||
<div>دانشگاه : {{ personalDetails[0].university }}</div>
|
<div>دانشگاه : {{ personalDetails.pro[0].university }}</div>
|
||||||
<div>رشته تحصیلی: {{ personalDetails[0].title }}</div>
|
<div>رشته تحصیلی: {{ personalDetails.pro[0].title }}</div>
|
||||||
<div>گرایش: {{ personalDetails[0].trend }}</div>
|
<div>گرایش: {{ personalDetails.pro[0].trend }}</div>
|
||||||
<div>سال شروع: {{ personalDetails[0].start_at }}</div>
|
<div>سال شروع: {{ personalDetails.pro[0].start_at }}</div>
|
||||||
<div>سال خاتمه: {{ personalDetails[0].end_at }}</div>
|
<div>سال خاتمه: {{ personalDetails.pro[0].end_at }}</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>
|
||||||
<br/>
|
<br/>
|
||||||
<a-card title="سوابق آموزشی" :bordered="true" >
|
<!-- <a-card title="سوابق آموزشی" :bordered="true" >
|
||||||
|
|
||||||
<div class="grid grid-cols-3 gap-4" v-if="personalDetails[1]">
|
<div class="grid grid-cols-3 gap-4" v-if="personalDetails.pro[1]">
|
||||||
<div>مرکز برگزاری : {{ personalDetails[1].university }}</div>
|
<div>مرکز برگزاری : {{ personalDetails.pro[1].university }}</div>
|
||||||
<div>عنوان دوره : {{ personalDetails[1].title }}</div>
|
<div>عنوان دوره : {{ personalDetails.pro[1].title }}</div>
|
||||||
<div>سال : {{ personalDetails[1].start_at }}</div>
|
<div>سال : {{ personalDetails.pro[1].start_at }}</div>
|
||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>-->
|
||||||
<br/>
|
<br/>
|
||||||
|
|
||||||
<a-card title="سوابق کاری" :bordered="true" >
|
<!--<a-card title="سوابق کاری" :bordered="true" >
|
||||||
<div class="grid grid-cols-3 gap-4" v-if="personalDetails[2]">
|
<div class="grid grid-cols-3 gap-4" v-if="personalDetails.pro[2]">
|
||||||
<div>نام سازمان : {{ personalDetails[2].university }}</div>
|
<div>نام سازمان : {{ personalDetails.pro[2].university }}</div>
|
||||||
<div>عنوان شغل : {{ personalDetails[2].title }}</div>
|
<div>عنوان شغل : {{ personalDetails.pro[2].title }}</div>
|
||||||
<div>سال شروع : {{ personalDetails[2].start_at }}</div>
|
<div>سال شروع : {{ personalDetails.pro[2].start_at }}</div>
|
||||||
<div>سال خاتمه : {{ personalDetails[2].end_at }}</div>
|
<div>سال خاتمه : {{ personalDetails.pro[2].end_at }}</div>
|
||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>-->
|
||||||
|
|
||||||
</a-modal>
|
</a-modal>
|
||||||
|
|
||||||
@@ -512,6 +525,7 @@
|
|||||||
.then((res)=>{
|
.then((res)=>{
|
||||||
this.personalInformation=record;
|
this.personalInformation=record;
|
||||||
this.personalDetails=res.data;
|
this.personalDetails=res.data;
|
||||||
|
console.log(this.personalDetails);
|
||||||
this.showInformationModal=true;
|
this.showInformationModal=true;
|
||||||
}).catch((error)=>{
|
}).catch((error)=>{
|
||||||
this.$message.error('خطا در دریافت اطلاعات');
|
this.$message.error('خطا در دریافت اطلاعات');
|
||||||
@@ -522,7 +536,7 @@
|
|||||||
this.$confirm({
|
this.$confirm({
|
||||||
title: 'آیا مطمئن به استخدام هستید ؟',
|
title: 'آیا مطمئن به استخدام هستید ؟',
|
||||||
content: 'در صورتی که گزینه بله را انتخاب کنید کد پرسنلی برای فرد درخواست کننده در سیستم اختصاص خواهد یافت',
|
content: 'در صورتی که گزینه بله را انتخاب کنید کد پرسنلی برای فرد درخواست کننده در سیستم اختصاص خواهد یافت',
|
||||||
cancelText:'بی خیال ',
|
cancelText:'انصراف',
|
||||||
okText:'بله',
|
okText:'بله',
|
||||||
onOk() {
|
onOk() {
|
||||||
|
|
||||||
|
|||||||
+192
-11
@@ -31,7 +31,19 @@
|
|||||||
|
|
||||||
<div class="steps-content">
|
<div class="steps-content">
|
||||||
<ASpin :spinning="loading">
|
<ASpin :spinning="loading">
|
||||||
<a-form :form="formFirst">
|
|
||||||
|
|
||||||
|
|
||||||
|
<a-form :form="formFirst">
|
||||||
|
|
||||||
|
|
||||||
|
<a-form-item label="نام و نام خانوادگی">
|
||||||
|
<!--<a-input autocomplete="off" v-decorator="['name2',{initialValue: null,rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]" />-->
|
||||||
|
<a-input v-decorator="['name',{initialValue: null,rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]" class="ant-input" placeholder="Basic usage" />
|
||||||
|
<!--<input type="text" v-decorator="['name',{initialValue: null,rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]" class="ant-input" >-->
|
||||||
|
<!-- <vs-input v-decorator="['name',{initialValue: null,rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]" />-->
|
||||||
|
</a-form-item>
|
||||||
|
|
||||||
<div v-show="current==0" class="mt-4">
|
<div v-show="current==0" class="mt-4">
|
||||||
<a-button type="primary" @click="addCity()">
|
<a-button type="primary" @click="addCity()">
|
||||||
افزودن ردیف
|
افزودن ردیف
|
||||||
@@ -236,7 +248,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="md:w-1/4 md:pl-4">
|
<div class="md:w-1/4 md:pl-4">
|
||||||
<a-row >
|
<a-row >
|
||||||
<a-form-item label="نام طرف">
|
<a-form-item label="نام فرد">
|
||||||
<a-input autocomplete="off" v-decorator="['phone_emergency_name',{initialValue: null}]" >
|
<a-input autocomplete="off" v-decorator="['phone_emergency_name',{initialValue: null}]" >
|
||||||
<!--<feather-icon style="direction: ltr !important;" icon="SmartPhoneIcon" slot="addonAfter" class="pt-1" svgClasses="w-5 h-5" />-->
|
<!--<feather-icon style="direction: ltr !important;" icon="SmartPhoneIcon" slot="addonAfter" class="pt-1" svgClasses="w-5 h-5" />-->
|
||||||
</a-input>
|
</a-input>
|
||||||
@@ -270,11 +282,53 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
<a-form-item label="شماره بیمه" v-if="has_instructor == '-1' ">
|
<a-form-item label="شماره بیمه" v-if="has_instructor == '-1' ">
|
||||||
<a-input autocomplete="off" style="width: 40%" v-decorator="['insurance_no',{initialValue: null,rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]" />
|
<a-input autocomplete="off" style="width: 40%" v-decorator="['insurance_no',{initialValue: null,rules: [{ required: false, message: 'این فیلد نمیتواند خالی باشد.' }]}]" />
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
</a-card>
|
</a-card>
|
||||||
<br/>
|
<br/>
|
||||||
|
<a-card title="اطلاعات خانوادگی" :bordered="true" >
|
||||||
|
|
||||||
|
<a-list class="mb-5" v-if="family.length > 0" :locale="{emptyText:'رکوردی وجود ندارد.'}" bordered item-layout="horizontal" >
|
||||||
|
<a-list-item class="grid grid-cols-4" v-for="(item,index) in family" :key="index" >
|
||||||
|
<div>
|
||||||
|
<div style="direction: ltr" > نام :{{ item.name }}</div>
|
||||||
|
<div style="direction: rtl">نسبت : {{ item.relation }}</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div style="direction: ltr" v-if="item.edu"> مقطع :{{ item.edu.title }}</div>
|
||||||
|
<div style="direction: rtl">رشته تحصیلی : {{ item.edu_title }}</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div style="direction: rtl">شغل : {{ item.job }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<a-popconfirm
|
||||||
|
placement="right"
|
||||||
|
title="آیا می خواهید حذف کنید؟"
|
||||||
|
ok-text="بله"
|
||||||
|
cancel-text="خیر"
|
||||||
|
@confirm="removeFamily(item)"
|
||||||
|
>
|
||||||
|
<a-button type="danger" class="mr-3">حذف</a-button>
|
||||||
|
</a-popconfirm>
|
||||||
|
|
||||||
|
<a-button class="mr-3" @click="openModalFamilyModeEDit(item)">
|
||||||
|
مشاهده و ویرایش
|
||||||
|
</a-button>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</a-list-item>
|
||||||
|
</a-list>
|
||||||
|
|
||||||
|
<a-button type="dashed" icon="plus" @click="openModalFamily">
|
||||||
|
افزودن اطلاعات خانوادگی
|
||||||
|
</a-button>
|
||||||
|
|
||||||
|
</a-card>
|
||||||
|
<br/>
|
||||||
<a-card title="سوابق تحصیلی" :bordered="true" >
|
<a-card title="سوابق تحصیلی" :bordered="true" >
|
||||||
|
|
||||||
<a-list class="mb-5" v-if="edu.length > 0" :locale="{emptyText:'رکوردی وجود ندارد.'}" bordered item-layout="horizontal" >
|
<a-list class="mb-5" v-if="edu.length > 0" :locale="{emptyText:'رکوردی وجود ندارد.'}" bordered item-layout="horizontal" >
|
||||||
@@ -446,6 +500,76 @@
|
|||||||
</ASpin>
|
</ASpin>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<a-modal :visible="visibleFamily" title="اطلاعات خانوادگی" @ok="createFamily" @cancel="cancelFamily" ok-text="ایجاد" cancel-text="انصراف">
|
||||||
|
<a-form :form="formFamily">
|
||||||
|
<a-form-item label="نام">
|
||||||
|
<a-input autocomplete="off" v-decorator="['name',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="نسبت">
|
||||||
|
<a-input autocomplete="off" v-decorator="['relation',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="مقطع">
|
||||||
|
<a-select
|
||||||
|
class="mt-3"
|
||||||
|
style="width: 100%;direction: rtl !important;"
|
||||||
|
v-decorator="['level',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"
|
||||||
|
@change="changeGrade"
|
||||||
|
allowClear
|
||||||
|
>
|
||||||
|
<a-select-option v-for="item in grade" :value="item.level">
|
||||||
|
{{ item.title }}
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="رشته تحصیلی">
|
||||||
|
<a-input autocomplete="off" v-decorator="['edu_title',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="شغل">
|
||||||
|
<a-input autocomplete="off" v-decorator="['job',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
<!-- <a-form-item label="مقطع">
|
||||||
|
<a-select
|
||||||
|
class="mt-3"
|
||||||
|
style="width: 100%;direction: rtl !important;"
|
||||||
|
v-decorator="['level',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"
|
||||||
|
@change="changeGrade"
|
||||||
|
allowClear
|
||||||
|
>
|
||||||
|
<a-select-option v-for="item in grade" :value="item.level">
|
||||||
|
{{ item.title }}
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="دانشگاه">
|
||||||
|
<a-input autocomplete="off" v-decorator="['university',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="رشته تحصیلی">
|
||||||
|
<a-input autocomplete="off" v-decorator="['major',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
<a-form-item label="گرایش تحصیلی">
|
||||||
|
<a-input autocomplete="off" v-decorator="['orientation',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
|
||||||
|
<div class="md:flex">
|
||||||
|
<div class="md:w-1/2">
|
||||||
|
<a-form-item label="سال شروع">
|
||||||
|
<a-input-number autocomplete="off" :min="1350" :max="1401" v-decorator="['start',{rules: [{ required: true, message: 'لطفا مقدار سال شروع را به درستی بین 1350 تا 1401 وارد کنید.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
</div>
|
||||||
|
<div class="md:w-1/2">
|
||||||
|
<a-form-item label="سال خاتمه">
|
||||||
|
<a-input-number id="end" ref="end" autocomplete="off" :disabled="is_check" :min="1350" :max="1401" v-decorator="['end',{rules: [{ required: is_check ? false : true, message: 'لطفا مقدار سال خاتمه را به درستی بین 1350 تا 1401 وارد کنید.' }]}]"/>
|
||||||
|
</a-form-item>
|
||||||
|
</div>
|
||||||
|
<div class="md:w-1/3">
|
||||||
|
<a-form-item label="تاکنون">
|
||||||
|
<a-checkbox v-decorator="['end_now',{initialValue:false,valuePropName: 'checked'}]" @change="isChecked"/>
|
||||||
|
</a-form-item>
|
||||||
|
</div>
|
||||||
|
</div>-->
|
||||||
|
</a-form>
|
||||||
|
</a-modal>
|
||||||
|
|
||||||
<a-modal :visible="visibleEdu" title="افزودن سابقه تحصیلی" @ok="createEdu" @cancel="cancelEdu" ok-text="ایجاد" cancel-text="انصراف">
|
<a-modal :visible="visibleEdu" title="افزودن سابقه تحصیلی" @ok="createEdu" @cancel="cancelEdu" ok-text="ایجاد" cancel-text="انصراف">
|
||||||
<a-form :form="formEdu">
|
<a-form :form="formEdu">
|
||||||
<a-form-item label="مقطع">
|
<a-form-item label="مقطع">
|
||||||
@@ -492,6 +616,8 @@
|
|||||||
</a-form>
|
</a-form>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a-modal :visible="visibleEducational" title="افزودن سابقه آموزشی" @ok="createEducational" @cancel="cancelEducational" ok-text="ایجاد" cancel-text="انصراف">
|
<a-modal :visible="visibleEducational" title="افزودن سابقه آموزشی" @ok="createEducational" @cancel="cancelEducational" ok-text="ایجاد" cancel-text="انصراف">
|
||||||
<a-form :form="formEducational">
|
<a-form :form="formEducational">
|
||||||
|
|
||||||
@@ -520,7 +646,6 @@
|
|||||||
|
|
||||||
<a-modal :visible="visibleWork" title="افزودن سابقه کاری" @ok="createWork" @cancel="cancelWork" ok-text="ایجاد" cancel-text="انصراف">
|
<a-modal :visible="visibleWork" title="افزودن سابقه کاری" @ok="createWork" @cancel="cancelWork" ok-text="ایجاد" cancel-text="انصراف">
|
||||||
<a-form :form="formWork">
|
<a-form :form="formWork">
|
||||||
|
|
||||||
<a-form-item label="نام سازمان">
|
<a-form-item label="نام سازمان">
|
||||||
<a-input autocomplete="off" v-decorator="['university',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
<a-input autocomplete="off" v-decorator="['university',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
@@ -528,7 +653,7 @@
|
|||||||
<a-input autocomplete="off" v-decorator="['major',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
<a-input autocomplete="off" v-decorator="['major',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item label="دلیل خاتمه">
|
<a-form-item label="دلیل خاتمه">
|
||||||
<a-input autocomplete="off" v-decorator="['note',{rules: [{ required: true, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
<a-input autocomplete="off" v-decorator="['note',{rules: [{ required:false, message: 'این فیلد نمیتواند خالی باشد.' }]}]"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
<div class="md:flex">
|
<div class="md:flex">
|
||||||
@@ -583,12 +708,14 @@
|
|||||||
current: 0,
|
current: 0,
|
||||||
from: this.$form.createForm(this, {name: 'coordinated'}),
|
from: this.$form.createForm(this, {name: 'coordinated'}),
|
||||||
formEdu: this.$form.createForm(this, {name: 'coordinated'}),
|
formEdu: this.$form.createForm(this, {name: 'coordinated'}),
|
||||||
|
formFamily: this.$form.createForm(this, {name: 'coordinated'}),
|
||||||
formEducational: this.$form.createForm(this, {name: 'coordinated'}),
|
formEducational: this.$form.createForm(this, {name: 'coordinated'}),
|
||||||
formWork: this.$form.createForm(this, {name: 'coordinated'}),
|
formWork: this.$form.createForm(this, {name: 'coordinated'}),
|
||||||
formFirst: this.$form.createForm(this, {name: 'coordinated'}),
|
formFirst: this.$form.createForm(this, {name: 'coordinated'}),
|
||||||
city:[],
|
city:[],
|
||||||
job:[],
|
job:[],
|
||||||
edu:[],
|
edu:[],
|
||||||
|
family:[],
|
||||||
work:[],
|
work:[],
|
||||||
jobs:[{city:null,job:null}],
|
jobs:[{city:null,job:null}],
|
||||||
//model:[],
|
//model:[],
|
||||||
@@ -596,6 +723,7 @@
|
|||||||
birth_day:'',
|
birth_day:'',
|
||||||
has_instructor: '-1',
|
has_instructor: '-1',
|
||||||
visibleEdu: false,
|
visibleEdu: false,
|
||||||
|
visibleFamily: false,
|
||||||
visibleEducational: false,
|
visibleEducational: false,
|
||||||
visibleWork: false,
|
visibleWork: false,
|
||||||
visibleAccept: false,
|
visibleAccept: false,
|
||||||
@@ -631,7 +759,8 @@
|
|||||||
{
|
{
|
||||||
this.formFirst.validateFields(async(err, values) => {
|
this.formFirst.validateFields(async(err, values) => {
|
||||||
if (!err) {
|
if (!err) {
|
||||||
this.current++;
|
//this.current++;
|
||||||
|
|
||||||
console.log(values,'first')
|
console.log(values,'first')
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -645,12 +774,13 @@
|
|||||||
this.loading = true
|
this.loading = true
|
||||||
console.log(values,'values')
|
console.log(values,'values')
|
||||||
values.model = this.formFirst.getFieldsValue();
|
values.model = this.formFirst.getFieldsValue();
|
||||||
values.birth_date = this.birth_day
|
values.birth_date = this.birth_day;
|
||||||
values.work = this.work
|
values.work = this.work;
|
||||||
values.training = this.educational
|
values.training = this.educational;
|
||||||
values.academic = this.edu
|
values.academic = this.edu;
|
||||||
|
values.family= this.family;
|
||||||
await axios.post('register/save', values)
|
await axios.post('register/save', values)
|
||||||
this.$ntSet()
|
this.$ntSet();
|
||||||
// this.from.resetFields()
|
// this.from.resetFields()
|
||||||
this.current++
|
this.current++
|
||||||
}catch (e) {
|
}catch (e) {
|
||||||
@@ -694,6 +824,11 @@
|
|||||||
this.editMode = false
|
this.editMode = false
|
||||||
this.formEdu.resetFields()
|
this.formEdu.resetFields()
|
||||||
},
|
},
|
||||||
|
openModalFamily(){
|
||||||
|
this.visibleFamily = true
|
||||||
|
this.editMode = false
|
||||||
|
this.formFamily.resetFields();
|
||||||
|
},
|
||||||
openModalEducational(){
|
openModalEducational(){
|
||||||
this.visibleEducational = true
|
this.visibleEducational = true
|
||||||
this.editMode = false
|
this.editMode = false
|
||||||
@@ -704,6 +839,13 @@
|
|||||||
this.editMode = false
|
this.editMode = false
|
||||||
this.formWork.resetFields()
|
this.formWork.resetFields()
|
||||||
},
|
},
|
||||||
|
openModalFamilyModeEDit(item){
|
||||||
|
//console.log(item,'item')
|
||||||
|
this.visibleFamily = true
|
||||||
|
this.editMode = true
|
||||||
|
this.tempRow = item
|
||||||
|
this.formFamily.setFieldsValue(item)
|
||||||
|
},
|
||||||
openModalEduModeEDit(item){
|
openModalEduModeEDit(item){
|
||||||
console.log(item,'item')
|
console.log(item,'item')
|
||||||
this.visibleEdu = true
|
this.visibleEdu = true
|
||||||
@@ -726,12 +868,46 @@
|
|||||||
cancelEdu(){
|
cancelEdu(){
|
||||||
this.visibleEdu = false
|
this.visibleEdu = false
|
||||||
},
|
},
|
||||||
|
cancelFamily(){
|
||||||
|
this.visibleFamily = false
|
||||||
|
},
|
||||||
cancelEducational(){
|
cancelEducational(){
|
||||||
this.visibleEducational = false
|
this.visibleEducational = false
|
||||||
},
|
},
|
||||||
cancelWork(){
|
cancelWork(){
|
||||||
this.visibleWork = false
|
this.visibleWork = false
|
||||||
},
|
},
|
||||||
|
createFamily(e){
|
||||||
|
e.preventDefault();
|
||||||
|
this.formFamily.validateFields(async(err, values) => {
|
||||||
|
if (!err) {
|
||||||
|
try{
|
||||||
|
if(this.find_grade)
|
||||||
|
{
|
||||||
|
values.edu = this.find_grade;
|
||||||
|
values.edu_level=this.find_grade.level;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(this.editMode){
|
||||||
|
const find = this.family.findIndex(item=> item.id == this.tempRow.id)
|
||||||
|
Object.assign(this.family[find],values);
|
||||||
|
this.visibleFamily = false;
|
||||||
|
}else{
|
||||||
|
values.id = this.id
|
||||||
|
this.family.push(values)
|
||||||
|
this.id +=1
|
||||||
|
this.formFamily.resetFields()
|
||||||
|
this.visibleFamily = false
|
||||||
|
}
|
||||||
|
}catch (e) {
|
||||||
|
this.$ntSetError()
|
||||||
|
throw e
|
||||||
|
}finally {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
createEdu(e){
|
createEdu(e){
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
this.formEdu.validateFields(async(err, values) => {
|
this.formEdu.validateFields(async(err, values) => {
|
||||||
@@ -815,6 +991,11 @@
|
|||||||
this.is_work_check = e.target.checked
|
this.is_work_check = e.target.checked
|
||||||
if(this.is_work_check) this.formWork.resetFields('end')
|
if(this.is_work_check) this.formWork.resetFields('end')
|
||||||
},
|
},
|
||||||
|
removeFamily(item){
|
||||||
|
console.log(item);
|
||||||
|
const index = this.family.indexOf(item)
|
||||||
|
this.family.splice(index,1)
|
||||||
|
},
|
||||||
removeEdu(item){
|
removeEdu(item){
|
||||||
const index = this.edu.indexOf(item)
|
const index = this.edu.indexOf(item)
|
||||||
this.edu.splice(index,1)
|
this.edu.splice(index,1)
|
||||||
|
|||||||
Reference in New Issue
Block a user