UNPKG

ming-demo1

Version:
235 lines (195 loc) 8.04 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _react = _interopRequireWildcard(require("react")); var _baseui = require("@mdf/baseui"); var _row = _interopRequireDefault(require("../../../basic/row")); var _col = _interopRequireDefault(require("../../../basic/col")); var eChartCommon = _interopRequireWildcard(require("../../eChartCommon")); var eChartProxy = _interopRequireWildcard(require("../../eChartProxy")); var _util = require("@mdf/cube/lib/helpers/util"); var eChartWeather = function (_React$Component) { (0, _inherits2["default"])(eChartWeather, _React$Component); function eChartWeather(props) { var _this; (0, _classCallCheck2["default"])(this, eChartWeather); _this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(eChartWeather).call(this, props)); _this.serieNum = Math.random(); _this.state = { panelType: props.panelType ? props.panelType : 1, componentConfig: props.componentConfig, weatherConfig: {}, localCity: "", baiduAK: "Da2GUB3raZGa2XnLnmYT1KUwvaT9FYPw" }; _this.getLocalCity(); return _this; } (0, _createClass2["default"])(eChartWeather, [{ key: "render", value: function render() { var self = this; var config = this.state.weatherConfig; var arr1 = []; var arr2 = []; if (_.isEmpty(config)) { arr1.push(_react["default"].createElement("div", null)); } else { var pm25 = config.pm25; var chuanyi = _.find(config.index, function (o) { return o.title == "穿衣"; }); var ziwaixian = _.find(config.index, function (o) { return o.title == "紫外线强度"; }); var xiche = _.find(config.index, function (o) { return o.title == "洗车"; }); var ganmao = _.find(config.index, function (o) { return o.title == "感冒"; }); var yundong = _.find(config.index, function (o) { return o.title == "运动"; }); var tianqi = config.weather_data[0]; var pm25desc = "优"; if (pm25 > 35) pm25desc = "良"; if (pm25 > 75) pm25desc = "轻度"; if (pm25 > 115) pm25desc = "中度"; if (pm25 > 150) pm25desc = "重度"; if (pm25 > 250) pm25desc = "严重"; if (new Date().getHours() >= 6 && new Date().getHours() < 18) { arr1.push(_react["default"].createElement("span", { className: self.getClassNamePrifx("eChartWeather") + "-img" }, _react["default"].createElement("img", { src: tianqi.dayPictureUrl }))); } else { arr1.push(_react["default"].createElement(_col["default"], { className: self.getClassNamePrifx("eChartWeather") + "-img" }, _react["default"].createElement("img", { src: tianqi.nightPictureUrl }))); } arr1.push(_react["default"].createElement("span", { className: self.getClassNamePrifx("eChartWeather") + "-temperature" }, tianqi.temperature)); arr1.push(_react["default"].createElement("span", { className: self.getClassNamePrifx("eChartWeather") + "-temperature-title" }, tianqi.weather)); arr2.push(_react["default"].createElement("span", { className: self.getClassNamePrifx("eChartWeather") + "-address" }, this.state.localCity)); arr2.push(_react["default"].createElement("span", { className: self.getClassNamePrifx("eChartWeather") + "-pm" }, pm25)); arr2.push(_react["default"].createElement("span", { className: self.getClassNamePrifx("eChartWeather") + "-pm-degree" }, pm25desc)); } var style = {}; if (this.props.skinConfig) style.color = this.props.skinConfig.displaySkin.textColor; return _react["default"].createElement("div", { className: self.getClassNamePrifx("eChartWeather") + "", style: style }, _react["default"].createElement("div", { className: self.getClassNamePrifx("eChartWeather") + "-1" }, " ", arr1, " "), _react["default"].createElement("div", { className: self.getClassNamePrifx("eChartWeather") + "-2" }, " ", arr2, " ")); } }, { key: "getClassNamePrifx", value: function getClassNamePrifx(className) { if (this.state.panelType == 2) className = className + "2"; return className; } }, { key: "getLocalCity", value: function getLocalCity() { var _this2 = this; eChartCommon.LogChartInfo("eChartWeather 获取当前所在城市 getLocalCity this.serieNum =" + this.serieNum + " Begin ", "", 6); var self = this; var url = "https://api.map.baidu.com/location/ip"; var params = {}; params.output = "json"; params.ak = self.state.baiduAK; params.coor = "bd09ll"; var config = { url: url, method: 'GET', params: params, options: { jsonp: true } }; var callback = function callback(data) { if (data.status == "0" || data.status == "success") { eChartCommon.LogChartInfo("eChartWeather 获取当前所在城市 getLocalCity this.serieNum =" + _this2.serieNum + " return data ", JSON.stringify(data), 6); self.state.localCity = data.content.address; self.getWeather(); eChartCommon.LogChartInfo("eChartWeather 获取当前所在城市 getLocalCity this.serieNum =" + _this2.serieNum + " End ", "", 6); } else { eChartCommon.LogChartInfo("eChartWeather 获取当前所在城市:调用服务出错 params=" + JSON.stringify(params) + " data ", JSON.stringify(data), 999); } }; (0, _util.proxy)(config).then(function (json) { callback(json); }); } }, { key: "getWeather", value: function getWeather() { var self = this; var params = {}; params.location = self.state.localCity; if (params.location) { params.output = "json"; params.ak = self.state.baiduAK; var url = "getWeather"; var callback = function callback(data) { if (data.code == 200 && data.data.status == "success") { self.setState({ weatherConfig: data.data.results[0] }); } else { eChartCommon.LogChartInfo("获取天气:调用服务出错 params=" + JSON.stringify(params) + " return ", JSON.stringify(data), 999); } }; eChartProxy.doProxy(url, 'GET', params, callback); } } }, { key: "componentWillUnmount", value: function componentWillUnmount() { var self = this; if (self._timer) { clearInterval(self._timer); self._timer = null; } ; self._unmount = true; } }, { key: "componentDidMount", value: function componentDidMount() { var self = this; var refreshInterval = 1000 * 60 * 10; self._timer = setInterval(function () { self.getWeather(); }, refreshInterval); } }]); return eChartWeather; }(_react["default"].Component); exports["default"] = eChartWeather; //# sourceMappingURL=eChartWeather.js.map