projectList.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802
  1. <template>
  2. <div class="app-container">
  3. <el-form
  4. v-if="type !== '2'"
  5. :model="queryParams"
  6. ref="queryForm"
  7. size="small"
  8. :inline="true"
  9. v-show="showSearch"
  10. label-width="90px"
  11. >
  12. <el-form-item label="项目名称" prop="projectName">
  13. <el-input
  14. v-model="queryParams.projectName"
  15. placeholder="请输入项目名称"
  16. clearable
  17. @keyup.enter.native="handleQuery"
  18. />
  19. </el-form-item>
  20. <el-form-item label="渠道" prop="channel">
  21. <el-select v-model="queryParams.channel" placeholder="全部" clearable>
  22. <el-option
  23. v-for="item in channelList"
  24. :key="item.id"
  25. :label="item.channelName"
  26. :value="item.id"
  27. />
  28. </el-select>
  29. </el-form-item>
  30. <el-form-item label="所属组别" prop="projectGroup">
  31. <el-select
  32. v-model="queryParams.projectGroup"
  33. placeholder="全部"
  34. clearable
  35. >
  36. <el-option
  37. v-for="dict in dict.type.project_group"
  38. :key="dict.value"
  39. :label="dict.label"
  40. :value="dict.value"
  41. />
  42. </el-select>
  43. </el-form-item>
  44. <el-form-item label="投资负责人" prop="investHead">
  45. <el-input
  46. v-model="queryParams.investHead"
  47. placeholder="请输入投资负责人"
  48. clearable
  49. @keyup.enter.native="handleQuery"
  50. />
  51. </el-form-item>
  52. <el-form-item label="项目联系人" prop="projectContacts">
  53. <el-input
  54. v-model="queryParams.projectContacts"
  55. placeholder="请输入项目联系人"
  56. clearable
  57. @keyup.enter.native="handleQuery"
  58. />
  59. </el-form-item>
  60. <!-- <el-form-item label="初次接触日期" prop="contactDate">
  61. <el-date-picker
  62. clearable
  63. v-model="queryParams.contactDate"
  64. type="date"
  65. value-format="yyyy-MM-dd"
  66. placeholder="请选择初次接触日期"
  67. >
  68. </el-date-picker>
  69. </el-form-item> -->
  70. <!-- <el-form-item label="立项通过日期" prop="projectDate">
  71. <el-date-picker
  72. clearable
  73. v-model="queryParams.projectDate"
  74. type="date"
  75. value-format="yyyy-MM-dd"
  76. placeholder="请选择立项通过日期"
  77. >
  78. </el-date-picker>
  79. </el-form-item> -->
  80. <!-- <el-form-item label="投决通过日期" prop="decisionDate">
  81. <el-date-picker
  82. clearable
  83. v-model="queryParams.decisionDate"
  84. type="date"
  85. value-format="yyyy-MM-dd"
  86. placeholder="请选择投决通过日期"
  87. >
  88. </el-date-picker>
  89. </el-form-item> -->
  90. <el-form-item label="项目公司" prop="company">
  91. <el-input
  92. v-model="queryParams.company"
  93. placeholder="请输入项目所属公司"
  94. clearable
  95. @keyup.enter.native="handleQuery"
  96. />
  97. </el-form-item>
  98. <!-- <el-form-item label="项目编号" prop="projectCode">
  99. <el-input
  100. v-model="queryParams.projectCode"
  101. placeholder="请输入项目编号"
  102. clearable
  103. @keyup.enter.native="handleQuery"
  104. />
  105. </el-form-item> -->
  106. <!-- <el-form-item label="历次融资" prop="previousFinancing">
  107. <el-input
  108. v-model="queryParams.previousFinancing"
  109. placeholder="请输入历次融资"
  110. clearable
  111. @keyup.enter.native="handleQuery"
  112. />
  113. </el-form-item> -->
  114. <!-- <el-form-item label="项目融资阶段" prop="financingStage">
  115. <el-input
  116. v-model="queryParams.financingStage"
  117. placeholder="请输入项目融资阶段"
  118. clearable
  119. @keyup.enter.native="handleQuery"
  120. />
  121. </el-form-item> -->
  122. <!-- <el-form-item label="预期融资金额" prop="financingMoney">
  123. <el-input
  124. v-model="queryParams.financingMoney"
  125. placeholder="请输入预期融资金额"
  126. clearable
  127. @keyup.enter.native="handleQuery"
  128. />
  129. </el-form-item> -->
  130. <!-- <el-form-item label="投前估值" prop="investValuation">
  131. <el-input
  132. v-model="queryParams.investValuation"
  133. placeholder="请输入投前估值"
  134. clearable
  135. @keyup.enter.native="handleQuery"
  136. />
  137. </el-form-item> -->
  138. <!-- <el-form-item label="预计投资金额" prop="investMoney">
  139. <el-input
  140. v-model="queryParams.investMoney"
  141. placeholder="请输入预计投资金额"
  142. clearable
  143. @keyup.enter.native="handleQuery"
  144. />
  145. </el-form-item> -->
  146. <el-form-item label="创建日期" prop="createTime">
  147. <el-date-picker
  148. style="width: 205px"
  149. clearable
  150. v-model="queryParams.createTime"
  151. type="date"
  152. value-format="yyyy-MM-dd"
  153. placeholder="请选择创建日期"
  154. >
  155. </el-date-picker>
  156. </el-form-item>
  157. <el-form-item>
  158. <el-button
  159. type="primary"
  160. icon="el-icon-search"
  161. size="mini"
  162. @click="handleQuery"
  163. >搜索</el-button
  164. >
  165. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
  166. >重置</el-button
  167. >
  168. </el-form-item>
  169. </el-form>
  170. <el-row
  171. :gutter="10"
  172. class="mb8"
  173. v-if="type === '2' && stage == '4' ? false : true"
  174. >
  175. <el-col :span="1.5">
  176. <el-button
  177. v-if="type === '1' && (stage == '0' || stage == '1')"
  178. type="primary"
  179. plain
  180. icon="el-icon-plus"
  181. size="mini"
  182. @click="handleAdd"
  183. v-hasPermi="['invest:pool:add']"
  184. >新增</el-button
  185. >
  186. </el-col>
  187. <el-col :span="1.5">
  188. <el-button
  189. type="success"
  190. plain
  191. icon="el-icon-edit"
  192. size="mini"
  193. :disabled="single"
  194. @click="handleUpdate"
  195. v-hasPermi="['invest:pool:edit']"
  196. >修改</el-button
  197. >
  198. </el-col>
  199. <el-col :span="1.5">
  200. <el-button
  201. type="danger"
  202. plain
  203. icon="el-icon-switch-button"
  204. size="mini"
  205. :disabled="multiple"
  206. @click="handleDelete"
  207. v-hasPermi="['invest:pool:remove']"
  208. >终止</el-button
  209. >
  210. </el-col>
  211. <el-col :span="1.5">
  212. <el-button
  213. type="warning"
  214. plain
  215. icon="el-icon-download"
  216. size="mini"
  217. @click="handleExport"
  218. v-hasPermi="['invest:pool:export']"
  219. >导出</el-button
  220. >
  221. </el-col>
  222. <right-toolbar
  223. :showSearch.sync="showSearch"
  224. @queryTable="getList"
  225. ></right-toolbar>
  226. </el-row>
  227. <el-table
  228. v-loading="loading"
  229. :data="poolList"
  230. @selection-change="handleSelectionChange"
  231. >
  232. <el-table-column type="selection" width="55" align="center" />
  233. <!-- <el-table-column label="主键id" align="center" prop="id" /> -->
  234. <el-table-column
  235. label="项目名称"
  236. align="center"
  237. prop="projectName"
  238. width="150"
  239. />
  240. <el-table-column
  241. label="投资负责人"
  242. align="center"
  243. prop="investHead"
  244. width="100px"
  245. />
  246. <!-- <el-table-column label="项目编号" align="center" prop="id" /> -->
  247. <el-table-column
  248. label="渠道"
  249. align="center"
  250. prop="tProjectChannel.channelName"
  251. />
  252. <el-table-column label="所属组别" align="center" prop="projectGroup">
  253. <template slot-scope="scope">
  254. <dict-tag
  255. :options="dict.type.project_group"
  256. :value="scope.row.projectGroup"
  257. />
  258. </template>
  259. </el-table-column>
  260. <el-table-column label="项目阶段" align="center" prop="projectStage">
  261. <template slot-scope="scope">
  262. <dict-tag
  263. :options="dict.type.project_stage"
  264. :value="scope.row.projectStage"
  265. />
  266. </template>
  267. </el-table-column>
  268. <el-table-column
  269. label="项目状态"
  270. align="center"
  271. prop="projectState"
  272. width="150"
  273. >
  274. <template slot-scope="scope">
  275. <dict-tag
  276. :options="dict.type.project_state"
  277. :value="scope.row.projectState"
  278. />
  279. </template>
  280. </el-table-column>
  281. <el-table-column
  282. label="初次接触日期"
  283. align="center"
  284. prop="contactDate"
  285. width="100"
  286. >
  287. <template slot-scope="scope">
  288. <span>{{ parseTime(scope.row.contactDate, "{y}-{m}-{d}") }}</span>
  289. </template>
  290. </el-table-column>
  291. <el-table-column
  292. label="立项通过日期"
  293. align="center"
  294. prop="projectDate"
  295. width="100"
  296. >
  297. <template slot-scope="scope">
  298. <span>{{ parseTime(scope.row.projectDate, "{y}-{m}-{d}") }}</span>
  299. </template>
  300. </el-table-column>
  301. <el-table-column
  302. label="投决通过日期"
  303. align="center"
  304. prop="decisionDate"
  305. width="100"
  306. >
  307. <template slot-scope="scope">
  308. <span>{{ parseTime(scope.row.decisionDate, "{y}-{m}-{d}") }}</span>
  309. </template>
  310. </el-table-column>
  311. <el-table-column label="项目所属行业" align="center" prop="industry" />
  312. <el-table-column
  313. label="项目所属公司"
  314. align="center"
  315. prop="tProjectCompany.companyName"
  316. />
  317. <el-table-column
  318. label="项目联系人"
  319. align="center"
  320. prop="tProjectContacts.name"
  321. />
  322. <el-table-column
  323. label="历次融资"
  324. align="center"
  325. prop="previousFinancing"
  326. />
  327. <el-table-column
  328. label="项目融资阶段"
  329. align="center"
  330. prop="financingStage"
  331. />
  332. <el-table-column
  333. label="预期融资金额"
  334. align="center"
  335. prop="financingMoney"
  336. />
  337. <el-table-column
  338. label="预期融资时间"
  339. align="center"
  340. prop="financingDate"
  341. width="180"
  342. >
  343. <template slot-scope="scope">
  344. <span>{{ parseTime(scope.row.financingDate, "{y}-{m}-{d}") }}</span>
  345. </template>
  346. </el-table-column>
  347. <el-table-column label="投前估值" align="center" prop="investValuation" />
  348. <el-table-column label="预计投资金额" align="center" prop="investMoney" />
  349. <el-table-column label="投资类型" align="center" prop="investType" />
  350. <el-table-column label="投资策略" align="center" prop="investPloy" />
  351. <el-table-column label="投资价值" align="center" prop="investWorth" />
  352. <el-table-column label="创建人" align="center" prop="createBy" />
  353. <el-table-column
  354. label="创建时间"
  355. align="center"
  356. prop="createTime"
  357. width="100"
  358. />
  359. <el-table-column
  360. width="300"
  361. fixed="right"
  362. label="操作"
  363. align="center"
  364. class-name="small-padding fixed-width"
  365. >
  366. <template slot-scope="scope">
  367. <!-- stage//0=全部 1=项目报备 2=评估考察 3=项目立项 4=尽职背调 5=项目投决 -->
  368. <el-button
  369. v-if="stage == '1'"
  370. size="mini"
  371. type="text"
  372. icon="el-icon-thumb"
  373. @click="handlefollowRecord(scope.row)"
  374. >上传跟进记录</el-button
  375. >
  376. <el-button
  377. v-if="stage == '3'"
  378. size="mini"
  379. type="text"
  380. icon="el-icon-chat-line-round"
  381. @click="handleMeeting(scope.row, 'LX')"
  382. >发起立项会议</el-button
  383. >
  384. <el-button
  385. v-if="stage == '4'"
  386. size="mini"
  387. type="text"
  388. icon="el-icon-document"
  389. @click="handleSurvey(scope.row)"
  390. >发起尽调申请</el-button
  391. >
  392. <el-button
  393. v-if="stage == '5'"
  394. size="mini"
  395. type="text"
  396. icon="el-icon-chat-line-square"
  397. @click="handleMeeting(scope.row, 'TJ')"
  398. >发起投决会议</el-button
  399. >
  400. <el-button
  401. size="mini"
  402. type="text"
  403. icon="el-icon-search"
  404. @click="handleDetail(scope.row)"
  405. v-hasPermi="['invest:pool:query']"
  406. >查看</el-button
  407. >
  408. <el-button
  409. size="mini"
  410. type="text"
  411. icon="el-icon-edit"
  412. @click="handleUpdate(scope.row)"
  413. v-hasPermi="['invest:pool:edit']"
  414. >修改</el-button
  415. >
  416. <el-button
  417. size="mini"
  418. type="text"
  419. icon="el-icon-setting"
  420. @click="handleBusinessUpdate(scope.row)"
  421. >设置项目阶段</el-button
  422. >
  423. <el-button
  424. size="mini"
  425. type="text"
  426. icon="el-icon-switch-button"
  427. @click="handleDelete(scope.row)"
  428. v-hasPermi="['invest:pool:remove']"
  429. >终止</el-button
  430. >
  431. </template>
  432. </el-table-column>
  433. </el-table>
  434. <pagination
  435. v-show="total > 0"
  436. :total="total"
  437. :page.sync="queryParams.pageNum"
  438. :limit.sync="queryParams.pageSize"
  439. @pagination="getList"
  440. />
  441. <!-- 添加或修改文件资料对话框 -->
  442. <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
  443. <el-form ref="form" :model="form" :rules="rules" label-width="80px">
  444. <el-form-item label="项目阶段" prop="projectStage">
  445. <el-select v-model="form.projectStage" placeholder="请选择项目阶段">
  446. <el-option
  447. @click.native="handleProjectSelect(index, dict)"
  448. v-for="(dict, index) in dict.type.project_stage"
  449. :key="dict.value"
  450. :label="dict.label"
  451. :value="dict.value"
  452. />
  453. </el-select>
  454. </el-form-item>
  455. <el-form-item label="项目状态" prop="projectState">
  456. <el-select v-model="form.projectState" placeholder="请选择项目状态">
  457. <el-option
  458. v-for="dict in project_state"
  459. :key="dict.dictValue"
  460. :label="dict.dictLabel"
  461. :value="dict.dictValue"
  462. />
  463. </el-select>
  464. </el-form-item>
  465. </el-form>
  466. <div slot="footer" class="dialog-footer">
  467. <el-button type="primary" @click="submitForm">确 定</el-button>
  468. <el-button @click="cancel">取 消</el-button>
  469. </div>
  470. </el-dialog>
  471. </div>
  472. </template>
  473. <script>
  474. import {
  475. listPool,
  476. getPool,
  477. delPool,
  478. addPool,
  479. updatePool,
  480. editStage,
  481. } from "@/api/invest/pool";
  482. import { listChannel } from "@/api/invest/channel";
  483. export default {
  484. props: {
  485. type: {
  486. type: String,
  487. default: "1", //1=显示全部列表 2=显示某项目下的详情列表
  488. },
  489. stage: {
  490. type: String,
  491. default: "0", //0=全部 1=项目报备 2=评估考察 3=项目立项 4=尽职背调 5=项目投决
  492. },
  493. projectId: {
  494. type: String,
  495. },
  496. },
  497. dicts: ["project_group", "project_stage", "project_state"],
  498. data() {
  499. return {
  500. project_state: [],
  501. projectState: [
  502. [
  503. {
  504. dictValue: "a",
  505. dictLabel: "项目报备完成",
  506. },
  507. ],
  508. [
  509. {
  510. dictValue: "b",
  511. dictLabel: "评估考察中",
  512. },
  513. ],
  514. [
  515. {
  516. dictValue: "c",
  517. dictLabel: "准备立项材料",
  518. },
  519. {
  520. dictValue: "d",
  521. dictLabel: "项目立项",
  522. },
  523. {
  524. dictValue: "e",
  525. dictLabel: "立项通过",
  526. },
  527. ],
  528. [
  529. {
  530. dictValue: "f",
  531. dictLabel: "尽调背调",
  532. },
  533. {
  534. dictValue: "g",
  535. dictLabel: "尽调背调通过",
  536. },
  537. ],
  538. [
  539. {
  540. dictValue: "h",
  541. dictLabel: "准备项目投决材料",
  542. },
  543. {
  544. dictValue: "i",
  545. dictLabel: "项目投决通过",
  546. },
  547. ],
  548. [
  549. {
  550. dictValue: "j",
  551. dictLabel: "签约协议沟通中",
  552. },
  553. {
  554. dictValue: "k",
  555. dictLabel: "协议签约完成",
  556. },
  557. ],
  558. [
  559. {
  560. dictValue: "l",
  561. dictLabel: "投后管理",
  562. },
  563. {
  564. dictValue: "m",
  565. dictLabel: "准备投后退出材料",
  566. },
  567. {
  568. dictValue: "n",
  569. dictLabel: "项目退出完成",
  570. },
  571. ],
  572. ],
  573. rules: {
  574. projectStage: [
  575. { required: true, trigger: "change", message: "请选择项目阶段" },
  576. ],
  577. projectState: [
  578. { required: true, trigger: "change", message: "请选择项目状态" },
  579. ],
  580. },
  581. // 遮罩层
  582. loading: false,
  583. // 选中数组
  584. ids: [],
  585. // 非单个禁用
  586. single: true,
  587. // 非多个禁用
  588. multiple: true,
  589. // 显示搜索条件
  590. showSearch: true,
  591. // 总条数
  592. total: 0,
  593. // 项目池表格数据
  594. poolList: [],
  595. // 弹出层标题
  596. title: "",
  597. // 是否显示弹出层
  598. open: false,
  599. // 查询参数
  600. queryParams: {
  601. id: null,
  602. pageNum: 1,
  603. pageSize: 10,
  604. projectName: null,
  605. projectGroup: null,
  606. projectCode: null,
  607. channel: null,
  608. contactDate: null,
  609. projectDate: null,
  610. decisionDate: null,
  611. industry: null,
  612. company: null,
  613. projectContacts: null,
  614. investHead: null,
  615. previousFinancing: null,
  616. financingStage: null,
  617. financingMoney: null,
  618. financingDate: null,
  619. investValuation: null,
  620. investMoney: null,
  621. investType: null,
  622. investPloy: null,
  623. investWorth: null,
  624. projectStage: null,
  625. projectState: null,
  626. },
  627. form: {
  628. id: null,
  629. projectStage: "",
  630. projectState: "",
  631. stageName: "",
  632. },
  633. channelList: [],
  634. };
  635. },
  636. mounted() {
  637. // 项目阶段
  638. if (this.stage != "0") {
  639. this.queryParams.projectStage = this.stage;
  640. }
  641. if (this.projectId) {
  642. this.queryParams.id = this.projectId;
  643. }
  644. this.getList();
  645. // 渠道
  646. listChannel({
  647. pageNum: 1,
  648. pageSize: 100,
  649. }).then((response) => {
  650. this.channelList = response.rows;
  651. });
  652. },
  653. activated() {
  654. // 项目阶段
  655. if (this.stage != "0") {
  656. this.queryParams.projectStage = this.stage;
  657. }
  658. this.getList();
  659. },
  660. methods: {
  661. // 下拉框改变
  662. handleProjectSelect(index, dict) {
  663. this.form.projectState = null;
  664. this.project_state = this.projectState[index];
  665. if (dict && dict.label) {
  666. this.form.stageName = dict.label;
  667. }
  668. },
  669. /** 查询项目池列表 */
  670. getList() {
  671. this.loading = true;
  672. listPool(this.queryParams).then((response) => {
  673. this.poolList = response.rows;
  674. this.total = response.total;
  675. this.loading = false;
  676. });
  677. },
  678. /** 搜索按钮操作 */
  679. handleQuery() {
  680. this.queryParams.pageNum = 1;
  681. this.getList();
  682. },
  683. /** 重置按钮操作 */
  684. resetQuery() {
  685. this.resetForm("queryForm");
  686. this.handleQuery();
  687. },
  688. // 多选框选中数据
  689. handleSelectionChange(selection) {
  690. this.ids = selection.map((item) => item.id);
  691. this.single = selection.length !== 1;
  692. this.multiple = !selection.length;
  693. },
  694. /** 新增按钮操作 */
  695. handleAdd() {
  696. this.$router.push({ path: "/invest/pool/add" });
  697. },
  698. handleDetail(row) {
  699. const id = row.id || this.ids;
  700. this.$router.push({ path: "/invest/pool/detail", query: { id: id } });
  701. },
  702. /** 修改按钮操作 */
  703. handleUpdate(row) {
  704. const id = row.id || this.ids;
  705. this.$router.push({ path: "/invest/pool/add", query: { id: id } });
  706. },
  707. // 修改业务节点
  708. handleBusinessUpdate(row) {
  709. this.reset();
  710. let index = parseInt(row.projectStage) - 1;
  711. this.handleProjectSelect(index, row);
  712. this.form = row;
  713. this.open = true;
  714. this.title = "设置项目阶段";
  715. },
  716. // 发起会议
  717. handleMeeting(row, meetingType) {
  718. this.$store.commit("SET_PROJECTITEMMESSAGE", row);
  719. this.$router.push({
  720. path: "/resource/meeting",
  721. query: { id: row.id, type: "1", meetingType: meetingType },
  722. });
  723. },
  724. // 发起尽调申请
  725. handleSurvey(row) {},
  726. // 上传跟进记录
  727. handlefollowRecord(row) {
  728. this.$store.commit("SET_PROJECTITEMMESSAGE", row);
  729. this.$router.push({
  730. path: "/resource/record",
  731. query: { id: row.id, type: "1" },
  732. });
  733. },
  734. // 表单重置
  735. reset() {
  736. this.form = {
  737. id: null,
  738. projectStage: null,
  739. projectState: null,
  740. stageName: null,
  741. };
  742. this.resetForm("form");
  743. },
  744. /** 删除按钮操作 */
  745. handleDelete(row) {
  746. const ids = row.id || this.ids;
  747. this.$modal
  748. .confirm('是否终止"' + row.projectName + '"项目?')
  749. .then(function () {
  750. return delPool(ids);
  751. })
  752. .then(() => {
  753. this.getList();
  754. this.$modal.msgSuccess("已终止");
  755. })
  756. .catch(() => {});
  757. },
  758. /** 导出按钮操作 */
  759. handleExport() {
  760. this.download(
  761. "invest/pool/export",
  762. {
  763. ...this.queryParams,
  764. },
  765. `pool_${new Date().getTime()}.xlsx`
  766. );
  767. },
  768. /** 提交按钮 */
  769. submitForm() {
  770. let that = this;
  771. this.$refs["form"].validate((valid) => {
  772. if (valid) {
  773. editStage(this.form).then((response) => {
  774. that.$modal.msgSuccess("修改成功");
  775. that.open = false;
  776. that.getList();
  777. });
  778. }
  779. });
  780. },
  781. // 取消按钮
  782. cancel() {
  783. this.open = false;
  784. this.reset();
  785. },
  786. },
  787. };
  788. </script>