{"version":3,"sources":["webpack:///./src/views/authentication/certifiSelection.vue?b75f","webpack:///./src/views/authentication/certifiSelection.vue","webpack:///src/views/authentication/certifiSelection.vue","webpack:///./src/views/authentication/certifiSelection.vue?f47a","webpack:///./src/views/authentication/certifiSelection.vue?9c35","webpack:///./src/utils/mixin.js","webpack:///./src/assets/img/personal.png","webpack:///./src/assets/img/qiye.png"],"names":["render","_vm","this","_c","_self","staticClass","_v","_m","on","$event","fileVisible","type","$store","state","isPersonage","_e","attrs","staticStyle","openDialog","$router","push","slot","submitLoading","QRVisible","closeDialog","$shareType","imgPath","ref","staticRenderFns","require","mixins","data","methods","document","qrcode","width","height","text","baseUrl","JSON","page","check_path","scene","component","GetUnlimitedQRCodeMinix","created","GetUnlimitedQRCode","value","sendData","env_version","process","Promise","resolve","reject","$api","thirdyParty","then","res","code","$message","error","msg","verifyPermissionMinix","currentMenuAuth","mounted","getCurrentMenuAuth","menuId","$route","meta","user","getRightsMenus","parse","length","setTimeout","replace","verifyPermission","isShow","item","filter","v","countdown","getterKey","setterKey","localName","mixin","timer","$watch","val","oldVal","clearTimeout","isFinite","window","localStorage","setItem","removeItem","Math","ceil","Number","immediate","$on","Error","module","exports"],"mappings":"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","file":"js/chunk-1d242cf9.1.2.2.1732696861440.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./certifiSelection.vue?vue&type=style&index=0&id=bfd3c37c&prod&lang=less&scoped=true&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"page\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"实名认证\")]),_c('el-divider'),_c('div',{staticClass:\"container\"},[_vm._m(0),_c('div',{staticClass:\"types\"},[_vm._m(1),_c('div',{staticClass:\"typeRight\",on:{\"click\":function($event){_vm.fileVisible = true,_vm.type=1}}},[_vm._m(2),_vm._m(3)])]),(!_vm.$store.state.isPersonage)?_c('div',{staticClass:\"types\"},[_vm._m(4),_c('div',{staticClass:\"typeRight\",on:{\"click\":function($event){_vm.fileVisible = true,_vm.type=2}}},[_vm._m(5),_vm._m(6)])]):_vm._e(),_c('el-dialog',{attrs:{\"title\":\"提示\",\"visible\":_vm.fileVisible,\"close-on-click-modal\":false,\"close-on-press-escape\":false,\"width\":\"440px\",\"center\":\"\"},on:{\"update:visible\":function($event){_vm.fileVisible=$event}}},[_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"center\"}},[(_vm.type == 1)?_c('el-button',{staticStyle:{\"margin-left\":\"15px\"},attrs:{\"size\":\"mini\",\"type\":\"primary\"},on:{\"click\":_vm.openDialog}},[_vm._v(\"手机认证\")]):_vm._e(),_c('el-button',{attrs:{\"size\":\"mini\",\"type\":\"success\"},on:{\"click\":function($event){return _vm.$router.push(_vm.type==1 ? '/certifiForm' :'/personalForm')}}},[_vm._v(\"pc端认证\")])],1),_c('span',{staticClass:\"dialog-footer\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{attrs:{\"size\":\"small \",\"loading\":_vm.submitLoading},on:{\"click\":function($event){_vm.fileVisible = false}}},[_vm._v(\"关 闭\")])],1)]),_c('el-dialog',{attrs:{\"title\":\"手机认证\",\"visible\":_vm.QRVisible,\"close-on-click-modal\":false,\"close-on-press-escape\":false,\"width\":\"400px\",\"center\":\"\"},on:{\"update:visible\":function($event){_vm.QRVisible=$event},\"close\":_vm.closeDialog}},[_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"center\"}},[(_vm.$shareType == 2)?_c('img',{attrs:{\"src\":_vm.imgPath,\"alt\":\"\"}}):_vm._e(),(_vm.$shareType == 1)?_c('div',{ref:\"qrcode\",attrs:{\"id\":\"qrcode\"}}):_vm._e()])])],1)],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('span',[_vm._v(\"请选择认证类型\")])])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"logo\"},[_c('img',{attrs:{\"src\":require(\"../../assets/img/qiye.png\"),\"alt\":\"\"}})])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"typesTitle\"},[_vm._v(\"企业认证\")]),_c('div',{staticClass:\"summary\"},[_c('p',[_vm._v(\"适用于企业、个体工商户、事业单位等。\")]),_c('p',[_vm._v(\"如果你需要购买保险必须认证企业。\")])])])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('i',{staticClass:\"el-icon-arrow-right\",staticStyle:{\"font-size\":\"30px\"}})])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"logo\"},[_c('img',{staticStyle:{\"border-radius\":\"0\",\"width\":\"80px\"},attrs:{\"src\":require(\"../../assets/img/personal.png\"),\"alt\":\"\"}})])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"typesTitle\"},[_vm._v(\"个人认证\")]),_c('div',{staticClass:\"summary\"},[_c('p',[_vm._v(\"适用于个人的身份认证。\")]),_c('p')])])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('i',{staticClass:\"el-icon-arrow-right\",staticStyle:{\"font-size\":\"30px\"}})])\n}]\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./certifiSelection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./certifiSelection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./certifiSelection.vue?vue&type=template&id=bfd3c37c&scoped=true&\"\nimport script from \"./certifiSelection.vue?vue&type=script&lang=js&\"\nexport * from \"./certifiSelection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./certifiSelection.vue?vue&type=style&index=0&id=bfd3c37c&prod&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bfd3c37c\",\n null\n \n)\n\nexport default component.exports","import { getArrayTree } from './function'\r\n\r\nexport const getRecruitmentState = {\r\n methods: {\r\n getRecruitmentState(val) {\r\n let state = ''\r\n switch (Number(val)) {\r\n case 1:\r\n state = '正在招聘'\r\n break\r\n case 2:\r\n state = '暂停招聘'\r\n break\r\n case 3:\r\n state = '成功招聘'\r\n break\r\n case 4:\r\n state = '终止招聘'\r\n break\r\n }\r\n return state\r\n }\r\n }\r\n}\r\n\r\nexport const EducationMinix = {\r\n data() {\r\n return {\r\n educationList: []\r\n }\r\n },\r\n created() {\r\n // this.getEducationList();\r\n },\r\n methods: {\r\n // getEducationList() {\r\n // this.$api.base.getEnumerationData(\"Degrees\").then((res) => {\r\n // if (res.Error === false) {\r\n // this.educationList = res.Data;\r\n // }\r\n // });\r\n // },\r\n getEducationName(id) {\r\n let educationName = ''\r\n this.educationList.forEach((item) => {\r\n if (item.Id === id) {\r\n educationName = item.Description\r\n }\r\n })\r\n return educationName\r\n }\r\n }\r\n}\r\n\r\nexport const getCitysMinix = {\r\n data() {\r\n return {\r\n cityList: []\r\n }\r\n },\r\n created() {\r\n // this.getCityList();\r\n },\r\n methods: {\r\n getCityList() {\r\n this.$api.base.getCitys().then((res) => {\r\n if (res.Error === false) {\r\n this.cityList = getArrayTree(res.Data, 'Id', 'ParentId')\r\n }\r\n })\r\n }\r\n }\r\n}\r\n\r\nexport const getUsersMinix = {\r\n data() {\r\n return {\r\n users: []\r\n }\r\n },\r\n created() {\r\n this.getAllUser()\r\n },\r\n methods: {\r\n getAllUser() {\r\n var menuId = this.$route.meta.menuId || window.sessionStorage.getItem('mRportId') || 0\r\n this.$api.user.getAllUser(menuId).then((res) => {\r\n if (res.code === 0) {\r\n this.users = res.data\r\n }\r\n })\r\n }\r\n }\r\n}\r\n\r\nexport const GetUnlimitedQRCodeMinix = {\r\n data() {\r\n return {}\r\n },\r\n created() { },\r\n methods: {\r\n GetUnlimitedQRCode(value) {\r\n console.log(value)\r\n let sendData = value\r\n //体验版\r\n // sendData.env_version = 'trial'\r\n // 开发版\r\n // sendData.env_version = 'develop'\r\n // 正式版\r\n // sendData.env_version = 'release'\r\n sendData.env_version=process.env.VUE_APP_WEIXIN_EDITION\r\n\r\n return new Promise((resolve, reject) => {\r\n this.$api.thirdyParty.GetUnlimitedQRCode(sendData).then((res) => {\r\n if (res.code == 0) {\r\n resolve(res.data)\r\n } else {\r\n this.$message.error(res.msg)\r\n }\r\n })\r\n })\r\n }\r\n }\r\n}\r\n\r\nexport const verifyPermissionMinix = {\r\n data() {\r\n return {\r\n currentMenuAuth: []\r\n }\r\n },\r\n mounted() {\r\n this.getCurrentMenuAuth()\r\n },\r\n methods: {\r\n getCurrentMenuAuth() {\r\n const menuId = this.$route.meta.menuId\r\n this.$api.user.getRightsMenus(menuId).then((res) => {\r\n if (res.code === 0) {\r\n this.currentMenuAuth = JSON.parse(res.data)\r\n if (!this.currentMenuAuth || this.currentMenuAuth.length === 0) {\r\n this.$message.error('权限不足')\r\n setTimeout(() => {\r\n this.$router.replace('/home')\r\n }, 1000)\r\n }\r\n }\r\n })\r\n },\r\n verifyPermission(value) {\r\n if (!this.currentMenuAuth || this.currentMenuAuth.length === 0) return\r\n let isShow = true\r\n const item = this.currentMenuAuth.filter((v) => v.value === value)\r\n if (item.length === 0) {\r\n isShow = false\r\n }\r\n return isShow\r\n\r\n return true\r\n }\r\n }\r\n}\r\n\r\n\r\nexport const btnVerifyPermissionMinix = {\r\n data() {\r\n return {\r\n currentMenuAuth: []\r\n }\r\n },\r\n mounted() {\r\n },\r\n methods: {\r\n getCurrentMenuAuth(id, value) {\r\n const menuId = id\r\n\r\n this.$api.user.getRightsMenus(menuId).then((res) => {\r\n if (res.code === 0) {\r\n this.currentMenuAuth = JSON.parse(res.data)\r\n if (!this.currentMenuAuth || this.currentMenuAuth.length === 0) {\r\n return false\r\n }\r\n let isShow = true\r\n const item = this.currentMenuAuth.filter((v) => v.value === value)\r\n if (item.length === 0) {\r\n isShow = false\r\n }\r\n return isShow\r\n }\r\n })\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * 生成倒计时 mixin,按秒进行倒计时\r\n * @param {string} getterKey 要注入的属性名,改属性可读写,用于获取或设置剩余秒数\r\n * @param {string} localName 本地存储名称\r\n * @param {string} [setterKey] 要注入的方法名,可选,改方法用于重置剩余秒数\r\n *\r\n * @example 传入一个字符串参数,注入一个可读写的属性用于取值和重置\r\n * \r\n * \r\n *\r\n * @example 传入第二个字符串参数,再注入一个重置的方法\r\n * \r\n * \r\n */\r\nexport function countdown(getterKey, setterKey, localName) {\r\n if (typeof getterKey === \"string\") {\r\n const mixin = {\r\n data() {\r\n return {\r\n // 属性注入到 data 中\r\n [getterKey]: 0,\r\n };\r\n },\r\n created() {\r\n let timer = null;\r\n this.$watch(\r\n getterKey,\r\n (val, oldVal) => {\r\n if (timer !== null) {\r\n clearTimeout(timer);\r\n timer = null;\r\n }\r\n // 非数字类型转成数字类型\r\n if (typeof val !== \"number\") {\r\n this[getterKey] = Number(val);\r\n return;\r\n }\r\n // 非法值,转成 0\r\n if (!isFinite(val)) {\r\n this[getterKey] = 0;\r\n return;\r\n }\r\n // 负数,转成 0\r\n if (val < 0) {\r\n this[getterKey] = 0;\r\n return;\r\n }\r\n // 小数,向上取整\r\n if (val % 1 !== 0) {\r\n this[getterKey] = Math.ceil(val);\r\n return;\r\n }\r\n if (val > 0) {\r\n if (localName) {\r\n window.localStorage.setItem(localName, val)\r\n }\r\n if (val == 1 && localName) {\r\n window.localStorage.removeItem(localName)\r\n }\r\n timer = setTimeout(\r\n () => {\r\n this[getterKey] = val - 1;\r\n },\r\n // 整数时倒计时 1s,小数时倒计时超出整数秒的时间\r\n oldVal % 1 > 0 ? (oldVal * 1000) % 1000 : 1000\r\n );\r\n }\r\n },\r\n {\r\n immediate: true,\r\n }\r\n );\r\n // 组件销毁时清除定时器\r\n this.$on('hook:destroyed', () => {\r\n if (timer !== null) {\r\n clearTimeout(timer)\r\n }\r\n })\r\n },\r\n };\r\n if (typeof setterKey === \"string\") {\r\n // 再注入一个方法\r\n mixin.methods = {\r\n [setterKey](val) {\r\n this[getterKey] = val;\r\n },\r\n };\r\n }\r\n return mixin;\r\n }\r\n // 参数不规范时抛出错误\r\n throw new Error(\"Invalid arguments\");\r\n}","module.exports = __webpack_public_path__ + \"img/personal.71d515c5.png\";","module.exports = __webpack_public_path__ + \"img/qiye.ab01786d.png\";"],"sourceRoot":""}