"use strict"; 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 index_js_1 = require("../../../../../miniprogram_npm/dai-mp/mixins/computed-component/index.js"); var common_1 = require("../../../../../mixins/common"); var list_1 = require("../../../../../mixins/list"); var tools_1 = require("../../../../../utils/tools"); var app = getApp(); var $modal; Component({ behaviors: [common_1.default, index_js_1.default, list_1.default], properties: { eventId: { type: String, value: "", }, status: { type: String, value: "processing", }, shiftProject: { type: String, value: "no", }, replyButtonFlag: { type: String, value: "true", }, }, data: { iniLoaded: false, refreshFlag: false, info: { icEventId: "", eventContent: "", happenTime: "", imageList: [], voiceList: [], address: "", redDot: false, replyFlag: false, status: "", statusName: "", operationType: "", operationId: "", latestOperatedTime: "", satisfaction: "", satisfactionName: "", categoryId: "", categoryName: "", }, replyInfo: { content: "", icEventId: "", }, replyList: [], progressList: [], currentResolveType: "", satisifyType: "", notSatisify: "../../../images/myReportEvent/face1.png", notSatisifySelected: "../../../images/myReportEvent/face1_light.png", normalSatisify: "../../../images/myReportEvent/face2.png", normalSatisifySelected: "../../../images/myReportEvent/face2_light.png", verySatisify: "../../../images/myReportEvent/face3.png", verySatisifySelected: "../../../images/myReportEvent/face3_light.png", }, methods: { inputSync: tools_1.inputSync, onLoad: function () { $modal = tools_1.getComponent("#modal"); this.init(); }, onUnload: function () { wx.removeStorageSync("myEvent"); }, onShow: function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { if (this.data.refreshFlag) { this.getInfo(); } return [2]; }); }); }, init: 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.getApiData()]; case 2: _a.sent(); this.setData({ iniLoaded: true, refreshFlag: true, }); return [2]; } }); }); }, getApiData: function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4, this.getInfo()]; case 1: _a.sent(); return [4, this.getReplyList()]; case 2: _a.sent(); return [4, this.getProgressInfo()]; case 3: _a.sent(); return [2]; } }); }); }, readEvent: function () { return __awaiter(this, void 0, void 0, function () { var eventId, _a, _b, code, data, msg; return __generator(this, function (_c) { switch (_c.label) { case 0: eventId = this.data.eventId; return [4, promise_wx_api_1.wxRequestPost("gov/project/resievent/updateviewtime", { viewType: "resi_user", eventId: eventId, }, {})]; case 1: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === "success" && code === 0) { } return [2]; } }); }); }, replay: function () { return __awaiter(this, void 0, void 0, function () { var _a, eventId, info, replyInfo, url, _b, _c, code, data, msg; return __generator(this, function (_d) { switch (_d.label) { case 0: _a = this.data, eventId = _a.eventId, info = _a.info; replyInfo = this.data.replyInfo; if (replyInfo.content === "") { return [2, wx.showToast({ title: "回复内容不能为空", icon: "none", duration: 1500, })]; } replyInfo.icEventId = eventId; url = "gov/project/icEvent/resi-reply"; return [4, promise_wx_api_1.wxRequestPost(url, replyInfo, {})]; case 1: _b = _d.sent(), _c = _b.data.data, code = _c.code, data = _c.data, msg = _b.msg; if (msg === "success" && code === 0) { wx.showToast({ title: "回复成功", icon: "none", duration: 1500, }); replyInfo.content = ""; this.setData({ replyInfo: replyInfo, }); this.getReplyList(); } return [2]; } }); }); }, resolve: function (e) { return __awaiter(this, void 0, void 0, function () { var type, typeShow, confirm, _a, _b, code, data, msg; return __generator(this, function (_c) { switch (_c.label) { case 0: type = e.currentTarget.dataset.type; this.setData({ currentResolveType: type, }); typeShow = type === "resolve" ? "已解决" : "未解决"; return [4, $modal.show({ title: "", content: "确认" + typeShow + "?", showCancel: true, confirmText: "确定", })]; case 1: confirm = _c.sent(); $modal.hide(); if (!confirm) return [3, 4]; return [4, promise_wx_api_1.wxRequestPost("gov/project/resievent/chooseresolve", { resiEventId: this.data.eventId, resolveStatus: type, }, {})]; case 2: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (!(msg === "success" && code === 0)) return [3, 4]; wx.showToast({ title: "操作成功", icon: "none", duration: 1500, }); return [4, this.getInfo()]; case 3: _c.sent(); _c.label = 4; case 4: return [2]; } }); }); }, getInfo: function () { return __awaiter(this, void 0, void 0, function () { var eventId, _a, _b, code, data, msg; return __generator(this, function (_c) { switch (_c.label) { case 0: eventId = this.data.eventId; return [4, promise_wx_api_1.wxRequestPost("gov/project/icEvent/myreport-detail", { icEventId: eventId, }, {})]; case 1: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === "success" && code === 0) { this.setData({ info: data, }); } return [2]; } }); }); }, getReplyList: function () { return __awaiter(this, void 0, void 0, function () { var eventId, _a, _b, code, data, msg; return __generator(this, function (_c) { switch (_c.label) { case 0: eventId = this.data.eventId; return [4, promise_wx_api_1.wxRequestPost("gov/project/icEvent/reply-list", { icEventId: eventId, }, {})]; case 1: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === "success" && code === 0) { this.setData({ replyList: data, }); } return [2]; } }); }); }, getProgressInfo: 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/project/icEvent/process", { icEventId: info.icEventId, }, {})]; case 1: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === "success" && code === 0) { this.setData({ progressList: data[0] ? [data[0]] : data, }); } return [2]; } }); }); }, recall: function () { return __awaiter(this, void 0, void 0, function () { var confirm, _a, _b, code, data, msg; return __generator(this, function (_c) { switch (_c.label) { case 0: return [4, $modal.show({ title: "", content: "确认撤回事件?", showCancel: true, confirmText: "确定", })]; case 1: confirm = _c.sent(); $modal.hide(); if (!confirm) return [3, 3]; return [4, promise_wx_api_1.wxRequestPost("gov/project/resievent/recall", { resiEventId: this.data.eventId, }, {})]; case 2: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === "success" && code === 0) { wx.navigateBack(); } _c.label = 3; case 3: return [2]; } }); }); }, previewImg: function (e) { var index = e.target.dataset.index; var info = this.data.info, currentImg = info.imageList[index], imgArr = info.imageList; wx.previewImage({ current: currentImg, urls: imgArr, }); }, chooseSatisifyType: function (e) { var _this = this; var type = e.currentTarget.dataset.type; this.setData({ satisifyType: type, }); wx.showModal({ content: "提交当前评价?", success: function (res) { if (res.confirm) { _this.icEventEvaluate(); } }, }); }, icEventEvaluate: function () { return __awaiter(this, void 0, void 0, function () { var eventId, _a, _b, code, data, msg; return __generator(this, function (_c) { switch (_c.label) { case 0: eventId = this.data.eventId; return [4, promise_wx_api_1.wxRequestPost("gov/project/icEvent/comment", { icEventId: eventId, satisfaction: this.data.satisifyType, }, {})]; case 1: _a = _c.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === "success" && code === 0) { wx.showToast({ title: "评价完成", icon: "none", duration: 2500, }); this.setData({ "info.satisfaction": this.data.satisifyType, }); } return [2]; } }); }); }, }, });