update 1399-12-24

This commit is contained in:
AliGhasami
2021-03-14 09:40:47 +03:30
parent eea2705893
commit 1692a9973e
27 changed files with 2283 additions and 1124 deletions
+139 -122
View File
@@ -35,7 +35,6 @@
</x-table>
<a-modal :width="1000" v-model="showMosahebeModal" title="مشاهده مصاحبه ها" >
<div v-if="is_skeleton">
<ASkeleton/>
</div>
@@ -56,12 +55,12 @@
{{ item.interviewer }}
</a-descriptions-item>
<a-descriptions-item label="وضعیت">
{{ item.type }}
{{ item.sts_str }}
</a-descriptions-item>
</a-descriptions>
<a-card title="جزییات">
<a-list>
<a-list-item v-for="element,index in item.result" :key="index" v-if="item.result">
<a-card title="جزییات" >
<a-list >
<a-list-item v-for="element,index in item.result" :key="index" v-if="item.result" style="direction: rtl">
<div class="flex w-full flex-col">
<div class="flex justify-between w-full items-center">
<h3>{{title_interview[index]}}</h3>
@@ -86,7 +85,6 @@
</div>
</div>
<template slot="footer">
<a-button key="back" @click="showMosahebeModal=false">
بستن
@@ -96,27 +94,22 @@
</a-modal>
<a-modal force-render :width="990" v-model="showAddMosahebeModal" title="ثبت مصاحبه">
<template slot="footer">
<a-button v-if="current < 2" type="primary" @click="savefromMosahebe">
بعدی
</a-button>
<a-button
v-if="current == 2"
type="primary"
@click="savefromMosahebe"
>
@click="savefromMosahebe">
ثبت اطلاعات
</a-button>
<a-button v-if="current > 0" style="margin-left: 8px" @click="prev">
قبلی
</a-button>
</template>
<div>
<a-steps :current="current" style="direction: ltr">
<a-steps :current="current" style="direction:rtl">
<a-step title="ثبت تاریخ و مصاحبه کننده" />
<a-step title="ثبت جزئیات" />
<a-step title="ایجاد پرونده" />
@@ -139,13 +132,13 @@
</a-form-item>
<date-picker
:auto-submit="true"
color="#4f72ab"
color="#1DA57A"
v-model="interview_at"
element="interview_at"
/>
</div>
<a-form-item label="نام مصاحبه کننده">
<a-input autocomplete="off" v-decorator="['interviewer',{rules: [{ required: true, message: 'وارد کردن شغل الزامی است' }]}]"/>
<input class="ant-input" autocomplete="off" v-decorator="['interviewer',{rules: [{ required: true, message: 'نام مصاحبه کننده را وارد نمایید' }]}]"/>
</a-form-item>
</div>
</a-card>
@@ -162,14 +155,14 @@
</a-form-item>
<a-form-item label="توضیحات">
<a-textarea
<textarea class="ant-input"
placeholder=""
v-decorator="['result_1.desc']"
:auto-size="{ minRows: 2, maxRows: 6 }"
/>
</a-form-item>
<a-form-item label="نتیجه">
<!--<a-form-item label="نتیجه">
<a-radio-group v-decorator="['result_1.sts']">
<a-radio :value="-1">
رد شده
@@ -179,7 +172,7 @@
</a-radio>
</a-radio-group>
</a-form-item>
</a-form-item>-->
</a-card>
<br/>
@@ -190,14 +183,14 @@
</a-form-item>
<a-form-item label="توضیحات">
<a-textarea
<textarea class="ant-input"
placeholder=""
v-decorator="['result_2.desc']"
:auto-size="{ minRows: 2, maxRows: 6 }"
/>
</a-form-item>
<a-form-item label="نتیجه">
<!-- <a-form-item label="نتیجه">
<a-radio-group v-decorator="['result_2.sts']">
<a-radio :value="-1">
رد شده
@@ -207,7 +200,7 @@
</a-radio>
</a-radio-group>
</a-form-item>
</a-form-item>-->
</a-card>
<br/>
@@ -219,7 +212,8 @@
<a-form-item label="توضیحات">
<a-textarea
<textarea
class="ant-input"
placeholder=""
v-decorator="['result_3.desc']"
:auto-size="{ minRows: 2, maxRows: 6 }"
@@ -227,7 +221,7 @@
</a-form-item>
<a-form-item label="نتیجه">
<!-- <a-form-item label="نتیجه">
<a-radio-group v-decorator="['result_3.sts']">
<a-radio :value="-1">
رد شده
@@ -237,7 +231,7 @@
</a-radio>
</a-radio-group>
</a-form-item>
</a-form-item>-->
</a-card>
<br/>
@@ -249,14 +243,14 @@
<a-form-item label="توضیحات">
<a-textarea
<textarea class="ant-input"
placeholder=""
v-decorator="['result_4.desc']"
:auto-size="{ minRows: 2, maxRows: 6 }"
/>
</a-form-item>
<!--
<a-form-item label="نتیجه">
<a-radio-group v-decorator="['result_4.sts']">
<a-radio :value="-1">
@@ -267,7 +261,7 @@
</a-radio>
</a-radio-group>
</a-form-item>
</a-form-item>-->
</a-card>
<br/>
@@ -279,7 +273,7 @@
<a-form-item label="توضیحات">
<a-textarea
<textarea class="ant-input"
placeholder=""
v-decorator="['result_5.desc']"
:auto-size="{ minRows: 2, maxRows: 6 }"
@@ -287,7 +281,7 @@
</a-form-item>
<a-form-item label="نتیجه">
<!-- <a-form-item label="نتیجه">
<a-radio-group v-decorator="['result_5.sts']">
<a-radio :value="-1">
رد شده
@@ -297,25 +291,27 @@
</a-radio>
</a-radio-group>
</a-form-item>
</a-form-item>-->
</a-card>
</div>
<div v-show="current==2">
<a-form-item label="نتیجه کلی مصاحبه">
<a-radio-group v-decorator="['sts']">
<a-radio-group v-decorator="['sts',{rules: [{ required: true, message: 'نتیجه مصاحبه را انتخاب نمایید' }]}]">
<a-radio :value="-1">
رد شده
</a-radio>
<a-radio :value="1">
قبول
</a-radio>
<a-radio :value="2">
الویت دوم
</a-radio>
</a-radio-group>
</a-form-item>
<a-alert message="توجه داشته باشید که در صورت قبول انتخاب کردن نتیجه کلی مصاحبه برای فرد مورد نظر کد پرسنلی ایجاد خواهد شد." type="warning" />
<!-- <a-alert message="توجه داشته باشید که در صورت قبول انتخاب کردن نتیجه کلی مصاحبه برای فرد مورد نظر کد پرسنلی ایجاد خواهد شد." type="warning" />-->
</div>
@@ -345,72 +341,80 @@
<div>شغل متقاضی : {{ personalInformation.job_title }}</div>
<div>نام پدر : {{ personalInformation.father_name }}</div>
<div>تاریخ تولد : {{ personalInformation.birth_date }}</div>
<div>جنسیت : {{ personalInformation.gender }}</div>
<div>وضعیت تاهل : {{personalInformation.marriage_sts }}</div>
<div>جنسیت : {{ personalInformation.gender_str }}</div>
<div>وضعیت تاهل : {{personalInformation.marriage_sts_str }}</div>
<div>شماره شناسنامه : {{ personalInformation.iden_id }}</div>
<div>سریال شناسنامه : {{ personalInformation.iden_serial }}</div>
<div>محل صدور : {{ personalInformation.iden_place }}</div>
<div>محل تولد : {{ personalInformation.birth_place }}</div>
<div>وضعیت مسکن : {{ personalInformation.record }}</div>
<div>آدرس : {{ personalInformation.address }}</div>
<div>وضعیت مسکن : {{ personalInformation.house_sts_str }}</div>
<div>ایمیل : {{ personalInformation.email }}</div>
<div>تلفن ثابت : {{ personalInformation.phone }}</div>
<div>شماره بیمه : {{ personalInformation.name }}</div>
<div>شماره بیمه : {{ personalInformation.insurance_no }}</div>
<div>تلفن ضروری : {{ personalInformation.phone_emergency }}</div>
<div>نام فرد مرتبط : {{ personalInformation.phone_emergency_related }}</div>
<div>نسبت فرد : </div>
<div>نام فرد مرتبط : {{ personalInformation.phone_emergency_name }}</div>
<div>نسبت فرد : {{ personalInformation.phone_emergency_related }}</div>
<div>حقوق درخواستی : {{ personalInformation.requested_salary }}</div>
<div class="col-span-2">شماره حساب بانک پاسارگاد : {{ personalInformation.pasargad_bank_number }}</div>
<div class="col-span-3">آدرس : {{ personalInformation.address }}</div>
</div>
</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/>
<a-card title="اطلاعات تحصیلی" :bordered="true" >
<div class="grid grid-cols-3 gap-4" v-if="personalDetails.pro && personalDetails.pro[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>
<a-card title="اطلاعات خانوادگی" :bordered="true" >
<template v-for="(item,index) in personalDetails['family']" >
<div class="grid grid-cols-3 gap-1" >
<div>نام : {{ item.name }}</div>
<div>نسبت : {{ item.relation }}</div>
<div>مقطع : {{ item.edu_level_str }}</div>
<div> رشته تحصیلی : {{ item.edu_title }}</div>
<div> شغل : {{ item.job }}</div>
</div>
<a-divider />
</template>
</a-card>
<br/>
<a-card title="اطلاعات تحصیلی" :bordered="true" >
<template v-for="(item,index) in personalDetails['education']">
<div class="grid grid-cols-3 gap-4" >
<div>مقطع : {{ item.level_str }}</div>
<div>دانشگاه : {{ item.university }}</div>
<div>رشته تحصیلی: {{ item.title }}</div>
<div>گرایش: {{ item.trend }}</div>
<div>سال شروع: {{ item.start_at }}</div>
<div>سال خاتمه: {{ item.end_at }}</div>
</div>
<a-divider />
</template>
</a-card>
<br/>
<a-card title="سوابق آموزشی" :bordered="true" >
<template v-for="(item,index) in personalDetails['traning']">
<div class="grid grid-cols-3 gap-4">
<div>مرکز برگزاری : {{ item.university }}</div>
<div>عنوان دوره : {{ item.title }}</div>
<div>سال : {{ item.start_at }}</div>
<div>امکان ارائه گواهینامه : {{ item.has_certificate_str }}</div>
</div>
<a-divider />
</template>
</a-card>
<br/>
<!-- <a-card title="سوابق آموزشی" :bordered="true" >
<div class="grid grid-cols-3 gap-4" v-if="personalDetails.pro[1]">
<div>مرکز برگزاری : {{ personalDetails.pro[1].university }}</div>
<div>عنوان دوره : {{ personalDetails.pro[1].title }}</div>
<div>سال : {{ personalDetails.pro[1].start_at }}</div>
<a-card title="سوابق کاری" :bordered="true" >
<template v-for="(item,index) in personalDetails['jobs_history']">
<div class="grid grid-cols-4 gap-4" >
<div>نام سازمان : {{ item.university }}</div>
<div>عنوان شغل : {{ item.title }}</div>
<div>سال شروع : {{ item.start_at }}</div>
<div v-if="item.end_at">سال خاتمه : {{ item.end_at }}</div>
<div v-else>سال خاتمه : تاکنون</div>
<!--<div>تاکنون : {{ item.end_at }}</div>-->
<div class="col-span-2">دلیل خاتمه : {{ item.note }}</div>
</div>
</a-card>-->
<br/>
<!--<a-card title="سوابق کاری" :bordered="true" >
<div class="grid grid-cols-3 gap-4" v-if="personalDetails.pro[2]">
<div>نام سازمان : {{ personalDetails.pro[2].university }}</div>
<div>عنوان شغل : {{ personalDetails.pro[2].title }}</div>
<div>سال شروع : {{ personalDetails.pro[2].start_at }}</div>
<div>سال خاتمه : {{ personalDetails.pro[2].end_at }}</div>
</div>
</a-card>-->
<a-divider />
</template>
</a-card>
</a-modal>
</a-card>
</div>
</template>
@@ -470,35 +474,35 @@
savefromMosahebe(e) {
e.preventDefault();
this.fromMosahebe.validateFields(async(err, values) => {
if (!err) {
try{
if(this.current < 2)
{
this.next();
}
else
{
console.log(values,'values')
const id = this.row_id
values.interview_at = this.interview_at
values.id = id
await axios.post('proposal/update',values)
this.showAddMosahebeModal = false
this.$ntSet('اطلاعات با موفقیت کامل شد')
this.fromMosahebe.resetFields()
}
}catch (e) {
this.$ntSetError()
throw e
}finally {
}
try{
if(this.current < 2)
{
this.next();
}
else
{
if (!err) {
console.log(values,'values')
const id = this.row_id
values.interview_at = this.interview_at
values.id = id
await axios.post('proposal/update',values)
this.showAddMosahebeModal = false
this.current=0;
//this.fromMosahebe.resetFields();
this.$ntSet('اطلاعات با موفقیت کامل شد')
this.fromMosahebe.resetFields();
}
}
}catch (e) {
this.$ntSetError()
throw e
}finally {
}
});
},
interview(e) {
/* interview(e) {
e.preventDefault();
this.fromMosahebe.validateFields(async (err, values) => {
if (!err) {
@@ -513,7 +517,7 @@
}
}
});
},
},*/
next() {
this.current++;
},
@@ -521,11 +525,12 @@
this.current--;
},
showDetails(record) {
console.log('aaaaa',record);
axios.post('/proposal/details', {id:record.id})
.then((res)=>{
this.personalInformation=record;
this.personalDetails=res.data;
console.log(this.personalDetails);
// console.log(this.personalDetails);
this.showInformationModal=true;
}).catch((error)=>{
this.$message.error('خطا در دریافت اطلاعات');
@@ -535,9 +540,9 @@
let self = this
this.$confirm({
title: 'آیا مطمئن به استخدام هستید ؟',
content: 'در صورتی که گزینه بله را انتخاب کنید کد پرسنلی برای فرد درخواست کننده در سیستم اختصاص خواهد یافت',
content: 'در صورتی که گزینه تایید را انتخاب نمایید فرد مورد نظر به عنوان پرسنل در سیستم ثبت می شود ',
cancelText:'انصراف',
okText:'بله',
okText:'تایید',
onOk() {
// this.$message.success('درخواست شما ثبت شد.');
@@ -555,7 +560,7 @@
}
},
onCancel() {
console.log('Cancel');
//console.log('Cancel');
},
//class: 'test',
});
@@ -570,13 +575,25 @@
</script>
<style>
.ant-modal-mask
{
z-index: 9999999 !important;
}
.ant-modal-wrap
{
z-index: 999999999 !important;
}
.ant-modal-mask
{
z-index: 9999999 !important;
}
.ant-modal-wrap
{
z-index: 999999999 !important;
}
ant-modal-title{
margin-right: 1rem;
}
.ant-steps-item-title::after{
/*left: unset !important;*/
right:100% !important;
}
/*.ant-modal-close
{
left: 0 !important;
}*/
</style>