Compare commits

..

No commits in common. "824cca2457b2dc59f335197f450e50c8b8e78f9d" and "9a4d47c1cd4deb90854bef3ebd6c27a8d756dfbe" have entirely different histories.

13 changed files with 1320 additions and 2367 deletions

View File

@ -13,10 +13,10 @@
<t-input size="large" placeholder="请输入活动标题" v-model="addForm.activity_name"
:style="{ width: '480px' }"/>
</t-form-item>
<!-- <t-form-item label="活动简介" name="activity_desc">
<t-form-item label="活动简介" name="activity_desc">
<t-input size="large" placeholder="请输入活动简介" v-model="addForm.activity_desc"
:style="{ width: '480px' }"/>
</t-form-item> -->
</t-form-item>
<t-form-item label="活动地址" name="activity_location">
<t-input size="large" placeholder="请输入活动地址" v-model="addForm.activity_location"
:style="{ width: '480px' }"/>
@ -29,12 +29,12 @@
<!-- <t-option key="4" label="学习培训" value="4"/>-->
<!-- </t-select>-->
<!-- </t-form-item>-->
<!-- <t-form-item label="显示报名人" name="if_display_registrants">
<t-form-item label="显示报名人" name="if_display_registrants">
<t-select size="large" v-model="addForm.if_display_registrants" :style="{ width: '480px' }">
<t-option key="1" label="显示" value="1"/>
<t-option key="2" label="不显示" value="2"/>
</t-select>
</t-form-item> -->
</t-form-item>
<t-form-item label="报名范围" name="range">
<t-select size="large" v-model="addForm.range" :style="{ width: '480px' }">
<t-option key="1" label="会员" value="1"/>
@ -92,7 +92,7 @@
:sizeLimit="{ size: 50, unit: 'MB', message: '视频大小不超过50MB' }"
></t-upload>
</t-form-item>
<t-form-item label="活动详情" name="activity_desc">
<t-form-item label="活动简介" name="activity_desc">
<div style="border: 1px solid #ccc;width: 100%;">
<!-- 工具栏 -->
<Toolbar
@ -180,7 +180,7 @@ export default {
activity_content: '',
activity_location: '',
activity_type: null,
if_display_registrants: 2,
if_display_registrants: null,
signup_start_time: '',
signup_end_time: '',
if_auditing: '1',
@ -276,10 +276,10 @@ export default {
this.$message.error('活动标题不能为空');
return;
}
// if (this.addForm.activity_desc == '') {
// this.$message.error('');
// return;
// }
if (this.addForm.activity_desc == '') {
this.$message.error('活动简介不能为空');
return;
}
if (this.addForm.activity_type == null) {
this.$message.error('活动类别不能为空');
return;

View File

@ -7,10 +7,10 @@
<t-input size="large" placeholder="请输入活动标题" v-model="addForm.activity_name"
:style="{ width: '480px' }"/>
</t-form-item>
<!-- <t-form-item label="活动简介" name="activity_desc">
<t-form-item label="活动简介" name="activity_desc">
<t-input size="large" placeholder="请输入活动简介" v-model="addForm.activity_desc"
:style="{ width: '480px' }"/>
</t-form-item> -->
</t-form-item>
<t-form-item label="活动地址" name="activity_location">
<t-input size="large" placeholder="请输入活动地址" v-model="addForm.activity_location"
:style="{ width: '480px' }"/>
@ -23,12 +23,12 @@
<!-- <t-option key="4" label="学习培训" value="4"/>-->
<!-- </t-select>-->
<!-- </t-form-item>-->
<!-- <t-form-item label="显示报名人" name="if_display_registrants">
<t-form-item label="显示报名人" name="if_display_registrants">
<t-select size="large" v-model="addForm.if_display_registrants" :style="{ width: '480px' }">
<t-option key="1" label="显示" value="1"/>
<t-option key="2" label="不显示" value="2"/>
</t-select>
</t-form-item> -->
</t-form-item>
<t-form-item label="报名范围" name="range">
<t-select size="large" v-model="addForm.range" :style="{ width: '480px' }">
<t-option key="1" label="会员" value="1"/>
@ -87,7 +87,7 @@
:sizeLimit="{ size: 50, unit: 'MB', message: '视频大小不超过50MB' }"
></t-upload>
</t-form-item>
<t-form-item label="活动详情" name="activity_desc">
<t-form-item label="活动简介" name="activity_desc">
<div style="border: 1px solid #ccc;width: 100%;">
<!-- 工具栏 -->
<Toolbar
@ -313,10 +313,10 @@ export default {
this.$message.error('活动标题不能为空');
return;
}
// if (this.addForm.activity_desc == '') {
// this.$message.error('');
// return;
// }
if (this.addForm.activity_desc == '') {
this.$message.error('活动简介不能为空');
return;
}
if (this.addForm.activity_type == null) {
this.$message.error('活动类别不能为空');
return;

View File

@ -117,12 +117,6 @@
<CloudDownloadIcon slot="icon"/>
导出
</t-button>
<!-- <t-dropdown :options="options">
<t-button>
<CloudDownloadIcon slot="icon"/>
导出
</t-button>
</t-dropdown> -->
</div>
<div v-if="infoIfAuditing==2">
<t-tabs v-model="InfotabIndex" @change="InfotabIndexChange">
@ -463,32 +457,6 @@ export default {
getType: 3,
infoIfAuditing: 1,//
association: {},
options: [
{
content: '全部名单',
value: 1,
onClick: () => {
const token = store.state.user.token;
window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token+"&type=4");
},
},
{
content: '已通过',
value: 2,
onClick: () => {
const token = store.state.user.token;
window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token+"&type=2");
},
},
{
content: '已拒绝',
value: 3,
onClick: () => {
const token = store.state.user.token;
window.open(store.state.user.apiUrl + '/api/excel_controller/applicationexport?id=' + this.infoId + "&token=" + token+"&type=3");
},
},
],
}
},
beforeDestroy() {

View File

@ -24,9 +24,10 @@
</div>
</div>
</t-card>
</template>
<script lang="ts">
import store from '@/store';
import store from "@/store";
export default {
data() {
@ -43,7 +44,7 @@ export default {
size: 10,
total: 0,
},
};
}
},
mounted() {
this.getList();
@ -56,18 +57,19 @@ export default {
getList() {
this.$request
.post('/pc_leave_message/index', { page: this.pagination.page, size: this.pagination.size })
.post("/pc_leave_message/index", {page: this.pagination.page, size: this.pagination.size})
.then((res) => {
console.log(res);
if (res.code == 1) {
this.list = res.data.ret;
this.pagination.total = res.data.count;
}
})
.catch((e) => {
console.log(e);
});
},
},
};
}
}
</script>

View File

@ -1,20 +1,20 @@
<template>
<div v-if="show">
<div>
<img src="https://hnyea.0rui.cn/uploads/1/20240820/7c06389c1dd2fbd4f2d191cdb6c67bb1.png" style="width: 100%"/>
<img src="https://hnyea.0rui.cn/uploads/1/20240820/7c06389c1dd2fbd4f2d191cdb6c67bb1.png" style="width: 100%;">
</div>
<div style="padding: 20px;margin-top: 20px">
<div style="width: 80%; margin: 0 auto">
<div style="width: 80%;margin: 0 auto;">
<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">
<t-form-item name="name" label="推荐方式">
<t-select size="large" v-model="formData.reporting_method">
<t-option label="个人自荐" :value="3"/>
<t-option label="会员推荐" :value="2"/>
<t-option label="组织推荐" :value="1"/>
<t-option label="个人自荐" value="3"/>
<t-option label="会员推荐" value="2"/>
<t-option label="组织推荐" value="1"/>
</t-select>
</t-form-item>
<template v-if="formData.reporting_method==3">
@ -30,31 +30,17 @@
<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>
<template v-if="formData.reporting_method==2">
<t-form-item name="name" label="推荐人姓名">
<!-- <t-input size="large" placeholder="推荐人姓名" />-->
<t-select
v-model="formData.recommendation_name"
filterable
placeholder="推荐人姓名"
:options="member_list"
:keys="{value:'id',label:'nikename',key:'id'}"
size="large"
@change="getMemberInfo"
></t-select>
<t-input size="large" v-model="formData.recommendation_id" placeholder="推荐人姓名"/>
</t-form-item>
<t-form-item label="推荐人单位名称及职务">
<t-input size="large" readonly v-model="formData.recommendation_content"
placeholder="推荐人单位名称及职务"/>
<t-input size="large" v-model="formData.recommendation_content" placeholder="推荐人单位名称及职务"/>
</t-form-item>
</template>
<t-form-item label="意向协会职务">
@ -68,40 +54,20 @@
</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 style="display: flex; align-items: center; margin-bottom: 10px">
<span style="color: red; margin-right: 5px">*</span>
<span style="color: #000;">证件照</span>
</div>
<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 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 != ''"
/>
<svg
style="font-size: 35px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
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!=''">
<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 == ''"
>
v-if="formData.photo_image==''">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg>
</div>
@ -111,28 +77,24 @@
<div style="margin-left: 50px">
<t-space direction="vertical">
<t-form layout="inline" labelAlign="top" :labelWidth="100">
<t-form-item label="姓名" :requiredMark="true">
<t-form-item label="姓名" :rules="[ { required: true, message: '此项必填' }]">
<t-input size="large" v-model="formData.nikename" placeholder="请输入姓名"/>
</t-form-item>
<t-form-item label="性别" name="name" :requiredMark="true">
<t-form-item label="性别" name="name">
<t-select size="large" v-model="formData.gender" :style="{ width: '200px' }">
<t-option :key="0" label="女" :value="0"></t-option>
<t-option :key="1" label="男" :value="1"></t-option>
</t-select>
</t-form-item>
<t-form-item label="出生年月日" :requiredMark="true">
<t-form-item label="出生年月日">
<t-date-picker size="large" :style="{ width: '200px' }" v-model="formData.birth_time"/>
</t-form-item>
<t-form-item label="民族" :requiredMark="true">
<t-form-item label="民族">
<t-input size="large" v-model="formData.nation" placeholder="请输入民族"/>
</t-form-item>
<t-form-item label="政治面貌" :requiredMark="true">
<t-select
size="large"
v-model="formData.political"
placeholder="请选择政治面貌"
:style="{ width: '200px' }"
>
<t-form-item label="政治面貌">
<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>
@ -145,34 +107,30 @@
<t-option value="九三学社社员" label="九三学社社员" key="九三学社社员"></t-option>
<t-option value="台盟盟员" label="台盟盟员" key="台盟盟员"></t-option>
<t-option value="无党派人士" label="无党派人士" key="无党派人士"></t-option>
<t-option value="群众" label="群众" key="群众"></t-option>
<t-option value="无党派人士" label="无党派人士" key="无党派人士"></t-option>
</t-select>
</t-form-item>
<t-form-item label="身份证号码" :requiredMark="true">
<t-form-item label="身份证号码">
<t-input size="large" v-model="formData.card_number" placeholder="请输入身份证号码"/>
</t-form-item>
<t-form-item label="工作单位" :requiredMark="true">
<t-form-item label="工作单位">
<t-input size="large" v-model="formData.work_unit" placeholder="请输入工作单位"/>
</t-form-item>
<t-form-item label="单位职务" :requiredMark="true">
<t-form-item label="单位职务">
<t-input size="large" v-model="formData.unit_position" placeholder="请输入单位职务"/>
</t-form-item>
<t-form-item label="通讯地址" :requiredMark="true">
<t-form-item label="通讯地址">
<t-input size="large" v-model="formData.mail_address" placeholder="请输入通讯地址"/>
</t-form-item>
<t-form-item label="籍贯" :requiredMark="true">
<t-form-item label="籍贯">
<t-input size="large" v-model="formData.jiguan" placeholder="请输入籍贯"/>
</t-form-item>
<t-form-item label="毕业院校">
<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>
@ -181,12 +139,8 @@
</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>
@ -209,12 +163,8 @@
<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>
@ -226,25 +176,15 @@
<div style="display: flex;justify-items: center;padding: 30px 0px">
<div style="text-align: center">
<div class="sfz">
<span v-if="formData.cardz_image == ''"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
v-if="formData.cardz_image == ''"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.cardz_image != ''"
:src="$store.state.user.apiUrl + formData.cardz_image"
style="width: 100%; max-height: 200px"
/>
<span v-if="formData.cardz_image==''"><svg style=" font-size: 30px;" fill="none" viewBox="0 0 24 24"
width="100px" height="100px" class="t-icon t-icon-add"
v-if="formData.cardz_image==''">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.cardz_image!=''" :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"
@ -258,25 +198,15 @@
</div>
<div style="margin-left: 100px;text-align: center">
<div class="sfz">
<span v-if="formData.cardf_image == ''"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
v-if="formData.cardf_image == ''"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.cardf_image != ''"
:src="$store.state.user.apiUrl + formData.cardf_image"
style="width: 100%; max-height: 200px"
/>
<span v-if="formData.cardf_image==''"><svg style=" font-size: 30px;" fill="none" viewBox="0 0 24 24"
width="100px" height="100px" class="t-icon t-icon-add"
v-if="formData.cardf_image==''">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.cardf_image!=''" :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"
@ -294,10 +224,10 @@
<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="margin-top: 20px;">
<!-- <t-textarea placeholder="请输入个人简介" :autosize="{ minRows: 15, maxRows: 20 }"-->
<!-- v-model="formData.introduction"/>-->
<div style="border: 1px solid #ccc">
<div style="border: 1px solid #ccc;">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -320,10 +250,10 @@
<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="margin-top: 20px;">
<!-- <t-textarea placeholder="请输入主要成就以及获奖情况" :autosize="{ minRows: 15, maxRows: 20 }"-->
<!-- v-model="formData.achievement_award"/>-->
<div style="border: 1px solid #ccc">
<div style="border: 1px solid #ccc;">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -366,7 +296,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>
@ -412,12 +342,9 @@
<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>
@ -442,7 +369,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>
@ -465,36 +392,28 @@
</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%">
<t-space direction="vertical">
<t-form layout="inline" labelAlign="top" :labelWidth="100">
<t-form-item label="企业名称" :requiredMark="true">
<t-form-item label="企业名称">
<t-input size="large" v-model="formData.enterprise_name" placeholder="请输入企业名称"/>
</t-form-item>
<t-form-item label="统一社会信用代码" :requiredMark="true">
<t-form-item label="统一社会信用代码">
<t-input size="large" v-model="formData.unified_code" placeholder="请输入统一社会信用代码"/>
</t-form-item>
<t-form-item label="企业注册地" :requiredMark="true">
<t-form-item label="企业注册地">
<t-input size="large" v-model="formData.enterprise_location" placeholder="请输入企业注册地"/>
</t-form-item>
<t-form-item
:requiredMark="true"
label="企业位置经度"
help="坐标拾取https://lbs.qq.com/tool/getpoint/get-point.html"
>
<t-form-item label="企业位置经度" help="坐标拾取https://lbs.qq.com/tool/getpoint/get-point.html">
<t-input size="large" v-model="formData.longitude" placeholder="地图经度116.xxx "/>
</t-form-item>
<t-form-item
:requiredMark="true"
label="企业位置纬度"
help="坐标拾取https://lbs.qq.com/tool/getpoint/get-point.html"
>
<t-form-item label="企业位置纬度" help="坐标拾取https://lbs.qq.com/tool/getpoint/get-point.html">
<t-input size="large" v-model="formData.dimension" placeholder="地图纬度39.xxx "/>
</t-form-item>
<t-form-item label="注册资金(万元)" :requiredMark="true">
<t-form-item label="注册资金(万元)">
<t-input size="large" v-model="formData.registered_capital" placeholder="注册资金(万元)"/>
</t-form-item>
<t-form-item label="是否上市" name="name">
@ -506,13 +425,10 @@
<t-form-item label="员工人数">
<t-input size="large" v-model="formData.employee" placeholder="请输入员工人数"/>
</t-form-item>
<t-form-item label="所属行业" name="name" :requiredMark="true">
<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="企业网址">
@ -539,11 +455,7 @@
<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>
@ -555,28 +467,17 @@
<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 == ''"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
<span v-if="formData.business_license_image==''"><svg style=" font-size: 30px;" fill="none"
viewBox="0 0 24 24" width="100px" height="100px"
class="t-icon t-icon-add"
v-if="formData.business_license_image == ''"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.business_license_image != ''"
v-if="formData.business_license_image==''">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.business_license_image!=''"
:src="$store.state.user.apiUrl+formData.business_license_image"
style="width: 100%; max-height: 200px"
/>
</div>
<div style="margin: 10px 0px">
<span style="color: red; margin-right: 5px">*</span>
<span style="color: #000;">请上传营业执照</span>
style="width: 100%;max-height: 200px;">
</div>
<div style="margin: 10px 0px">请上传营业执照</div>
<t-upload
:action="$store.state.user.apiUrl+'/api/common/upload'"
v-model="formData.business_license_image_show"
@ -590,28 +491,15 @@
</div>
<div style="margin-left: 100px;text-align: center">
<div class="sfz">
<span v-if="formData.company_image == ''"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
class="t-icon t-icon-add"
v-if="formData.company_image == ''"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.company_image != ''"
:src="$store.state.user.apiUrl + formData.company_image"
style="width: 100%; max-height: 200px"
/>
</div>
<div style="margin: 10px 0px">
<span style="color: red; margin-right: 5px">*</span>
<span style="color: #000;">请上传公司LOGO</span>
<span v-if="formData.company_image==''"><svg style=" font-size: 30px;" fill="none" viewBox="0 0 24 24"
width="100px" height="100px" class="t-icon t-icon-add"
v-if="formData.company_image==''">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.company_image!=''" :src="$store.state.user.apiUrl+formData.company_image"
style="width: 100%;max-height: 200px;">
</div>
<div style="margin: 10px 0px">请上传公司LOGO</div>
<t-upload
:action="$store.state.user.apiUrl+'/api/common/upload'"
v-model="formData.company_image_show"
@ -629,10 +517,10 @@
<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="margin-top: 20px;">
<!-- <t-textarea placeholder="请输入公司介绍" :autosize="{ minRows: 15, maxRows: 20 }"-->
<!-- v-model="formData.enterprise_Introduction"/>-->
<div style="border: 1px solid #ccc">
<div style="border: 1px solid #ccc;">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -655,10 +543,10 @@
<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="margin-top: 20px;">
<!-- <t-textarea placeholder="请输入主营业务介绍" :autosize="{ minRows: 15, maxRows: 20 }"-->
<!-- v-model="formData.introdiction"/>-->
<div style="border: 1px solid #ccc">
<div style="border: 1px solid #ccc;">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -683,10 +571,10 @@
<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="margin-top: 20px;">
<!-- <t-textarea placeholder="请输入企业所获荣誉以及专利" :autosize="{ minRows: 15, maxRows: 20 }"-->
<!-- v-model="formData.enterprise_honor"/>-->
<div style="border: 1px solid #ccc">
<div style="border: 1px solid #ccc;">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -709,10 +597,10 @@
<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="margin-top: 20px;">
<!-- <t-textarea placeholder="请输入其他企业任职情况" :autosize="{ minRows: 15, maxRows: 20 }"-->
<!-- v-model="formData.qitaqiyerenzhiqingkuang"/>-->
<div style="border: 1px solid #ccc">
<div style="border: 1px solid #ccc;">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -737,10 +625,10 @@
<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="margin-top: 20px;">
<!-- <t-textarea placeholder="请输入企业履行社会责任情况" :autosize="{ minRows: 15, maxRows: 20 }"-->
<!-- v-model="formData.enterprise_lvxingzeren"/>-->
<div style="border: 1px solid #ccc">
<div style="border: 1px solid #ccc;">
<!-- 工具栏 -->
<Toolbar
style="border-bottom: 1px solid #ccc"
@ -763,7 +651,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">
@ -778,14 +666,11 @@
<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>
@ -802,7 +687,8 @@
<!-- <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>
@ -814,23 +700,15 @@
<div>
<div style="text-align: center">
<div class="sfz">
<span v-if="formData.documents_file == ''"
><svg
style="font-size: 30px"
fill="none"
viewBox="0 0 24 24"
width="100px"
height="100px"
<span v-if="formData.documents_file==''"><svg style=" font-size: 30px;" fill="none"
viewBox="0 0 24 24" width="100px" height="100px"
class="t-icon t-icon-add"
v-if="formData.documents_file == ''"
>
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path></svg
></span>
<img
v-if="formData.documents_file != ''"
v-if="formData.documents_file==''">
<path fill="currentColor" d="M13 4v7h7v2h-7v7h-2v-7H4v-2h7V4h2z"></path>
</svg></span>
<img v-if="formData.documents_file!=''"
: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
@ -873,7 +751,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>
@ -929,25 +807,18 @@
: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>
@ -959,13 +830,11 @@ import {Editor, Toolbar} from '@wangeditor/editor-for-vue';
import store from '@/store';
import {VueCropper} from 'vue-cropper';
import axios from 'axios';
import {CheckCircleIcon, LockOnIcon, UserIcon} from 'tdesign-icons-vue';
import {CheckCircleIcon, LockOnIcon, UserIcon} from "tdesign-icons-vue";
export default {
components: {
VueCropper,
Editor,
Toolbar,
VueCropper,Editor, Toolbar
},
data() {
return {
@ -989,7 +858,7 @@ export default {
'insertLink',//
'insertTable',//
'codeBlock',//
],
]
},
editorConfig: {
placeholder: '',
@ -1031,7 +900,6 @@ export default {
source_channel: '',
region_id: null,
recommendation_id: '',
recommendation_name:'',
position_id: null,
industry_id: null,
phone: '',
@ -1094,7 +962,7 @@ export default {
openid: '',
work_experience: '',
main_social_positions: '',
reporting_method: 3,
reporting_method: '3',
recommendation_content: '',
recommended_cities: '',
longitude:'',
@ -1105,44 +973,27 @@ export default {
plan_list: [],
member_list: [],
region_list: [],
};
},
mounted() {
console.log(this.$route.query.id);
// if (typeof (this.$route.query.id) != 'undefined') {
// this.id = .id;
// this.getInfo();
// this.getPlan();
// this.getIndustry();
// } else {
// this.$message.error('', 0);
// }
this.formData.token = this.$route.query.token;
this.formData.openid = this.$route.query.openid;
this.getIndustry();
//this.getMemberList();
this.getRegion();
this.getInfo();
this.getUserList();
},
methods: {
getMemberInfo(d) {
var index = this.member_list.findIndex(item => item.id == d.id);
this.formData.recommendation_content = this.member_list[index].work_unit + this.member_list[index].unit_position;
},
getUserList() {
if (typeof (this.$route.query.recommendation_id) != 'undefined') {
this.formData.reporting_method = 2;
} else {
this.member_list = [];
return false;
}
var recommendation_id = this.$route.query.recommendation_id;
this.$request
.post('/move/member/getrecommendationSelect', {openid: this.$route.query.openid})
.then((res) => {
console.log(res);
this.member_list = res.data;
var index = res.data.findIndex(item => item.id == recommendation_id);
this.formData.recommendation_content = this.member_list[index].work_unit + this.member_list[index].unit_position;
this.formData.recommendation_id = this.member_list[index].id;
this.formData.recommendation_name = this.member_list[index].nikename;
})
.catch((e) => {
console.log(e);
});
},
onChange(value, context) {
this.work.time = value[0] + '至' + value[1];
},
@ -1243,47 +1094,46 @@ export default {
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)
},
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', 1);
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) {
@ -1297,19 +1147,19 @@ export default {
this.$message.error('图片上传失败!');
}
})
.catch((error) => {
.catch(error => {
console.error('文件上传失败', error);
});
});
})
},
onCloseMy() {
this.caiMode = false;
},
realTime(data) {
this.previews = data;
this.previews = data
},
imgLoad(msg) {
console.log(msg);
console.log(msg)
},
openCai() {
this.caiImg = store.state.user.apiUrl + this.formData.photo_image;
@ -1318,7 +1168,7 @@ export default {
},
getInfo() {
this.$request
.post('/move/temporary_token/tokenMember', {openid: this.formData.openid, token: this.formData.token})
.post("/move/temporary_token/tokenMember", {openid: this.formData.openid, token: this.formData.token})
.then((res) => {
console.log(res);
if (res.code == 0) {
@ -1353,8 +1203,7 @@ export default {
this.formData.cardz_image = res.data.cardz_image == null ? '' : res.data.cardz_image;
this.formData.photo_image = res.data.photo_image == null ? '' : res.data.photo_image;
this.formData.company_image = res.data.company_image == null ? '' : res.data.company_image;
this.formData.business_license_image =
res.data.business_license_image == null ? '' : res.data.business_license_image;
this.formData.business_license_image = res.data.business_license_image == null ? '' : res.data.business_license_image;
this.formData.unified_code = res.data.unified_code;
this.formData.enterprise_nature = res.data.enterprise_nature;
this.formData.enterprise_website = res.data.enterprise_website;
@ -1382,10 +1231,9 @@ export default {
this.formData.main_social_positions = res.data.main_social_positions;
this.formData.work_experience = res.data.work_experience;
if (res.data.reporting_method != null) {
this.formData.reporting_method = res.data.reporting_method;
}
this.formData.recommendation_content = res.data.recommendation_content;
this.formData.recommendation_id = res.data.recommendation_id == 0 ? '' : res.data.recommendation_id;
this.formData.documents_file = res.data.documents_file;
if (res.data.documents_file == '') {
this.formData.documents_file_show = [];
@ -1410,6 +1258,8 @@ export default {
this.social_duties = res.data.main_social_positions.split(',');
this.contactsList = JSON.parse(res.data.other_contacts);
this.tuan_list = JSON.parse(res.data.tuanweifuzerenxinxi);
}
})
.catch((e) => {
@ -1418,7 +1268,7 @@ export default {
},
getRegion() {
this.$request
.post('/region')
.post("/region")
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1429,9 +1279,22 @@ export default {
console.log(e);
});
},
getMemberList() {
this.$request
.post("/move/association/memberList")
.then((res) => {
console.log(res);
if (res.code == 1) {
this.member_list = res.data;
}
})
.catch((e) => {
console.log(e);
});
},
getIndustry() {
this.$request
.post('/move/industry/index', {association_id: 1})
.post("/move/industry/index", {association_id: 1})
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1443,9 +1306,21 @@ export default {
console.log(e);
});
},
getPlan() {
this.$request
.post("/position", {association_id: 1})
.then((res) => {
console.log(res);
if (res.code == 1) {
this.plan_list = res.data;
}
})
.catch((e) => {
console.log(e);
});
},
formatResponse(res, type) {
console.log(res);
if (type == 0) {
this.formData.photo_image = res.data.url;
} else if (type == 1) {
@ -1462,7 +1337,7 @@ export default {
return {url: res.data.fullurl};
},
submit() {
console.log(this.formData)
if (this.formData.nikename == '') {
this.$message.error('请输入姓名!');
return;
@ -1495,16 +1370,8 @@ export default {
this.$message.error('请输入身份证号码!');
return;
}
if (this.formData.work_unit == '') {
this.$message.error('请输入工作单位!');
return;
}
if (this.formData.unit_position == '') {
this.$message.error('请输入单位职务!');
return;
}
if (this.formData.mail_address == '') {
this.$message.error('请输入通讯地址!');
if (this.formData.jiguan == '') {
this.$message.error('请输入籍贯!');
return;
}
if (this.formData.business_license_image == '') {
@ -1573,15 +1440,14 @@ 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('/move/temporary_token/shenqing', this.formData)
.post("/move/temporary_token/shenqing", this.formData)
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1620,15 +1486,16 @@ 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>
@ -1733,8 +1600,8 @@ export default {
box-sizing: border-box;
outline: 0;
margin: 0;
-webkit-transition: 0.1s;
transition: 0.1s;
-webkit-transition: .1s;
transition: .1s;
font-weight: 500;
padding: 8px 15px;
font-size: 12px;
@ -1755,10 +1622,9 @@ export default {
}
.sfz:hover {
color: #409eff;
border: 1px dashed #409eff;
color: #409EFF;
border: 1px dashed #409EFF;
}
.w-e-full-screen-container{
z-index: 1024;
}

View File

@ -1,271 +0,0 @@
<template>
<t-card title="青企圈详情" :bordered="false">
<template #actions>
<t-button theme="default" @click="goBack">返回列表</t-button>
</template>
<div v-if="loading" class="loading-container">
<t-loading />
</div>
<div v-else class="tweet-detail-container">
<div class="tweet-header">
<h2 class="tweet-title">{{ detail.title }}</h2>
<div class="tweet-meta">
<span class="author">发布者: {{ detail.member?.nikename || '未知' }}</span>
<span class="time">发布时间: {{ detail.createtime }}</span>
<t-tag v-if="detail.is_top > 0" theme="warning">置顶</t-tag>
<t-tag v-if="detail.status == 1" theme="warning">待审核</t-tag>
<t-tag v-if="detail.status == 2" theme="success">已通过</t-tag>
<t-tag v-if="detail.status == 3" theme="danger">已拒绝</t-tag>
</div>
</div>
<div class="tweet-content">
{{ detail.content }}
</div>
<div class="tweet-images" v-if="detail.files && detail.files.length > 0">
<h3>图片附件</h3>
<t-image-viewer v-model="visible" :images="detail.files">
<template #trigger="{ open }">
<div class="image-grid">
<div
v-for="(image, index) in detail.files"
:key="index"
class="image-item"
@click="open"
>
<img :src="image" :alt="`附件图片${index+1}`" />
</div>
</div>
</template>
</t-image-viewer>
</div>
<div class="tweet-actions" v-if="detail.status == 1">
<t-space>
<t-popconfirm content="确定要审核通过吗?" @confirm="review(1)">
<t-button theme="primary">通过</t-button>
</t-popconfirm>
<t-popconfirm theme="danger" @confirm="review(2)">
<template #content>
<p class="title">拒绝理由</p>
<p class="describe" style="margin-top: 10px">
<t-input v-model="reason" placeholder="请输入拒绝理由"/>
</p>
</template>
<t-button theme="warning">拒绝</t-button>
</t-popconfirm>
</t-space>
</div>
<div class="tweet-actions">
<t-space>
<t-button v-if="detail.is_top == 0" theme="success" @click="topNews">置顶</t-button>
<t-button v-else theme="warning" @click="topNews">取消置顶</t-button>
<t-popconfirm content="确认删除吗?" @confirm="del">
<t-button theme="danger">删除</t-button>
</t-popconfirm>
</t-space>
</div>
</div>
</t-card>
</template>
<script lang="ts">
import store from "@/store";
interface StoreState {
user: {
apiUrl: string;
};
}
export default {
name: 'TweetDetail',
data() {
return {
loading: true,
id: null,
detail: {},
visible: false,
reason: '',
};
},
mounted() {
this.id = this.$route.params.id || this.$route.query.id;
if (!this.id) {
this.$message.error('参数错误,未找到对应的青企圈信息');
this.goBack();
return;
}
this.getDetail();
},
methods: {
goBack() {
this.$router.push('/tweets/index');
},
getDetail() {
this.loading = true;
this.$request
.post('/tweets/detail', { id: this.id })
.then((res) => {
if (res.code == 1) {
let detail = res.data;
// URL
const apiUrl = (store.state as unknown as StoreState).user.apiUrl;
if (detail.files && detail.files.length > 0) {
detail.files = detail.files.map(file => apiUrl + file);
} else {
detail.files = [];
}
this.detail = detail;
} else {
this.$message.error(res.msg || '获取详情失败');
setTimeout(() => {
this.goBack();
}, 1500);
}
})
.catch((e) => {
console.error(e);
this.$message.error('获取详情失败');
})
.finally(() => {
this.loading = false;
});
},
topNews() {
this.$request
.post('/tweets/pin', { id: this.id })
.then((res) => {
if (res.code == 1) {
this.$message.success(this.detail.is_top > 0 ? '取消置顶成功' : '置顶成功');
this.getDetail();
} else {
this.$message.error(res.msg);
}
})
.catch((e) => {
console.error(e);
this.$message.error('操作失败');
});
},
review(type) {
this.$request
.post('/tweets/review', {
id: this.id,
status: type,
reason: this.reason,
member_id: this.detail.member_id
})
.then((res) => {
if (res.code == 1) {
this.$message.success(res.msg || '审核操作成功');
this.getDetail();
} else {
this.$message.error(res.msg);
}
})
.catch((e) => {
console.error(e);
this.$message.error('审核操作失败');
});
},
del() {
this.$request
.post('/tweets/destroy', { id: this.id })
.then((res) => {
if (res.code == 1) {
this.$message.success('删除成功!');
this.goBack();
} else {
this.$message.error(res.msg);
}
})
.catch((e) => {
console.error(e);
this.$message.error('删除失败');
});
},
}
}
</script>
<style scoped>
.loading-container {
display: flex;
justify-content: center;
padding: 50px 0;
}
.tweet-detail-container {
padding: 20px 0;
}
.tweet-header {
margin-bottom: 20px;
padding-bottom: 15px;
border-bottom: 1px solid #eee;
}
.tweet-title {
margin: 0 0 10px 0;
font-size: 24px;
font-weight: 500;
}
.tweet-meta {
display: flex;
align-items: center;
gap: 15px;
color: #666;
font-size: 14px;
}
.tweet-content {
margin-bottom: 30px;
font-size: 16px;
line-height: 1.6;
white-space: pre-wrap;
}
.tweet-images {
margin-bottom: 30px;
}
.tweet-images h3 {
margin-bottom: 15px;
font-size: 18px;
font-weight: 500;
}
.image-grid {
display: flex;
flex-wrap: wrap;
gap: 10px;
cursor: pointer;
}
.image-item {
width: 150px;
height: 150px;
overflow: hidden;
border-radius: 4px;
border: 1px solid #eee;
}
.image-item img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s;
}
.image-item:hover img {
transform: scale(1.05);
}
.tweet-actions {
margin-top: 20px;
}
</style>

View File

@ -25,7 +25,7 @@
<!-- <a v-for="item in row.files" :href="$store.state.user.apiUrl+item" target="_blank">-->
<!-- <img :src="$store.state.user.apiUrl+item" style="width: 100px;margin-right: 10px"/>-->
<!-- </a>-->
<t-image-viewer v-model="visible[rowIndex]" :images="row.files" @close="delViewer(rowIndex)">
<t-image-viewer v-model="visible[rowIndex]" :images="row.files" @close="delViewer(index)">
<template #trigger="{ open }">
<div @click="open" style="cursor: pointer" v-if="row.files.length>0">
<img alt="test" :src="row.files[0]" style="width: 200px"/>
@ -40,9 +40,8 @@
</template>
<template #select="{ row }">
<t-space :size="0">
<t-button theme="primary" @click="viewDetail(row)" style="margin-right: 10px">详情</t-button>
<t-popconfirm v-if="row.status==1" content="确定要审核通过吗?" @confirm="review(row,1)">
<t-button theme="success">通过</t-button>
<t-button theme="primary">通过</t-button>
</t-popconfirm>
<t-popconfirm v-if="row.status==1" theme="danger" @confirm="review(row,2)">
<template slot="content">
@ -68,50 +67,6 @@
></t-pagination>
</div>
</div>
<!-- 添加详情弹窗 -->
<t-dialog
:visible.sync="detailVisible"
header="青企圈详情"
:width="800"
:footer="false"
>
<div v-if="detailLoading" class="loading-container">
<t-loading />
</div>
<div v-else class="tweet-detail-container">
<div class="tweet-header">
<div class="tweet-meta">
<span class="author">发布者: {{ detailInfo.member?.nikename || '未知' }}</span>
<span class="time">发布时间: {{ detailInfo.createtime }}</span>
<t-tag v-if="detailInfo.is_top > 0" theme="warning">置顶</t-tag>
<t-tag v-if="detailInfo.status == 1" theme="warning">待审核</t-tag>
<t-tag v-if="detailInfo.status == 2" theme="success">已通过</t-tag>
<t-tag v-if="detailInfo.status == 3" theme="danger">已拒绝</t-tag>
</div>
</div>
<div class="tweet-content" v-html="detailInfo.content"></div>
<div class="tweet-images" v-if="detailInfo.files && detailInfo.files.length > 0">
<h3>图片附件</h3>
<t-image-viewer v-model="detailImageVisible" :images="detailInfo.files">
<template #trigger="{ open }">
<div class="image-grid">
<div
v-for="(image, index) in detailInfo.files"
:key="index"
class="image-item"
@click="open"
>
<img :src="image" :alt="`附件图片${index+1}`" />
</div>
</div>
</template>
</t-image-viewer>
</div>
</div>
</t-dialog>
</t-card>
</template>
@ -119,14 +74,6 @@
import store from "@/store";
import {toInteger} from "lodash";
//
interface StoreState {
user: {
association: any;
apiUrl: string;
};
}
export default {
data() {
return {
@ -134,13 +81,6 @@ export default {
state: 2,
list: [],
reason:'',
association: null,
//
detailVisible: false,
detailLoading: false,
detailInfo: {},
detailImageVisible: false,
currentDetailId: null,
columns: [
{colKey: 'title', title: '标题', align: 'center'},
{colKey: 'content', title: '内容', align: 'center'},
@ -169,14 +109,13 @@ export default {
this.getList();
},
methods: {
delViewer(rowIndex){
console.log(rowIndex);
delViewer(d){
console.log(d);
},
viewDetail(row) {
//
this.currentDetailId = row.id;
this.detailVisible = true;
this.detailInfo = row;
tabIndexChange(index){
this.state=index;
this.pagination.page=1;
this.getList();
},
topNews(row){
console.log(row);
@ -241,7 +180,7 @@ export default {
console.log(res);
if (res.code == 1) {
var list = res.data.paginator.data;
const apiUrl = (store.state as unknown as StoreState).user.apiUrl;
const apiUrl = store.state.user.apiUrl; // API URL
const transformedSelectList = list.map(item => ({
...item, //
files: item.files.length > 0 ? item.files.map(file => apiUrl + file) : []
@ -257,136 +196,6 @@ export default {
console.log(e);
});
},
topNewsDetail() {
this.$request
.post('/tweets/pin', { id: this.currentDetailId })
.then((res) => {
if (res.code == 1) {
this.$message.success(this.detailInfo.is_top > 0 ? '取消置顶成功' : '置顶成功');
this.getDetailInfo(); //
this.getList(); //
} else {
this.$message.error(res.msg);
}
})
.catch((e) => {
console.error(e);
this.$message.error('操作失败');
});
},
reviewDetail(type) {
this.$request
.post('/tweets/review', {
id: this.currentDetailId,
status: type,
reason: this.reason,
member_id: this.detailInfo.member_id
})
.then((res) => {
if (res.code == 1) {
this.$message.success(res.msg || '审核操作成功');
this.detailVisible = false; //
this.getList(); //
} else {
this.$message.error(res.msg);
}
})
.catch((e) => {
console.error(e);
this.$message.error('审核操作失败');
});
},
delDetail() {
this.$request
.post('/tweets/destroy', { id: this.currentDetailId })
.then((res) => {
if (res.code == 1) {
this.$message.success('删除成功!');
this.detailVisible = false; //
this.getList(); //
} else {
this.$message.error(res.msg);
}
})
.catch((e) => {
console.error(e);
this.$message.error('删除失败');
});
},
}
}
</script>
<style scoped>
/* 详情弹窗样式 */
.loading-container {
display: flex;
justify-content: center;
padding: 50px 0;
}
.tweet-detail-container {
padding: 0;
}
.tweet-header {
margin-bottom: 20px;
padding-bottom: 15px;
border-bottom: 1px solid #eee;
}
.tweet-meta {
display: flex;
align-items: center;
gap: 15px;
color: #666;
font-size: 14px;
flex-wrap: wrap;
}
.tweet-content {
margin-bottom: 30px;
font-size: 16px;
line-height: 1.6;
white-space: pre-wrap;
}
.tweet-images {
margin-bottom: 30px;
}
.tweet-images h3 {
margin-bottom: 15px;
font-size: 18px;
font-weight: 500;
}
.image-grid {
display: flex;
flex-wrap: wrap;
gap: 10px;
cursor: pointer;
}
.image-item {
width: 120px;
overflow: hidden;
border-radius: 4px;
border: 1px solid #eee;
}
.image-item img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s;
}
.image-item:hover img {
transform: scale(1.05);
}
.tweet-actions {
margin-top: 20px;
}
</style>

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,12 +28,7 @@
<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>
@ -42,19 +37,11 @@
<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>
@ -64,37 +51,18 @@
</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>
@ -114,18 +82,8 @@
</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="出生年月日">
@ -135,12 +93,7 @@
<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>
@ -153,7 +106,7 @@
<t-option value="九三学社社员" label="九三学社社员" key="九三学社社员"></t-option>
<t-option value="台盟盟员" label="台盟盟员" key="台盟盟员"></t-option>
<t-option value="无党派人士" label="无党派人士" key="无党派人士"></t-option>
<t-option value="群众" label="群众" key="群众"></t-option>
<t-option value="无党派人士" label="无党派人士" key="无党派人士"></t-option>
</t-select>
</t-form-item>
<t-form-item label="身份证号码">
@ -175,12 +128,7 @@
<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>
@ -189,12 +137,7 @@
</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>
@ -217,12 +160,7 @@
<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>
@ -234,24 +172,14 @@
<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"
@ -265,24 +193,14 @@
</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"
@ -300,8 +218,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"
@ -324,8 +242,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"
@ -367,7 +285,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>
@ -413,12 +331,9 @@
<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>
@ -443,7 +358,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>
@ -466,7 +381,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%">
@ -501,11 +416,8 @@
</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="企业网址">
@ -532,11 +444,7 @@
<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>
@ -548,22 +456,13 @@
<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
@ -579,22 +478,12 @@
</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
@ -614,8 +503,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"
@ -638,8 +527,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"
@ -664,8 +553,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"
@ -688,8 +577,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"
@ -714,8 +603,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"
@ -738,7 +627,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">
@ -753,14 +642,11 @@
<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>
@ -777,7 +663,8 @@
<!-- <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>
@ -789,22 +676,15 @@
<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
@ -847,7 +727,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>
@ -902,25 +782,18 @@
: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>
@ -941,8 +814,7 @@ export default {
CheckCircleIcon,
UserIcon,
LockOnIcon,
Editor,
Toolbar,
Editor, Toolbar
},
data() {
return {
@ -966,7 +838,7 @@ export default {
'insertLink',//
'insertTable',//
'codeBlock',//
],
]
},
editorConfig: {
placeholder: '',
@ -1077,11 +949,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);
@ -1181,21 +1053,20 @@ 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) {
@ -1209,10 +1080,10 @@ export default {
this.$message.error('图片上传失败!');
}
})
.catch((error) => {
.catch(error => {
console.error('文件上传失败', error);
});
});
})
},
onCloseMy() {
this.caiMode = false;
@ -1222,39 +1093,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) {
@ -1266,7 +1137,7 @@ export default {
});
},
imgLoad(msg) {
console.log(msg);
console.log(msg)
},
formatResponse(res, type) {
console.log(res);
@ -1288,7 +1159,7 @@ export default {
},
getRegion() {
this.$request
.post('/region')
.post("/region")
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1301,7 +1172,7 @@ export default {
},
getIndustry() {
this.$request
.post('/industry')
.post("/industry")
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1315,7 +1186,7 @@ export default {
},
getPlan() {
this.$request
.post('/position')
.post("/position")
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1450,6 +1321,7 @@ 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) {
@ -1460,24 +1332,21 @@ 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);
}
@ -1509,15 +1378,16 @@ 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>
@ -1587,8 +1457,8 @@ export default {
box-sizing: border-box;
outline: 0;
margin: 0;
-webkit-transition: 0.1s;
transition: 0.1s;
-webkit-transition: .1s;
transition: .1s;
font-weight: 500;
padding: 8px 15px;
font-size: 12px;
@ -1610,6 +1480,6 @@ export default {
}
.sfz:hover {
border: 1px dashed #409eff;
border: 1px dashed #409EFF;
}
</style>

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,42 +28,20 @@
<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>
<template v-if="formData.reporting_method==2">
<t-form-item name="name" label="推荐人姓名">
<!-- <t-input size="large" placeholder="推荐人姓名" />-->
<t-select
v-model="formData.recommendation_name"
filterable
placeholder="推荐人姓名"
:options="member_list"
:keys="{ value: 'id', label: 'nikename', key: 'id' }"
size="large"
@change="getMemberInfo"
></t-select>
<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>
@ -73,37 +51,18 @@
</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>
@ -123,18 +82,8 @@
</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="出生年月日">
@ -144,12 +93,7 @@
<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>
@ -162,7 +106,7 @@
<t-option value="九三学社社员" label="九三学社社员" key="九三学社社员"></t-option>
<t-option value="台盟盟员" label="台盟盟员" key="台盟盟员"></t-option>
<t-option value="无党派人士" label="无党派人士" key="无党派人士"></t-option>
<t-option value="群众" label="群众" key="群众"></t-option>
<t-option value="无党派人士" label="无党派人士" key="无党派人士"></t-option>
</t-select>
</t-form-item>
<t-form-item label="身份证号码">
@ -184,12 +128,7 @@
<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>
@ -198,12 +137,7 @@
</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>
@ -226,12 +160,7 @@
<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>
@ -243,24 +172,14 @@
<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"
@ -274,24 +193,14 @@
</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"
@ -309,8 +218,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"
@ -333,8 +242,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"
@ -376,7 +285,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>
@ -422,12 +331,9 @@
<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>
@ -452,7 +358,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>
@ -475,7 +381,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%">
@ -510,11 +416,8 @@
</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="企业网址">
@ -541,11 +444,7 @@
<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>
@ -557,22 +456,13 @@
<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
@ -588,22 +478,12 @@
</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
@ -623,8 +503,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"
@ -647,8 +527,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"
@ -673,8 +553,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"
@ -697,8 +577,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"
@ -723,8 +603,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"
@ -747,7 +627,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">
@ -762,14 +642,11 @@
<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>
@ -786,7 +663,8 @@
<!-- <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>
@ -798,22 +676,15 @@
<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
@ -856,7 +727,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>
@ -911,25 +782,18 @@
: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>
@ -950,8 +814,7 @@ export default {
CheckCircleIcon,
UserIcon,
LockOnIcon,
Editor,
Toolbar,
Editor, Toolbar
},
data() {
return {
@ -975,7 +838,7 @@ export default {
'insertLink',//
'insertTable',//
'codeBlock',//
],
]
},
editorConfig: {
placeholder: '',
@ -1016,7 +879,6 @@ export default {
intentional_association_position:'',
recommended_cities:'',
recommendation_id:'',
recommendation_name: '',
reporting_method:'',
recommendation_content:'',
phone: '',
@ -1086,45 +948,24 @@ 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);
}
console.log(this.association);
this.id = this.$route.query.id;
this.getMemberList();
this.getInfo();
this.getPlan();
this.getIndustry();
this.getRegion();
setTimeout(() => {
this.getInfo();
}, 1000);
this.getMemberList();
},
methods: {
getMemberInfo(d) {
console.log(d);
var index = this.member_list.findIndex((item) => item.id == d);
this.formData.recommendation_id = d;
this.formData.recommendation_content = this.member_list[index].work_unit + this.member_list[index].unit_position;
},
getMemberList() {
this.$request
.post('/move/association/memberList')
.then((res) => {
console.log(res);
if (res.code == 1) {
this.member_list = res.data;
}
})
.catch((e) => {
console.log(e);
});
},
onChange(value, context) {
this.work.time = value[0] + '至' + value[1];
},
@ -1211,21 +1052,20 @@ 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) {
@ -1239,10 +1079,10 @@ export default {
this.$message.error('图片上传失败!');
}
})
.catch((error) => {
.catch(error => {
console.error('文件上传失败', error);
});
});
})
},
onCloseMy() {
this.caiMode = false;
@ -1252,38 +1092,51 @@ 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")
.then((res) => {
console.log(res);
if (res.code == 1) {
this.member_list = res.data;
}
})
.catch((e) => {
console.log(e);
});
},
imgLoad(msg) {
console.log(msg);
console.log(msg)
},
formatResponse(res, type) {
console.log(res);
@ -1305,7 +1158,7 @@ export default {
},
getRegion() {
this.$request
.post('/region')
.post("/region")
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1318,7 +1171,7 @@ export default {
},
getIndustry() {
this.$request
.post('/industry')
.post("/industry")
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1332,7 +1185,7 @@ export default {
},
getPlan() {
this.$request
.post('/position')
.post("/position")
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1345,14 +1198,14 @@ export default {
},
getInfo() {
this.$request
.post('/member/find', { member_id: this.id })
.post("/member/find", {member_id: this.id})
.then((res) => {
console.log(res);
this.info = res.data;
this.formData.phone = res.data.phone;
this.formData.position_id = res.data.position_id;
this.formData.industry_id = res.data.industry_id==0?null:res.data.industry_id;
this.formData.region_id = res.data.region_id == 0 ? null : res.data.region_id;
this.formData.region_id = res.data.region_id;
this.formData.password = res.data.password;
this.formData.nikename = res.data.nikename;
this.formData.gender = res.data.gender;
@ -1373,68 +1226,6 @@ export default {
this.formData.other_contacts = res.data.other_contacts;
this.formData.other_social_positions = res.data.other_social_positions;
this.formData.position = res.data.position;
this.formData.cardf_image = res.data.cardf_image;
this.formData.cardz_image = res.data.cardz_image;
this.formData.photo_image = res.data.photo_image;
this.formData.company_image = res.data.company_image;
this.formData.business_license_image = res.data.business_license_image;
this.formData.unified_code = res.data.unified_code;
this.formData.enterprise_nature = res.data.enterprise_nature;
this.formData.enterprise_website = res.data.enterprise_website;
this.formData.if_list = res.data.if_list + '';
this.formData.employee = res.data.employee;
this.formData.previous_revenue = res.data.previous_revenue;
this.formData.previous_tax = res.data.previous_tax;
this.formData.previous_profit = res.data.previous_profit;
this.formData.previous_donation = res.data.previous_donation;
this.formData.qitaqiyerenzhiqingkuang = res.data.qitaqiyerenzhiqingkuang;
this.formData.enterprise_Introduction = res.data.enterprise_Introduction;
this.formData.enterprise_lvxingzeren = res.data.enterprise_lvxingzeren;
this.formData.introdiction = res.data.introdiction;
this.formData.enterprise_honor = res.data.enterprise_honor;
if (res.data.if_organization != null) {
this.formData.if_organization = res.data.if_organization + '';
} else {
this.formData.if_organization = '1';
}
this.formData.nature = res.data.nature;
this.formData.jiantuan_time = res.data.jiantuan_time;
this.formData.jiantuan_number = res.data.jiantuan_number;
this.formData.youth_number = res.data.youth_number;
this.formData.superior_nature = res.data.superior_nature;
this.formData.tuanweifuzerenxinxi = res.data.tuanweifuzerenxinxi;
this.formData.documents_file = res.data.documents_file;
this.formData.enterprise_location = res.data.enterprise_location;
this.formData.documents_file_show = [{ url: store.state.user.apiUrl + res.data.documents_file }];
this.formData.introduction = res.data.introduction;
this.formData.enterprise_name = res.data.enterprise_name;
this.formData.longitude = res.data.longitude;
this.formData.dimension = res.data.dimension;
this.formData.reporting_method = res.data.reporting_method;
if (res.data.recommendation_id != '' && res.data.recommendation_id != null) {
this.formData.recommendation_id = res.data.recommendation_id;
var index = this.member_list.findIndex((item) => item.id == res.data.recommendation_id);
this.formData.recommendation_name = this.member_list[index].nikename;
this.formData.recommendation_content = res.data.recommendation_content;
}
this.formData.recommended_cities = res.data.recommended_cities;
this.formData.source_channel = res.data.source_channel;
this.formData.intentional_association_position = res.data.intentional_association_position;
this.formData.mail_address = res.data.mail_address;
this.formData.zip_code = res.data.zip_code;
this.formData.registered_capital = res.data.registered_capital;
if (res.data.tuanweifuzerenxinxi != '' && res.data.tuanweifuzerenxinxi != null) {
this.tuan_list = JSON.parse(res.data.tuanweifuzerenxinxi);
} else {
this.tuan_list = [];
}
if (res.data.business_license_image == '') {
this.formData.business_license_image_show = [];
} else {
this.formData.business_license_image_show = [
{ url: store.state.user.apiUrl + res.data.business_license_image },
];
}
if (res.data.cardf_image == '') {
this.formData.cardf_image_show = [];
} else {
@ -1455,21 +1246,70 @@ export default {
} else {
this.formData.company_image_show = [{url: store.state.user.apiUrl + res.data.company_image}];
}
this.formData.cardf_image = res.data.cardf_image;
this.formData.cardz_image = res.data.cardz_image;
this.formData.photo_image = res.data.photo_image;
this.formData.company_image = res.data.company_image;
if (res.data.business_license_image == '') {
this.formData.business_license_image_show = [];
} else {
this.formData.business_license_image_show = [{url: store.state.user.apiUrl + res.data.business_license_image}];
}
this.formData.business_license_image = res.data.business_license_image;
this.formData.unified_code = res.data.unified_code;
this.formData.enterprise_nature = res.data.enterprise_nature;
this.formData.enterprise_website = res.data.enterprise_website;
this.formData.if_list = res.data.if_list+'';
this.formData.employee = res.data.employee;
this.formData.previous_revenue = res.data.previous_revenue;
this.formData.previous_tax = res.data.previous_tax;
this.formData.previous_profit = res.data.previous_profit;
this.formData.previous_donation = res.data.previous_donation;
this.formData.qitaqiyerenzhiqingkuang = res.data.qitaqiyerenzhiqingkuang;
this.formData.enterprise_Introduction = res.data.enterprise_Introduction;
this.formData.enterprise_lvxingzeren=res.data.enterprise_lvxingzeren;
this.formData.introdiction = res.data.introdiction;
this.formData.enterprise_honor = res.data.enterprise_honor;
if(res.data.if_organization!=null){
this.formData.if_organization = res.data.if_organization+'';
}else{
this.formData.if_organization="1";
}
this.formData.nature = res.data.nature;
this.formData.jiantuan_time = res.data.jiantuan_time;
this.formData.jiantuan_number = res.data.jiantuan_number;
this.formData.youth_number = res.data.youth_number;
this.formData.superior_nature = res.data.superior_nature;
this.formData.tuanweifuzerenxinxi = res.data.tuanweifuzerenxinxi;
this.formData.documents_file = res.data.documents_file;
this.formData.enterprise_location = res.data.enterprise_location;
this.formData.documents_file_show = [{url: store.state.user.apiUrl + res.data.documents_file}];
this.formData.introduction = res.data.introduction;
this.formData.enterprise_name = res.data.enterprise_name;
if(res.data.work_experience==null||res.data.work_experience==''){
this.workList = [];
}else{
this.workList = JSON.parse(res.data.work_experience);
}
if (res.data.main_social_positions == '' || res.data.main_social_positions == null) {
this.social_duties = [];
} else {
this.social_duties = res.data.main_social_positions.split(',');
}
if(res.data.other_contacts==null||res.data.other_contacts==''){
this.contactsList = [];
}else{
this.contactsList = JSON.parse(res.data.other_contacts);
}
this.formData.longitude = res.data.longitude;
this.formData.dimension=res.data.dimension;
this.formData.reporting_method = res.data.reporting_method;
this.formData.recommendation_id=res.data.recommendation_id;
this.formData.recommendation_content = res.data.recommendation_content;
this.formData.recommended_cities=res.data.recommended_cities;
this.formData.source_channel=res.data.source_channel;
this.formData.intentional_association_position=res.data.intentional_association_position;
this.formData.mail_address=res.data.mail_address;
this.formData.zip_code=res.data.zip_code;
this.formData.registered_capital=res.data.registered_capital;
this.tuan_list = JSON.parse(res.data.tuanweifuzerenxinxi);
})
.catch((e) => {
console.log(e);
@ -1591,6 +1431,7 @@ export default {
// }
this.formData.member_id = this.id;
if (this.workList && this.workList.length > 0) {
this.formData.work_experience = JSON.stringify(this.workList);
}
if ( this.contactsList && this.contactsList.length > 0) {
@ -1604,14 +1445,14 @@ 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/update', this.formData)
.post("/member/update", this.formData)
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -1647,15 +1488,16 @@ 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>
@ -1725,8 +1567,8 @@ export default {
box-sizing: border-box;
outline: 0;
margin: 0;
-webkit-transition: 0.1s;
transition: 0.1s;
-webkit-transition: .1s;
transition: .1s;
font-weight: 500;
padding: 8px 15px;
font-size: 12px;
@ -1748,6 +1590,6 @@ export default {
}
.sfz:hover {
border: 1px dashed #409eff;
border: 1px dashed #409EFF;
}
</style>

View File

@ -15,18 +15,13 @@
: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>
@ -49,18 +44,9 @@
></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">
@ -69,7 +55,8 @@
<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>
@ -77,173 +64,89 @@
<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>
@ -263,8 +166,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},
@ -287,13 +190,13 @@ export default {
size: 10,
updateInfo: {
member: {},
member_log: {},
member_log: {}
},
member_id: 0,
id: 0,
content: '',
type: 0,
};
}
},
mounted() {
this.getList();
@ -313,15 +216,16 @@ 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);
@ -342,7 +246,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);
@ -357,7 +261,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;
@ -376,8 +280,8 @@ export default {
this.list = [];
this.getList();
},
},
};
}
}
</script>
<style scoped lang="less">
::-webkit-scrollbar {

View File

@ -1,7 +1,13 @@
<template>
<t-card title="会员列表" :bordered="false">
<div class="form-step-container">
<t-form ref="form" :data="formData" :label-width="80" @submit="onSubmit" :style="{ marginBottom: '30px' }">
<t-form
ref="form"
:data="formData"
:label-width="80"
@submit="onSubmit"
:style="{ marginBottom: '30px' }"
>
<t-row>
<t-form-item label="会员姓名" name="nikename">
<t-input
@ -16,8 +22,7 @@
<t-input
v-model="formData.phone"
class="form-item-content"
placeholder="请输入手机号"
style="width: 150px"
placeholder="请输入手机号" style="width: 150px"
/>
</t-form-item>
<t-form-item label="职务" name="phone">
@ -39,8 +44,7 @@
<t-space>
<t-button theme="primary" type="submit" :style="{ marginLeft: '8px' }"> 查询</t-button>
<t-button theme="success" @click="()=>$router.push('/user/user_add')"> 新增会员</t-button>
<t-button @click="dow" theme="primary"
>{{ selectedRowKeys.length > 0 ? '选中导出' : '导出全部' }}
<t-button @click="dow" theme="primary">{{ selectedRowKeys.length > 0 ? '选中导出' : '导出全部' }}
</t-button>
</t-space>
</div>
@ -66,14 +70,10 @@
@select-change="rehandleSelectChange"
>
<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>
@ -86,8 +86,7 @@
<t-button theme="default" v-if="row.if_xianshi==1||row.if_xianshi==2" @click="openUrl(row.member_id)">
详细信息
</t-button>
<t-button theme="default" v-if="row.if_xianshi == 0 || row.if_xianshi == 3" @click="openUrl(row.member_id)"
>审核
<t-button theme="default" v-if="row.if_xianshi==0||row.if_xianshi==3" @click="openUrl(row.member_id)">审核
</t-button>
<t-button @click="()=>$router.push('/user/user_edit?id='+row.member_id)">编辑</t-button>
<t-popconfirm v-if="row.if_xianshi==1" content="确认要改为待审核状态吗?" @confirm="hidden(row)">
@ -112,10 +111,10 @@
</t-card>
</template>
<script lang="ts">
import store from '@/store';
import { toInteger } from 'lodash';
import store from "@/store";
import {toInteger} from "lodash";
import {CloudDownloadIcon} from 'tdesign-icons-vue';
import router from '@/router';
import router from "@/router";
export default {
components: {
@ -155,10 +154,11 @@ export default {
},
positionList: [],
region_list: [],
};
}
},
mounted() {
if (typeof this.$store.state.user.association == 'object') {
if (typeof (this.$store.state.user.association) == 'object') {
this.association = this.$store.state.user.association;
} else {
this.association = JSON.parse(this.$store.state.user.association);
@ -190,18 +190,12 @@ export default {
ids = JSON.stringify(this.selectedRowKeys);
}
var token = store.state.user.token;
window.location.href =
'https://hnyea.0rui.cn/api/excel_controller/memberexport?token=' +
token +
'&ids=' +
ids +
'&if_xianshi=' +
this.tabIndex;
window.location.href = "https://hnyea.0rui.cn/api/excel_controller/memberexport?token=" + token + "&ids=" + ids+"&if_xianshi="+this.tabIndex;
},
hidden(row){
console.log(row);
this.$request
.post('/member/examinelist', { member_id: row.member_id, if_xianshi: 0 })
.post("/member/examinelist",{member_id:row.member_id,if_xianshi:0})
.then((res) => {
console.log(res);
this.page = 1;
@ -215,7 +209,7 @@ export default {
},
getRegion() {
this.$request
.post('/region')
.post("/region")
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -228,7 +222,7 @@ export default {
},
getPositionList() {
this.$request
.post('/position')
.post("/position")
.then((res) => {
console.log(res);
this.positionList = res.data;
@ -248,7 +242,7 @@ export default {
},
del(row) {
this.$request
.post('/member/del', { member_id: row.member_id })
.post("/member/del", {member_id: row.member_id})
.then((res) => {
console.log(res);
if (res.code == 1) {
@ -276,7 +270,7 @@ export default {
this.formData.size = this.size;
this.formData.if_xianshi = this.tabIndex;
this.$request
.post('/member', this.formData)
.post("/member", this.formData)
.then((res) => {
console.log(res);
this.list = res.data.ret;
@ -292,7 +286,9 @@ export default {
sessionStorage.setItem('sUserPage', 1);
this.getList();
},
},
};
}
}
</script>
<style scoped lang="less"></style>
<style scoped lang="less">
</style>

View File

@ -1,10 +1,6 @@
<template>
<div class="detail-base">
<t-card title="会员详情" :bordered="false" class="info-block" style="padding: 30px">
<template #actions>
<t-button theme="primary" @click="openPDF" size="large" style="margin-left: 20px">查看PDF文件</t-button>
</template>
<div>
<t-steps :current="0" readonly v-if="info.if_xianshi!=1">
<t-step-item title="信息审核" content="提交的信息审核"></t-step-item>
<t-step-item v-if="info.if_xianshi!=2" title="会费缴纳" content="等待会费缴纳"></t-step-item>
@ -12,8 +8,7 @@
:content="info.result.content"></t-step-item>
<t-step-item title="成功入会" content="已成功入会"></t-step-item>
</t-steps>
</div>
<div style="margin-top: 20px;">
<div>
<div>
<div style="color: #2E2E2E;font-size: 28px;font-weight: bold">1.入会资料</div>
<div style="height: 2px;background-color: #999999;width: 100%;margin-top: 20px"></div>
@ -36,7 +31,7 @@
</template>
<template v-if="info.reporting_method==2">
<td>推荐人姓名</td>
<td>{{ info.recommendation_name }}</td>
<td>{{ info.recommendation_id }}</td>
<td>推荐人单位及职务</td>
<td>{{ info.recommendation_content }}</td>
</template>
@ -57,8 +52,7 @@
:closeOnEscKeydown="false">
<template #trigger="{ open }">
<div style="cursor: pointer" @click="open">
<img v-if="info.photo_image != '' && info.photo_image != null"
:src="$store.state.user.apiUrl + info.photo_image" style="width: 150px;">
<img v-if="info.photo_image!=''&&info.photo_image!=null" :src="$store.state.user.apiUrl+info.photo_image" style="width: 200px;height: 200px;">
<span v-if="info.photo_image==''||info.photo_image==null">未上传</span>
</div>
</template>
@ -67,7 +61,7 @@
<td>姓名</td>
<td>{{ info.nikename }}</td>
<td>性别</td>
<td>{{ info.gender === 0 ? '女' : info.gender === 1 ? '男' : '未填写' }}</td>
<td>{{ info.gender == 0 ? '女' : '男' }}</td>
<td>协会职务</td>
<td>{{ info.position_name}}</td>
<td>出生年月日</td>
@ -119,8 +113,7 @@
:closeOnEscKeydown="false">
<template #trigger="{ open }">
<div style="cursor: pointer" @click="open">
<img v-if="info.cardz_image != '' && info.cardz_image != null"
:src="$store.state.user.apiUrl + info.cardz_image" style="height: 150px;">
<img v-if="info.cardz_image!=''&&info.cardz_image!=null" :src="$store.state.user.apiUrl+info.cardz_image" style="height: 150px;">
<span v-if="info.cardz_image==''||info.cardz_image==null">未上传</span>
</div>
</template>
@ -132,8 +125,7 @@
:closeOnEscKeydown="false">
<template #trigger="{ open }">
<div style="cursor: pointer" @click="open">
<img v-if="info.cardf_image != '' && info.cardf_image != null"
:src="$store.state.user.apiUrl + info.cardf_image" style="height: 150px;">
<img v-if="info.cardf_image!=''&&info.cardf_image!=null" :src="$store.state.user.apiUrl+info.cardf_image" style="height: 150px;">
<span v-if="info.cardf_image==''||info.cardf_image==null">未上传</span>
</div>
</template>
@ -229,8 +221,7 @@
<td colspan="1">{{ info.enterprise_location }}</td>
<td>企业地址</td>
<td colspan="1">
<a href="https://lbs.qq.com/tool/getpoint/get-point.html" target="_blank">{{ info.longitude }},{{
info.dimension }}</a>
<a href="https://lbs.qq.com/tool/getpoint/get-point.html" target="_blank">{{ info.longitude }},{{ info.dimension }}</a>
</td>
<td>注册资金万元</td>
<td>{{ info.registered_capital }}</td>
@ -266,8 +257,7 @@
:closeOnEscKeydown="false">
<template #trigger="{ open }">
<div style="cursor: pointer" @click="open">
<img v-if="info.business_license_image != '' && info.business_license_image != null"
:src="$store.state.user.apiUrl + info.business_license_image" style="height: 150px; ">
<img v-if="info.business_license_image!=''&&info.business_license_image!=null" :src="$store.state.user.apiUrl + info.business_license_image" style="height: 150px; ">
<span v-if="info.business_license_image==''||info.business_license_image==null">未上传</span>
</div>
</template>
@ -281,8 +271,7 @@
:closeOnEscKeydown="false">
<template #trigger="{ open }">
<div style="cursor: pointer" @click="open">
<img v-if="info.company_image != '' && info.company_image != null"
:src="$store.state.user.apiUrl + info.company_image" style="height: 150px; ">
<img v-if="info.company_image!=''&&info.company_image!=null" :src="$store.state.user.apiUrl + info.company_image" style="height: 150px; ">
<span v-if="info.company_image==''||info.company_image==null">未上传</span>
</div>
</template>
@ -365,8 +354,7 @@
:closeOnEscKeydown="false">
<template #trigger="{ open }">
<div style="cursor: pointer" @click="open">
<img v-if="info.documents_file != '' && info.documents_file != null"
:src="$store.state.user.apiUrl + info.documents_file" style="height: 150px; ">
<img v-if="info.documents_file!=''&&info.documents_file!=null" :src="$store.state.user.apiUrl + info.documents_file" style="height: 150px; ">
<span v-if="info.documents_file==''||info.documents_file==null">未上传</span>
</div>
</template>
@ -424,7 +412,6 @@
<t-button theme="primary" size="large" style="margin-left: 20px">会费已缴纳</t-button>
</t-popconfirm>
</div>
</t-card>
</div>
</template>
@ -450,28 +437,8 @@ export default {
this.getInfo();
},
methods: {
openPDF() {
const link = document.createElement('a');
if (this.info.openid == '' || this.info.openid == null) {
//const token = this.$store.state.user.token;
//link.href = `https://hnyea.0rui.cn/api/member/getMemberPdf?member_id=${this.info.member_id}&token=${token}`;
this.$message.error('当前用户暂无法生成PDF');
return;
} else {
if (this.info.pdf_url == '' || this.info.pdf_url == null) {
link.href = `https://hnyea.0rui.cn/api/move/pdf_member/exportPdf?openid=${this.info.openid}`;
} else {
link.href = `https://hnyea.0rui.cn${this.info.pdf_url}`;
}
}
link.target = '_blank'; //
link.rel = 'noopener noreferrer'; //
link.style.display = 'none';
document.body.appendChild(link);
link.click();
document.body.removeChild(link); // DOM
},
getInfo() {
this.$request
.post("/member/find", {member_id: this.member_id})
.then((res) => {
@ -481,6 +448,8 @@ export default {
key.other_contacts = key.other_contacts!=''?JSON.parse(key.other_contacts):'';
key.tuanweifuzerenxinxi = key.tuanweifuzerenxinxi!=''?JSON.parse(key.tuanweifuzerenxinxi):'';
this.info = key;
console.log(key);
})
.catch((e) => {
console.log(e);
@ -516,14 +485,12 @@ export default {
}
.my_table {
border-collapse: collapse;
/* 合并边框 */
border-collapse: collapse; /* 合并边框 */
width: 100%;
}
.my_table td {
border: 1px solid black;
/* 设置单元格边框 */
border: 1px solid black; /* 设置单元格边框 */
text-align: center;
min-width: 100px;
padding: 13px;

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);