"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; Object.defineProperty(exports, "__esModule", { value: true }); var promise_wx_api_1 = require("../../../../utils/promise-wx-api"); var tools_1 = require("../../../../utils/tools"); var app = getApp(); Page({ data: { current: 0, iniLoading: false, tabsList: [ { id: 0, name: "办事指南", }, { id: 1, name: "附件目录", }, ], showContent: false, guideId: "", info: {}, swiperH: "calc(100vh - 336rpx);", }, onLoad: function (options) { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { this.setData({ guideId: options.guideId, }); console.log("onLoad", this.data.info); return [2]; }); }); }, onReady: function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4, app.doAfterLogin()]; case 1: _a.sent(); return [4, this.getInfo(this.data.guideId)]; case 2: _a.sent(); this.setData({ iniLoading: true, }); console.log("onReady", this.data.info); return [4, this.computedSwiperHeight()]; case 3: _a.sent(); return [2]; } }); }); }, onShow: function () { }, handleSwiperChange: function (e) { var _a = e.detail, current = _a.current, source = _a.source; if (source == "touch") { this.setData({ current: current }); } }, handleTabs: function (e) { var id = e.currentTarget.dataset.id; this.setData({ current: id }); }, handleCell: function (e) { var index = e.currentTarget.dataset.index; var info = this.data.info; var item = info.moduleList[index]; item.isOpen = !item.isOpen; this.setData({ info: info, }); }, handleOpenLink: function () { var info = this.data.info; var item = info.externalLinks[0]; item.isOpen = !item.isOpen; this.setData({ info: info, }); }, handleLink: function () { var info = this.data.info; promise_wx_api_1.wxNavigateTo("/subpages/index/pages/workguide/link", { url: info.externalLinks[0].externalLink, }); }, handleCliboard: function (e) { var url = e.currentTarget.dataset.url; wx.setClipboardData({ data: url, success: function (res) { wx.getClipboardData({ success: function (ress) { console.log(ress.data); wx.showToast({ title: "复制成功", icon: "none", duration: 1500, }); }, }); }, }); }, computedSwiperHeight: function () { var that = this; var query = wx.createSelectorQuery().in(this); query .select(".detail-header") .boundingClientRect(function (res) { console.log("res.height", res); var h = res.height + "px"; var _h = "calc(100vh - " + h + " - 120rpx)"; that.setData({ swiperH: _h, }); }) .exec(); }, handleOpenDocument: function (e) { return __awaiter(this, void 0, void 0, function () { var index, info, item, res, _a, msg, data; return __generator(this, function (_b) { switch (_b.label) { case 0: index = e.currentTarget.dataset.index; info = this.data.info; item = info.attachmentList[index]; if (!(item.type === "video")) return [3, 2]; return [4, promise_wx_api_1.wxPreviewMedia({ sources: [ { url: item.url, type: item.type, }, ], })]; case 1: res = _b.sent(); if (res.msg === "previewMedia:fail:not supported") { return [2, wx.showToast({ title: "当前环境不支持查看视频", icon: "none", duration: 2000, })]; } return [3, 6]; case 2: if (!(item.type === "image")) return [3, 3]; promise_wx_api_1.wxPreviewImage({ urls: [item.url], }); return [3, 6]; case 3: if (!!item.tempFilePath) return [3, 5]; wx.showLoading({ title: "加载中", }); return [4, promise_wx_api_1.wxDownloadFile({ url: item.url, filePath: wx.env.USER_DATA_PATH + "/" + item.name, })]; case 4: _a = _b.sent(), msg = _a.msg, data = _a.data; wx.hideLoading(); if (msg === "success") { item.tempFilePath = data.filePath; } _b.label = 5; case 5: promise_wx_api_1.wxOpenDocument({ filePath: item.tempFilePath, showMenu: true, }); _b.label = 6; case 6: return [2]; } }); }); }, handleCollect: function () { return __awaiter(this, void 0, void 0, function () { var info, _a, _b, code, data, msg; return __generator(this, function (_c) { switch (_c.label) { case 0: info = this.data.info; return [4, promise_wx_api_1.wxRequestPost("gov/voice/guidecollection/collection", { guideId: info.guideId, }, {})]; case 1: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === "success" && code === 0) { if (info.collectionFlag == "1") { wx.showToast({ title: "已取消", icon: "none", duration: 1500, }); info.collectionFlag = "0"; } else { wx.showToast({ title: "已收藏", icon: "none", duration: 1500, }); info.collectionFlag = "1"; } this.setData({ info: info, }); } else { wx.showToast({ title: msg, icon: "none", duration: 1500, }); } return [2]; } }); }); }, getInfo: function (guideId) { return __awaiter(this, void 0, void 0, function () { var _a, _b, code, data, msg, moduleList, externalLinks; return __generator(this, function (_c) { switch (_c.label) { case 0: return [4, promise_wx_api_1.wxRequestPost("gov/voice/guide/detail", { guideId: guideId, }, {})]; case 1: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === "success" && code === 0) { moduleList = data.moduleList .filter(function (item) { return item.moduleContent; }) .map(function (n, i) { var isOpen = i === 0 ? true : false; return __assign(__assign({}, n), { moduleContent: tools_1.cookRichContent(n.moduleContent), isOpen: isOpen }); }); externalLinks = data.externalLinks.map(function (n, i) { return __assign(__assign({}, n), { isOpen: false }); }); this.setData({ info: __assign(__assign({}, data), { moduleList: moduleList, externalLinks: externalLinks }), }); } else { wx.showToast({ title: msg, icon: "none", duration: 1500, }); } return [2]; } }); }); }, onHide: function () { }, onUnload: function () { }, onPullDownRefresh: function () { }, onReachBottom: function () { }, onShareAppMessage: function () { }, });