index.js 27 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313
  1. // index.js
  2. import {
  3. login
  4. } from "../api/request";
  5. import {
  6. imgUrl,
  7. request
  8. } from "../api/request"
  9. import {
  10. yjzjList
  11. } from "../api/index-api"
  12. import {
  13. send
  14. } from "../api/index-api2"
  15. import * as echarts from '../../ec-canvas/echarts';
  16. import {
  17. getNanVideo
  18. } from "../api/newPaper-api"
  19. import {
  20. cacheSet
  21. } from "../../utils/cacheUtil"
  22. // 获取应用实例
  23. const app = getApp()
  24. Page({
  25. data: {
  26. hideAll: true,
  27. imgUrl: imgUrl,
  28. // 屏幕高度
  29. navHeight: '',
  30. searchInput: '',
  31. // 南岸咨询
  32. naTab: 0,
  33. naItem: '',
  34. // 政民tab
  35. communicateTab: 0,
  36. // 政民item
  37. communicateItem: 0,
  38. // 服务列表
  39. serviceItems1: [{
  40. img: imgUrl + 'service-1.png',
  41. name: '生活缴费'
  42. },
  43. {
  44. img: imgUrl + 'service-2.png',
  45. name: '社保服务'
  46. },
  47. {
  48. img: imgUrl + 'service-3.png',
  49. name: '公积金'
  50. },
  51. {
  52. img: imgUrl + 'service-4.png',
  53. name: '电子证照'
  54. },
  55. {
  56. img: imgUrl + 'service-5.png',
  57. name: '民政低保'
  58. }
  59. ],
  60. serviceItems2: [{
  61. img: imgUrl + 'service-6.png',
  62. name: '税务服务'
  63. },
  64. {
  65. img: imgUrl + 'service-7.png',
  66. name: '交通出行'
  67. },
  68. {
  69. img: imgUrl + 'service-8.png',
  70. name: '核酸采样点'
  71. },
  72. {
  73. img: imgUrl + 'service-9.png',
  74. name: '住房置业'
  75. },
  76. // {
  77. // img: imgUrl + 'service-10.png',
  78. // name: '更多功能'
  79. // }
  80. ],
  81. // 百姓聚焦
  82. peopleService: [{
  83. top: true,
  84. name: '12345热线'
  85. },
  86. {
  87. top: false,
  88. name: '个人社保查询'
  89. },
  90. {
  91. top: false,
  92. name: '南岸文旅消费劵'
  93. },
  94. {
  95. top: false,
  96. name: '长嘉汇弹子石老街'
  97. },
  98. {
  99. top: false,
  100. name: '南山一棵松'
  101. },
  102. {
  103. top: false,
  104. name: '一次性创业补助'
  105. }
  106. ],
  107. // 南岸咨询二级title
  108. naItemTabList: [{
  109. id: 1,
  110. name: '政策.咨询'
  111. },
  112. {
  113. id: 2,
  114. name: '党建.服务'
  115. },
  116. {
  117. id: 3,
  118. name: '抗疫.复工'
  119. },
  120. {
  121. id: 4,
  122. name: '功能.服务'
  123. }
  124. ],
  125. // 南岸咨询内容
  126. naContentList: [],
  127. // 南岸加载中参数
  128. isNaLoading: false,
  129. // 南岸是否为空数据
  130. isNaEmpty: true,
  131. // 本年办件数
  132. officeNumber: [],
  133. // 评价总量
  134. evalutionNum: 0,
  135. // 满意度
  136. evalutionRate: '',
  137. // 图表
  138. streetlinechartec: {
  139. lazyLoad: true,
  140. },
  141. // 图表图片
  142. canvasImg: '',
  143. // 视频推荐数据
  144. videoInfo: [],
  145. // 视频推荐数据加载中参数
  146. isVideoLoading: true,
  147. // 视频推荐是否为空数据
  148. isVideoEmpty: false,
  149. // 意见征集list
  150. yjzjDataList: [],
  151. // 在线调查
  152. investigatePage: 1,
  153. investigateList: [],
  154. isOnlineLoading: false,
  155. isOnlineFinish: false,
  156. // 地图服务
  157. mapServiceData: [{
  158. id: 1,
  159. name: '政务公开'
  160. },
  161. {
  162. id: 2,
  163. name: '政务服务'
  164. },
  165. {
  166. id: 3,
  167. name: '党群服务'
  168. },
  169. {
  170. id: 4,
  171. name: '核酸检测'
  172. },
  173. {
  174. id: 5,
  175. name: '教育资源'
  176. },
  177. {
  178. id: 6,
  179. name: '医疗卫生'
  180. },
  181. {
  182. id: 7,
  183. name: '户籍管理'
  184. },
  185. {
  186. id: 8,
  187. name: '交通服务'
  188. },
  189. ],
  190. // 媒体矩阵导航
  191. mediaCurrentTab: 0,
  192. // 公众号弹窗
  193. ewmShowDialog: false,
  194. // 南岸发布flag
  195. isNafaLoading: false,
  196. // 媒体矩阵导航列表
  197. provList: [{
  198. "name": "南岸发布"
  199. },
  200. {
  201. "name": "微信公众号"
  202. }
  203. // {
  204. // "name": "今日头条"
  205. // }
  206. ],
  207. // 媒体矩阵内容选项
  208. mediaSelectList: [{
  209. id: '1',
  210. name: "重庆市南岸区人民政府",
  211. img: imgUrl + 'index-media-icon1.png',
  212. ewm: "index_ewm_logo_1.png"
  213. },
  214. {
  215. id: '2',
  216. name: "南岸文旅",
  217. img: imgUrl + 'index-media-icon2.png',
  218. ewm: "index_ewm_logo_2.png"
  219. },
  220. {
  221. id: '3',
  222. name: "南岸发布",
  223. img: imgUrl + 'index-media-icon3.png',
  224. ewm: "index_ewm_logo_3.jpg",
  225. },
  226. {
  227. id: '4',
  228. name: "南岸国资",
  229. img: imgUrl + 'index-media-icon4.png',
  230. ewm: "index_ewm_logo_4.png"
  231. },
  232. {
  233. id: '5',
  234. name: "重庆南岸消防",
  235. img: imgUrl + 'index-media-icon5.png',
  236. ewm: "index_ewm_logo_5.png"
  237. },
  238. {
  239. id: '6',
  240. name: "南岸生态环境",
  241. img: imgUrl + 'index-media-icon6.png',
  242. ewm: "index_ewm_logo_6.png"
  243. },
  244. {
  245. id: '7',
  246. name: "南岸健康卫士",
  247. img: imgUrl + 'index-media-icon7.png',
  248. ewm: "index_ewm_logo_7.png"
  249. },
  250. {
  251. id: '8',
  252. name: "南岸公安",
  253. img: imgUrl + 'index-media-icon8.png',
  254. ewm: "index_ewm_logo_8.png"
  255. },
  256. {
  257. id: '9',
  258. name: "遇见南坪",
  259. img: imgUrl + 'index-media-icon9.png',
  260. ewm: "index_ewm_logo_9.png"
  261. },
  262. {
  263. id: '10',
  264. name: "书香南岸",
  265. img: imgUrl + 'index-media-icon10.png',
  266. ewm: "index_ewm_logo_10.png"
  267. },
  268. // {
  269. // id: '11',
  270. // name: "南岸卫生健康监督",
  271. // img: imgUrl + 'index-media-icon11.png',
  272. // ewm: "index_ewm_logo_11.jpg"
  273. // },
  274. {
  275. id: '12',
  276. name: "广阳岛绿色发展公司",
  277. img: imgUrl + 'index-media-icon13.png',
  278. ewm: "index_ewm_logo_13.jpg"
  279. },
  280. {
  281. id: '13',
  282. name: "南岸人力社保",
  283. img: imgUrl + 'index-media-icon14.png',
  284. ewm: "index_ewm_logo_14.png"
  285. },
  286. {
  287. id: '14',
  288. name: "广阳湾智创生态城",
  289. img: imgUrl + 'index-media-icon15.png',
  290. ewm: "index_ewm_logo_15.jpg"
  291. },
  292. {
  293. id: '15',
  294. name: "南岸健康",
  295. img: imgUrl + 'index-media-icon18.png',
  296. ewm: "index_ewm_logo_18.jpg"
  297. },
  298. {
  299. id: '16',
  300. name: "重庆市南岸区天文街道",
  301. img: imgUrl + 'index-media-icon17.png',
  302. ewm: "index_ewm_logo_17.png"
  303. },
  304. {
  305. id: '17',
  306. name: "南岸智慧城管",
  307. img: imgUrl + 'index-media-icon16.png',
  308. ewm: "index_ewm_logo_16.png"
  309. },
  310. {
  311. id: '18',
  312. name: "重庆市南岸区南坪街道",
  313. img: imgUrl + 'index-media-icon19.png',
  314. ewm: "index_ewm_logo_19.png"
  315. },
  316. {
  317. id: '19',
  318. name: "南岸司法",
  319. img: imgUrl + 'index-media-icon12.png',
  320. ewm: "index_ewm_logo_12.png"
  321. },
  322. ],
  323. // 媒体矩阵南岸发布
  324. mediaReleaseList: [],
  325. // 媒体矩阵今日头条
  326. mediaHeadlineList: []
  327. },
  328. onReady() {},
  329. onShow() {
  330. if (typeof this.getTabBar === 'function' && this.getTabBar()) {
  331. this.getTabBar().setData({
  332. selected: 0
  333. })
  334. }
  335. this.setData({
  336. // naItem: 0,
  337. // naItemTab: 1,
  338. ewmShowDialog: false,
  339. isOnlineLoading: false,
  340. isOnlineFinish: false
  341. })
  342. if (this.data.loginReturnFlag) {
  343. this.setData({
  344. loginReturnFlag: false
  345. })
  346. this.getVideoRecommend()
  347. }
  348. },
  349. // 点击服务
  350. clickService1(e) {
  351. const index = e.currentTarget.dataset.item
  352. switch (index) {
  353. case 0: {
  354. wx.navigateToMiniProgram({
  355. appId: 'wxd2ade0f25a874ee2',
  356. success(res) {
  357. // 打开成功
  358. }
  359. })
  360. };
  361. break;
  362. case 1: {
  363. wx.navigateToMiniProgram({
  364. appId: 'wxfc86707bae655315',
  365. success(res) {
  366. // 打开成功
  367. }
  368. })
  369. };
  370. break;
  371. case 2: {
  372. wx.navigateToMiniProgram({
  373. appId: 'wx0bff7955e6e8b2bb',
  374. success(res) {
  375. // 打开成功
  376. }
  377. })
  378. };
  379. break;
  380. case 3: {
  381. wx.navigateToMiniProgram({
  382. appId: 'wxfc86707bae655315',
  383. success(res) {
  384. // 打开成功
  385. }
  386. })
  387. };
  388. break;
  389. case 4: {
  390. wx.navigateToMiniProgram({
  391. appId: 'wxfc86707bae655315',
  392. success(res) {
  393. // 打开成功
  394. }
  395. })
  396. };
  397. break;
  398. }
  399. },
  400. // 点击服务
  401. clickService2(e) {
  402. const index = e.currentTarget.dataset.item
  403. switch (index) {
  404. case 0: {
  405. wx.navigateToMiniProgram({
  406. appId: 'wxfc86707bae655315',
  407. success(res) {
  408. // 打开成功
  409. }
  410. })
  411. };
  412. break;
  413. case 1: {
  414. wx.navigateToMiniProgram({
  415. appId: 'wxbb58374cdce267a6',
  416. success(res) {
  417. // 打开成功
  418. }
  419. })
  420. };
  421. break;
  422. case 2: {
  423. wx.navigateTo({
  424. url: '/pages/web/web?url=' + "https://www.cqna.gov.cn/maps/sy_mobile.html&se=采样点",
  425. })
  426. };
  427. break;
  428. case 3: {
  429. wx.navigateToMiniProgram({
  430. appId: 'wx0bff7955e6e8b2bb',
  431. success(res) {
  432. // 打开成功
  433. }
  434. })
  435. };
  436. break;
  437. }
  438. },
  439. toDataCenter() {
  440. wx.navigateTo({
  441. url: '/pages/dataCenter/dataCenter',
  442. })
  443. },
  444. onHide() {
  445. if (typeof this.getTabBar === 'function' && this.getTabBar()) {
  446. this.getTabBar().setData({
  447. selected: -1
  448. })
  449. }
  450. },
  451. onLoad() {
  452. // // 加载字体
  453. // wx.loadFontFace({
  454. // family: 'DOUYU',
  455. // // source: 'url("https://hui.yrslm.com:8089/douyu.ttf")',
  456. // source: 'url("https://www.cqna.gov.cn/mnazw/applet/font/douyu.ttf")',
  457. // success: function (e) {
  458. // console.log(e, '动态加载字体成功')
  459. // },
  460. // fail: function (e) {
  461. // console.log(e, '动态加载字体失败')
  462. // },
  463. // })
  464. // 获取视频推荐数据
  465. this.getVideoRecommend();
  466. // 获取媒体矩阵南岸发布数据
  467. this.getMediaReleaseList();
  468. // 获取媒体矩阵今日头条数据
  469. this.getMediaHeadlineList();
  470. // 获取好差评图表
  471. this.barComponent3 = this.selectComponent('#streetlinechart3');
  472. this.init_bar3();
  473. // 获取本年办件数
  474. this.getOfficeNumberByAreaInfo();
  475. // 意见征集数据
  476. this.yjzjData()
  477. // 初始化在线调查page
  478. this.setData({
  479. investigatePage: 1,
  480. investigateList: [],
  481. navHeight: app.globalData.navHeight + app.globalData.menuHeight / 2
  482. })
  483. this.initNadt()
  484. setTimeout(() => {
  485. this.setData({
  486. hideAll: false
  487. })
  488. }, 1000);
  489. // wx.login({
  490. // success(res) {
  491. // if (res.code) {
  492. // //发起网络请求
  493. // login(res.code).then(res => {
  494. // console.log(res)
  495. // wx.setStorageSync("token", res.data.data)
  496. // })
  497. // } else {
  498. // console.log('登录失败!' + res.errMsg)
  499. // }
  500. // }
  501. // })
  502. },
  503. // canvas转图片
  504. canvasToTempImage() {
  505. wx.canvasToTempFilePath({
  506. canvas: this.barComponent3.canvasNode,
  507. success: (res) => {
  508. this.setData({
  509. canvasImg: res.tempFilePath
  510. });
  511. }
  512. }, this);
  513. },
  514. // 加载评价图表
  515. init_bar3() {
  516. let that = this;
  517. this.barComponent3.init((canvas, width, height, dpr) => {
  518. // 初始化图表
  519. const barChart = echarts.init(canvas, null, {
  520. width: width,
  521. height: height,
  522. devicePixelRatio: dpr
  523. });
  524. wx.request({
  525. url: 'https://www.cqna.gov.cn/data//goodOrbad/getGoodOrBadByYearAndArea?area=1',
  526. method: 'GET',
  527. success: res => {
  528. res = res.data;
  529. if (res.result === 'ok') {
  530. let temp = [];
  531. temp.push(res.data.veryDissatisfied);
  532. temp.push(res.data.notSatisfied);
  533. temp.push(res.data.basicSatisfied);
  534. temp.push(res.data.satisfied);
  535. temp.push(res.data.great);
  536. // 计算最大值,以及分割值
  537. var maxValue = Math.max(...temp)
  538. maxValue = parseInt(maxValue / 10000 + 1) * 10000
  539. var interval = maxValue / 4
  540. barChart.setOption(this.getScaOption2(maxValue, interval));
  541. this.setData({
  542. evalutionNum: res.data.goodOrBad,
  543. evalutionRate: (res.data.good / res.data.goodOrBad * 100).toFixed(2)
  544. })
  545. barChart.setOption({
  546. series: [{
  547. data: temp
  548. }]
  549. })
  550. }
  551. }
  552. })
  553. barChart.on("finished", function () {
  554. that.canvasToTempImage();
  555. });
  556. // 注意这里一定要返回 chart 实例,否则会影响事件处理等
  557. return barChart;
  558. });
  559. },
  560. getScaOption2(maxValue, interval) {
  561. //请求数据
  562. let xAxis = {
  563. type: 'value',
  564. splitNumber: 4,
  565. max: maxValue,
  566. interval: interval,
  567. axisLine: {
  568. show: true
  569. },
  570. splitLine: {
  571. interval: 0
  572. }
  573. },
  574. yAxis = {
  575. axisTick: {
  576. show: false
  577. },
  578. type: 'category',
  579. data: [
  580. '非常不满意', '不满意', '基本满意', '满意', '非常满意'
  581. ]
  582. },
  583. grid = {
  584. left: '23%',
  585. top: '5%',
  586. bottom: '20%',
  587. right: '18%'
  588. },
  589. series = [{
  590. data: [],
  591. type: 'bar',
  592. barWidth: 15,
  593. itemStyle: {
  594. normal: {
  595. barBorderRadius: [0, 7, 7, 0],
  596. color: new echarts.graphic.LinearGradient(0, 0, 1, 0, [{
  597. offset: 0,
  598. color: '#006BFD'
  599. },
  600. {
  601. offset: 1,
  602. color: '#00E9F1'
  603. }
  604. ]),
  605. }
  606. },
  607. label: {
  608. show: true,
  609. position: 'right',
  610. valueAnimation: true
  611. }
  612. }]
  613. return {
  614. backgroundColor: '#FFFFFF',
  615. xAxis: xAxis,
  616. yAxis: yAxis,
  617. grid: grid,
  618. series: series,
  619. animationDelay: function (idx) {
  620. return idx * 50;
  621. },
  622. animationEasing: 'elasticOut'
  623. };
  624. },
  625. // 获取本年办件数
  626. getOfficeNumberByAreaInfo() {
  627. request({
  628. url: '/department/getOfficeNumberByAreaInfo?area=1&timeType=3',
  629. method: 'GET'
  630. }).then(res => {
  631. let temp = [];
  632. temp.push(res.data.acceptNumber);
  633. temp.push(res.data.serialNumber);
  634. temp.push(res.data.applicationNumberNetwork);
  635. this.setData({
  636. officeNumber: temp
  637. })
  638. })
  639. },
  640. // 搜索框
  641. bindKeyInput: function (e) {
  642. this.setData({
  643. searchInput: e.detail.value
  644. })
  645. },
  646. naChangeTab: function (e) {
  647. this.setData({
  648. naTab: e.detail.current,
  649. naItem: e.detail.current,
  650. naContentList: []
  651. })
  652. this.setData({
  653. })
  654. if (e.detail.current == 1) {
  655. wx.request({
  656. url: 'https://www.cq.gov.cn/ywdt/jrzq/index.json?cqjrcq=cqjrcq&_=1669609973472',
  657. success: res => {
  658. if (res.statusCode == 200) {
  659. var s = res.data
  660. s = s.substring(7, s.length - 1)
  661. s = JSON.parse(s)
  662. var d = [];
  663. var size = s.datas.length <= 5 ? s.datas.length : 5
  664. for (let i = 0; i < size; i++) {
  665. d.push({
  666. "DOCTITLE": s.datas[i].title,
  667. "url": s.datas[i].url
  668. })
  669. }
  670. this.setData({
  671. naContentList: d
  672. })
  673. }
  674. }
  675. })
  676. }
  677. if (e.detail.current == 2) {
  678. wx.request({
  679. url: 'https://www.gov.cn/pushinfo/v150203/pushinfo.jsonp?pushInfoJsonpCallBack=pushInfoJsonpCallBack&_=1669609973471',
  680. success: res => {
  681. console.log(res);
  682. if (res.statusCode == 200) {
  683. var s = res.data
  684. s = s.substring(22, s.length - 1)
  685. s = JSON.parse(s)
  686. console.log(s);
  687. var d = [];
  688. var size = s.length <= 5 ? s.length : 5
  689. for (let i = 0; i < size; i++) {
  690. d.push({
  691. "DOCTITLE": s[i].description,
  692. "url": s[i].link
  693. })
  694. }
  695. this.setData({
  696. naContentList: d
  697. })
  698. }
  699. }
  700. })
  701. }
  702. if (e.detail.current == 0) {
  703. let column = ["20430", "59482", "59481"]
  704. send(1, 5, column[e.detail.current]).then(res => {
  705. if (res.result) {
  706. this.setData({
  707. naContentList: res.data.DATA
  708. })
  709. }
  710. })
  711. }
  712. // 重置咨询title-tab
  713. this.setData({
  714. naItemTab: 1
  715. })
  716. },
  717. initNadt() {
  718. this.setData({
  719. isNaLoading: true
  720. })
  721. send(1, 5, "20430").then(res => {
  722. if (res.result) {
  723. this.setData({
  724. isNaLoading: false
  725. })
  726. if (res.data.DATA.length < 1) {
  727. this.setData({
  728. isNaEmpty: true
  729. })
  730. } else {
  731. this.setData({
  732. isNaEmpty: false
  733. })
  734. }
  735. this.setData({
  736. naContentList: res.data.DATA
  737. })
  738. } else {
  739. this.setData({
  740. isNaLoading: false,
  741. isNaEmpty: true
  742. })
  743. }
  744. })
  745. },
  746. // 南岸咨询子集菜单点击
  747. clickNaTilteTab: function (e) {
  748. this.setData({
  749. naItem: e.currentTarget.dataset.item,
  750. naContentList: []
  751. })
  752. if (e.currentTarget.dataset.item == 1) {
  753. // wx.showToast({title: '加载中',icon: 'loading',duration: 1000})
  754. this.setData({
  755. isNaLoading: true
  756. })
  757. wx.request({
  758. url: 'https://www.cq.gov.cn/ywdt/jrzq/index.json?cqjrcq=cqjrcq&_=1669609973472',
  759. success: res => {
  760. if (res.statusCode == 200) {
  761. var s = res.data
  762. s = s.substring(7, s.length - 1)
  763. s = JSON.parse(s)
  764. var d = [];
  765. var size = s.datas.length <= 5 ? s.datas.length : 5
  766. if (size < 1) {
  767. this.setData({
  768. isNaEmpty: true
  769. })
  770. } else {
  771. this.setData({
  772. isNaEmpty: false
  773. })
  774. }
  775. for (let i = 0; i < size; i++) {
  776. d.push({
  777. "DOCTITLE": s.datas[i].title,
  778. "url": s.datas[i].url
  779. })
  780. }
  781. // wx.showToast({title: '加载完成',icon: 'success',duration: 500})
  782. this.setData({
  783. isNaLoading: false
  784. })
  785. this.setData({
  786. naContentList: d
  787. })
  788. } else {
  789. this.setData({
  790. isNaLoading: false,
  791. isNaEmpty: true
  792. })
  793. }
  794. }
  795. })
  796. }
  797. if (e.currentTarget.dataset.item == 2) {
  798. // wx.showToast({title: '加载中',icon: 'loading',duration: 1000})
  799. this.setData({
  800. isNaLoading: true
  801. })
  802. wx.request({
  803. url: 'https://www.gov.cn/pushinfo/v150203/pushinfo.jsonp?pushInfoJsonpCallBack=pushInfoJsonpCallBack&_=1669609973471',
  804. success: res => {
  805. console.log(res);
  806. if (res.statusCode == 200) {
  807. var s = res.data
  808. s = s.substring(22, s.length - 1)
  809. s = JSON.parse(s)
  810. console.log(s);
  811. var d = [];
  812. var size = s.length <= 5 ? s.length : 5
  813. if (size < 1) {
  814. this.setData({
  815. isNaEmpty: true
  816. })
  817. } else {
  818. this.setData({
  819. isNaEmpty: false
  820. })
  821. }
  822. for (let i = 0; i < size; i++) {
  823. d.push({
  824. "DOCTITLE": s[i].description,
  825. "url": s[i].link
  826. })
  827. }
  828. this.setData({
  829. isNaLoading: false
  830. })
  831. // wx.showToast({title: '加载完成',icon: 'success',duration: 500})
  832. this.setData({
  833. naContentList: d
  834. })
  835. } else {
  836. this.setData({
  837. isNaLoading: false,
  838. isNaEmpty: true
  839. })
  840. }
  841. }
  842. })
  843. }
  844. if (e.currentTarget.dataset.item == 0) {
  845. let column = ["20430", "59482", "59481"]
  846. // wx.showToast({title: '加载中',icon: 'loading',duration: 1000})
  847. this.setData({
  848. isNaLoading: true
  849. })
  850. send(1, 5, column[e.currentTarget.dataset.item]).then(res => {
  851. if (res.result) {
  852. // wx.showToast({title: '加载完成',icon: 'success',duration: 500})
  853. this.setData({
  854. isNaLoading: false
  855. })
  856. if (res.data.DATA.length < 1) {
  857. this.setData({
  858. isNaEmpty: true
  859. })
  860. } else {
  861. this.setData({
  862. isNaEmpty: false
  863. })
  864. }
  865. this.setData({
  866. naContentList: res.data.DATA
  867. })
  868. } else {
  869. this.setData({
  870. isNaLoading: false,
  871. isNaEmpty: true
  872. })
  873. }
  874. })
  875. }
  876. },
  877. // 南岸咨询内容点击
  878. clickNaContent: function (e) {
  879. let item = e.currentTarget.dataset.item
  880. switch (this.data.naTab) {
  881. case 0:
  882. wx.navigateTo({
  883. url: '/pages/articlDetail/articlDetail?CHNLID=' + item.CHNLID + '&DOCID=' + item.DOCID,
  884. })
  885. break
  886. case 1:
  887. case 2:
  888. wx.navigateTo({
  889. url: '/pages/web/web?url=' + item.url,
  890. })
  891. break
  892. }
  893. },
  894. // 南岸咨询更多
  895. naMore: function (e) {
  896. let title = '';
  897. switch (this.data.naTab) {
  898. case 0:
  899. title = '南岸动态'
  900. wx.navigateTo({
  901. url: '/pages/aticleList/aticleList?title=' + title + '&id=1',
  902. })
  903. break
  904. case 1:
  905. title = '今日重庆'
  906. wx.navigateTo({
  907. url: '/pages/aticleList/aticleList?title=' + title + '&id=2',
  908. })
  909. break
  910. case 2:
  911. title = '国务院信息'
  912. wx.navigateTo({
  913. url: '/pages/aticleList/aticleList?title=' + title + '&id=3',
  914. })
  915. break
  916. }
  917. },
  918. // 政民互动
  919. communicateChangeItem: function (e) {
  920. this.setData({
  921. communicateItem: e.currentTarget.dataset.item
  922. })
  923. },
  924. communicateChangeTab: function (e) {
  925. this.setData({
  926. communicateTab: e.detail.current
  927. })
  928. if (this.data.communicateTab == 1) {
  929. this.getInvestigation(false)
  930. }
  931. },
  932. // 意见征集接口
  933. yjzjData() {
  934. yjzjList().then(res => {
  935. var list = []
  936. if (res.statusCode == 200 && res.datas.pageInfo.totalResults > 0) {
  937. list = res.datas.data
  938. for (var i = 0; i < list.length; i++) {
  939. list[i].beginTime = this.formatDateNumber(new Date(list[i].beginTime * 1))
  940. list[i].endTime = this.formatDateNumber(new Date(list[i].endTime * 1))
  941. }
  942. this.setData({
  943. 'yjzjDataList': list
  944. })
  945. }
  946. })
  947. },
  948. // 获取在线调查列表
  949. getInvestigation(flag) {
  950. this.setData({
  951. isOnlineLoading: true
  952. })
  953. var data = []
  954. wx.request({
  955. url: `https://www.cqna.gov.cn/IGI/open/survey/list?siteId=254&pageIndex=${this.data.investigatePage}&pageSize=10&orderBy=startTime_desc`,
  956. method: 'GET',
  957. success: res => {
  958. data = res.data.datas.data
  959. if (data && data.length > 0) {
  960. for (var i = 0; i < data.length; i++) {
  961. data[i].startTime = this.formatDateNumber(new Date(data[i].startTime * 1))
  962. data[i].endTime = this.formatDateNumber(new Date(data[i].endTime * 1))
  963. }
  964. data = this.data.investigateList.concat(data)
  965. this.setData({
  966. 'isOnlineLoading': false,
  967. 'investigateList': data,
  968. 'investigatePage': this.data.investigatePage + 1
  969. })
  970. } else {
  971. this.setData({
  972. 'isOnlineLoading': false
  973. })
  974. // 下拉刷新会提示加载完成
  975. if (flag) {
  976. this.setData({
  977. 'isOnlineFinish': true
  978. })
  979. setTimeout(() => {
  980. this.setData({
  981. isOnlineFinish: false
  982. })
  983. }, 600)
  984. }
  985. }
  986. },
  987. fail: res => {
  988. this.setData({
  989. 'isOnlineLoading': false
  990. })
  991. }
  992. })
  993. },
  994. // 在线调查触底
  995. investigationScrollBottom(e) {
  996. this.getInvestigation(true)
  997. },
  998. goToInvestigationDetail(e) {
  999. const id = e.target.dataset.id
  1000. const siteId = e.target.dataset.siteid
  1001. wx.navigateTo({
  1002. url: '/pages/web/web?wxUrl=' + encodeURIComponent(`https://www.cqna.gov.cn/personalCenter/answerSheet/answerSheet.html?siteId=${siteId}&metadataId=${id}`),
  1003. })
  1004. },
  1005. goYjzjDetail(e) {
  1006. const html = e.currentTarget.dataset.item
  1007. const title = e.currentTarget.dataset.theme
  1008. wx.navigateTo({
  1009. url: `/pages/yjzjDetail/yjzjDetail?html=${encodeURIComponent(html)}&title=${title}`
  1010. })
  1011. },
  1012. // 日期格式化
  1013. formatDateNumber: function (date) {
  1014. let myYear = date.getFullYear();
  1015. let myMonth = date.getMonth() + 1;
  1016. let myWeekDay = date.getDate();
  1017. return myYear + "-" + myMonth + "-" + myWeekDay
  1018. },
  1019. toList: function () {
  1020. wx.navigateTo({
  1021. url: '/pages/programList/programList',
  1022. })
  1023. },
  1024. toLeaveMessage: function () {
  1025. wx.navigateTo({
  1026. url: '/pages/leaveMessage/leaveMessage',
  1027. })
  1028. },
  1029. // 媒体矩阵
  1030. swichNav: function (e) {
  1031. var that = this;
  1032. if (this.data.mediaCurrentTab === e.target.dataset.current) {
  1033. return false;
  1034. } else {
  1035. that.setData({
  1036. mediaCurrentTab: e.target.dataset.current,
  1037. navScrollLeft: e.target.dataset.current >= 2 ? ((e.target.dataset.current - 1) * 215) : 0
  1038. })
  1039. }
  1040. },
  1041. SPTJImgError(e) {
  1042. let temp = this.data.videoInfo;
  1043. temp[e.currentTarget.dataset.index].images = null;
  1044. this.setData({
  1045. videoInfo: temp
  1046. })
  1047. },
  1048. // 获取视频推荐数据
  1049. getVideoRecommend() {
  1050. this.setData({
  1051. isVideoLoading: true
  1052. })
  1053. getNanVideo().then(res => {
  1054. this.setData({
  1055. isVideoLoading: false
  1056. })
  1057. if (res.data.length <= 0) {
  1058. this.setData({
  1059. isVideoEmpty: true
  1060. })
  1061. } else {
  1062. this.setData({
  1063. isVideoEmpty: false,
  1064. videoInfo: res.data
  1065. })
  1066. }
  1067. })
  1068. },
  1069. gotoVideoDetail(e) {
  1070. wx.navigateTo({
  1071. url: '/pages/web/web?wxUrl=' + encodeURIComponent(e.currentTarget.dataset.url)
  1072. })
  1073. },
  1074. // 获取媒体矩阵南岸发布数据
  1075. getMediaReleaseList() {
  1076. let date = new Date();
  1077. let year = date.getFullYear()
  1078. let month = date.getMonth() + 1
  1079. let day = date.getDate()
  1080. let time = year + "-" + month + "-" + day;
  1081. this.setData({
  1082. isNafaLoading: true
  1083. })
  1084. wx.request({
  1085. url: 'https://www.cqna.gov.cn/data/article/getNAFBArticleByDate?date=' + time,
  1086. method: 'GET',
  1087. success: res => {
  1088. this.setData({
  1089. isNafaLoading: false,
  1090. mediaReleaseList: res.data.data
  1091. })
  1092. },
  1093. fail: res => {
  1094. this.setData({
  1095. isNafaLoading: false
  1096. })
  1097. }
  1098. })
  1099. },
  1100. gotoReleaseDetail(e) {
  1101. wx.navigateTo({
  1102. url: '/pages/web/web?wxUrl=' + encodeURIComponent(e.currentTarget.dataset.url),
  1103. })
  1104. },
  1105. // 获取媒体矩阵今日头条数据
  1106. getMediaHeadlineList() {
  1107. wx.request({
  1108. url: 'https://www.cqna.gov.cn/data/article/getAllOfficialAccount?official=重庆市南岸区人民政府',
  1109. method: 'GET',
  1110. success: res => {
  1111. this.setData({
  1112. mediaHeadlineList: res.data.data.jrtt
  1113. })
  1114. }
  1115. })
  1116. },
  1117. gotoHeadlineDetail(e) {
  1118. wx.navigateTo({
  1119. url: '/pages/web/web?wxUrl=' + encodeURIComponent(e.currentTarget.dataset.url),
  1120. })
  1121. },
  1122. mediaBindChange: function (e) {
  1123. var that = this;
  1124. that.setData({
  1125. mediaCurrentTab: e.detail.current,
  1126. navScrollLeft: e.detail.current >= 2 ? ((e.detail.current - 1) * 215) : 0
  1127. });
  1128. },
  1129. getUserProfile() {
  1130. wx.setStorageSync('nickname', "");
  1131. wx.setStorageSync('avatarUrl', "");
  1132. wx.getUserProfile({
  1133. desc: '获取用户信息',
  1134. success: (res) => {
  1135. wx.setStorageSync('nickname', res.userInfo.nickName);
  1136. wx.setStorageSync('avatarUrl', res.userInfo.avatarUrl);
  1137. wx.login({
  1138. success(res) {
  1139. if (res.code) {
  1140. //发起网络请求
  1141. data = {
  1142. code: res.code
  1143. }
  1144. login(data).then(res => {
  1145. console.log(res)
  1146. cacheSet('token', res.data.token, 3600 * 24)
  1147. // wx.setStorageSync("token", res.data.data)
  1148. })
  1149. } else {
  1150. console.log('登录失败!' + res.errMsg)
  1151. }
  1152. }
  1153. })
  1154. },
  1155. fail(res) {
  1156. console.log("获取用户信息失败", res)
  1157. }
  1158. })
  1159. },
  1160. //印象南岸进入
  1161. toYxna() {
  1162. wx.navigateTo({
  1163. url: "/pagesPublic/pages/yxnaJfq/yxnaJfq",
  1164. })
  1165. },
  1166. toJfq: function () {
  1167. wx.navigateTo({
  1168. url: '/pagesPublic/pages/yxnaJfq/yxnaJfq',
  1169. })
  1170. },
  1171. toJfh: function () {
  1172. wx.navigateTo({
  1173. url: '/pagesPublic/pages/yxnaJfh/yxnaJfh',
  1174. })
  1175. },
  1176. toXsj: function () {
  1177. wx.navigateTo({
  1178. url: '/pagesPublic/pages/yxna/yxna',
  1179. })
  1180. },
  1181. toQxn: function () {
  1182. wx.navigateTo({
  1183. url: '/pagesPublic/pages/yxnaQxn/yxnaQxn',
  1184. })
  1185. },
  1186. gotoSjzx() {
  1187. wx.navigateTo({
  1188. url: '/pages/dataCenter/dataCenter',
  1189. })
  1190. },
  1191. gotoZWTJ() {
  1192. wx.navigateTo({
  1193. url: '/pages/dataCenterZWTJ/dataCenterZWTJ',
  1194. })
  1195. },
  1196. gotoNewsPaper() {
  1197. wx.navigateTo({
  1198. url: '/pages/newsPaper/newsPaper',
  1199. })
  1200. },
  1201. gotoZlwd() {
  1202. wx.navigateTo({
  1203. url: '/pages/web/web?url=' + "https://www.cqna.gov.cn/ghwd/znwd/mobile/index.html",
  1204. })
  1205. },
  1206. gotoDTSS(e) {
  1207. const search = e.currentTarget.dataset.item
  1208. if (search && search != '') {
  1209. wx.navigateTo({
  1210. url: '/pages/web/web?url=' + "https://www.cqna.gov.cn/maps/sy_mobile.html&se=" + search,
  1211. })
  1212. } else {
  1213. wx.navigateTo({
  1214. url: '/pages/web/web?url=' + "https://www.cqna.gov.cn/maps/sy_mobile.html",
  1215. })
  1216. }
  1217. },
  1218. gotoMTJZ() {
  1219. wx.navigateTo({
  1220. url: '/pages/web/web?url=' + "https://data.cqna.gov.cn/newMedia/officialAccounts.html",
  1221. })
  1222. },
  1223. gotoSPTJ() {
  1224. wx.navigateTo({
  1225. url: '/pages/videoRecommend/videoRecommend',
  1226. })
  1227. },
  1228. gotoNAB() {
  1229. // wx.navigateTo({
  1230. // url: '/pages/phoneNewsPaper/phoneNewsPaper',
  1231. // })
  1232. wx.navigateTo({
  1233. url: '/pages/web/web?url=' + "http://www.cqna.com.cn/na_Class/node_24150.html",
  1234. })
  1235. },
  1236. showLogoDialog(e) {
  1237. this.setData({
  1238. ewmName: e.target.dataset.name,
  1239. ewmUrl: e.target.dataset.ewm
  1240. })
  1241. wx.navigateTo({
  1242. url: '/pages/web/web?url=' + "https://data.cqna.gov.cn/newMedia/officialAccounts.html",
  1243. })
  1244. },
  1245. closeDialog() {
  1246. this.setData({
  1247. ewmShowDialog: false
  1248. })
  1249. },
  1250. toZMHD() {
  1251. wx.navigateTo({
  1252. url: '/pages/zmhd/zmhd',
  1253. })
  1254. },
  1255. callTheHotline() {
  1256. wx.makePhoneCall({
  1257. phoneNumber: '12345',
  1258. })
  1259. },
  1260. gotoZxft() {
  1261. wx.navigateTo({
  1262. url: '/pages/zxft/fileList',
  1263. })
  1264. },
  1265. gototsjy() {
  1266. wx.navigateTo({
  1267. url: '/pages/blankpage/blankpage?name=投诉建议',
  1268. })
  1269. },
  1270. /**
  1271. * 用户点击右上角分享
  1272. */
  1273. onShareAppMessage() {
  1274. return {
  1275. title: '首页'
  1276. }
  1277. }
  1278. })