|
@@ -14,14 +14,14 @@
|
|
|
<div class="tul_left">
|
|
|
<div class="tull_top">
|
|
|
<div class="tullt_l">项目管理</div>
|
|
|
- <div class="tullt_r" @click="handleAddTeam" v-hasPermi="['core:project:addTeam']">+添加团队</div>
|
|
|
+ <!-- <div class="tullt_r" @click="handleAddTeam" v-hasPermi="['core:project:addTeam']">+添加团队</div> -->
|
|
|
</div>
|
|
|
<div class="tull_query queryInput">
|
|
|
- <el-input v-model="programName" placeholder="请输入项目名称"></el-input>
|
|
|
+ <el-input v-model="programName" placeholder="请输入项目名称" @keyup.enter.native="getProgramList"></el-input>
|
|
|
<img src="@/assets/images/agent/query_mini.png">
|
|
|
</div>
|
|
|
<div class="tull_list">
|
|
|
- <div class="tull_item" v-for="(item,index) in companyList" :key="index" @click="handleExpand(item,index)">
|
|
|
+ <div class="tull_item" :class="{'active':item.select}" v-for="(item,index) in companyList" :key="index" @click="handleExpand(item,index)">
|
|
|
<div class="tname">
|
|
|
<img src="@/assets/images/agent/down_sj.png">
|
|
|
<span>{{ item.enterpriseName }}</span>
|
|
@@ -29,7 +29,7 @@
|
|
|
<template v-if="item.expand&&item.teams&&item.teams.length">
|
|
|
<div class="tuser_list" :class="{'active':team.select}" v-for="(team,idx) in item.teams" :key="idx" @click.stop="handleSelect(team,idx)">
|
|
|
<span>{{ team.teamName }}</span>
|
|
|
- <span>({{ team.teamNum }}人)</span>
|
|
|
+ <span>({{ team.teamNum||0 }}人)</span>
|
|
|
<el-popover placement="right" width="177" trigger="click">
|
|
|
<div class="tl_czs">
|
|
|
<div class="tlc_pre" v-hasPermi="['core:project:updateTeamCoach']">修改团队教练</div>
|
|
@@ -47,12 +47,12 @@
|
|
|
<div class="tul_right">
|
|
|
<div class="tulr_top">
|
|
|
<div class="tulrt_l queryInput">
|
|
|
- <el-input v-model="queryParams.name" placeholder="请输入姓名查询"></el-input>
|
|
|
+ <el-input v-model="queryParams.realName" placeholder="请输入姓名查询" @keyup.enter.native="getUserList"></el-input>
|
|
|
<img src="@/assets/images/agent/query_mini.png">
|
|
|
</div>
|
|
|
<div class="tulrt_r">
|
|
|
- <div class="tr_btn" v-hasPermi="['sys:user:export']">批量导入</div>
|
|
|
- <div class="tr_btn" @click="userShow=true" v-hasPermi="['sys:user:add']">添加成员</div>
|
|
|
+ <div class="tr_btn" @click="handleExportMore" v-hasPermi="['sys:user:export']">批量导入</div>
|
|
|
+ <div class="tr_btn" @click="handleAddUser" v-hasPermi="['sys:user:add']">添加成员</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<el-table :data="userList" border cell-class-name="vertical-top-cell" v-loading="loading" empty-text="暂无人员" max-height="578px" style="margin-top: 16px;">
|
|
@@ -61,18 +61,18 @@
|
|
|
{{ scope.$index + 1 }}
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="姓名" prop="aaa"></el-table-column>
|
|
|
- <el-table-column label="性别" prop="bbb">
|
|
|
- <template #default="{ row }"></template>
|
|
|
+ <el-table-column label="姓名" prop="realName"></el-table-column>
|
|
|
+ <el-table-column label="性别" prop="gender">
|
|
|
+ <template #default="{ row }">{{ genderCfg[row.gender]||'未知' }}</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="出生日期" prop="aaa"></el-table-column>
|
|
|
- <el-table-column label="所属部门" prop="aaa"></el-table-column>
|
|
|
- <el-table-column label="职位" prop="aaa"></el-table-column>
|
|
|
- <el-table-column label="级别" prop="aaa"></el-table-column>
|
|
|
- <el-table-column label="分工" prop="aaa"></el-table-column>
|
|
|
- <el-table-column label="上级" prop="aaa"></el-table-column>
|
|
|
- <el-table-column label="手机号码" prop="aaa"></el-table-column>
|
|
|
- <el-table-column label="创建时间" prop="aaa"></el-table-column>
|
|
|
+ <el-table-column label="出生日期" prop="birthdate"></el-table-column>
|
|
|
+ <el-table-column label="所属部门" prop="dept"></el-table-column>
|
|
|
+ <el-table-column label="职位" prop="post"></el-table-column>
|
|
|
+ <el-table-column label="级别" prop="level"></el-table-column>
|
|
|
+ <el-table-column label="分工" prop="divisionOfLabour"></el-table-column>
|
|
|
+ <!-- <el-table-column label="上级" prop="realName"></el-table-column> -->
|
|
|
+ <el-table-column label="手机号码" prop="mobile"></el-table-column>
|
|
|
+ <el-table-column label="创建时间" prop="createDate" width="200"></el-table-column>
|
|
|
<el-table-column label="操作" width="150">
|
|
|
<template #default="scope">
|
|
|
<el-button link type="text" size="mini" @click="handleEdit(scope.row)" v-hasPermi="['sys:user:update']">编辑</el-button>
|
|
@@ -110,63 +110,67 @@
|
|
|
<el-form ref="userRef" :model="userForm" :rules="userRules" label-width="100px" style="width: 90%;margin: 0 auto;">
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="姓名" prop="aaa">
|
|
|
- <el-input v-model="userForm.aaa" placeholder="请输入姓名" />
|
|
|
+ <el-form-item label="姓名" prop="realName">
|
|
|
+ <el-input v-model="userForm.realName" placeholder="请输入姓名" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="性别" prop="bbb">
|
|
|
- <el-select v-model="userForm.bbb" placeholder="请选择性别" style="width: 100%;"></el-select>
|
|
|
+ <el-form-item label="性别" prop="gender">
|
|
|
+ <el-select v-model="userForm.gender" placeholder="请选择性别" style="width: 100%;">
|
|
|
+ <el-option label="男" :value="0"></el-option>
|
|
|
+ <el-option label="女" :value="1"></el-option>
|
|
|
+ <el-option label="保密" :value="2"></el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="出生日期" prop="ccc">
|
|
|
- <el-select v-model="userForm.ccc" placeholder="请选择出生日期" style="width: 100%;"></el-select>
|
|
|
+ <el-form-item label="出生日期" prop="birthdate">
|
|
|
+ <el-date-picker v-model="userForm.birthdate" type="date" placeholder="请选择出生日期" style="width: 100%;" @change="handleChangeDate"></el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="手机号码" prop="ddd">
|
|
|
- <el-input v-model="userForm.ddd" placeholder="请输入手机号码" />
|
|
|
+ <el-form-item label="手机号码" prop="mobile">
|
|
|
+ <el-input type="number" v-model="userForm.mobile" placeholder="请输入手机号码" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="所属部门" prop="eee">
|
|
|
- <el-input v-model="userForm.eee" placeholder="请输入所属部门" />
|
|
|
+ <el-form-item label="所属部门" prop="dept">
|
|
|
+ <el-input v-model="userForm.dept" placeholder="请输入所属部门" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="教育程度" prop="fff">
|
|
|
- <el-select v-model="userForm.fff" placeholder="请选择教育程度" style="width: 100%;"></el-select>
|
|
|
+ <el-form-item label="教育程度" prop="education">
|
|
|
+ <el-input v-model="userForm.education" placeholder="请输入教育程度" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="分工" prop="ggg">
|
|
|
- <el-input v-model="userForm.ggg" placeholder="请输入分工" />
|
|
|
+ <el-form-item label="分工" prop="divisionOfLabour">
|
|
|
+ <el-input v-model="userForm.divisionOfLabour" placeholder="请输入分工" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="职位" prop="hhh">
|
|
|
- <el-input v-model="userForm.hhh" placeholder="请输入职位" />
|
|
|
+ <el-form-item label="职位" prop="post">
|
|
|
+ <el-input v-model="userForm.post" placeholder="请输入职位" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="级别" prop="iii">
|
|
|
- <el-select v-model="userForm.iii" placeholder="请选择级别" style="width: 100%;"></el-select>
|
|
|
+ <el-form-item label="级别" prop="level">
|
|
|
+ <el-input v-model="userForm.level" placeholder="请输入级别" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
+ <!-- <el-col :span="12">
|
|
|
<el-form-item label="上级" prop="jjj">
|
|
|
<el-input v-model="userForm.jjj" placeholder="请输入上级" />
|
|
|
</el-form-item>
|
|
|
- </el-col>
|
|
|
+ </el-col> -->
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
<div class="demo-drawer__footer" style="display: flex;justify-content: end;">
|
|
@@ -178,34 +182,34 @@
|
|
|
<el-form ref="teamRef" :model="teamForm" :rules="teamRules" label-width="120px" style="width: 90%;margin: 0 auto;">
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="所属项目" prop="aaa">
|
|
|
- <el-input v-model="teamForm.aaa" placeholder="请输入所属项目" />
|
|
|
+ <el-form-item label="所属项目" prop="realName">
|
|
|
+ <el-input v-model="teamForm.realName" placeholder="请输入所属项目" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="团队名称" prop="bbb">
|
|
|
- <el-input v-model="teamForm.bbb" placeholder="请输入团队名称" />
|
|
|
+ <el-form-item label="团队名称" prop="gender">
|
|
|
+ <el-input v-model="teamForm.gender" placeholder="请输入团队名称" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
- <el-form-item label="团队介绍" prop="ccc">
|
|
|
- <el-input type="textarea" v-model="teamForm.ccc" placeholder="请输入团队介绍" />
|
|
|
+ <el-form-item label="团队介绍" prop="birthdate">
|
|
|
+ <el-input type="textarea" v-model="teamForm.birthdate" placeholder="请输入团队介绍" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
- <el-form-item label="工作任务" prop="ddd">
|
|
|
- <el-input type="textarea" v-model="teamForm.ddd" placeholder="请输入工作任务" />
|
|
|
+ <el-form-item label="工作任务" prop="mobile">
|
|
|
+ <el-input type="textarea" v-model="teamForm.mobile" placeholder="请输入工作任务" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
- <el-form-item label="团队项目情况" prop="eee">
|
|
|
- <el-input type="textarea" v-model="teamForm.eee" placeholder="请输入团队项目情况" />
|
|
|
+ <el-form-item label="团队项目情况" prop="dept">
|
|
|
+ <el-input type="textarea" v-model="teamForm.dept" placeholder="请输入团队项目情况" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -219,88 +223,100 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup name="">
|
|
|
- import { ref, getCurrentInstance,onMounted } from 'vue'
|
|
|
+ import { ref, reactive, getCurrentInstance,onMounted } from 'vue'
|
|
|
const { proxy } = getCurrentInstance();
|
|
|
- import { getCoachProgramList,getCoachProgramInfo,deleteCoachProgram } from '@/api/agent/index.js'
|
|
|
-
|
|
|
+ import { getCoachProgramList,getCoachProgramInfo,deleteCoachProgram,getCoachList,addCoach,updateCoach,getCoachInfo,deleteCoach, } from '@/api/agent/index.js'
|
|
|
const tidx = ref(1);
|
|
|
const teamList = ref([1]);
|
|
|
const programName = ref('')
|
|
|
const companyList = ref([]);
|
|
|
+ const programid = ref('')
|
|
|
+ const teamid = ref('')
|
|
|
const loading = ref(false);
|
|
|
const queryParams = ref({
|
|
|
page:1,
|
|
|
limit:10,
|
|
|
- name:'',
|
|
|
+ teamId:'',
|
|
|
+ realName:'',
|
|
|
})
|
|
|
const userList = ref([]);
|
|
|
const total = ref(0);
|
|
|
-
|
|
|
+ const genderCfg = {
|
|
|
+ '0': '男',
|
|
|
+ '1': '女',
|
|
|
+ '2': '保密',
|
|
|
+ }
|
|
|
const userTitle = ref('添加成员信息');
|
|
|
const userShow = ref(false);
|
|
|
+ const userRef = ref(null);
|
|
|
const userForm = ref({
|
|
|
- aaa: '',
|
|
|
- bbb: '',
|
|
|
- ccc: '',
|
|
|
- ddd: '',
|
|
|
- eee: ''
|
|
|
- });
|
|
|
+ id:'',
|
|
|
+ teamId:'',
|
|
|
+ realName:'',
|
|
|
+ username:'',
|
|
|
+ gender:'',
|
|
|
+ birthdate:'',
|
|
|
+ mobile:'',
|
|
|
+ dept:'',
|
|
|
+ education:'',
|
|
|
+ divisionOfLabour:'',
|
|
|
+ post:'',
|
|
|
+ level:'',
|
|
|
+ });
|
|
|
const userRules = ref({
|
|
|
- aaa: [
|
|
|
+ realName: [
|
|
|
{ required: true, message: '请输入姓名', trigger: 'blur' }
|
|
|
],
|
|
|
- bbb: [
|
|
|
+ gender: [
|
|
|
{ required: true, message: '请选择性别', trigger: 'change' }
|
|
|
],
|
|
|
- ccc: [
|
|
|
+ birthdate: [
|
|
|
{ required: true, message: '请选择出生日期', trigger: 'change' }
|
|
|
],
|
|
|
- ddd: [
|
|
|
- { required: true, message: '请输入手机号码', trigger: 'blur' }
|
|
|
+ mobile: [
|
|
|
+ { required: true, message: '请输入手机号码', trigger: 'blur' },
|
|
|
+ { pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: '请输入正确的手机号码', trigger: 'blur' }
|
|
|
],
|
|
|
- eee: [
|
|
|
+ dept: [
|
|
|
{ required: true, message: '请输入所属部门', trigger: 'blur' }
|
|
|
],
|
|
|
- fff: [
|
|
|
- { required: true, message: '请选择教育程度', trigger: 'change' }
|
|
|
+ education: [
|
|
|
+ { required: true, message: '请输入教育程度', trigger: 'blur' }
|
|
|
],
|
|
|
- ggg: [
|
|
|
+ divisionOfLabour: [
|
|
|
{ required: true, message: '请输入分工', trigger: 'blur' }
|
|
|
],
|
|
|
- hhh: [
|
|
|
+ post: [
|
|
|
{ required: true, message: '请输入职位', trigger: 'blur' }
|
|
|
],
|
|
|
- iii: [
|
|
|
- { required: true, message: '请选择级别', trigger: 'change' }
|
|
|
- ],
|
|
|
- jjj: [
|
|
|
- { required: true, message: '请输入上级', trigger: 'blur' }
|
|
|
+ level:[
|
|
|
+ { required: true, message: '请输入级别', trigger: 'blur' }
|
|
|
]
|
|
|
});
|
|
|
const buttonLoading2 = ref(false);
|
|
|
|
|
|
const teamShow = ref(false);
|
|
|
const teamForm = ref({
|
|
|
- aaa: '',
|
|
|
- bbb: '',
|
|
|
- ccc: '',
|
|
|
- ddd: '',
|
|
|
- eee: ''
|
|
|
+ realName: '',
|
|
|
+ gender: '',
|
|
|
+ birthdate: '',
|
|
|
+ mobile: '',
|
|
|
+ dept: ''
|
|
|
});
|
|
|
const teamRules = ref({
|
|
|
- aaa: [
|
|
|
+ realName: [
|
|
|
{ required: true, message: '请输入团队名称', trigger: 'blur' }
|
|
|
],
|
|
|
- bbb: [
|
|
|
+ gender: [
|
|
|
{ required: true, message: '请选择团队类型', trigger: 'change' }
|
|
|
],
|
|
|
- ccc: [
|
|
|
+ birthdate: [
|
|
|
{ required: true, message: '请输入团队人数', trigger: 'blur' }
|
|
|
],
|
|
|
- ddd: [
|
|
|
+ mobile: [
|
|
|
{ required: true, message: '请选择团队负责人', trigger: 'change' }
|
|
|
],
|
|
|
- eee: [
|
|
|
+ dept: [
|
|
|
{ required: true, message: '请输入团队描述', trigger: 'blur' }
|
|
|
]
|
|
|
});
|
|
@@ -316,15 +332,21 @@
|
|
|
};
|
|
|
|
|
|
const handleExpand = (item, index) => {
|
|
|
+ programid.value = item.id;
|
|
|
item.expand = !item.expand;
|
|
|
+ companyList.value.forEach(c => { c.select = true; });
|
|
|
+ item.select = true;
|
|
|
};
|
|
|
const handleSelect = (team, index) => {
|
|
|
+ teamid.value = team.teamId;
|
|
|
+ queryParams.value.teamId = team.teamId;
|
|
|
companyList.value.forEach(item => {
|
|
|
if(item.teams){
|
|
|
item.teams.forEach(t => t.select = false);
|
|
|
}
|
|
|
});
|
|
|
team.select = true;
|
|
|
+ getUserList();
|
|
|
};
|
|
|
|
|
|
const handleSetTeam = (team, index) => {
|
|
@@ -332,25 +354,26 @@
|
|
|
};
|
|
|
|
|
|
const handleAddTeam = () => {
|
|
|
- proxy.$router.push('/agentProgramAddTeam');
|
|
|
+ if(!programid.value) return proxy.$message.error('请先选择项目')
|
|
|
+ proxy.$router.push({path:'/agentProgramAddTeam',query:{programId:programid.value}});
|
|
|
};
|
|
|
|
|
|
|
|
|
- const getList = async () => {
|
|
|
+ const getUserList = async () => {
|
|
|
let query = {...queryParams.value};
|
|
|
loading.value = true;
|
|
|
- // const res = await listOrder(query);
|
|
|
- // userList.value = res.data.list;
|
|
|
- // total.value = res.data.total;
|
|
|
+ const res = await getCoachList(query);
|
|
|
+ userList.value = res.data.list;
|
|
|
+ total.value = res.data.total;
|
|
|
loading.value = false;
|
|
|
}
|
|
|
const handleSizeChange = (e)=>{
|
|
|
queryParams.value.limit = e;
|
|
|
- getList();
|
|
|
+ getUserList();
|
|
|
}
|
|
|
const handleCurrentChange = (e)=>{
|
|
|
queryParams.value.page = e;
|
|
|
- getList();
|
|
|
+ getUserList();
|
|
|
}
|
|
|
|
|
|
const handleTeamDetail = team => {
|
|
@@ -359,12 +382,104 @@
|
|
|
|
|
|
const getProgramList = async () => {
|
|
|
loading.value = true;
|
|
|
- const res = await getCoachProgramList(programName.value);
|
|
|
- companyList.value = res.data;
|
|
|
- companyList.value.forEach(t => t.expand = false);
|
|
|
- companyList.value.teams.forEach(t => t.select = false);
|
|
|
+ const res = await getCoachProgramList({enterpriseName:programName.value});
|
|
|
+ if(res.code!==0) return proxy.$message.error(res.msg);
|
|
|
+ companyList.value = res.data.map((d,i)=>{
|
|
|
+ return {
|
|
|
+ ...d,
|
|
|
+ expand: false,
|
|
|
+ select: false,
|
|
|
+ teams: res.data[i].teams.map(t => {
|
|
|
+ return {
|
|
|
+ ...t,
|
|
|
+ select: false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ });
|
|
|
loading.value = false;
|
|
|
+ userList.value = [];
|
|
|
+ total.value = 0;
|
|
|
+ queryParams.value.teamId = '';
|
|
|
+ queryParams.value.page = 1;
|
|
|
+ queryParams.value.realName = '';
|
|
|
+ }
|
|
|
+
|
|
|
+ const handleEdit = (row) => {
|
|
|
+ reset();
|
|
|
+ getCoachInfo(row.id).then(response => {
|
|
|
+ userForm.value = {...userForm.value,...response.data};
|
|
|
+ userTitle.value = "编辑成员详情";
|
|
|
+ userShow.value = true;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ async function handleDelete(row) {
|
|
|
+ await proxy?.$modal.confirm('确认删除成员【' + row.realName + '】吗?').finally(() => loading.value = false);
|
|
|
+ let res = await deleteCoach([row.id]);
|
|
|
+ if (res.code === 0) proxy?.$modal.msgSuccess("删除成功");
|
|
|
+ else return proxy?.$modal.msgError(res.msg);
|
|
|
+ await getUserList();
|
|
|
}
|
|
|
+
|
|
|
+ const reset = () => {
|
|
|
+ userForm.value = {
|
|
|
+ id:'',
|
|
|
+ realName:'',
|
|
|
+ gender:'',
|
|
|
+ birthdate:'',
|
|
|
+ mobile:'',
|
|
|
+ qualificationType:'',
|
|
|
+ coachDuration:'',
|
|
|
+ talent:'',
|
|
|
+ roleIdList:[],
|
|
|
+ userType:1
|
|
|
+ };
|
|
|
+ proxy.resetForm("userRef");
|
|
|
+ }
|
|
|
+
|
|
|
+ const handleChangeDate = (e) => {
|
|
|
+ userForm.value.birthdate = proxy.parseTime(new Date(e), '{yy}-{mm}-{dd}');
|
|
|
+ }
|
|
|
+ const submitForm2 = () => {
|
|
|
+ proxy.$refs.userRef.validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ buttonLoading2.value = true;
|
|
|
+ userForm.value.username = userForm.value.mobile;
|
|
|
+ if(userForm.value.id){
|
|
|
+ updateCoach(userForm.value).then((res)=>{
|
|
|
+ if(res.code!==0) return proxy.$message.error(res.msg);
|
|
|
+ buttonLoading2.value = false;
|
|
|
+ userShow.value = false;
|
|
|
+ getUserList();
|
|
|
+ })
|
|
|
+ }else{
|
|
|
+ addCoach(userForm.value).then((res)=>{
|
|
|
+ if(res.code!==0) return proxy.$message.error(res.msg);
|
|
|
+ buttonLoading2.value = false;
|
|
|
+ userShow.value = false;
|
|
|
+ getUserList();
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ const cancel2 = () => {
|
|
|
+ userShow.value = false;
|
|
|
+ reset();
|
|
|
+ }
|
|
|
+
|
|
|
+ const handleExportMore = () => {
|
|
|
+ if(!teamid.value) return proxy.$message.error('请先选择团队');
|
|
|
+ }
|
|
|
+ const handleAddUser = () => {
|
|
|
+ if(!teamid.value) return proxy.$message.error('请先选择团队');
|
|
|
+ reset();
|
|
|
+ userTitle.value = "新增成员详情";
|
|
|
+ userShow.value = true;
|
|
|
+ }
|
|
|
+
|
|
|
onMounted(() => {
|
|
|
getProgramList();
|
|
|
});
|
|
@@ -504,6 +619,13 @@
|
|
|
margin-top: 24px;
|
|
|
.tull_item{
|
|
|
margin-top: 24px;
|
|
|
+ cursor: pointer;
|
|
|
+ &.active{
|
|
|
+ .tname span{
|
|
|
+ font-weight: bold;
|
|
|
+ color: #761E6A;
|
|
|
+ }
|
|
|
+ }
|
|
|
&:first-child{
|
|
|
margin-top: 0;
|
|
|
}
|
|
@@ -525,7 +647,7 @@
|
|
|
}
|
|
|
}
|
|
|
.tuser_list{
|
|
|
- margin-top: 11px;
|
|
|
+ margin-top: 9px;
|
|
|
width: 100%;
|
|
|
height: 36px;
|
|
|
padding-left: 34px;
|