|
@@ -98,14 +98,14 @@
|
|
|
>新增</el-button
|
|
|
>
|
|
|
</el-col>
|
|
|
- <!-- <el-col :span="1.5">
|
|
|
+ <el-col :span="1.5">
|
|
|
<el-button
|
|
|
type="success"
|
|
|
plain
|
|
|
icon="el-icon-edit"
|
|
|
size="mini"
|
|
|
:disabled="single"
|
|
|
- @click="handleUpdate"
|
|
|
+ @click="handleSelectData(1)"
|
|
|
v-hasPermi="['invest:meeting:edit']"
|
|
|
>修改</el-button
|
|
|
>
|
|
@@ -117,11 +117,11 @@
|
|
|
icon="el-icon-delete"
|
|
|
size="mini"
|
|
|
:disabled="multiple"
|
|
|
- @click="handleDelete"
|
|
|
+ @click="handleSelectData(2)"
|
|
|
v-hasPermi="['invest:meeting:remove']"
|
|
|
>删除</el-button
|
|
|
>
|
|
|
- </el-col> -->
|
|
|
+ </el-col>
|
|
|
<el-col :span="1.5">
|
|
|
<el-button
|
|
|
type="warning"
|
|
@@ -140,6 +140,8 @@
|
|
|
</el-row>
|
|
|
|
|
|
<el-table
|
|
|
+ ref="dataTable"
|
|
|
+ @row-click="clickRow"
|
|
|
class="tableWrapper"
|
|
|
v-if="type !== '3'"
|
|
|
v-loading="loading"
|
|
@@ -153,6 +155,13 @@
|
|
|
width="55"
|
|
|
align="center"
|
|
|
/>
|
|
|
+
|
|
|
+ <el-table-column
|
|
|
+ type="index"
|
|
|
+ label="序号"
|
|
|
+ width="50"
|
|
|
+ align="center"
|
|
|
+ ></el-table-column>
|
|
|
<!-- <el-table-column label="主键ID" align="center" prop="id" /> -->
|
|
|
<el-table-column
|
|
|
label="会议编号"
|
|
@@ -174,7 +183,11 @@
|
|
|
title="meetingTheme"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
- <div :title="scope.row.meetingTheme">
|
|
|
+ <div
|
|
|
+ :title="scope.row.meetingTheme"
|
|
|
+ class="public-text-blue public-cursor"
|
|
|
+ @click="handleDetail(scope.row)"
|
|
|
+ >
|
|
|
{{ scope.row.meetingTheme }}
|
|
|
</div>
|
|
|
</template>
|
|
@@ -288,10 +301,11 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
label="操作"
|
|
|
+ v-if="false"
|
|
|
fixed="right"
|
|
|
align="center"
|
|
|
class-name="small-padding fixed-width"
|
|
|
- width="200"
|
|
|
+ width="120"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
<el-button
|
|
@@ -303,15 +317,15 @@
|
|
|
v-hasPermi="['invest:meeting:edit']"
|
|
|
>修改</el-button
|
|
|
>
|
|
|
- <el-button
|
|
|
+ <!-- <el-button
|
|
|
v-if="user.nickName !== scope.row.createBy"
|
|
|
class="custom-blue-color"
|
|
|
size="mini"
|
|
|
type="text"
|
|
|
icon="el-icon-search"
|
|
|
- @click="handleUpdate(scope.row)"
|
|
|
+ @click="handleDetail(scope.row)"
|
|
|
>详情</el-button
|
|
|
- >
|
|
|
+ > -->
|
|
|
<el-button
|
|
|
v-if="user.nickName === scope.row.createBy"
|
|
|
class="custom-red-color"
|
|
@@ -325,7 +339,9 @@
|
|
|
|
|
|
<el-dropdown
|
|
|
v-if="
|
|
|
- scope.row.meetingType == 'LX' || scope.row.meetingType == 'TJ'
|
|
|
+ (scope.row.meetingType == 'LX' ||
|
|
|
+ scope.row.meetingType == 'TJ') &&
|
|
|
+ false
|
|
|
"
|
|
|
trigger="click"
|
|
|
@command="handleCommand($event, scope.row)"
|
|
@@ -411,6 +427,41 @@
|
|
|
:rules="rules"
|
|
|
label-width="120px"
|
|
|
>
|
|
|
+ <el-form-item
|
|
|
+ label="项目名称"
|
|
|
+ prop="projectName"
|
|
|
+ class="special-el-form-item public-input-height-2"
|
|
|
+ :rules="[
|
|
|
+ { required: verifyProjectName, trigger: 'blur', message: '请选择' },
|
|
|
+ ]"
|
|
|
+ >
|
|
|
+ <div
|
|
|
+ class="el-input__inner inputSimulation yichu1"
|
|
|
+ @click="handleProjectItem"
|
|
|
+ :class="{ show_disabled: pageType === '1' }"
|
|
|
+ :title="form.projectName"
|
|
|
+ >
|
|
|
+ {{ form.projectName ? form.projectName : "请选择 " }}
|
|
|
+ </div>
|
|
|
+ <projectItem
|
|
|
+ ref="projectItem"
|
|
|
+ @getProjectInfo="getProjectInfo"
|
|
|
+ ></projectItem>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="项目阶段"
|
|
|
+ prop="projectStage"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-select v-model="form.projectStage" disabled placeholder="">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in dict.type.project_stage"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
<el-form-item label="会议主题" prop="meetingTheme">
|
|
|
<el-input
|
|
|
maxlength="100"
|
|
@@ -455,46 +506,6 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item
|
|
|
- label="项目名称"
|
|
|
- prop="projectName"
|
|
|
- :rules="[
|
|
|
- { required: verifyProjectName, trigger: 'blur', message: '请选择' },
|
|
|
- ]"
|
|
|
- >
|
|
|
- <div
|
|
|
- class="el-input__inner inputSimulation yichu1"
|
|
|
- @click="handleProjectItem"
|
|
|
- :class="{ show_disabled: pageType === '1' }"
|
|
|
- :title="form.projectName"
|
|
|
- >
|
|
|
- {{ form.projectName ? form.projectName : "请选择 " }}
|
|
|
- </div>
|
|
|
- <projectItem
|
|
|
- ref="projectItem"
|
|
|
- @getProjectInfo="getProjectInfo"
|
|
|
- ></projectItem>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="项目阶段" prop="projectStage">
|
|
|
- <el-select v-model="form.projectStage" disabled placeholder="">
|
|
|
- <el-option
|
|
|
- v-for="dict in dict.type.project_stage"
|
|
|
- :key="dict.value"
|
|
|
- :label="dict.label"
|
|
|
- :value="dict.value"
|
|
|
- />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <!-- <el-form-item label="组别" prop="projectGroup">
|
|
|
- <el-select v-model="form.projectGroup" disabled placeholder="">
|
|
|
- <el-option
|
|
|
- v-for="dict in dict.type.project_group"
|
|
|
- :key="dict.value"
|
|
|
- :label="dict.label"
|
|
|
- :value="dict.value"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item> -->
|
|
|
<el-form-item label="会议开始时间" prop="startTime">
|
|
|
<el-date-picker
|
|
|
v-model="form.startTime"
|
|
@@ -504,14 +515,6 @@
|
|
|
value-format="yyyy-MM-dd HH:mm"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
- <!-- <el-date-picker
|
|
|
- clearable
|
|
|
- v-model="form.startTime"
|
|
|
- type="date"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- placeholder="请选择会议开始时间"
|
|
|
- >
|
|
|
- </el-date-picker> -->
|
|
|
</el-form-item>
|
|
|
<el-form-item label="会议结束时间" prop="endTime">
|
|
|
<el-date-picker
|
|
@@ -522,14 +525,6 @@
|
|
|
placeholder="请选择会议结束时间"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
- <!-- <el-date-picker
|
|
|
- clearable
|
|
|
- v-model="form.endTime"
|
|
|
- type="date"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- placeholder="请选择会议结束时间"
|
|
|
- >
|
|
|
- </el-date-picker> -->
|
|
|
</el-form-item>
|
|
|
<el-form-item label="会议地点" prop="place">
|
|
|
<el-input
|
|
@@ -538,11 +533,12 @@
|
|
|
placeholder="请输入会议地点"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="会议发起人" prop="promoter">
|
|
|
- <div
|
|
|
- class="el-input__inner inputSimulation"
|
|
|
- @click="openSelectDept(1)"
|
|
|
- >
|
|
|
+ <el-form-item
|
|
|
+ label="会议发起人"
|
|
|
+ prop="promoter"
|
|
|
+ class="public-input-height"
|
|
|
+ >
|
|
|
+ <div class="el-input__inner" @click="openSelectDept(1)">
|
|
|
{{ form.promoter ? form.promoter : "请选择会议发起人" }}
|
|
|
</div>
|
|
|
<selecDept
|
|
@@ -554,22 +550,15 @@
|
|
|
<el-form-item
|
|
|
label="会议参与人"
|
|
|
prop="participants"
|
|
|
- class="special-el-form-item"
|
|
|
+ class="special-el-form-item public-input-height-2"
|
|
|
>
|
|
|
<div
|
|
|
class="el-input__inner inputSimulation yichu1"
|
|
|
@click="handleSelectPeople()"
|
|
|
:title="form.participants"
|
|
|
>
|
|
|
- <!-- @click="openSelectDept(2)" -->
|
|
|
{{ form.participants ? form.participants : "请选择会议参与人" }}
|
|
|
</div>
|
|
|
- <!-- <selecDept
|
|
|
- ref="selecDepts1"
|
|
|
- @getDeptMoreUserInfo="getDeptMoreUserInfo"
|
|
|
- :deptId="deptId"
|
|
|
- :isSolo="false"
|
|
|
- ></selecDept> -->
|
|
|
</el-form-item>
|
|
|
<el-form-item label="附件" prop="file" class="special-el-form-item">
|
|
|
<fileItem
|
|
@@ -594,6 +583,274 @@
|
|
|
:selectNameValues="selectNameValues"
|
|
|
@handleUserSelect="handleUserSelect"
|
|
|
></selecUser>
|
|
|
+ <!-- 会议记录详情-->
|
|
|
+ <el-dialog
|
|
|
+ title="会议详情"
|
|
|
+ :visible.sync="openDetail"
|
|
|
+ width="1000px"
|
|
|
+ append-to-body
|
|
|
+ >
|
|
|
+ <el-form
|
|
|
+ class="special-el-form"
|
|
|
+ ref="form"
|
|
|
+ :model="form"
|
|
|
+ label-width="120px"
|
|
|
+ >
|
|
|
+ <el-form-item
|
|
|
+ label="项目名称"
|
|
|
+ prop="projectName"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ type="textarea"
|
|
|
+ rows="2"
|
|
|
+ v-model="form.projectName"
|
|
|
+ disabled
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="项目阶段"
|
|
|
+ prop="projectStage"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-select v-model="form.projectStage" disabled>
|
|
|
+ <el-option
|
|
|
+ v-for="dict in dict.type.project_stage"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="会议主题" prop="meetingTheme">
|
|
|
+ <el-input maxlength="100" v-model="form.meetingTheme" disabled />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="会议类别" prop="meetingType">
|
|
|
+ <el-select v-if="showAllType" v-model="form.meetingType" disabled>
|
|
|
+ <el-option
|
|
|
+ v-for="dict in meetingTypeList"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-select v-else v-model="form.meetingType" disabled>
|
|
|
+ <el-option
|
|
|
+ v-for="dict in meetingTypeList1"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="会议开始时间" prop="startTime">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="form.startTime"
|
|
|
+ type="datetime"
|
|
|
+ disabled
|
|
|
+ format="yyyy-MM-dd HH:mm"
|
|
|
+ value-format="yyyy-MM-dd HH:mm"
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="会议结束时间" prop="endTime">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="form.endTime"
|
|
|
+ format="yyyy-MM-dd HH:mm"
|
|
|
+ value-format="yyyy-MM-dd HH:mm"
|
|
|
+ type="datetime"
|
|
|
+ disabled
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="会议地点" prop="place">
|
|
|
+ <el-input maxlength="100" v-model="form.place" disabled />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="会议发起人" prop="promoter">
|
|
|
+ <el-input v-model="form.promoter" disabled />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="会议参与人"
|
|
|
+ prop="participants"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ rows="4"
|
|
|
+ type="textarea"
|
|
|
+ v-model="form.participants"
|
|
|
+ disabled
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="附件" prop="file" class="special-el-form-item">
|
|
|
+ <fileItem
|
|
|
+ ref="fileItemsDet"
|
|
|
+ :id="form.id"
|
|
|
+ @getFileList="getFileList"
|
|
|
+ ></fileItem>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="openDetail = false">关 闭</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ <!-- 立项申请弹窗 -->
|
|
|
+ <el-dialog
|
|
|
+ :title="titleLXApply"
|
|
|
+ :visible.sync="openLXApply"
|
|
|
+ width="1000px"
|
|
|
+ append-to-body
|
|
|
+ >
|
|
|
+ <el-form
|
|
|
+ class="special-el-form"
|
|
|
+ ref="formLXApply"
|
|
|
+ :model="formLXApply"
|
|
|
+ :rules="rulesLXApply"
|
|
|
+ label-width="120px"
|
|
|
+ >
|
|
|
+ <el-form-item
|
|
|
+ label="项目名称"
|
|
|
+ prop="projectName"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ type="textarea"
|
|
|
+ rows="2"
|
|
|
+ v-model="formLXApply.projectName"
|
|
|
+ disabled
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item
|
|
|
+ label="项目概况"
|
|
|
+ prop="projectOverview"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ rows="4"
|
|
|
+ type="textarea"
|
|
|
+ maxlength="200"
|
|
|
+ v-model="formLXApply.projectOverview"
|
|
|
+ placeholder="请输入项目概况"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="项目亮点"
|
|
|
+ prop="projectSparkle"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ rows="4"
|
|
|
+ type="textarea"
|
|
|
+ maxlength="200"
|
|
|
+ v-model="formLXApply.projectSparkle"
|
|
|
+ placeholder="请输入项目亮点"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="立项资料"
|
|
|
+ prop="listFile"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <fileItem
|
|
|
+ ref="fileItemLXApply"
|
|
|
+ :id="formLXApply.id"
|
|
|
+ @getFileList="getFileListLXApply"
|
|
|
+ ></fileItem>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="参与人"
|
|
|
+ prop="participants"
|
|
|
+ class="special-el-form-item public-input-height-2"
|
|
|
+ >
|
|
|
+ <div
|
|
|
+ class="el-input__inner inputSimulation yichu1"
|
|
|
+ @click="handleSelectPeople()"
|
|
|
+ :title="formLXApply.participants"
|
|
|
+ >
|
|
|
+ {{ formLXApply.participants ? formLXApply.participants : "请选择" }}
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button type="primary" @click="submitFormLXApply" v-preventReClick
|
|
|
+ >确 定</el-button
|
|
|
+ >
|
|
|
+ <el-button @click="openLXApply = false">取 消</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ <!-- 投决申请弹窗 -->
|
|
|
+ <el-dialog
|
|
|
+ :title="titleTJApply"
|
|
|
+ :visible.sync="openTJApply"
|
|
|
+ width="1000px"
|
|
|
+ append-to-body
|
|
|
+ >
|
|
|
+ <el-form
|
|
|
+ class="special-el-form"
|
|
|
+ ref="formTJApply"
|
|
|
+ :model="formTJApply"
|
|
|
+ :rules="rulesTJApply"
|
|
|
+ label-width="120px"
|
|
|
+ >
|
|
|
+ <el-form-item
|
|
|
+ label="项目名称"
|
|
|
+ prop="projectName"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ type="textarea"
|
|
|
+ rows="2"
|
|
|
+ v-model="formTJApply.projectName"
|
|
|
+ disabled
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item
|
|
|
+ label="股权/其他合作商务条款"
|
|
|
+ prop="provision"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ rows="4"
|
|
|
+ type="textarea"
|
|
|
+ maxlength="200"
|
|
|
+ v-model="formTJApply.provision"
|
|
|
+ placeholder="请输入股权/其他合作商务条款"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="投决资料"
|
|
|
+ prop="listFile"
|
|
|
+ class="special-el-form-item"
|
|
|
+ >
|
|
|
+ <fileItem
|
|
|
+ ref="fileItemTJApply"
|
|
|
+ :id="formTJApply.id"
|
|
|
+ @getFileList="getFileListTJApply"
|
|
|
+ ></fileItem>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="参与人"
|
|
|
+ prop="participants"
|
|
|
+ class="special-el-form-item public-input-height-2"
|
|
|
+ >
|
|
|
+ <div
|
|
|
+ class="el-input__inner inputSimulation yichu1"
|
|
|
+ @click="handleSelectPeople()"
|
|
|
+ :title="formTJApply.participants"
|
|
|
+ >
|
|
|
+ {{ formTJApply.participants ? formTJApply.participants : "请选择" }}
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button type="primary" @click="submitFormTJApply" v-preventReClick
|
|
|
+ >确 定</el-button
|
|
|
+ >
|
|
|
+ <el-button @click="openTJApply = false">取 消</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -605,11 +862,16 @@ import {
|
|
|
addMeeting,
|
|
|
updateMeeting,
|
|
|
getCanScoringMeetingId,
|
|
|
+ addApproval,
|
|
|
+ updateApproval,
|
|
|
+ addDecision,
|
|
|
+ updateDecision,
|
|
|
} from "@/api/invest/meeting";
|
|
|
import projectItem from "./projectItem";
|
|
|
import fileItem from "./fileItem";
|
|
|
import selecDept from "./selecDept";
|
|
|
import selecUser from "./selecUser";
|
|
|
+import { mapGetters } from "vuex";
|
|
|
|
|
|
export default {
|
|
|
props: {
|
|
@@ -643,6 +905,13 @@ export default {
|
|
|
},
|
|
|
},
|
|
|
data() {
|
|
|
+ const validateLogo = (rule, value, callback) => {
|
|
|
+ if (this.fileListLXApply.length <= 0) {
|
|
|
+ callback(new Error("请上传文件"));
|
|
|
+ } else {
|
|
|
+ callback();
|
|
|
+ }
|
|
|
+ };
|
|
|
return {
|
|
|
meetingTypeDisabled: false, //会议类别
|
|
|
showMenu: false,
|
|
@@ -667,8 +936,10 @@ export default {
|
|
|
single: true,
|
|
|
// 非多个禁用
|
|
|
multiple: true,
|
|
|
+ // 选中数组
|
|
|
+ selectRowList: [],
|
|
|
// 显示搜索条件
|
|
|
- showSearch: true,
|
|
|
+ showSearch: false,
|
|
|
// 总条数
|
|
|
total: 0,
|
|
|
// 会议记录表格数据
|
|
@@ -758,17 +1029,54 @@ export default {
|
|
|
},
|
|
|
],
|
|
|
showAllType: false,
|
|
|
- user: {
|
|
|
- userId: "",
|
|
|
- nickName: "",
|
|
|
+ openDetail: false,
|
|
|
+ // 立项申请
|
|
|
+ titleLXApply: "",
|
|
|
+ openLXApply: false,
|
|
|
+ formLXApply: {
|
|
|
+ id: null,
|
|
|
+ projectPoolId: null,
|
|
|
+ projectName: null,
|
|
|
+ projectOverview: null,
|
|
|
+ projectSparkle: null,
|
|
|
+ listFile: null,
|
|
|
+ participants: null,
|
|
|
+ participantsId: null,
|
|
|
+ },
|
|
|
+ fileListLXApply: [],
|
|
|
+ rulesLXApply: {
|
|
|
+ projectOverview: [
|
|
|
+ { required: true, trigger: "blur", message: "请输入" },
|
|
|
+ ],
|
|
|
+ projectSparkle: [
|
|
|
+ { required: true, trigger: "blur", message: "请输入" },
|
|
|
+ ],
|
|
|
+ listFile: [{ required: true, validator: validateLogo }],
|
|
|
+ },
|
|
|
+ // 投决申请
|
|
|
+ titleTJApply: "",
|
|
|
+ openTJApply: false,
|
|
|
+ formTJApply: {
|
|
|
+ id: null,
|
|
|
+ projectPoolId: null,
|
|
|
+ projectName: null,
|
|
|
+ provision: null,
|
|
|
+ listFile: null,
|
|
|
+ participants: null,
|
|
|
+ participantsId: null,
|
|
|
+ },
|
|
|
+ fileListTJApply: [],
|
|
|
+ rulesTJApply: {
|
|
|
+ provision: [{ required: true, trigger: "blur", message: "请输入" }],
|
|
|
+ listFile: [{ required: true, validator: validateLogo }],
|
|
|
},
|
|
|
- popType: 2, //弹窗类型 1=修改 2=详情
|
|
|
};
|
|
|
},
|
|
|
+ computed: {
|
|
|
+ ...mapGetters(["user"]),
|
|
|
+ },
|
|
|
created() {
|
|
|
- this.user = this.$store.getters.user;
|
|
|
this.showAllType = this.type === "3";
|
|
|
- this.user.userId = this.user.userId.toString();
|
|
|
// 查询该id下的列表信息
|
|
|
if (this.$route.query.id) {
|
|
|
this.queryParams.projectPoolId = this.$route.query.id;
|
|
@@ -803,16 +1111,24 @@ export default {
|
|
|
handleUserSelect(selection) {
|
|
|
const that = this;
|
|
|
if (selection && selection[0]) {
|
|
|
+ let form;
|
|
|
+ if (this.open) {
|
|
|
+ form = this.form;
|
|
|
+ } else if (this.openLXApply) {
|
|
|
+ form = this.formLXApply;
|
|
|
+ } else if (this.openTJApply) {
|
|
|
+ form = this.formTJApply;
|
|
|
+ }
|
|
|
if (selection instanceof Array) {
|
|
|
const userIds = selection.map((item) => item.userId);
|
|
|
const nickName = selection.map((item) => item.nickName);
|
|
|
- this.form.participants = nickName.join(",");
|
|
|
- this.form.participantsId = userIds.join(",");
|
|
|
+ form.participants = nickName.join(",");
|
|
|
+ form.participantsId = userIds.join(",");
|
|
|
this.selectNameValues = nickName.join(",");
|
|
|
this.selectValues = userIds.join(",");
|
|
|
} else {
|
|
|
- this.form.participants = selection.nickName;
|
|
|
- this.form.participantsId = selection.userId;
|
|
|
+ form.participants = selection.nickName;
|
|
|
+ form.participantsId = selection.userId;
|
|
|
this.selectNameValues = selection.nickName;
|
|
|
this.selectValues = selection.userId;
|
|
|
}
|
|
@@ -909,7 +1225,7 @@ export default {
|
|
|
this.form.participantsId = peopleIdStr;
|
|
|
this.$refs.form.clearValidate(["participants"]);
|
|
|
},
|
|
|
- // 获取fileList
|
|
|
+ // 会议申请附件回显
|
|
|
getFileList(fileList) {
|
|
|
if (fileList && fileList.length > 0) {
|
|
|
this.fileList = fileList;
|
|
@@ -917,6 +1233,44 @@ export default {
|
|
|
this.fileList = [];
|
|
|
}
|
|
|
},
|
|
|
+ // 展示立项申请弹窗
|
|
|
+ showLXApplyPop(row) {
|
|
|
+ this.resetLXApply(row);
|
|
|
+ this.fileListLXApply = [];
|
|
|
+ this.openLXApply = true;
|
|
|
+ this.titleLXApply = "立项申请";
|
|
|
+ setTimeout(() => {
|
|
|
+ this.$refs.fileItemLXApply.fileList = [];
|
|
|
+ }, 200);
|
|
|
+ },
|
|
|
+ // 展示投决申请弹窗
|
|
|
+ showTJApplyPop(row) {
|
|
|
+ this.resetTJApply(row);
|
|
|
+ this.fileListLXApply = [];
|
|
|
+ this.openTJApply = true;
|
|
|
+ this.titleTJApply = "投决申请";
|
|
|
+ setTimeout(() => {
|
|
|
+ this.$refs.fileItemTJApply.fileList = [];
|
|
|
+ }, 200);
|
|
|
+ },
|
|
|
+ // 立项申请附件回显
|
|
|
+ getFileListLXApply(fileList) {
|
|
|
+ this.fileListLXApply = fileList;
|
|
|
+ if (fileList && fileList.length > 0) {
|
|
|
+ this.$refs.formLXApply.clearValidate(["listFile"]);
|
|
|
+ } else {
|
|
|
+ this.fileListLXApply = [];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 投决申请附件回显
|
|
|
+ getFileListTJApply(fileList) {
|
|
|
+ this.fileListTJApply = fileList;
|
|
|
+ if (fileList && fileList.length > 0) {
|
|
|
+ this.$refs.formTJApply.clearValidate(["listFile"]);
|
|
|
+ } else {
|
|
|
+ this.fileListTJApply = [];
|
|
|
+ }
|
|
|
+ },
|
|
|
// 获取公司信息
|
|
|
getProjectInfo(info) {
|
|
|
if (info.length > 0) {
|
|
@@ -950,7 +1304,7 @@ export default {
|
|
|
this.open = false;
|
|
|
this.reset();
|
|
|
},
|
|
|
- // 表单重置
|
|
|
+ // 会议申请表单重置
|
|
|
reset() {
|
|
|
this.form = {
|
|
|
id: null,
|
|
@@ -977,6 +1331,30 @@ export default {
|
|
|
};
|
|
|
this.resetForm("form");
|
|
|
},
|
|
|
+ // 立项申请表单重置
|
|
|
+ resetLXApply(row) {
|
|
|
+ this.formLXApply = {
|
|
|
+ id: null,
|
|
|
+ projectPoolId: row.id,
|
|
|
+ projectName: row.projectName,
|
|
|
+ projectOverview: null,
|
|
|
+ projectSparkle: null,
|
|
|
+ listFile: null,
|
|
|
+ };
|
|
|
+ this.resetForm("formLXApply");
|
|
|
+ },
|
|
|
+ // 投决申请表单重置
|
|
|
+ resetTJApply(row) {
|
|
|
+ this.formTJApply = {
|
|
|
+ id: null,
|
|
|
+ projectPoolId: row.id,
|
|
|
+ projectName: row.projectName,
|
|
|
+ projectOverview: null,
|
|
|
+ projectSparkle: null,
|
|
|
+ listFile: null,
|
|
|
+ };
|
|
|
+ this.resetForm("formTJApply");
|
|
|
+ },
|
|
|
/** 搜索按钮操作 */
|
|
|
handleQuery() {
|
|
|
this.queryParams.pageNum = 1;
|
|
@@ -1002,6 +1380,7 @@ export default {
|
|
|
this.idsName = selection.map((item) => item.meetingTheme);
|
|
|
this.single = selection.length !== 1;
|
|
|
this.multiple = !selection.length;
|
|
|
+ this.selectRowList = selection;
|
|
|
},
|
|
|
/** 新增按钮操作 */
|
|
|
handleAdd(projectId, meetingType) {
|
|
@@ -1057,7 +1436,30 @@ export default {
|
|
|
}, 300);
|
|
|
});
|
|
|
},
|
|
|
- /** 提交按钮 */
|
|
|
+ // 详情
|
|
|
+ handleDetail(row) {
|
|
|
+ this.selectValues = null;
|
|
|
+ this.selectNameValues = null;
|
|
|
+ this.showAllType = true;
|
|
|
+ this.reset();
|
|
|
+ const id = row.id || this.ids;
|
|
|
+ this.meetingTypeDisabled = true;
|
|
|
+ getMeeting(id).then((response) => {
|
|
|
+ this.form = response.data;
|
|
|
+ this.form.projectName = response.data.tProjectPool.projectName;
|
|
|
+ this.form.projectStage = response.data.tProjectPool.projectStage;
|
|
|
+ this.form.projectGroup = response.data.tProjectPool.projectGroup;
|
|
|
+ this.openDetail = true;
|
|
|
+ this.selectValues = response.data.participantsId;
|
|
|
+ this.selectNameValues = response.data.participants;
|
|
|
+ setTimeout(() => {
|
|
|
+ this.$refs.fileItemsDet.fileList = [];
|
|
|
+ this.$refs.fileItemsDet.getListFileBusinessId(id);
|
|
|
+ this.$refs.fileItemsDet.handleButton();
|
|
|
+ }, 300);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ /** 会议-提交按钮 */
|
|
|
submitForm() {
|
|
|
this.$refs["form"].validate((valid) => {
|
|
|
if (valid) {
|
|
@@ -1091,6 +1493,48 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ // 项目申请-提交
|
|
|
+ submitFormLXApply() {
|
|
|
+ this.$refs["formLXApply"].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ this.formLXApply.listFile = this.fileListLXApply;
|
|
|
+ if (this.formLXApply.id != null) {
|
|
|
+ updateApproval(this.formLXApply).then((response) => {
|
|
|
+ this.$modal.msgSuccess("修改成功");
|
|
|
+ this.openLXApply = false;
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ addApproval(this.formLXApply).then((response) => {
|
|
|
+ this.$modal.msgSuccess("新增成功");
|
|
|
+ this.openLXApply = false;
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 投决申请-提交
|
|
|
+ submitFormTJApply() {
|
|
|
+ this.$refs["formTJApply"].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ this.formTJApply.listFile = this.fileListTJApply;
|
|
|
+ if (this.formTJApply.id != null) {
|
|
|
+ updateDecision(this.formTJApply).then((response) => {
|
|
|
+ this.$modal.msgSuccess("修改成功");
|
|
|
+ this.openTJApply = false;
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ addDecision(this.formTJApply).then((response) => {
|
|
|
+ this.$modal.msgSuccess("新增成功");
|
|
|
+ this.openTJApply = false;
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
/** 删除按钮操作 */
|
|
|
handleDelete(row) {
|
|
|
const ids = row.id || this.ids;
|
|
@@ -1116,6 +1560,38 @@ export default {
|
|
|
`meeting_${new Date().getTime()}.xlsx`
|
|
|
);
|
|
|
},
|
|
|
+
|
|
|
+ clickRow(row) {
|
|
|
+ this.$refs.dataTable.toggleRowSelection(row);
|
|
|
+ },
|
|
|
+ handleSelectData(type) {
|
|
|
+ // type 1=修改 2=删除
|
|
|
+ if (this.selectRowList.length == 1) {
|
|
|
+ const row = this.selectRowList[0];
|
|
|
+ // 创建人
|
|
|
+ if (row.createBy === this.user.nickName) {
|
|
|
+ if (type === 1) {
|
|
|
+ // 修改
|
|
|
+ this.handleUpdate(row);
|
|
|
+ } else if (type === 2) {
|
|
|
+ // 删除
|
|
|
+ this.handleDelete(row);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ message: "无权限",
|
|
|
+ duration: 1200,
|
|
|
+ type: "error",
|
|
|
+ });
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ message: "只能选择一条数据",
|
|
|
+ duration: 1200,
|
|
|
+ type: "warning",
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|