detail.vue 34 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055
  1. <template>
  2. <div class="detailWrapper">
  3. <section class="section1 public-flex">
  4. <div class="public-margin-r-20">
  5. <h4>
  6. 投资项目
  7. <span class="alreadyStop" v-if="detailInfo.delFlag === '1'"
  8. >已终止</span
  9. >
  10. </h4>
  11. <p class="projectNameTit">{{ detailInfo.projectName }}</p>
  12. </div>
  13. </section>
  14. <el-divider></el-divider>
  15. <section>
  16. <el-divider></el-divider>
  17. <div
  18. class="public-flex-between basicsInfo"
  19. v-if="detailInfo.projectState != '1'"
  20. >
  21. <div class="public-flex-center-column">
  22. <div>项目公司名称</div>
  23. <p
  24. style="width: 250px; text-align: center"
  25. class="yichu1"
  26. v-if="
  27. detailInfo.tProjectCompany &&
  28. detailInfo.tProjectCompany.companyName
  29. "
  30. >
  31. {{ detailInfo.tProjectCompany.companyName }}
  32. </p>
  33. </div>
  34. <div class="public-flex-center-column">
  35. <div>渠道</div>
  36. <p
  37. v-if="
  38. detailInfo.tProjectChannel &&
  39. detailInfo.tProjectChannel.channelName
  40. "
  41. >
  42. {{ detailInfo.tProjectChannel.channelName }}
  43. </p>
  44. <p v-else>无</p>
  45. </div>
  46. <div class="public-flex-center-column">
  47. <div>项目负责人</div>
  48. <p>{{ detailInfo.investHead }}</p>
  49. </div>
  50. <div class="public-flex-center-column" v-if="detailInfo.projectDate">
  51. <div>立项通过日期</div>
  52. <p>{{ detailInfo.projectDate }}</p>
  53. </div>
  54. <div class="public-flex-center-column" v-if="detailInfo.decisionDate">
  55. <div>投决通过日期</div>
  56. <p>{{ detailInfo.decisionDate }}</p>
  57. </div>
  58. <div class="public-flex-center-column">
  59. <div>投前估值(万元)</div>
  60. <p>{{ detailInfo.investValuation }}</p>
  61. </div>
  62. <div class="public-flex-center-column">
  63. <div>预计投资金额(万元)</div>
  64. <p>{{ detailInfo.investMoney }}</p>
  65. </div>
  66. </div>
  67. </section>
  68. <section class="section3">
  69. <el-tabs v-model="activeName" @tab-click="handleClick">
  70. <el-tab-pane label="立项信息" name="0"></el-tab-pane>
  71. <el-tab-pane label="项目基本信息" name="1"></el-tab-pane>
  72. </el-tabs>
  73. <section>
  74. <div v-if="activeName === '0'" class="public-padded-20 detail-meeting">
  75. <el-tabs type="border-card">
  76. <el-tab-pane label="项目立项申请表">
  77. <el-form
  78. v-if="formLXApply.id"
  79. class="special-el-form public-padded-t-20"
  80. ref="formLXApply"
  81. :model="formLXApply"
  82. label-width="120px"
  83. >
  84. <el-form-item
  85. label="项目概况"
  86. prop="projectOverview"
  87. class="special-el-form-item"
  88. >
  89. <el-input
  90. rows="4"
  91. type="textarea"
  92. maxlength="200"
  93. v-model="formLXApply.projectOverview"
  94. disabled
  95. />
  96. </el-form-item>
  97. <el-form-item
  98. label="项目亮点"
  99. prop="projectSparkle"
  100. class="special-el-form-item"
  101. >
  102. <el-input
  103. rows="4"
  104. type="textarea"
  105. maxlength="200"
  106. v-model="formLXApply.projectSparkle"
  107. disabled
  108. />
  109. </el-form-item>
  110. <el-form-item
  111. label="立项资料"
  112. prop="listFile"
  113. class="special-el-form-item"
  114. >
  115. <fileItem
  116. ref="fileItemLXApply"
  117. :id="formLXApply.id"
  118. :is-detail="true"
  119. ></fileItem>
  120. </el-form-item>
  121. </el-form>
  122. <div
  123. v-else
  124. class="public-flex-center public-padded-20"
  125. style="color: #909399"
  126. >
  127. 暂无数据
  128. </div>
  129. </el-tab-pane>
  130. <el-tab-pane label="项目立项评估评审汇总表" v-if="formLXApply.participantsId!=null&&formLXApply.taskDefKey!='modifyApply'&&formLXApply.taskDefKey!='deptLeader'&&formLXApply.taskDefKey!='meeting'&&formLXApply.taskDefKey!='decision'" name="review">
  131. <el-form
  132. class="table-form ss_scoreTable"
  133. ref="scoreForm"
  134. :model="scoreForm"
  135. label-width="0px"
  136. >
  137. <table
  138. border="1"
  139. cellpadding="0"
  140. cellspacing="0"
  141. class="allScoring"
  142. >
  143. <thead>
  144. <tr>
  145. <th colspan="10" class="bg-blue">项目立项评估评审汇总表</th>
  146. </tr>
  147. <tr class="specificTr">
  148. <th>项目名称</th>
  149. <th>
  150. <textarea
  151. class="table-textarea"
  152. v-model="scoreForm.projectName"
  153. name=""
  154. disabled
  155. ></textarea>
  156. </th>
  157. <th>项目所属公司</th>
  158. <th colspan="3">
  159. <textarea
  160. class="table-textarea"
  161. v-model="form1.tProjectPool.company"
  162. name=""
  163. disabled
  164. ></textarea>
  165. </th>
  166. <th>项目负责人</th>
  167. <th>
  168. <textarea
  169. class="table-textarea"
  170. name=""
  171. v-model="collectForm.investCommissioner"
  172. disabled
  173. ></textarea>
  174. </th>
  175. <th>总人数</th>
  176. <th>
  177. <textarea
  178. v-model="collectForm.totalPerson"
  179. class="table-textarea"
  180. name=""
  181. disabled
  182. ></textarea>
  183. </th>
  184. </tr>
  185. <tr class="bg-blue">
  186. <th>序号</th>
  187. <th>评审类别</th>
  188. <th>评审事项</th>
  189. <th colspan="3">评审指标</th>
  190. <th>标准分值(满分50)</th>
  191. <th colspan="2">汇总分数</th>
  192. <th>平均分数</th>
  193. </tr>
  194. </thead>
  195. <tbody class="text-center">
  196. <tr>
  197. <td rowspan="2">1</td>
  198. <td rowspan="2">模式先进</td>
  199. <td>产业优势</td>
  200. <td colspan="3" class="text-left">
  201. 满足以下条件之一:市场热点、新经济、强势传统产业
  202. </td>
  203. <td>
  204. 阶段性:0-1<br />
  205. 持久:2-3<br />
  206. 持久重大:4-5
  207. </td>
  208. <td colspan="2">
  209. <input
  210. autocomplete="off"
  211. v-model="collectForm.industryAdvantageSum"
  212. name="industryAdvantageSum"
  213. type="text"
  214. class="table-input"
  215. disabled
  216. />
  217. </td>
  218. <td>
  219. <input
  220. autocomplete="off"
  221. type="text"
  222. v-model="collectForm.industryAdvantageAvg"
  223. name="industryAdvantageAvg"
  224. class="table-input"
  225. disabled
  226. />
  227. </td>
  228. </tr>
  229. <tr>
  230. <td>商业模式</td>
  231. <td colspan="3" class="text-left">
  232. 满足以下条件之一:技术/行业/渠道优势明显、模式创新度高、降本增效显著
  233. </td>
  234. <td>
  235. 先进:0-3<br />
  236. 非常先进:4-5<br />
  237. 超级先进:6-7<br />
  238. 颠覆性的:8-9
  239. </td>
  240. <td colspan="2">
  241. <input
  242. autocomplete="off"
  243. type="text"
  244. v-model="collectForm.businessModelSum"
  245. name="businessModelSum"
  246. class="table-input"
  247. disabled
  248. />
  249. </td>
  250. <td>
  251. <input
  252. autocomplete="off"
  253. type="text"
  254. v-model="collectForm.businessModelAvg"
  255. name="businessModelAvg"
  256. class="table-input"
  257. disabled
  258. />
  259. </td>
  260. </tr>
  261. <tr>
  262. <td rowspan="4">2</td>
  263. <td rowspan="4">团队优秀</td>
  264. <td rowspan="4">核心团队优秀</td>
  265. <td colspan="3">
  266. 创业团队专业,产业背景出身,至少十年以上行业经验
  267. </td>
  268. <td>
  269. 10年以上产业经验:0-2<br />
  270. 15年以上产业经验:3-4
  271. </td>
  272. <td colspan="2">
  273. <input
  274. autocomplete="off"
  275. type="text"
  276. v-model="collectForm.teamExperienceSum"
  277. name="teamExperienceSum"
  278. class="table-input"
  279. disabled
  280. />
  281. </td>
  282. <td>
  283. <input
  284. autocomplete="off"
  285. type="text"
  286. v-model="collectForm.teamExperienceAvg"
  287. name="teamExperienceAvg"
  288. class="table-input"
  289. disabled
  290. />
  291. </td>
  292. </tr>
  293. <tr>
  294. <td colspan="3">
  295. 创始团队背景为行业内专家/教授/名校哈佛大学博士/行业内龙头企业技术团队等
  296. </td>
  297. <td>
  298. 硕士博士团队:0-2<br />
  299. 行业内知名专家、世界名校博士、行业内龙头企业技术团队:3-4
  300. </td>
  301. <td colspan="2">
  302. <input
  303. autocomplete="off"
  304. type="text"
  305. v-model="collectForm.teamBackgroundSum"
  306. name="teamBackgroundSum"
  307. class="table-input"
  308. disabled
  309. />
  310. </td>
  311. <td>
  312. <input
  313. autocomplete="off"
  314. type="text"
  315. v-model="collectForm.teamBackgroundAvg"
  316. name="teamBackgroundAvg"
  317. class="table-input"
  318. disabled
  319. />
  320. </td>
  321. </tr>
  322. <tr>
  323. <td colspan="3">
  324. 拥有3位以上德才兼备、同心同德的核心团队成员,能够支撑企业快速扩张
  325. </td>
  326. <td>
  327. 强:0-2 <br />
  328. 很强:3-4
  329. </td>
  330. <td colspan="2">
  331. <input
  332. autocomplete="off"
  333. type="text"
  334. v-model="collectForm.teamHeartSum"
  335. name="teamHeartSum"
  336. class="table-input"
  337. disabled
  338. />
  339. </td>
  340. <td>
  341. <input
  342. autocomplete="off"
  343. type="text"
  344. v-model="collectForm.teamHeartAvg"
  345. name="teamHeartAvg"
  346. class="table-input"
  347. disabled
  348. />
  349. </td>
  350. </tr>
  351. <tr>
  352. <td colspan="3">
  353. 团队领袖诚信、学习能力意愿强,具有很强的职业精神、职业道德、职业技能
  354. </td>
  355. <td>
  356. 合格:0-2<br />
  357. 优秀:3-5 <br />
  358. 卓越:6-8
  359. </td>
  360. <td colspan="2">
  361. <input
  362. autocomplete="off"
  363. type="text"
  364. v-model="collectForm.teamFaithSum"
  365. name="teamFaithSum"
  366. class="table-input"
  367. disabled
  368. />
  369. </td>
  370. <td>
  371. <input
  372. autocomplete="off"
  373. type="text"
  374. v-model="collectForm.teamFaithAvg"
  375. name="teamFaithAvg"
  376. class="table-input"
  377. disabled
  378. />
  379. </td>
  380. </tr>
  381. <tr>
  382. <td rowspan="5">3</td>
  383. <td rowspan="5">企业价值</td>
  384. <td rowspan="2">初步产品原型</td>
  385. <td colspan="3">
  386. 具备一定的技术基础和原型,能够证明产品的可行性和创新性,能够为用户真正带来价值。
  387. </td>
  388. <td>2</td>
  389. <td colspan="2">
  390. <input
  391. autocomplete="off"
  392. type="text"
  393. v-model="collectForm.productBaseSum"
  394. name="productBaseSum"
  395. class="table-input"
  396. disabled
  397. />
  398. </td>
  399. <td>
  400. <input
  401. autocomplete="off"
  402. type="text"
  403. v-model="collectForm.productBaseAvg"
  404. name="productBaseAvg"
  405. class="table-input"
  406. disabled
  407. />
  408. </td>
  409. </tr>
  410. <tr>
  411. <td colspan="3">具有明确的盈利模式</td>
  412. <td>2</td>
  413. <td colspan="2">
  414. <input
  415. autocomplete="off"
  416. type="text"
  417. v-model="collectForm.productProfitSum"
  418. name="productProfitSum"
  419. class="table-input"
  420. disabled
  421. />
  422. </td>
  423. <td>
  424. <input
  425. autocomplete="off"
  426. type="text"
  427. v-model="collectForm.productProfitAvg"
  428. name="productProfitAvg"
  429. class="table-input"
  430. disabled
  431. />
  432. </td>
  433. </tr>
  434. <tr>
  435. <td rowspan="2">机构认可</td>
  436. <td colspan="3">
  437. 清科、投中年度排行前一百位的投资机构或上市公司、中国500强知名企业或知名投资人投资。
  438. </td>
  439. <td>1</td>
  440. <td colspan="2">
  441. <input
  442. autocomplete="off"
  443. type="text"
  444. v-model="collectForm.organInvestSum"
  445. name="organInvestSum"
  446. class="table-input"
  447. disabled
  448. />
  449. </td>
  450. <td>
  451. <input
  452. autocomplete="off"
  453. type="text"
  454. v-model="collectForm.organInvestAvg"
  455. name="organInvestAvg"
  456. class="table-input"
  457. disabled
  458. />
  459. </td>
  460. </tr>
  461. <tr>
  462. <td colspan="3">
  463. 公司近期12个月内估值XX万元以上,且与项目公司无关联关系的专业化投资机构(人)的投资超过500万元。
  464. </td>
  465. <td>1</td>
  466. <td colspan="2">
  467. <input
  468. autocomplete="off"
  469. v-model="collectForm.organValuationSum"
  470. name="organValuationSum"
  471. type="text"
  472. class="table-input"
  473. disabled
  474. />
  475. </td>
  476. <td>
  477. <input
  478. autocomplete="off"
  479. v-model="collectForm.organValuationAvg"
  480. name="organValuationAvg"
  481. type="text"
  482. class="table-input"
  483. disabled
  484. />
  485. </td>
  486. </tr>
  487. <tr>
  488. <td>估值</td>
  489. <td colspan="3">估值水平、预期收益合理</td>
  490. <td>1</td>
  491. <td colspan="2">
  492. <input
  493. type="text"
  494. v-model="collectForm.valuationSum"
  495. name="valuationSum"
  496. class="table-input"
  497. disabled
  498. />
  499. </td>
  500. <td>
  501. <input
  502. autocomplete="off"
  503. type="text"
  504. v-model="collectForm.valuationAvg"
  505. name="valuationAvg"
  506. class="table-input"
  507. disabled
  508. />
  509. </td>
  510. </tr>
  511. <tr>
  512. <td rowspan="2">4</td>
  513. <td rowspan="2">市场广阔</td>
  514. <td>市场空间大</td>
  515. <td colspan="3">
  516. 行业具有高成长性,细分市场年销售规模已经达到或五年内达到50亿元。
  517. </td>
  518. <td>
  519. 50-100亿:0.5<br />
  520. 100-200亿:1<br />
  521. 200亿以上:2
  522. </td>
  523. <td colspan="2">
  524. <input
  525. autocomplete="off"
  526. type="text"
  527. v-model="collectForm.marketSpaceSum"
  528. name="marketSpaceSum"
  529. class="table-input"
  530. disabled
  531. />
  532. </td>
  533. <td>
  534. <input
  535. autocomplete="off"
  536. type="text"
  537. v-model="collectForm.marketSpaceAvg"
  538. name="marketSpaceAvg"
  539. class="table-input"
  540. disabled
  541. />
  542. </td>
  543. </tr>
  544. <tr>
  545. <td>成长空间大</td>
  546. <td colspan="3">预计年增长率在30%以上</td>
  547. <td>
  548. 收入年增长率30%以上:1<br />
  549. 收入年增长率50%以上:2<br />
  550. 收入年增长率70%以上:3
  551. </td>
  552. <td colspan="2">
  553. <input
  554. autocomplete="off"
  555. type="text"
  556. v-model="collectForm.developSpaceSum"
  557. name="developSpaceSum"
  558. class="table-input"
  559. disabled
  560. />
  561. </td>
  562. <td>
  563. <input
  564. autocomplete="off"
  565. type="text"
  566. v-model="collectForm.developSpaceAvg"
  567. name="developSpaceAvg"
  568. class="table-input"
  569. disabled
  570. />
  571. </td>
  572. </tr>
  573. <tr>
  574. <td>5</td>
  575. <td>股权收益</td>
  576. <td>退出方式</td>
  577. <td colspan="3">通过并购、股权转让、股权回购等方式退出</td>
  578. <td>
  579. 退出收益5%-15%:1<br />
  580. 退出收益15%-50%:2<br />
  581. 退出收益50%-100%:3<br />
  582. 退出收益1倍以上:4
  583. </td>
  584. <td colspan="2">
  585. <input
  586. autocomplete="off"
  587. type="text"
  588. v-model="collectForm.quitWaySum"
  589. name="quitWaySum"
  590. class="table-input"
  591. disabled
  592. />
  593. </td>
  594. <td>
  595. <input
  596. autocomplete="off"
  597. type="text"
  598. v-model="collectForm.quitWayAvg"
  599. name="quitWayAvg"
  600. class="table-input"
  601. disabled
  602. />
  603. </td>
  604. </tr>
  605. <tr>
  606. <td colspan="10" class="text-left big-font">
  607. 评分说明:<br />
  608. 1.
  609. 固定指标分值部分,评分人需根据项目实际情况,评分范围仅有0分和满分,满分为各评审指标对应的标准分值。<br />
  610. 2.
  611. 浮动指标分值部分,最高分值为各评审指标对应的最高区间分值,最低分值为0分,分值保留小数点后一位数字。
  612. </td>
  613. </tr>
  614. </tbody>
  615. </table>
  616. </el-form>
  617. </el-tab-pane>
  618. </el-tabs>
  619. </div>
  620. <div v-show="activeName === '1'">
  621. <poolForm :type="type" :id="id"></poolForm>
  622. </div>
  623. </section>
  624. </section>
  625. <section>
  626. <flowBase :procInstId="pInstId" :id="id" v-if="pInstId"></flowBase>
  627. </section>
  628. </div>
  629. </template>
  630. <script>
  631. import poolForm from "../../invest/components/poolForm";
  632. import fileItem from "../../invest/components/fileItem";
  633. import flowBase from "../flowBase.vue";
  634. import {
  635. getPool,
  636. } from "@/api/invest/pool";
  637. import {
  638. listMeeting,
  639. } from "@/api/invest/meeting";
  640. import{
  641. getApprovalInfo,
  642. getMeetingInfo,
  643. getSumScore
  644. } from "@/api/project/approval/pool"
  645. import { mapGetters } from "vuex";
  646. export default {
  647. name: "approvalDetail",
  648. components: {
  649. poolForm,
  650. fileItem,
  651. flowBase
  652. },
  653. data() {
  654. return {
  655. showDueApply: false,
  656. meetingId: "0",
  657. type: "2",
  658. id: "",
  659. active: 0,
  660. detailInfo: {
  661. projectName: "",
  662. },
  663. activeName: "0",
  664. pInstId: null,
  665. formLXApply: {
  666. id: null,
  667. procInstId:null,
  668. projectPoolId: null,
  669. projectName: null,
  670. projectOverview: null,
  671. projectSparkle: null,
  672. listFile: null,
  673. participants: null,
  674. participantsId: null,
  675. },
  676. // 打分表单参数
  677. scoreForm: {
  678. businessModel: null,
  679. businessModelNote: null,
  680. createBy: null,
  681. createTime: null,
  682. delFlag: null,
  683. developSpace: null,
  684. developSpaceNote: null,
  685. examine: null,
  686. id: null,
  687. illustrate: null, //说明
  688. industryAdvantage: null,
  689. industryAdvantageNote: null,
  690. investCommissioner: null, //项目负责人
  691. marketSpace: null, //市场空间
  692. marketSpaceNote: null,
  693. meetingId: null, //
  694. organInvest: null,
  695. organInvestNote: null,
  696. organValuation: null,
  697. organValuationNote: null,
  698. params: {},
  699. productBase: null,
  700. productBaseNote: null,
  701. productProfit: null,
  702. productProfitNote: null,
  703. projectPoolId: null,
  704. quitWay: null,
  705. quitWayNote: null,
  706. remark: null,
  707. scoringPerson: null, //打分人
  708. teamBackground: null,
  709. teamBackgroundNote: null,
  710. teamExperience: null,
  711. teamExperienceNote: null,
  712. teamFaith: null,
  713. teamFaithNote: null,
  714. teamHeart: null,
  715. teamHeartNote: null,
  716. type: null,
  717. updateBy: null,
  718. updateTime: null,
  719. valuation: null,
  720. valuationNote: null,
  721. },
  722. // 会议详情表单
  723. form1: {
  724. meetingTheme: null,
  725. meetingCode: null,
  726. meetingType: null,
  727. projectPoolId: null,
  728. projectName: null,
  729. projectStage: null,
  730. projectGroup: "",
  731. startTime: null,
  732. endTime: null,
  733. place: null,
  734. promoter: null,
  735. promoterId: null,
  736. participants: null,
  737. participantsId: null,
  738. tProjectPool: {
  739. company: null,
  740. projectName: null,
  741. projectStage: null,
  742. },
  743. },
  744. // 汇总分数表单
  745. collectForm: {
  746. businessModelAvg: null,
  747. businessModelSum: null,
  748. developSpaceAvg: null,
  749. developSpaceSum: null,
  750. industryAdvantageAvg: null,
  751. industryAdvantageSum: null,
  752. investCommissioner: null,
  753. marketSpaceAvg: null,
  754. marketSpaceSum: null,
  755. meetingId: null,
  756. organInvestAvg: null,
  757. organInvestSum: null,
  758. organValuationAvg: null,
  759. organValuationSum: null,
  760. productBaseAvg: null,
  761. productBaseSum: null,
  762. productProfitAvg: null,
  763. productProfitSum: null,
  764. projectPoolId: null,
  765. quitWayAvg: null,
  766. quitWaySum: null,
  767. scoringPerson: null,
  768. teamBackgroundAvg: null,
  769. teamBackgroundSum: null,
  770. teamExperienceAvg: null,
  771. teamExperienceSum: null,
  772. teamFaithAvg: null,
  773. teamFaithSum: null,
  774. teamHeartAvg: null,
  775. teamHeartSum: null,
  776. valuationAvg: null,
  777. valuationSum: null,
  778. },
  779. };
  780. },
  781. computed: {
  782. ...mapGetters(["user"]),
  783. },
  784. created() {
  785. this.id = this.$route.query.id;
  786. this.pInstId=this.$route.query.pInstId;
  787. this.getDetail();
  788. this.getlistProjectPoolIdNewApproval();
  789. if (this.$route.query.activeName) {
  790. this.activeName = this.$route.query.activeName;
  791. }
  792. },
  793. methods: {
  794. getMettingId(type) {
  795. let queryParams = {
  796. pageNum: 1,
  797. pageSize: 10,
  798. meetingType: type,
  799. orderByColumn: "createTime",
  800. isAsc: "desc",
  801. projectPoolId: this.id,
  802. };
  803. listMeeting(queryParams).then((response) => {
  804. let meetingList = response.rows;
  805. if (meetingList.length > 0) {
  806. let meetingId = meetingList[0].id;
  807. if (type === "LX") {
  808. this.$refs.approvalTableForm.initialize(meetingId);
  809. } else if (type === "TJ") {
  810. this.$refs.voteTableForm.initialize(meetingId);
  811. }
  812. } else {
  813. if (type === "LX") {
  814. this.$refs.approvalTableForm.showNodata();
  815. } else if (type === "TJ") {
  816. this.$refs.voteTableForm.showNodata();
  817. }
  818. }
  819. });
  820. },
  821. handleClick(tab, event) {
  822. let that = this;
  823. if (this.activeName === "0") {
  824. // 项目立项
  825. this.getMettingId("LX");
  826. this.getlistProjectPoolIdNewApproval();
  827. } else if (this.activeName === "1") {
  828. // 项目报备
  829. this.getDetail();
  830. }
  831. },
  832. // 获取立项申请
  833. getlistProjectPoolIdNewApproval() {
  834. let that = this;
  835. getApprovalInfo(this.$route.query.pInstId).then((response) => {
  836. if (response && response.data) {
  837. that.formLXApply = response.data;
  838. if(response.data.participantsId!=null&&response.data.taskDefKey!='modifyApply'
  839. &&response.data.taskDefKey != "deptLeader"&&response.data.taskDefKey != "decision"&&response.data.taskDefKey != "meeting"){
  840. //总裁室
  841. this.getMeeting();
  842. this.getSelectMeetingId();
  843. }
  844. setTimeout(() => {
  845. that.$refs.fileItemLXApply.handleButton();
  846. that.$refs.fileItemLXApply.fileList = [];
  847. that.$refs.fileItemLXApply.getListFileBusinessId(
  848. that.formLXApply.id
  849. );
  850. }, 300);
  851. }
  852. });
  853. },
  854. //项目报备
  855. getDetail() {
  856. getPool(this.id).then((response) => {
  857. this.detailInfo = response.data;
  858. // 项目退出完成n
  859. if (response.data.projectState === "n") {
  860. this.active = parseInt(response.data.projectStage);
  861. } else {
  862. this.active = parseInt(response.data.projectStage) - 1;
  863. }
  864. });
  865. },
  866. //会议投决
  867. getMeeting(){
  868. getMeetingInfo(this.$route.query.pInstId).then((response) => {
  869. this.form1 = response.data;
  870. this.form1.projectPoolId = response.data.projectPoolId;
  871. this.form1.projectName = response.data.tProjectPool.projectName;
  872. this.form1.projectStage = response.data.tProjectPool.projectStage;
  873. this.scoreForm.projectPoolId = response.data.projectPoolId;
  874. this.scoreForm.projectName = response.data.tProjectPool.projectName;
  875. // 打分人
  876. this.scoreForm.scoringPerson = this.user.userId;
  877. // 项目负责人
  878. this.scoreForm.investCommissioner = response.data.tProjectPool.investHead;
  879. this.collectForm.investCommissioner =
  880. response.data.tProjectPool.investHead;
  881. this.scoreForm.meetingId = response.data.id;
  882. /*setTimeout(() => {
  883. this.$refs.fileItems.fileList = [];
  884. this.$refs.fileItems.getListFileBusinessId();
  885. this.$refs.fileItems.handleButton();
  886. }, 300);*/
  887. });
  888. },
  889. //总裁室
  890. // 根据会议ID查询汇总分数和平均分数
  891. getSelectMeetingId() {
  892. getSumScore(this.$route.query.pInstId).then((response) => {
  893. this.collectForm = response.data;
  894. this.collectForm.investCommissioner = this.scoreForm.investCommissioner;
  895. });
  896. },
  897. },
  898. };
  899. </script>
  900. <style lang="scss" scoped>
  901. .detailWrapper {
  902. padding: 20px 0;
  903. width: 92%;
  904. margin: 0 auto;
  905. .section1 {
  906. p {
  907. font-size: 24px;
  908. font-weight: bold;
  909. margin: 0;
  910. }
  911. > div:first-child {
  912. // width: calc(100% - 700px);
  913. width: 100%;
  914. }
  915. .btnList {
  916. width: 700px;
  917. display: flex;
  918. justify-content: flex-end;
  919. }
  920. }
  921. .basicsInfo {
  922. font-size: 14px;
  923. background: #f1f1f1;
  924. margin-top: -24px;
  925. width: 100%;
  926. padding: 30px 20px 10px;
  927. div {
  928. color: #7e7d7d;
  929. }
  930. p {
  931. font-size: 16px;
  932. color: #333;
  933. font-weight: bold;
  934. }
  935. }
  936. .section3 {
  937. margin-top: 40px;
  938. }
  939. }
  940. .projectNameTit {
  941. }
  942. .alreadyStop {
  943. font-weight: normal;
  944. font-size: 12px;
  945. background: #ff0000;
  946. color: #fff;
  947. border-radius: 5px;
  948. padding: 5px 10px;
  949. margin-left: 10px;
  950. }
  951. /*表格样式开始*/
  952. .ss_scoreTable {
  953. padding-bottom: 50px;
  954. ::v-deep .el-input.is-disabled .el-input__inner {
  955. background-color: #fff !important;
  956. color: #606266;
  957. }
  958. ::v-deep .el-input__inner {
  959. border: 1px solid transparent;
  960. text-align: center;
  961. }
  962. ::v-deep.el-textarea__inner {
  963. border: none;
  964. height: 50px;
  965. resize: none;
  966. }
  967. ::v-deep .el-textarea.is-disabled .el-textarea__inner {
  968. background-color: #fff !important;
  969. }
  970. textarea:disabled,
  971. input:disabled {
  972. background-color: #fff !important;
  973. }
  974. // ::v-deep .el-textarea__inner {
  975. // // border: 1px solid transparent!important;
  976. // }
  977. table {
  978. // width:80%;
  979. // width: 600px;
  980. margin: 0 30px;
  981. -moz-user-select: none;
  982. -webkit-user-select: none;
  983. -ms-user-select: none;
  984. -khtml-user-selece: none;
  985. /*上面都是兼容性问题,具体看浏览器版本或什么浏览器*/
  986. user-select: none; /*内容禁止选中*/
  987. }
  988. tbody td {
  989. font-size: 14px;
  990. }
  991. thead th,
  992. .big-font {
  993. font-size: 16px !important;
  994. font-weight: bold;
  995. }
  996. .public-pedded-0 {
  997. padding: 0;
  998. }
  999. .text-center {
  1000. text-align: center;
  1001. }
  1002. .text-left {
  1003. text-align: left;
  1004. }
  1005. .table-textarea {
  1006. width: 100%;
  1007. // width: 180px;
  1008. border: none;
  1009. height: 50px;
  1010. resize: none;
  1011. }
  1012. .table-input {
  1013. width: 100%;
  1014. // width: 100%;
  1015. // height: 80px;
  1016. border: none;
  1017. font-size: 20px;
  1018. font-weight: bold;
  1019. text-align: center;
  1020. margin-top: 20px;
  1021. }
  1022. .bg-blue,
  1023. .specificTr > th:nth-child(2n-1) {
  1024. background-color: #9bc2e6;
  1025. }
  1026. .specificTr > th:nth-child(2n-1) {
  1027. white-space: nowrap;
  1028. padding: 0 15px;
  1029. }
  1030. .specificTr .table-textarea {
  1031. padding-top: 16px;
  1032. background-color: #fff;
  1033. }
  1034. tr > th {
  1035. height: 50px;
  1036. }
  1037. input:disabled {
  1038. // background-color: #fff !important;
  1039. }
  1040. .btnList {
  1041. width: 100%;
  1042. display: flex;
  1043. justify-content: center;
  1044. padding-bottom: 40px;
  1045. margin-top: 30px;
  1046. }
  1047. }
  1048. </style>