fix: 志愿表回退
parent
e57d5015fe
commit
37c66c6919
|
|
@ -25,18 +25,20 @@
|
|||
<scroll-view class="mt-[38rpx] flex-1 pb-safe">
|
||||
<WXXTable :data="tableData" v-if="!flag">
|
||||
<!-- <WXXTableCol prop="universityName" label="院校名称" width="25%"></WXXTableCol> -->
|
||||
<WXXTableCol prop="major" label="招生专业" width="62%"></WXXTableCol>
|
||||
<WXXTableCol prop="major" label="招生专业" width="47%"></WXXTableCol>
|
||||
<WXXTableCol prop="selectsubject" label="选科" width="15%"></WXXTableCol>
|
||||
<WXXTableCol prop="plancount" label="计划数" width="13%"></WXXTableCol>
|
||||
<WXXTableCol prop="academic" label="学制" width="10%"></WXXTableCol>
|
||||
<WXXTableCol prop="fee" label="学费" width="15%"></WXXTableCol>
|
||||
</WXXTable>
|
||||
<WXXTable :data="tableData" v-else>
|
||||
<!-- <WXXTableCol prop="universityName" label="院校名称" width="20%"></WXXTableCol> -->
|
||||
<WXXTableCol prop="majorgroupname" label="专业组" width="35%"></WXXTableCol>
|
||||
<WXXTableCol prop="major" label="招生专业" width="30%"></WXXTableCol>
|
||||
<WXXTableCol prop="majorgroupname" label="专业组" width="15%"></WXXTableCol>
|
||||
<WXXTableCol prop="major" label="招生专业" width="33%"></WXXTableCol>
|
||||
<WXXTableCol prop="selectsubject" label="选科" width="15%"></WXXTableCol>
|
||||
<WXXTableCol prop="plancount" label="计划数" width="15%"></WXXTableCol>
|
||||
<WXXTableCol prop="academic" label="学制" width="10%"></WXXTableCol>
|
||||
<WXXTableCol prop="fee" label="学费" width="15%"></WXXTableCol>
|
||||
<WXXTableCol prop="fee" label="学费" width="12%"></WXXTableCol>
|
||||
</WXXTable>
|
||||
</scroll-view>
|
||||
|
||||
|
|
|
|||
|
|
@ -174,6 +174,8 @@ import FilterMajorList from './components/FilterMajorList.vue'
|
|||
const userStore = useUserStore()
|
||||
|
||||
const navigatorBack = () => {
|
||||
userStore.clearWishListId()
|
||||
userStore.clearWishList()
|
||||
uni.navigateBack()
|
||||
}
|
||||
|
||||
|
|
@ -332,16 +334,32 @@ watch(
|
|||
{ immediate: true },
|
||||
)
|
||||
|
||||
const isEdit = ref(false)
|
||||
|
||||
const handlePreview = () => {
|
||||
if (majorCount.value === 0) {
|
||||
return
|
||||
}
|
||||
uni.navigateTo({ url: '/pages-sub/home/wishesList/wishesList?editType=add&typeName=智能填报' })
|
||||
if (isEdit.value) {
|
||||
uni.navigateTo({
|
||||
url: `/pages-sub/home/wishesList/wishesList?editType=edit&typeName=智能填报&id=${userStore.userInfo.wishListId}&change=true`,
|
||||
})
|
||||
} else {
|
||||
uni.navigateTo({
|
||||
url: `/pages-sub/home/wishesList/wishesList?editType=add&typeName=智能填报`,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const resetMajorList = () => {
|
||||
filterMajorRef.value.handleClear()
|
||||
}
|
||||
|
||||
onShow(() => {
|
||||
if (userStore.userInfo.wishListId) {
|
||||
isEdit.value = true
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
|||
|
|
@ -23,16 +23,16 @@ const wishListName = ref('')
|
|||
const editWishList = (_wishList: any[]) => {
|
||||
let _vTbDetails = _wishList.map((item, index) => {
|
||||
return {
|
||||
unId: item.unId,
|
||||
unName: item.unName,
|
||||
unCode: item.unCode,
|
||||
unId: item.unId || item.uId,
|
||||
unName: item.unName || item.universityName,
|
||||
unCode: item.unCode || item.collegeCode,
|
||||
type: item.type,
|
||||
sort: index + 1,
|
||||
percentAge: item.percentAge,
|
||||
vItems: item.vItems.map((vItem, vIndex) => {
|
||||
return {
|
||||
sort: vIndex + 1,
|
||||
_pId: vItem._pId,
|
||||
_pId: vItem._pId || vItem.planId,
|
||||
major: vItem.major,
|
||||
majorCode: vItem.majorCode,
|
||||
majorGroup: vItem.majorGroup,
|
||||
|
|
@ -57,8 +57,11 @@ const editWishList = (_wishList: any[]) => {
|
|||
|
||||
putWishList(params).then((res) => {
|
||||
if (res.code === 200) {
|
||||
userStore.clearWishList()
|
||||
vTbId.value = res.result as number
|
||||
if (!changeFlag) {
|
||||
userStore.clearWishList()
|
||||
userStore.clearWishListId()
|
||||
}
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.message || '保存失败',
|
||||
|
|
@ -104,6 +107,7 @@ const addWishList = () => {
|
|||
saveWishList(params).then((res) => {
|
||||
if (res.code === 200) {
|
||||
vTbId.value = res.result as number
|
||||
userStore.setWishListId({ id: vTbId.value })
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.message || '保存失败',
|
||||
|
|
@ -115,6 +119,7 @@ const addWishList = () => {
|
|||
|
||||
let typeName = ''
|
||||
let editType = ''
|
||||
let changeFlag = false
|
||||
|
||||
let vTbId = ref(0)
|
||||
let webUrl = computed(() => {
|
||||
|
|
@ -126,16 +131,32 @@ let webUrl = computed(() => {
|
|||
})
|
||||
|
||||
const handleMessage = (evt) => {
|
||||
// let saveItem = JSON.parse(evt.message)
|
||||
let data = JSON.parse(evt.detail.data[0].message)
|
||||
const actionsData = evt.detail.data as any[]
|
||||
actionsData.forEach((item) => {
|
||||
if (item.action === 'delete' && item.deleteType === 'major') {
|
||||
let deleteObj = JSON.parse(item.deleteObj)
|
||||
let deleteCollege = JSON.parse(item.deleteCollege)
|
||||
userStore.deleteWishListMajor({ uId: deleteCollege.unId, planId: deleteObj._pId })
|
||||
} else if (item.action === 'delete' && item.deleteType === 'college') {
|
||||
let deleteObj = JSON.parse(item.deleteObj)
|
||||
userStore.deleteWishListCollege({ uId: deleteObj.unId })
|
||||
} else if (item.action === 'message') {
|
||||
let data = JSON.parse(item.message)
|
||||
changeFlag = false
|
||||
editWishList(data)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
onLoad((options) => {
|
||||
typeName = options.typeName
|
||||
editType = options.editType
|
||||
changeFlag = options.change || false
|
||||
if (editType === 'edit') {
|
||||
vTbId.value = options.id
|
||||
if (changeFlag) {
|
||||
editWishList(userStore.userInfo.wishList)
|
||||
}
|
||||
} else {
|
||||
addWishList()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -155,14 +155,19 @@ export const useUserStore = defineStore(
|
|||
}
|
||||
}
|
||||
|
||||
const deleteWishListCollege = ({ uId }) => {
|
||||
userInfo.value.wishList = userInfo.value.wishList.filter((item) => item.uId !== uId)
|
||||
}
|
||||
const deleteWishListMajor = ({ uId, planId }: { uId: string; planId: string }) => {
|
||||
userInfo.value.wishList = userInfo.value.wishList.map((item) => {
|
||||
userInfo.value.wishList = userInfo.value.wishList
|
||||
.map((item) => {
|
||||
if (item.uId === uId) {
|
||||
item.vItems = item.vItems.filter((vItem) => vItem.planId !== planId)
|
||||
return item
|
||||
}
|
||||
return item
|
||||
})
|
||||
.filter((item) => item.vItems.length > 0)
|
||||
}
|
||||
const setWishListMajorWithUn = (val) => {
|
||||
userInfo.value.wishList.push({ ...val, sort: userInfo.value.wishList.length + 1 })
|
||||
|
|
@ -234,6 +239,7 @@ export const useUserStore = defineStore(
|
|||
setWishListMajor,
|
||||
setWishListMajorWithUn,
|
||||
deleteWishListMajor,
|
||||
deleteWishListCollege,
|
||||
sortWishMajorList,
|
||||
sortWishCollegeList,
|
||||
setIsVIP,
|
||||
|
|
|
|||
Loading…
Reference in New Issue