{"version":3,"sources":["components/blessingRank/index.js","components/blessingPreheat/addressPopup/index.js"],"names":["BlessingRank","connect","_ref","uid","user","data","props","_this","Object","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__","this","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__","call","popupInstance","fetchRankData","http","get","concat","API","home","then","res","_res$data","code","setState","rankList","handleToSwitch","bool","_this$props","history","push","Popup","title","content","react__WEBPACK_IMPORTED_MODULE_5___default","a","createElement","_blessingPreheat_addressPopup_index__WEBPACK_IMPORTED_MODULE_9__","handleToHide","close","formatString","str","len","length","substr","state","rules","_this2","_this$state","Fragment","className","onClick","map","item","index","key","data-num","style","backgroundImage","head_image","user_name","blessing_value","prize_name","Component","AddressPopup","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_3__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_5__","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__","fetchUserAddress","addressInfo","msg","assign","name","phone","address","isLoading","handleToSubmit","params","arguments","undefined","post","_res$data2","antd_mobile_lib_toast__WEBPACK_IMPORTED_MODULE_2___default","info","tip","prize","react__WEBPACK_IMPORTED_MODULE_8___default","formik__WEBPACK_IMPORTED_MODULE_11__","initialValues","_Users_zhanghaozhe_server_mr_julyedu_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_0__","validate","errors","test","validateOnBlur","validateOnChange","onSubmit","values","render","_ref2","color","_ref3","field","type","placeholder","_ref4","_ref5","data-status"],"mappings":"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","file":"mrstatic/js/blessing-rank.c392e4f0.chunk.js","sourcesContent":["import React, { Component } from 'react'\nimport { connect } from 'react-redux'\nimport { http } from \"@/utils\"\nimport { Popup } from '@/common'\nimport AddressPopup from './../blessingPreheat/addressPopup/index'\nimport './index.scss'\n\n@connect(({user}) => (\n {\n uid: user.data.uid || ''\n }\n))\nclass BlessingRank extends Component {\n popupInstance = null\n constructor(props) {\n super(props)\n this.state = {\n rankList: [],\n rules: [\n '1、排行榜名次以2019年11月13日24点七月在线公布的排行榜为准,榜单确认后,得奖小伙伴请及时填写邮寄信息,7个自然日内不填写,视为主动放弃奖品;',\n '2、福气值只在本活动期间享受抽奖、提高中奖概率、购课优化、增加AI水平测试等福利;',\n '3、如有发现恶意刷榜,刷虚假数据等行为将取消其领奖资格;',\n '4、本活动解释权归北京七月在线科技有限公司所有。',\n ],\n }\n }\n\n componentDidMount() {\n this.fetchRankData()\n }\n\n fetchRankData = () => {\n http.get(`${API.home}/sys/blessing/ranking`).then(res => {\n const {code, data} = res.data\n if (code === 200) {\n this.setState({\n rankList: data,\n })\n }\n })\n }\n\n handleToSwitch = (bool) => {\n const {history, uid} = this.props\n if (bool && !uid) {\n history.push('/passport')\n } else {\n if (bool && !this.popupInstance) {\n this.popupInstance = Popup({\n title: '收货信息',\n content: <AddressPopup handleToHide={() => this.handleToSwitch(false)}/>\n })\n } else {\n this.popupInstance.close()\n this.popupInstance = null\n }\n }\n }\n\n formatString = (str, len) => {\n return str.length > len ? `${str.substr(0, len)}...` : str\n }\n\n render() {\n const {rankList, rules} = this.state\n return (\n <>\n <div className=\"rank__banner\"></div>\n <div className=\"rank__body\">\n <button className=\"rank__address\" onClick={() => this.handleToSwitch(true)}>填写收货地址></button>\n <div className=\"rank__table\">\n <dl className=\"rank__table-header\">\n <dd className=\"rank__table-column\">排名</dd>\n <dd className=\"rank__table-column\">用户</dd>\n <dd className=\"rank__table-column\">分数</dd>\n <dd className=\"rank__table-column\">奖品</dd>\n </dl>\n {\n rankList.map((item, index) => {\n return (\n <dl className=\"rank__table-body\" key={index}>\n <dd className=\"rank__table-column\">\n {\n index < 3\n ? (\n <i className=\"rank__table-num\" data-num={index + 1}></i>\n )\n : index + 1\n }\n </dd>\n <dd className=\"rank__table-column\">\n <div className=\"rank__table-user\">\n <i className=\"rank__table-portrait\" style={{backgroundImage: `url(${item.head_image})`}}></i>\n <span>{this.formatString(item.user_name, 5)}</span>\n </div>\n </dd>\n <dd className=\"rank__table-column\">{item.blessing_value}</dd>\n <dd className=\"rank__table-column\">{this.formatString(item.prize_name, 7)}</dd>\n </dl>\n )\n })\n }\n\n </div>\n <div className=\"rank__rule\">\n <h2 className=\"rank__rule-title\">活动规则</h2>\n {\n rules.map((item, index) => (\n <p className=\"rank__rule-desc\" key={index}>{item}</p>\n ))\n }\n </div>\n </div>\n </>\n )\n }\n}\n\nexport default BlessingRank\n","import React, { Component } from 'react';\nimport { isEmpty } from 'lodash';\nimport { http } from '@/utils';\nimport { Formik, Form, Field } from 'formik';\nimport { Toast } from \"antd-mobile\";\nimport './index.scss';\n\nclass AddressPopup extends Component {\n constructor(props) {\n super(props)\n this.state = {\n isLoading: false,\n addressInfo: {\n name: '',\n phone: '',\n address: '',\n },\n }\n }\n\n componentDidMount() {\n this.fetchUserAddress();\n }\n\n // 获取收货信息\n fetchUserAddress = () => {\n const { addressInfo } = this.state;\n http.get(`${API.home}/sys/user_address_info`).then(res => {\n const {code, data, msg} = res.data;\n if (code === 200) {\n this.setState({\n addressInfo: Object.assign({}, addressInfo, {\n name: data.name,\n phone: data.phone,\n address: data.address,\n }),\n isLoading: true,\n });\n }\n });\n }\n\n handleToSubmit = (params = {}) => {\n const { handleToHide } = this.props;\n http.post(`${API.home}/sys/collect_info`, params).then(res => {\n const {code, msg} = res.data;\n if (code === 200) {\n handleToHide();\n } else {\n Toast.info(msg, 2, null, false);\n }\n });\n }\n\n render() {\n const { isLoading, addressInfo } = this.state;\n const {tip, prize} = this.props;\n return (\n <>\n {\n isLoading &&\n <Formik\n initialValues={{ \n ...addressInfo\n }}\n validate={({name, phone, address}) => {\n const errors = {};\n\n if (!name) {\n errors.name = '请输入收件人';\n }\n if(!/^1[3-9]\\d{9}$/.test(phone)) {\n errors.phone = '请填写正确格式的手机号';\n }\n if (!address) {\n errors.address = '请输入收货地址';\n }\n\n return errors;\n }}\n validateOnBlur={false}\n validateOnChange={false}\n onSubmit={(values) => {\n this.handleToSubmit(values);\n }}\n render={({errors}) => (\n <Form className=\"address-form\">\n {\n prize ? (\n <p className='address__prize'>您抽中了{prize}<span style={{'color': '#FF4000'}}>实物奖品</span></p>\n ) : (null)\n }\n {\n tip ? (<p className=\"address-form__desc\">{tip}</p>) : (<p className=\"address-form__desc\">请及时填写收货信息,获得实物奖品后将第一时间为您邮寄</p>) \n }\n <Field \n name=\"name\"\n render={({ field }) => (\n <div className=\"address-form__item\">\n <input\n {...field}\n className=\"address-form__ipt\"\n type=\"text\"\n placeholder=\"收件人\"\n />\n {\n errors.name &&\n <p className=\"address-form__tip\">{errors.name}</p>\n }\n </div>\n )}\n />\n <Field \n name=\"phone\"\n render={({ field }) => (\n <div className=\"address-form__item\">\n <input\n {...field}\n className=\"address-form__ipt\"\n type=\"text\"\n placeholder=\"联系方式\"\n />\n {\n errors.phone &&\n <p className=\"address-form__tip\">{errors.phone}</p>\n }\n </div>\n )}\n />\n <Field \n name=\"address\"\n render={({ field }) => (\n <div className=\"address-form__item\">\n <input\n {...field}\n className=\"address-form__ipt\"\n type=\"text\"\n placeholder=\"收货地址\"\n />\n {\n errors.address &&\n <p className=\"address-form__tip\">{errors.address}</p>\n }\n </div>\n )}\n />\n <button \n className=\"address-form__submit\" \n data-status=\"do\"\n type=\"submit\"\n >提交</button>\n </Form>\n )}\n />\n }\n </>\n );\n }\n}\n\nexport default AddressPopup;"],"sourceRoot":""}