audit.vue 75 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079
  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 class="public-flex-between basicsInfo" v-if="detailInfo.projectState != '1'">
  18. <div class="public-flex-center-column">
  19. <div>项目公司名称</div>
  20. <p style="width: 250px; text-align: center" class="yichu1"
  21. v-if="
  22. detailInfo.tProjectCompany &&
  23. detailInfo.tProjectCompany.companyName
  24. ">
  25. {{ detailInfo.tProjectCompany.companyName }}
  26. </p>
  27. </div>
  28. <div class="public-flex-center-column">
  29. <div>渠道</div>
  30. <p
  31. v-if="
  32. detailInfo.tProjectChannel &&
  33. detailInfo.tProjectChannel.channelName
  34. "
  35. >
  36. {{ detailInfo.tProjectChannel.channelName }}
  37. </p>
  38. <p v-else>无</p>
  39. </div>
  40. <div class="public-flex-center-column">
  41. <div>项目负责人</div>
  42. <p>{{ detailInfo.investHead }}</p>
  43. </div>
  44. <div class="public-flex-center-column" v-if="detailInfo.projectDate">
  45. <div>立项通过日期</div>
  46. <p>{{ detailInfo.projectDate }}</p>
  47. </div>
  48. <div class="public-flex-center-column" v-if="detailInfo.decisionDate">
  49. <div>投决通过日期</div>
  50. <p>{{ detailInfo.decisionDate }}</p>
  51. </div>
  52. <div class="public-flex-center-column">
  53. <div>投前估值(万元)</div>
  54. <p>{{ detailInfo.investValuation }}</p>
  55. </div>
  56. <div class="public-flex-center-column">
  57. <div>预计投资金额(万元)</div>
  58. <p>{{ detailInfo.investMoney }}</p>
  59. </div>
  60. </div>
  61. </section>
  62. <section class="section3">
  63. <el-tabs v-model="activeName" @tab-click="handleClick">
  64. <el-tab-pane label="立项信息" name="0"></el-tab-pane>
  65. <el-tab-pane label="项目基本信息" name="1"></el-tab-pane>
  66. </el-tabs>
  67. <section>
  68. <div v-if="activeName === '0'" class="public-padded-20 detail-meeting">
  69. <el-tabs type="border-card" v-model="activeTab">
  70. <el-tab-pane label="项目立项申请表" name="apply">
  71. <el-form
  72. v-if="formLXApply.id"
  73. class="special-el-form public-padded-t-20"
  74. ref="formLXApply"
  75. :model="formLXApply"
  76. label-width="120px"
  77. >
  78. <el-form-item
  79. label="项目概况"
  80. prop="projectOverview"
  81. class="special-el-form-item"
  82. >
  83. <el-input
  84. rows="4"
  85. type="textarea"
  86. maxlength="200"
  87. v-model="formLXApply.projectOverview"
  88. disabled
  89. />
  90. </el-form-item>
  91. <el-form-item
  92. label="项目亮点"
  93. prop="projectSparkle"
  94. class="special-el-form-item"
  95. >
  96. <el-input
  97. rows="4"
  98. type="textarea"
  99. maxlength="200"
  100. v-model="formLXApply.projectSparkle"
  101. disabled
  102. />
  103. </el-form-item>
  104. <el-form-item
  105. label="立项资料"
  106. prop="listFile"
  107. class="special-el-form-item"
  108. >
  109. <fileItem
  110. ref="fileItemLXApply1"
  111. :id="formLXApply.id"
  112. :is-detail="true"
  113. ></fileItem>
  114. </el-form-item>
  115. </el-form>
  116. <div
  117. v-else
  118. class="public-flex-center public-padded-20"
  119. style="color: #909399"
  120. >
  121. 暂无数据
  122. </div>
  123. </el-tab-pane>
  124. <el-tab-pane :label="formType === 1 ? '项目立项评估评审表' : '项目立项评估评审汇总表'" v-if="formLXApply.taskDefKey!='deptLeader'&&formLXApply.taskDefKey!='meeting'" name="review">
  125. <el-form
  126. class="table-form ss_scoreTable"
  127. ref="scoreForm"
  128. :model="scoreForm"
  129. :rules="scoreRules"
  130. label-width="0px"
  131. >
  132. <table v-if="formType === 1" border="1" cellpadding="0" cellspacing="0">
  133. <thead>
  134. <tr>
  135. <th colspan="10" class="bg-blue">项目立项评估评审表</th>
  136. </tr>
  137. <tr class="specificTr">
  138. <th>项目名称</th>
  139. <th>
  140. <textarea
  141. class="table-textarea"
  142. v-model="scoreForm.projectName"
  143. name=""
  144. disabled
  145. ></textarea>
  146. </th>
  147. <th>项目所属公司</th>
  148. <th colspan="3">
  149. <textarea
  150. class="table-textarea"
  151. v-model="form1.tProjectPool.company"
  152. name=""
  153. disabled
  154. ></textarea>
  155. </th>
  156. <th>项目负责人</th>
  157. <th>
  158. <textarea
  159. class="table-textarea"
  160. v-model="scoreForm.investCommissioner"
  161. name=""
  162. disabled
  163. ></textarea>
  164. </th>
  165. <th>打分人</th>
  166. <th>
  167. <textarea
  168. v-model="user.nickName"
  169. class="table-textarea"
  170. name=""
  171. disabled
  172. ></textarea>
  173. </th>
  174. </tr>
  175. <tr class="bg-blue">
  176. <th>序号</th>
  177. <th>评审类别</th>
  178. <th>评审事项</th>
  179. <th colspan="3">评审指标</th>
  180. <th>标准分值(满分50)</th>
  181. <th colspan="2">市场部/投资部打分</th>
  182. <th>备注【如不适用,需说明情况】</th>
  183. </tr>
  184. </thead>
  185. <tbody class="text-center">
  186. <tr>
  187. <td rowspan="2">1</td>
  188. <td rowspan="2">模式先进</td>
  189. <td>产业优势</td>
  190. <td colspan="3" class="text-left">
  191. 满足以下条件之一:市场热点、新经济、强势传统产业
  192. </td>
  193. <td>
  194. 阶段性:0-1<br />
  195. 持久:2-3<br />
  196. 持久重大:4-5
  197. </td>
  198. <td colspan="2">
  199. <el-form-item prop="industryAdvantage">
  200. <el-input
  201. :disabled="readonly"
  202. v-model="scoreForm.industryAdvantage"
  203. name="industryAdvantage"
  204. type="text"
  205. class="table-input"
  206. prop="industryAdvantage"
  207. :min="0"
  208. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>5){value=5}}"
  209. />
  210. </el-form-item>
  211. </td>
  212. <td>
  213. <textarea
  214. :disabled="readonly"
  215. v-model="scoreForm.industryAdvantageNote"
  216. name="industryAdvantageNote"
  217. class="table-textarea"
  218. ></textarea>
  219. </td>
  220. </tr>
  221. <tr>
  222. <td>商业模式</td>
  223. <td colspan="3" class="text-left">
  224. 满足以下条件之一:技术/行业/渠道优势明显、模式创新度高、降本增效显著
  225. </td>
  226. <td>
  227. 先进:0-3<br />
  228. 非常先进:4-5<br />
  229. 超级先进:6-7<br />
  230. 颠覆性的:8-9
  231. </td>
  232. <td colspan="2">
  233. <el-form-item prop="businessModel">
  234. <el-input
  235. :disabled="readonly"
  236. v-model="scoreForm.businessModel"
  237. name="businessModel"
  238. type="text"
  239. class="table-input"
  240. :min="0"
  241. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>9){value=9}}"
  242. />
  243. </el-form-item>
  244. </td>
  245. <td>
  246. <textarea
  247. :disabled="readonly"
  248. v-model="scoreForm.businessModelNote"
  249. name="businessModelNote"
  250. class="table-textarea"
  251. ></textarea>
  252. </td>
  253. </tr>
  254. <tr>
  255. <td rowspan="4">2</td>
  256. <td rowspan="4">团队优秀</td>
  257. <td rowspan="4">核心团队优秀</td>
  258. <td colspan="3">
  259. 创业团队专业,产业背景出身,至少十年以上行业经验
  260. </td>
  261. <td>
  262. 10年以上产业经验:0-2<br />
  263. 15年以上产业经验:3-4
  264. </td>
  265. <td colspan="2">
  266. <el-form-item prop="teamExperience">
  267. <el-input
  268. :disabled="readonly"
  269. v-model="scoreForm.teamExperience"
  270. name="teamExperience"
  271. type="text"
  272. class="table-input"
  273. :min="0"
  274. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>4){value=4}}"
  275. />
  276. </el-form-item>
  277. </td>
  278. <td>
  279. <textarea
  280. :disabled="readonly"
  281. class="table-textarea"
  282. v-model="scoreForm.teamExperienceNote"
  283. name="teamExperienceNote"
  284. ></textarea>
  285. </td>
  286. </tr>
  287. <tr>
  288. <td colspan="3">
  289. 创始团队背景为行业内专家/教授/名校哈佛大学博士/行业内龙头企业技术团队等
  290. </td>
  291. <td>
  292. 硕士博士团队:0-2<br />
  293. 行业内知名专家、世界名校博士、行业内龙头企业技术团队:3-4
  294. </td>
  295. <td colspan="2">
  296. <el-form-item prop="teamBackground">
  297. <el-input
  298. :disabled="readonly"
  299. type="text"
  300. v-model="scoreForm.teamBackground"
  301. name="teamBackground"
  302. class="table-input"
  303. :min="0"
  304. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>4){value=4}}"
  305. />
  306. </el-form-item>
  307. </td>
  308. <td>
  309. <textarea
  310. :disabled="readonly"
  311. class="table-textarea"
  312. v-model="scoreForm.teamBackgroundNote"
  313. name="teamBackgroundNote"
  314. ></textarea>
  315. </td>
  316. </tr>
  317. <tr>
  318. <td colspan="3">
  319. 拥有3位以上德才兼备、同心同德的核心团队成员,能够支撑企业快速扩张
  320. </td>
  321. <td>
  322. 强:0-2 <br />
  323. 很强:3-4
  324. </td>
  325. <td colspan="2">
  326. <el-form-item prop="teamHeart">
  327. <el-input
  328. :disabled="readonly"
  329. type="text"
  330. v-model="scoreForm.teamHeart"
  331. name="teamHeart"
  332. class="table-input"
  333. :min="0"
  334. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>4){value=4}}"
  335. />
  336. </el-form-item>
  337. </td>
  338. <td>
  339. <textarea
  340. :disabled="readonly"
  341. class="table-textarea"
  342. v-model="scoreForm.teamHeartNote"
  343. name="teamHeartNote"
  344. ></textarea>
  345. </td>
  346. </tr>
  347. <tr>
  348. <td colspan="3">
  349. 团队领袖诚信、学习能力意愿强,具有很强的职业精神、职业道德、职业技能
  350. </td>
  351. <td>
  352. 合格:0-2<br />
  353. 优秀:3-5 <br />
  354. 卓越:6-8
  355. </td>
  356. <td colspan="2">
  357. <el-form-item prop="teamFaith">
  358. <el-input
  359. :disabled="readonly"
  360. type="text"
  361. v-model="scoreForm.teamFaith"
  362. name="teamFaith"
  363. class="table-input"
  364. :min="0"
  365. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>8){value=8}}"
  366. />
  367. </el-form-item>
  368. </td>
  369. <td>
  370. <textarea
  371. :disabled="readonly"
  372. class="table-textarea"
  373. v-model="scoreForm.teamFaithNote"
  374. name="teamFaithNote"
  375. ></textarea>
  376. </td>
  377. </tr>
  378. <tr>
  379. <td rowspan="5">3</td>
  380. <td rowspan="5">企业价值</td>
  381. <td rowspan="2">初步产品原型</td>
  382. <td colspan="3">
  383. 具备一定的技术基础和原型,能够证明产品的可行性和创新性,能够为用户真正带来价值。
  384. </td>
  385. <td>2</td>
  386. <td colspan="2">
  387. <el-form-item prop="productBase">
  388. <el-input
  389. :disabled="readonly"
  390. type="text"
  391. v-model="scoreForm.productBase"
  392. name="productBase"
  393. class="table-input"
  394. :min="0"
  395. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>2){value=2}}"
  396. />
  397. </el-form-item>
  398. </td>
  399. <td>
  400. <textarea
  401. :disabled="readonly"
  402. class="table-textarea"
  403. v-model="scoreForm.productBaseNote"
  404. name="productBaseNote"
  405. ></textarea>
  406. </td>
  407. </tr>
  408. <tr>
  409. <td colspan="3">具有明确的盈利模式</td>
  410. <td>2</td>
  411. <td colspan="2">
  412. <el-form-item prop="productProfit">
  413. <el-input
  414. :disabled="readonly"
  415. type="text"
  416. v-model="scoreForm.productProfit"
  417. name="productProfit"
  418. class="table-input"
  419. :min="0"
  420. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>2){value=2}}"
  421. />
  422. </el-form-item>
  423. </td>
  424. <td>
  425. <textarea
  426. :disabled="readonly"
  427. class="table-textarea"
  428. v-model="scoreForm.productProfitNote"
  429. name="productProfitNote"
  430. ></textarea>
  431. </td>
  432. </tr>
  433. <tr>
  434. <td rowspan="2">机构认可</td>
  435. <td colspan="3">
  436. 清科、投中年度排行前一百位的投资机构或上市公司、中国500强知名企业或知名投资人投资。
  437. </td>
  438. <td>1</td>
  439. <td colspan="2">
  440. <el-form-item prop="organInvest">
  441. <el-input
  442. :disabled="readonly"
  443. type="text"
  444. v-model="scoreForm.organInvest"
  445. name="organInvest"
  446. class="table-input"
  447. :min="0"
  448. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>1){value=1}}"
  449. />
  450. </el-form-item>
  451. </td>
  452. <td>
  453. <textarea
  454. :disabled="readonly"
  455. class="table-textarea"
  456. v-model="scoreForm.organInvestNote"
  457. name="organInvestNote"
  458. ></textarea>
  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. <el-form-item prop="organValuation">
  468. <el-input
  469. :disabled="readonly"
  470. v-model="scoreForm.organValuation"
  471. type="text"
  472. class="table-input"
  473. :min="0"
  474. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>1){value=1}}"
  475. />
  476. </el-form-item>
  477. </td>
  478. <td>
  479. <textarea
  480. :disabled="readonly"
  481. v-model="scoreForm.organValuationNote"
  482. class="table-textarea"
  483. name="organValuationNote"
  484. ></textarea>
  485. </td>
  486. </tr>
  487. <tr>
  488. <td>估值</td>
  489. <td colspan="3">估值水平、预期收益合理</td>
  490. <td>1</td>
  491. <td colspan="2">
  492. <el-form-item prop="valuation">
  493. <el-input
  494. :disabled="readonly"
  495. type="text"
  496. v-model="scoreForm.valuation"
  497. name="valuation"
  498. class="table-input"
  499. :min="0"
  500. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>1){value=1}}"
  501. />
  502. </el-form-item>
  503. </td>
  504. <td>
  505. <textarea
  506. :disabled="readonly"
  507. class="table-textarea"
  508. v-model="scoreForm.valuationNote"
  509. name="valuationNote"
  510. ></textarea>
  511. </td>
  512. </tr>
  513. <tr>
  514. <td rowspan="2">4</td>
  515. <td rowspan="2">市场广阔</td>
  516. <td>市场空间大</td>
  517. <td colspan="3">
  518. 行业具有高成长性,细分市场年销售规模已经达到或五年内达到50亿元。
  519. </td>
  520. <td>
  521. 50-100亿:0.5<br />
  522. 100-200亿:1<br />
  523. 200亿以上:2
  524. </td>
  525. <td colspan="2">
  526. <el-form-item prop="marketSpace">
  527. <el-input
  528. :disabled="readonly"
  529. type="text"
  530. v-model="scoreForm.marketSpace"
  531. name="marketSpace"
  532. class="table-input"
  533. :min="0"
  534. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>2){value=2}}"
  535. />
  536. </el-form-item>
  537. </td>
  538. <td>
  539. <textarea
  540. :disabled="readonly"
  541. class="table-textarea"
  542. v-model="scoreForm.marketSpaceNote"
  543. name="marketSpaceNote"
  544. ></textarea>
  545. </td>
  546. </tr>
  547. <tr>
  548. <td>成长空间大</td>
  549. <td colspan="3">预计年增长率在30%以上</td>
  550. <td>
  551. 收入年增长率30%以上:1<br />
  552. 收入年增长率50%以上:2<br />
  553. 收入年增长率70%以上:3
  554. </td>
  555. <td colspan="2">
  556. <el-form-item prop="developSpace">
  557. <el-input
  558. :disabled="readonly"
  559. type="text"
  560. v-model="scoreForm.developSpace"
  561. name="developSpace"
  562. class="table-input"
  563. :min="0"
  564. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>3){value=3}}"
  565. />
  566. </el-form-item>
  567. </td>
  568. <td>
  569. <textarea
  570. :disabled="readonly"
  571. class="table-textarea"
  572. v-model="scoreForm.developSpaceNote"
  573. name="developSpaceNote"
  574. ></textarea>
  575. </td>
  576. </tr>
  577. <tr>
  578. <td>5</td>
  579. <td>股权收益</td>
  580. <td>退出方式</td>
  581. <td colspan="3">通过并购、股权转让、股权回购等方式退出</td>
  582. <td>
  583. 退出收益5%-15%:1<br />
  584. 退出收益15%-50%:2<br />
  585. 退出收益50%-100%:3<br />
  586. 退出收益1倍以上:4
  587. </td>
  588. <td colspan="2">
  589. <el-form-item prop="quitWay">
  590. <el-input
  591. :disabled="readonly"
  592. type="text"
  593. v-model="scoreForm.quitWay"
  594. name="quitWay"
  595. class="table-input"
  596. :min="0"
  597. oninput="if(value){value=value.replace(/[^\d.]/g,'').replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');if(value>4){value=4}}"
  598. />
  599. </el-form-item>
  600. </td>
  601. <td>
  602. <textarea
  603. :disabled="readonly"
  604. class="table-textarea"
  605. v-model="scoreForm.quitWayNote"
  606. name="quitWayNote"
  607. ></textarea>
  608. </td>
  609. </tr>
  610. <tr>
  611. <td colspan="3" class="big-font">同意或不同意说明</td>
  612. <td colspan="7" class="big-font">
  613. <el-form-item prop="illustrate">
  614. <el-input
  615. :disabled="readonly"
  616. type="textarea"
  617. style="width: 95%; margin-top: 20px"
  618. class="table-textarea"
  619. v-model="scoreForm.illustrate"
  620. name="illustrate"
  621. />
  622. </el-form-item>
  623. </td>
  624. </tr>
  625. <tr>
  626. <td colspan="10" class="text-left big-font">
  627. 评分说明:<br />
  628. 1.
  629. 固定指标分值部分,评分人需根据项目实际情况,评分范围仅有0分和满分,满分为各评审指标对应的标准分值。<br />
  630. 2.
  631. 浮动指标分值部分,最高分值为各评审指标对应的最高区间分值,最低分值为0分,分值保留小数点后一位数字。
  632. </td>
  633. </tr>
  634. </tbody>
  635. </table>
  636. <table
  637. v-if="formType === 2"
  638. border="1"
  639. cellpadding="0"
  640. cellspacing="0"
  641. class="allScoring"
  642. >
  643. <thead>
  644. <tr>
  645. <th colspan="10" class="bg-blue">项目立项评估评审汇总表</th>
  646. </tr>
  647. <tr class="specificTr">
  648. <th>项目名称</th>
  649. <th>
  650. <textarea
  651. class="table-textarea"
  652. v-model="scoreForm.projectName"
  653. name=""
  654. disabled
  655. ></textarea>
  656. </th>
  657. <th>项目所属公司</th>
  658. <th colspan="3">
  659. <textarea
  660. class="table-textarea"
  661. v-model="form1.tProjectPool.company"
  662. name=""
  663. disabled
  664. ></textarea>
  665. </th>
  666. <th>项目负责人</th>
  667. <th>
  668. <textarea
  669. class="table-textarea"
  670. name=""
  671. v-model="collectForm.investCommissioner"
  672. disabled
  673. ></textarea>
  674. </th>
  675. <th>总人数</th>
  676. <th>
  677. <textarea
  678. v-model="collectForm.totalPerson"
  679. class="table-textarea"
  680. name=""
  681. disabled
  682. ></textarea>
  683. </th>
  684. </tr>
  685. <tr class="bg-blue">
  686. <th>序号</th>
  687. <th>评审类别</th>
  688. <th>评审事项</th>
  689. <th colspan="3">评审指标</th>
  690. <th>标准分值(满分50)</th>
  691. <th colspan="2">汇总分数</th>
  692. <th>平均分数</th>
  693. </tr>
  694. </thead>
  695. <tbody class="text-center">
  696. <tr>
  697. <td rowspan="2">1</td>
  698. <td rowspan="2">模式先进</td>
  699. <td>产业优势</td>
  700. <td colspan="3" class="text-left">
  701. 满足以下条件之一:市场热点、新经济、强势传统产业
  702. </td>
  703. <td>
  704. 阶段性:0-1<br />
  705. 持久:2-3<br />
  706. 持久重大:4-5
  707. </td>
  708. <td colspan="2">
  709. <input
  710. autocomplete="off"
  711. v-model="collectForm.industryAdvantageSum"
  712. name="industryAdvantageSum"
  713. type="text"
  714. class="table-input"
  715. disabled
  716. />
  717. </td>
  718. <td>
  719. <input
  720. autocomplete="off"
  721. type="text"
  722. v-model="collectForm.industryAdvantageAvg"
  723. name="industryAdvantageAvg"
  724. class="table-input"
  725. disabled
  726. />
  727. </td>
  728. </tr>
  729. <tr>
  730. <td>商业模式</td>
  731. <td colspan="3" class="text-left">
  732. 满足以下条件之一:技术/行业/渠道优势明显、模式创新度高、降本增效显著
  733. </td>
  734. <td>
  735. 先进:0-3<br />
  736. 非常先进:4-5<br />
  737. 超级先进:6-7<br />
  738. 颠覆性的:8-9
  739. </td>
  740. <td colspan="2">
  741. <input
  742. autocomplete="off"
  743. type="text"
  744. v-model="collectForm.businessModelSum"
  745. name="businessModelSum"
  746. class="table-input"
  747. disabled
  748. />
  749. </td>
  750. <td>
  751. <input
  752. autocomplete="off"
  753. type="text"
  754. v-model="collectForm.businessModelAvg"
  755. name="businessModelAvg"
  756. class="table-input"
  757. disabled
  758. />
  759. </td>
  760. </tr>
  761. <tr>
  762. <td rowspan="4">2</td>
  763. <td rowspan="4">团队优秀</td>
  764. <td rowspan="4">核心团队优秀</td>
  765. <td colspan="3">
  766. 创业团队专业,产业背景出身,至少十年以上行业经验
  767. </td>
  768. <td>
  769. 10年以上产业经验:0-2<br />
  770. 15年以上产业经验:3-4
  771. </td>
  772. <td colspan="2">
  773. <input
  774. autocomplete="off"
  775. type="text"
  776. v-model="collectForm.teamExperienceSum"
  777. name="teamExperienceSum"
  778. class="table-input"
  779. disabled
  780. />
  781. </td>
  782. <td>
  783. <input
  784. autocomplete="off"
  785. type="text"
  786. v-model="collectForm.teamExperienceAvg"
  787. name="teamExperienceAvg"
  788. class="table-input"
  789. disabled
  790. />
  791. </td>
  792. </tr>
  793. <tr>
  794. <td colspan="3">
  795. 创始团队背景为行业内专家/教授/名校哈佛大学博士/行业内龙头企业技术团队等
  796. </td>
  797. <td>
  798. 硕士博士团队:0-2<br />
  799. 行业内知名专家、世界名校博士、行业内龙头企业技术团队:3-4
  800. </td>
  801. <td colspan="2">
  802. <input
  803. autocomplete="off"
  804. type="text"
  805. v-model="collectForm.teamBackgroundSum"
  806. name="teamBackgroundSum"
  807. class="table-input"
  808. disabled
  809. />
  810. </td>
  811. <td>
  812. <input
  813. autocomplete="off"
  814. type="text"
  815. v-model="collectForm.teamBackgroundAvg"
  816. name="teamBackgroundAvg"
  817. class="table-input"
  818. disabled
  819. />
  820. </td>
  821. </tr>
  822. <tr>
  823. <td colspan="3">
  824. 拥有3位以上德才兼备、同心同德的核心团队成员,能够支撑企业快速扩张
  825. </td>
  826. <td>
  827. 强:0-2 <br />
  828. 很强:3-4
  829. </td>
  830. <td colspan="2">
  831. <input
  832. autocomplete="off"
  833. type="text"
  834. v-model="collectForm.teamHeartSum"
  835. name="teamHeartSum"
  836. class="table-input"
  837. disabled
  838. />
  839. </td>
  840. <td>
  841. <input
  842. autocomplete="off"
  843. type="text"
  844. v-model="collectForm.teamHeartAvg"
  845. name="teamHeartAvg"
  846. class="table-input"
  847. disabled
  848. />
  849. </td>
  850. </tr>
  851. <tr>
  852. <td colspan="3">
  853. 团队领袖诚信、学习能力意愿强,具有很强的职业精神、职业道德、职业技能
  854. </td>
  855. <td>
  856. 合格:0-2<br />
  857. 优秀:3-5 <br />
  858. 卓越:6-8
  859. </td>
  860. <td colspan="2">
  861. <input
  862. autocomplete="off"
  863. type="text"
  864. v-model="collectForm.teamFaithSum"
  865. name="teamFaithSum"
  866. class="table-input"
  867. disabled
  868. />
  869. </td>
  870. <td>
  871. <input
  872. autocomplete="off"
  873. type="text"
  874. v-model="collectForm.teamFaithAvg"
  875. name="teamFaithAvg"
  876. class="table-input"
  877. disabled
  878. />
  879. </td>
  880. </tr>
  881. <tr>
  882. <td rowspan="5">3</td>
  883. <td rowspan="5">企业价值</td>
  884. <td rowspan="2">初步产品原型</td>
  885. <td colspan="3">
  886. 具备一定的技术基础和原型,能够证明产品的可行性和创新性,能够为用户真正带来价值。
  887. </td>
  888. <td>2</td>
  889. <td colspan="2">
  890. <input
  891. autocomplete="off"
  892. type="text"
  893. v-model="collectForm.productBaseSum"
  894. name="productBaseSum"
  895. class="table-input"
  896. disabled
  897. />
  898. </td>
  899. <td>
  900. <input
  901. autocomplete="off"
  902. type="text"
  903. v-model="collectForm.productBaseAvg"
  904. name="productBaseAvg"
  905. class="table-input"
  906. disabled
  907. />
  908. </td>
  909. </tr>
  910. <tr>
  911. <td colspan="3">具有明确的盈利模式</td>
  912. <td>2</td>
  913. <td colspan="2">
  914. <input
  915. autocomplete="off"
  916. type="text"
  917. v-model="collectForm.productProfitSum"
  918. name="productProfitSum"
  919. class="table-input"
  920. disabled
  921. />
  922. </td>
  923. <td>
  924. <input
  925. autocomplete="off"
  926. type="text"
  927. v-model="collectForm.productProfitAvg"
  928. name="productProfitAvg"
  929. class="table-input"
  930. disabled
  931. />
  932. </td>
  933. </tr>
  934. <tr>
  935. <td rowspan="2">机构认可</td>
  936. <td colspan="3">
  937. 清科、投中年度排行前一百位的投资机构或上市公司、中国500强知名企业或知名投资人投资。
  938. </td>
  939. <td>1</td>
  940. <td colspan="2">
  941. <input
  942. autocomplete="off"
  943. type="text"
  944. v-model="collectForm.organInvestSum"
  945. name="organInvestSum"
  946. class="table-input"
  947. disabled
  948. />
  949. </td>
  950. <td>
  951. <input
  952. autocomplete="off"
  953. type="text"
  954. v-model="collectForm.organInvestAvg"
  955. name="organInvestAvg"
  956. class="table-input"
  957. disabled
  958. />
  959. </td>
  960. </tr>
  961. <tr>
  962. <td colspan="3">
  963. 公司近期12个月内估值XX万元以上,且与项目公司无关联关系的专业化投资机构(人)的投资超过500万元。
  964. </td>
  965. <td>1</td>
  966. <td colspan="2">
  967. <input
  968. autocomplete="off"
  969. v-model="collectForm.organValuationSum"
  970. name="organValuationSum"
  971. type="text"
  972. class="table-input"
  973. disabled
  974. />
  975. </td>
  976. <td>
  977. <input
  978. autocomplete="off"
  979. v-model="collectForm.organValuationAvg"
  980. name="organValuationAvg"
  981. type="text"
  982. class="table-input"
  983. disabled
  984. />
  985. </td>
  986. </tr>
  987. <tr>
  988. <td>估值</td>
  989. <td colspan="3">估值水平、预期收益合理</td>
  990. <td>1</td>
  991. <td colspan="2">
  992. <input
  993. type="text"
  994. v-model="collectForm.valuationSum"
  995. name="valuationSum"
  996. class="table-input"
  997. disabled
  998. />
  999. </td>
  1000. <td>
  1001. <input
  1002. autocomplete="off"
  1003. type="text"
  1004. v-model="collectForm.valuationAvg"
  1005. name="valuationAvg"
  1006. class="table-input"
  1007. disabled
  1008. />
  1009. </td>
  1010. </tr>
  1011. <tr>
  1012. <td rowspan="2">4</td>
  1013. <td rowspan="2">市场广阔</td>
  1014. <td>市场空间大</td>
  1015. <td colspan="3">
  1016. 行业具有高成长性,细分市场年销售规模已经达到或五年内达到50亿元。
  1017. </td>
  1018. <td>
  1019. 50-100亿:0.5<br />
  1020. 100-200亿:1<br />
  1021. 200亿以上:2
  1022. </td>
  1023. <td colspan="2">
  1024. <input
  1025. autocomplete="off"
  1026. type="text"
  1027. v-model="collectForm.marketSpaceSum"
  1028. name="marketSpaceSum"
  1029. class="table-input"
  1030. disabled
  1031. />
  1032. </td>
  1033. <td>
  1034. <input
  1035. autocomplete="off"
  1036. type="text"
  1037. v-model="collectForm.marketSpaceAvg"
  1038. name="marketSpaceAvg"
  1039. class="table-input"
  1040. disabled
  1041. />
  1042. </td>
  1043. </tr>
  1044. <tr>
  1045. <td>成长空间大</td>
  1046. <td colspan="3">预计年增长率在30%以上</td>
  1047. <td>
  1048. 收入年增长率30%以上:1<br />
  1049. 收入年增长率50%以上:2<br />
  1050. 收入年增长率70%以上:3
  1051. </td>
  1052. <td colspan="2">
  1053. <input
  1054. autocomplete="off"
  1055. type="text"
  1056. v-model="collectForm.developSpaceSum"
  1057. name="developSpaceSum"
  1058. class="table-input"
  1059. disabled
  1060. />
  1061. </td>
  1062. <td>
  1063. <input
  1064. autocomplete="off"
  1065. type="text"
  1066. v-model="collectForm.developSpaceAvg"
  1067. name="developSpaceAvg"
  1068. class="table-input"
  1069. disabled
  1070. />
  1071. </td>
  1072. </tr>
  1073. <tr>
  1074. <td>5</td>
  1075. <td>股权收益</td>
  1076. <td>退出方式</td>
  1077. <td colspan="3">通过并购、股权转让、股权回购等方式退出</td>
  1078. <td>
  1079. 退出收益5%-15%:1<br />
  1080. 退出收益15%-50%:2<br />
  1081. 退出收益50%-100%:3<br />
  1082. 退出收益1倍以上:4
  1083. </td>
  1084. <td colspan="2">
  1085. <input
  1086. autocomplete="off"
  1087. type="text"
  1088. v-model="collectForm.quitWaySum"
  1089. name="quitWaySum"
  1090. class="table-input"
  1091. disabled
  1092. />
  1093. </td>
  1094. <td>
  1095. <input
  1096. autocomplete="off"
  1097. type="text"
  1098. v-model="collectForm.quitWayAvg"
  1099. name="quitWayAvg"
  1100. class="table-input"
  1101. disabled
  1102. />
  1103. </td>
  1104. </tr>
  1105. <tr>
  1106. <td colspan="10" class="text-left big-font">
  1107. 评分说明:<br />
  1108. 1.
  1109. 固定指标分值部分,评分人需根据项目实际情况,评分范围仅有0分和满分,满分为各评审指标对应的标准分值。<br />
  1110. 2.
  1111. 浮动指标分值部分,最高分值为各评审指标对应的最高区间分值,最低分值为0分,分值保留小数点后一位数字。
  1112. </td>
  1113. </tr>
  1114. </tbody>
  1115. </table>
  1116. </el-form>
  1117. </el-tab-pane>
  1118. </el-tabs>
  1119. <!-- 会议信息开始 -->
  1120. <section v-if="formLXApply.taskDefKey==='meeting'">
  1121. <el-form
  1122. v-if="formLXApply.id"
  1123. class="special-el-form public-padded-t-20"
  1124. ref="formLXApply"
  1125. :model="formLXApply"
  1126. label-width="120px"
  1127. >
  1128. <el-form-item
  1129. label="立项审批人"
  1130. prop="participants"
  1131. class="special-el-form-item public-input-height-2"
  1132. >
  1133. <div
  1134. class="el-input__inner inputSimulation yichu1"
  1135. @click="handleSelectPeople(1)"
  1136. :title="formLXApply.participants"
  1137. >
  1138. {{ formLXApply.participants ? formLXApply.participants : "请选择" }}
  1139. </div>
  1140. </el-form-item>
  1141. <el-form-item
  1142. label="附件"
  1143. prop="listFile"
  1144. class="special-el-form-item"
  1145. >
  1146. <fileItem
  1147. ref="fileItemLXApply"
  1148. :id="formLXApply.id"
  1149. @getFileList="getFileListLXApply"
  1150. ></fileItem>
  1151. </el-form-item>
  1152. <!-- 关键代码:el-form-item 包裹单选组 -->
  1153. <el-form-item label="是否需要立项会议">
  1154. <label>
  1155. <input type="radio" name="needMeeting" value="0" v-model="formLXApply.needMeeting">
  1156. </label>
  1157. <label>
  1158. <input type="radio" name="needMeeting" value="1" v-model="formLXApply.needMeeting">
  1159. </label>
  1160. </el-form-item>
  1161. </el-form>
  1162. <h3 v-if="formLXApply.needMeeting === '1'">会议信息</h3>
  1163. <el-form
  1164. class="special-el-form"
  1165. ref="meetingForm"
  1166. :model="meetingForm"
  1167. :rules="meetingRules"
  1168. label-width="120px"
  1169. v-if="formLXApply.needMeeting === '1'"
  1170. >
  1171. <el-form-item
  1172. label="项目名称"
  1173. prop="projectName"
  1174. class="special-el-form-item public-input-height-2"
  1175. :rules="[
  1176. { required: verifyProjectName, trigger: 'blur', message: '请选择' },
  1177. ]"
  1178. >
  1179. <div
  1180. class="el-input__inner inputSimulation yichu1"
  1181. @click="handleProjectItem"
  1182. :class="{ show_disabled: pageType === '1' }"
  1183. :title="meetingForm.projectName"
  1184. >
  1185. {{ meetingForm.projectName ? meetingForm.projectName : "请选择 " }}
  1186. </div>
  1187. <projectItem
  1188. ref="projectItem"
  1189. @getProjectInfo="getProjectInfo"
  1190. ></projectItem>
  1191. </el-form-item>
  1192. <el-form-item
  1193. label="项目阶段"
  1194. prop="projectStage"
  1195. class="special-el-form-item"
  1196. >
  1197. <el-select v-model="meetingForm.projectStage" disabled placeholder="">
  1198. <el-option
  1199. v-for="dict in dict.type.project_stage"
  1200. :key="dict.value"
  1201. :label="dict.label"
  1202. :value="dict.value"
  1203. />
  1204. </el-select>
  1205. </el-form-item>
  1206. <el-form-item label="会议主题" prop="meetingTheme">
  1207. <el-input
  1208. maxlength="100"
  1209. v-model="meetingForm.meetingTheme"
  1210. placeholder="请输入会议主题"
  1211. />
  1212. </el-form-item>
  1213. <!-- <el-form-item label="会议编号" prop="meetingCode">
  1214. <el-input v-model="form.meetingCode" placeholder="请输入会议编号" />
  1215. </el-form-item> -->
  1216. <el-form-item label="会议类别" prop="meetingType">
  1217. <el-select
  1218. v-model="meetingForm.meetingType"
  1219. placeholder="请选择会议类别"
  1220. :disabled="
  1221. meetingTypeDisabled || (pageType === '1' && meetingType != null)
  1222. "
  1223. >
  1224. <el-option
  1225. v-for="dict in meetingTypeList"
  1226. :key="dict.value"
  1227. :label="dict.label"
  1228. :value="dict.value"
  1229. ></el-option>
  1230. </el-select>
  1231. </el-form-item>
  1232. <el-form-item label="会议开始时间" prop="startTime">
  1233. <el-date-picker
  1234. v-model="meetingForm.startTime"
  1235. type="datetime"
  1236. placeholder="请选择会议开始时间"
  1237. format="yyyy-MM-dd HH:mm"
  1238. value-format="yyyy-MM-dd HH:mm"
  1239. >
  1240. </el-date-picker>
  1241. </el-form-item>
  1242. <el-form-item label="会议结束时间" prop="endTime">
  1243. <el-date-picker
  1244. v-model="meetingForm.endTime"
  1245. format="yyyy-MM-dd HH:mm"
  1246. value-format="yyyy-MM-dd HH:mm"
  1247. type="datetime"
  1248. placeholder="请选择会议结束时间"
  1249. >
  1250. </el-date-picker>
  1251. </el-form-item>
  1252. <el-form-item label="会议地点" prop="place">
  1253. <el-input
  1254. maxlength="100"
  1255. v-model="meetingForm.place"
  1256. placeholder="请输入会议地点"
  1257. />
  1258. </el-form-item>
  1259. <el-form-item
  1260. label="会议发起人"
  1261. prop="promoter"
  1262. class="public-input-height"
  1263. >
  1264. <div class="el-input__inner" @click="openSelectDept(1)">
  1265. {{ meetingForm.promoter ? meetingForm.promoter : "请选择会议发起人" }}
  1266. </div>
  1267. <selecDept
  1268. ref="selecDepts"
  1269. @getDeptUserInfo="getDeptUserInfo"
  1270. :deptId="deptId"
  1271. ></selecDept>
  1272. </el-form-item>
  1273. <el-form-item
  1274. label="会议参与人"
  1275. prop="participants"
  1276. class="special-el-form-item public-input-height-2"
  1277. >
  1278. <div
  1279. class="el-input__inner inputSimulation yichu1"
  1280. @click="handleSelectPeople(2)"
  1281. :title="meetingForm.participants"
  1282. >
  1283. {{ meetingForm.participants ? meetingForm.participants : "请选择会议参与人" }}
  1284. </div>
  1285. </el-form-item>
  1286. <el-form-item label="附件" prop="file" class="special-el-form-item">
  1287. <fileItem
  1288. ref="fileItems"
  1289. :id="meetingForm.id"
  1290. @getFileList="getFileList"
  1291. ></fileItem>
  1292. </el-form-item>
  1293. </el-form>
  1294. </section>
  1295. <!--会议信息结束-->
  1296. </div>
  1297. <div v-show="activeName === '1'">
  1298. <poolForm :type="type" :id="id"></poolForm>
  1299. </div>
  1300. </section>
  1301. </section>
  1302. <section>
  1303. <flowBase :procInstId="formLXApply.procInstId" :id="id" v-if="formLXApply.procInstId "></flowBase>
  1304. </section>
  1305. <section>
  1306. <el-form
  1307. ref="flowBaseInfo"
  1308. :model="flowBaseInfo"
  1309. label-width="120px"
  1310. >
  1311. <el-form-item label="审批意见" prop="comment">
  1312. <el-input
  1313. maxlength="200"
  1314. rows="4"
  1315. type="textarea"
  1316. v-model="flowBaseInfo.comment"
  1317. placeholder="请填写审批意见"
  1318. >
  1319. </el-input>
  1320. </el-form-item>
  1321. <el-form-item class="btnList">
  1322. <!-- <div class="btn-group">-->
  1323. <el-button @click="goBack">返 回</el-button>
  1324. <el-button type="success" @click="handleComplete(true)">同意</el-button>
  1325. <el-button v-if="formLXApply.taskDefKey!='decision'&&formLXApply.taskDefKey!='president'" type="warning" @click="handleComplete(false)">驳回</el-button>
  1326. <el-button v-if="formLXApply.taskDefKey!='decision'&&formLXApply.taskDefKey=='president'" type="warning" @click="handleComplete(false)">驳回(修改)</el-button>
  1327. <el-button v-if="formLXApply.taskDefKey=='president'" type="danger" @click="handleComplete(false,1)">驳回(终止)</el-button>
  1328. <el-button v-if="formLXApply.taskDefKey=='president'" type="warning" @click="handleComplete(false,0)">观望</el-button>
  1329. <!-- </div>-->
  1330. </el-form-item>
  1331. </el-form>
  1332. </section>
  1333. <!--选择人员-->
  1334. <selecUser
  1335. ref="flowUser"
  1336. :checkType="checkType"
  1337. :selectValues="selectValues"
  1338. :selectNameValues="selectNameValues"
  1339. @handleUserSelect="handleUserSelect"
  1340. ></selecUser>
  1341. </div>
  1342. </template>
  1343. <script>
  1344. import poolForm from "../../invest/components/poolForm";
  1345. import fileItem from "../../invest/components/fileItem";
  1346. import flowBase from "../flowBase.vue";
  1347. import selecDept from "../../invest/components/selecDept";
  1348. import projectItem from "../../invest/components/projectItem";
  1349. import selecUser from "../../invest/components/selecUser";
  1350. import {
  1351. getPool
  1352. } from "@/api/invest/pool";
  1353. import{
  1354. approvalComplete,
  1355. getApprovalInfo,
  1356. getMeetingInfo,
  1357. getSumScore
  1358. } from "@/api/project/approval/pool"
  1359. import { mapGetters } from "vuex";
  1360. export default {
  1361. name: "approvalAudit",
  1362. props: {
  1363. readonly: {
  1364. type: Boolean,
  1365. },
  1366. },
  1367. dicts: ["meeting_type", "project_stage", "project_group"],
  1368. components: {
  1369. selecUser,
  1370. projectItem,
  1371. selecDept,
  1372. poolForm,
  1373. fileItem,
  1374. flowBase,
  1375. },
  1376. data() {
  1377. return {
  1378. meetingId: "0",
  1379. type: "2",
  1380. id: "",
  1381. active: 0,
  1382. detailInfo: {
  1383. projectName: "",
  1384. },
  1385. activeName: "0",
  1386. activeTab: 'apply', // 默认激活“项目立项申请表”
  1387. formType:1,
  1388. // 人员选择器
  1389. checkType: "multiple",
  1390. // 数据回显
  1391. selectValues: null,
  1392. selectNameValues: null,
  1393. formLXApply: {
  1394. id: null,
  1395. procInstId:null,
  1396. projectPoolId: null,
  1397. projectName: null,
  1398. projectOverview: null,
  1399. projectSparkle: null,
  1400. listFile: null,
  1401. participants: null,
  1402. participantsId: null,
  1403. taskDefKey:null,
  1404. needMeeting:'0',
  1405. },
  1406. // 会议表单参数-开始
  1407. meetingForm: {
  1408. id: null,
  1409. meetingTheme: null,
  1410. meetingCode: null,
  1411. meetingType: null,
  1412. projectPoolId: null,
  1413. projectName: null,
  1414. projectStage: null,
  1415. projectGroup: "",
  1416. startTime: null,
  1417. endTime: null,
  1418. place: null,
  1419. promoter: null,
  1420. promoterId: null,
  1421. participants: null,
  1422. participantsId: null,
  1423. delFlag: null,
  1424. createBy: null,
  1425. createTime: null,
  1426. updateBy: null,
  1427. updateTime: null,
  1428. listFile:null
  1429. },
  1430. //fileList:[],
  1431. // 表单校验
  1432. meetingRules: {
  1433. meetingTheme: [{ required: true, trigger: "blur", message: "请输入" }],
  1434. meetingType: [{ required: true, trigger: "change", message: "请选择" }],
  1435. // projectGroup: [{ required: true, trigger: "change", message: "请选择" }],
  1436. // projectName: [{ required: true, trigger: "blur", message: "请选择" }],
  1437. startTime: [{ required: true, trigger: "change", message: "请选择" }],
  1438. endTime: [{ required: true, trigger: "blur", message: "请选择" }],
  1439. place: [{ required: true, trigger: "blur", message: "请输入" }],
  1440. promoter: [{ required: true, trigger: "blur", message: "请选择" }],
  1441. participants: [{ required: true, trigger: "blur", message: "请选择" }],
  1442. },
  1443. verifyProjectName: false,
  1444. pageType: null,
  1445. showAllType: false,
  1446. meetingTypeDisabled: false, //会议类别
  1447. meetingTypeList: [
  1448. {
  1449. value: "A",
  1450. label: "管理会议",
  1451. },
  1452. {
  1453. value: "LX",
  1454. label: "项目立项会",
  1455. },
  1456. {
  1457. value: "TJ",
  1458. label: "项目投决会",
  1459. },
  1460. {
  1461. value: "X",
  1462. label: "临时会议",
  1463. },
  1464. ],
  1465. deptId: process.env.VUE_APP_DEPTID,
  1466. openLXApply:false,//立项审批人
  1467. openHYApply:false,//会议参与人 这两个字段是判断是那个字段打开人员选择弹窗
  1468. // 会议表单参数-结束
  1469. //打分
  1470. // 打分表单参数
  1471. scoreForm: {
  1472. businessModel: null,
  1473. businessModelNote: null,
  1474. createBy: null,
  1475. createTime: null,
  1476. delFlag: null,
  1477. developSpace: null,
  1478. developSpaceNote: null,
  1479. examine: null,
  1480. id: null,
  1481. illustrate: null, //说明
  1482. industryAdvantage: null,
  1483. industryAdvantageNote: null,
  1484. investCommissioner: null, //项目负责人
  1485. marketSpace: null, //市场空间
  1486. marketSpaceNote: null,
  1487. meetingId: null, //
  1488. organInvest: null,
  1489. organInvestNote: null,
  1490. organValuation: null,
  1491. organValuationNote: null,
  1492. params: {},
  1493. productBase: null,
  1494. productBaseNote: null,
  1495. productProfit: null,
  1496. productProfitNote: null,
  1497. projectPoolId: null,
  1498. quitWay: null,
  1499. quitWayNote: null,
  1500. remark: null,
  1501. scoringPerson: null, //打分人
  1502. teamBackground: null,
  1503. teamBackgroundNote: null,
  1504. teamExperience: null,
  1505. teamExperienceNote: null,
  1506. teamFaith: null,
  1507. teamFaithNote: null,
  1508. teamHeart: null,
  1509. teamHeartNote: null,
  1510. type: null,
  1511. updateBy: null,
  1512. updateTime: null,
  1513. valuation: null,
  1514. valuationNote: null,
  1515. },
  1516. // 会议详情表单
  1517. form1: {
  1518. meetingTheme: null,
  1519. meetingCode: null,
  1520. meetingType: null,
  1521. projectPoolId: null,
  1522. projectName: null,
  1523. projectStage: null,
  1524. projectGroup: "",
  1525. startTime: null,
  1526. endTime: null,
  1527. place: null,
  1528. promoter: null,
  1529. promoterId: null,
  1530. participants: null,
  1531. participantsId: null,
  1532. tProjectPool: {
  1533. company: null,
  1534. projectName: null,
  1535. projectStage: null,
  1536. },
  1537. },
  1538. // 汇总分数表单
  1539. collectForm: {
  1540. businessModelAvg: null,
  1541. businessModelSum: null,
  1542. developSpaceAvg: null,
  1543. developSpaceSum: null,
  1544. industryAdvantageAvg: null,
  1545. industryAdvantageSum: null,
  1546. investCommissioner: null,
  1547. marketSpaceAvg: null,
  1548. marketSpaceSum: null,
  1549. meetingId: null,
  1550. organInvestAvg: null,
  1551. organInvestSum: null,
  1552. organValuationAvg: null,
  1553. organValuationSum: null,
  1554. productBaseAvg: null,
  1555. productBaseSum: null,
  1556. productProfitAvg: null,
  1557. productProfitSum: null,
  1558. projectPoolId: null,
  1559. quitWayAvg: null,
  1560. quitWaySum: null,
  1561. scoringPerson: null,
  1562. teamBackgroundAvg: null,
  1563. teamBackgroundSum: null,
  1564. teamExperienceAvg: null,
  1565. teamExperienceSum: null,
  1566. teamFaithAvg: null,
  1567. teamFaithSum: null,
  1568. teamHeartAvg: null,
  1569. teamHeartSum: null,
  1570. valuationAvg: null,
  1571. valuationSum: null,
  1572. },
  1573. scoreRules: {
  1574. industryAdvantage: [
  1575. { required: true, trigger: "blur", message: "请打分" },
  1576. ],
  1577. businessModel: [{ required: true, trigger: "blur", message: "请打分" }],
  1578. teamExperience: [
  1579. { required: true, trigger: "blur", message: "请打分" },
  1580. ],
  1581. teamBackground: [
  1582. { required: true, trigger: "blur", message: "请打分" },
  1583. ],
  1584. teamHeart: [{ required: true, trigger: "blur", message: "请打分" }],
  1585. teamFaith: [{ required: true, trigger: "blur", message: "请打分" }],
  1586. productBase: [{ required: true, trigger: "blur", message: "请打分" }],
  1587. productProfit: [{ required: true, trigger: "blur", message: "请打分" }],
  1588. organValuation: [
  1589. { required: true, trigger: "blur", message: "请打分" },
  1590. ],
  1591. organInvest: [{ required: true, trigger: "blur", message: "请打分" }],
  1592. valuation: [{ required: true, trigger: "blur", message: "请打分" }],
  1593. marketSpace: [{ required: true, trigger: "blur", message: "请打分" }],
  1594. developSpace: [{ required: true, trigger: "blur", message: "请打分" }],
  1595. quitWay: [{ required: true, trigger: "blur", message: "请打分" }],
  1596. // illustrate: [{ required: true, trigger: "blur", message: "请输入" }],
  1597. },
  1598. //打分-结束
  1599. flowBaseInfo:{
  1600. comment:null,
  1601. taskId:null
  1602. },
  1603. rulesFlow:{
  1604. comment: [{ required: true, trigger: "blur", message: "请输入" }],
  1605. }
  1606. };
  1607. },
  1608. computed: {
  1609. ...mapGetters(["user"]),
  1610. },
  1611. created() {
  1612. this.id = this.$route.query.id;
  1613. this.flowBaseInfo.taskId=this.$route.query.taskId;
  1614. this.getlistProjectPoolIdNewApproval();
  1615. this.getDetail();
  1616. if (this.$route.query.activeName) {
  1617. this.activeName = this.$route.query.activeName;
  1618. }
  1619. this.openMeetingPage(this.id,'LX');
  1620. },
  1621. methods: {
  1622. handleClick(tab, event) {
  1623. let that = this;
  1624. if (this.activeName === "0") {
  1625. // 项目立项
  1626. //this.getMettingId("LX");
  1627. this.getlistProjectPoolIdNewApproval();
  1628. } else if (this.activeName === "1") {
  1629. // 项目报备
  1630. this.getDetail();
  1631. }
  1632. },
  1633. // 获取立项申请
  1634. getlistProjectPoolIdNewApproval() {
  1635. let that = this;
  1636. getApprovalInfo(this.$route.query.pInstId).then((response) => {
  1637. if (response && response.data) {
  1638. that.formLXApply = response.data;
  1639. // 接口返回值存在(非 undefined/null)则用接口值,否则用 '0'
  1640. that.formLXApply.needMeeting = response.data.needMeeting || '0';
  1641. if(response.data.taskDefKey==='decision'){
  1642. //会议投决节点
  1643. this.getMeeting();
  1644. this.formType=1;
  1645. }else if(response.data.taskDefKey==='president'||response.data.taskDefKey === "file"){
  1646. //总裁室
  1647. this.getMeeting();
  1648. this.getSelectMeetingId();
  1649. this.formType=2;
  1650. }
  1651. setTimeout(() => {
  1652. that.$refs.fileItemLXApply1.handleButton();
  1653. that.$refs.fileItemLXApply1.fileList = [];
  1654. that.$refs.fileItemLXApply1.getListFileBusinessId(
  1655. that.formLXApply.id
  1656. );
  1657. }, 300);
  1658. }
  1659. });
  1660. },
  1661. //项目报备
  1662. getDetail() {
  1663. getPool(this.id).then((response) => {
  1664. this.detailInfo = response.data;
  1665. // 项目退出完成n
  1666. if (response.data.projectState === "n") {
  1667. this.active = parseInt(response.data.projectStage);
  1668. } else {
  1669. this.active = parseInt(response.data.projectStage) - 1;
  1670. }
  1671. });
  1672. },
  1673. //会议详情
  1674. openMeetingPage(projectId, meetingType) {
  1675. let that = this;
  1676. //this.fileList = [];
  1677. this.showAllType = this.type === "3";
  1678. this.meetingTypeDisabled = false;
  1679. this.selectValues = null;
  1680. this.selectNameValues = null;
  1681. //this.reset();
  1682. this.meetingForm.promoter = this.user.nickName;
  1683. this.meetingForm.promoterId = this.user.userId;
  1684. if (meetingType) {
  1685. this.meetingType = meetingType;
  1686. this.meetingTypeDisabled = true;
  1687. }
  1688. if (projectId && typeof projectId === "string") {
  1689. this.pageType = "1";
  1690. }
  1691. // 直接绑定好项目
  1692. if (this.pageType === "1") {
  1693. let projectItemMessage = this.$store.getters.projectItemMessage;
  1694. this.meetingForm.projectPoolId = projectItemMessage.id;
  1695. this.meetingForm.projectName = projectItemMessage.projectName;
  1696. this.meetingForm.projectStage = projectItemMessage.projectStage;
  1697. this.meetingForm.projectGroup = projectItemMessage.projectGroup;
  1698. this.meetingForm.meetingType = this.meetingType;
  1699. }
  1700. //this.$refs.fileItems.fileList = [];
  1701. //如果已经有会议信息的进行回显
  1702. /*if(this.meetingForm.id!=null) {*/
  1703. getMeetingInfo(this.$route.query.pInstId).then((response) => {
  1704. if(response.data) {
  1705. this.meetingForm = response.data;
  1706. this.meetingForm.projectName = response.data.tProjectPool.projectName;
  1707. this.meetingForm.projectStage = response.data.tProjectPool.projectStage;
  1708. this.meetingForm.projectGroup = response.data.tProjectPool.projectGroup;
  1709. //this.openDetail = true;
  1710. this.selectValues = response.data.participantsId;
  1711. this.selectNameValues = response.data.participants;
  1712. /* setTimeout(() => {
  1713. this.$refs.fileItems.fileList = [];
  1714. this.$refs.fileItems.getListFileBusinessId(response.data.id);
  1715. //this.$refs.fileItems.handleButton();
  1716. }, 300);*/
  1717. }
  1718. });
  1719. /* }*/
  1720. },
  1721. //会议投决
  1722. getMeeting(){
  1723. getMeetingInfo(this.$route.query.pInstId).then((response) => {
  1724. this.form1 = response.data;
  1725. this.form1.projectPoolId = response.data.projectPoolId;
  1726. this.form1.projectName = response.data.tProjectPool.projectName;
  1727. this.form1.projectStage = response.data.tProjectPool.projectStage;
  1728. this.scoreForm.projectPoolId = response.data.projectPoolId;
  1729. this.scoreForm.projectName = response.data.tProjectPool.projectName;
  1730. // 打分人
  1731. this.scoreForm.scoringPerson = this.user.userId;
  1732. // 项目负责人
  1733. this.scoreForm.investCommissioner = response.data.tProjectPool.investHead;
  1734. this.collectForm.investCommissioner =
  1735. response.data.tProjectPool.investHead;
  1736. this.scoreForm.meetingId = response.data.id;
  1737. /*setTimeout(() => {
  1738. this.$refs.fileItems.fileList = [];
  1739. this.$refs.fileItems.getListFileBusinessId();
  1740. this.$refs.fileItems.handleButton();
  1741. }, 300);*/
  1742. });
  1743. },
  1744. //总裁室
  1745. // 根据会议ID查询汇总分数和平均分数
  1746. getSelectMeetingId() {
  1747. getSumScore(this.$route.query.pInstId).then((response) => {
  1748. this.collectForm = response.data;
  1749. this.collectForm.investCommissioner = this.scoreForm.investCommissioner;
  1750. });
  1751. },
  1752. //显示用户信息
  1753. handleSelectPeople(number) {
  1754. // this.userVisible = true;
  1755. if(number===1){
  1756. this.openLXApply=true;
  1757. this.openHYApply=false;
  1758. }else if(number===2){
  1759. this.openLXApply=false;
  1760. this.openHYApply=true;
  1761. }
  1762. this.$refs.flowUser.handleUserVisible(true);
  1763. },
  1764. // 用户选中数据
  1765. handleUserSelect(selection) {
  1766. const that = this;
  1767. if (selection && selection[0]) {
  1768. let form;
  1769. if(this.openLXApply) {
  1770. form = this.formLXApply;
  1771. } else if (this.openHYApply) {
  1772. form = this.meetingForm;
  1773. }
  1774. if (selection instanceof Array) {
  1775. const userIds = selection.map((item) => item.userId);
  1776. const nickName = selection.map((item) => item.nickName);
  1777. form.participants = nickName.join(",");
  1778. form.participantsId = userIds.join(",");
  1779. this.selectNameValues = nickName.join(",");
  1780. this.selectValues = userIds.join(",");
  1781. } else {
  1782. form.participants = selection.nickName;
  1783. form.participantsId = selection.userId;
  1784. this.selectNameValues = selection.nickName;
  1785. this.selectValues = selection.userId;
  1786. }
  1787. // this.$refs.meetingForm.clearValidate(["participants"]);
  1788. // this.$refs.formLXApply.clearValidate(["participants"]);
  1789. }
  1790. },
  1791. // 获取公司信息
  1792. getProjectInfo(info) {
  1793. if (info.length > 0) {
  1794. //console.log("info=", info);
  1795. this.form.projectPoolId = info[0].id;
  1796. this.form.projectName = info[0].projectName;
  1797. this.form.projectStage = info[0].projectStage;
  1798. this.form.projectState = info[0].projectState;
  1799. if (info[0].tProjectChannel && info[0].tProjectChannel.channelGroup) {
  1800. this.form.projectGroup = info[0].tProjectChannel.channelGroup;
  1801. } else {
  1802. this.form.projectGroup = "";
  1803. }
  1804. this.$refs.form.clearValidate(["projectName"]);
  1805. }
  1806. },
  1807. //展示人员
  1808. handleProjectItem() {
  1809. this.$refs.projectItem.showProjectItem = true;
  1810. },
  1811. getDeptUserInfo(info) {
  1812. if (info.length > 0) {
  1813. this.meetingForm.promoter = info[0].nickName;
  1814. this.meetingForm.promoterId = info[0].userId.toString();
  1815. this.$refs.meetingForm.clearValidate(["promoter"]);
  1816. }
  1817. },
  1818. // flag 区分同意(true)和驳回(false)
  1819. // isTerminate , 区分是否:终止(1)和观望(0)
  1820. /** 加载审批任务弹框 */
  1821. handleComplete(flag,isTerminate) {
  1822. this.taskComplete(flag,isTerminate);
  1823. },
  1824. /** 用户审批任务 */
  1825. taskComplete(flag,isTerminate) {
  1826. let allValid = true;
  1827. if(this.formLXApply.taskDefKey==="meeting") {//发起会议节点
  1828. this.formLXApply.listFile = this.fileListLXApply;
  1829. this.meetingForm.listFile = this.fileList;
  1830. if (!this.formLXApply.participants) {
  1831. this.$modal.msgError("请选择立项审批人!");
  1832. return;
  1833. }
  1834. if (this.formLXApply.needMeeting==='1') {
  1835. this.$refs["meetingForm"].validate((valid) => {
  1836. if (!valid) {
  1837. allValid = false;
  1838. return;
  1839. }
  1840. })
  1841. }
  1842. }else if(this.formLXApply.taskDefKey==="decision"){//会议投决
  1843. this.$refs["scoreForm"].validate((valid) => {
  1844. if (!valid) {
  1845. allValid = false;
  1846. // 4. 评审表校验失败:切换标签 + 提示
  1847. this.activeTab = 'review'; // 切换到评审表标签
  1848. this.$message.error('项目立项评估评审表未填写完整,请检查!');
  1849. return;
  1850. }
  1851. })
  1852. }
  1853. if (!flag&&!this.flowBaseInfo.comment) {
  1854. this.$modal.msgError("请输入审批意见!");
  1855. return;
  1856. }
  1857. //会议人
  1858. this.formLXApply.flag=flag;
  1859. this.formLXApply.isTerminate=isTerminate;
  1860. const params={
  1861. projectApproval: this.formLXApply, // 拆分明确字段
  1862. projectMeeting: this.meetingForm,
  1863. projectScoring: this.scoreForm,
  1864. flowBaseInfo: this.flowBaseInfo
  1865. }
  1866. if(allValid) {
  1867. try{
  1868. approvalComplete(params).then(response => {
  1869. this.$modal.msgSuccess(response.msg);
  1870. this.$store.dispatch("getMyTaskApprovalNumber"); //更新代办数量
  1871. this.goMyTask();
  1872. });
  1873. } catch (err) {
  1874. // 捕获重复提交错误
  1875. this.$message.error(err.message);
  1876. }
  1877. }
  1878. },
  1879. /*返回*/
  1880. goBack() {
  1881. this.$router.go(-1);
  1882. },
  1883. //跳转到我的任务-投资机会
  1884. goMyTask(){
  1885. //this.$router.push({ path: "/myTask/project/approval/myTask"});
  1886. // 关闭当前标签页并返回指定页面
  1887. const obj = { path: "/myTask/project/approval/myTask", query: { t: Date.now()} };
  1888. this.$tab.closeOpenPage(obj);
  1889. },
  1890. // 立项申请附件回显
  1891. getFileListLXApply(fileList) {
  1892. this.fileListLXApply = fileList;
  1893. if (fileList && fileList.length > 0) {
  1894. this.$refs.formLXApply.clearValidate(["listFile"]);
  1895. } else {
  1896. this.fileListLXApply = [];
  1897. }
  1898. },
  1899. // 会议申请附件回显
  1900. getFileList(fileList) {
  1901. if (fileList && fileList.length > 0) {
  1902. this.fileList = fileList;
  1903. } else {
  1904. this.fileList = [];
  1905. }
  1906. },
  1907. },
  1908. };
  1909. </script>
  1910. <style lang="scss" scoped>
  1911. .detailWrapper {
  1912. padding: 20px 0;
  1913. width: 92%;
  1914. margin: 0 auto;
  1915. .section1 {
  1916. p {
  1917. font-size: 24px;
  1918. font-weight: bold;
  1919. margin: 0;
  1920. }
  1921. > div:first-child {
  1922. // width: calc(100% - 700px);
  1923. width: 100%;
  1924. }
  1925. .btnList {
  1926. width: 700px;
  1927. display: flex;
  1928. justify-content: flex-end;
  1929. }
  1930. }
  1931. .basicsInfo {
  1932. font-size: 14px;
  1933. background: #f1f1f1;
  1934. margin-top: -24px;
  1935. width: 100%;
  1936. padding: 30px 20px 10px;
  1937. div {
  1938. color: #7e7d7d;
  1939. }
  1940. p {
  1941. font-size: 16px;
  1942. color: #333;
  1943. font-weight: bold;
  1944. }
  1945. }
  1946. .section3 {
  1947. margin-top: 40px;
  1948. }
  1949. .btnList {
  1950. display: flex;
  1951. justify-content: flex-end;
  1952. /* 让内部元素(按钮)整体靠右 */
  1953. gap: 10px; /* 替代 margin,给按钮之间加间距,可选 */
  1954. }
  1955. }
  1956. .projectNameTit {
  1957. }
  1958. .alreadyStop {
  1959. font-weight: normal;
  1960. font-size: 12px;
  1961. background: #ff0000;
  1962. color: #fff;
  1963. border-radius: 5px;
  1964. padding: 5px 10px;
  1965. margin-left: 10px;
  1966. }
  1967. /*表格样式开始*/
  1968. .ss_scoreTable {
  1969. padding-bottom: 50px;
  1970. ::v-deep .el-input.is-disabled .el-input__inner {
  1971. background-color: #fff !important;
  1972. color: #606266;
  1973. }
  1974. ::v-deep .el-input__inner {
  1975. border: 1px solid transparent;
  1976. text-align: center;
  1977. }
  1978. ::v-deep.el-textarea__inner {
  1979. border: none;
  1980. height: 50px;
  1981. resize: none;
  1982. }
  1983. ::v-deep .el-textarea.is-disabled .el-textarea__inner {
  1984. background-color: #fff !important;
  1985. }
  1986. textarea:disabled,
  1987. input:disabled {
  1988. background-color: #fff !important;
  1989. }
  1990. // ::v-deep .el-textarea__inner {
  1991. // // border: 1px solid transparent!important;
  1992. // }
  1993. table {
  1994. // width:80%;
  1995. // width: 600px;
  1996. margin: 0 30px;
  1997. -moz-user-select: none;
  1998. -webkit-user-select: none;
  1999. -ms-user-select: none;
  2000. -khtml-user-selece: none;
  2001. /*上面都是兼容性问题,具体看浏览器版本或什么浏览器*/
  2002. user-select: none; /*内容禁止选中*/
  2003. }
  2004. tbody td {
  2005. font-size: 14px;
  2006. }
  2007. thead th,
  2008. .big-font {
  2009. font-size: 16px !important;
  2010. font-weight: bold;
  2011. }
  2012. .public-pedded-0 {
  2013. padding: 0;
  2014. }
  2015. .text-center {
  2016. text-align: center;
  2017. }
  2018. .text-left {
  2019. text-align: left;
  2020. }
  2021. .table-textarea {
  2022. width: 100%;
  2023. // width: 180px;
  2024. border: none;
  2025. height: 50px;
  2026. resize: none;
  2027. }
  2028. .table-input {
  2029. width: 100%;
  2030. // width: 100%;
  2031. // height: 80px;
  2032. border: none;
  2033. font-size: 20px;
  2034. font-weight: bold;
  2035. text-align: center;
  2036. margin-top: 20px;
  2037. }
  2038. .bg-blue,
  2039. .specificTr > th:nth-child(2n-1) {
  2040. background-color: #9bc2e6;
  2041. }
  2042. .specificTr > th:nth-child(2n-1) {
  2043. white-space: nowrap;
  2044. padding: 0 15px;
  2045. }
  2046. .specificTr .table-textarea {
  2047. padding-top: 16px;
  2048. background-color: #fff;
  2049. }
  2050. tr > th {
  2051. height: 50px;
  2052. }
  2053. input:disabled {
  2054. // background-color: #fff !important;
  2055. }
  2056. .btnList {
  2057. width: 100%;
  2058. display: flex;
  2059. justify-content: center;
  2060. padding-bottom: 40px;
  2061. margin-top: 30px;
  2062. }
  2063. }
  2064. </style>