// 用户信息
|
import { defineStore } from 'pinia'
|
import config from '@/assets/js/config'
|
import { ref } from 'vue'
|
interface userInfo {
|
userName: string
|
userType: string
|
roleId?: any
|
role?: any
|
userId?: number
|
name?: string
|
}
|
|
export const useUserStore = defineStore('user', () => {
|
const token = localStorage.getItem(config.tokenKey)
|
? ref<string>(localStorage.getItem(config.tokenKey) as string)
|
: ref<string>()
|
const userInfo = localStorage.getItem(config.userInfoKey)
|
? ref<userInfo>(JSON.parse(localStorage.getItem(config.userInfoKey) as string))
|
: ref<userInfo>()
|
const setToken = (value: string) => {
|
token.value = value
|
localStorage.setItem(config.tokenKey, value)
|
}
|
const setUserInfo = (value: userInfo) => {
|
userInfo.value = value
|
localStorage.setItem(config.userInfoKey, JSON.stringify(value))
|
}
|
// 退出登录
|
const delteUserInfo = () => {
|
;((token.vlaue = ''), (userInfo.value = { userName: '', userType: '' }))
|
localStorage.removeItem(config.tokenKey)
|
localStorage.removeItem(config.userInfoKey)
|
localStorage.removeItem('xiehe-isUserInfo')
|
}
|
// 购物车数量
|
let cartNum = ref<number>(1)
|
// 更新右侧弹出框购物车的数量
|
const updateRightPop = () => {
|
cartNum.value += 1
|
}
|
|
// 购物车商品id
|
const shoppingIds = ref<number[]>([])
|
const updateShoppingIds = (ids: number[]) => {
|
shoppingIds.value = ids
|
}
|
|
// 已购买的商品id
|
const buyIds = ref<number[]>([])
|
const updateBuyIds = (ids: number[]) => {
|
buyIds.value = ids
|
}
|
|
return {
|
token,
|
setToken,
|
userInfo,
|
setUserInfo,
|
delteUserInfo,
|
cartNum,
|
updateRightPop,
|
shoppingIds,
|
updateShoppingIds,
|
buyIds,
|
updateBuyIds,
|
}
|
})
|
|
export const applyBookStore = defineStore('applyBook', () => {
|
//样书申请
|
let electronicBookList = localStorage.getItem('electronicBookList')
|
? ref(JSON.parse(localStorage.getItem('electronicBookList')))
|
: ref([])
|
let paperBookList = localStorage.getItem('paperBookList')
|
? ref(JSON.parse(localStorage.getItem('paperBookList')))
|
: ref([])
|
//已申请图书
|
let alreadyPaperBook = localStorage.getItem('alreadyPaperBook')
|
? ref(JSON.parse(localStorage.getItem('alreadyPaperBook')))
|
: ref([])
|
let alreadyElectronicBook = localStorage.getItem('alreadyElectronicBook')
|
? ref(JSON.parse(localStorage.getItem('alreadyElectronicBook')))
|
: ref([])
|
// 添加电子样书列表
|
const appplyElectronicBook = (value: data) => {
|
electronicBookList.value.push(value)
|
localStorage.setItem('electronicBookList', JSON.stringify(electronicBookList.value))
|
}
|
|
//添加纸质样式列表
|
const appplyPaperBook = (value: data) => {
|
paperBookList.value.push(value)
|
localStorage.setItem('paperBookList', JSON.stringify(paperBookList.value))
|
}
|
|
//删除电子样书列表
|
const removeElectronicBook = (value: int) => {
|
electronicBookList.value.splice(value, 1)
|
localStorage.setItem('electronicBookList', JSON.stringify(electronicBookList.value))
|
}
|
|
//删除纸质样式
|
const removePaperBook = (value: int) => {
|
paperBookList.value.splice(value, 1)
|
localStorage.setItem('paperBookList', JSON.stringify(paperBookList.value))
|
}
|
const emptyBookList = (value: data) => {
|
if (value && value.type == 'eBook') {
|
electronicBookList.value = []
|
localStorage.setItem('electronicBookList', JSON.stringify(electronicBookList.value))
|
} else if (value && value.type == 'paperBook') {
|
paperBookList.value = []
|
localStorage.setItem('paperBookList', JSON.stringify(paperBookList.value))
|
} else {
|
paperBookList.value = []
|
electronicBookList.value = []
|
alreadyPaperBook.value = []
|
alreadyElectronicBook.value = []
|
localStorage.removeItem('electronicBookList')
|
localStorage.removeItem('paperBookList')
|
}
|
}
|
|
//已申请图书
|
const alreadyPaperBookList = (value: data) => {
|
alreadyPaperBook.value = value.list
|
localStorage.setItem('alreadyPaperBook', JSON.stringify(alreadyPaperBook.value))
|
}
|
|
const alreadyElectronicBookList = (value: data) => {
|
alreadyElectronicBook.value = value.list
|
localStorage.setItem('alreadyElectronicBook', JSON.stringify(alreadyElectronicBook.value))
|
}
|
|
return {
|
electronicBookList,
|
paperBookList,
|
alreadyPaperBook,
|
alreadyElectronicBook,
|
appplyElectronicBook,
|
appplyPaperBook,
|
removeElectronicBook,
|
removePaperBook,
|
emptyBookList,
|
alreadyPaperBookList,
|
alreadyElectronicBookList,
|
}
|
})
|