index.vue 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011
  1. <template>
  2. <view style="padding-bottom: 300rpx;">
  3. <!-- 用户端 -->
  4. <block v-if="userType==1">
  5. <view class="bgTop flex justify-center">
  6. <view class="bgTop-box">
  7. <view class="bgTop-box-top flex justify-center align-center">
  8. <view class="bgTop-box-top-box flex justify-between align-center">
  9. <view class="bgTop-box-top-box-l">
  10. <view class="bgTop-box-top-box-l-t">
  11. {{isVip==true?'已开通会员':'开通会员'}}
  12. </view>
  13. <view class="bgTop-box-top-box-l-c">
  14. 提升简历曝光
  15. </view>
  16. <view class="bgTop-box-top-box-l-b">
  17. {{isVip==true?'到期时间:'+dataTime:'开通会员更多招聘方联系你'}}
  18. </view>
  19. </view>
  20. <view class="bgTop-box-top-box-r">
  21. <image src="../../static/images/my/icon/vip5.png" mode=""></image>
  22. </view>
  23. </view>
  24. </view>
  25. <view class="bgTop-box-btn flex justify-around">
  26. <view class="bgTop-box-btn-item">
  27. <image src="../../static/images/my/icon/btn1.png" mode=""></image>
  28. <view class="bgTop-box-btn-item-t">
  29. 专属客服
  30. </view>
  31. </view>
  32. <view class="bgTop-box-btn-item">
  33. <image src="../../static/images/my/icon/btn2.png" mode=""></image>
  34. <view class="bgTop-box-btn-item-t">
  35. 优先提醒
  36. </view>
  37. </view>
  38. <view class="bgTop-box-btn-item">
  39. <image src="../../static/images/my/icon/btn3.png" mode=""></image>
  40. <view class="bgTop-box-btn-item-t">
  41. 简历刷新
  42. </view>
  43. </view>
  44. <view class="bgTop-box-btn-item">
  45. <image src="../../static/images/my/icon/btn4.png" mode=""></image>
  46. <view class="bgTop-box-btn-item-t">
  47. 简历置顶
  48. </view>
  49. </view>
  50. </view>
  51. </view>
  52. </view>
  53. <view class="icon flex justify-center align-start">
  54. <u-icon name="arrow-up-fill" color="#ffffff" size="50"></u-icon>
  55. </view>
  56. <view class="bgc"></view>
  57. <view class="bgb flex justify-center">
  58. <view class="bgb-c flex justify-center">
  59. <view class="bgb-c-n">
  60. <view class="bgb-c-n-title flex justify-between align-center">
  61. <view class="bgb-c-n-title-l bgb-c-n-titles">
  62. 专属特权
  63. </view>
  64. <view class="bgb-c-n-title-c bgb-c-n-titles">
  65. 普通用户
  66. </view>
  67. <view class="bgb-c-n-title-r bgb-c-n-titles">
  68. VIP
  69. </view>
  70. </view>
  71. <view class="bgb-c-n-title flex justify-between align-center">
  72. <view class="bgb-c-n-title-l bgb-c-n-titles">
  73. 简历刷新
  74. </view>
  75. <view class="bgb-c-n-title-c bgb-c-n-titles">
  76. {{noVipNum}}次/天
  77. </view>
  78. <view class="bgb-c-n-title-r bgb-c-n-titles">
  79. {{vipNum}}次/天
  80. </view>
  81. </view>
  82. <view class="bgb-c-n-title flex justify-between align-center">
  83. <view class="bgb-c-n-title-l bgb-c-n-titles">
  84. 优先提醒
  85. </view>
  86. <view class="bgb-c-n-title-c bgb-c-n-titles">
  87. ×
  88. </view>
  89. <view class="bgb-c-n-title-r bgb-c-n-titles">
  90. </view>
  91. </view>
  92. <view class="bgb-c-n-title flex justify-between align-center">
  93. <view class="bgb-c-n-title-l bgb-c-n-titles">
  94. 专属客服
  95. </view>
  96. <view class="bgb-c-n-title-c bgb-c-n-titles">
  97. ×
  98. </view>
  99. <view class="bgb-c-n-title-r bgb-c-n-titles">
  100. </view>
  101. </view>
  102. <view class="bgb-c-n-title flex justify-between align-center">
  103. <view class="bgb-c-n-title-l bgb-c-n-titles">
  104. 视频面试
  105. </view>
  106. <view class="bgb-c-n-title-c bgb-c-n-titles">
  107. ×
  108. </view>
  109. <view class="bgb-c-n-title-r bgb-c-n-titles">
  110. </view>
  111. </view>
  112. <view class="bgb-c-n-title flex justify-between align-center">
  113. <view class="bgb-c-n-title-l bgb-c-n-titles">
  114. 语音沟通
  115. </view>
  116. <view class="bgb-c-n-title-c bgb-c-n-titles">
  117. ×
  118. </view>
  119. <view class="bgb-c-n-title-r bgb-c-n-titles">
  120. </view>
  121. </view>
  122. <view class="bgb-c-n-title flex justify-between align-center">
  123. <view class="bgb-c-n-title-l bgb-c-n-titles">
  124. 简历置顶
  125. </view>
  126. <view class="bgb-c-n-title-c bgb-c-n-titles">
  127. ×
  128. </view>
  129. <view class="bgb-c-n-title-r bgb-c-n-titles">
  130. </view>
  131. </view>
  132. </view>
  133. </view>
  134. </view>
  135. <view class="btn flex justify-center align-start flex-wrap" v-if="isVip==false">
  136. <view class="" style="width: 686rpx;padding-left: 20rpx;">
  137. <view class="flex align-center" style="width: 100%;">
  138. <u-checkbox size="28rpx" v-model="checked" shape="circle">
  139. <view class="flex align-center">开通即同意<navigator style="color: #00B88F;"
  140. url="/my/setting/weekXiYi" open-type="navigate">《会员开通协议》</navigator>
  141. </view>
  142. </u-checkbox>
  143. </view>
  144. </view>
  145. <view class="btn-c flex align-center justify-between">
  146. <view class="btn-c-l flex align-center">
  147. <text>{{vipPrice}}</text>
  148. <text>元/月</text>
  149. </view>
  150. <view class="btn-c-r flex justify-center align-center" @click="submit()">
  151. 立即购买
  152. </view>
  153. </view>
  154. </view>
  155. </block>
  156. <block v-else>
  157. <view class="bgTop flex justify-center">
  158. <view class="bgTop-box">
  159. <view class="bgTop-box-top flex justify-center align-center">
  160. <view class="bgTop-box-top-box flex justify-between align-center">
  161. <view class="bgTop-box-top-box-l">
  162. <view class="bgTop-box-top-box-l-t">
  163. {{isVipC==true?'已开通会员':'开通会员'}}
  164. </view>
  165. <view class="bgTop-box-top-box-l-c">
  166. 提升岗位曝光
  167. </view>
  168. <view class="bgTop-box-top-box-l-b">
  169. {{isVipC==true?'到期时间:'+dataTimeC:'开通会员更多求职者联系你'}}
  170. </view>
  171. </view>
  172. <view class="bgTop-box-top-box-r">
  173. <image src="../../static/images/my/icon/vip5.png" mode=""></image>
  174. </view>
  175. </view>
  176. </view>
  177. <view class="bgTop-box-btn flex justify-around">
  178. <view class="bgTop-box-btn-item">
  179. <image src="../../static/images/my/icon/btn1.png" mode=""></image>
  180. <view class="bgTop-box-btn-item-t">
  181. 专属客服
  182. </view>
  183. </view>
  184. <view class="bgTop-box-btn-item">
  185. <image src="../../static/images/my/icon/btn2.png" mode=""></image>
  186. <view class="bgTop-box-btn-item-t">
  187. 优先推荐
  188. </view>
  189. </view>
  190. <view class="bgTop-box-btn-item">
  191. <image src="../../static/images/my/icon/btn3.png" mode=""></image>
  192. <view class="bgTop-box-btn-item-t">
  193. 招聘刷新
  194. </view>
  195. </view>
  196. <view class="bgTop-box-btn-item">
  197. <image src="../../static/images/my/icon/btn4.png" mode=""></image>
  198. <view class="bgTop-box-btn-item-t">
  199. 专属特权
  200. </view>
  201. </view>
  202. </view>
  203. </view>
  204. </view>
  205. <view class="icon flex justify-center align-start">
  206. <u-icon name="arrow-up-fill" color="#ffffff" size="50"></u-icon>
  207. </view>
  208. <view class="bgc"></view>
  209. <view class="bgb flex justify-center">
  210. <view class="bgb-c flex justify-center">
  211. <view class="bgb-c-n">
  212. <view class="bgb-c-n-title flex justify-between align-center">
  213. <view class="bgb-c-n-title-l bgb-c-n-titles">
  214. 专属特权
  215. </view>
  216. <view class="bgb-c-n-title-c bgb-c-n-titles">
  217. 普通用户
  218. </view>
  219. <view class="bgb-c-n-title-r bgb-c-n-titles">
  220. VIP
  221. </view>
  222. </view>
  223. <view class="bgb-c-n-title flex justify-between align-center">
  224. <view class="bgb-c-n-title-l bgb-c-n-titles">
  225. 招聘刷新
  226. </view>
  227. <view class="bgb-c-n-title-c bgb-c-n-titles">
  228. {{noVipNumCom}}次/天
  229. </view>
  230. <view class="bgb-c-n-title-r bgb-c-n-titles">
  231. {{vipNumCom}}次/天
  232. </view>
  233. </view>
  234. <view class="bgb-c-n-title flex justify-between align-center">
  235. <view class="bgb-c-n-title-l bgb-c-n-titles">
  236. 优先推荐
  237. </view>
  238. <view class="bgb-c-n-title-c bgb-c-n-titles">
  239. ×
  240. </view>
  241. <view class="bgb-c-n-title-r bgb-c-n-titles">
  242. </view>
  243. </view>
  244. <view class="bgb-c-n-title flex justify-between align-center">
  245. <view class="bgb-c-n-title-l bgb-c-n-titles">
  246. 专属客服
  247. </view>
  248. <view class="bgb-c-n-title-c bgb-c-n-titles">
  249. ×
  250. </view>
  251. <view class="bgb-c-n-title-r bgb-c-n-titles">
  252. </view>
  253. </view>
  254. <view class="bgb-c-n-title flex justify-between align-center">
  255. <view class="bgb-c-n-title-l bgb-c-n-titles">
  256. 视频面试
  257. </view>
  258. <view class="bgb-c-n-title-c bgb-c-n-titles">
  259. ×
  260. </view>
  261. <view class="bgb-c-n-title-r bgb-c-n-titles">
  262. </view>
  263. </view>
  264. <view class="bgb-c-n-title flex justify-between align-center">
  265. <view class="bgb-c-n-title-l bgb-c-n-titles">
  266. 语音沟通
  267. </view>
  268. <view class="bgb-c-n-title-c bgb-c-n-titles">
  269. ×
  270. </view>
  271. <view class="bgb-c-n-title-r bgb-c-n-titles">
  272. </view>
  273. </view>
  274. <view class="bgb-c-n-title flex justify-between align-center">
  275. <view class="bgb-c-n-title-l bgb-c-n-titles">
  276. 免费沟通
  277. </view>
  278. <view class="bgb-c-n-title-c bgb-c-n-titles">
  279. {{msgNum}}次/天
  280. </view>
  281. <view class="bgb-c-n-title-r bgb-c-n-titles">
  282. {{vipMsgNum}}次/天
  283. </view>
  284. </view>
  285. <view class="bgb-c-n-title flex justify-between align-center">
  286. <view class="bgb-c-n-title-l bgb-c-n-titles">
  287. 沟通价格
  288. </view>
  289. <view class="bgb-c-n-title-c bgb-c-n-titles">
  290. {{msgPrice}}元/次
  291. </view>
  292. <view class="bgb-c-n-title-r bgb-c-n-titles">
  293. {{vipMsgPrice}}元/次
  294. </view>
  295. </view>
  296. </view>
  297. </view>
  298. </view>
  299. <view class="btn flex justify-center align-start flex-wrap" v-if="isVipC==false">
  300. <view class="" style="width: 686rpx;padding-left: 20rpx;">
  301. <view class="flex align-center" style="width: 100%;">
  302. <u-checkbox size="28rpx" v-model="checked" shape="circle">
  303. <view class="flex align-center">开通即同意<navigator style="color: #00B88F;"
  304. url="/my/setting/weekXiYi" open-type="navigate">《会员开通协议》</navigator>
  305. </view>
  306. </u-checkbox>
  307. </view>
  308. </view>
  309. <view class="btn-c flex align-center justify-between">
  310. <view class="btn-c-l flex align-center">
  311. <text>{{vipPrice}}</text>
  312. <text>元/月</text>
  313. </view>
  314. <view class="btn-c-r flex justify-center align-center" @click="submit()">
  315. 立即购买
  316. </view>
  317. </view>
  318. </view>
  319. </block>
  320. <u-popup v-model="show" mode="bottom" :mask-close-able="false" border-radius="24" :closeable="true">
  321. <view class="payTitle">选择支付类型</view>
  322. <view class="payPrice">
  323. 支付价格:¥{{vipPrice}}
  324. </view>
  325. <view class="payList flex justify-center">
  326. <view class="payList-box">
  327. <view class="payList-box-item flex align-center justify-between" v-for=""
  328. v-for="(item,index) in openLists" :key="index">
  329. <view class="payList-box-item-l flex align-center">
  330. <image :src="item.image"
  331. style="width: 54rpx; height: 54rpx; border-radius: 50%;margin-right: 20rpx;" mode="">
  332. </image>
  333. {{item.text}}
  334. </view>
  335. <view class="payList-box-item-r">
  336. <radio-group name="openWay" @tap='selectWay(item)'>
  337. <label class="tui-radio">
  338. <radio color="#00B88F" :checked="openWay === item.id ? true : false" />
  339. </label>
  340. </radio-group>
  341. </view>
  342. </view>
  343. </view>
  344. </view>
  345. <view class="payBtn flex justify-center">
  346. <view class="payBtn-box flex justify-center align-center" @click="pay()">
  347. 确认支付
  348. </view>
  349. </view>
  350. </u-popup>
  351. </view>
  352. </template>
  353. <script>
  354. export default {
  355. data() {
  356. return {
  357. show: false,
  358. checked: false,
  359. number: 0,
  360. userType: '2',
  361. current: 0,
  362. xingValue1: '',
  363. chakan1: '',
  364. jiangjiMouth: '',
  365. xingValue2: '',
  366. chakan2: '',
  367. jiangjiMouth2: '',
  368. list1: [],
  369. list2: [],
  370. list3: [],
  371. vipNum: 0,
  372. noVipNum: 0,
  373. vipNumCom: 0,
  374. noVipNumCom: 0,
  375. userMonthTime: '', //用户会员到期时间
  376. companyMonthTime: '', //企业会员到期时间
  377. vipPrice: '0', //会员价格
  378. openLists: [],
  379. openWay: 1,
  380. isVip: false,
  381. isVipC: '',
  382. dataTime: '', //到期时间
  383. dataTimeC: '',
  384. isTrue: true,
  385. msgNum: 0, //非会员每天免费联系次数
  386. vipMsgNum: 0, //会员每天免费联系次数
  387. msgPrice: 0, //非会员每次联系价格
  388. vipMsgPrice: 0, //会员每次联系价格
  389. }
  390. },
  391. onShow() {
  392. this.msgNum = uni.getStorageSync('msgNum') ? uni.getStorageSync('msgNum') : 0
  393. this.vipMsgNum = uni.getStorageSync('vipMsgNum') ? uni.getStorageSync('vipMsgNum') : 0
  394. this.vipMsgPrice = uni.getStorageSync('vipMsgPrice') ? uni.getStorageSync('vipMsgPrice') : 0
  395. this.msgPrice = uni.getStorageSync('msgPrice') ? uni.getStorageSync('msgPrice') : 0
  396. this.getUserInfo()
  397. },
  398. onLoad() {
  399. this.userType = uni.getStorageSync('userType')
  400. if (this.userType == 1) { //用户简历的刷新次数
  401. this.getVipPeople()
  402. this.getNoVipPeople()
  403. } else {
  404. this.getVipCom()
  405. this.getNoVipCom()
  406. }
  407. this.getVipPrice()
  408. // #ifdef APP-PLUS
  409. this.openLists = [{
  410. image: '../../static/images/my/zhifubao.png',
  411. text: '支付宝',
  412. id: 1
  413. }, {
  414. image: '../../static/images/my/icon_weixin.png',
  415. text: '微信',
  416. id: 2
  417. }];
  418. this.openWay = 1;
  419. // #endif
  420. // #ifdef MP-WEIXIN
  421. this.openLists = [{
  422. image: '../../static/share/icon_weixin.png',
  423. text: '微信',
  424. id: 2
  425. }];
  426. this.openWay = 2;
  427. // #endif
  428. // #ifdef H5
  429. let ua = navigator.userAgent.toLowerCase();
  430. if (ua.indexOf('micromessenger') !== -1) {
  431. this.openLists = [{
  432. image: '../../static/images/my/zhifubao.png',
  433. text: '支付宝',
  434. id: 1
  435. }, {
  436. image: '../../static/share/icon_weixin.png',
  437. text: '微信',
  438. id: 2
  439. }];
  440. } else {
  441. this.openLists = [{
  442. image: '../../static/images/my/zhifubao.png',
  443. text: '支付宝',
  444. id: 1
  445. }];
  446. }
  447. this.openWay = 1;
  448. // #endif
  449. },
  450. methods: {
  451. //支付
  452. pay() {
  453. let that = this
  454. if (that.isTrue == false) {
  455. return
  456. }
  457. that.isTrue = false
  458. if (this.openWay == 2) {
  459. // #ifdef APP-PLUS
  460. // 微信APP支付 根据订单id获取支付信息
  461. this.$Request.post("/app/wxPay/wxPayOrder", {
  462. classify: 1,
  463. money: this.vipPrice,
  464. type: 2,
  465. }).then(ret => {
  466. this.isCheckPay(ret.code, 'wxpay', JSON.stringify(ret.data));
  467. });
  468. // #endif
  469. // #ifdef MP-WEIXIN
  470. // 微信小程序支付
  471. this.$Request.post('/app/wxPay/wxPayOrder', {
  472. classify: 3,
  473. money: this.vipPrice,
  474. type: 2,
  475. }).then(ret => {
  476. uni.hideLoading()
  477. console.log(ret.data)
  478. uni.requestPayment({
  479. provider: 'wxpay',
  480. timeStamp: ret.data.timestamp,
  481. nonceStr: ret.data.noncestr,
  482. package: ret.data.package,
  483. signType: ret.data.signType,
  484. paySign: ret.data.sign,
  485. success: function(suc) {
  486. console.log('success:' + JSON.stringify(suc));
  487. uni.showToast({
  488. title: '支付成功',
  489. icon: 'success'
  490. })
  491. that.show = false
  492. that.isTrue = true
  493. that.getUserInfo()
  494. },
  495. fail: function(err) {
  496. console.log('fail:' + JSON.stringify(err));
  497. that.isTrue = true
  498. uni.showToast({
  499. title: '支付失败',
  500. icon: 'none'
  501. })
  502. }
  503. });
  504. });
  505. // #endif
  506. // #ifdef H5
  507. let ua = navigator.userAgent.toLowerCase();
  508. if (ua.indexOf('micromessenger') !== -1) {
  509. let data = {
  510. classify: 2,
  511. money: this.vipPrice,
  512. type: 2,
  513. }
  514. this.$Request.post('/app/wxPay/wxPayOrder', data).then(res => {
  515. if (res.code == 0) {
  516. this.callPay(res.data);
  517. } else {
  518. that.isTrue = true
  519. uni.showToast({
  520. icon: 'none',
  521. title: '支付失败!'
  522. });
  523. }
  524. });
  525. }
  526. // #endif
  527. } else {
  528. // APP支付宝支付
  529. // #ifdef APP
  530. this.$Request.post("/app/aliPay/payMoneyOrder", {
  531. classify: 4,
  532. money: this.vipPrice,
  533. type: 2,
  534. }).then(ret => {
  535. this.show = false
  536. console.log(ret)
  537. this.isCheckPay(ret.code, 'alipay', ret.data);
  538. });
  539. // #endif
  540. // #ifdef H5
  541. let data = {
  542. classify: 5,
  543. money: this.vipPrice,
  544. type: 2,
  545. }
  546. this.$Request.post('/app/aliPay/payMoneyOrder', data).then(
  547. res => {
  548. if (res.code === 0) {
  549. this.show = false
  550. that.isTrue = true
  551. const div = document.createElement('div')
  552. div.innerHTML = res.data //此处form就是后台返回接收到的数据
  553. document.body.appendChild(div)
  554. document.forms[0].submit()
  555. } else {
  556. that.isTrue = true
  557. uni.showToast({
  558. icon: 'none',
  559. title: '支付失败!'
  560. });
  561. }
  562. });
  563. // #endif
  564. }
  565. },
  566. callPay: function(response) {
  567. if (typeof WeixinJSBridge === "undefined") {
  568. if (document.addEventListener) {
  569. document.addEventListener('WeixinJSBridgeReady', this.onBridgeReady(response), false);
  570. } else if (document.attachEvent) {
  571. document.attachEvent('WeixinJSBridgeReady', this.onBridgeReady(response));
  572. document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReady(response));
  573. }
  574. } else {
  575. this.onBridgeReady(response);
  576. }
  577. },
  578. onBridgeReady: function(response) {
  579. let that = this;
  580. if (!response.package) {
  581. return;
  582. }
  583. console.log(response, '++++++++')
  584. WeixinJSBridge.invoke(
  585. 'getBrandWCPayRequest', {
  586. "appId": response.appid, //公众号名称,由商户传入
  587. "timeStamp": response.timestamp, //时间戳,自1970年以来的秒数
  588. "nonceStr": response.noncestr, //随机串
  589. "package": response.package,
  590. "signType": response.signType, //微信签名方式:
  591. "paySign": response.sign //微信签名
  592. },
  593. function(res) {
  594. console.log(res, '/*-/*-/*-')
  595. if (res.err_msg === "get_brand_wcpay_request:ok") {
  596. // 使用以上方式判断前端返回,微信团队郑重提示:
  597. //res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。
  598. uni.showLoading({
  599. title: '支付成功'
  600. });
  601. setTimeout(function() {
  602. that.isTrue = true
  603. uni.hideLoading();
  604. }, 1000);
  605. that.show = false
  606. that.getUserInfo()
  607. } else {
  608. that.isTrue = true
  609. uni.hideLoading();
  610. }
  611. WeixinJSBridge.log(response.err_msg);
  612. }
  613. );
  614. },
  615. isCheckPay(status, name, order) {
  616. let that = this
  617. if (status == 0) {
  618. this.setPayment(name, order);
  619. } else {
  620. uni.hideLoading();
  621. that.isTrue = true
  622. uni.showToast({
  623. title: '支付信息有误',
  624. icon: 'none'
  625. });
  626. }
  627. },
  628. setPayment(name, order) {
  629. let that = this
  630. console.log('*-*-*')
  631. uni.requestPayment({
  632. provider: name,
  633. orderInfo: order, //微信、支付宝订单数据
  634. success: function(res) {
  635. console.log(res)
  636. uni.hideLoading();
  637. uni.showLoading({
  638. title: '支付成功'
  639. });
  640. that.show = false
  641. that.getUserInfo()
  642. that.isTrue = true
  643. },
  644. fail: function(err) {
  645. console.log(err)
  646. that.isTrue = true
  647. uni.hideLoading();
  648. },
  649. complete() {
  650. that.isTrue = true
  651. uni.hideLoading();
  652. }
  653. });
  654. },
  655. selectWay: function(item) {
  656. this.openWay = item.id;
  657. },
  658. //获取会员开通价格
  659. getVipPrice() {
  660. if (uni.getStorageSync('userType') == 1) { //用户会员价格
  661. this.$Request.get('/app/common/type/331').then(res => {
  662. if (res.code == 0) {
  663. this.vipPrice = res.data.value
  664. }
  665. })
  666. } else { //企业会员价格
  667. this.$Request.get('/app/common/type/332').then(res => {
  668. if (res.code == 0) {
  669. this.vipPrice = res.data.value
  670. }
  671. })
  672. }
  673. },
  674. //获取个人信息
  675. getUserInfo() {
  676. this.$Request.get("/app/user/selectUserById").then(res => {
  677. if (res.code == 0) {
  678. if (res.data.isUserVip + '' == 1) {
  679. this.isVip = true
  680. this.dataTime = res.data.userMonthTime
  681. } else {
  682. this.isVip = false
  683. }
  684. if (res.data.isCompanyVip + '' == '1') {
  685. this.isVipC = true
  686. this.dataTimeC = res.data.companyMonthTime
  687. } else {
  688. this.isVipC = false
  689. }
  690. }
  691. })
  692. },
  693. submit() {
  694. if (this.checked == false) {
  695. uni.showToast({
  696. title: '请阅读并同意《会员开通协议》',
  697. icon: 'none'
  698. })
  699. return
  700. }
  701. this.show = true
  702. },
  703. //会员简历刷新次数
  704. getVipPeople() {
  705. this.$Request.get('/app/common/type/328').then(res => {
  706. if (res.code == 0) {
  707. this.vipNum = res.data.value
  708. }
  709. })
  710. },
  711. //非会员简历刷新次数
  712. getNoVipPeople() {
  713. this.$Request.get('/app/common/type/327').then(res => {
  714. if (res.code == 0) {
  715. this.noVipNum = res.data.value
  716. }
  717. })
  718. },
  719. //会员岗位刷新次数
  720. getVipCom() {
  721. this.$Request.get('/app/common/type/330').then(res => {
  722. if (res.code == 0) {
  723. this.vipNumCom = res.data.value
  724. }
  725. })
  726. },
  727. //非会员岗位刷新次数
  728. getNoVipCom() {
  729. this.$Request.get('/app/common/type/329').then(res => {
  730. if (res.code == 0) {
  731. this.noVipNumCom = res.data.value
  732. }
  733. })
  734. },
  735. },
  736. }
  737. </script>
  738. <style lang="less">
  739. page {
  740. background-color: #F6F6F6;
  741. }
  742. /deep/.u-checkbox__icon-wrap--checked {
  743. background-color: #00B88F;
  744. border-color: #00B88F;
  745. }
  746. .payTitle {
  747. width: 100%;
  748. text-align: center;
  749. font-weight: bold;
  750. margin-top: 30rpx;
  751. }
  752. .payPrice {
  753. width: 100%;
  754. margin-top: 30rpx;
  755. text-align: center;
  756. }
  757. .payList {
  758. width: 100%;
  759. margin-top: 20rpx;
  760. .payList-box {
  761. width: 686rpx;
  762. .payList-box-item {
  763. width: 100%;
  764. margin-bottom: 20rpx;
  765. }
  766. .payList-box-item-l {
  767. font-size: 30rpx;
  768. }
  769. }
  770. }
  771. .payBtn {
  772. width: 100%;
  773. height: 88rpx;
  774. margin-top: 20rpx;
  775. margin-bottom: 60rpx;
  776. .payBtn-box {
  777. width: 686rpx;
  778. height: 100%;
  779. background-color: #00B88F;
  780. color: #ffffff;
  781. border-radius: 40rpx;
  782. }
  783. }
  784. .bgTop {
  785. width: 100%;
  786. height: 611rpx;
  787. background-color: #1F1F27;
  788. .bgTop-box {
  789. width: 686rpx;
  790. height: 100%;
  791. .bgTop-box-top {
  792. width: 100%;
  793. height: 300rpx;
  794. margin-top: 30rpx;
  795. background: linear-gradient(90deg, #EAB99B 0%, #F8D6BB 46%, #DC9C79 100%);
  796. border-radius: 16rpx;
  797. }
  798. .bgTop-box-top-box {
  799. width: calc(100% - 60rpx);
  800. height: 165rpx;
  801. }
  802. .bgTop-box-top-box-l {
  803. .bgTop-box-top-box-l-t {
  804. // color: #9C694D;
  805. font-size: 34rpx;
  806. font-weight: 800;
  807. background-image: linear-gradient(to right, #6F3E1D, #C4724B);
  808. background-clip: text;
  809. color: transparent;
  810. }
  811. .bgTop-box-top-box-l-c {
  812. background-image: linear-gradient(to right, #6F3E1D, #C4724B);
  813. background-clip: text;
  814. color: transparent;
  815. font-size: 34rpx;
  816. font-weight: 800;
  817. // margin-top: 10rpx;
  818. }
  819. .bgTop-box-top-box-l-b {
  820. color: #9C694D;
  821. font-size: 26rpx;
  822. font-weight: 500;
  823. margin-top: 30rpx;
  824. }
  825. }
  826. .bgTop-box-top-box-r {
  827. width: 178rpx;
  828. height: 100%;
  829. image {
  830. width: 100%;
  831. height: 100%;
  832. }
  833. }
  834. .bgTop-box-btn {
  835. width: 100%;
  836. height: 187rpx;
  837. background: linear-gradient(0deg, #272731 0%, #1F1F27 100%);
  838. border-radius: 16rpx;
  839. margin-top: 20rpx;
  840. .bgTop-box-btn-item {
  841. width: 100rpx;
  842. margin-top: 10rpx;
  843. image {
  844. width: 100rpx;
  845. height: 100rpx;
  846. border-radius: 50%;
  847. }
  848. .bgTop-box-btn-item-t {
  849. width: 100rpx;
  850. color: #D6B19B;
  851. font-size: 24rpx;
  852. font-weight: 500;
  853. margin-top: 16rpx;
  854. }
  855. }
  856. }
  857. }
  858. }
  859. .icon {
  860. width: 100%;
  861. margin-top: -50rpx;
  862. }
  863. .bgc {
  864. width: 100%;
  865. height: 158rpx;
  866. background: #F6F6F6;
  867. border-radius: 24rpx;
  868. margin-top: -20rpx;
  869. }
  870. .bgb {
  871. width: 100%;
  872. // height: 400rpx;
  873. margin-top: -130rpx;
  874. .bgb-c {
  875. width: 686rpx;
  876. height: 100%;
  877. background-color: #ffffff;
  878. border-radius: 24rpx;
  879. .bgb-c-n {
  880. width: 606rpx;
  881. height: 100%;
  882. }
  883. .bgb-c-n-title:nth-of-type(1) {
  884. margin-top: 46rpx;
  885. }
  886. .bgb-c-n-title {
  887. width: 100%;
  888. // margin-top: 20rpx;
  889. margin-bottom: 50rpx;
  890. .bgb-c-n-titles {
  891. width: 150rpx;
  892. text-align: center;
  893. }
  894. .bgb-c-n-title-l {
  895. color: #202020;
  896. font-size: 28rpx;
  897. font-weight: 800;
  898. }
  899. .bgb-c-n-title-c {
  900. color: #202020;
  901. font-size: 28rpx;
  902. font-weight: 800;
  903. }
  904. .bgb-c-n-title-r {
  905. color: #B1643C;
  906. font-size: 28rpx;
  907. font-weight: 800;
  908. }
  909. }
  910. }
  911. }
  912. .btn {
  913. width: 100%;
  914. // height: 140rpx;
  915. background-color: #F6F6F6;
  916. position: fixed;
  917. bottom: 0;
  918. .btn-c {
  919. margin-top: 10rpx;
  920. width: 686rpx;
  921. height: 90rpx;
  922. border-radius: 45rpx;
  923. background: linear-gradient(90deg, #056D70 0%, #023842 100%);
  924. margin-bottom: 40rpx;
  925. .btn-c-l {
  926. width: 436rpx;
  927. height: 100%;
  928. color: #FEBB91;
  929. // font-weight: 800;
  930. text:nth-of-type(1) {
  931. font-size: 44rpx;
  932. margin-left: 20rpx;
  933. }
  934. text:nth-of-type(2) {
  935. font-size: 32rpx;
  936. }
  937. }
  938. .btn-c-r {
  939. width: 250rpx;
  940. height: 100%;
  941. background: linear-gradient(90deg, #FFE2DA 0%, #FFB584 100%);
  942. border-radius: 0rpx 45rpx 45rpx 0rpx;
  943. color: #5E3C28;
  944. font-size: 28rpx;
  945. // font-weight: 800;
  946. }
  947. }
  948. }
  949. </style>