This commit is contained in:
王创世 2025-02-20 15:37:25 +08:00
parent 3ef4949d6d
commit 31a9d5ba98
3 changed files with 652 additions and 426 deletions

View File

@ -4,7 +4,7 @@
<div style="padding: 20px; margin-top: 20px">
<div>
<div>
<div style="color: #2E2E2E;font-size: 30px;">1.入会资料</div>
<div style="color: #2e2e2e; font-size: 30px">1.入会资料</div>
<div style="height: 2px; background-color: #999999; width: 100%; margin-top: 20px"></div>
<div style="padding: 30px 0px">
<t-form layout="inline" labelAlign="top" :labelWidth="100">
@ -28,7 +28,12 @@
<template v-if="formData.reporting_method == 1">
<t-form-item name="name" label="推荐地市">
<t-select size="large" v-model="formData.recommended_cities" placeholder="请选择推荐地市">
<t-option v-for="item in region_list" :value="item.label" :label="item.label" :key="item.label"></t-option>
<t-option
v-for="item in region_list"
:value="item.label"
:label="item.label"
:key="item.label"
></t-option>
</t-select>
</t-form-item>
</template>
@ -37,11 +42,19 @@
<t-input size="large" v-model="formData.recommendation_id" placeholder="推荐人姓名" />
</t-form-item>
<t-form-item label="推荐人单位名称及职务">
<t-input size="large" v-model="formData.recommendation_content" placeholder="推荐人单位名称及职务"/>
<t-input
size="large"
v-model="formData.recommendation_content"
placeholder="推荐人单位名称及职务"
/>
</t-form-item>
</template>
<t-form-item label="意向协会职务">
<t-select size="large" v-model="formData.intentional_association_position" :style="{ width: '200px' }">
<t-select
size="large"
v-model="formData.intentional_association_position"
:style="{ width: '200px' }"
>
<t-option key="会员" label="会员" value="会员"></t-option>
<t-option key="理事" label="理事" value="理事"></t-option>
<t-option key="常务理事" label="常务理事" value="常务理事"></t-option>
@ -51,18 +64,37 @@
</div>
</div>
<div style="margin-top: 20px">
<div style="color: #2E2E2E;font-size: 30px;">2.基本信息</div>
<div style="color: #2e2e2e; font-size: 30px">2.基本信息</div>
<div style="height: 2px; background-color: #999999; width: 100%; margin-top: 20px"></div>
<div style="display: flex; justify-items: center; padding: 30px 0px">
<div style="width: 50%">
<div>证件照</div>
<div style="height: 1px; background-color: #999999; width: 100%; margin-top: 10px"></div>
<div class="t-upload" @click="openCai" style="margin-top: 20px;">
<div style="cursor: pointer;text-align: center;width: 200px;height: 200px;line-height: 200px;border: 1px dashed #999999;">
<img :src="$store.state.user.apiUrl+formData.photo_image" style="width: 200px;display: block"
v-if="formData.photo_image!=''&&formData.photo_image!=null">
<svg style=" font-size: 35px;" fill="none" viewBox="0 0 24 24" width="100px" height="100px" class="t-icon t-icon-add"
v-if="formData.photo_image==''||formData.photo_image==null">
<div class="t-upload" @click="openCai" style="margin-top: 20px">
<div
style="
cursor: pointer;
text-align: center;
width: 200px;
height: 200px;
line-height: 200px;
border: 1px dashed #999999;
"
>
<img
:src="$store.state.user.apiUrl + formData.photo_image"
style="width: 200px; display: block"
v-if="formData.photo_image != '' && formData.photo_image != null"
/>
<svg
style="font-size: 35px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
v-if="formData.photo_image == '' || formData.photo_image == null"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg>
</div>
@ -82,8 +114,18 @@
</t-select>
</t-form-item>
<t-form-item label="协会职务">
<t-select size="large" v-model="formData.position_id" placeholder="请选择协会职务" :style="{ width: '200px' }">
<t-option v-for="item in plan_list" :value="item.id" :label="item.position_name" :key="item.id"></t-option>
<t-select
size="large"
v-model="formData.position_id"
placeholder="请选择协会职务"
:style="{ width: '200px' }"
>
<t-option
v-for="item in plan_list"
:value="item.id"
:label="item.position_name"
:key="item.id"
></t-option>
</t-select>
</t-form-item>
<t-form-item label="出生年月日">
@ -93,7 +135,12 @@
<t-input size="large" v-model="formData.nation" placeholder="请输入民族" />
</t-form-item>
<t-form-item label="政治面貌">
<t-select size="large" v-model="formData.political" placeholder="请选择政治面貌" :style="{ width: '200px' }">
<t-select
size="large"
v-model="formData.political"
placeholder="请选择政治面貌"
:style="{ width: '200px' }"
>
<t-option value="中共党员" label="中共党员" key="中共党员"></t-option>
<t-option value="中共预备党员" label="中共预备党员" key="中共预备党员"></t-option>
<t-option value="共青团员" label="共青团员" key="共青团员"></t-option>
@ -128,7 +175,12 @@
<t-input size="large" v-model="formData.institution" placeholder="请输入毕业院校" />
</t-form-item>
<t-form-item label="学历">
<t-select size="large" v-model="formData.education" placeholder="请选择学历" :style="{ width: '200px' }">
<t-select
size="large"
v-model="formData.education"
placeholder="请选择学历"
:style="{ width: '200px' }"
>
<t-option value="博士研究生" label="博士研究生" key="博士研究生"></t-option>
<t-option value="硕士研究生" label="硕士研究生" key="硕士研究生"></t-option>
<t-option value="本科" label="本科" key="本科"></t-option>
@ -137,7 +189,12 @@
</t-select>
</t-form-item>
<t-form-item label="学位">
<t-select size="large" v-model="formData.academic_degree" placeholder="请选择学位" :style="{ width: '200px' }">
<t-select
size="large"
v-model="formData.academic_degree"
placeholder="请选择学位"
:style="{ width: '200px' }"
>
<t-option value="博士" label="博士" key="博士"></t-option>
<t-option value="硕士" label="硕士" key="硕士"></t-option>
<t-option value="学士" label="学士" key="学士"></t-option>
@ -160,7 +217,12 @@
<t-input size="large" v-model="formData.fixed_telephone" placeholder="请输入固定电话" />
</t-form-item>
<t-form-item label="所在区域" name="region_id">
<t-cascader size="large" v-model="formData.region_id" :options="region_list" :style="{ width: '200px' }"></t-cascader>
<t-cascader
size="large"
v-model="formData.region_id"
:options="region_list"
:style="{ width: '200px' }"
></t-cascader>
</t-form-item>
</t-form>
</t-space>
@ -172,14 +234,24 @@
<div style="display: flex; justify-items: center; padding: 30px 0px">
<div style="text-align: center">
<div class="sfz">
<span v-if="formData.cardz_image==''||formData.cardz_image==null"><svg style=" font-size: 30px;" fill="none" viewBox="0 0 24 24" width="100px" height="100px" class="t-icon t-icon-add"
<span v-if="formData.cardz_image == '' || formData.cardz_image == null"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.cardz_image!=''&&formData.cardz_image!=null" :src="$store.state.user.apiUrl+formData.cardz_image"
style="width: 100%;max-height: 200px;">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.cardz_image != '' && formData.cardz_image != null"
:src="$store.state.user.apiUrl + formData.cardz_image"
style="width: 100%; max-height: 200px"
/>
</div>
<div style="margin: 10px 0px;">请上传身份证正面照片</div>
<div style="margin: 10px 0px">请上传身份证正面照片</div>
<t-upload
:action="$store.state.user.apiUrl + '/api/common/upload'"
v-model="formData.cardz_image_show"
@ -193,14 +265,24 @@
</div>
<div style="margin-left: 100px; text-align: center">
<div class="sfz">
<span v-if="formData.cardf_image==''||formData.cardf_image==null"><svg style=" font-size: 30px;" fill="none" viewBox="0 0 24 24" width="100px" height="100px" class="t-icon t-icon-add"
<span v-if="formData.cardf_image == '' || formData.cardf_image == null"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.cardf_image!=''&&formData.cardf_image!=null" :src="$store.state.user.apiUrl+formData.cardf_image"
style="width: 100%;max-height: 200px;">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.cardf_image != '' && formData.cardf_image != null"
:src="$store.state.user.apiUrl + formData.cardf_image"
style="width: 100%; max-height: 200px"
/>
</div>
<div style="margin: 10px 0px;">请上传身份证背面照片</div>
<div style="margin: 10px 0px">请上传身份证背面照片</div>
<t-upload
:action="$store.state.user.apiUrl + '/api/common/upload'"
v-model="formData.cardf_image_show"
@ -218,8 +300,8 @@
<div style="width: 49%">
<div>个人简介</div>
<div style="height: 1px; background-color: #999999; width: 100%; margin-top: 10px"></div>
<div style="margin-top: 20px;">
<div style="border: 1px solid #ccc;">
<div style="margin-top: 20px">
<div style="border: 1px solid #ccc">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -242,8 +324,8 @@
<div style="width: 49%">
<div>主要成就以及获奖情况</div>
<div style="height: 1px; background-color: #999999; width: 100%; margin-top: 10px"></div>
<div style="margin-top: 20px;">
<div style="border: 1px solid #ccc;">
<div style="margin-top: 20px">
<div style="border: 1px solid #ccc">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -285,7 +367,7 @@
</t-space>
</div>
<div style="width: 100%">
<table style=";width: 100%; border-collapse: collapse;">
<table style="width: 100%; border-collapse: collapse">
<tr align="center">
<th>起止日期</th>
<th>地区单位</th>
@ -331,9 +413,12 @@
<div style="width: 100%">
<div style="width: 49%">
<div>其他社会职务</div>
<div style="margin-top: 20px;">
<t-textarea placeholder="其他社会职务" :autosize="{ minRows: 7, maxRows: 7 }"
v-model="formData.other_social_positions"/>
<div style="margin-top: 20px">
<t-textarea
placeholder="其他社会职务"
:autosize="{ minRows: 7, maxRows: 7 }"
v-model="formData.other_social_positions"
/>
</div>
</div>
</div>
@ -358,7 +443,7 @@
</t-space>
</div>
<div style="width: 100%">
<table style="width: 100%; border-collapse: collapse;">
<table style="width: 100%; border-collapse: collapse">
<thead>
<tr align="center">
<th>姓名</th>
@ -381,7 +466,7 @@
</div>
</div>
<div style="margin-top: 30px">
<div style="color: #2E2E2E;font-size: 30px;">3.企业信息</div>
<div style="color: #2e2e2e; font-size: 30px">3.企业信息</div>
<div style="height: 2px; background-color: #999999; width: 100%; margin-top: 20px"></div>
<div style="display: flex; justify-items: center; padding: 30px 0px">
<div style="width: 100%">
@ -416,8 +501,11 @@
</t-form-item>
<t-form-item label="所属行业" name="name">
<t-select size="large" v-model="formData.industry_id" :style="{ width: '200px' }">
<t-option v-for="(item,index) in industry_list" :label="item.industry_name"
:value="item.id"></t-option>
<t-option
v-for="(item, index) in industry_list"
:label="item.industry_name"
:value="item.id"
></t-option>
</t-select>
</t-form-item>
<t-form-item label="企业网址">
@ -444,7 +532,11 @@
<t-input size="large" v-model="formData.previous_profit" placeholder="上年度净利润(万元)" />
</t-form-item>
<t-form-item label="上年公益性捐赠支出(万元)">
<t-input size="large" v-model="formData.previous_donation" placeholder="上年公益性捐赠支出(万元)"/>
<t-input
size="large"
v-model="formData.previous_donation"
placeholder="上年公益性捐赠支出(万元)"
/>
</t-form-item>
</t-form>
</t-space>
@ -456,13 +548,22 @@
<div style="display: flex; justify-items: center; padding: 30px 0px">
<div style="text-align: center">
<div class="sfz">
<span v-if="formData.business_license_image==''||formData.business_license_image==null"><svg style=" font-size: 30px;" fill="none" viewBox="0 0 24 24" width="100px" height="100px" class="t-icon t-icon-add"
<span v-if="formData.business_license_image == '' || formData.business_license_image == null"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.business_license_image!=''&&formData.business_license_image!=null"
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.business_license_image != '' && formData.business_license_image != null"
:src="$store.state.user.apiUrl + formData.business_license_image"
style="width: 100%;max-height: 200px;">
style="width: 100%; max-height: 200px"
/>
</div>
<div style="margin: 10px 0px">请上传营业执照</div>
<t-upload
@ -478,12 +579,22 @@
</div>
<div style="margin-left: 100px; text-align: center">
<div class="sfz">
<span v-if="formData.company_image==''||formData.company_image==null"><svg style=" font-size: 30px;" fill="none" viewBox="0 0 24 24" width="100px" height="100px" class="t-icon t-icon-add"
<span v-if="formData.company_image == '' || formData.company_image == null"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.company_image!=''&&formData.company_image!=null" :src="$store.state.user.apiUrl+formData.company_image"
style="width: 200px;max-height: 200px;">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.company_image != '' && formData.company_image != null"
:src="$store.state.user.apiUrl + formData.company_image"
style="width: 200px; max-height: 200px"
/>
</div>
<div style="margin: 10px 0px">请上传公司LOGO</div>
<t-upload
@ -503,8 +614,8 @@
<div style="width: 49%">
<div>公司介绍</div>
<div style="height: 1px; background-color: #999999; width: 100%; margin-top: 10px"></div>
<div style="margin-top: 20px;">
<div style="border: 1px solid #ccc;">
<div style="margin-top: 20px">
<div style="border: 1px solid #ccc">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -527,8 +638,8 @@
<div style="width: 49%">
<div>主营业务介绍</div>
<div style="height: 1px; background-color: #999999; width: 100%; margin-top: 10px"></div>
<div style="margin-top: 20px;">
<div style="border: 1px solid #ccc;">
<div style="margin-top: 20px">
<div style="border: 1px solid #ccc">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -553,8 +664,8 @@
<div style="width: 49%">
<div>企业所获荣誉以及专利</div>
<div style="height: 1px; background-color: #999999; width: 100%; margin-top: 10px"></div>
<div style="margin-top: 20px;">
<div style="border: 1px solid #ccc;">
<div style="margin-top: 20px">
<div style="border: 1px solid #ccc">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -577,8 +688,8 @@
<div style="width: 49%">
<div>其他企业任职情况</div>
<div style="height: 1px; background-color: #999999; width: 100%; margin-top: 10px"></div>
<div style="margin-top: 20px;">
<div style="border: 1px solid #ccc;">
<div style="margin-top: 20px">
<div style="border: 1px solid #ccc">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -603,8 +714,8 @@
<div style="width: 49%">
<div>企业履行社会责任情况</div>
<div style="height: 1px; background-color: #999999; width: 100%; margin-top: 10px"></div>
<div style="margin-top: 20px;">
<div style="border: 1px solid #ccc;">
<div style="margin-top: 20px">
<div style="border: 1px solid #ccc">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -627,7 +738,7 @@
</div>
</div>
<div style="margin-top: 30px">
<div style="color: #2E2E2E;font-size: 30px;">4.建团信息</div>
<div style="color: #2e2e2e; font-size: 30px">4.建团信息</div>
<div style="height: 2px; background-color: #999999; width: 100%; margin-top: 20px"></div>
<div style="padding: 30px 0px">
<t-space direction="vertical">
@ -642,11 +753,14 @@
<div v-if="formData.if_organization == 0">
<div style="display: flex">
<div>
<t-form labelAlign="top"
layout="inline">
<t-form labelAlign="top" layout="inline">
<t-form-item label="团组织性质" name="nature">
<t-select size="large" v-model="formData.nature" placeholder="团组织性质"
:style="{ width: '200px' }">
<t-select
size="large"
v-model="formData.nature"
placeholder="团组织性质"
:style="{ width: '200px' }"
>
<t-option value="团支部" label="团支部" key="团支部"></t-option>
<t-option value="团总支部" label="团总支部" key="团总支部"></t-option>
<t-option value="团的基层委员会" label="团的基层委员会" key="团的基层委员会"></t-option>
@ -663,8 +777,7 @@
<!-- <t-input size="large" v-model="formData.tuanweifuzerenxinxi" placeholder="团委负责人信息"></t-input>-->
<!-- </t-form-item>-->
</t-form>
<t-form labelAlign="top"
layout="inline" style="margin-top: 10px">
<t-form labelAlign="top" layout="inline" style="margin-top: 10px">
<t-form-item label="青年人数" name="youth_number">
<t-input size="large" v-model="formData.youth_number" placeholder="青年人数"></t-input>
</t-form-item>
@ -676,15 +789,22 @@
<div>
<div style="text-align: center">
<div class="sfz">
<span v-if="formData.documents_file==''||formData.documents_file==null"><svg style=" font-size: 30px;" fill="none"
viewBox="0 0 24 24" width="100px" height="100px"
<span v-if="formData.documents_file == '' || formData.documents_file == null"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.documents_file!=''&&formData.documents_file!=null"
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.documents_file != '' && formData.documents_file != null"
:src="$store.state.user.apiUrl + formData.documents_file"
style="width: 100%;max-height: 200px;">
style="width: 100%; max-height: 200px"
/>
</div>
<div style="margin: 10px 0px">请上传批复文件</div>
<t-upload
@ -727,7 +847,7 @@
</t-space>
</div>
<div style="width: 100%">
<table style="width: 100%; border-collapse: collapse;">
<table style="width: 100%; border-collapse: collapse">
<thead>
<tr align="center">
<th>姓名</th>
@ -782,18 +902,25 @@
:fixedNumber="[1, 1]"
></vue-cropper>
</div>
<div class="show-preview"
:style="{'width': previews.w + 'px', 'height': previews.h + 'px', 'overflow': 'hidden', 'margin': '5px'}">
<div
class="show-preview"
:style="{ width: previews.w + 'px', height: previews.h + 'px', overflow: 'hidden', margin: '5px' }"
>
<div :style="previews.div" class="preview">
<img :src="previews.url" :style="previews.img">
<img :src="previews.url" :style="previews.img" />
</div>
</div>
</div>
<div class="footer-btn">
<div class="scope-btn">
<label class="btn" for="uploads">上传图片</label>
<input type="file" id="uploads" style="position:absolute; clip:rect(0 0 0 0);"
accept="image/png, image/jpeg, image/gif, image/jpg" @change="uploadImg($event, 1)">
<input
type="file"
id="uploads"
style="position: absolute; clip: rect(0 0 0 0)"
accept="image/png, image/jpeg, image/gif, image/jpg"
@change="uploadImg($event, 1)"
/>
</div>
</div>
</t-dialog>
@ -814,7 +941,8 @@ export default {
CheckCircleIcon,
UserIcon,
LockOnIcon,
Editor, Toolbar
Editor,
Toolbar,
},
data() {
return {
@ -838,7 +966,7 @@ export default {
'insertLink', //
'insertTable', //
'codeBlock', //
]
],
},
editorConfig: {
placeholder: '',
@ -949,11 +1077,11 @@ export default {
info: '',
plan_list: [],
region_list: [],
industry_list: []
industry_list: [],
};
},
mounted() {
if (typeof (store.state.user.association) === 'object') {
if (typeof store.state.user.association === 'object') {
this.association = store.state.user.association;
} else {
this.association = JSON.parse(store.state.user.association);
@ -1053,20 +1181,21 @@ export default {
this.contactsList.splice(index, 1);
},
onSubmit() {
this.$refs.cropper.getCropBlob(data => {
this.$refs.cropper.getCropBlob((data) => {
// do something
console.log(data)
console.log(data);
console.log(this.caiImg);
const formData = new FormData();
formData.append('file', data, 'image.jpg');
formData.append('association_id', this.association.association_id);
console.log(formData);
axios.post(`${store.state.user.apiUrl}/api/common/upload`, formData, {
axios
.post(`${store.state.user.apiUrl}/api/common/upload`, formData, {
headers: {
'Content-Type': 'multipart/form-data'
}
'Content-Type': 'multipart/form-data',
},
})
.then(response => {
.then((response) => {
console.log(response);
const { data } = response;
if (data.code == 1) {
@ -1080,10 +1209,10 @@ export default {
this.$message.error('图片上传失败!');
}
})
.catch(error => {
.catch((error) => {
console.error('文件上传失败', error);
});
})
});
},
onCloseMy() {
this.caiMode = false;
@ -1093,39 +1222,39 @@ export default {
this.caiMode = true;
},
realTime(data) {
this.previews = data
this.previews = data;
},
uploadImg(e, num) {
//
// this.option.img
const file = e.target.files[0]
const file = e.target.files[0];
if (!/\.(gif|jpg|jpeg|png|bmp|GIF|JPG|PNG)$/.test(e.target.value)) {
alert('图片类型必须是.gif,jpeg,jpg,png,bmp中的一种')
return false
alert('图片类型必须是.gif,jpeg,jpg,png,bmp中的一种');
return false;
}
const reader = new FileReader()
const reader = new FileReader();
reader.onload = (e) => {
let data
let data;
if (typeof e.target.result === 'object') {
// Array Bufferblob base64
data = window.URL.createObjectURL(new Blob([e.target.result]))
data = window.URL.createObjectURL(new Blob([e.target.result]));
} else {
data = e.target.result
data = e.target.result;
}
if (num === 1) {
this.caiImg = data
this.caiImg = data;
} else if (num === 2) {
this.example2.img = data
}
this.example2.img = data;
}
};
// base64
// reader.readAsDataURL(file)
// blob
reader.readAsArrayBuffer(file)
reader.readAsArrayBuffer(file);
},
getMemberList() {
this.$request
.post("/move/association/memberList")
.post('/move/association/memberList')
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1137,7 +1266,7 @@ export default {
});
},
imgLoad(msg) {
console.log(msg)
console.log(msg);
},
formatResponse(res, type) {
console.log(res);
@ -1159,7 +1288,7 @@ export default {
},
getRegion() {
this.$request
.post("/region")
.post('/region')
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1172,7 +1301,7 @@ export default {
},
getIndustry() {
this.$request
.post("/industry")
.post('/industry')
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1186,7 +1315,7 @@ export default {
},
getPlan() {
this.$request
.post("/position")
.post('/position')
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1321,7 +1450,6 @@ export default {
// }
this.formData.member_id = this.id;
if (this.workList.length > 0) {
this.formData.work_experience = JSON.stringify(this.workList);
}
if (this.contactsList.length > 0) {
@ -1332,21 +1460,24 @@ export default {
}
if (this.social_duties.length > 0) {
const splitAndJoin = this.social_duties
.map(item => item.split(','))
.map((item) => item.split(','))
.flat()
.filter(item => item.trim() !== '') //
.filter((item) => item.trim() !== '') //
.join(',');
this.formData.main_social_positions = splitAndJoin;
}
this.$request
.post("/member/add", this.formData)
.post('/member/add', this.formData)
.then((res) => {
console.log(res);
if (res.code == 1) {
this.$message.success('新增成功!');
this.$router.push({
this.$router.push(
{
path: '/user/user_index_1',
},500);
},
500,
);
} else {
this.$message.error(res.msg);
}
@ -1378,16 +1509,15 @@ export default {
this.editorLX = Object.seal(editor);
},
customPaste(editor, event, callback) {
console.log('ClipboardEvent 粘贴事件对象', event)
var text = event.clipboardData.getData('text/plain')
console.log('ClipboardEvent 粘贴事件对象', event);
var text = event.clipboardData.getData('text/plain');
text = text.replace(/\s+/g, '');
editor.insertText(text)
event.preventDefault()
callback(false)
editor.insertText(text);
event.preventDefault();
callback(false);
// true
},
},
};
</script>
<style src="@wangeditor/editor/dist/css/style.css"></style>
@ -1457,8 +1587,8 @@ export default {
box-sizing: border-box;
outline: 0;
margin: 0;
-webkit-transition: .1s;
transition: .1s;
-webkit-transition: 0.1s;
transition: 0.1s;
font-weight: 500;
padding: 8px 15px;
font-size: 12px;
@ -1480,6 +1610,6 @@ export default {
}
.sfz:hover {
border: 1px dashed #409EFF;
border: 1px dashed #409eff;
}
</style>

View File

@ -15,13 +15,18 @@
:hover="true"
size="large"
table-layout="auto"
cellEmptyContent="-" c
cellEmptyContent="-"
c
>
<template #photo_image="{ row }">
<img v-if="row.photo_image" :src="$store.state.user.apiUrl+row.photo_image" style="width: 50px;height: 50px">
<img
v-if="row.photo_image"
:src="$store.state.user.apiUrl + row.photo_image"
style="width: 50px; height: 50px"
/>
</template>
<template #gender="{ row }">
{{ row.gender == 1 ? "男" : "女" }}
{{ row.gender == 1 ? '男' : '女' }}
</template>
<template #if_xianshi="{ row }">
<t-tag theme="primary" v-if="row.if_xianshi == 0">待审核</t-tag>
@ -44,9 +49,18 @@
></t-pagination>
</div>
</div>
<t-dialog header="信息审核" :confirmBtn="null" :visible="ShenMode" :onClose="onCloseMy" :cancelBtn="null"
width="1000px" top="50px">
<div style="text-align: center;width: 900px;height: 700px;margin: 0 auto;position: relative;overflow-y: scroll;">
<t-dialog
header="信息审核"
:confirmBtn="null"
:visible="ShenMode"
:onClose="onCloseMy"
:cancelBtn="null"
width="1000px"
top="50px"
>
<div
style="text-align: center; width: 900px; height: 700px; margin: 0 auto; position: relative; overflow-y: scroll"
>
<t-space direction="vertical">
<t-row>
<t-col :span="2">
@ -55,8 +69,7 @@
<t-col :span="4">
<div style="font-size: 16px; font-weight: 600">原信息</div>
</t-col>
<t-col :span="2">
</t-col>
<t-col :span="2"> </t-col>
<t-col :span="4">
<div style="font-size: 16px; font-weight: 600">新信息</div>
</t-col>
@ -64,89 +77,173 @@
<t-row style="font-size: 16px">
<t-col :span="2">
<t-space direction="vertical">
<div style="height: 100px;text-align: center;line-height: 100px" v-if="typeof (updateInfo.member_log.background_image) !='undefined'">名片背景图</div>
<div style="height: 100px;text-align: center;line-height: 100px" v-if="typeof (updateInfo.member_log.photo_image) !='undefined'">形象照</div>
<div v-if="typeof (updateInfo.member_log.position_name) !='undefined'">协会职务</div>
<div v-if="typeof (updateInfo.member_log.nikename) !='undefined'">姓名</div>
<div v-if="typeof (updateInfo.member_log.gender_name) !='undefined'">性别</div>
<div v-if="typeof (updateInfo.member_log.phone) !='undefined'">联系方式</div>
<div style="height: 200px" v-if="typeof (updateInfo.member_log.introduction) !='undefined'">个人经历</div>
<div style="height: 100px;text-align: center;line-height: 100px" v-if="typeof (updateInfo.member_log.company_image) !='undefined'">公司图标</div>
<div v-if="typeof (updateInfo.member_log.enterprise_name) !='undefined'">公司名称</div>
<div v-if="typeof (updateInfo.member_log.industry_id) !='undefined'">公司行业</div>
<div v-if="typeof (updateInfo.member_log.enterprise_location) !='undefined'">公司地址</div>
<div style="height: 200px" v-if="typeof (updateInfo.member_log.enterprise_Introduction) !='undefined'">公司介绍</div>
<div
style="height: 100px; text-align: center; line-height: 100px"
v-if="typeof updateInfo.member_log.background_image != 'undefined'"
>
名片背景图
</div>
<div
style="height: 100px; text-align: center; line-height: 100px"
v-if="typeof updateInfo.member_log.photo_image != 'undefined'"
>
形象照
</div>
<div v-if="typeof updateInfo.member_log.position_name != 'undefined'">协会职务</div>
<div v-if="typeof updateInfo.member_log.nikename != 'undefined'">姓名</div>
<div v-if="typeof updateInfo.member_log.gender_name != 'undefined'">性别</div>
<div v-if="typeof updateInfo.member_log.phone != 'undefined'">联系方式</div>
<div style="height: 200px" v-if="typeof updateInfo.member_log.introduction != 'undefined'">
个人经历
</div>
<div
style="height: 100px; text-align: center; line-height: 100px"
v-if="typeof updateInfo.member_log.company_image != 'undefined'"
>
公司图标
</div>
<div v-if="typeof updateInfo.member_log.enterprise_name != 'undefined'">公司名称</div>
<div v-if="typeof updateInfo.member_log.industry_id != 'undefined'">公司行业</div>
<div v-if="typeof updateInfo.member_log.enterprise_location != 'undefined'">公司地址</div>
<div style="height: 200px" v-if="typeof updateInfo.member_log.enterprise_Introduction != 'undefined'">
公司介绍
</div>
</t-space>
</t-col>
<t-col :span="4">
<t-space direction="vertical">
<div v-if="typeof (updateInfo.member.background_image) !='undefined'" style="height: 100px;">
<img v-if="updateInfo.member.background_image!=''"
<div v-if="typeof updateInfo.member.background_image != 'undefined'" style="height: 100px">
<img
v-if="updateInfo.member.background_image != ''"
:src="$store.state.user.apiUrl + updateInfo.member.background_image"
style="height: 100px;width:100%">
<div v-if="updateInfo.member.background_image==''"
style="height: 100px;text-align: center;line-height: 100px">
style="height: 100px; width: 100%"
/>
<div
v-if="updateInfo.member.background_image == ''"
style="height: 100px; text-align: center; line-height: 100px"
>
</div>
</div>
<div v-if="updateInfo.member.photo_image" style="height: 100px;"><img
<div v-if="updateInfo.member.photo_image" style="height: 100px">
<img
:src="$store.state.user.apiUrl + updateInfo.member.photo_image"
style="width: 100px;height: 100px"></div>
<div v-if="typeof (updateInfo.member.position_name) !='undefined'">{{ updateInfo.member.position_name }}</div>
<div v-if="typeof (updateInfo.member.nikename) !='undefined'">{{ updateInfo.member.nikename }}</div>
<div v-if="typeof (updateInfo.member.gender_name) !='undefined'">{{ updateInfo.member.gender_name }}</div>
<div v-if="typeof (updateInfo.member.phone) !='undefined'">{{ updateInfo.member.phone }}</div>
<div style="height: 200px;overflow: scroll;" v-if="typeof (updateInfo.member.introduction) !='undefined'">{{ updateInfo.member.introduction }}</div>
<div v-if="typeof (updateInfo.member.company_image) !='undefined'" style="height: 100px;">
<img v-if="updateInfo.member.company_image!=''"
style="width: 100px; height: 100px"
/>
</div>
<div v-if="typeof updateInfo.member.position_name != 'undefined'">
{{ updateInfo.member.position_name }}
</div>
<div v-if="typeof updateInfo.member.nikename != 'undefined'">{{ updateInfo.member.nikename }}</div>
<div v-if="typeof updateInfo.member.gender_name != 'undefined'">
{{ updateInfo.member.gender_name }}
</div>
<div v-if="typeof updateInfo.member.phone != 'undefined'">{{ updateInfo.member.phone }}</div>
<div
style="height: 200px; overflow: scroll"
v-if="typeof updateInfo.member.introduction != 'undefined'"
>
{{ updateInfo.member.introduction }}
</div>
<div v-if="typeof updateInfo.member.company_image != 'undefined'" style="height: 100px">
<img
v-if="updateInfo.member.company_image != ''"
:src="$store.state.user.apiUrl + updateInfo.member.company_image"
style="height: 100px">
<div v-if="updateInfo.member.company_image==''"
style="height: 100px;text-align: center;line-height: 100px">
style="height: 100px"
/>
<div
v-if="updateInfo.member.company_image == ''"
style="height: 100px; text-align: center; line-height: 100px"
>
</div>
</div>
<div v-if="typeof (updateInfo.member.enterprise_name) !='undefined'">{{ updateInfo.member.enterprise_name }}</div>
<div v-if="typeof (updateInfo.member.industry_id) !='undefined'">{{updateInfo.member.industry_id==-1?'其他行业':updateInfo.member.industry_name }}</div>
<div v-if="typeof (updateInfo.member.enterprise_location) !='undefined'">{{ updateInfo.member.enterprise_location==''?'':updateInfo.member.enterprise_location }}</div>
<div style="height: 200px;overflow: scroll;" v-if="typeof (updateInfo.member.enterprise_Introduction) !='undefined'">{{ updateInfo.member.enterprise_Introduction }}</div>
<div v-if="typeof updateInfo.member.enterprise_name != 'undefined'">
{{ updateInfo.member.enterprise_name }}
</div>
<div v-if="typeof updateInfo.member.industry_id != 'undefined'">
{{ updateInfo.member.industry_id == -1 ? '其他行业' : updateInfo.member.industry_name }}
</div>
<div v-if="typeof updateInfo.member.enterprise_location != 'undefined'">
{{ updateInfo.member.enterprise_location == '' ? '无' : updateInfo.member.enterprise_location }}
</div>
<div
style="height: 200px; overflow: scroll"
v-if="typeof updateInfo.member.enterprise_Introduction != 'undefined'"
>
{{ updateInfo.member.enterprise_Introduction }}
</div>
</t-space>
</t-col>
<t-col :span="2">
<div style="position: absolute;width: 100%;">
<div style="position: absolute; width: 100%">
<SwapRightIcon size="2em" />
</div>
</t-col>
<t-col :span="4">
<t-space direction="vertical">
<div v-if="updateInfo.member_log.background_image" style="height: 100px;"><img
<div v-if="updateInfo.member_log.background_image" style="height: 100px">
<img
:src="$store.state.user.apiUrl + updateInfo.member_log.background_image"
style="height: 100px;width:100%"></div>
<div v-if="updateInfo.member_log.photo_image" style="height: 100px;"><img
style="height: 100px; width: 100%"
/>
</div>
<div v-if="updateInfo.member_log.photo_image" style="height: 100px">
<img
:src="$store.state.user.apiUrl + updateInfo.member_log.photo_image"
style="width: 100px;height: 100px"></div>
<div v-if="typeof (updateInfo.member_log.position_name) !='undefined'">{{ updateInfo.member_log.position_name }}</div>
<div v-if="typeof (updateInfo.member_log.nikename) !='undefined'">{{ updateInfo.member_log.nikename }}</div>
<div v-if="typeof (updateInfo.member_log.gender_name) !='undefined'">{{ updateInfo.member_log.gender_name }}</div>
<div v-if="typeof (updateInfo.member_log.phone) !='undefined'">{{ updateInfo.member_log.phone }}</div>
<div style="height: 200px;overflow: scroll;" v-if="typeof (updateInfo.member_log.introduction) !='undefined'">{{ updateInfo.member_log.introduction }}</div>
<div v-if="typeof (updateInfo.member_log.company_image) !='undefined'" style="height: 100px;">
<img v-if="updateInfo.member_log.company_image!=''"
style="width: 100px; height: 100px"
/>
</div>
<div v-if="typeof updateInfo.member_log.position_name != 'undefined'">
{{ updateInfo.member_log.position_name }}
</div>
<div v-if="typeof updateInfo.member_log.nikename != 'undefined'">
{{ updateInfo.member_log.nikename }}
</div>
<div v-if="typeof updateInfo.member_log.gender_name != 'undefined'">
{{ updateInfo.member_log.gender_name }}
</div>
<div v-if="typeof updateInfo.member_log.phone != 'undefined'">{{ updateInfo.member_log.phone }}</div>
<div
style="height: 200px; overflow: scroll"
v-if="typeof updateInfo.member_log.introduction != 'undefined'"
>
{{ updateInfo.member_log.introduction }}
</div>
<div v-if="typeof updateInfo.member_log.company_image != 'undefined'" style="height: 100px">
<img
v-if="updateInfo.member_log.company_image != ''"
:src="$store.state.user.apiUrl + updateInfo.member_log.company_image"
style="width: 100px;height: 100px">
<div v-if="updateInfo.member_log.company_image==''"
style="height: 100px;text-align: center;line-height: 100px">
style="width: 100px; height: 100px"
/>
<div
v-if="updateInfo.member_log.company_image == ''"
style="height: 100px; text-align: center; line-height: 100px"
>
</div>
</div>
<div v-if="typeof (updateInfo.member_log.enterprise_name) !='undefined'">{{ updateInfo.member_log.enterprise_name }}</div>
<div v-if="typeof (updateInfo.member_log.industry_id) !='undefined'">{{updateInfo.member_log.industry_id==-1?'其他行业':updateInfo.member_log.industry_name }}</div>
<div v-if="typeof (updateInfo.member_log.enterprise_location) !='undefined'">{{ updateInfo.member_log.enterprise_location }}</div>
<div style="height: 200px;overflow: scroll;" v-if="typeof (updateInfo.member_log.enterprise_Introduction) !='undefined'">{{ updateInfo.member_log.enterprise_Introduction }}</div>
<div v-if="typeof updateInfo.member_log.enterprise_name != 'undefined'">
{{ updateInfo.member_log.enterprise_name }}
</div>
<div v-if="typeof updateInfo.member_log.industry_id != 'undefined'">
{{ updateInfo.member_log.industry_id == -1 ? '其他行业' : updateInfo.member_log.industry_name }}
</div>
<div v-if="typeof updateInfo.member_log.enterprise_location != 'undefined'">
{{ updateInfo.member_log.enterprise_location }}
</div>
<div
style="height: 200px; overflow: scroll"
v-if="typeof updateInfo.member_log.enterprise_Introduction != 'undefined'"
>
{{ updateInfo.member_log.enterprise_Introduction }}
</div>
</t-space>
</t-col>
</t-row>
</t-space>
<div style="text-align: center; margin-top: 50px" v-if="type == 1">
<t-popconfirm content="确定要审核通过吗?" v-model="v1" @confirm="shenDo(1)">
<t-button theme="success">审核通过</t-button>
@ -166,8 +263,8 @@
</t-card>
</template>
<script lang="ts">
import store from "@/store";
import {SwapRightIcon} from "tdesign-icons-vue";
import store from '@/store';
import { SwapRightIcon } from 'tdesign-icons-vue';
export default {
components: { SwapRightIcon },
@ -190,13 +287,13 @@ export default {
size: 10,
updateInfo: {
member: {},
member_log: {}
member_log: {},
},
member_id: 0,
id: 0,
content: '',
type: 0,
}
};
},
mounted() {
this.getList();
@ -216,16 +313,15 @@ export default {
if (dis == 1) {
this.content = '您提交的信息修改已通过审核!';
} else {
}
this.$request
.post("/member_log/update", {
.post('/member_log/update', {
member_id: this.member_id,
id: this.id,
if_xianshi: dis,
if_member: dis,
content: this.content,
member_log: JSON.stringify(this.updateInfo.member_log)
member_log: JSON.stringify(this.updateInfo.member_log),
})
.then((res) => {
console.log(res);
@ -246,7 +342,7 @@ export default {
this.member_id = d.member_id;
this.id = d.id;
this.$request
.post("/member_log/find", {member_id: d.member_id, id: d.id})
.post('/member_log/find', { member_id: d.member_id, id: d.id })
.then((res) => {
this.ShenMode = true;
console.log(res);
@ -261,7 +357,7 @@ export default {
},
getList() {
this.$request
.post("/member_log/index", {page: this.page, size: this.size,if_xianshi:this.tabIndex})
.post('/member_log/index', { page: this.page, size: this.size, if_xianshi: this.tabIndex })
.then((res) => {
console.log(res);
this.list = res.data.ret;
@ -280,8 +376,8 @@ export default {
this.list = [];
this.getList();
},
}
}
},
};
</script>
<style scoped lang="less">
::-webkit-scrollbar {

View File

@ -1,8 +1,8 @@
import axios from 'axios';
import store from '../store'
import store from '../store';
//const API_HOST = env === 'mock' ? '/' : proxy[env].API; // 如果是mock模式 就不配置host 会走本地Mock拦截
//const API_HOST ="https://hnyea.0rui.cn/api/";
const API_HOST ="/api/";
const API_HOST = 'https://hnyea.0rui.cn/api/';
//const API_HOST ="/api/";
const CODE = {
LOGIN_TIMEOUT: 1000000,
REQUEST_SUCCESS: 0,
@ -23,7 +23,7 @@ instance.interceptors.retry = 3;
instance.interceptors.request.use((config) => {
// 在原有配置基础上添加新参数
if (store.state.user.association) {
if(typeof (store.state.user.association)=='object'){
if (typeof store.state.user.association == 'object') {
var association = store.state.user.association;
} else {
var association = JSON.parse(store.state.user.association);