This commit is contained in:
hackrobot
2024-07-17 19:29:38 +08:00
parent 6642856bbb
commit a1aef1d15c
2 changed files with 112 additions and 24 deletions

View File

@@ -37,6 +37,7 @@ const Index = () => {
const [current, setcurrent] = useState(0);
const [openId, setopenId] = useState(null);
const [wxid, setwxid] = useState(null);
const [userInfo, setuserInfo] = useState(null);
const [open, setopen] = useState(false);
const [referer, setreferer] = useState(window.document.referrer);
@@ -70,6 +71,31 @@ const Index = () => {
// 获取到openid
window.localStorage.setItem("openid", hashopenid);
setopenId(hashopenid);
// 查询数据库是否存在openid
Taro.request({
method: "GET",
// url: `/api/add?openid=${hashopenid}`, //仅为示例,并非真实的接口地址
url: `/api/user/${window.localStorage.getItem("openid")}`, //仅为示例,并非真实的接口地址
success: function (res) {
if (res?.data?.userInfo) {
//判断wxid是否存在
if (res?.data?.userInfo?.wxid) {
// 有完整的用户信息userInfo
setuserInfo(res?.data?.userInfo);
window.localStorage.setItem("userInfo", userInfo);
} else {
//不完整的openid用户信息
}
} else {
// 新增openid用户
// addopenidUser()
}
},
complete: function (finy) {
// tg消息通知
tgMessage();
},
});
} else {
let nowUrl = window.location.href;
let payUrl = `https://payjs.cn/api/openid?mchid=1561724891&callback_url=${nowUrl}`;
@@ -81,34 +107,94 @@ const Index = () => {
const getWxidFromUrl = () => {
const urlParams = new URLSearchParams(window.location.search);
const urlwxid = urlParams.get("wxid");
if (!!urlwxid){
if (!!urlwxid) {
setwxid(urlwxid);
// 绑定wxid与openid到数据库
window.localStorage.setItem("wxid", wxid);
// 优先查询openid是否存在数据库
Taro.request({
method:'GET',
url: `/api/user/${openId}`, //仅为示例,并非真实的接口地址
// url: "https://pay.hackrobot.cn/api/payh5", //仅为示例,并非真实的接口地址
method: "GET",
url: `/api/user/${urlwxid}`, //仅为示例,并非真实的接口地址
// url: `/api/user/${window.localStorage.getItem("openid")}`, //仅为示例,并非真实的接口地址
success: function (res) {
window.alert(res)
if (res?.data?.userInfo) {
//判断wxid是否存在
if (res?.data?.userInfo?.openid) {
// 有完整的用户信息userInfo
setuserInfo(res?.data?.userInfo);
window.localStorage.setItem("userInfo", userInfo);
} else {
// 绑定wxid与openid到数据库
wxidTapopenid(urlwxid);
}
} else {
// 新增wxid用户
}
},
complete: function (finy) {
// tg消息通知
tgMessage();
},
});
} else {
// tg消息通知
tgMessage();
}
return wxid;
};
// 绑定wxid与openid
const wxidTapopenid = (newWxid) => {
const userUpdateData = {
openid: window.localStorage.getItem("openid"), // 只更新 openid 字段
};
Taro.request({
method: "PUT",
// url: `/api/user/${urlwxid}`, //仅为示例,并非真实的接口地址
url: `/api/user/${newWxid}`, //仅为示例,并非真实的接口地址
data: userUpdateData,
header: {
"Content-Type": "application/json",
},
success: function (res) {},
fail: function (err) {},
complete: function (finy) {},
});
};
// 新增openid用户
const addopenidUser = () => {
const userUpdateData = {
openid: window.localStorage.getItem("openid"), // 只更新 openid 字段
};
Taro.request({
method: "GET",
// url: `/api/user/${urlwxid}`, //仅为示例,并非真实的接口地址
url: `/api/user/${window.localStorage.getItem("openid")}`, //仅为示例,并非真实的接口地址
data: userUpdateData,
header: {
"Content-Type": "application/json",
},
success: function (res) {},
fail: function (err) {},
complete: function (finy) {},
});
};
// 网页查看通知
const tgMessage = () => {
Taro.request({
method:'GET',
url: `/api/tgMessage?openid=${openId}`, //仅为示例,并非真实的接口地址
method: "GET",
url: `/api/tgMessage?openid=${window.localStorage.getItem("openid")}`, //仅为示例,并非真实的接口地址
// url: "https://pay.hackrobot.cn/api/payh5", //仅为示例,并非真实的接口地址
success: function (res) {
console.log('访问提醒发送成功');
console.log("访问提醒发送成功");
},
});
};
// 入群申请
useEffect(() => {
@@ -119,7 +205,7 @@ const Index = () => {
// window.alert(window.localStorage.getItem('openid'))
// 获取wxid参数
getWxidFromUrl();
tgMessage()
// tgMessage();
}, []);
const goBack = () => {
@@ -224,7 +310,7 @@ const Index = () => {
style="width: 30px;height:30px;background: #fff;"
src={nomad}
/>
<View className="bookNmae">数字游民</View>
<View className="bookNmae">数字游民手册</View>
</View>
<View className="subtitle">多元自动化收入</View>
<View className="bookText">
@@ -232,14 +318,15 @@ const Index = () => {
1. 微信运营:云手机+机器人+AIGC
<br />
2. 自媒体:youtube获利+wordpress <br />
3. 跨境电商:amazon<br />
4. 软件saas:独立开发<br />
5. 知识付费:如何出版一本书?<br />
3. 跨境电商:amazon
<br />
4. 软件saas:独立开发
<br />
5. 知识付费:如何出版一本书?
<br />
</View>
<View className="bookPrice">
<View className="join">立即阅读</View>
<View className="join">预约</View>
</View>
</View>
</View>
@@ -290,16 +377,17 @@ const Index = () => {
{/* 右边 */}
<View className="meetup-right">
<View className="title">
数字游民 | 自由职业者沙龙
</View>
<View className="title">数字游民 | 自由职业者沙龙</View>
<View className="address">
<AtIcon value="map-pin" size="30" color="#F00"></AtIcon>
<span>深圳市龙华区</span>
</View>
<View className="meetBtn">
<View ><AtIcon value="clock" size="30" color="#F00"></AtIcon>18:00--20:00</View>
<View className="join">了解详情</View>
<View>
<AtIcon value="clock" size="30" color="#F00"></AtIcon>
19:00--21:00
</View>
<View className="join">立即报名</View>
</View>
</View>
</View>

View File

@@ -48,7 +48,7 @@
.bookImg {
width: 40%;
height: 100%;
background-color: #1bb14e;
// background-color: #1bb14e;
}
.book-middle{