ContentMask.vue 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513
  1. <script setup>
  2. import { computed } from 'vue'
  3. // 三个类型的遮罩 free-max、proposed、purchase
  4. /**
  5. * if(!canRead){
  6. * sourceKey="jyarticle_see3_plus_pc"
  7. * }
  8. * if (subType == '拟建') {
  9. * sourceKey = 'article_proposed_project'
  10. * }
  11. * if (subType == '采购意向') {
  12. * sourceKey = 'article_purchase_intention'
  13. * }
  14. */
  15. const props = defineProps({
  16. type: {
  17. type: String,
  18. default: ''
  19. }
  20. })
  21. const nowActiveMaskType = computed(() => {
  22. return props.type
  23. })
  24. </script>
  25. <template>
  26. <div
  27. class="content-mask-container com-prebuilt"
  28. v-if="nowActiveMaskType"
  29. :class="nowActiveMaskType"
  30. style="position: relative"
  31. >
  32. <div
  33. v-if="nowActiveMaskType === 'proposed'"
  34. class="mask-zz"
  35. style="
  36. position: absolute;
  37. width: 100%;
  38. padding: 0;
  39. height: 408px;
  40. background-color: white;
  41. z-index: 1;
  42. "
  43. >
  44. <img
  45. style="width: 100%; height: 100%; margin-top: 27px"
  46. src="@/assets/images/article-mask/pc_mh.png"
  47. />
  48. <div
  49. class="mask-zz"
  50. style="
  51. position: absolute;
  52. left: 50%;
  53. top: 50%;
  54. margin-top: -184px;
  55. margin-left: -320px;
  56. width: 650px;
  57. height: 220px;
  58. background-color: white;
  59. z-index: 10;
  60. border-radius: 10px;
  61. "
  62. >
  63. <div style="position: relative">
  64. <img
  65. style="width: 100%; height: 128px"
  66. src="@/assets/images/article-mask/pc-cq-mmt.png"
  67. />
  68. <div
  69. id="tip-title"
  70. style="
  71. position: absolute;
  72. top: 50%;
  73. left: 50%;
  74. margin-top: -38px;
  75. transform: translateX(-50%);
  76. height: 26px;
  77. color: antiquewhite;
  78. font-size: 14px;
  79. "
  80. >
  81. 超前项目抢先知,中标更容易
  82. </div>
  83. </div>
  84. <div class="tip-box">
  85. <div
  86. class="tip-box-example"
  87. style="width: 602px; height: 357px; margin-top: -88px; z-index: 9"
  88. >
  89. <img
  90. style="width: 100%; height: 100%"
  91. src="@/assets/images/article-mask/pc-nj-example.png"
  92. alt=""
  93. />
  94. </div>
  95. <div class="tip-text" style="margin-top: 12px">
  96. 提前3-12个月获取审批中的新项目,超前项目抢先介入,商机提前掌控。
  97. </div>
  98. <button
  99. class="detail-nj-btn"
  100. style="
  101. background: #2cb7ca;
  102. color: white;
  103. border: none;
  104. width: 132px;
  105. height: 36px;
  106. border-radius: 6px;
  107. margin-bottom: 20px;
  108. margin-top: 24px;
  109. "
  110. @click="$emit('doOpenCollect', 'article_proposed_project')"
  111. >
  112. 点击体验
  113. </button>
  114. </div>
  115. </div>
  116. </div>
  117. <div
  118. v-if="nowActiveMaskType === 'purchase'"
  119. class="mask-zzz"
  120. style="padding: 0; height: 408px; background-color: white; z-index: 1"
  121. >
  122. <img
  123. style="width: 100%; height: 100%"
  124. src="@/assets/images/article-mask/pc_mh.png"
  125. />
  126. <div
  127. class="mask-zzz"
  128. style="
  129. position: absolute;
  130. left: 50%;
  131. top: 50%;
  132. transform: translate3d(-50%, -50%, 0);
  133. width: 500px;
  134. background-color: white;
  135. z-index: 10;
  136. border-radius: 10px;
  137. "
  138. >
  139. <div style="position: relative">
  140. <img
  141. style="width: 100%; height: 35%"
  142. src="@/assets/images/article-mask/pc_zzt.png"
  143. />
  144. <div
  145. style="
  146. position: absolute;
  147. top: 50%;
  148. left: 50%;
  149. transform: translate3d(-50%, -50%, 0);
  150. height: 26px;
  151. color: antiquewhite;
  152. font-size: 16px;
  153. "
  154. >
  155. 项目提前介入,中标更轻松
  156. </div>
  157. </div>
  158. <div class="tip-box">
  159. <div class="tip-text">
  160. 提前1-3个月获取项目信息,及早介入准备更充分
  161. </div>
  162. <button
  163. class="detail-nj-btn"
  164. style="
  165. background: #2cb7ca;
  166. color: white;
  167. border: none;
  168. width: 132px;
  169. height: 36px;
  170. border-radius: 6px;
  171. margin-bottom: 12px;
  172. margin-top: 10px;
  173. "
  174. @click="$emit('doOpenCollect', 'article_purchase_intention')"
  175. >
  176. 点击体验
  177. </button>
  178. </div>
  179. </div>
  180. </div>
  181. <div
  182. v-if="nowActiveMaskType === 'free-max'"
  183. class="mask-zzz free-equity-mask"
  184. style="
  185. top: 0;
  186. padding: 0;
  187. height: 587px;
  188. background-color: white;
  189. z-index: 1;
  190. "
  191. >
  192. <img
  193. style="width: 100%; height: 100%"
  194. src="@/assets/images/article-mask/pc_mh.png"
  195. />
  196. <div
  197. class="mask-zzz"
  198. style="
  199. position: absolute;
  200. left: 50%;
  201. top: 50%;
  202. transform: translate3d(-50%, -50%, 0);
  203. width: 632px;
  204. background-color: white;
  205. z-index: 10;
  206. border-radius: 10px;
  207. "
  208. >
  209. <div style="position: relative">
  210. <img
  211. style="width: 100%; height: 35%; border-radius: 10px 10px 0 0"
  212. src="@/assets/images/article-mask/pc_zzt_new.jpg"
  213. />
  214. <div
  215. style="
  216. position: absolute;
  217. top: 50%;
  218. left: 50%;
  219. margin-top: -13px;
  220. width: 100%;
  221. height: 26px;
  222. color: #1d1d1d;
  223. font-size: 18px;
  224. transform: translateX(-50%);
  225. text-align: center;
  226. "
  227. >
  228. 您尚未完善信息,今日查看公告权限用完啦
  229. </div>
  230. </div>
  231. <div
  232. class="tip-box"
  233. style="padding: 12px 32px 32px; border: 0; border-radius: 0 0 8px 8px"
  234. >
  235. <!-- <div class="tip-text">请完善个人信息,获取更多免费查看公告权限</div>
  236. <button class="detail-nj-btn jyarticle_see3" style="background: #2CB7CA;color: white;border:none;width: 132px;height: 36px;border-radius: 6px;margin-bottom: 12px;margin-top: 10px">立即解锁</button> -->
  237. <div class="free-equity-contrast" style="display: flex">
  238. <div class="table-columns">
  239. <div class="item-td"></div>
  240. <div class="item-td">标讯权益</div>
  241. <div class="item-td">超前项目权益</div>
  242. <div class="item-td">每日查看数量</div>
  243. <div class="item-td"></div>
  244. </div>
  245. <div class="table-columns">
  246. <div class="item-td">
  247. <strong
  248. style="font-size: 14px; line-height: 22px; color: #1d1d1d"
  249. >免费注册用户</strong
  250. >
  251. </div>
  252. <div
  253. class="item-td"
  254. style="
  255. border-right: 0;
  256. align-items: flex-start;
  257. padding-left: 16px;
  258. "
  259. >
  260. 可查看招标预告、招标公告、招标结果、招标信用信息
  261. </div>
  262. <div class="item-td">
  263. <img
  264. src="@/assets/images/article-mask/icon-aaa.png"
  265. alt=""
  266. width="24"
  267. height="24"
  268. />
  269. </div>
  270. <div class="item-td">3条</div>
  271. <div class="item-td"></div>
  272. </div>
  273. <div class="table-columns">
  274. <div class="item-td main-bg">
  275. <strong>免费注册用户</strong
  276. ><span style="font-size: 12px">(完善信息)</span>
  277. </div>
  278. <div
  279. class="item-td"
  280. style="border-right: 0; align-items: flex-end"
  281. ></div>
  282. <div class="item-td">
  283. <img
  284. src="@/assets/images/article-mask/icon-aaa.png"
  285. alt=""
  286. width="24"
  287. height="24"
  288. />
  289. </div>
  290. <div class="item-td main-color">不限</div>
  291. <div class="item-td">
  292. <span
  293. class="detail-nj-btn jyarticle_see3 perfect-btn"
  294. @click="
  295. $emit('doOpenCollect', {
  296. source: 'jyarticle_see3_plus_pc',
  297. reload: true
  298. })
  299. "
  300. >完善个人信息</span
  301. >
  302. </div>
  303. </div>
  304. <div class="table-columns">
  305. <div class="item-td gold-bg">
  306. <strong>大会员</strong>
  307. <span style="font-size: 12px; line-height: 18px"
  308. >大数据赋能企业数字化营销</span
  309. >
  310. <a
  311. href="/big/page/index"
  312. target="_blank"
  313. style="
  314. font-size: 12px;
  315. text-decoration: underline;
  316. color: rgba(89, 57, 19, 1);
  317. "
  318. >全面了解></a
  319. >
  320. </div>
  321. <div
  322. class="item-td"
  323. style="border-right: 0; align-items: flex-start"
  324. ></div>
  325. <div class="item-td gold-color">
  326. 采购意向
  327. <br />
  328. 拟建项目
  329. <br />
  330. AI智能预测
  331. </div>
  332. <div class="item-td gold-color">不限</div>
  333. <div class="item-td gold-color">
  334. <span
  335. class="free-taste-btn"
  336. @click="$emit('doOpenCollect', 'pc_article_member_freeuse')"
  337. >免费体验</span
  338. >
  339. <span
  340. class="open-customer contact-kf"
  341. @click="$emit('doOpenCustomer')"
  342. >咨询客服</span
  343. >
  344. </div>
  345. </div>
  346. </div>
  347. </div>
  348. </div>
  349. </div>
  350. </div>
  351. </template>
  352. <style lang="scss" scoped>
  353. .content-mask-container {
  354. &.proposed {
  355. height: 620px;
  356. background-color: #fff;
  357. }
  358. &.purchase {
  359. }
  360. &.free-max {
  361. }
  362. .tip-box {
  363. display: flex;
  364. flex-direction: column;
  365. justify-content: center;
  366. align-items: center;
  367. padding: 20px 35px;
  368. background: #ffffff;
  369. box-shadow: 0px 0px 28px 1px rgba(0, 0, 0, 0.07999999821186066);
  370. border-radius: 8px 8px 8px 8px;
  371. border: 1px solid #ececec;
  372. }
  373. .tip-text {
  374. font-size: 16px;
  375. font-weight: 400;
  376. color: #1d1d1d;
  377. line-height: 24px;
  378. }
  379. .free-equity-contrast {
  380. display: flex;
  381. width: 100%;
  382. border: 1px solid #ececec;
  383. border-radius: 8px;
  384. }
  385. .free-equity-contrast .gold-bg {
  386. border-radius: 0 8px 0 0;
  387. border-right: 0;
  388. }
  389. .table-columns:nth-child(1) {
  390. width: 116px;
  391. }
  392. .table-columns:nth-child(2) {
  393. width: 116px;
  394. color: #686868;
  395. }
  396. .table-columns:nth-child(3) {
  397. width: 154px;
  398. color: #686868;
  399. }
  400. .table-columns:nth-child(4) {
  401. width: 184px;
  402. color: #686868;
  403. }
  404. .table-columns .item-td {
  405. display: flex;
  406. flex-direction: column;
  407. align-items: center;
  408. justify-content: center;
  409. border-bottom: 1px solid #ececec;
  410. border-right: 1px solid #ececec;
  411. white-space: nowrap;
  412. transition: all 0.5s ease;
  413. text-align: center;
  414. }
  415. .table-columns:nth-child(3):hover .item-td:nth-child(1),
  416. .table-columns:nth-child(4):hover .item-td:nth-child(1) {
  417. margin-top: -12px;
  418. height: 84px;
  419. border-radius: 8px 8px 0 0;
  420. transition: all 0.5s ease;
  421. overflow: hidden;
  422. }
  423. .table-columns:nth-child(3):hover .item-td:nth-child(5),
  424. .table-columns:nth-child(4):hover .item-td:nth-child(5) {
  425. margin-bottom: -12px;
  426. height: 84px;
  427. border-radius: 0 0 8px 8px;
  428. background: #fff;
  429. box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
  430. transition: all 0.5s ease;
  431. }
  432. .table-columns .item-td:nth-child(1) {
  433. height: 72px;
  434. }
  435. .table-columns .item-td:nth-child(2) {
  436. height: 48px;
  437. }
  438. .table-columns .item-td:nth-child(3) {
  439. height: 82px;
  440. }
  441. .table-columns .item-td:nth-child(4) {
  442. height: 48px;
  443. }
  444. .table-columns .item-td:nth-child(5) {
  445. height: 72px;
  446. border-bottom: 0;
  447. }
  448. .table-columns:nth-child(4) .item-td {
  449. border-right: 0;
  450. }
  451. .table-columns:nth-child(1) .item-td,
  452. .table-columns:nth-child(2) .item-td:nth-child(1) {
  453. background: #f7f9fc;
  454. }
  455. .free-equity-contrast .item-td strong {
  456. font-weight: 700;
  457. font-size: 16px;
  458. line-height: 22px;
  459. }
  460. .free-equity-contrast .item-td.main-bg {
  461. background: #2cb7ca;
  462. color: #fff;
  463. }
  464. .free-equity-contrast .item-td.gold-bg {
  465. color: #593913;
  466. background: linear-gradient(to right, #fff3e0, #f4deb1);
  467. }
  468. .free-equity-contrast .item-td.main-color {
  469. color: #2cb7ca;
  470. }
  471. .free-equity-contrast .item-td.gold-color {
  472. color: #b1700e;
  473. }
  474. .free-equity-contrast .perfect-btn {
  475. display: inline-block;
  476. padding: 5px 14px;
  477. background: #2abed1;
  478. border-radius: 6px;
  479. color: #fff;
  480. font-size: 14px;
  481. line-height: 22px;
  482. text-align: center;
  483. cursor: pointer;
  484. }
  485. .free-equity-contrast .free-taste-btn {
  486. display: inline-block;
  487. padding: 5px 28px;
  488. border: 1px solid #e7c28a;
  489. background: linear-gradient(to right, #fff9f0, #fef0d7);
  490. color: #b1700e;
  491. font-size: 14px;
  492. text-align: center;
  493. border-radius: 6px;
  494. cursor: pointer;
  495. }
  496. .free-equity-contrast .contact-kf {
  497. margin-top: 2px;
  498. text-decoration: underline;
  499. color: #b1700e;
  500. font-size: 12px;
  501. line-height: 18px;
  502. cursor: pointer;
  503. }
  504. }
  505. </style>