|
@@ -13,7 +13,7 @@ import {
|
|
|
const useTeamStore = defineStore('useTeam', () => {
|
|
const useTeamStore = defineStore('useTeam', () => {
|
|
|
// 左侧的领导队伍树
|
|
// 左侧的领导队伍树
|
|
|
const leaderTeamTree = ref<LeaderTeamType>({
|
|
const leaderTeamTree = ref<LeaderTeamType>({
|
|
|
- teamId: 0,
|
|
|
|
|
|
|
+ teamId: -1, // -1默认为无队伍
|
|
|
teamName: '',
|
|
teamName: '',
|
|
|
level: 1,
|
|
level: 1,
|
|
|
memberCount: 0,
|
|
memberCount: 0,
|
|
@@ -27,9 +27,12 @@ const useTeamStore = defineStore('useTeam', () => {
|
|
|
const loadingTeamInfo = ref(false);
|
|
const loadingTeamInfo = ref(false);
|
|
|
|
|
|
|
|
async function getLeaderTeams() {
|
|
async function getLeaderTeams() {
|
|
|
|
|
+ loadingTeams.value = true;
|
|
|
|
|
+
|
|
|
const res = await queryLeaderTeam();
|
|
const res = await queryLeaderTeam();
|
|
|
|
|
+ if (res) leaderTeamTree.value = setLevel(res);
|
|
|
|
|
|
|
|
- leaderTeamTree.value = setLevel(res);
|
|
|
|
|
|
|
+ loadingTeams.value = false;
|
|
|
return leaderTeamTree.value;
|
|
return leaderTeamTree.value;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -41,6 +44,16 @@ const useTeamStore = defineStore('useTeam', () => {
|
|
|
};
|
|
};
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ async function createFirstLevelTeam(teamName: string) {
|
|
|
|
|
+ loadingTeams.value = true;
|
|
|
|
|
+
|
|
|
|
|
+ // 一级队伍parentId默认为0
|
|
|
|
|
+ const data = { parentId: 0, teamName };
|
|
|
|
|
+ await saveEmergencyTeamInfo(data).finally(() => {
|
|
|
|
|
+ loadingTeams.value = false;
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
async function createTeam(team: LeaderTeamType, teamName: string) {
|
|
async function createTeam(team: LeaderTeamType, teamName: string) {
|
|
|
loadingTeams.value = true;
|
|
loadingTeams.value = true;
|
|
|
|
|
|
|
@@ -60,12 +73,14 @@ const useTeamStore = defineStore('useTeam', () => {
|
|
|
|
|
|
|
|
async function deleteTeam(team: LeaderTeamType) {
|
|
async function deleteTeam(team: LeaderTeamType) {
|
|
|
// 由于请求接口有延迟,先本地删除后再调用接口
|
|
// 由于请求接口有延迟,先本地删除后再调用接口
|
|
|
- leaderTeamTree.value = filterNode(leaderTeamTree.value, team.teamId)!;
|
|
|
|
|
|
|
+ if (leaderTeamTree.value.teamId === team.teamId) {
|
|
|
|
|
+ clearData();
|
|
|
|
|
+ } else leaderTeamTree.value = filterNode(leaderTeamTree.value, team.teamId)!;
|
|
|
|
|
+
|
|
|
deleteEmergencyTeam(team.teamId);
|
|
deleteEmergencyTeam(team.teamId);
|
|
|
|
|
|
|
|
if (team.teamId === curTeam.value?.teamId) {
|
|
if (team.teamId === curTeam.value?.teamId) {
|
|
|
- curTeam.value = undefined;
|
|
|
|
|
- teamAndPersonInfo.value = undefined;
|
|
|
|
|
|
|
+ clearCurTeam();
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -119,12 +134,16 @@ const useTeamStore = defineStore('useTeam', () => {
|
|
|
|
|
|
|
|
function clearData() {
|
|
function clearData() {
|
|
|
leaderTeamTree.value = {
|
|
leaderTeamTree.value = {
|
|
|
- teamId: 0,
|
|
|
|
|
|
|
+ teamId: -1,
|
|
|
teamName: '',
|
|
teamName: '',
|
|
|
level: 1,
|
|
level: 1,
|
|
|
memberCount: 0,
|
|
memberCount: 0,
|
|
|
children: [],
|
|
children: [],
|
|
|
};
|
|
};
|
|
|
|
|
+ clearCurTeam();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ function clearCurTeam() {
|
|
|
curTeam.value = undefined;
|
|
curTeam.value = undefined;
|
|
|
teamAndPersonInfo.value = undefined;
|
|
teamAndPersonInfo.value = undefined;
|
|
|
}
|
|
}
|
|
@@ -136,6 +155,7 @@ const useTeamStore = defineStore('useTeam', () => {
|
|
|
loadingTeams,
|
|
loadingTeams,
|
|
|
loadingTeamInfo,
|
|
loadingTeamInfo,
|
|
|
getLeaderTeams,
|
|
getLeaderTeams,
|
|
|
|
|
+ createFirstLevelTeam,
|
|
|
createTeam,
|
|
createTeam,
|
|
|
deleteTeam,
|
|
deleteTeam,
|
|
|
refreshCurTeamInfo,
|
|
refreshCurTeamInfo,
|