{"version":3,"file":"js/909.cbd332f1.js","mappings":"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","sources":["webpack:///./src/views/invoiceDecoder/index.vue","webpack:///./src/utils/secret.js","webpack:///./src/utils/utils.js","webpack:///src/views/invoiceDecoder/index.vue","webpack:///./src/views/invoiceDecoder/index.vue?6f42","webpack:///./src/views/invoiceDecoder/index.vue?b91b","webpack:///./src/utils/request.js","webpack:///./src/api/common.js","webpack:///./src/utils/fileUpload.js"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"action-bar\"},[_c('el-button',{attrs:{\"type\":\"primary\",\"size\":\"mini\",\"loading\":_vm.loading},on:{\"click\":_vm.onSave}},[_vm._v(\"保存\")]),_c('div',{staticClass:\"fileWrap\"},[_c('el-button',{attrs:{\"type\":\"warning\",\"size\":\"mini\",\"loading\":_vm.loading}},[_vm._v(\" \"+_vm._s(_vm.loading ? '识别中' : '上传')+\" \")]),_c('input',{ref:\"inputRef\",attrs:{\"type\":\"file\",\"accept\":\".pdf,.jpg,.jpeg,.png\",\"disabled\":_vm.loading},on:{\"change\":_vm.upload}})],1),_c('el-tooltip',{attrs:{\"content\":\"查看发票样板,用于参考所需字段位置\",\"placement\":\"top\"}},[_c('el-button',{attrs:{\"type\":\"success\",\"size\":\"mini\"},on:{\"click\":_vm.showTemplate}},[_vm._v(\"查看样板\")])],1),_c('el-button',{attrs:{\"size\":\"mini\",\"disabled\":_vm.loading},on:{\"click\":_vm.back}},[_vm._v(\"返回\")])],1),_vm._m(0),(_vm.showRecognitionStatus)?_c('div',{class:['recognition-status', _vm.recognitionStatusType]},[_c('i',{class:_vm.recognitionStatusIcon}),_vm._v(\" \"+_vm._s(_vm.recognitionStatusMessage)+\" \")]):_vm._e(),_c('el-dialog',{attrs:{\"title\":\"发票样板\",\"visible\":_vm.templateDialogVisible,\"width\":\"80%\",\"before-close\":_vm.handleCloseTemplateDialog},on:{\"update:visible\":function($event){_vm.templateDialogVisible=$event}}},[_c('div',{staticClass:\"template-container\"},[_c('img',{staticStyle:{\"width\":\"100%\"},attrs:{\"src\":require(\"../../assets/images/invoice.png\"),\"alt\":\"发票图片\"}})]),_c('span',{staticClass:\"dialog-footer\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{on:{\"click\":function($event){_vm.templateDialogVisible = false}}},[_vm._v(\"关闭\")])],1)]),_c('div',{staticClass:\"tableWrap\"},[_c('table',[_c('thead',[_c('tr',[_c('td',{attrs:{\"colspan\":\"6\"}},[_vm._v(_vm._s(_vm.invoiceData.title || ''))])])]),_c('tbody',[_c('tr',[_c('td',{attrs:{\"colspan\":\"6\",\"align\":\"left\"}},[_c('div',{staticClass:\"td-item\"},[_vm._v(_vm._s(`缴款码:${_vm.invoiceData.paymentCode || ''}`))]),_c('div',{staticClass:\"td-item\"},[_c('span',[_vm._v(\" \"+_vm._s(`执收单位编码:${_vm.invoiceData.receivingCode || ''}`))]),_c('span',[_vm._v(\" \"+_vm._s(`票据代码:${_vm.invoiceData.invoiceCode || ''}`))]),_c('span',[_vm._v(\" \"+_vm._s(`校验码:${_vm.invoiceData.checkCode || ''}`))])]),_c('div',{staticClass:\"td-item\"},[_c('span',[_vm._v(\" \"+_vm._s(`执收单位名称:${_vm.invoiceData.receivingName || ''}`))]),_c('span',[_vm._v(\" \"+_vm._s(`票据号码:${_vm.invoiceData.invoiceNumber || ''}`))]),_c('span',[_vm._v(\" \"+_vm._s(`填制日期:${_vm.invoiceData.billingDate || ''}`))])])])]),_c('tr',[_c('td',{attrs:{\"rowspan\":\"3\"}},[_vm._v(\"付款人\")]),_c('td',[_vm._v(\"全称\")]),_c('td',[_vm._v(_vm._s(_vm.invoiceData.payerName || ''))]),_c('td',{attrs:{\"rowspan\":\"3\"}},[_vm._v(\"收款人\")]),_c('td',[_vm._v(\"全称\")]),_c('td',[_vm._v(_vm._s(_vm.invoiceData.payeeName || ''))])]),_c('tr',[_c('td',[_vm._v(\"账号\")]),_c('td',[_vm._v(_vm._s(_vm.invoiceData.payerNumber || ''))]),_c('td',[_vm._v(\"账号\")]),_c('td',[_vm._v(_vm._s(_vm.invoiceData.payeeNumber || ''))])]),_c('tr',[_c('td',[_vm._v(\"开户银行\")]),_c('td',[_vm._v(_vm._s(_vm.invoiceData.payerBank || ''))]),_c('td',[_vm._v(\"开户银行\")]),_c('td',[_vm._v(_vm._s(_vm.invoiceData.payeeBank || ''))])]),_c('tr',[_c('td',{attrs:{\"colspan\":\"4\"}},[_c('div',{staticClass:\"td-item\",staticStyle:{\"justify-content\":\"left\"}},[_c('span',{staticStyle:{\"margin-right\":\"50px\"}},[_vm._v(\" \"+_vm._s(`币种:${_vm.invoiceData.currencyCode || '人民币'}`))]),_c('span',[_vm._v(\" \"+_vm._s(`金额(大写):${_vm.invoiceData.amountTaxCN || ''}`))])])]),_c('td',{attrs:{\"colspan\":\"2\"}},[_vm._v(_vm._s(`(小写):${_vm.invoiceData.amountTax || ''}`))])]),_vm._m(1),_vm._l((_vm.invoiceData.invoiceLists),function(el){return _c('tr',{key:el.commodityNo},[_c('td',[_vm._v(_vm._s(el.commodityNo || ''))]),_c('td',[_vm._v(_vm._s(el.commodityName || ''))]),_c('td',[_vm._v(_vm._s(el.unit || '元'))]),_c('td',[_vm._v(_vm._s(el.quantity || ''))]),_c('td',[_vm._v(_vm._s(el.standard || ''))]),_c('td',[_vm._v(_vm._s(el.amount || ''))])])}),_vm._m(2),_vm._m(3),_c('tr',[_c('td',{attrs:{\"colspan\":\"3\"}},[_c('div',{staticClass:\"td-item\"},[_c('span',[_vm._v(\" \"+_vm._s(`执收单位盖章:${''}`))]),_c('span',[_vm._v(\" \"+_vm._s(`经办人盖章:${_vm.invoiceData.sealMark || ''}`))])])]),_c('td',{staticStyle:{\"text-align\":\"left\"},attrs:{\"colspan\":\"3\"}},[_vm._v(_vm._s(`备注:${_vm.invoiceData.remarks || ''}`))])])],2)])])],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"file-type-hint\"},[_vm._v(\" 支持的文件格式:\"),_c('span',{staticClass:\"supported-types\"},[_vm._v(\"PDF、JPG、PNG\")]),_vm._v(\",请确保上传清晰的发票图片以获得最佳识别效果 \")])\n},function (){var _vm=this,_c=_vm._self._c;return _c('tr',[_c('td',[_vm._v(\"项目编码\")]),_c('td',[_vm._v(\"收入项目名称\")]),_c('td',[_vm._v(\"单位\")]),_c('td',[_vm._v(\"数量\")]),_c('td',[_vm._v(\"收缴标准\")]),_c('td',[_vm._v(\"金额\")])])\n},function (){var _vm=this,_c=_vm._self._c;return _c('tr',[_c('td'),_c('td'),_c('td'),_c('td'),_c('td'),_c('td')])\n},function (){var _vm=this,_c=_vm._self._c;return _c('tr',[_c('td'),_c('td'),_c('td'),_c('td'),_c('td'),_c('td')])\n}]\n\nexport { render, staticRenderFns }","\n\n// 翔云OCR配置\nexport const xiangyunKey = {\n key: \"Es1TRT94hJsvSttv9GLhy4\",\n secret: \"19d6be2e3e164f98a1b7d1321a73189c\"\n}","\n\n\nexport let userMedia = function (constraints, success, error) {\n if (navigator.mediaDevices.getUserMedia) {\n userMedia = function (constraints, success, error) {\n navigator.mediaDevices.getUserMedia(constraints).then(success).catch(error)\n }\n } else if (navigator.webkitGetUserMedia) {\n userMedia = function (constraints, success, error) {\n navigator.webkitGetUserMedia(constraints, success, error)\n }\n } else if (navigator.mozGetUserMedia) {\n userMedia = function (constraints, success, error) {\n navigator.mozGetUserMedia(constraints, success, error)\n }\n } else if (navigator.getUserMedia) {\n userMedia = function (constraints, success, error) {\n navigator.getUserMedia(constraints, success, error)\n }\n }\n \n userMedia(constraints, success, error)\n}\n\n// 数字金额转大写\nexport const numToCny=(money)=>{\n\t// 汉字的数字\n\tlet cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖');\n\t// 基本单位\n\tlet cnIntRadice = new Array('', '拾', '佰', '仟');\n\t// 对应整数部分扩展单位\n\tlet cnIntUnits = new Array('', '万', '亿', '兆');\n\t// 对应小数部分单位\n\tlet cnDecUnits = new Array('角', '分', '毫', '厘');\n\t// 整数金额时后面跟的字符\n\tlet cnInteger = '整';\n\t// 整型完以后的单位\n\tlet cnIntLast = '元';\n\t// 最大处理的数字\n\tlet maxNum = 999999999999999.9999;\n\t// 金额整数部分\n\tlet integerNum;\n\t// 金额小数部分\n\tlet decimalNum;\n\t// 输出的中文金额字符串\n\tlet chineseStr = '';\n\t// 分离金额后用的数组,预定义\n\tlet parts;\n\tif (money == '') {\n\treturn '';\n\t}\n\tmoney = parseFloat(money);\n\tif (money >= maxNum) {\n // 超出最大处理数字\n return '';\n\t}\n\tif (money == 0) {\n chineseStr = cnNums[0] + cnIntLast + cnInteger;\n return chineseStr;\n\t}\n\t// 转换为字符串\n\tmoney = money.toString();\n\tif (money.indexOf('.') == -1) {\n integerNum = money;\n decimalNum = '';\n\t} else {\n parts = money.split('.');\n integerNum = parts[0];\n decimalNum = parts[1].substr(0, 4);\n\t}\n\t// 获取整型部分转换\n\tif (parseInt(integerNum, 10) > 0) {\n let zeroCount = 0;\n let IntLen = integerNum.length;\n for (let i = 0; i < IntLen; i++) {\n let n = integerNum.substr(i, 1);\n let p = IntLen - i - 1;\n let q = p / 4;\n let m = p % 4;\n if (n == '0') {\n zeroCount++;\n } else {\n if (zeroCount > 0) {\n chineseStr += cnNums[0];\n }\n // 归零\n zeroCount = 0;\n chineseStr += cnNums[parseInt(n)]\n + cnIntRadice[m];\n }\n if (m == 0 && zeroCount < 4) {\n chineseStr += cnIntUnits[q];\n }\n }\n chineseStr += cnIntLast;\n\t}\n\t// 小数部分\n\tif (decimalNum != '') {\n let decLen = decimalNum.length;\n for (let i = 0; i < decLen; i++) {\n let n = decimalNum.substr(i, 1);\n if (n != '0') {\n chineseStr += cnNums[Number(n)] + cnDecUnits[i];\n }\n }\n\t}\n\tif (chineseStr == '') {\n chineseStr += cnNums[0] + cnIntLast + cnInteger;\n\t} else if (decimalNum == '') {\n chineseStr += cnInteger;\n\t}\n\treturn chineseStr;\n}\n\n","\n \n\n \n\n ","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=3b07d5f4&scoped=true\"\nimport script from \"./index.vue?vue&type=script&lang=js\"\nexport * from \"./index.vue?vue&type=script&lang=js\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=3b07d5f4&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3b07d5f4\",\n null\n \n)\n\nexport default component.exports","import axios from 'axios';\nimport { Message } from 'element-ui'\n// import { ElMessage, ElMessageBox } from 'element-plus';\n// import { Session } from '/@/utils/storage';\n// import qs from 'qs';\n \n// 配置新建一个 axios 实例\nconst service = axios.create({\n\tbaseURL: window.location.origin,\n\ttimeout: 50000,\n\theaders: { \n \"Content-Type\": \"application/json\"\n },\n});\n \n// 添加请求拦截器\nservice.interceptors.request.use(\n\t(config) => {\n\t\t// console.log(\"🚀 ~ config:\", config.data)\n\t\tif(!config.url.includes('/api/v2/recogInvoive.do')){\n\t\t\tconst accessToken = localStorage.getItem(\"accessToken\");\n\t\t\tif (accessToken) {\n\t\t\t\tconfig.headers.accessToken = accessToken;\n\t\t\t}\n\t\t}\n\t\treturn config;\n\t},\n\t(error) => {\n\t\t// 对请求错误做些什么\n\t\treturn Promise.reject(error);\n\t}\n);\n \n// 添加响应拦截器\nservice.interceptors.response.use(\n\t(response) => {\n let res = response.data;\n\t\t// 对响应数据做点什么\n if(response.headers[\"x-subject-token\"]){\n res = {...response.data, \"x-subject-token\": response.headers[\"x-subject-token\"]};\n }\n\t\tif (res.code && res.code !== 0) {\n\t\t\t// `token` 过期或者账号已在别处登录\n\t\t\tif (res.code === 401) {\n\t\t\t\twindow.location.href = '/'; // 去登录页\n\t\t\t\t// ElMessageBox.alert('你已被登出,请重新登录', '提示', {})\n\t\t\t\t// \t.then(() => { })\n\t\t\t\t// \t.catch(() => { });\n\t\t\t\t// console.log(\"🚀 ~ service.interceptors.response:\", service.interceptors.response)\n\t\t\t\t// return Promise.reject(service.interceptors.response);\n\t\t\t} else {\n\t\t\t\treturn res;\n\t\t\t}\n\t\t} else {\n\t\t\treturn res;\n\t\t}\n\t},\n\t(error) => {\n\t\t// console.log(\"🚀 ~ error:\", error)\n\t\t// 对响应错误做点什么\n\t\tif (error.message.indexOf('timeout') != -1) {\n Message.error('网络超时');\n\t\t} else if (error.message == 'Network Error') {\n Message.error('网络连接错误');\n\t\t} else {\n\t\t\tif (error.response.data) {\n\t\t\t\tMessage.error(error.response.data.message || error.response.statusText);\n\t\t\t}else Message.error('接口路径找不到');\n\t\t}\n\t\treturn Promise.reject(error);\n\t}\n);\n \n// 导出 axios 实例\nexport default service;","import request from \"@/utils/request\";\nimport axios from 'axios';\nconst AK = \"OAnbVZhEuY5UNB9WbDeqstbj\";\nconst SK = \"1mMtAGw9ZgoblmNpTrk0SQFikFHFVsbh\";\n\n/**\n * 使用 AK,SK 生成鉴权签名(Access Token)\n * @return string 鉴权签名信息(Access Token)\n */\nconst getAccessToken = () => {\n let options = {\n method: 'POST',\n url: `/bdapi/oauth/2.0/token?client_id=${AK}&client_secret=${SK}&grant_type=client_credentials`,\n // url: `/bdapi/oauth/2.0/token`,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n // data: {\n // grant_type: 'client_credentials',\n // client_id: AK,\n // client_secret: SK\n // },\n }\n return new Promise((resolve, reject) => {\n request(options)\n .then(res => {\n resolve(res.access_token)\n })\n .catch(error => {\n reject(error)\n })\n })\n}\n\n// 百度人脸识别(获取verify_token)\nexport const getBaiduFace = async (data = {}) => {\n return request({\n url: `/bdapi/rpc/2.0/brain/solution/faceprint/verifyToken/generate?access_token=${await getAccessToken()}`,\n method: \"post\",\n headers: {\n 'Content-Type': 'application/json',\n 'Accept': 'application/json'\n },\n data: JSON.stringify(data),\n });\n}\n\n// 获取认证人脸结果\nexport const getBaiduFaceDetail = async (data = {}) => {\n return request({\n url: '/bdapi/rpc/2.0/brain/solution/faceprint/result/detail?access_token=' + await getAccessToken(),\n method: \"post\",\n headers: {\n 'Content-Type': 'application/json',\n 'Accept': 'application/json'\n },\n data: JSON.stringify(data),\n });\n}\n\n// 获取活体采集人脸图片\nexport const getBaiduResultSimple = async (data = {}) => {\n return request({\n url: '/bdapi/rpc/2.0/brain/solution/faceprint/result/simple?access_token=' + await getAccessToken(),\n method: \"post\",\n headers: {\n 'Content-Type': 'application/json',\n 'Accept': 'application/json'\n },\n data,\n });\n}\n\n// 获取身份证OCR识别\nexport const getBaiduIdcard = async (data = {}) => {\n return request({\n url: '/bdapi/rest/2.0/ocr/v1/idcard?access_token=' + await getAccessToken(),\n method: \"post\",\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'Accept': 'application/json'\n },\n data,\n });\n}\n\n// 翔云电子票务识别\nexport const getNetocr = async (data = {}) => {\n return request({\n url: 'https://netocr.com/api/v2/recogInvoive.do',\n method: \"post\",\n headers: {\n 'Content-Type': 'multipart/form-data'\n },\n data,\n });\n}\n\n// 考培上传非税发票数据u\nexport const savePayment = async (data = {}) => {\n return request({\n url: '/obpm/magic-api/tax/payment',\n method: \"post\",\n data,\n });\n}\n\n// 文件上传到V5\nexport const uploadFileToV5Api = async (data = {}) => {\n return request({\n url: `/v5api/v3/shared/common/resources`,\n method: \"post\",\n // headers: {\n // Authorization: \"Bearer \" + \"eyJhbGciOiJIUzI1NiJ9.eyJ1c2VySW5mbyI6IntcImVtcGxveWVlSWRcIjpcIkxoNGV1TUM5XCIsXCJpbmR1c3RyeUNvZGVcIjpcIjAxXCIsXCJvcmdhbml6YXRpb25MZXZlbHNcIjpbMV0sXCJhcmVhQ29kZVwiOlwiMTEwMDAwXCIsXCJpZFwiOlwiYVN1WENFZnpcIixcImluc3RpdHV0aW9uYWxDb2RlXCI6XCIwMTAyXCJ9IiwiaXNzIjoiYXV0aDAiLCJleHAiOjE3NDE2MTExNTN9.zHnDxhoaUKyndjWRn1r4tkiq09h6_u9mmfUCWY0nzX4\",\n // },\n data,\n });\n}\n\n// base64位图片上传\nexport const uploadBase64ImgToV5Api = async (data = {}) => {\n return request({\n url: `/v5api/v3/shared/common/resources/base64`,\n method: \"post\",\n data,\n });\n}\n\n// 身份核验\nexport const confirmCheckStatus = async (data = {}, headers) => {\n return request({\n url: `/v5api/v3/wechat/cgi-bin/confirm-check-status`,\n method: \"post\",\n data,\n headers,\n });\n}\n\n//人脸比对\nexport function matchFaceApi(params, baseUrl) {\n return request(`${baseUrl}/identify/api/baidu/match-face`, {\n method: \"post\",\n headers: {\n \"Content-Type\": \"application/x-www-form-urlencoded\",\n },\n data: {\n bizFaceMode: \"UNIAPP\",\n vtp: 70,\n appointChannel: \"UNIAPP\",\n ...params,\n },\n });\n}\n\n// 公共服务文件上传接口\nexport function commonUploadFileApi(file) {\n const data = new FormData();\n data.append('xfile', file);\n \n return axios({\n method: 'post',\n url: `${process.env.VUE_APP_UPLOAD_URL}/identify/api/common/upload-file`,\n headers: {\n \"Content-Type\": \"application/x-www-form-urlencoded\",\n },\n data: data\n });\n}\n\n// 获取华为云token\nexport const gethwtoken = async () => {\n return request({\n url: '/hwapi/v3/auth/tokens',\n method: \"post\",\n headers: {\n 'Content-Type': 'application/json',\n 'Accept': 'application/json'\n },\n data: {\n \"auth\": {\n \"identity\": {\n \"methods\": [\n \"password\"\n ],\n \"password\": {\n \"user\": {\n \"name\": \"bcxin_yw\",\n \"password\": \"Bcxin#202103#5186\",\n \"domain\": {\n \"name\": \"bcxin_yw\"\n }\n }\n }\n },\n \"scope\": {\n \"project\": {\n \"name\": \"cn-north-4\"\n }\n }\n }\n },\n });\n}\n// 华为静默活体检测\nexport const hwLiveDetectFace = async (data ,header) => {\n return request({\n url: '/hwfaceapi/v2/967cb11fa5304894816463bde95c8a78/face-detect',\n method: \"post\",\n headers: {\n ...header\n },\n data,\n });\n}\n\n// // base64位图片上传\n// export function uploadBase64ImgToV5Api(file) {\n// return new Promise((resolve, rej) => {\n// teemRequest(`/v3/shared/common/resources/base64`, {\n// method: \"post\",\n// data: {\n// bStream: file,\n// },\n// }).then((res) => {\n// console.log(res);\n// if (res.status == 200) {\n// if (res.data) {\n// // let fullFile = filePathConfig.contextPathV3 + res.data;\n// console.log(\"base64\", res.data);\n// var fullFile, file;\n// if (res.data.indexOf(\"/uploads\") > -1) {\n// if (!isDev) {\n// fullFile = res.data.replace(\n// \"/uploads\",\n// \"https://02obs.baibaodun.cn\"\n// );\n// file = res.data.replace(\n// \"/uploads\",\n// \"https://02obs.baibaodun.cn\"\n// );\n// } else {\n// fullFile = filePathConfig.contextPathV3 + res.data;\n// file = res.data;\n// }\n// }\n// resolve({\n// // file: res.data, //相对文件地址\n// file: file,\n// fullFile, //完整文件地址\n// });\n// } else {\n// //获取不到res.data生成图片返回的路径\n// uni.hideLoading();\n// uni.showToast({\n// title: \"网络异常,请重试\",\n// duration: 2000,\n// icon: \"none\",\n// });\n// }\n// } else {\n// console.log(res);\n// uni.hideLoading();\n// uni.showToast({\n// title: \"网络异常,请重试\",\n// duration: 2000,\n// icon: \"none\",\n// });\n// }\n// });\n// });\n// }\n\n// 文件上传到V5\n// export function uploadFileToV5Api(file) {\n// let url =\n// teemLinkBaseUrl + v5ObpmConfig.contextPathV3 + \"/shared/common/resources\";\n// return new Promise((resolve, rej) => {\n// uni.uploadFile({\n// url,\n// filePath: file,\n// name: \"file\",\n// header: {\n// Authorization: \"Bearer \" + uni.getStorageSync(\"token\"),\n// },\n// success: (res) => {\n// if (res.statusCode == 200) {\n// let data = res.data && JSON.parse(res.data);\n// if(data.status == 200){\n// let fullFile = filePathConfig.contextPathV3 + data.data;\n// resolve({\n// file: data.data, //相对文件地址\n// fullFile, //完整文件地址\n// });\n// } else {\n// uni.hideLoading();\n// uni.showToast({\n// title: \"网络异常,请重试\",\n// duration: 2000,\n// icon: \"none\",\n// });\n// }\n// } else {\n// uni.hideLoading();\n// uni.showToast({\n// title: \"网络异常,请重试\",\n// duration: 2000,\n// icon: \"none\",\n// });\n// }\n// },\n// fail: (err) => {\n// console.log(err);\n// uni.hideLoading();\n// uni.showToast({\n// title: \"网络异常,请重试\",\n// duration: 2000,\n// icon: \"none\",\n// });\n// rej(err);\n// },\n// });\n// });\n// }","import { commonUploadFileApi } from \"@/api/common\";\n\nexport function uploadFile(e, options) {\n const file = e.file;\n const { onSuccess, context, domainId = \"default\" } = options;\n \n // 处理文件名,去掉+号\n let fileName = file.name.replace(/\\+/g, '');\n // 创建一个新的File对象,使用处理后的文件名\n let newFile = new File([file], fileName, { type: file.type });\n\n commonUploadFileApi(newFile).then(response => {\n console.log('上传成功:', response.data.data);\n \n if (response.data && typeof onSuccess === 'function') {\n onSuccess.call(context, response.data.data);\n }\n }).catch((error) => {\n console.error('文件上传失败:', error);\n context.$message({ type: 'error', message: \"上传失败\" });\n });\n}"],"names":["render","_vm","this","_c","_self","staticClass","attrs","loading","on","onSave","_v","_s","ref","upload","showTemplate","back","_m","showRecognitionStatus","class","recognitionStatusType","recognitionStatusIcon","recognitionStatusMessage","_e","templateDialogVisible","handleCloseTemplateDialog","$event","staticStyle","require","slot","invoiceData","title","paymentCode","receivingCode","invoiceCode","checkCode","receivingName","invoiceNumber","billingDate","payerName","payeeName","payerNumber","payeeNumber","payerBank","payeeBank","currencyCode","amountTaxCN","amountTax","_l","invoiceLists","el","key","commodityNo","commodityName","unit","quantity","standard","amount","sealMark","remarks","staticRenderFns","xiangyunKey","secret","numToCny","money","integerNum","decimalNum","parts","cnNums","Array","cnIntRadice","cnIntUnits","cnDecUnits","cnInteger","cnIntLast","maxNum","chineseStr","parseFloat","toString","indexOf","split","substr","parseInt","zeroCount","IntLen","length","i","n","p","q","m","decLen","Number","name","components","data","filePath","recognitionStatus","recognitionMessage","computed","iconMap","success","warning","error","mounted","methods","netocr","file","formData","FormData","append","getNetocr","then","res","invoice","$message","catch","err","console","log","baiduNormal","base64","params","pdf_file","verify_parameter","probability","location","getBaiduNormal","obsFile","domainId","localStorage","getItem","uploadFile","onSuccess","context","event","target","files","allowedTypes","includes","type","$refs","inputRef","value","info","finally","done","downloadTemplateFile","link","document","createElement","href","download","onerror","body","appendChild","click","removeChild","validateInvoiceData","requiredFields","field","label","Object","entries","payment_code","collection_unit_code","bill_code","verification_code","collection_unit_name","bill_number","fill_date","payer_name","payer_bank","payer_account","payee_name","payee_account","payee_bank","amount_words","amount_figures","formateAmout","project_code","project_name","number","fee_standards","sum_price","collection_unit","operator_name","remark","savePayment","code","msg","setTimeout","window","open","close","num","replace","component","service","axios","create","baseURL","origin","timeout","headers","interceptors","request","use","config","url","accessToken","Promise","reject","response","message","Message","statusText","AK","SK","getAccessToken","options","method","resolve","access_token","getBaiduResultSimple","async","getBaiduIdcard","uploadFileToV5Api","uploadBase64ImgToV5Api","confirmCheckStatus","matchFaceApi","baseUrl","bizFaceMode","vtp","appointChannel","commonUploadFileApi","gethwtoken","hwLiveDetectFace","header","e","fileName","newFile","File","call"],"sourceRoot":""}