import { useLoginUserStore } from '@/stores/loginUser' import { useIncidentListSearchStore } from '@/stores/incidentListSearch' const loginUserStore = useLoginUserStore() const incidentListSearchStore = useIncidentListSearchStore(); export function useLoginSuccess() { /** * 登录成功后的操作 */ const loginSuccess = (user) => { loginUserStore.setLoginHospital(user.infoPermission.hospitals); loginUserStore.setLoginUser(user.user); loginUserStore.setLoginUserMenu(user.menu); loginUserStore.setInfoPermission(user.infoPermission); incidentListSearchStore.clearIncidentListSearchData(); let loginType = uni.getStorageSync('loginType'); //1:处理 2:报修 // 判断用户标识是否为处理人 if (user.user.engineer === 1) { if(loginType==1){ uni.reLaunch({ url: "/pages/incidentList/incidentList" }) }else if(loginType==2){ uni.reLaunch({ url: "/pages/repair/home" }) } } else { if(loginType==1){ uni.reLaunch({ url: "/pages/repairEntrance/repairEntrance" }) }else if(loginType==2){ uni.reLaunch({ url: "/pages/repair/home" }) } } } // 处理树数据(parent格式转为children格式) const transform = (data) =>{ let nodes = data.menu let parents = []; const idMapping = nodes.reduce((acc, el, i) => { acc[el.id] = i; return acc; }, {}); nodes.forEach((el) => { if (el.parentid === null || el.parentid === undefined) { parents.push(el); } else { const parentEl = nodes[idMapping[el.parentid]]; parentEl.childrens = [...(parentEl.childrens || []), el]; } }); uni.setStorageSync('menuList',JSON.stringify(parents)); } return { loginSuccess, transform }; }