锶源昆仑商城

This commit is contained in:
2023-07-22 19:01:37 +08:00
commit 4ba3377084
223 changed files with 10557 additions and 0 deletions

54
api/err.js Normal file
View File

@@ -0,0 +1,54 @@
/**
* 处理错误信息
* @property {Object} errInfo
*/
const errInfo = (obj) =>{
if(obj.status_code == 401){
wx.showModal({
title : "登录提示",
content : "长时间未操作,登录已过期,请重新登录",
showCancel : false,
confirmColor: "#0b0041",
confirmText : "确定",
success : ()=>{
// 清理客户端登录缓存
wx.removeStorageSync("token")
// 返回首页
wx.redirectTo({
url: "/pages/login/index",
})
}
})
}else if(obj.status_code == 422){
wx.showToast({
title: obj.message,
icon : "none"
})
}else if(obj.status_code == 400 || obj.status_code == 0){
wx.showToast({
title: obj.message,
icon : "none"
})
}else if(obj.status_code == 404){
wx.showToast({
title: "接口地址不存在,请联系系统管理员",
icon : "none"
})
}else if(obj.status_code == 500){
wx.showToast({
title: "服务端:" + obj.message,
icon : "none"
})
}else {
wx.showToast({
title: "code:" + obj.status_code + ", msg:" + obj.message,
icon : "none"
})
}
}
module.exports = {
errInfo
}

35
api/index.js Normal file
View File

@@ -0,0 +1,35 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
// 授权登录
import auth from "./interfaces/auth"
// 图片上传
import file from "./interfaces/file"
// 首页
import index from "./interfaces/index"
// 商城
import mall from "./interfaces/mall"
// 会员
import member from "./interfaces/member"
// 库存
import stock from "./interfaces/stock"
// 我的
import user from "./interfaces/user"
export default {
auth,
file,
index,
mall,
member,
stock,
user
}

31
api/interfaces/auth.js Normal file
View File

@@ -0,0 +1,31 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
import { req } from "../request"
//验证码登录
const smsAuth = data => req({
url: "user/auth/sms",
method: "POST",
data: data
})
//获取验证码
const getSms = data => req({
url: "user/auth/verify",
method: "POST",
data: data
})
//隐私+协议
const registeragree = (website) => req({
url: "cms/pages/" + website
})
export default ({
smsAuth,
getSms,
registeragree
})

17
api/interfaces/file.js Normal file
View File

@@ -0,0 +1,17 @@
/*
* 图图片上传公用接口
*/
import { upload } from "../request"
//图上传
const uploadImg = (imgPaht, data) => upload({
url: "storage/upload",
method: "POST",
key: "upload",
path: imgPaht,
data: data
})
export default ({
uploadImg
})

46
api/interfaces/index.js Normal file
View File

@@ -0,0 +1,46 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
import { req } from "../request"
// 商城首页
const home = () => req({
url: "mall"
})
// 文章-列表
const articlesList = (data) => req({
url: "cms/articles",
data: data
})
// 文章-详情
const articlesSee = (article_id) => req({
url: "cms/articles/" + article_id
})
// 文章-分类
const articlesClass = () => req({
url: "cms/categories"
})
// 文章-收藏
const articlesFavorite = (article_id) => req({
url: "cms/articles/favorite/" + article_id
})
// 文章-点赞
const articlesSubscribe = (article_id) => req({
url: "cms/articles/subscribe/" + article_id
})
export default ({
home,
articlesList,
articlesSee,
articlesClass,
articlesFavorite,
articlesSubscribe
})

49
api/interfaces/mall.js Normal file
View File

@@ -0,0 +1,49 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
import {req} from "../request"
//商城首页
const index = () => req({url: "mall"})
//商品详情
const goodsShow = (goods) => req({url: "mall/goods/" + goods})
//创建订单
const foundOrder = (data) => req({url: "mall/buy/goods", data: data})
//确认订单
const affirmOrder = (data) => req({url: "mall/buy/goods", method: 'POST', data: data})
//水滴支付
const affirmPay = (order_no, data) => req({url: "mall/pay/" + order_no + "/score", method: 'POST', data: data})
//文章详情
const articlesSee = (article_id) => req({url: "cms/articles/" + article_id})
// //文章列表
const articlesList = (data) => req({url: "cms/articles", data: data})
//收藏
const favorite = (article_id) => req({url: "cms/articles/favorite/" + article_id})
//点赞
const subscribe = (article_id) => req({url: "cms/articles/subscribe/" + article_id})
//文章列表-全部分类
const classifysAll = () => req({url: "cms/categories"})
//文章列表-全部
const favorites = (data) => req({url: "cms/articles", data: data})
export default({
index,
goodsShow,
foundOrder,
affirmOrder,
affirmPay,
articlesSee,
articlesList,
favorite,
subscribe,
classifysAll,
favorites
})

63
api/interfaces/member.js Normal file
View File

@@ -0,0 +1,63 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
import { req } from "../request"
// 会员开通-前置
const openSee = (identity) => req({
url: "user/identities/" + identity
})
// 会员开通-取可开通身份内容
const identitieSee = (identity_id) => req({
url: "user/identities/create/" + identity_id
})
// 会员开通-提交
const openIndex = (identity_id, data) => req({
url: "user/identities/create/" + identity_id,
method: 'POST',
data: data
})
// 会员开通-展示
const openModel = () => req({
url: "user/identities"
})
// 会员开通-获取升级单信息
const orderSee = (order_id) => req({
url: "user/identities/order/" + order_id
})
// 会员开通-编辑凭证
const orderSubmit = (order_id, data) => req({
url: "user/identities/order/" + order_id,
method: 'POST',
data: data
})
// 获取小程序openid
const openid = (data) => req({
url: "user/auth/mini_openid",
data: data
})
// 微信支付-商品
const wechatPay = (order_no, data) => req({
url: "mall/pay/" + order_no + "/wechat",
data: data
})
export default ({
openSee,
identitieSee,
openIndex,
openModel,
orderSee,
orderSubmit,
openid,
wechatPay
})

65
api/interfaces/stock.js Normal file
View File

@@ -0,0 +1,65 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
import { req } from "../request"
// 提货-前置
const pick = () => req({
url: "user/stock/pick"
})
// 提货-列表记录
const list = (data) => req({
url: "user/stock",
data: data
})
// 提货-账变记录
const logs = (data) => req({
url: "user/stock/logs",
data: data
})
// 提货-提交
const pickTake = (data) => req({
url: "user/stock/pick",
method: 'POST',
data: data
})
// 地址-列表
const siteList = () => req({
url: "mall/addresses"
})
// 地址-新增
const siteAdd = (data) => req({
url: "mall/addresses",
method: 'POST',
data: data
})
// 地址-删除
const siteDel = (address) => req({
url: "mall/addresses/" + address,
method: 'DELETE'
})
// 地址-省市区获取
const create = (data) => req({
url: "mall/addresses/create",
data: data
})
export default ({
pick,
list,
logs,
pickTake,
siteList,
siteAdd,
siteDel,
create
})

90
api/interfaces/user.js Normal file
View File

@@ -0,0 +1,90 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
import { req } from "../request"
//首页
const home = () => req({
url: "user"
})
// 我的推广码
const invite = () => req({
url: "user/invite"
})
//任务列表
const taskList = (data) => req({
url: "tasks",
data: data
})
//任务分类
const taskIndex = () => req({
url: "tasks/categories"
})
//上传头像
const setting = (key,data) => req({
url: "user/setting/" + key,
method: 'PUT',
data: data
})
//小程序码
const miniShare = (data) => req({
url: "user/mini_share",
data: data
})
//我的收藏
const favorites = (data) => req({
url: "user/favorites",
data: data
})
//产品中心-分类
const mallCategories = (data) => req({
url: "mall/categories",
data: data
})
//产品中心-列表
const mallGoods = (data) => req({
url: "mall/goods",
data: data
})
//订单
const orders = (data) => req({
url: "mall/orders",
data: data
})
//订单详情
const goodsDet = (order_no) => req({
url: "mall/orders/" + order_no
})
//订单签收
const goodsSign = (order_no) => req({
url: "mall/orders/" + order_no + "/sign",
method: 'PUT'
})
export default ({
home,
invite,
taskList,
taskIndex,
setting,
miniShare,
favorites,
mallCategories,
mallGoods,
orders,
goodsDet,
goodsSign
})

139
api/request.js Normal file
View File

@@ -0,0 +1,139 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
import {errInfo} from './err'
import {updToken} from './updateToken'
// 请求方式配置
// https://apitest.siyuankunlun.com //测试地址
// https://api.siyuankunlun.com //正式地址
// wxecf8786d25af47b3 正式appid
// const api = "https://apitest.siyuankunlun.com/api/"
const api = "https://api.siyuankunlun.com/api/"
const header = {
"Accept" : "application/json"
}
let isToken = true
/**
* 请求
* @property {Object} req
*/
const req = (obj, noToken) => {
// 检查是否无需要token
if(noToken != undefined){
isToken = noToken
}
// header
if(obj.token){
header.Authorization = obj.token || ''
} else {
header.Authorization = wx.getStorageSync("token") || ""
}
// 处理请求信息
return new Promise((resolve, reject) => {
// 组合header
obj.header = {
"Accept" : "application/json",
"Authorization" : wx.getStorageSync("token") || ""
}
if(!isToken){
obj.header.Authorization = ''
}
wx.request({
url : api + obj.url,
header : obj.header || {},
method : obj.method || 'GET',
data : obj.data || {},
success : res => {
// 更新token
if (res.header.Authorization) updToken(res.header.Authorization)
// 处理信息
if (res.data.status_code == 200) {
resolve(res.data)
} else {
if (res.data.status_code == 401 || res.data.status_code == 400) {
reject({
login : false,
codeBeen: false
})
}
errInfo(res.data)
}
},
fail: err => {
console.log(err)
wx.showToast({
title : err.errMsg,
icon : "none"
})
reject(err)
},
complete(){
if(!isToken) isToken = true
}
})
})
}
/**
* 上传
* @property {Object} upload
*/
const upload = (obj) => {
// header
header.Authorization = wx.getStorageSync("token") || ""
// 处理上传信息
return new Promise((resolve, reject) => {
wx.showLoading({
title: "上传中..",
mask: true
})
wx.uploadFile({
url : api + obj.url,
header : header,
name : obj.key || "",
filePath: obj.path || "",
formData: obj.data || {},
success : res=>{
wx.hideLoading();
// 处理返回值
let jsonData = JSON.parse(res.data)
// 更新token
if (res.header.Authorization) updToken(res.header.Authorization)
// 处理信息
if (jsonData.status_code == 200) {
resolve(jsonData.data)
} else {
if (jsonData.status_code == 401) {
reject({
login: false
})
}
errInfo(jsonData)
}
},
fail : err=>{
wx.showToast({
title : err.errMsg,
icon : "none"
})
reject(err)
}
})
})
}
module.exports = {
req,
upload
}

21
api/updateToken.js Normal file
View File

@@ -0,0 +1,21 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
/**
* 更新token
* @property {String} updToken
*/
const updToken = (token) =>{
// 更新全局存储器
getApp().globalData.token = token
// 更新客户端登录缓存
wx.setStorageSync('token', token)
}
module.exports = {
updToken
}