Explorar o código

新增选择学习资料附件功能

zhulu %!s(int64=2) %!d(string=hai) anos
pai
achega
f8aa60454a

+ 7 - 1
src/components/table/mix.search.js

@@ -57,6 +57,7 @@ export default {
      * 重新搜索
      */
     search() {
+      console.log("this.searchData",this.searchData)
       let checkResult = this.beforeSearchCheck(this.searchData);
       // console.info("search" ,checkResult)
       if (!checkResult) return;
@@ -82,6 +83,7 @@ export default {
       console.log(params);
 
       let data;
+      // debugger
       if (this.method === "post") {
         data = await api.post(this.url, params);
       } else {
@@ -96,7 +98,11 @@ export default {
       if (data.length) {
         this.dataList = this.checkSelect(data);
         this.total = data.length;
-      } else {
+      } else if(data.data){
+        this.dataList = this.checkSelect(data.data);
+        this.total = this.dataList.length;
+      }
+      else{
         this.dataList = this.checkSelect(data.rows);
         this.total = data.totalElements;
       }

+ 134 - 0
src/views/core/edu/plan/dialog.select.file.vue

@@ -0,0 +1,134 @@
+<template>
+  <el-dialog
+    title="选择学习附件"
+    :visible.sync="isShow"
+    class="g-dialog-select-safe-check"
+    :close-on-click-modal="false"
+    width="55%"
+    top="10vh"
+    append-to-body
+  >
+    <div class="el-dialog-div">
+      <g-search-table
+        ref="st"
+        url="/core/materials/fileList"
+        method="post"
+        :search-data="search"
+        :manual="true"
+        :pageable="true"
+        :select="true"
+        :select-default="selectList"
+        :drag="false"
+        @select="onSelect"
+      >
+        <!-- 搜索 -->
+        <template slot="searchs">
+          <el-form-item prop="title" label="资料标题">
+            <el-input v-model="search.title"></el-input>
+          </el-form-item>
+          <el-form-item prop="fileName" label="附件名称">
+            <el-input v-model="search.fileName"></el-input>
+          </el-form-item>
+        </template>
+
+        <!-- 表格 -->
+        <template slot="columns">
+          <el-table-column
+            prop="orgName"
+            label="资料上传机构"
+           min-width="40%"
+          ></el-table-column>
+          <el-table-column label="资料标题" prop="title" min-width="40%"> </el-table-column>
+          <el-table-column
+            label="资料附件"
+            min-width="20%"
+          >
+          <template slot-scope="scope">
+            <template v-if="scope.row.fileList">
+              <el-tag size="mini" type="success" v-for="(item, index) in scope.row.fileList"
+                      :key="index">
+                {{ JSON.parse(item).name }}
+              </el-tag>
+            </template>
+          </template>
+        </el-table-column>
+          <!--          <el-table-column prop="nfcName"
+                           label="采集点"
+                           width="120"></el-table-column>-->
+        </template>
+      </g-search-table>
+    </div>
+
+    <div slot="footer" class="dialog-footer">
+      <el-button @click="onHide">关闭</el-button>
+      <el-button type="primary" @click="onSubmit">确定</el-button>
+    </div>
+  </el-dialog>
+</template>
+<script>
+import GSearchTable from "@/components/table/gx.search.table.vue";
+import { ruleListForOrg } from "@/api/resumption/rule.js";
+export default {
+  components: { GSearchTable },
+  data() {
+    return {
+      isShow: false,
+      selectList: [],
+      ruleList: [],
+      search: this.emptySearch(),      
+    };
+  },
+  computed: {},
+  watch: {
+    orgId(newval) {
+      console.log("orgId",newval);
+      this.search.orgId=newval;
+    },
+  },
+  props: {
+    defaultSelect:{
+      type:Array
+    },
+    orgId:{
+      
+    },
+  },
+  methods: {
+    show() {
+      this.search= this.emptySearch();
+      console.log("this.search",this.search)
+      this.isShow = true;
+      this.selectList =this.defaultSelect; 
+      //this.$refs.st.search();
+    },
+    onHide() {
+      this.isShow = false;
+      this.search=this.emptySearch();
+    },
+    onSelect(item) {      
+      this.selectList = item;
+    },
+    onSubmit() {
+      let s=this.selectList
+      this.$emit("select", this.selectList);
+      this.onHide();
+    },
+    emptySearch() {
+      return {
+        title: null,
+        fileName: null,
+        orgId:this.$store.getters.orgId,
+        t:new Date(),
+      };
+    },
+  },
+  mounted() {
+    
+  },
+};
+</script>
+<style lang="scss" scoped>
+.el-dialog-div {
+  overflow: auto;
+}
+</style>

+ 174 - 219
src/views/core/edu/plan/index.vue

@@ -1,102 +1,66 @@
 <template>
   <div class="app-container">
-    <!--机构数据-->
-    <el-col :span="4" :xs="24">
-      <org-tree v-model="queryParams.belongOrgId" @defaultKey="getDefaultKey" @checkChange="checkChange"
-                @click="clickTreeNode"></org-tree>
-    </el-col>
-    <!--搜索栏-->
-    <el-col :span="20" :xs="24">
-      <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+    <el-row :gutter="20">
+      <!--机构数据-->
+      <el-col :span="4" :xs="24">
+        <org-tree v-model="queryParams.belongOrgId" @defaultKey="getDefaultKey" @checkChange="checkChange"
+          @click="clickTreeNode"></org-tree>
+      </el-col>
+      <!--搜索栏-->
+      <el-col :span="20" :xs="24">
+        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
 
-        <el-form-item label="机构类型" prop="execOrgType">
-          <el-select v-model="queryParams.execOrgType" placeholder="请选择执行机构类型" clearable>
-            <el-option
-              v-for="dict in dict.type.sys_org_type"
-              :key="dict.value"
-              :label="dict.label"
-              :value="dict.value"
-            />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="计划周期" prop="planCycle">
-          <el-select v-model="queryParams.planCycle" placeholder="请选择计划周期" clearable>
-            <el-option
-              v-for="dict in dict.type.edu_plan_cycle"
-              :key="dict.value"
-              :label="dict.label"
-              :value="dict.value"
-            />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="计划状态" prop="planStatus">
-          <el-select v-model="queryParams.planStatus" placeholder="请选择计划状态" clearable>
-            <el-option
-              v-for="dict in dict.type.plan_status"
-              :key="dict.value"
-              :label="dict.label"
-              :value="dict.value"
-            />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="培训角色" prop="planRoleId">
-          <el-select v-model="form.planRoleId" placeholder="请选择" clearable>
-            <el-option v-for="item in planRoleList" :key="item.roleId" :label="item.roleName"
-                       :value="item.roleId"></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="计划名称" prop="planName">
-          <el-input
-            v-model="queryParams.planName"
-            placeholder="请输入计划名称"
-            clearable
-            @keyup.enter.native="handleQuery"
-          />
-        </el-form-item>
+          <el-form-item label="机构类型" prop="execOrgType">
+            <el-select v-model="queryParams.execOrgType" placeholder="请选择执行机构类型" clearable>
+              <el-option v-for="dict in dict.type.sys_org_type" :key="dict.value" :label="dict.label"
+                :value="dict.value" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="计划周期" prop="planCycle">
+            <el-select v-model="queryParams.planCycle" placeholder="请选择计划周期" clearable>
+              <el-option v-for="dict in dict.type.edu_plan_cycle" :key="dict.value" :label="dict.label"
+                :value="dict.value" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="计划状态" prop="planStatus">
+            <el-select v-model="queryParams.planStatus" placeholder="请选择计划状态" clearable>
+              <el-option v-for="dict in dict.type.plan_status" :key="dict.value" :label="dict.label"
+                :value="dict.value" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="培训角色" prop="planRoleId">
+            <el-select v-model="form.planRoleId" placeholder="请选择" clearable>
+              <el-option v-for="item in planRoleList" :key="item.roleId" :label="item.roleName"
+                :value="item.roleId"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="计划名称" prop="planName">
+            <el-input v-model="queryParams.planName" placeholder="请输入计划名称" clearable @keyup.enter.native="handleQuery" />
+          </el-form-item>
 
-        <el-form-item>
-          <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-          <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
-        </el-form-item>
-      </el-form>
+          <el-form-item>
+            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+          </el-form-item>
+        </el-form>
 
-      <el-row :gutter="10" class="mb8">
-        <el-col :span="1.5">
-          <el-button
-            type="primary"
-            plain
-            icon="el-icon-plus"
-            size="mini"
-            @click="handleAdd"
-            v-hasPermi="['core:plan:add']"
-          >新增
-          </el-button>
-        </el-col>
-        <el-col :span="1.5">
-          <el-button
-            type="success"
-            plain
-            icon="el-icon-edit"
-            size="mini"
-            :disabled="single"
-            @click="handleUpdate"
-            v-hasPermi="['core:plan:edit']"
-          >修改
-          </el-button>
-        </el-col>
-        <el-col :span="1.5">
-          <el-button
-            type="danger"
-            plain
-            icon="el-icon-delete"
-            size="mini"
-            :disabled="multiple"
-            @click="handleDelete"
-            v-hasPermi="['core:plan:remove']"
-          >删除
-          </el-button>
-        </el-col>
-        <!--        <el-col :span="1.5">
+        <el-row :gutter="10" class="mb8">
+          <el-col :span="1.5">
+            <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
+              v-hasPermi="['core:plan:add']">新增
+            </el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
+              v-hasPermi="['core:plan:edit']">修改
+            </el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
+              v-hasPermi="['core:plan:remove']">删除
+            </el-button>
+          </el-col>
+          <!--        <el-col :span="1.5">
                   <el-button
                     type="warning"
                     plain
@@ -107,107 +71,79 @@
                   >导出
                   </el-button>
                 </el-col>-->
-        <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
-      </el-row>
+          <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+        </el-row>
 
-      <el-table :data="planList"
-                @selection-change="handleSelectionChange"
-                row-key="id"
-                :tree-props="{ children: 'children'}">
-        <el-table-column label="序号" align="center" prop="no"/>
-        <el-table-column label="计划名称" align="center" prop="planName"/>
-        <el-table-column label="计划创建机构" align="center" prop="createOrgName"/>
-        <el-table-column label="计划所属机构" align="center" prop="belongOrgName"/>
-        <el-table-column label="培训机构类型" align="center" prop="execOrgType">
-          <template slot-scope="scope">
-            <dict-tag :options="dict.type.sys_org_type" :value="scope.row.execOrgType"/>
-          </template>
-        </el-table-column>
-        <el-table-column label="计划周期" align="center" prop="planCycle">
-          <template slot-scope="scope">
-            <dict-tag :options="dict.type.edu_plan_cycle" :value="scope.row.planCycle"/>
-          </template>
-        </el-table-column>
-        <el-table-column prop="planRoleNameList" label="培训角色">
-          <template slot-scope="scope">
-            <template v-if="scope.row.planRoleNameList">
-              <el-tag size="mini" type="success" v-for="(item, index) in (scope.row.planRoleNameList || '').split(',')"
-                      :key="index">
-                {{ item }}
-              </el-tag>
+        <el-table :data="planList" @selection-change="handleSelectionChange" row-key="id"
+          :tree-props="{ children: 'children' }">
+          <el-table-column label="序号" align="center" prop="no" />
+          <el-table-column label="计划名称" align="center" prop="planName" />
+          <el-table-column label="计划创建机构" align="center" prop="createOrgName" />
+          <el-table-column label="计划所属机构" align="center" prop="belongOrgName" />
+          <el-table-column label="培训机构类型" align="center" prop="execOrgType">
+            <template slot-scope="scope">
+              <dict-tag :options="dict.type.sys_org_type" :value="scope.row.execOrgType" />
             </template>
-            <template v-else>
-              <el-tag size="mini">{{ scope.row.checkOrgTypeText }}</el-tag>
+          </el-table-column>
+          <el-table-column label="计划周期" align="center" prop="planCycle">
+            <template slot-scope="scope">
+              <dict-tag :options="dict.type.edu_plan_cycle" :value="scope.row.planCycle" />
             </template>
-          </template>
-        </el-table-column>
-        <el-table-column label="培训次数" align="center" prop="execTimes"/>
-        <el-table-column label="备注" align="center" prop="remark"/>
-        <el-table-column label="修改人" align="center" prop="updateBy"/>
-        <el-table-column label="计划状态" align="center" prop="planStatus">
-          <template slot-scope="scope">
-            <dict-tag :options="dict.type.plan_status" :value="scope.row.planStatus"/>
-          </template>
-        </el-table-column>
-        <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
-          <template slot-scope="scope">
-            <el-button
-              v-if="checkCanPublish(scope.row)"
-              size="mini"
-              type="text"
-              icon="el-icon-edit"
-              @click="handlePublish(scope.row)"
-              v-hasPermi="['core:plan:publish']"
-            >下发
-            </el-button>
-            <el-button
-              v-if="checkCanEdit(scope.row)"
-              size="mini"
-              type="text"
-              icon="el-icon-edit"
-              @click="handleUpdate(scope.row)"
-              v-hasPermi="['core:plan:edit']"
-            >修改
-            </el-button>
-            <el-button
-              v-if="checkCanDel(scope.row)"
-              size="mini"
-              type="text"
-              icon="el-icon-delete"
-              @click="handleDelete(scope.row)"
-              v-hasPermi="['core:plan:remove']"
-            >删除
-            </el-button>
-          </template>
-        </el-table-column>
-      </el-table>
+          </el-table-column>
+          <el-table-column prop="planRoleNameList" label="培训角色">
+            <template slot-scope="scope">
+              <template v-if="scope.row.planRoleNameList">
+                <el-tag size="mini" type="success" v-for="(item, index) in (scope.row.planRoleNameList || '').split(',')"
+                  :key="index">
+                  {{ item }}
+                </el-tag>
+              </template>
+              <template v-else>
+                <el-tag size="mini">{{ scope.row.checkOrgTypeText }}</el-tag>
+              </template>
+            </template>
+          </el-table-column>
+          <el-table-column label="培训次数" align="center" prop="execTimes" />
+          <el-table-column label="备注" align="center" prop="remark" />
+          <el-table-column label="修改人" align="center" prop="updateBy" />
+          <el-table-column label="计划状态" align="center" prop="planStatus">
+            <template slot-scope="scope">
+              <dict-tag :options="dict.type.plan_status" :value="scope.row.planStatus" />
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+            <template slot-scope="scope">
+              <el-button v-if="checkCanPublish(scope.row)" size="mini" type="text" icon="el-icon-edit"
+                @click="handlePublish(scope.row)" v-hasPermi="['core:plan:publish']">下发
+              </el-button>
+              <el-button v-if="checkCanEdit(scope.row)" size="mini" type="text" icon="el-icon-edit"
+                @click="handleUpdate(scope.row)" v-hasPermi="['core:plan:edit']">修改
+              </el-button>
+              <el-button v-if="checkCanDel(scope.row)" size="mini" type="text" icon="el-icon-delete"
+                @click="handleDelete(scope.row)" v-hasPermi="['core:plan:remove']">删除
+              </el-button>
+            </template>
+          </el-table-column>
+        </el-table>
 
-      <pagination
-        v-show="total>0"
-        :total="total"
-        :page.sync="queryParams.pageNum"
-        :limit.sync="queryParams.pageSize"
-        @pagination="getList"
-      />
-    </el-col>
+        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
+          @pagination="getList" />
+      </el-col>
+    </el-row>
     <!-- 添加或修改教育培训计划对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="800px" height="800px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-row>
           <el-col :span="12">
             <el-form-item label="计划名称" prop="planName">
-              <el-input v-model="form.planName" placeholder="请输入计划名称"/>
+              <el-input v-model="form.planName" placeholder="请输入计划名称" />
             </el-form-item>
           </el-col>
           <el-col :span="12">
             <el-form-item label="计划周期" prop="planCycle">
               <el-select v-model="form.planCycle" placeholder="请选择计划周期">
-                <el-option
-                  v-for="dict in dict.type.edu_plan_cycle"
-                  :key="dict.value"
-                  :label="dict.label"
-                  :value="parseInt(dict.value)"
-                ></el-option>
+                <el-option v-for="dict in dict.type.edu_plan_cycle" :key="dict.value" :label="dict.label"
+                  :value="parseInt(dict.value)"></el-option>
               </el-select>
             </el-form-item>
           </el-col>
@@ -215,16 +151,15 @@
         <el-row>
           <el-col :span="12" v-show="form.planCycle == 0">
             <el-form-item prop="startDate" label="开始日期">
-              <el-date-picker v-model="form.startDate" @change="startDateChanged"
-                              :picker-options="startDatepickerOptions" align="right" type="date"
-                              placeholder="选择开始日期">
+              <el-date-picker v-model="form.startDate" @change="startDateChanged" :picker-options="startDatepickerOptions"
+                align="right" type="date" placeholder="选择开始日期">
               </el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :span="12" v-show="form.planCycle == 0">
             <el-form-item prop="endDate" label="结束日期">
-              <el-date-picker v-model="form.endDate" :picker-options="endDatepickerOptions" align="right"
-                              type="date" placeholder="选择结束日期">
+              <el-date-picker v-model="form.endDate" :picker-options="endDatepickerOptions" align="right" type="date"
+                placeholder="选择结束日期">
               </el-date-picker>
             </el-form-item>
           </el-col>
@@ -241,12 +176,8 @@
           <el-col :span="12">
             <el-form-item label="计划状态" prop="planStatus">
               <el-select v-model="form.planStatus" placeholder="请选择计划状态">
-                <el-option
-                  v-for="dict in dict.type.plan_status"
-                  :key="dict.value"
-                  :label="dict.label"
-                  :value="parseInt(dict.value)"
-                ></el-option>
+                <el-option v-for="dict in dict.type.plan_status" :key="dict.value" :label="dict.label"
+                  :value="parseInt(dict.value)"></el-option>
               </el-select>
             </el-form-item>
           </el-col>
@@ -262,12 +193,8 @@
           <el-col :span="12">
             <el-form-item label="培训机构类型" prop="execOrgType">
               <el-select v-model="form.execOrgType" placeholder="请选择执行机构类型" @change="execOrgTypeChanged()">
-                <el-option
-                  v-for="dict in dict.type.sys_org_type"
-                  :key="dict.value"
-                  :label="dict.label"
-                  :value="parseInt(dict.value)"
-                ></el-option>
+                <el-option v-for="dict in dict.type.sys_org_type" :key="dict.value" :label="dict.label"
+                  :value="parseInt(dict.value)"></el-option>
               </el-select>
             </el-form-item>
           </el-col>
@@ -280,28 +207,32 @@
               </el-select>
             </el-form-item>
           </el-col>
-          <el-col :span="12">
+          <!-- <el-col :span="12">
             <el-form-item label="培训机构" prop="planExecOrgIdList">
-              <tree-select
-                v-model="form.planExecOrgIdList"
-                :options="deptOptions"
-                :show-count="true"
-                :normalizer="tenantIdnormalizer"
-                :props="{checkStrictly: true, label:'name'}"
-                placeholder="请选择培训机构"/>
+              <tree-select v-model="form.planExecOrgIdList" :options="deptOptions" :show-count="true"
+                :normalizer="tenantIdnormalizer" :props="{ checkStrictly: true, label: 'name' }" placeholder="请选择培训机构" />
             </el-form-item>
-          </el-col>
+          </el-col> -->
         </el-row>
         <el-row>
           <el-col :span="12">
             <el-form-item label="备注" prop="remark">
-              <el-input v-model="form.remark" placeholder="请输入备注"/>
+              <el-input v-model="form.remark" placeholder="请输入备注" />
             </el-form-item>
           </el-col>
+        </el-row> 
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="上传文件" prop="fileList">
+              <K-file-upload ref="upload" v-model="form.fileList" @input="getKUploadFileList" />
+            </el-form-item> 
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="">
+              <el-button type="primary" @click="showSelectFile" >从学习资料中选择</el-button>
+            </el-form-item> 
+          </el-col>
         </el-row>
-        <el-form-item label="上传文件" prop="fileList">
-          <K-file-upload ref="upload" v-model="form.fileList" @input="getKUploadFileList"/>
-        </el-form-item>
       </el-form>
 
       <div slot="footer" class="dialog-footer">
@@ -309,6 +240,13 @@
         <el-button @click="cancel">取 消</el-button>
       </div>
     </el-dialog>
+    <DialogSelectFile
+          ref="DialogSelectFile"
+          :defaultSelect=defaultSelect
+          @select="fileSelected"
+          :orgId="orgId"
+        ></DialogSelectFile>
+    
   </div>
 </template>
 
@@ -325,13 +263,14 @@ import {
 } from "@/api/core/edu/plan";
 import tableList from "@/mixins/tableList";
 import OrgTree from "@/components/orgTree";
-import {deptTreeSelect} from "@/api/system/public";
+import { deptTreeSelect } from "@/api/system/public";
 import KFileUpload from "@/components/K-FileUpload/index.vue";
+import DialogSelectFile from "./dialog.select.file.vue";
 
 export default {
   name: "Plan",
   dicts: ['plan_cycle', 'sys_org_type', 'plan_status', 'edu_plan_cycle'],
-  components: {OrgTree, KFileUpload},
+  components: { OrgTree, KFileUpload,DialogSelectFile },
   mixins: [tableList],
   data() {
     return {
@@ -354,6 +293,8 @@ export default {
       // 是否显示弹出层
       open: false,
       isUnfold: false,
+      defaultSelect:[],
+      orgId:null,
       // 查询参数
       queryParams: {
         execOrgType: null,
@@ -371,22 +312,22 @@ export default {
       // 表单校验
       rules: {
         planName: [
-          {required: true, message: "计划名称不能为空", trigger: "blur"}
+          { required: true, message: "计划名称不能为空", trigger: "blur" }
         ],
         planCycle: [
-          {required: true, message: "计划周期不能为空", trigger: "blur"}
+          { required: true, message: "计划周期不能为空", trigger: "blur" }
         ],
         execTimes: [
-          {required: true, message: "培训次数不能为空", trigger: "blur"}
+          { required: true, message: "培训次数不能为空", trigger: "blur" }
         ],
         planStatus: [
-          {required: true, message: "计划状态不能为空", trigger: "blur"}
+          { required: true, message: "计划状态不能为空", trigger: "blur" }
         ],
         execOrgType: [
-          {required: true, message: "培训机构类型不能为空", trigger: "blur"}
+          { required: true, message: "培训机构类型不能为空", trigger: "blur" }
         ],
         planRoleId: [
-          {required: true, message: "培训角色不能为空", trigger: "blur"}
+          { required: true, message: "培训角色不能为空", trigger: "blur" }
         ],
       },
       planRoleList: [],
@@ -408,6 +349,7 @@ export default {
   created() {
     this.getList();
     this.initPlanRoleList();
+    this.orgId=this.$store.getters.orgId;
   },
   methods: {
     /** 查询教育培训计划列表 */
@@ -613,7 +555,20 @@ export default {
       this.download('system/plan/export', {
         ...this.queryParams
       }, `plan_${new Date().getTime()}.xlsx`)
-    }
+    },
+    showSelectFile(){
+      // this.$refs.DialogSelectFile.show();
+      this.$refs["DialogSelectFile"].show();
+    },
+    fileSelected(list)
+    {
+      console.log("fileSelected",list);
+      if(!list) return;
+      list.forEach(x=>{
+        this.form.fileList= this.form.fileList.concat(x.fileList);
+      })
+      
+    },
   }
 };
 </script>