--对接编辑头像
This commit is contained in:
parent
f704a67f06
commit
c092b0a638
@ -21,36 +21,3 @@ import { useRequest } from "@/use/useHttp"
|
|||||||
method: "put",
|
method: "put",
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 地址详情
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
export const addressDetailApi = () => {
|
|
||||||
return useRequest({
|
|
||||||
url: `/v1/mall/address`,
|
|
||||||
method: "get",
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 地址编辑
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
export const addressEditApi = () => {
|
|
||||||
return useRequest({
|
|
||||||
url: `/v1/mall/address`,
|
|
||||||
method: "put",
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 地址删除
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
export const addressDeleteApi = () => {
|
|
||||||
return useRequest({
|
|
||||||
url: `/v1/mall/address`,
|
|
||||||
method: "delete",
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
@ -39,3 +39,24 @@ import { useRequest } from "@/use/useHttp"
|
|||||||
method: "put",
|
method: "put",
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 公司类型|企业类型 下拉列表
|
||||||
|
*/
|
||||||
|
export const companyTypeApi = () => {
|
||||||
|
return useRequest({
|
||||||
|
url: `/v1/mall/enum/purchaserType`,
|
||||||
|
method: "get",
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 头像更改
|
||||||
|
*/
|
||||||
|
export const portraitUpdateApi = () => {
|
||||||
|
return useRequest({
|
||||||
|
url: `/v1/mall/user/avatar`,
|
||||||
|
method: "put",
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -1,15 +1,17 @@
|
|||||||
|
|
||||||
import { alert, goLink, isEmptyObject, retrieval } from "@/common/common";
|
import { alert, goLink, isEmptyObject, retrieval } from "@/common/common";
|
||||||
import Popup from "@/components/popup";
|
import Popup from "@/components/popup";
|
||||||
import { Button, Image, Text, Textarea, View } from "@tarojs/components"
|
import { Button, Image, Picker, Text, Textarea, View } from "@tarojs/components"
|
||||||
import Taro, { chooseMedia } from "@tarojs/taro";
|
import Taro, { chooseMedia } from "@tarojs/taro";
|
||||||
import { realNameUpdateApi } from "@/api/user";
|
import { realNameUpdateApi, companyTypeApi, portraitUpdateApi } from "@/api/user";
|
||||||
import { companyDetailApi, companyUpdateApi } from "@/api/company"
|
import { companyDetailApi, companyUpdateApi } from "@/api/company"
|
||||||
import { memo, useCallback, useEffect, useRef, useState } from "react"
|
import { memo, useCallback, useEffect, useRef, useState } from "react"
|
||||||
import "./index.scss"
|
import "./index.scss"
|
||||||
import ModifyModal from "./components/ModifyModal";
|
import ModifyModal from "./components/ModifyModal";
|
||||||
import useLogin from "@/use/useLogin";
|
import useLogin from "@/use/useLogin";
|
||||||
import { useSelector } from "@/reducers/hooks";
|
import { useSelector } from "@/reducers/hooks";
|
||||||
|
import useUploadCDNImg from "@/use/useUploadImage";
|
||||||
|
import { IMG_CND_Prefix } from "@/common/constant";
|
||||||
|
|
||||||
export default ()=>{
|
export default ()=>{
|
||||||
const { getPhoneNumber, getAdminUserInfo } = useLogin();
|
const { getPhoneNumber, getAdminUserInfo } = useLogin();
|
||||||
@ -17,9 +19,17 @@ export default ()=>{
|
|||||||
// 用户信息
|
// 用户信息
|
||||||
useEffect(()=>{
|
useEffect(()=>{
|
||||||
setFormData({
|
setFormData({
|
||||||
...adminUserInfo as any
|
...formData,
|
||||||
})
|
...adminUserInfo as any,
|
||||||
}, [adminUserInfo])
|
});
|
||||||
|
}, [adminUserInfo]);
|
||||||
|
useEffect(()=>{
|
||||||
|
setFormData({
|
||||||
|
...adminUserInfo as any,
|
||||||
|
company_type_index: 0
|
||||||
|
});
|
||||||
|
getCompanyTypeData();
|
||||||
|
},[])
|
||||||
// 表单数据
|
// 表单数据
|
||||||
const [formData, setFormData] = useState({
|
const [formData, setFormData] = useState({
|
||||||
user_name: "麦兜"
|
user_name: "麦兜"
|
||||||
@ -27,21 +37,28 @@ export default ()=>{
|
|||||||
// 昵称修改保存
|
// 昵称修改保存
|
||||||
const { fetchData: realNameUpdateFetch } = realNameUpdateApi();
|
const { fetchData: realNameUpdateFetch } = realNameUpdateApi();
|
||||||
const rules = {
|
const rules = {
|
||||||
user_name: [{
|
text: [{
|
||||||
message: "请输入"
|
message: "请输入"
|
||||||
}]
|
}]
|
||||||
}
|
}
|
||||||
const {fetchData: saveFetch} = companyUpdateApi();
|
const {fetchData: saveFetch} = companyUpdateApi();
|
||||||
|
const {fetchData: getCompanyFetch} = companyDetailApi();
|
||||||
const handleTextareaSave = async (text, type)=>{
|
const handleTextareaSave = async (text, type)=>{
|
||||||
retrieval({text},rules).then(async ()=>{
|
retrieval({text},rules).then(async ()=>{
|
||||||
let result;
|
let result;
|
||||||
if(type=="Ickname"){
|
if(type=="Ickname"){
|
||||||
result = await realNameUpdateFetch({real_name: text});
|
result = await realNameUpdateFetch({real_name: text});
|
||||||
}else{
|
}else{
|
||||||
result = saveFetch({company_name: text});
|
const params = await getCompanyFetch();
|
||||||
|
result = await saveFetch({
|
||||||
|
...params.data,
|
||||||
|
company_name: text
|
||||||
|
});
|
||||||
}
|
}
|
||||||
if(result.success){
|
if(result.success){
|
||||||
getAdminUserInfo();
|
getAdminUserInfo();
|
||||||
|
(ModifyIcknameEl.current as any).setModalShow(false);
|
||||||
|
(ModifyCompanyNameEl.current as any).setModalShow(false)
|
||||||
alert.success("保存成功");
|
alert.success("保存成功");
|
||||||
}else{
|
}else{
|
||||||
alert.none(result.msg);
|
alert.none(result.msg);
|
||||||
@ -56,13 +73,26 @@ export default ()=>{
|
|||||||
goLink(url);
|
goLink(url);
|
||||||
}
|
}
|
||||||
// 肖像编辑
|
// 肖像编辑
|
||||||
|
const { fetchData: portraitUpdateFetch } = portraitUpdateApi();
|
||||||
|
const {getWxPhoto} = useUploadCDNImg();
|
||||||
const handleSelectRortrait = ()=>{
|
const handleSelectRortrait = ()=>{
|
||||||
chooseMedia({
|
Taro.showModal({
|
||||||
count: 1,
|
title: "提示",
|
||||||
mediaType: ["image"],
|
content: "是否确定更改头像?",
|
||||||
success(ev){
|
showCancel: true,
|
||||||
console.log(ev);
|
async success(ev){
|
||||||
|
if(ev.confirm){
|
||||||
|
let result = await getWxPhoto('mall');
|
||||||
|
const portraitUpdateResult = await portraitUpdateFetch({
|
||||||
|
avatar_url: IMG_CND_Prefix+(result as any).url
|
||||||
|
});
|
||||||
|
if(portraitUpdateResult.success){
|
||||||
|
getAdminUserInfo();
|
||||||
|
alert.success("保存成功");
|
||||||
|
}else{
|
||||||
|
alert.none(portraitUpdateResult.msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -75,11 +105,46 @@ export default ()=>{
|
|||||||
}
|
}
|
||||||
const ModifyIcknameEl = useRef(null);
|
const ModifyIcknameEl = useRef(null);
|
||||||
const ModifyCompanyNameEl = useRef(null);
|
const ModifyCompanyNameEl = useRef(null);
|
||||||
|
// 获取企业类型
|
||||||
|
const { fetchData: companyTypeFetch, state: companyTypeData } = companyTypeApi();
|
||||||
|
const getCompanyTypeData = async ()=>{
|
||||||
|
const reuslt = await companyTypeFetch();
|
||||||
|
if(reuslt.success){
|
||||||
|
reuslt.data?.list?.every((item,index)=>{
|
||||||
|
if(item.id==(adminUserInfo as any).purchaser_type){
|
||||||
|
setFormData({
|
||||||
|
...adminUserInfo as any,
|
||||||
|
company_type_index: index
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 修改企业类型
|
||||||
|
const handleCompanyType = async (ev)=>{
|
||||||
|
const {value} = ev.detail;
|
||||||
|
const item = companyTypeData.data.list&&companyTypeData.data.list[value];
|
||||||
|
if(item){
|
||||||
|
const params = await getCompanyFetch();
|
||||||
|
const result = await saveFetch({
|
||||||
|
...params.data,
|
||||||
|
purchaser_type: item.id
|
||||||
|
});
|
||||||
|
if(result.success){
|
||||||
|
getAdminUserInfo();
|
||||||
|
alert.success("保存成功")
|
||||||
|
}else{
|
||||||
|
alert.none(result.msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<View className="user-edit">
|
<View className="user-edit">
|
||||||
<View onClick={handleSelectRortrait} className="user-edit-portrait">
|
<View onClick={handleSelectRortrait} className="user-edit-portrait">
|
||||||
<Image src="https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg.jj20.com%2Fup%2Fallimg%2F1113%2F052420110515%2F200524110515-2-1200.jpg&refer=http%3A%2F%2Fimg.jj20.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1652840455&t=6d2fd53931578ef6e213a929a77d059c"/>
|
<Image src={(formData as any)?.avatar_url}/>
|
||||||
<View>点击编辑头像</View>
|
<View>点击编辑头像</View>
|
||||||
</View>
|
</View>
|
||||||
<View className="user-edit-content">
|
<View className="user-edit-content">
|
||||||
@ -97,13 +162,17 @@ export default ()=>{
|
|||||||
<View className="user-edit-content">
|
<View className="user-edit-content">
|
||||||
<View className="user-edit-content-title"><Text/> 组织资料</View>
|
<View className="user-edit-content-title"><Text/> 组织资料</View>
|
||||||
<UserEditList onClick={()=>(ModifyCompanyNameEl.current as any).setModalShow(true)} data={(formData as any)?.company_name} label="名称" placeholder="待绑定" icon=""/>
|
<UserEditList onClick={()=>(ModifyCompanyNameEl.current as any).setModalShow(true)} data={(formData as any)?.company_name} label="名称" placeholder="待绑定" icon=""/>
|
||||||
<UserEditList onClick={()=>onNavigate("/pages/company/index")} label="类型" placeholder="完善公司/组织信息" icon=""/>
|
<UserEditList label="类型" placeholder="完善公司/组织信息" icon="">
|
||||||
|
<Picker mode="selector" range={(companyTypeData.data as any).list as any} rangeKey="name" value={(formData as any)?.company_type_index} onChange={handleCompanyType}>
|
||||||
|
{(companyTypeData.data as any).list&&(companyTypeData.data as any).list[(formData as any)?.company_type_index].name}
|
||||||
|
</Picker>
|
||||||
|
</UserEditList>
|
||||||
<UserEditList onClick={()=>onNavigate("/pages/certification/index")} label="我的认证" placeholder="待绑定" icon="">
|
<UserEditList onClick={()=>onNavigate("/pages/certification/index")} label="我的认证" placeholder="待绑定" icon="">
|
||||||
<View className="user-edit-content-company">
|
<View className="user-edit-content-company">
|
||||||
<Text className="iconfont "/> 未认证
|
<Text className="iconfont "/> 未认证
|
||||||
</View>
|
</View>
|
||||||
</UserEditList>
|
</UserEditList>
|
||||||
<UserEditList onClick={()=>onNavigate("/pages/weightList/index")} label="创建人" data={(formData as any)?.founder_user_name} placeholder="完善公司/组织信息" icon=""/>
|
<UserEditList label="创建人" data={(formData as any)?.founder_user_name} placeholder="完善公司/组织信息" icon=""/>
|
||||||
</View>
|
</View>
|
||||||
<Button hoverClass="none" className="user-edit-logout">退出当前账号</Button>
|
<Button hoverClass="none" className="user-edit-logout">退出当前账号</Button>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user