"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 tools_1 = require("../../../../utils/tools"); var common_1 = require("../../../../utils/common"); var promise_wx_api_1 = require("../../../../utils/promise-wx-api"); var location_1 = require("../../../../utils/location"); var index_js_1 = require("../../../../utils/validate/index.js"); var app = getApp(); Page({ data: { iniLoaded: false, gridId: "", customerId: "", blurType: '', orgList: [], selectOrgIndex: 0, selectOrgList: [], selectedNpc: {}, npcList: [], selectNpcIndex: -1, showedHint: false, viewHeight: '100%', submitStatus: "not-started", fmData: { gridId: "", eventContent: "", latitude: "", longitude: "", address: "", attachmentList: [], npcUserList: [], orgList: [], voiceList: [], }, maxLimitImg: 3, submitBtnIsAllowed: false, dateStart: common_1.formatTimestamp(), tabRecord: false, dialogVisible: false, }, $afterUpdateData: function () { this.computeSubmitBtnIsAllowed(); }, computeSubmitBtnIsAllowed: function (isQuiet) { if (isQuiet === void 0) { isQuiet = true; } var _a = this.data, fmData = _a.fmData, submitStatus = _a.submitStatus, vlt = index_js_1.default(fmData, { eventContent: [ { rule: "required", message: "请填写内容" } ], }); if (!vlt.valid) { if (!isQuiet) { wx.showToast({ title: vlt.error, icon: "none", duration: 1500 }); } this.setData({ submitBtnIsAllowed: false }); return false; } else { this.setData({ submitBtnIsAllowed: submitStatus !== "success" }); return true; } }, onLoad: function (query) { return __awaiter(this, void 0, void 0, function () { var blurType; return __generator(this, function (_a) { switch (_a.label) { case 0: blurType = query.blurType; this.setData({ blurType: blurType }); console.log(1111111); console.log(this.data.blurType); if (blurType === 'voice') { this.setData({ tabRecord: true, }); } return [4, tools_1.doAfterLogin()]; case 1: _a.sent(); this.setData({ gridId: app.globalData.gridId, customerId: app.globalData.customerId }); return [4, this.getOrgList()]; case 2: _a.sent(); return [4, this.getNpcList()]; case 3: _a.sent(); this.getLocation(); this.setData({ iniLoaded: true }); return [2]; } }); }); }, onShow: function () { }, onReady: function () { this.computedViewHeight(); }, inputSync: tools_1.inputSync, getOrgList: function () { return __awaiter(this, void 0, void 0, function () { var gridId, _a, _b, code, data, msg, _c, orgList, selectOrgIndex, selectOrgList; return __generator(this, function (_d) { switch (_d.label) { case 0: gridId = this.data.gridId; return [4, promise_wx_api_1.wxRequestPost('resi/home/resi-event/report-target-level-list', { gridId: gridId, }, {})]; case 1: _a = _d.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; if (msg === 'success' && code === 0) { _c = this.data, orgList = _c.orgList, selectOrgIndex = _c.selectOrgIndex, selectOrgList = _c.selectOrgList; orgList = data.reportTargets; selectOrgList = []; if (orgList.length > 0) { selectOrgIndex = 0; selectOrgList.push(orgList[0]); } else { selectOrgIndex = -1; } this.setData({ orgList: orgList, selectOrgIndex: selectOrgIndex, selectOrgList: selectOrgList }); } return [2]; } }); }); }, handleSelectOrg: function (e) { var _a = this.data, selectOrgIndex = _a.selectOrgIndex, orgList = _a.orgList, selectOrgList = _a.selectOrgList; var index = e.currentTarget.dataset.index; selectOrgIndex = index; selectOrgList = []; selectOrgList.push(orgList[index]); this.setData({ selectOrgIndex: selectOrgIndex, selectOrgList: selectOrgList }); }, toughGetLocation: function () { var _this = this; this.getLocation(false); wx.chooseLocation({ success: function (res) { console.log('resadddres', res); var fmData = _this.data.fmData; _this.setData({ fmData: __assign(__assign({}, fmData), { address: res.address, longitude: res.longitude, latitude: res.latitude }) }); } }); }, getLocation: function (isQuiet) { if (isQuiet === void 0) { isQuiet = true; } return __awaiter(this, void 0, void 0, function () { var _a, msg, data, fmData; return __generator(this, function (_b) { switch (_b.label) { case 0: return [4, location_1.default(isQuiet)]; case 1: _a = _b.sent(), msg = _a.msg, data = _a.data; console.log(msg, data); if (msg === "success") { fmData = this.data.fmData; this.setData({ fmData: __assign(__assign({}, fmData), { address: data.address, longitude: data.longitude, latitude: data.latitude }) }); } return [2]; } }); }); }, addImg: function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4, this.selectComponent("#uploadImg").selectImage()]; case 1: _a.sent(); return [2]; } }); }); }, getNpcList: function () { return __awaiter(this, void 0, void 0, function () { var customerId, url, _a, _b, code, data, msg, _c, npcList, selectNpc, selectNpcIndex; return __generator(this, function (_d) { switch (_d.label) { case 0: customerId = this.data.customerId; this.setData({ initLoading: true, }); url = "resi/home/resi-event/npc-list"; return [4, promise_wx_api_1.wxRequestPost(url, { customerId: customerId, }, {})]; case 1: _a = _d.sent(), _b = _a.data.data, code = _b.code, data = _b.data, msg = _a.msg; this.setData({ initLoading: false, }); if (msg === "success" && code === 0) { _c = this.data, npcList = _c.npcList, selectNpc = _c.selectNpc, selectNpcIndex = _c.selectNpcIndex; npcList = data.reportTargets; this.setData({ npcList: npcList, selectNpc: selectNpc, selectNpcIndex: selectNpcIndex }); } return [2]; } }); }); }, atNpc: function () { return __awaiter(this, void 0, void 0, function () { var $selectNpc, _a, selectNpcIndex, npcList, selectedNpc, result; return __generator(this, function (_b) { switch (_b.label) { case 0: $selectNpc = this.selectComponent("#selectNpc"); _a = this.data, selectNpcIndex = _a.selectNpcIndex, npcList = _a.npcList, selectedNpc = _a.selectedNpc; return [4, $selectNpc.show()]; case 1: result = _b.sent(); if (result !== 'cancal') { selectNpcIndex = result; selectedNpc = npcList[selectNpcIndex]; } this.setData({ selectedNpc: selectedNpc, selectNpcIndex: selectNpcIndex }); return [2]; } }); }); }, delNpc: function () { this.setData({ selectNpcIndex: -1, selectedNpc: {} }); }, submit: function (e) { return __awaiter(this, void 0, void 0, function () { var _a, fmData, gridId, selectOrgList, selectNpcIndex, selectedNpc, retConfirm, paramsFile, _b, uploadMsg, imageList, uploadError, contiueSubmit, url, params, _c, data, msg; return __generator(this, function (_d) { switch (_d.label) { case 0: _a = this.data, fmData = _a.fmData, gridId = _a.gridId, selectOrgList = _a.selectOrgList, selectNpcIndex = _a.selectNpcIndex, selectedNpc = _a.selectedNpc; fmData.eventContent = fmData.eventContent.trim(); if (fmData.eventContent === "" && fmData.voiceList.length === 0) { console.log("fmData.voiceList.length", fmData.voiceList.length); return [2, wx.showToast({ title: "报事内容或报事语音不能为空", icon: "none", duration: 1500, })]; } return [4, promise_wx_api_1.wxShowModal({ title: "确认提交?", })]; case 1: retConfirm = _d.sent(); if (retConfirm.msg !== "success" || !retConfirm.data.confirm) { return [2]; } paramsFile = { customerId: app.globalData.customerId }; return [4, this.selectComponent("#uploadImg").upload("oss/file/upload-resi-event-file", paramsFile)]; case 2: _b = _d.sent(), uploadMsg = _b.msg, imageList = _b.data, uploadError = _b.error; if (!(uploadMsg === "invalid")) return [3, 4]; return [4, promise_wx_api_1.wxShowModal({ content: uploadError, cancelText: "继续提交", confirmText: "去修改", })]; case 3: contiueSubmit = (_d.sent()).msg; if (contiueSubmit === "success") { return [2]; } return [3, 5]; case 4: if (uploadMsg === "error") { return [2, wx.showToast({ title: uploadError, icon: "none", duration: 2000, })]; } _d.label = 5; case 5: if (selectOrgList.length == 0) { return [2, wx.showToast({ title: "请选择上报组织", icon: "none", duration: 1500 })]; } fmData.attachmentList = imageList; fmData.gridId = gridId; fmData.orgList = selectOrgList; fmData.npcUserList = []; if (!(selectNpcIndex < 0)) { fmData.npcUserList.push(selectedNpc); } console.log(fmData.npcUserList); url = "gov/project/resievent/report"; params = fmData; this.setData({ fmData: fmData }); wx.showLoading({ title: "正在提交中", mask: true }); return [4, promise_wx_api_1.wxRequestPost(url, params, {})]; case 6: _c = _d.sent(), data = _c.data.data, msg = _c.msg; wx.hideLoading(); if (msg === "success" && data.code === 0) { this.setData({ submitStatus: "success" }); wx.redirectTo({ url: "/subpages/index/pages/report/create" }); } return [2]; } }); }); }, resetData: function () { var _a = this.data, fmData = _a.fmData, orgList = _a.orgList, selectOrgIndex = _a.selectOrgIndex, selectOrgList = _a.selectOrgList, selectedNpc = _a.selectedNpc; fmData = { gridId: "", eventContent: "", latitude: "", longitude: "", address: "", attachmentList: [], npcUserList: [], orgList: [], }; if (orgList.length > 0) { selectOrgIndex = 0; selectOrgList.push(orgList[0]); } else { selectOrgIndex = -1; selectOrgList = []; } selectedNpc = {}; this.getLocation(); this.setData({ fmData: fmData, selectOrgIndex: selectOrgIndex, selectOrgList: selectOrgList, selectedNpc: selectedNpc }); }, computedViewHeight1: function () { var ress = wx.getSystemInfoSync(); var _height = 230; var _h = 0; _h = (ress.windowHeight - _height); this.setData({ viewHeight: _h + 'px' }); }, computedViewHeight: function (height) { if (height === void 0) { height = 0; } var that = this; var query = wx.createSelectorQuery().in(this); var ress = wx.getSystemInfoSync(); var _height = height || 120; query .selectAll(".row_myreport,.position-hints,.btn, .topic-record") .boundingClientRect(function (res) { console.log(ress.windowHeight, res[0].height, res[1].height, res[2].height, res[3].height); var _h = 0; _h = ress.windowHeight - res[0].height - res[1].height - res[2].height - _height; if (res[3].height) _h = ress.windowHeight - res[3].height - _height; console.log("++++++", _h); that.setData({ viewHeight: _h + "px", }); }) .exec(); }, toMyReport: function () { promise_wx_api_1.wxNavigateTo("/subpages/index/pages/report/myReport/index", { groupId: "b596a7cf119ebd812a2d9e16dcb315de" }); }, handleTapRecord: function () { this.setData({ tabRecord: !this.data.tabRecord, }); this.computedViewHeight(); }, handleRecordFinish: function (e) { var voiceList = this.data.fmData.voiceList; var _a = e.detail, url = _a.url, duration = _a.duration; voiceList.push({ url: url, duration: duration, format: 'mp3' }); console.log("eeeeee", e.detail); this.setData({ "fmData.voiceList": voiceList, tabRecord: false, submitBtnIsAllowed: true, }); this.computedViewHeight(); }, handleAudioDel: function () { var voiceList = this.data.fmData.voiceList; voiceList.shift(); this.setData({ "fmData.voiceList": voiceList, }); this.computeSubmitBtnIsAllowed(); console.log("dddddddddel"); }, });