Browse Source

接口联调

htc 3 days ago
parent
commit
a0dec5933b
3 changed files with 242 additions and 107 deletions
  1. 9 9
      public/index.html
  2. 218 96
      src/views/modules/agent/program.vue
  3. 15 2
      src/views/modules/agent/program/addTeam.vue

+ 9 - 9
public/index.html

@@ -35,39 +35,39 @@
   <!-- 开发环境 -->
   <% if (process.env.VUE_APP_NODE_ENV==='dev' ) { %>
     <script>
-      window.SITE_CONFIG['apiURL'] = 'http://36.134.23.41:8843/chuangheng-admin';
-      // window.SITE_CONFIG['apiURL'] = 'http://192.168.2.19:9011/chuangheng-admin';
+      // window.SITE_CONFIG['apiURL'] = 'http://36.134.23.41:8843/chuangheng-admin';
+      window.SITE_CONFIG['apiURL'] = 'http://192.168.2.19:9021/chuangheng-admin';
       window.SITE_CONFIG['apiURL1'] = 'http://gpu.ringzle.com:8082/iot';
       window.SITE_CONFIG['apiURL2'] = 'http://gpu.ringzle.com:8082/witcarbon-gica';
       // 李勇本机地址
       // WebSocket地址
-      window.SITE_CONFIG['socketURL'] = 'ws://https://s.ringzle.com/witcarbon-admin/websocket';
+      window.SITE_CONFIG['socketURL'] = 'ws://https://s.ringzle.com/chuangheng-admin/websocket';
     </script>
     <% } %>
       <!-- 集成测试环境 -->
       <% if (process.env.VUE_APP_NODE_ENV==='prod:sit' ) { %>
         <script>
-          window.SITE_CONFIG['apiURL'] = 'https://glt.ringzle.com:8033/witcarbon-admin';
+          window.SITE_CONFIG['apiURL'] = 'https://glt.ringzle.com:8033/chuangheng-admin';
           // WebSocket地址
-          window.SITE_CONFIG['socketURL'] = 'ws://gpu.ringzle.com/witcarbon-admin/websocket';
+          window.SITE_CONFIG['socketURL'] = 'ws://gpu.ringzle.com/chuangheng-admin/websocket';
         </script>
         <% } %>
           <!-- 验收测试环境 -->
           <% if (process.env.VUE_APP_NODE_ENV==='prod:uat' ) { %>
             <script>
-              window.SITE_CONFIG['apiURL'] = 'https://glt.ringzle.com:8033/witcarbon-admin';
+              window.SITE_CONFIG['apiURL'] = 'https://glt.ringzle.com:8033/chuangheng-admin';
               // WebSocket地址
-              window.SITE_CONFIG['socketURL'] = 'ws://s.ringzle.com/witcarbon-admin/websocket';
+              window.SITE_CONFIG['socketURL'] = 'ws://s.ringzle.com/chuangheng-admin/websocket';
             </script>
             <% } %>
               <!-- 生产环境 -->
               <% if (process.env.VUE_APP_NODE_ENV==='prod' ) { %>
                 <script>
-                  window.SITE_CONFIG['apiURL'] = '../witcarbon-admin';
+                  window.SITE_CONFIG['apiURL'] = '../chuangheng-admin';
                   window.SITE_CONFIG['apiURL1'] = '../iot';
                   window.SITE_CONFIG['apiURL2'] = '../witcarbon-gica';
                   // WebSocket地址
-                  window.SITE_CONFIG['socketURL'] = 'ws://localhost:8080/witcarbon-admin/websocket';
+                  window.SITE_CONFIG['socketURL'] = 'ws://localhost:8080/chuangheng-admin/websocket';
                 </script>
                 <% } %>
 </head>

+ 218 - 96
src/views/modules/agent/program.vue

@@ -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;

+ 15 - 2
src/views/modules/agent/program/addTeam.vue

@@ -249,8 +249,8 @@
 
 <script setup name="">
     import Cookies from "js-cookie";
-    import { ref, getCurrentInstance } from 'vue'
-    import { getCoachList,addCoachProgram } from "@/api/agent/index";
+    import { ref, getCurrentInstance, onMounted } from 'vue'
+    import { getCoachList,addCoachProgram,getCoachProgramInfo } from "@/api/agent/index";
     import { useRegion } from "@/mixins/region-module";
     const { proxy } = getCurrentInstance();
     const { companyIndustry, staffSize} = proxy.useDict("companyIndustry", "staffSize");
@@ -462,6 +462,19 @@
     const handleDownloadExcel = () => {
         window.location.href = `${window.SITE_CONFIG["apiURL"]}/sys/user/download?token=${Cookies.get("token")}`;
     }
+
+    onMounted(() => {
+        let programId = proxy.$route.query.programId;
+        if(programId){
+            getCoachProgramInfo(programId).then(res=>{
+                if(res.code!==0) return proxy.$message.error(res.msg);
+                step.value = 2;
+                programForm.value = {...programForm.value,...res.data};
+                if(programForm.value.coachList===null) programForm.value.coachList = [];
+                console.log(programForm.value,'programForm')
+            })
+        }
+    })
 </script>
 
 <style scoped lang="scss">