From 9552761094cb55fe14af75240bbf58b719ba57b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=BF=83=E5=AE=87?= Date: Wed, 14 Jun 2023 10:37:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=9A=E5=91=98=E7=94=B3=E8=AF=B7cont.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Information/Component/memberApply.jsx | 14 ++++++----- src/forge/Information/Pages/zoneVIP.jsx | 25 ++++++++++++------- src/forge/Information/api.js | 17 +++++++++++++ src/forge/Information/index.scss | 11 ++++++++ src/forge/Information/indexZone1.scss | 11 ++++++++ 5 files changed, 63 insertions(+), 15 deletions(-) diff --git a/src/forge/Information/Component/memberApply.jsx b/src/forge/Information/Component/memberApply.jsx index 9025026fe..824e638fc 100644 --- a/src/forge/Information/Component/memberApply.jsx +++ b/src/forge/Information/Component/memberApply.jsx @@ -1,4 +1,4 @@ -import React , {forwardRef, useEffect} from 'react'; +import React , {forwardRef, useEffect, useState} from 'react'; import { Modal , Form , Input , Button } from 'antd'; import UploadImage from '../../Team/Component/UploadImage'; import { getImageUrl } from 'educoder'; @@ -8,23 +8,25 @@ const { TextArea } = Input; function MemberApply(props){ const { getFieldDecorator, validateFields , setFieldsValue } = props.form; const { current_user, onOk, visible, onCancel } = props + const [imageUrl, setImageUrl] = useState(undefined) useEffect(()=>{ - // if(email){ - // setFieldsValue({email}) - // } + if (current_user) { + setImageUrl(current_user.image_url); + } },[current_user]) function onSure(){ validateFields((error,values)=>{ if(!error){ - console.log(values) + values.imageUrl = imageUrl + onOk(values) } }) } function getImageId(id){ - console.log(image) + setImageUrl(`/api/attachments/${id}`) } const layout = { diff --git a/src/forge/Information/Pages/zoneVIP.jsx b/src/forge/Information/Pages/zoneVIP.jsx index b9b4d4b53..5b60f4147 100644 --- a/src/forge/Information/Pages/zoneVIP.jsx +++ b/src/forge/Information/Pages/zoneVIP.jsx @@ -3,12 +3,11 @@ import Crown from '../img/crown.png'; import Nodata from '../../Nodata'; import { Link } from 'react-router-dom'; import { Spin, Button } from 'antd'; -import { httpUrl } from '../fetch'; -import axios from 'axios'; import { tempConfig } from '../tempInfo' import MemberApply from '../Component/memberApply'; +import { getVIPLists, getAuditStatus, applyJoin } from '../api'; -import '../indexZone1.scss' +import '../indexZone1.scss'; function ZoneVIP(props){ @@ -23,29 +22,37 @@ function ZoneVIP(props){ if(id){ setIsSpin(true); getLists(); + getMemberStatus(); } },[id]) function getLists(){ - const url = `${httpUrl}/zone/open/${id}/member/overviewList`; - axios.get(url).then(response=>{ + getVIPLists(id).then(response=>{ if(response){ - setVIPLists(response.data.rows); + setVIPLists(response.rows); setIsSpin(false); } }).catch(error=>{setIsSpin(false);}) } + function getMemberStatus() { + getAuditStatus(id).then(res => { + console.log(res) + }) + } + function onOk(e) { - console.log(e) + applyJoin(id, e).then(res => { + console.log(res) + }) } return(

{ tempConfig[temp].member }

{ tempConfig[temp].vipDesc }

- - setApplyVisible(!applyVisible)} current_user={props.current_user}/> + + setApplyVisible(!applyVisible)} current_user={props.current_user}/>
diff --git a/src/forge/Information/api.js b/src/forge/Information/api.js index 6d0576ca0..6a739b321 100644 --- a/src/forge/Information/api.js +++ b/src/forge/Information/api.js @@ -81,4 +81,21 @@ export function getVIPLists(id){ url:`/zone/open/${id}/member/overviewList`, method: 'get', }) +} + +/**会员申请状态 */ +export function getAuditStatus(id){ + return fetch({ + url:`/zone/member/zone/${id}/auditStatus`, + method: 'get', + }) +} + +/**会员申请状态 */ +export function applyJoin(id,data) { + return fetch({ + url: '/zone/member/applyToJoin/zone/${id}', + method: 'post', + data: data + }); } \ No newline at end of file diff --git a/src/forge/Information/index.scss b/src/forge/Information/index.scss index 2b3b97bf8..40927143a 100644 --- a/src/forge/Information/index.scss +++ b/src/forge/Information/index.scss @@ -901,6 +901,17 @@ } .zone_VIP_box{ padding:50px 0px; + display: flex; + flex-direction: column; + align-items: center; + .apply_button { + flex-grow: 0; + margin-top: 10px; + &:hover, &:active, &:focus { + color: var(--primary-color); + border-color: var(--primary-color); + } + } .vip_sub_title{ color:#1f2329; font-size:15px; diff --git a/src/forge/Information/indexZone1.scss b/src/forge/Information/indexZone1.scss index e2bc2d5ff..686427e21 100644 --- a/src/forge/Information/indexZone1.scss +++ b/src/forge/Information/indexZone1.scss @@ -510,6 +510,17 @@ } .zone1_VIP_box{ padding:50px 0px; + display: flex; + flex-direction: column; + align-items: center; + .apply_button { + flex-grow: 0; + margin-top: 10px; + &:hover, &:active, &:focus { + color: var(--primary-color); + border-color: var(--primary-color); + } + } .in_title{ font-size: 38px; }