{"version":3,"sources":["webpack:///./src/assets/images/date-icon.svg","webpack:///./src/views/LocalRegistration/Setup/CurveUploadFailedReason.vue?138f","webpack:///./src/views/LocalRegistration/Setup/CurveUploadFailedReason.vue","webpack:///./src/views/LocalRegistration/Setup/CurveUploadFailedReason.vue?407f","webpack:///./src/views/LocalRegistration/Setup/CurveUploadFailedReason.vue?72b7","webpack:///./src/views/Payment/components/YearPicker.vue?b314","webpack:///./src/views/Payment/components/YearPicker.vue","webpack:///./src/views/Payment/components/YearPicker.vue?5fcf","webpack:///./src/utils/closing/isExcel.ts","webpack:///./src/views/LocalRegistration/Setup/CurveUploadFailedReason.vue?75c2"],"names":["module","exports","_withScopeId","n","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","render","_ctx","_cache","$props","$setup","$data","$options","_component_Breadcrumb","_component_ExclamationCircleOutlined","_component_a_button","_component_a_table","_component_year_picker","_component_upload","dataSource","type","onClick","handleToUpload","default","_","pagination","columns","tableData","rowKey","record","index","FailedReason","error","title","visible","visibleUploadDrawer","$event","onUpload","handleUpload","value","uploadYear","allowClear","handleDownloadTemplate","args","components","ExclamationCircleOutlined","Upload","YearPicker","setup","store","dataIndex","slots","customRender","state","localRegistration","curveSelectionUploadError","data","file","resolve","reject","options","_formData","FormData","fileName","name","split","append","isExcel","fileIsExcel","message","onUploadProgress","progressEvent","lengthComputable","percent","loaded","total","length","success","commit","__exports__","src","alt","_component_a_date_picker","format","mode","yearValue","open","isOpen","onOpenChange","handleOpenChange","onPanelChange","handlePanelChange","$attrs","suffixIcon","props","Object","emits","context","get","set","emit","status","blobToString","blob","Promise","reader","FileReader","readAsBinaryString","onload","ret","result","map","v","charCodeAt","toString","toUpperCase","padStart","join","len","slice","flag"],"mappings":"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","file":"js/chunk-4cdcd703.5507f472.js","sourcesContent":["module.exports = __webpack_public_path__ + \"img/date-icon.b14f3d24.svg\";","import { resolveComponent as _resolveComponent, createVNode as _createVNode, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, toDisplayString as _toDisplayString, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-25a248e2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"local-registration-container\" }\nconst _hoisted_2 = { class: \"nav\" }\nconst _hoisted_3 = { class: \"content-container\" }\nconst _hoisted_4 = { class: \"top-container\" }\nconst _hoisted_5 = { class: \"title\" }\nconst _hoisted_6 = /*#__PURE__*/_createTextVNode(\" Upload Curve Selection Of Restricted Cities Failed \")\nconst _hoisted_7 = /*#__PURE__*/_createTextVNode(\"Re-Upload\")\nconst _hoisted_8 = { class: \"failed-reason\" }\nconst _hoisted_9 = { class: \"download-button-wrapper\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"font_family icon-xiazai\" }, null, -1))\nconst _hoisted_11 = /*#__PURE__*/_createTextVNode(\"Download Template \")\nconst _hoisted_12 = [\n _hoisted_10,\n _hoisted_11\n]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Breadcrumb = _resolveComponent(\"Breadcrumb\")!\n const _component_ExclamationCircleOutlined = _resolveComponent(\"ExclamationCircleOutlined\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_table = _resolveComponent(\"a-table\")!\n const _component_year_picker = _resolveComponent(\"year-picker\")!\n const _component_upload = _resolveComponent(\"upload\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_Breadcrumb, { dataSource: [] })\n ]),\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"p\", _hoisted_5, [\n _createVNode(_component_ExclamationCircleOutlined),\n _hoisted_6\n ]),\n _createVNode(_component_a_button, {\n type: \"primary\",\n onClick: _ctx.handleToUpload\n }, {\n default: _withCtx(() => [\n _hoisted_7\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _createVNode(_component_a_table, {\n class: \"data-table\",\n pagination: false,\n columns: _ctx.columns,\n \"data-source\": _ctx.tableData,\n rowKey: (record, index) => index\n }, {\n FailedReason: _withCtx(({ record }) => [\n _createElementVNode(\"span\", _hoisted_8, _toDisplayString(record.error), 1)\n ]),\n _: 1\n }, 8, [\"columns\", \"data-source\", \"rowKey\"])\n ])\n ]),\n _createVNode(_component_upload, {\n title: \"Of Restricted Cities\",\n visible: _ctx.visibleUploadDrawer,\n \"onUpdate:visible\": _cache[2] || (_cache[2] = ($event: any) => ((_ctx.visibleUploadDrawer) = $event)),\n onUpload: _ctx.handleUpload\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_9, [\n _createVNode(_component_year_picker, {\n value: _ctx.uploadYear,\n \"onUpdate:value\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.uploadYear) = $event)),\n allowClear: false\n }, null, 8, [\"value\"]),\n _createElementVNode(\"div\", {\n class: \"downBtn\",\n type: \"primary\",\n onClick: _cache[1] || (_cache[1] = \n//@ts-ignore\n(...args) => (_ctx.handleDownloadTemplate && _ctx.handleDownloadTemplate(...args)))\n }, _hoisted_12)\n ])\n ]),\n _: 1\n }, 8, [\"visible\", \"onUpload\"])\n ], 64))\n}","\nimport { defineComponent, ref, computed } from 'vue';\nimport { useStore } from 'vuex';\nimport { message } from 'ant-design-vue';\nimport { ExclamationCircleOutlined } from '@ant-design/icons-vue';\nimport Upload from '@/views/LocalRegistration/components/Upload.vue';\nimport { downloadFromStream } from '@/utils/payment/downloadFile';\nimport { downloadTemplate, uploadRestrictCity } from '@/API/localRegistration';\nimport isExcel from '@/utils/closing/isExcel';\nimport YearPicker from '@/views/Payment/components/YearPicker.vue';\n\nexport default defineComponent({\n components: {\n ExclamationCircleOutlined,\n Upload,\n YearPicker,\n },\n setup() {\n const store = useStore();\n\n const uploadYear = ref('2022');\n\n const columns = [\n {\n title: 'Dealer Code',\n dataIndex: 'dealerCode',\n },\n {\n title: 'Dealer Name',\n dataIndex: 'dealerName',\n },\n {\n title: '限牌城市曲线选择',\n dataIndex: 'restrictedCity',\n },\n {\n title: 'Year',\n dataIndex: 'year',\n },\n {\n title: 'Failed Reason',\n slots: { customRender: 'FailedReason' },\n },\n ];\n\n const tableData = computed(\n () => store.state.localRegistration.curveSelectionUploadError\n );\n\n const visibleUploadDrawer = ref(false);\n\n const handleToUpload = () => {\n visibleUploadDrawer.value = true;\n };\n\n const handleDownloadTemplate = async () => {\n const data = await downloadTemplate();\n downloadFromStream(data);\n };\n\n const handleUpload = async (\n file: File,\n resolve: (value: unknown) => void,\n reject: (reason?: unknown) => void,\n options: any\n ) => {\n const _formData = new FormData();\n const fileName: string = file.name?.split('.')[0];\n _formData.append('file', file);\n try {\n const fileIsExcel = await isExcel(file);\n if (!fileIsExcel) {\n message.error('file type error');\n throw 'file type error';\n }\n const data = await uploadRestrictCity(\n _formData,\n uploadYear.value,\n fileName,\n {\n onUploadProgress: (progressEvent: any) => {\n if (progressEvent.lengthComputable) {\n const percent =\n ((progressEvent.loaded /\n progressEvent.total) *\n 100) |\n 0;\n options.percent.value = percent;\n }\n },\n }\n );\n if (data.length === 0) {\n return message.success('Upload Success.');\n } else {\n store.commit(\n 'localRegistration/updateCurveSelectionUploadError',\n data\n );\n }\n } catch (error) {\n reject(error);\n }\n visibleUploadDrawer.value = false;\n };\n\n return {\n columns,\n tableData,\n visibleUploadDrawer,\n handleToUpload,\n handleDownloadTemplate,\n handleUpload,\n uploadYear,\n };\n },\n});\n","import { render } from \"./CurveUploadFailedReason.vue?vue&type=template&id=25a248e2&scoped=true&ts=true\"\nimport script from \"./CurveUploadFailedReason.vue?vue&type=script&lang=ts\"\nexport * from \"./CurveUploadFailedReason.vue?vue&type=script&lang=ts\"\n\nimport \"./CurveUploadFailedReason.vue?vue&type=style&index=0&id=25a248e2&lang=scss&scoped=true\"\nimport \"./CurveUploadFailedReason.vue?vue&type=style&index=1&id=25a248e2&lang=scss\"\n\nimport exportComponent from \"/app/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-25a248e2\"]])\n\nexport default __exports__","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CurveUploadFailedReason.vue?vue&type=style&index=0&id=25a248e2&lang=scss&scoped=true\"","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, mergeProps as _mergeProps, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\nimport _imports_0 from '@/assets/images/date-icon.svg'\n\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_0,\n alt: \"\"\n}, null, -1)\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_a_date_picker = _resolveComponent(\"a-date-picker\")!\n\n return (_openBlock(), _createBlock(_component_a_date_picker, _mergeProps({\n format: \"YYYY\",\n mode: \"year\",\n value: _ctx.yearValue,\n \"onUpdate:value\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.yearValue) = $event)),\n open: _ctx.isOpen,\n onOpenChange: _ctx.handleOpenChange,\n onPanelChange: _ctx.handlePanelChange\n }, _ctx.$attrs), {\n suffixIcon: _withCtx(() => [\n _hoisted_1\n ]),\n _: 1\n }, 16, [\"value\", \"open\", \"onOpenChange\", \"onPanelChange\"]))\n}","\nimport { computed, defineComponent, ref } from 'vue'\nimport type { PropType } from 'vue'\nimport type { Moment } from 'moment' \n\nexport default defineComponent({\n props: {\n value: {\n type: Object as PropType,\n }\n },\n emits: [\n 'update:value',\n 'open-change',\n 'panel-change'\n ],\n setup(props, context) {\n const isOpen = ref(false)\n\n const yearValue = computed({\n get() {\n return props.value\n },\n set(value) {\n context.emit('update:value', value)\n }\n })\n\n const handleOpenChange = (status: boolean) => {\n isOpen.value = status ? true : false\n context.emit('open-change', status)\n }\n\n const handlePanelChange = (value: unknown, mode: string) => {\n yearValue.value = value\n isOpen.value = false\n context.emit('panel-change', value, mode)\n }\n\n return {\n isOpen,\n yearValue,\n handleOpenChange,\n handlePanelChange\n }\n }\n})\n","import { render } from \"./YearPicker.vue?vue&type=template&id=1bb4274d&ts=true\"\nimport script from \"./YearPicker.vue?vue&type=script&lang=ts\"\nexport * from \"./YearPicker.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"/app/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","const blobToString = async (blob: File) => {\n return new Promise(resolve => {\n const reader = new FileReader()\n reader.readAsBinaryString(blob)\n reader.onload = function () {\n const ret = (reader.result as string).split('')\n .map((v: string) => v.charCodeAt(0))\n .map((v: number) => v.toString(16).toUpperCase())\n .map((v: string) => v.padStart(2, '0'))\n .join('')\n resolve(ret)\n }\n })\n}\nconst isExcel = async (file: File) => {\n \n if (file) {\n const len = file.name.split('.').length\n const name = file.name.split('.')[len - 1]\n if (name !== 'xlsx' && name !== 'xls') {\n return false\n }\n }\n // 16进制的转换\n const result = await blobToString((file as any).slice(0, 8))\n const flag = (result === 'D0CF11E0A1B11AE1') || (result === '504B030414000600') || (result === '504B030414000808')\n return flag\n}\nexport default isExcel\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CurveUploadFailedReason.vue?vue&type=style&index=1&id=25a248e2&lang=scss\""],"sourceRoot":""}