{"version":3,"sources":["webpack:///./src/assets/images/rv/upload.svg","webpack:///./src/API/userCar.ts","webpack:///./src/assets/images/rv/complete.svg","webpack:///./src/assets/images/step1.svg","webpack:///./src/assets/images/step2.svg","webpack:///./src/views/UserCar/Components/BatchUploadSubmit.vue?4ab4","webpack:///./src/views/UserCar/Components/BatchUploadSubmit.vue","webpack:///./src/views/UserCar/Components/BatchUploadSubmit.vue?a3de","webpack:///./src/utils/claim/b64toBlob.ts","webpack:///./src/views/UserCar/Components/BatchUploadSubmit.vue?e055","webpack:///./src/assets/images/rv/error.svg","webpack:///./src/utils/closing/isExcel.ts","webpack:///./src/views/UserCar/Components/batchInputModel.vue?837b","webpack:///./src/views/UserCar/Components/batchInputModel.vue","webpack:///./src/views/UserCar/Components/batchInputModel.vue?ed8a","webpack:///./src/views/UserCar/Components/BatchUploadSubmit.vue?0638","webpack:///./src/views/UserCar/Components/batchInputModel.vue?5fe6"],"names":["module","exports","deleteBtn","params","countTableSearch","getpageList","batchBack","console","log","batchSubmit","fileUpload","uploadConfig","ImportData","cancelUpload","batchId","viewFile","id","type","operationRecord","appealFileUp","appealFileUpTradeIn","checkForVerifyCPO","deleteBtnTrande","countTableSearchTrande","getpageListTrande","batchBackTrande","batchSubmitTrande","fileUploadTrande","ImportDataTrande","cancelUploadTrande","viewFileTrande","checkForVerifyTradeIn","checkResultUpload","checkResultUploadTrande","getOverView","getOverViewTrande","appealRecord","appealRecordTrande","batchRe","status","ids","batchReTrande","batchReAll","data","batchReTrandeAll","checkForBatchCPO","checkForBatchTradeIn","ucMarketInfoBatchDelete","ucReplacementInfoBatchDelete","checkSingle","checkResult","msg","checkSingleTrande","getOcrist","current","size","reasonList","tagCn","reasonDetailList","checkReasonId","cpoSalesFeedbackInfo","tradeInFeedbackInfo","_withScopeId","n","_hoisted_1","key","_hoisted_2","class","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","src","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","alt","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","style","position","bottom","width","borderTop","padding","textAlign","left","background","borderRadius","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","render","_ctx","_cache","$props","$setup","$data","$options","_component_a_tab_pane","_component_a_tabs","_component_a_upload_dragger","_component_a_progress","_component_a_table","_component_a_pagination","_component_a_button","_component_a_drawer","_component_ExclamationCircleOutlined","_component_a_modal","title","single","placement","closable","maskClosable","visible","isvisible","bodyStyle","paddingTop","onClose","close","default","showVinNo","onChange","isSelBtn","activeKey","$event","tab","_","nameRules","name","multiple","action","listType","showUploadList","customRequest","licenseCustomRequest","beforeUpload","submitFile","onDrop","args","fileNameShow","licenseUploadComplete","licenseTit","percent","licensePercent","licenseProStatus","isComplete","licenseContent","licenseFileSize","includes","parseInt","isSelected","orcTit","ocrPercent","ocrProStatus","ocrContent","ocrFileSize","isContinue","dataContent","length","rowKey","record","index","vinNo","toString","columns","pagination","dataSource","scroll","y","tableHeight","rowClassName","text","fileName","rtnMessage","error","indexOf","total","pageChange","onShowSizeChange","sizeChange","pageSize","currentPage","pageSizeOptions","buildOptionText","props","value","onClick","exportSubmitEvent","footer","infoVisible","dataIndex","slots","customRender","emits","isBatchVisible","Boolean","require","istab","Number","recordVin","Object","undefined","setup","emit","vehicleVinNo","isUploading","isCheckingOcr","changeActiveKey","modalData","modalParams","noticeType","content","btnVisible","regex","licenseCount","licenseFile","licenseKey","licenseFormData","FormData","tempLicenseData","licenseFileNum","isLicenseSuccess","uploadError","licenseClickCount","ocrKey","closeCount","timer","isCancelUpload","continueSumbit","sessionStorage","setItem","delete","cancelUp","isTab","getItem","then","pT","clearInterval","setTimeout","assign","modalVisible","errorMessage","hasError","forEach","ele","toFixed","nowSelectedFileNum","lastSign","submitSign","file","fileList","nameT","Promise","resolve","reject","test","message","splitName","split","isVin","isJpg","isPdf","isLt5M","fileLength","CANCEL_TOKEN","a","CancelToken","cancelFunction","licenseConfig","onUploadProgress","progressEvent","lengthComputable","complete","loaded","Math","floor","cancelToken","c","pollingGetData","setInterval","res","totalElements","push","showOcrTable","totalPages","showOcrTable2","batchLicense","append","code","isResetModal","param","isCloseModal","continue","isResetCount","resetCount","page","batchSub","batchNo","useCurrent","useTotal","percentage","activeValue","e","licenseSession","vlLicenseData","JSON","stringify","warning","tableKey","url","method","Date","format","downloadFile","event","files","dataTransfer","stopPropagation","preventDefault","__exports__","b64toBlob","b64Data","contentType","sliceSize","byteCharacters","atob","byteArrays","offset","slice","byteNumbers","Array","i","charCodeAt","byteArray","Uint8Array","blob","Blob","blobToString","reader","FileReader","readAsBinaryString","onload","ret","result","map","v","toUpperCase","padStart","join","isExcel","len","flag","_component_a_input","centered","onCancel","handleClose","$attrs","handleReset","handleConfim","subTitle","inputValues","item","ref","inputContent","handleInput","required","values","String","input","concat","filter","dom","document","querySelector","scrollTo","scrollHeight","focus"],"mappings":"qGAAAA,EAAOC,QAAU,IAA0B,2B,oCCA3C,w+CAMaC,EAAY,SAACC,GACxB,OAAO,eAAS,iCAAmCA,IAGxCC,EAAmB,SAACD,GAC/B,YAD+B,IAAAA,MAAA,IACxB,eAAS,+BAAgCA,IAGrCE,EAAc,SAACF,GAC1B,YAD0B,IAAAA,MAAA,IACnB,eAAU,+BAAgCA,IAGtCG,EAAY,SAACH,GAExB,YAFwB,IAAAA,MAAA,IACxBI,QAAQC,IAAIL,EAAQ,UACb,eAAU,6BAA8BA,IAGpCM,EAAc,SAACN,GAC1B,OAAO,eAAU,6BAA8BA,IAIpCO,EAAa,SAACP,EAAaQ,GACtC,YADyB,IAAAR,MAAA,IAClB,eAAa,gCAAiCA,EAAQQ,IAGlDC,EAAa,SAACT,EAAaQ,GACtC,YADyB,IAAAR,MAAA,IAClB,eAAa,kCAAmCA,EAAQQ,IAKpDE,EAAe,SAACV,GAC3B,YAD2B,IAAAA,MAAA,IACpB,eACL,4CAA+CA,EAAeW,UAKrDC,EAAW,SAACZ,GACvB,YADuB,IAAAA,MAAA,IAChB,eACL,kCACGA,EAAea,GAChB,SACCb,EAAec,OAKTC,EAAkB,SAACf,GAC9B,YAD8B,IAAAA,MAAA,IACvB,eAAS,2CAA4C,CAAEA,OAAM,KAGzDgB,EAAe,SAAChB,GAC3B,YAD2B,IAAAA,MAAA,IACpB,eAAa,6BAA8BA,IAIvCiB,EAAsB,SAACjB,GAClC,YADkC,IAAAA,MAAA,IAC3B,eAAa,kCAAmCA,IAI5CkB,EAAoB,SAAClB,GAChC,YADgC,IAAAA,MAAA,IACzB,eAAS,wCAA0CA,IAK/CmB,EAAkB,SAACnB,GAC9B,YAD8B,IAAAA,MAAA,IACvB,eAAS,sCAAwCA,IAO7CoB,EAAyB,SAACpB,GACrC,YADqC,IAAAA,MAAA,IAC9B,eAAS,oCAAqCA,IAG1CqB,EAAoB,SAACrB,GAChC,YADgC,IAAAA,MAAA,IACzB,eAAU,oCAAqCA,IAG3CsB,EAAkB,SAACtB,GAE9B,YAF8B,IAAAA,MAAA,IAC9BI,QAAQC,IAAIL,EAAQ,UACb,eAAU,kCAAmCA,IAGzCuB,EAAoB,SAACvB,GAChC,OAAO,eAAU,kCAAmCA,IAQzCwB,EAAmB,SAC9BxB,EACAQ,GAEA,YAHA,IAAAR,MAAA,IAGO,eACL,qCACAA,EACAQ,IAISiB,EAAmB,SAC9BzB,EACAQ,GAEA,YAHA,IAAAR,MAAA,IAGO,eACL,uCACAA,EACAQ,IAMSkB,EAAqB,SAAC1B,GACjC,YADiC,IAAAA,MAAA,IAC1B,eACL,iDAAoDA,EAAeW,UAK1DgB,EAAiB,SAAC3B,GAC7B,YAD6B,IAAAA,MAAA,IACtB,eACL,uCACGA,EAAea,GAChB,SACCb,EAAec,OAITc,EAAwB,SAAC5B,GACpC,YADoC,IAAAA,MAAA,IAC7B,eAAS,6CAA+CA,IAKpD6B,EAAoB,SAC/B7B,EACAQ,GAEA,YAHA,IAAAR,MAAA,IAGO,eACL,0CACAA,EACAQ,IAISsB,EAA0B,SACrC9B,EACAQ,GAEA,YAHA,IAAAR,MAAA,IAGO,eACL,+CACAA,EACAQ,IAISuB,EAAc,SAAC/B,GAC1B,YAD0B,IAAAA,MAAA,IACnB,eAAS,uCAAwCA,IAG7CgC,EAAoB,SAAChC,GAChC,YADgC,IAAAA,MAAA,IACzB,eAAS,4CAA6CA,IAIlDiC,EAAe,SAACjC,GAC3B,YAD2B,IAAAA,MAAA,IACpB,eAAS,qCAAwCA,EAAea,KAI5DqB,EAAqB,SAAClC,GACjC,YADiC,IAAAA,MAAA,IAC1B,eACL,0CAA6CA,EAAea,KAKnDsB,EAAU,SAACnC,GACtB,OAAO,eACL,wCAA0CA,EAAOoC,OACjDpC,EAAOqC,MAIEC,EAAgB,SAACtC,GAC5B,OAAO,eACL,6CAA+CA,EAAOoC,OACtDpC,EAAOqC,MAKEE,EAAa,SAACvC,GACzB,OAAO,eACL,6CAA+CA,EAAOoC,OACtDpC,EAAOwC,OAIEC,EAAmB,SAACzC,GAC/B,OAAO,eACL,kDAAoDA,EAAOoC,OAC3DpC,EAAOwC,OAIEE,EAAmB,SAAC1C,GAC/B,OAAO,eACL,2CAA2CA,EAAOoC,OAClDpC,EAAOwC,OAIEG,EAAuB,SAAC3C,GACnC,OAAO,eACL,gDAAgDA,EAAOoC,OACvDpC,EAAOwC,OAQEI,EAA0B,SAAC5C,GACtC,YADsC,IAAAA,MAAA,IAC/B,eAAU,kCAAmCA,IAMzC6C,EAA+B,SAAC7C,GAC3C,YAD2C,IAAAA,MAAA,IACpC,eAAU,uCAAwCA,IAG9C8C,EAAc,SAAC9C,GAC1B,OAAO,eACL,+CACEA,EAAOa,GACP,gBACAb,EAAO+C,YACP,QACA/C,EAAOgD,MAIAC,EAAoB,SAACjD,GAChC,OAAO,eACL,oDACEA,EAAOa,GACP,gBACAb,EAAO+C,YACP,QACA/C,EAAOgD,MAKAE,EAAY,SAAClD,GACxB,OAAO,eACL,uCACEA,EAAOW,QACP,YACAX,EAAOmD,QACP,SACAnD,EAAOoD,OAIAC,EAAa,SAACC,GACzB,OAAO,eAAS,sCAAuC,CACrDtD,OAAQ,CACNsD,MAAK,MAKEC,EAAmB,SAC9BC,GAEA,OAAO,eAAS,4CAA6C,CAC3DxD,OAAQ,CACNwD,cAAa,MAKNC,EAAuB,SAAC5C,GACnC,OAAO,eAAS,yCAAyCA,IAG9C6C,EAAsB,SAAC7C,GAClC,OAAO,eAAS,qCAAqCA,K,uBCrTvDhB,EAAOC,QAAU,IAA0B,6B,uBCA3CD,EAAOC,QAAU,IAA0B,0B,gDCA3CD,EAAOC,QAAU,IAA0B,0B,yKCQrC6D,EAAe,SAAAC,GAAK,OAAC,yBAAa,mBAAmBA,EAAEA,IAAI,0BAAcA,GACzEC,EAAa,CAAEC,IAAK,GACpBC,EAAa,CAAEC,MAAO,mBACtBC,EAAa,CAAED,MAAO,cACtBE,EAA0B,6BAAiB,YAC3CC,EAAa,CAAEH,MAAO,aACtBI,EAAa,CAAEJ,MAAO,oBACtBK,EAAa,CACjBP,IAAK,EACLE,MAAO,WAEHM,EAA2BX,GAAa,WAAmB,uCAAoB,IAAK,CAAEK,MAAO,wBAA0B,CAC9G,gCAAoB,MAAO,CACtCO,IAAK,IACLP,MAAO,iBAEP,MACEQ,EAAa,CAAER,MAAO,mBACtBS,EAA4Bd,GAAa,WAAmB,uCAAoB,OAAQ,CAAEK,MAAO,YAAc,UAAW,MAC1HU,EAAc,CAClBZ,IAAK,EACLE,MAAO,6BAEHW,EAAc,CAAEX,MAAO,eACvBY,EAAc,CAAEZ,MAAO,mBACvBa,EAAc,CAAEb,MAAO,oBACvBc,EAA4BnB,GAAa,WAAmB,uCAAoB,MAAO,CAC3FY,IAAK,IACLQ,IAAK,GACLf,MAAO,aACN,MAAO,MACJgB,EAAc,CAAEhB,MAAO,gBACvBiB,EAAc,CAAEjB,MAAO,eACvBkB,EAAc,CAAElB,MAAO,qBACvBmB,EAAc,CAClBrB,IAAK,EACLE,MAAO,eAEHoB,EAAc,CAClBtB,IAAK,EACLS,IAAK,IACLP,MAAO,gBAEHqB,EAAc,CAClBvB,IAAK,EACLS,IAAK,IACLP,MAAO,gBAEHsB,EAAc,CAAExB,IAAK,GACrByB,EAAc,CAAEvB,MAAO,oBACvBwB,EAAc,CAClB1B,IAAK,EACLE,MAAO,6BAEHyB,EAAc,CAAEzB,MAAO,eACvB0B,EAAc,CAAE1B,MAAO,mBACvB2B,EAAc,CAAE3B,MAAO,oBACvB4B,EAA4BjC,GAAa,WAAmB,uCAAoB,MAAO,CAC3FY,IAAK,IACLQ,IAAK,GACLf,MAAO,aACN,MAAO,MACJ6B,EAAc,CAAE7B,MAAO,gBACvB8B,EAAc,CAAE9B,MAAO,eACvB+B,EAAc,CAAE/B,MAAO,qBACvBgC,EAAc,CAClBlC,IAAK,EACLE,MAAO,eAEHiC,EAA4BtC,GAAa,WAAmB,uCAAoB,MAAO,CAC3FY,IAAK,IACLP,MAAO,gBACN,MAAO,MACJkC,EAA2B,6BAAiB,QAC5CC,EAAc,CAClBF,EACAC,GAEIE,EAAc,CAAEtC,IAAK,GACrBuC,EAAc,CAClBvC,IAAK,EACLE,MAAO,oBAEHsC,EAAc,CAClBxC,IAAK,EACLE,MAAO,aAEHuC,GAAc,CAAEvC,MAAO,UACvBwC,GAAc,CAAExC,MAAO,iBACvByC,GAAc,CAAEC,MAAO,CACrBC,SAAU,WACVC,OAAQ,EACRC,MAAO,OACPC,UAAW,oBACXC,QAAS,YACTC,UAAW,QACXC,KAAM,EACNC,WAAY,OACZC,aAAc,gBAEhBC,GAA2B,6BAAiB,UAC5CC,GAA2B,6BAAiB,QAC5CC,GAA2B,6BAAiB,UAC5CC,GAA4B5D,GAAa,WAAmB,uCAAoB,IAAK,KAAM,iCAAkC,MAE5H,SAAS6D,GAAOC,EAAUC,EAAYC,EAAYC,EAAYC,EAAWC,GAC9E,IAAMC,EAAwB,8BAAkB,cAC1CC,EAAoB,8BAAkB,UACtCC,EAA8B,8BAAkB,oBAChDC,EAAwB,8BAAkB,cAC1CC,EAAqB,8BAAkB,WACvCC,EAA0B,8BAAkB,gBAC5CC,EAAsB,8BAAkB,YACxCC,EAAsB,8BAAkB,YACxCC,EAAuC,8BAAkB,6BACzDC,EAAqB,8BAAkB,WAE7C,OAAQ,yBAAc,gCAAoB,cAAW,KAAM,CACzD,yBAAaF,EAAqB,CAChCG,MAAOhB,EAAKiB,OAAS,WAAa,WAClCC,UAAW,QACXC,UAAU,EACVC,cAAc,EACdC,QAASrB,EAAKsB,UACdlC,MAAO,SACPmC,UAAW,CAAEC,WAAY,OACzBC,QAASzB,EAAK0B,OACb,CACDC,QAAS,sBAAS,WAAM,OACrB3B,EAAW,QACP,yBAAc,gCAAoB,IAAK5D,EAAY,OAAS,6BAAiB4D,EAAK4B,WAAY,IAC/F,gCAAoB,IAAI,GAC5B,gCAAoB,MAAOtF,EAAY,CACrC,yBAAaiE,EAAmB,CAC9BsB,SAAU7B,EAAK8B,SACfC,UAAW/B,EAAK+B,UAChB,qBAAsB9B,EAAO,KAAOA,EAAO,GAAK,SAAC+B,GAAgB,OAAEhC,EAAc,UAAIgC,KACpF,CACDL,QAAS,sBAAS,WAAM,OACtB,yBAAarB,EAAuB,CAClCjE,IAAK,IACL4F,IAAK,UAEP,yBAAa3B,EAAuB,CAClCjE,IAAK,IACL4F,IAAK,QAEP,yBAAa3B,EAAuB,CAClCjE,IAAK,IACL4F,IAAK,SAEP,yBAAa3B,EAAuB,CAClCjE,IAAK,IACL4F,IAAK,SAEP,yBAAa3B,EAAuB,CAClCjE,IAAK,IACL4F,IAAK,SAEP,yBAAa3B,EAAuB,CAClCjE,IAAK,IACL4F,IAAK,SAEP,yBAAa3B,EAAuB,CAClCjE,IAAK,IACL4F,IAAK,SAEP,yBAAa3B,EAAuB,CAClCjE,IAAK,IACL4F,IAAK,WAGTC,EAAG,GACF,EAAG,CAAC,WAAY,gBAErB,gCAAoB,IAAK1F,EAAY,CACnCC,EACA,gCAAoB,OAAQ,KAAM,6BAAiBuD,EAAKmC,WAAY,KAEtE,gCAAoB,MAAOzF,EAAY,CACrC,gCAAoB,MAAOC,EAAY,CACpCqD,EAA0B,uBACtB,yBAAc,gCAAoB,MAAOpD,EAAY,CACpD,yBAAa4D,EAA6B,CACxC4B,KAAM,OACNC,UAAWrC,EAAKiB,OAChBqB,OAAQ,GACRC,SAAU,eACVC,gBAAgB,EAChBC,cAAezC,EAAK0C,qBACpB,gBAAiB1C,EAAK2C,aACtBd,SAAU7B,EAAK4C,YACd,CACDjB,QAAS,sBAAS,WAAM,OACtB,gCAAoB,MAAO,CACzBpF,MAAO,eACPsG,OAAQ5C,EAAO,KAAOA,EAAO,GAErD,W,IAAC,sDAAY,OAACD,EAAK6C,QAAU7C,EAAK6C,OAAM,MAAX7C,EAAI,iCAAW8C,QACnB,CACDjG,EACA,gCAAoB,IAAKE,EAAY,CACnC,6BAAiB,MAAQ,6BAAiBiD,EAAK+C,cAAgB,SAAU,GACzE/F,KAED,QAELkF,EAAG,GACF,EAAG,CAAC,WAAY,gBAAiB,gBAAiB,gBAEvD,gCAAoB,IAAI,KAE5BlC,EAAKgD,sBA4BH,gCAAoB,IAAI,IA3BvB,yBAAc,gCAAoB,MAAO/F,EAAa,CACrD,gCAAoB,MAAOC,EAAa,CACtC,gCAAoB,MAAOC,EAAa,CACtC,gCAAoB,MAAOC,EAAa,CACtCC,EACA,gCAAoB,MAAOE,EAAa,CACtC,gCAAoB,MAAOC,EAAa,6BAAiBwC,EAAKiD,YAAa,GAC3E,yBAAaxC,EAAuB,CAClCyC,QAASlD,EAAKmD,eACdxI,OAAQqF,EAAKoD,kBACZ,KAAM,EAAG,CAAC,UAAW,WACxB,gCAAoB,MAAO3F,EAAa,CACd,KAAvBuC,EAAKmD,gBACD,yBAAc,gCAAoB,MAAOzF,EAAa,CACjC,MAAnBsC,EAAKqD,YACD,yBAAc,gCAAoB,MAAO1F,KACzC,yBAAc,gCAAoB,MAAOC,IAC9C,6BAAiB,IAAM,6BAAiBoC,EAAKqD,YAAa,OAE3D,yBAAc,gCAAoB,MAAOxF,EAAa,6BAAiBmC,EAAKsD,gBAAiB,MAEpG,gCAAoB,MAAOxF,EAAa,6BAAiBkC,EAAKuD,iBAAkB,eAO5FvD,EAAKgD,uBAAyB,CAAC,EAAG,EAAG,IAAK,KAAKQ,SAASC,SAASzD,EAAK0D,cAAmC,MAAnB1D,EAAKqD,YACxF,yBAAc,gCAAoB,MAAOtF,EAAa,CACrD,gCAAoB,MAAOC,EAAa,CACtC,gCAAoB,MAAOC,EAAa,CACtC,gCAAoB,MAAOC,EAAa,CACtCC,EACA,gCAAoB,MAAOC,EAAa,CACtC,gCAAoB,MAAOC,EAAa,6BAAiB2B,EAAK2D,QAAS,GACvE,yBAAalD,EAAuB,CAClCyC,QAASlD,EAAK4D,WACdjJ,OAAQqF,EAAK6D,cACZ,KAAM,EAAG,CAAC,UAAW,WACxB,gCAAoB,MAAOvF,EAAa,CAClB,KAAnB0B,EAAK4D,YACD,yBAAc,gCAAoB,MAAOrF,EAAaG,IACvD,gCAAoB,IAAI,GAC3BsB,EAAkB,eACd,yBAAc,gCAAoB,MAAOrB,EAAa,6BAAiBqB,EAAK8D,YAAa,IAC1F,gCAAoB,IAAI,KAE7B9D,EAAkB,eACd,yBAAc,gCAAoB,MAAOpB,EAAa,6BAAiBoB,EAAK+D,aAAc,IAC3F,gCAAoB,IAAI,cAMtC,gCAAoB,IAAI,KAE7B/D,EAAKgE,YAAchE,EAAKiE,YAAYC,QAChC,yBAAc,gCAAoB,MAAOrF,EAAa,CACrD,gCAAoB,MAAOC,GAAa,CACtC,yBAAa4B,EAAoB,CAC/ByD,OACN,SAACC,EAAQC,GACP,OAAOD,EAAOE,MAAQD,EAAME,YAGxBC,QAASxE,EAAKwE,QACdC,YAAY,EACZC,WAAY1E,EAAKiE,YACjBU,OAAQ,CAAEC,EAAG5E,EAAK6E,aAClBC,aAAc,SAACV,EAAQC,GAAU,OAACA,EAAQ,IAAM,EAAI,gBAAkB,OACrE,CACDC,MAAO,sBAAS,SAAC,G,IAAES,EAAI,OAAO,OAC5B,gCAAoB,OAAQ,KAAM,6BAAiBA,GAAO,OAE5DC,SAAU,sBAAS,SAAC,G,IAAED,EAAI,OAAO,OAC/B,gCAAoB,OAAQ,KAAM,6BAAiBA,GAAO,OAE5DE,WAAY,sBAAS,SAAC,G,IAAEF,EAAI,OAAO,OACjC,gCAAoB,OAAQ,CAC1BxI,MAAO,4BAAgB,CAAE2I,MAAOH,EAAKI,QAAQ,OAAS,KACrD,6BAAiBJ,GAAO,OAE7B7C,EAAG,GACF,EAAG,CAAC,SAAU,UAAW,aAAc,SAAU,iBACpD,gCAAoB,MAAOnD,GAAa,CACtC,yBAAa4B,EAAyB,CACpCyE,MAAOpF,EAAKyE,WAAWW,MACvB,oBAAqB,GACrB,aAAc,SAACA,GAAU,WAAKA,EAAK,MACnCvD,SAAU7B,EAAKqF,WACfC,iBAAkBtF,EAAKuF,WACvBC,SAAUxF,EAAKyE,WAAWe,SAC1B,oBAAqBvF,EAAO,KAAOA,EAAO,GAAK,SAAC+B,GAAgB,OAAEhC,EAAKyE,WAAmB,SAAIzC,IAC9FtG,QAASsE,EAAKyE,WAAWgB,YACzB,mBAAoBxF,EAAO,KAAOA,EAAO,GAAK,SAAC+B,GAAgB,OAAEhC,EAAKyE,WAAsB,YAAIzC,IAChG0D,gBAAiB,CAAC,KAAM,KAAM,KAAM,KAAM,OACzC,CACDC,gBAAiB,sBAAS,SAACC,GAAU,OACnC,gCAAoB,OAAQ,KAAM,6BAAiBA,EAAMC,OAAS,MAAO,OAE3E3D,EAAG,GACF,EAAG,CAAC,QAAS,aAAc,WAAY,mBAAoB,WAAY,mBAIhF,gCAAoB,IAAI,GAC5B,gCAAoB,MAAOlD,GAAa,CACrCgB,EAAKgE,YAAc,CAAC,EAAG,GAAGR,SAASxD,EAAK0D,cAAgB1D,EAAKiB,QACzD,yBAAc,yBAAaL,EAAqB,CAC/CvE,IAAK,EACLhD,KAAM,UACNyM,QAAS9F,EAAK+F,kBACd9G,MAAO,CAAC,eAAe,QACtB,CACD0C,QAAS,sBAAS,WAAM,OACtBhC,OAEFuC,EAAG,GACF,EAAG,CAAC,aACP,gCAAoB,IAAI,GAC5B,yBAAatB,EAAqB,CAChCvH,KAAM,UACNyM,QAAS9F,EAAK0B,OACb,CACDC,QAAS,sBAAS,WAAM,OACtB/B,OAEFsC,EAAG,GACF,EAAG,CAAC,kBAGXA,EAAG,GACF,EAAG,CAAC,QAAS,UAAW,YAC3B,yBAAanB,EAAoB,CAC/BiF,OAAQ,KACR3E,QAASrB,EAAKiG,YACd,mBAAoBhG,EAAO,KAAOA,EAAO,GAAK,SAAC+B,GAAgB,OAAEhC,EAAgB,YAAIgC,IACrFhB,MAAO,MACN,CACDA,MAAO,sBAAS,WAAM,OACpB,yBAAaF,EAAsC,CAAE7B,MAAO,CAAC,MAAQ,uBACrEY,OAEF8B,QAAS,sBAAS,WAAM,OACtB7B,OAEFoC,EAAG,GACF,EAAG,CAAC,aACN,I,qHCzWCsC,GAAU,CACd,CACExD,MAAO,MACPkF,UAAW,QACX7J,IAAK,QACL+C,MAAO,KAET,CACE4B,MAAO,MACPkF,UAAW,WACX7J,IAAK,WACL+C,MAAO,KAET,CACE4B,MAAO,OACPkF,UAAW,YACX7J,IAAK,YACL+C,MAAO,IACP+G,MAAO,CAAEC,aAAc,eAIZ,gCAAgB,CAC7BC,MAAO,CAAC,sBAAuB,iBAAkB,cACjDT,MAAO,CACLU,eAAgB,CACdjN,KAAMkN,QACNC,SAAS,EACT7E,SAAS,GAEXV,OAAQ,CACN5H,KAAMkN,QACNC,SAAS,EACT7E,SAAS,GAEX8E,MAAO,CACLpN,KAAMqN,OACNF,SAAS,EACT7E,QAAS,GAEXgF,UAAW,CACTtN,KAAMuN,OACNJ,SAAS,EACT7E,QAAS,WACP,MAAO,CAAE2C,MAAO,MAAOlL,QAAIyN,MAKjCC,MAAA,SAAMlB,EAAO,GAAb,WAAemB,EAAI,OACXnF,EAAY,iBAAI,IAChBO,EAAY,iBAAI,OACM,GAAvByD,EAAca,MACjB7E,EAAUiE,MAASD,EAAce,UAAUrC,MAE3C1C,EAAUiE,MAASD,EAAce,UAAUK,aAE7C,IAAMf,EAAc,kBAAI,GAClBgB,EAAc,kBAAI,GAClBC,EAAgB,kBAAI,GACpB5F,EAAasE,EAAcU,eAC3BjD,EAAa,iBAAI,MAEjBtB,EAAY,iBAAI,KAChBoF,EAAkB,SAAC9C,GACvBtC,EAAU8D,MAAQxB,GAIdI,EAAa,sBAAS,CAC1BW,MAAO,EACPK,YAAa,EACbD,SAAU,KAGN4B,EAAY,sBAAS,IACrBC,EAAc,sBAAS,CAC3BC,WAAY,GACZC,QAAS,GACTC,YAAY,IAGVC,EAAQ,UAEN/D,EAAa,iBAAY,GACzBX,EAAe,iBAAY,SAG3BC,EAAwB,kBAAa,GACrC0E,EAAe,iBAAI,GACnBC,EAAc,iBAAI,IAClBrE,EAAiB,iBAAY,OAC7BC,EAAkB,iBAAY,IAC9BqE,EAAa,iBAAY,mBAC3BC,EAAkB,IAAIC,SAEpBC,EAAkB,iBAAI,IACtB9E,EAAa,iBAAY,QACzBE,EAAiB,iBAAY,GAC7B6E,EAAiB,iBAAY,GAC7BC,EAAmB,kBAAa,GAChC7E,EAAmB,iBAAY,UAC/B8E,EAAc,kBAAa,GAC3BC,EAAoB,iBAAY,GAIhCxE,EAAS,iBAAY,SACrBC,EAAa,iBAAY,GACzBC,EAAe,iBAAY,UAC3BC,EAAa,iBAAY,IACzBC,EAAc,iBAAY,IAC1BqE,EAAS,iBAAY,mBACrBnE,EAAmB,sBAAS,IAC5BS,EAAa,iBAAI,CACrB6C,QAAS,KAELvD,EAAa,kBAAa,GAC1BrI,EAAO,iBAAY,IACnB0M,EAAa,iBAAY,GACzBC,EAAQ,iBAAY,GACtBC,GAAiB,EAEfC,EAAiB,WACrBC,eAAeC,QAAQ,gBAAiB,IACxCD,eAAeC,QAAQ,gBAAiB,IACxC1F,EAAsB6C,OAAQ,EAC9B7B,EAAW6B,OAAQ,EACnB+B,EAAW/B,MAAQ,kBACnB1C,EAAe0C,MAAQ,EACvBjC,EAAWiC,MAAQ,EACnBgC,EAAgBc,OAAO,UAGnBC,EAAW,WACa,GAAvBhD,EAAciD,MACjB,gBAAa,CACX3P,QAASuP,eAAeK,QAAQ,aAC/BC,MAAK,WAGNhC,EAAK,sBAAuB,CAAET,gBAAgB,OAGhD,gBAAmB,CACjBpN,QAASuP,eAAeK,QAAQ,aAC/BC,MAAK,WAENhC,EAAK,sBAAuB,CAAET,gBAAgB,QAI9C0C,EAAK,iBAAS,GAEdtH,EAAQ,WACZuH,cAAcX,EAAMzC,OACpBoD,cAAcD,EAAGnD,OACb0C,EACFW,YAAW,WACTX,GAAiB,MAKrBF,EAAWxC,MAAQ,EACfoB,EAAYpB,OACd+C,IACAvB,EAAYC,WAAa,UACzBD,EAAYE,QAAU,mCACtBF,EAAYG,YAAa,EACzBZ,OAAOuC,OAAO/B,EAAWC,GACzBoB,eAAeC,QAAQ,UAAWd,EAAW/B,OAC7CkB,EAAK,iBAAkB,CACrBqC,cAAc,EACdhC,UAAWA,KAEJF,EAAcrB,OACvB+C,IACAvB,EAAYC,WAAa,UACzBD,EAAYE,QAAU,8BACtBF,EAAYG,YAAa,EACzBZ,OAAOuC,OAAO/B,EAAWC,GACzBoB,eAAeC,QAAQ,UAAWd,EAAW/B,OAC7CkB,EAAK,iBAAkB,CACrBqC,cAAc,EACdhC,UAAWA,aAGNqB,eAAe,WACtB1B,EAAK,sBAAuB,CAAET,gBAAgB,KAEhDS,EAAK,aAAc,MAEfsC,EAAe,iBAAY,IAC3BC,GAAW,kBAAI,GAEf5G,GAAuB,WAE3B,GADA/J,QAAQC,IAAI,IACP0Q,GAASzD,MAAO,CACnB,IAAM,EAAO,iBAAY,GACzB8B,EAAY9B,MAAM0D,SAAQ,SAACC,GACzB,EAAK3D,MAAQ,EAAKA,MAAQ2D,EAAI7N,QAEhCqM,EAAenC,MAAQ8B,EAAY9B,MAAM3B,OACzCZ,EAAeuC,MAAQ,KAAOmC,EAAenC,MAAQ,SACrDtC,EAAgBsC,OAAS,EAAKA,MAAQ,KAAO,MAAM4D,QAAQ,GAAK,KAChEzG,EAAsB6C,OAAQ,IAG9B6D,GAAqB,EAEnBC,GAAW,kBAAI,GACjBC,IAAa,EACXjH,GAAe,SAACkH,EAAgBC,GACpCnR,QAAQC,IAAI,oBAAqBiR,EAAMC,GACvC,IAAMC,EAAQF,EAAKzH,KAAO,GAoB1B,OAnBAsH,GAAqBI,EAAS5F,OAC1B4F,EAAS5F,OAAS,GAAK2F,IAASC,EAASA,EAAS5F,OAAS,GAC7DyF,GAAS9D,OAAQ,EAUjB8D,GAAS9D,OAAQ,EAGK,IAApBiE,EAAS5F,SACXyF,GAAS9D,OAAQ,GAGZ,IAAImE,SAAQ,SAACC,EAASC,GAG3B,GAAwB,GAApBxG,EAAWmC,MAAY,CAEzB,GADA4B,EAAQ,WACHA,EAAM0C,KAAKJ,GASd,OARIJ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,iCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,iCAEhB,EAEP,IAAMwE,EAAYN,EAAMO,MAAM,KACxBC,EAAQF,EAAU,GAAGC,MAAM,KACjC,GAAgB,IAAZC,EAAM,GASR,OARIZ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,iCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,iCAEhB,OAGN,GAAwB,GAApBnC,EAAWmC,MAAY,CAEhC,GADA4B,EAAQ,WACHA,EAAM0C,KAAKJ,GAUd,OATIJ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,gCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjB6B,EAAa7B,MAAQ,EACrBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,gCAEhB,EAEDwE,EAAYN,EAAMO,MAAM,KACxBC,EAAQF,EAAU,GAAGC,MAAM,KACjC,GAAgB,IAAZC,EAAM,GASR,OARIZ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,gCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,gCAEhB,OAGN,GAAwB,GAApBnC,EAAWmC,MAAY,CAGhC,GAFA4B,EAAQ,WAEHA,EAAM0C,KAAKJ,GAUd,OATIJ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,gCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjB6B,EAAa7B,MAAQ,EACrBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,gCAEhB,EAEDwE,EAAYN,EAAMO,MAAM,KACxBC,EAAQF,EAAU,GAAGC,MAAM,KACjC,GAAgB,IAAZC,EAAM,GASR,OARIZ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,gCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,gCAEhB,OAGN,GAAwB,GAApBnC,EAAWmC,MAAY,CAGhC,GAFA4B,EAAQ,WAEHA,EAAM0C,KAAKJ,GAUd,OATIJ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,gCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjB6B,EAAa7B,MAAQ,EACrBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,gCAEhB,EAEDwE,EAAYN,EAAMO,MAAM,KACxBC,EAAQF,EAAU,GAAGC,MAAM,KACjC,GAAgB,IAAZC,EAAM,GASR,OARIZ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,gCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,gCAEhB,OAGN,GAAwB,GAApBnC,EAAWmC,MAAY,CAGhC,GAFA4B,EAAQ,WAEHA,EAAM0C,KAAKJ,GAUd,OATIJ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,gCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjB6B,EAAa7B,MAAQ,EACrBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,gCAEhB,EAEDwE,EAAYN,EAAMO,MAAM,KACxBC,EAAQF,EAAU,GAAGC,MAAM,KACjC,GAAgB,IAAZC,EAAM,GASR,OARIZ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,gCACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,gCAEhB,OAGN,GAAwB,GAApBnC,EAAWmC,MAAY,CAGhC,GAFA4B,EAAQ,SAEHA,EAAM0C,KAAKJ,GAUd,OATIJ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,4BACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjB6B,EAAa7B,MAAQ,EACrBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,4BAEhB,EAEDwE,EAAYN,EAAMO,MAAM,KACxBC,EAAQF,EAAU,GAAGC,MAAM,KACjC,GAAgB,IAAZC,EAAM,GASR,OARIZ,GAAS9D,OACXuE,GAAA,KAAQlF,MAAM,4BACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAErBwD,EAAaxD,MAAQ,4BAEhB,EAIb,IAAMtN,EAAS,sBAAS,CACtB+O,WAAY,GACZC,QAAS,GACTC,YAAY,IAGRgD,EAAsB,eAAdX,EAAKxQ,KACboR,EAAsB,oBAAdZ,EAAKxQ,KACnB,IAAKmR,IAAUC,EAiBb,OAhBAlS,EAAO+O,WAAa,QACpB/O,EAAOgP,QAAU,8BACjB8B,EAAaxD,MAAQ,8BACjB8D,GAAS9D,QACXuE,GAAA,KAAQlF,MAAM,+BACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAEvBtN,EAAOiP,YAAa,EACpBT,EAAK,iBAAkB,CACrBqC,cAAc,EACdhC,UAAW7O,IAEbmP,EAAa7B,MAAQ,EAEdqE,GAAO,GAGhB,IAAMQ,EAASb,EAAKlO,KAAO,KAAO,KAAO,EACzC,IAAK+O,EAiBH,OAhBAnS,EAAO+O,WAAa,QACpB/O,EAAOgP,QAAU,eACjB8B,EAAaxD,MAAQ,eACjB8D,GAAS9D,QACXuE,GAAA,KAAQlF,MAAM,eACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAEvBtN,EAAOiP,YAAa,EACpBT,EAAK,iBAAkB,CACrBqC,cAAc,EACdhC,UAAW7O,IAEbmP,EAAa7B,MAAQ,EAEdqE,GAAO,GAGhB,IAAMS,EAAab,EAAS5F,OAC5B,OAAIyG,EAAa,KACfpS,EAAO+O,WAAa,QACpB/O,EAAOgP,QAAU,eACjB8B,EAAaxD,MAAQ,eACjB8D,GAAS9D,QACXuE,GAAA,KAAQlF,MAAM,gBACdyE,GAAS9D,OAAQ,EACjByD,GAASzD,OAAQ,EACjBwD,EAAaxD,MAAQ,IAEvBtN,EAAOiP,YAAa,EACpBT,EAAK,iBAAkB,CACrBqC,cAAc,EACdhC,UAAW7O,IAEbmP,EAAa7B,MAAQ,EAEdqE,GAAO,IAEZP,GAAS9D,OAASwD,EAAaxD,MAAM3B,OAAS,GAChDkG,GAAA,KAAQlF,MAAMmE,EAAaxD,OAC3B8D,GAAS9D,OAAQ,EACjBwD,EAAaxD,MAAQ,GACrByD,GAASzD,OAAQ,EACVoE,GAAQ,IAGbN,GAAS9D,OAAuC,IAA9BwD,EAAaxD,MAAM3B,QACvCyF,GAAS9D,OAAQ,EACjBwD,EAAaxD,MAAQ,GACrByD,GAASzD,OAAQ,EACjB8B,EAAY9B,MAAQiE,EACpB/B,EAAgBlC,MAAQiE,EACxBF,IAAa,EACNK,GAAQ,SAPjB,MAiBEW,GAAe,GAAAC,EAAMC,YACvBC,GAAiB,WACnBpS,QAAQC,IAAI,iBAERoS,GAAgB,CACpBC,iBAAkB,SAACC,GACjB,GAAIA,EAAcC,iBAAkB,CAClC,IAAMC,EAAaF,EAAcG,OAASH,EAAc9F,MAAS,IAAO,EACxEjC,EAAe0C,MAAQuF,EACvB9H,EAAeuC,MACbyF,KAAKC,MAAOL,EAAcG,OAASH,EAAc9F,MAAS4C,EAAenC,OACzE,IACAmC,EAAenC,MACf,IACAuF,EACA,SAINI,YAAa,IAAIZ,IAAa,SAACa,GAE7BV,GAAiB,WACfxC,GAAiB,EACjBkD,SAMAC,GAAiB,WACjB,CAAC,EAAG,EAAG,IAAK,KAAKlI,SAASE,EAAWmC,QAAU5B,EAAYC,OAAS8D,EAAenC,QACrFmD,EAAGnD,MAAQ8F,aAAY,6D,+CACrB,gBAAU,CACRzS,QAASuP,eAAeK,QAAQ,WAChCpN,QAAS+I,EAAWgB,YACpB9J,KAAM8I,EAAWe,WAChBuD,MAAK,SAAC6C,GAOP,GANIA,EAAIC,eAAiB7D,EAAenC,QACtCoD,cAAcD,EAAGnD,OACjBmD,EAAGnD,MAAQ,GAEb5B,EAAYC,OAAS,EACrBD,EAAY6H,KAAI,MAAhB7H,EAAW,iCAAS2H,EAAIrE,WACnB3B,EAAc3E,OAAQ,CACzB,IAAIqD,EAAQ,GAEVA,EAD0B,GAAvBsB,EAAca,MACRb,EAAce,UAAUrC,MAExBsB,EAAce,UAAUK,aAG/B/C,EAAYC,SACdD,EAAY,GAAGK,MAAQA,GAG3BN,EAAW6B,OAAQ,EACnBpB,EAAWe,SAAWoG,EAAIjQ,KAC1B8I,EAAWgB,YAAc,EACzBhB,EAAWW,MAAQwG,EAAIC,iB,YAExB,OAKDE,GAAe,WACnB,gBAAU,CACR7S,QAASuP,eAAeK,QAAQ,WAChCpN,QAAS+I,EAAWgB,YACpB9J,KAAM8I,EAAWe,WAChBuD,MAAK,SAAC6C,GAGP,GAFA3H,EAAYC,OAAS,EACrBD,EAAY6H,KAAI,MAAhB7H,EAAW,iCAAS2H,EAAIrE,WACnB3B,EAAc3E,QAAUgD,EAAYC,OAAS,EAAG,CACnD,IAAII,EAAQ,GAEVA,EAD0B,GAAvBsB,EAAca,MACRb,EAAce,UAAUrC,MAExBsB,EAAce,UAAUK,aAEnC/C,EAAY,GAAGK,MAAQA,EAEzBN,EAAW6B,OAAQ,EACnBpB,EAAWe,SAAWoG,EAAIjQ,KAC1B8I,EAAWgB,YAAcmG,EAAII,WAC7BvH,EAAWW,MAAQwG,EAAIC,cACvBH,SAGEO,GAAgB,WACpB,gBAAU,CACR/S,QAASuP,eAAeK,QAAQ,WAChCpN,QAAS+I,EAAWgB,YACpB9J,KAAM8I,EAAWe,WAChBuD,MAAK,SAAC6C,GAGP,GAFA3H,EAAYC,OAAS,EACrBD,EAAY6H,KAAI,MAAhB7H,EAAW,iCAAS2H,EAAIrE,WACnB3B,EAAc3E,QAAUgD,EAAYC,OAAQ,CAC/C,IAAII,EAAQ,GAEVA,EAD0B,GAAvBsB,EAAca,MACRb,EAAce,UAAUrC,MAExBsB,EAAce,UAAUK,aAEnC/C,EAAY,GAAGK,MAAQA,EAEzBN,EAAW6B,OAAQ,EACnBpB,EAAWe,SAAWoG,EAAIjQ,KAC1B8I,EAAWgB,YAAcmG,EAAII,WAC7BvH,EAAWW,MAAQwG,EAAIC,kBAIrBK,GAAe,6D,uEACnBjF,EAAYpB,OAAQ,E,8CAEbD,EAAce,UAAUvN,GAC3ByO,EAAgBsE,OAAO,KAAOvG,EAAce,UAAUvN,IAEtDyO,EAAgBsE,OAAO,KAAM,IAE/BtE,EAAgBsE,OAAO,OAAQzI,EAAWmC,OAC1CgC,EAAgBsE,OAAO,UAAWvE,EAAW/B,OAC7C4C,eAAeC,QAAQ,UAAWd,EAAW/B,OAET,GAAlCpC,SAAUmC,EAAca,OAAxB,MACI,GAAM,gBAAWoB,EAAiBmD,K,cAAlC,W,aACA,SAAM,gBAAiBnD,EAAiBmD,K,OAAxC,W,wBAHAY,EAAG,EAIT3E,EAAYpB,OAAQ,EAEH,MAAb+F,EAAIQ,MACNnE,EAAiBpC,OAAQ,EACzBzC,EAAiByC,MAAQ,YACzBvC,EAAeuC,MAAQ,OACvBqC,EAAYrC,OAAQ,EACpBxC,EAAWwC,MAAQ,OACnBwB,EAAYE,QAAUqE,EAAIxB,UAE1B/G,EAAWwC,MAAQ,KACnBzC,EAAiByC,MAAQ,SACzBoC,EAAiBpC,OAAQ,G,aAG3B,O,SAAI0C,GACFW,YAAW,WACTX,GAAiB,KAEnB,MAEFN,EAAiBpC,OAAQ,EACzBqC,EAAYrC,OAAQ,EACpBzC,EAAiByC,MAAQ,YACzBvC,EAAeuC,MAAQ,OACvBwB,EAAYE,QAAU,O,gCAKpB8E,GAAe,SAACC,GACpB,IAAMC,EAAeD,EAAME,SACvBD,IAC4B,aAA1BnJ,EAAiByC,QACnB7C,EAAsB6C,OAAQ,EAC9BzC,EAAiByC,MAAQ,SACzB1C,EAAe0C,MAAQ,EACvBkC,EAAgBlC,MAAQ,GACxBgC,EAAgBc,OAAO,UAEC,aAAtB9E,EAAagC,QACf7C,EAAsB6C,OAAQ,EAC9BhC,EAAagC,MAAQ,SACrBjC,EAAWiC,MAAQ,EACnBkC,EAAgBlC,MAAQ,GACxBgC,EAAgBc,OAAO,YAKvB8D,GAAe,SAACH,GACpB,IAAMI,EAAaJ,EAAME,SACrBE,IACFhF,EAAa7B,MAAQ,IAInBR,GAAa,SAACsH,EAAcnH,GAChCf,EAAWgB,YAAckH,EAAO,EAAIA,EAAO,EAC3CV,MAEI1G,GAAa,SAACoH,EAAcnH,GAChCf,EAAWe,SAAWA,EACtBf,EAAWgB,YAAc,EACzBwG,MAGIW,GAAW,SAAOvT,EAAcwT,GAAe,kD,+CACpC,CACbA,QAASA,IAEX7I,EAAW6B,OAAQ,EACnBnB,EAAWmB,MAAQ,CACjB0B,QAAS,IAEX,IAGQ,EAAU,SAACqE,GACf,GAAiB,MAAbA,EAAIQ,KACNvI,EAAagC,MAAQ,YACrB/B,EAAW+B,MAAQ,OACnBoD,cAAcX,EAAMzC,OACpByC,EAAMzC,MAAQ,EACdwB,EAAYE,QAAUqE,EAAIxB,YACrB,CACL,IAAM0C,EAAalB,EAAI7Q,KAAKW,QACtBqR,EAAWnB,EAAI7Q,KAAKqK,MACpB4H,EAAeF,EAAaC,EAAY,IAAO,EAKrD,GAJAlJ,EAAagC,MAAQ,SACrBjC,EAAWiC,MAAQmH,EACnBlJ,EAAW+B,MAAQiH,EAAa,IAAMC,EAAW,IAAMnJ,EAAWiC,MAAQ,OAEvD,IAAfiH,GAAoBA,GAAcC,EAAU,CAC9C9D,cAAcX,EAAMzC,OACpByC,EAAMzC,MAAQ,EACd,IAAMoH,EAAc,iBAAI,IACI,KAAxB9J,EAAe0C,QACjBoH,EAAYpH,MAAQ,OAElBxM,IAAS4T,EAAYpH,OACvB7B,EAAW6B,OAAQ,EACnBnB,EAAWmB,MAAQ,CACjB0B,QAAS,MAGXL,EAAcrB,OAAQ,EACtBkG,WAGgB,KAAdiB,IACF3F,EAAYE,QAAU,WAK9B2B,YAAW,WACT,IAAM0C,EAAM,CACVQ,KAAM,IACNrR,KAAM,CAAEW,QAAS,GAAI0J,MAAO,KAC5BgF,QAAS,OAEX,EAAQwB,KACP,KACH1C,YAAW,WACT,IAAM0C,EAAM,CACVQ,KAAM,IACNrR,KAAM,CAAEW,QAAS,GAAI0J,MAAO,KAC5BgF,QAAS,OAEX,EAAQwB,KACP,KACH1C,YAAW,WACT,IAAM0C,EAAM,CACVQ,KAAM,IACNrR,KAAM,CAAEW,QAAS,GAAI0J,MAAO,KAC5BgF,QAAS,OAEX,EAAQwB,KACP,KACH1C,YAAW,WACT,IAAM0C,EAAM,CACVQ,KAAM,IACNrR,KAAM,CAAEW,QAAS,IAAK0J,MAAO,KAC7BgF,QAAS,MAEX,EAAQwB,KACP,KACH,MAAOsB,GACPrJ,EAAagC,MAAQ,YACrB/B,EAAW+B,MAAQ,OACnBoD,cAAcX,EAAMzC,OACpBoD,cAAcD,EAAGnD,OACjByC,EAAMzC,MAAQ,EACdwB,EAAYE,QAAU,O,iBAIpB1O,GAAc,6D,0DAClBqO,EAAcrB,OAAQ,EACtB/B,EAAW+B,MAAQ,KAAO6D,GAC1BpB,EAAMzC,MAAQ8F,aAAY,6D,+DAExB,OADAhT,QAAQC,IAAI,OACZ,GAAMgU,GAAS,MAAOhF,EAAW/B,Q,cAAjC,S,aACC,KACH4C,eAAeC,QAAQ,gBAAiB,O,WAKpC9F,GAAa,SAAOiH,GAAS,kD,qEAGjC,OAFAlR,QAAQC,IAAI,OAAQiR,GAEhBP,GAASzD,OACXyD,GAASzD,OAAQ,EACjB,KAGE+D,IACFA,IAAa,EAEbxG,EAAiByC,MAAQ,SAEzB4C,eAAeC,QAAQ,gBAAiB,IAExCD,eAAeC,QAAQ,gBAAiB,IACxCP,EAAkBtC,MAAQ,EAEzBkC,EAAwBlC,MAAM0D,SAAQ,SAACC,EAAUnF,GAChDwD,EAAgBsE,OAAO,QAAS3C,MAElC,GAAM0C,OAbJ,M,OAeF,GAFA,SAEI3D,EAIF,OAHAW,YAAW,WACTX,GAAiB,KAEnB,KAE6B,IAA3BN,EAAiBpC,OACnB9B,EAAY8B,MAAQtC,EAAgBsC,MACpCtC,EAAgBsC,MAAQ,GAElBsH,EAAiB,sBAAS,CAC9BC,cAAerF,EACfE,kBAAkB,EAClBD,eAAgBA,EAChBzE,gBAAiBA,EACjBqE,WAAYA,IAEda,eAAeC,QAAQ,gBAAiB2E,KAAKC,UAAUH,IAEvDxU,QAAQC,IAAI,CAAC,EAAG,EAAG,IAAK,KAAK4K,SAASE,EAAWmC,QACzB,GAApBnC,EAAWmC,OAAkC,GAApBnC,EAAWmC,OAEtC,QAAM0H,QAAQ,CACZvM,MAAO,KACPuG,QAAS,kCAEX1O,MAIwB,MAApBwK,EAAWwC,QACblN,QAAQC,IAAI,WACZqT,QAIJ5E,EAAYC,WAAa,QACzBD,EAAYG,YAAa,EACzBiB,eAAeC,QAAQ,gBAAiB,IACxC3B,EAAK,iBAAkB,CACrBqC,cAAc,EACdhC,UAAWC,K,mCAMbvF,GAAW,SAACwK,GAChBvK,EAAU8D,MAAQyG,EAAQ,GACrBtJ,EAAsB6C,OAAkC,MAAzB1C,EAAe0C,OAGjDnC,EAAWmC,MAAQyG,EACnBzE,EAAkB,IAAIC,SAEtB/E,EAAa8C,MACF,GAATyG,EACI,QACS,GAATA,EACA,MACS,GAATA,EACA,OACS,GAATA,EACA,OACS,GAATA,EACA,OACS,GAATA,EACA,OACS,GAATA,EACA,OACA,KACNnK,EAAU0D,MACC,GAATyG,GAEa,GAATA,EADA,MAGS,GAATA,EACA,WACS,GAATA,EACA,WACS,GAATA,EACA,WACS,GAATA,EACA,WACS,GAATA,EACA,WACA,SACN9D,KArCA4B,GAAA,KAAQlF,MAAM,uBAwClBsD,IAEA,IAAMzC,GAAoB,WACxB,IAAMyH,EAAY5H,EAAciD,MAAQ,EAClCtQ,EAAS,CACbkV,IAAK,qCAA4ChF,eAAeK,QAAQ,WAAa,aAAe0E,EACpGE,OAAQ,OACR1I,SAC0B,GAAvBY,EAAciD,MACX,QAAQ,KAAO,IAAI8E,MAAQC,OAAO,kBAAiB,QACnD,KAAK,KAAO,IAAID,MAAQC,OAAO,kBAAiB,SAExD,OAAAC,GAAA,MAAatV,IAGTsM,GAAc,IAEdhC,GAAS,SAACiL,GACd,IAAMC,EAAQD,EAAME,aAAaD,MAC7BA,EAAM7J,OAAS,IACjBkG,GAAA,KAAQlF,MAAM,WACd4I,EAAMG,kBACNH,EAAMI,mBAgBV,OAZA,8BAAgB,WACdnD,KACIzC,EAAMzC,QACRoD,cAAcX,EAAMzC,OACpByC,EAAMzC,MAAQ,GAEZmD,EAAGnD,QACLoD,cAAcD,EAAGnD,OACjBmD,EAAGnD,MAAQ,MAIR,CACLjE,UAAS,EACTiD,YAAW,GACXJ,WAAU,EACVsG,eAAc,GACdvC,eAAc,EACdtB,cAAa,EACb5F,UAAS,EACT0B,sBAAqB,EACrBoE,UAAS,EACTnE,WAAU,EACVK,eAAc,EACdC,gBAAe,EACfyH,cAAa,GACbhD,eAAc,EACdC,iBAAgB,EAChB7E,iBAAgB,EAChB8E,YAAW,EACXI,MAAK,EACLH,kBAAiB,EACjBxE,OAAM,EACNC,WAAU,EACVC,aAAY,EACZhL,YAAW,GACX6L,WAAU,EACVV,WAAU,EACV4I,SAAQ,GACRvE,WAAU,EACVlF,eAAc,EACdkJ,aAAY,GACZ3K,MAAK,EACLiB,aAAY,GACZuJ,aAAY,GACZO,aAAY,GACZ/J,qBAAoB,GACpBE,WAAU,GACVkB,WAAU,EACVC,YAAW,EAEXsB,WAAU,GACVE,WAAU,GACVf,QAAO,GACPuB,kBAAiB,GACjBqC,OAAM,EACNzM,KAAI,EACJmG,SAAQ,GACRK,UAAS,EACTY,aAAY,EACZW,WAAU,EACVO,YAAW,EACXZ,WAAU,EACV2F,GAAE,EACF/C,YAAW,EACXlE,UAAS,EACToF,gBAAe,EACftE,OAAM,O,8CCl/BZ,MAAMsL,GAA2B,KAAgB,GAAQ,CAAC,CAAC,SAASpO,IAAQ,CAAC,YAAY,qBAE1E,W,oCCVf,kCAAO,IAAMqO,EAAY,SAACC,EAAYC,EAAgBC,QAA5B,IAAAF,MAAA,SAAY,IAAAC,MAAA,SAAgB,IAAAC,MAAA,KAGlD,IAFA,IAAMC,EAAiBC,KAAKJ,GACtBK,EAAa,GACVC,EAAS,EAAGA,EAASH,EAAetK,OAAQyK,GAAUJ,EAAW,CAGtE,IAFA,IAAMK,EAAQJ,EAAeI,MAAMD,EAAQA,EAASJ,GAChDM,EAAc,IAAIC,MAAMF,EAAM1K,QACzB6K,EAAI,EAAGA,EAAIH,EAAM1K,OAAQ6K,IAC9BF,EAAYE,GAAKH,EAAMI,WAAWD,GAEtC,IAAME,EAAY,IAAIC,WAAWL,GAEjCH,EAAW5C,KAAKmD,GAGpB,IAAME,EAAO,IAAIC,KAAKV,EAAY,CAACrV,KAAMiV,IACzC,OAAOa,I,kCCfX,W,qBCAA/W,EAAOC,QAAU,IAA0B,0B,gGCArCgX,EAAe,SAAOF,GAAU,uD,wCACpC,MAAO,CAAP,EAAO,IAAInF,SAAQ,SAAAC,GACjB,IAAMqF,EAAS,IAAIC,WACnBD,EAAOE,mBAAmBL,GAC1BG,EAAOG,OAAS,WACd,IAAMC,EAAOJ,EAAOK,OAAkBrF,MAAM,IACzCsF,KAAI,SAACC,GAAc,OAAAA,EAAEb,WAAW,MAChCY,KAAI,SAACC,GAAc,OAAAA,EAAEtL,SAAS,IAAIuL,iBAClCF,KAAI,SAACC,GAAc,OAAAA,EAAEE,SAAS,EAAG,QACjCC,KAAK,IACR/F,EAAQyF,eAIRO,EAAU,SAAOpG,GAAU,uD,2EAE/B,OAAIA,IACIqG,EAAMrG,EAAKzH,KAAKkI,MAAM,KAAKpG,OAC3B9B,EAAOyH,EAAKzH,KAAKkI,MAAM,KAAK4F,EAAM,GAC3B,SAAT9N,GAA4B,QAATA,GACd,CAAP,GAAO,GAII,GAAMiN,EAAcxF,EAAa+E,MAAM,EAAG,K,OAEzD,OAFMe,EAAS,SACTQ,EAAmB,qBAAXR,GAA8C,qBAAXA,GAA8C,qBAAXA,EAC7E,CAAP,EAAOQ,WAEM,U,kDCzBT/T,EAAa,CAAEG,MAAO,qBACtBD,EAAa,CAAEC,MAAO,gBACtBC,EAA0B,6BAAiB,MAC3CC,EAA0B,6BAAiB,MAE1C,SAASsD,EAAOC,EAAUC,EAAYC,EAAYC,EAAYC,EAAWC,GAC9E,IAAM+P,EAAqB,8BAAkB,WACvCxP,EAAsB,8BAAkB,YACxCG,EAAqB,8BAAkB,WAE7C,OAAQ,yBAAc,yBAAaA,EAAoB,wBAAY,CACjExE,MAAO,oBACP8E,QAASrB,EAAKqB,QACdjC,MAAO,IACPmC,UAAW,CAAEjC,QAAS,iBACtBL,MAAO,CAAC,aAAa,SACrBoR,SAAU,GACVjP,cAAc,EACdkP,SAAUtQ,EAAKuQ,aACdvQ,EAAKwQ,QAAS,CACfxK,OAAQ,sBAAS,WAAM,OACrB,yBAAapF,EAAqB,CAChCrE,MAAO,mBACPuJ,QAAS9F,EAAKyQ,aACb,CACD9O,QAAS,sBAAS,WAAM,OACtBnF,MAEF0F,EAAG,GACF,EAAG,CAAC,YACP,yBAAatB,EAAqB,CAChCrE,MAAO,mBACPlD,KAAM,UACNyM,QAAS9F,EAAK0Q,cACb,CACD/O,QAAS,sBAAS,WAAM,OACtBlF,MAEFyF,EAAG,GACF,EAAG,CAAC,gBAETP,QAAS,sBAAS,WAAM,OACtB,gCAAoB,IAAKvF,EAAY,6BAAiB4D,EAAK2Q,UAAW,GACtE,gCAAoB,MAAOrU,EAAY,EACpC,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAY0D,EAAK4Q,aAAa,SAACC,EAAMxM,GAC3F,OAAQ,yBAAc,gCAAoB,MAAO,CAC/C9H,MAAO,YACPF,IAAKgI,GACJ,6BAAiBwM,GAAO,MACzB,MACJ,yBAAaT,EAAoB,CAC/BU,IAAK,QACLvU,MAAO,YACPsJ,MAAO7F,EAAK+Q,aACZ,iBAAkB9Q,EAAO,KAAOA,EAAO,GAAK,SAAC+B,GAAgB,OAAEhC,EAAiB,aAAIgC,IACpFH,SAAU7B,EAAKgR,aACd,KAAM,EAAG,CAAC,QAAS,cACrB,wBAAW,GAAO,gCAAoB,cAAW,KAAM,wBAAYhR,EAAK4Q,YAAY1M,OAAS,EAAI,EAAI,GAAG,SAACG,GACxG,OAAQ,yBAAc,gCAAoB,MAAO,CAC/ChI,IAAKgI,EACL9H,MAAO,iBAEP,YAGR2F,EAAG,GACF,GAAI,CAAC,UAAW,a,gBChEN,+BAAgB,CAC7BmE,MAAO,CAAC,iBAAkB,iBAC1BT,MAAO,CACLvE,QAAS,CACPhI,KAAMkN,QACN5E,SAAS,EACTsP,UAAU,GAEZC,OAAQ,CACN7X,KAAMyV,MACNnN,QAAS,WAAM,WAEjBgP,SAAU,CACRtX,KAAM8X,OACNxP,QAAS,KAGbmF,MAAA,SAAMlB,EAAO,G,IAAEmB,EAAI,OACXqK,EAAQ,mBACRL,EAAe,iBAAI,IACnBH,EAAc,iBAAc,IAElC,oBACE,WAAM,OAAAhL,EAAMvE,WACZ,SAACA,GACKA,IACFuP,EAAY/K,MAAQD,EAAMsL,WAKhC,IAAMF,EAAc,WAClB,GAAID,EAAalL,MAAM3B,OAAS,EAG9B,OAFAkG,EAAA,KAAQlF,MAAM,uBACd6L,EAAalL,MAAQ,IAGvB+K,EAAY/K,MAAQ+K,EAAY/K,MAAMwL,OACpCN,EAAalL,MAAMyE,MAAM,MAAMgH,QAAO,SAACT,GAAS,MAAS,KAATA,MAElD,IAAMU,EAAMC,SAASC,cAAc,iBACnCV,EAAalL,MAAQ,GAErB,uBAAS,WACP0L,EAAIG,SAAS,EAAGH,EAAII,aAAe,IACnCP,EAAMvL,MAAM+L,YAIVrB,EAAc,WAClBxJ,EAAK,kBAAkB,IAGnB0J,EAAc,WAClBG,EAAY/K,MAAQ,GACpBuL,EAAMvL,MAAM+L,SAGRlB,EAAe,WACnB3J,EAAK,gBAAiB6J,EAAY/K,OAClC0K,KAGF,MAAO,CACLa,MAAK,EACLL,aAAY,EACZH,YAAW,EACXI,YAAW,EACXT,YAAW,EACXE,YAAW,EACXC,aAAY,M,iCCpElB,MAAMvC,EAA2B,IAAgB,EAAQ,CAAC,CAAC,SAASpO,GAAQ,CAAC,YAAY,qBAE1E,U,kCCTf,W,kCCAA","file":"js/chunk-755f75a0.2ac1e0f9.js","sourcesContent":["module.exports = __webpack_public_path__ + \"img/upload.e4734716.svg\";","import { fetchGet, fetchPost, fetchPostPic, fetchGetMess } from \"./index\";\nimport type { CpoReason1st, CpoReason2nd } from \"@/views/UserCar/types\";\n\n// CPO销售清单\n\n//CPO销售清单删除\nexport const deleteBtn = (params: number | string): Promise => {\n return fetchGet(\"/rvapi/ucMarketInfo/delete?id=\" + params);\n};\n//表头统计查询\nexport const countTableSearch = (params = {}): Promise => {\n return fetchGet(\"/rvapi/ucMarketInfo/getTotal\", params);\n};\n// 销售清单分页查询\nexport const getpageList = (params = {}): Promise => {\n return fetchPost(\"/rvapi/ucMarketInfo/listPage\", params);\n};\n// 销售清单批量撤回\nexport const batchBack = (params = {}): Promise => {\n console.log(params, \"这是撤回参数\");\n return fetchPost(\"/rvapi/ucMarketInfo/recall\", params);\n};\n// 销售清单批量提交\nexport const batchSubmit = (params: any): Promise => {\n return fetchPost(\"/rvapi/ucMarketInfo/submit\", params);\n};\n\n// 销售清单文件上传\nexport const fileUpload = (params = {}, uploadConfig: object): Promise => {\n return fetchPostPic(\"/rvapi/ucMarketInfo/uploadDoc\", params, uploadConfig);\n};\n// 销售清单导入数据\nexport const ImportData = (params = {}, uploadConfig: object): Promise => {\n return fetchPostPic(\"/rvapi/ucMarketInfo/uploadExcel\", params, uploadConfig);\n};\n\n// 销售清单取消上传\n\nexport const cancelUpload = (params = {}): Promise => {\n return fetchGet(\n \"/rvapi/ucMarketInfo/cancelUpload?batchId=\" + (params as any).batchId\n );\n};\n\n// 销售当前行文件查看按钮\nexport const viewFile = (params = {}): Promise => {\n return fetchGet(\n \"/rvapi/ucMarketInfo/preview?id=\" +\n (params as any).id +\n \"&type=\" +\n (params as any).type\n );\n};\n\n// 操作记录接口\nexport const operationRecord = (params: any = {}): Promise => {\n return fetchGet(`/rvapi/ucOperationInfo/findOperationInfo`, { params });\n};\n// 销售清单申诉接口\nexport const appealFileUp = (params = {}): Promise => {\n return fetchPostPic(\"/rvapi/ucMarketInfo/appeal\", params);\n};\n\n// 置换清单申诉接口\nexport const appealFileUpTradeIn = (params = {}): Promise => {\n return fetchPostPic(\"/rvapi/ucReplacementInfo/appeal\", params);\n};\n\n//判断申诉截止时间\nexport const checkForVerifyCPO = (params: any = {}): Promise => {\n return fetchGet(\"/rvapi/ucMarketInfo/appeal/verify?id=\" + params);\n};\n// 置换清单\n\n//置换清单删除\nexport const deleteBtnTrande = (params = {}): Promise => {\n return fetchGet(\"/rvapi/ucReplacementInfo/delete?id=\" + params);\n};\n// 置换清单导出查询结果按钮\nexport const exportResultTrande = (params = {}): Promise => {\n return fetchPost(\"/rvapi/ucMarketInfo/export\", params);\n};\n//置换清单表头统计查询\nexport const countTableSearchTrande = (params = {}): Promise => {\n return fetchGet(\"/rvapi/ucReplacementInfo/getTotal\", params);\n};\n// 置换清单分页查询\nexport const getpageListTrande = (params = {}): Promise => {\n return fetchPost(\"/rvapi/ucReplacementInfo/listPage\", params);\n};\n// 置换清单批量撤回\nexport const batchBackTrande = (params = {}): Promise => {\n console.log(params, \"这是撤回参数\");\n return fetchPost(\"/rvapi/ucReplacementInfo/recall\", params);\n};\n// 置换清单批量提交\nexport const batchSubmitTrande = (params: any): Promise => {\n return fetchPost(\"/rvapi/ucReplacementInfo/submit\", params);\n};\n\n//置换清单文件下载\nexport const fileDownLoadTrande = (params = {}): Promise => {\n return fetchGet(\"/rvapi/ucReplacementInfo/templateDownload\", params);\n};\n// 置换清单文件上传\nexport const fileUploadTrande = (\n params = {},\n uploadConfig: object\n): Promise => {\n return fetchPostPic(\n \"/rvapi/ucReplacementInfo/uploadDoc\",\n params,\n uploadConfig\n );\n};\n// 置换清单导入数据\nexport const ImportDataTrande = (\n params = {},\n uploadConfig: object\n): Promise => {\n return fetchPostPic(\n \"/rvapi/ucReplacementInfo/uploadExcel\",\n params,\n uploadConfig\n );\n};\n\n// 置换取消上传\n\nexport const cancelUploadTrande = (params = {}): Promise => {\n return fetchGet(\n \"/rvapi/ucReplacementInfo/cancelUpload?batchId=\" + (params as any).batchId\n );\n};\n\n// 置换当前行文件查看按钮\nexport const viewFileTrande = (params = {}): Promise => {\n return fetchGet(\n \"/rvapi/ucReplacementInfo/preview?id=\" +\n (params as any).id +\n \"&type=\" +\n (params as any).type\n );\n};\n//判断申诉截止时间\nexport const checkForVerifyTradeIn = (params: any = {}): Promise => {\n return fetchGet(\"/rvapi/ucReplacementInfo/appeal/verify?id=\" + params);\n};\n\n// 英文版\n// CPO核查结果文件上传\nexport const checkResultUpload = (\n params = {},\n uploadConfig: object\n): Promise => {\n return fetchPostPic(\n \"/rvapi/ucMarketInfo/batchUploadCheck/v2\",\n params,\n uploadConfig\n );\n};\n// 置换核查结果文件上传\nexport const checkResultUploadTrande = (\n params = {},\n uploadConfig: object\n): Promise => {\n return fetchPostPic(\n \"/rvapi/ucReplacementInfo/batchUploadCheck/V2\",\n params,\n uploadConfig\n );\n};\n// 获取CPO overView表头统计查询\nexport const getOverView = (params = {}): Promise => {\n return fetchGet(\"/rvapi/ucMarketInfo/getOverviewTotal\", params);\n};\n// 获取置换 overView表头统计查询\nexport const getOverViewTrande = (params = {}): Promise => {\n return fetchGet(\"/rvapi/ucReplacementInfo/getOverviewTotal\", params);\n};\n\n// 查询申诉信息cpo\nexport const appealRecord = (params = {}): Promise => {\n return fetchGet(\"/rvapi/ucMarketInfo/appealInfo?id=\" + (params as any).id);\n};\n\n// 查询申诉信息置换\nexport const appealRecordTrande = (params = {}): Promise => {\n return fetchGet(\n \"/rvapi/ucReplacementInfo/appealInfo?id=\" + (params as any).id\n );\n};\n\n// cpo发布与拒绝\nexport const batchRe = (params: any): Promise => {\n return fetchPost(\n \"/rvapi/ucMarketInfo/sipoCheck?status=\" + params.status,\n params.ids\n );\n};\n// 置换发布与拒绝\nexport const batchReTrande = (params: any): Promise => {\n return fetchPost(\n \"/rvapi/ucReplacementInfo/sipoCheck?status=\" + params.status,\n params.ids\n );\n};\n\n// cpo批量发布与拒绝\nexport const batchReAll = (params: any): Promise => {\n return fetchPost(\n \"/rvapi/ucMarketInfo/batchSipoCheck?status=\" + params.status,\n params.data\n );\n};\n// 置换批量发布与拒绝\nexport const batchReTrandeAll = (params: any): Promise => {\n return fetchPost(\n \"/rvapi/ucReplacementInfo/sipoBatchCheck?status=\" + params.status,\n params.data\n );\n};\n\nexport const checkForBatchCPO = (params: any): Promise => {\n return fetchPost(\n `/rvapi/ucMarketInfo/verifyStatus?status=${params.status}`,\n params.data\n );\n};\n\nexport const checkForBatchTradeIn = (params: any): Promise => {\n return fetchPost(\n `/rvapi/ucReplacementInfo/verifyStatus?status=${params.status}`,\n params.data\n );\n};\n\n// cpo核查按钮\nexport const checkRe = (params = {}): Promise => {\n return fetchPostPic(\"/rvapi/ucMarketInfo/batchCheck\", params);\n};\nexport const ucMarketInfoBatchDelete = (params = {}): Promise => {\n return fetchPost(\"/rvapi/ucMarketInfo/batchDelete\", params);\n};\n// 置换核查按钮\nexport const checkReTrande = (params = {}): Promise => {\n return fetchPostPic(\"/rvapi/ucReplacementInfo/batchCheck\", params);\n};\nexport const ucReplacementInfoBatchDelete = (params = {}): Promise => {\n return fetchPost(\"/rvapi/ucReplacementInfo/batchDelete\", params);\n};\n// cpo弹窗里 单条数据核查结果\nexport const checkSingle = (params: any): Promise => {\n return fetchPost(\n \"/rvapi/ucMarketInfo/checkResultOperation?id=\" +\n params.id +\n \"&checkResult=\" +\n params.checkResult +\n \"&msg=\" +\n params.msg\n );\n};\n// 置换弹窗里 单条数据核查结果\nexport const checkSingleTrande = (params: any): Promise => {\n return fetchPost(\n \"/rvapi/ucReplacementInfo/checkResultOperation?id=\" +\n params.id +\n \"&checkResult=\" +\n params.checkResult +\n \"&msg=\" +\n params.msg\n );\n};\n\n// 获取ocr识别列表\nexport const getOcrist = (params: any): Promise => {\n return fetchGet(\n \"/rvapi/ucOrcResult/listPage?batchId=\" +\n params.batchId +\n \"¤t=\" +\n params.current +\n \"&size=\" +\n params.size\n );\n};\n\nexport const reasonList = (tagCn: string): Promise => {\n return fetchGet(\"/rvapi/ucMarketInfo/cpo/reason/list\", {\n params: {\n tagCn,\n },\n });\n};\n\nexport const reasonDetailList = (\n checkReasonId: number\n): Promise => {\n return fetchGet(\"/rvapi/ucMarketInfo/cpo/reasonDetail/list\", {\n params: {\n checkReasonId,\n },\n });\n};\n\nexport const cpoSalesFeedbackInfo = (id: number): Promise => {\n return fetchGet(`/rvapi/ucMarketInfo/cpo/feedback/info/${id}`);\n};\n\nexport const tradeInFeedbackInfo = (id: number): Promise => {\n return fetchGet(`/rvapi/ucReplacementInfo/feedback/${id}`);\n};\n","module.exports = __webpack_public_path__ + \"img/complete.92764ba0.svg\";","module.exports = __webpack_public_path__ + \"img/step1.9ed9e060.svg\";","module.exports = __webpack_public_path__ + \"img/step2.0a9a27c3.svg\";","import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, createBlock as _createBlock, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/rv/upload.svg'\nimport _imports_1 from '@/assets/images/step1.svg'\nimport _imports_2 from '@/assets/images/rv/complete.svg'\nimport _imports_3 from '@/assets/images/rv/error.svg'\nimport _imports_4 from '@/assets/images/step2.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5d8b1da2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { key: 0 }\nconst _hoisted_2 = { class: \"handle-line-btn\" }\nconst _hoisted_3 = { class: \"name-rules\" }\nconst _hoisted_4 = /*#__PURE__*/_createTextVNode(\" 文档命名要求:\")\nconst _hoisted_5 = { class: \"uploadCon\" }\nconst _hoisted_6 = { class: \"licenseUploadCon\" }\nconst _hoisted_7 = {\n key: 0,\n class: \"uploadH\"\n}\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { class: \"ant-upload-drag-icon\" }, [\n /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_0,\n class: \"uploadIcon\"\n })\n], -1))\nconst _hoisted_9 = { class: \"ant-upload-text\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"blueFont\" }, \"点击浏览文件\", -1))\nconst _hoisted_11 = {\n key: 0,\n class: \"uploadH uploadProgressCon\"\n}\nconst _hoisted_12 = { class: \"progressCon\" }\nconst _hoisted_13 = { class: \"progressFlexCon\" }\nconst _hoisted_14 = { class: \"totalProgressCon\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_1,\n alt: \"\",\n class: \"batchIcon\"\n}, null, -1))\nconst _hoisted_16 = { class: \"progressShow\" }\nconst _hoisted_17 = { class: \"progressTit\" }\nconst _hoisted_18 = { class: \"filePro uploadPro\" }\nconst _hoisted_19 = {\n key: 0,\n class: \"completeCon\"\n}\nconst _hoisted_20 = {\n key: 0,\n src: _imports_2,\n class: \"completeIcon\"\n}\nconst _hoisted_21 = {\n key: 1,\n src: _imports_3,\n class: \"completeIcon\"\n}\nconst _hoisted_22 = { key: 1 }\nconst _hoisted_23 = { class: \"filePro fileSize\" }\nconst _hoisted_24 = {\n key: 1,\n class: \"uploadH uploadProgressCon\"\n}\nconst _hoisted_25 = { class: \"progressCon\" }\nconst _hoisted_26 = { class: \"progressFlexCon\" }\nconst _hoisted_27 = { class: \"totalProgressCon\" }\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_4,\n alt: \"\",\n class: \"batchIcon\"\n}, null, -1))\nconst _hoisted_29 = { class: \"progressShow\" }\nconst _hoisted_30 = { class: \"progressTit\" }\nconst _hoisted_31 = { class: \"filePro uploadPro\" }\nconst _hoisted_32 = {\n key: 0,\n class: \"completeCon\"\n}\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_2,\n class: \"completeIcon\"\n}, null, -1))\nconst _hoisted_34 = /*#__PURE__*/_createTextVNode(\" 完成 \")\nconst _hoisted_35 = [\n _hoisted_33,\n _hoisted_34\n]\nconst _hoisted_36 = { key: 1 }\nconst _hoisted_37 = {\n key: 0,\n class: \"filePro fileSize\"\n}\nconst _hoisted_38 = {\n key: 1,\n class: \"resultCon\"\n}\nconst _hoisted_39 = { class: \"result\" }\nconst _hoisted_40 = { class: \"resPagination\" }\nconst _hoisted_41 = { style: {\n position: 'absolute',\n bottom: 0,\n width: '100%',\n borderTop: '1px solid #e8e8e8',\n padding: '10px 16px',\n textAlign: 'right',\n left: 0,\n background: '#fff',\n borderRadius: '0 0 4px 4px'\n } }\nconst _hoisted_42 = /*#__PURE__*/_createTextVNode(\"导出上传结果\")\nconst _hoisted_43 = /*#__PURE__*/_createTextVNode(\" 关闭 \")\nconst _hoisted_44 = /*#__PURE__*/_createTextVNode(\"   提示 \")\nconst _hoisted_45 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, \"文字自动识别阶段,关闭窗口后可在任务中心关注后续进程及结果\", -1))\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_a_tab_pane = _resolveComponent(\"a-tab-pane\")!\n const _component_a_tabs = _resolveComponent(\"a-tabs\")!\n const _component_a_upload_dragger = _resolveComponent(\"a-upload-dragger\")!\n const _component_a_progress = _resolveComponent(\"a-progress\")!\n const _component_a_table = _resolveComponent(\"a-table\")!\n const _component_a_pagination = _resolveComponent(\"a-pagination\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n const _component_ExclamationCircleOutlined = _resolveComponent(\"ExclamationCircleOutlined\")!\n const _component_a_modal = _resolveComponent(\"a-modal\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createVNode(_component_a_drawer, {\n title: _ctx.single ? '单车支持文件上传' : '批量上传支持文档',\n placement: \"right\",\n closable: true,\n maskClosable: false,\n visible: _ctx.isvisible,\n width: \"35.14%\",\n bodyStyle: { paddingTop: '5px' },\n onClose: _ctx.close\n }, {\n default: _withCtx(() => [\n (_ctx.single)\n ? (_openBlock(), _createElementBlock(\"p\", _hoisted_1, \"车架号:\" + _toDisplayString(_ctx.showVinNo), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_a_tabs, {\n onChange: _ctx.isSelBtn,\n activeKey: _ctx.activeKey,\n \"onUpdate:activeKey\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.activeKey) = $event))\n }, {\n default: _withCtx(() => [\n _createVNode(_component_a_tab_pane, {\n key: \"1\",\n tab: \"二手车发票\"\n }),\n _createVNode(_component_a_tab_pane, {\n key: \"2\",\n tab: \"登记证\"\n }),\n _createVNode(_component_a_tab_pane, {\n key: \"3\",\n tab: \"身份证明\"\n }),\n _createVNode(_component_a_tab_pane, {\n key: \"4\",\n tab: \"寄售合同\"\n }),\n _createVNode(_component_a_tab_pane, {\n key: \"5\",\n tab: \"销售合同\"\n }),\n _createVNode(_component_a_tab_pane, {\n key: \"6\",\n tab: \"认证报告\"\n }),\n _createVNode(_component_a_tab_pane, {\n key: \"7\",\n tab: \"保修报告\"\n }),\n _createVNode(_component_a_tab_pane, {\n key: \"8\",\n tab: \"其他\"\n })\n ]),\n _: 1\n }, 8, [\"onChange\", \"activeKey\"])\n ]),\n _createElementVNode(\"p\", _hoisted_3, [\n _hoisted_4,\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.nameRules), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", _hoisted_6, [\n (_ctx.licenseUploadComplete)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createVNode(_component_a_upload_dragger, {\n name: \"file\",\n multiple: !_ctx.single,\n action: \"\",\n listType: \"picture-card\",\n showUploadList: false,\n customRequest: _ctx.licenseCustomRequest,\n \"before-upload\": _ctx.beforeUpload,\n onChange: _ctx.submitFile\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", {\n class: \"drop-wrapper\",\n onDrop: _cache[1] || (_cache[1] = \n//@ts-ignore\n(...args) => (_ctx.onDrop && _ctx.onDrop(...args)))\n }, [\n _hoisted_8,\n _createElementVNode(\"p\", _hoisted_9, [\n _createTextVNode(\" 拖拽\" + _toDisplayString(_ctx.fileNameShow) + \"文件到此处或\", 1),\n _hoisted_10\n ])\n ], 32)\n ]),\n _: 1\n }, 8, [\"multiple\", \"customRequest\", \"before-upload\", \"onChange\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (!_ctx.licenseUploadComplete)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n _createElementVNode(\"div\", _hoisted_12, [\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"div\", _hoisted_17, _toDisplayString(_ctx.licenseTit), 1),\n _createVNode(_component_a_progress, {\n percent: _ctx.licensePercent,\n status: _ctx.licenseProStatus\n }, null, 8, [\"percent\", \"status\"]),\n _createElementVNode(\"div\", _hoisted_18, [\n (_ctx.licensePercent == 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n (_ctx.isComplete == '完成')\n ? (_openBlock(), _createElementBlock(\"img\", _hoisted_20))\n : (_openBlock(), _createElementBlock(\"img\", _hoisted_21)),\n _createTextVNode(\" \" + _toDisplayString(_ctx.isComplete), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_22, _toDisplayString(_ctx.licenseContent), 1))\n ]),\n _createElementVNode(\"div\", _hoisted_23, _toDisplayString(_ctx.licenseFileSize), 1)\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (!_ctx.licenseUploadComplete && [1, 2, '1', '2'].includes(parseInt(_ctx.isSelected)) && _ctx.isComplete == '完成')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_24, [\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"div\", _hoisted_27, [\n _hoisted_28,\n _createElementVNode(\"div\", _hoisted_29, [\n _createElementVNode(\"div\", _hoisted_30, _toDisplayString(_ctx.orcTit), 1),\n _createVNode(_component_a_progress, {\n percent: _ctx.ocrPercent,\n status: _ctx.ocrProStatus\n }, null, 8, [\"percent\", \"status\"]),\n _createElementVNode(\"div\", _hoisted_31, [\n (_ctx.ocrPercent == 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_32, _hoisted_35))\n : _createCommentVNode(\"\", true),\n (_ctx.isCheckingOcr)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_36, _toDisplayString(_ctx.ocrContent), 1))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.isCheckingOcr)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_37, _toDisplayString(_ctx.ocrFileSize), 1))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.isContinue && _ctx.dataContent.length)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_38, [\n _createElementVNode(\"div\", _hoisted_39, [\n _createVNode(_component_a_table, {\n rowKey: \n (record, index) => {\n return record.vinNo + index.toString();\n }\n ,\n columns: _ctx.columns,\n pagination: false,\n dataSource: _ctx.dataContent,\n scroll: { y: _ctx.tableHeight },\n rowClassName: (record, index) => (index % 2 === 1 ? 'table-striped' : null)\n }, {\n vinNo: _withCtx(({ text }) => [\n _createElementVNode(\"span\", null, _toDisplayString(text), 1)\n ]),\n fileName: _withCtx(({ text }) => [\n _createElementVNode(\"span\", null, _toDisplayString(text), 1)\n ]),\n rtnMessage: _withCtx(({ text }) => [\n _createElementVNode(\"span\", {\n class: _normalizeClass({ error: text.indexOf('失败') > -1 })\n }, _toDisplayString(text), 3)\n ]),\n _: 1\n }, 8, [\"rowKey\", \"columns\", \"dataSource\", \"scroll\", \"rowClassName\"]),\n _createElementVNode(\"div\", _hoisted_40, [\n _createVNode(_component_a_pagination, {\n total: _ctx.pagination.total,\n \"show-size-changer\": \"\",\n \"show-total\": (total) => `共 ${total} 条`,\n onChange: _ctx.pageChange,\n onShowSizeChange: _ctx.sizeChange,\n pageSize: _ctx.pagination.pageSize,\n \"onUpdate:pageSize\": _cache[2] || (_cache[2] = ($event: any) => ((_ctx.pagination.pageSize) = $event)),\n current: _ctx.pagination.currentPage,\n \"onUpdate:current\": _cache[3] || (_cache[3] = ($event: any) => ((_ctx.pagination.currentPage) = $event)),\n pageSizeOptions: ['10', '20', '30', '40', '50']\n }, {\n buildOptionText: _withCtx((props) => [\n _createElementVNode(\"span\", null, _toDisplayString(props.value) + \"条/页\", 1)\n ]),\n _: 1\n }, 8, [\"total\", \"show-total\", \"onChange\", \"onShowSizeChange\", \"pageSize\", \"current\"])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_41, [\n (_ctx.isContinue && [1, 2].includes(_ctx.isSelected) && !_ctx.single)\n ? (_openBlock(), _createBlock(_component_a_button, {\n key: 0,\n type: \"primary\",\n onClick: _ctx.exportSubmitEvent,\n style: {\"margin-right\":\"5px\"}\n }, {\n default: _withCtx(() => [\n _hoisted_42\n ]),\n _: 1\n }, 8, [\"onClick\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_a_button, {\n type: \"primary\",\n onClick: _ctx.close\n }, {\n default: _withCtx(() => [\n _hoisted_43\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"title\", \"visible\", \"onClose\"]),\n _createVNode(_component_a_modal, {\n footer: null,\n visible: _ctx.infoVisible,\n \"onUpdate:visible\": _cache[4] || (_cache[4] = ($event: any) => ((_ctx.infoVisible) = $event)),\n title: \"提示\"\n }, {\n title: _withCtx(() => [\n _createVNode(_component_ExclamationCircleOutlined, { style: {\"color\":\"rgb(250, 173, 20)\"} }),\n _hoisted_44\n ]),\n default: _withCtx(() => [\n _hoisted_45\n ]),\n _: 1\n }, 8, [\"visible\"])\n ], 64))\n}","\nimport { ExclamationCircleOutlined } from '@ant-design/icons-vue';\nimport axios from 'axios';\nimport { defineComponent, reactive, ref, onBeforeUnmount } from 'vue';\nimport { FileItem } from '@/API/types';\nimport moment from 'moment';\nimport downloadFile from '@/utils/rv/downloadFile';\nimport { fileUpload, fileUploadTrande, cancelUpload, cancelUploadTrande, getOcrist } from '@/API/userCar';\nimport { guid } from '@/utils/index';\nimport { message, Modal } from 'ant-design-vue';\nconst columns = [\n {\n title: '车架号',\n dataIndex: 'vinNo',\n key: 'vinNo',\n width: 100\n },\n {\n title: '文件名',\n dataIndex: 'fileName',\n key: 'fileName',\n width: 150\n },\n {\n title: '提交结果',\n dataIndex: 'ocrResult',\n key: 'ocrResult',\n width: 150,\n slots: { customRender: 'ocrResult' }\n }\n];\n\nexport default defineComponent({\n emits: ['close-batch-visible', 'get-modal-info', 'init-table'],\n props: {\n isBatchVisible: {\n type: Boolean,\n require: true,\n default: false\n },\n single: {\n type: Boolean,\n require: true,\n default: false\n },\n istab: {\n type: Number,\n require: true,\n default: 0\n },\n recordVin: {\n type: Object,\n require: true,\n default: () => {\n return { vinNo: '车架号', id: undefined };\n }\n }\n },\n\n setup(props, { emit }) {\n const showVinNo = ref('');\n const nameRules = ref('无要求');\n if ((props as any).istab == 0) {\n showVinNo.value = (props as any).recordVin.vinNo;\n } else {\n showVinNo.value = (props as any).recordVin.vehicleVinNo;\n }\n const infoVisible = ref(false);\n const isUploading = ref(false);\n const isCheckingOcr = ref(false);\n const isvisible = (props as any).isBatchVisible;\n const isComplete = ref('完成');\n\n const activeKey = ref('1');\n const changeActiveKey = (index: string) => {\n activeKey.value = index;\n };\n\n //分页\n const pagination = reactive({\n total: 0,\n currentPage: 1,\n pageSize: 10\n });\n //弹窗初始化\n const modalData = reactive({});\n const modalParams = reactive({\n noticeType: '',\n content: '',\n btnVisible: false\n });\n // 校验文件名称的正则\n let regex = /^SFZM_/g;\n // 切换类型\n const isSelected = ref(1);\n const fileNameShow = ref('二手车发票');\n\n //文件上传数量\n const licenseUploadComplete = ref(true);\n const licenseCount = ref(0);\n const licenseFile = ref([]);\n const licenseContent = ref('0/0');\n const licenseFileSize = ref('');\n const licenseKey = ref(guid());\n let licenseFormData = new FormData();\n //行驶证进度条\n const tempLicenseData = ref([]);\n const licenseTit = ref('文件上传');\n const licensePercent = ref(0);\n const licenseFileNum = ref(0);\n const isLicenseSuccess = ref(false);\n const licenseProStatus = ref('normal');\n const uploadError = ref(false);\n const licenseClickCount = ref(0);\n // const licenseSubSuccess = ref(false)\n\n //OCR进度条\n const orcTit = ref('OCR识别');\n const ocrPercent = ref(0);\n const ocrProStatus = ref('normal');\n const ocrContent = ref('');\n const ocrFileSize = ref('');\n const ocrKey = ref(guid());\n const dataContent: any = reactive([]);\n const dataSource = ref({\n content: []\n });\n const isContinue = ref(false);\n const size = ref(10);\n const closeCount = ref(0);\n const timer = ref(0);\n let isCancelUpload = false;\n //继续上传,清空数据\n const continueSumbit = () => {\n sessionStorage.setItem('vlLicenseData', '');\n sessionStorage.setItem('isOcrContinue', '');\n licenseUploadComplete.value = true;\n isContinue.value = false;\n licenseKey.value = guid();\n licensePercent.value = 0;\n ocrPercent.value = 0;\n licenseFormData.delete('files');\n };\n // 取消上传事件 cpo+置换\n const cancelUp = () => {\n if ((props as any).isTab == 0) {\n cancelUpload({\n batchId: sessionStorage.getItem('batchNo') as any\n }).then(() => {\n // continueSumbit(); //取消成功重置上传状态\n // message.success(\"上传取消成功!\");\n emit('close-batch-visible', { isBatchVisible: false });\n });\n } else {\n cancelUploadTrande({\n batchId: sessionStorage.getItem('batchNo') as any\n }).then(() => {\n // message.success(\"上传取消成功!\");\n emit('close-batch-visible', { isBatchVisible: false });\n });\n }\n };\n const pT = ref(0);\n // 关闭弹窗取消上传\n const close = () => {\n clearInterval(timer.value);\n clearInterval(pT.value);\n if (isCancelUpload) {\n setTimeout(() => {\n isCancelUpload = false;\n });\n return;\n }\n\n closeCount.value = 1;\n if (isUploading.value) {\n cancelUp();\n modalParams.noticeType = 'warning';\n modalParams.content = '正在批量上传,此操作会取消该批次文件的全部上传,确定要关闭窗口?';\n modalParams.btnVisible = true;\n Object.assign(modalData, modalParams);\n sessionStorage.setItem('batchNo', licenseKey.value);\n emit('get-modal-info', {\n modalVisible: true,\n modalData: modalData\n });\n } else if (isCheckingOcr.value) {\n cancelUp();\n modalParams.noticeType = 'warning';\n modalParams.content = 'OCR识别中,关闭窗口后可在任务中心关注后续进程及结果';\n modalParams.btnVisible = false;\n Object.assign(modalData, modalParams);\n sessionStorage.setItem('batchNo', licenseKey.value);\n emit('get-modal-info', {\n modalVisible: true,\n modalData: modalData\n });\n } else {\n delete sessionStorage['batchNo'];\n emit('close-batch-visible', { isBatchVisible: false });\n }\n emit('init-table', {}); //上传成功刷新主表格\n };\n const errorMessage = ref('');\n const hasError = ref(false); //是否有错误标记,用于在change时,拦截,清空file相关信息\n // 重写默认上传方法 获取合规的行驶证图片信息\n const licenseCustomRequest = () => {\n console.log(2);\n if (!hasError.value) {\n const size = ref(0);\n licenseFile.value.forEach((ele: any) => {\n size.value = size.value + ele.size;\n });\n licenseFileNum.value = licenseFile.value.length;\n licenseContent.value = '0/' + licenseFileNum.value + '(0%完成)';\n licenseFileSize.value = (size.value / 1024 / 1024).toFixed(2) + 'MB';\n licenseUploadComplete.value = false;\n }\n };\n let nowSelectedFileNum = 0;\n //预检查\n const lastSign = ref(false); //最后一个文件标记,用于批量上传,告警\n let submitSign = true;\n const beforeUpload = (file: FileItem, fileList: any) => {\n console.log(' beforeUploadfile', file, fileList);\n const nameT = file.name + '';\n nowSelectedFileNum = fileList.length;\n if (fileList.length > 1 && file === fileList[fileList.length - 1]) {\n lastSign.value = true;\n // if (errorMessage.value.length>0){\n // message.error(errorMessage.value)\n // errorMessage.value = \"\";\n\n // hasError.value = true;\n // licenseCount.value = 1;\n // return false;\n // }\n } else {\n lastSign.value = false;\n // return true;\n }\n if (fileList.length === 1) {\n lastSign.value = true;\n }\n\n return new Promise((resolve, reject) => {\n // console.log(file)\n // 校验上传文件命名规则\n if (isSelected.value == 3) {\n regex = /^SFZM_/g;\n if (!regex.test(nameT)) {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以SFZM__VIN命名的身份证明文件');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以SFZM__VIN命名的身份证明文件';\n }\n return false;\n } else {\n const splitName = nameT.split('_');\n const isVin = splitName[1].split('.');\n if (isVin[0] == '') {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以SFZM__VIN命名的身份证明文件');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以SFZM__VIN命名的身份证明文件';\n }\n return false;\n }\n }\n } else if (isSelected.value == 4) {\n regex = /^JSHT_/g;\n if (!regex.test(nameT)) {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以JSHT_VIN命名的寄售合同文件');\n lastSign.value = false;\n hasError.value = true;\n licenseCount.value = 1;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以JSHT_VIN命名的寄售合同文件';\n }\n return false;\n } else {\n const splitName = nameT.split('_');\n const isVin = splitName[1].split('.');\n if (isVin[0] == '') {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以JSHT_VIN命名的寄售合同文件');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以JSHT_VIN命名的寄售合同文件';\n }\n return false;\n }\n }\n } else if (isSelected.value == 5) {\n regex = /^XSHT_/g;\n\n if (!regex.test(nameT)) {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以XSHT_VIN命名的销售合同文件');\n lastSign.value = false;\n hasError.value = true;\n licenseCount.value = 1;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以XSHT_VIN命名的销售合同文件';\n }\n return false;\n } else {\n const splitName = nameT.split('_');\n const isVin = splitName[1].split('.');\n if (isVin[0] == '') {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以XSHT_VIN命名的销售合同文件');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以XSHT_VIN命名的销售合同文件';\n }\n return false;\n }\n }\n } else if (isSelected.value == 6) {\n regex = /^RZBG_/g;\n\n if (!regex.test(nameT)) {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以RZBG_VIN命名的认证报告文件');\n lastSign.value = false;\n hasError.value = true;\n licenseCount.value = 1;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以RZBG_VIN命名的认证报告文件';\n }\n return false;\n } else {\n const splitName = nameT.split('_');\n const isVin = splitName[1].split('.');\n if (isVin[0] == '') {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以RZBG_VIN命名的认证报告文件');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以RZBG_VIN命名的认证报告文件';\n }\n return false;\n }\n }\n } else if (isSelected.value == 7) {\n regex = /^BXBG_/g;\n\n if (!regex.test(nameT)) {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以BXBG_VIN命名的保修报告文件');\n lastSign.value = false;\n hasError.value = true;\n licenseCount.value = 1;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以BXBG_VIN命名的保修报告文件';\n }\n return false;\n } else {\n const splitName = nameT.split('_');\n const isVin = splitName[1].split('.');\n if (isVin[0] == '') {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以BXBG_VIN命名的保修报告文件');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以BXBG_VIN命名的保修报告文件';\n }\n return false;\n }\n }\n } else if (isSelected.value == 8) {\n regex = /^QT_/g;\n\n if (!regex.test(nameT)) {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以QT_VIN命名的其他文件');\n lastSign.value = false;\n hasError.value = true;\n licenseCount.value = 1;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以QT_VIN命名的其他文件';\n }\n return false;\n } else {\n const splitName = nameT.split('_');\n const isVin = splitName[1].split('.');\n if (isVin[0] == '') {\n if (lastSign.value) {\n message.error('文件命名有误,请上传以QT_VIN命名的其他文件');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n } else {\n errorMessage.value = '文件命名有误,请上传以QT_VIN命名的其他文件';\n }\n return false;\n }\n }\n }\n const params = reactive({\n noticeType: '',\n content: '',\n btnVisible: false\n });\n //判断文件格式\n const isJpg = file.type === 'image/jpeg';\n const isPdf = file.type === 'application/pdf';\n if (!isJpg && !isPdf) {\n params.noticeType = 'error';\n params.content = '文件格式错误,请按照JPG PDF 等格式进行文件上传';\n errorMessage.value = '文件格式错误,请按照JPG PDF 等格式进行文件上传';\n if (lastSign.value) {\n message.error('文件格式错误,请按照JPG PDF 等格式进行文件上传');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n }\n params.btnVisible = false;\n emit('get-modal-info', {\n modalVisible: true,\n modalData: params\n });\n licenseCount.value = 1;\n // message.error(\"文件格式错误,请按照JPG PDF 等格式进行文件上传\")\n return reject(false);\n }\n //判断文件大小\n const isLt5M = file.size / 1024 / 1024 < 5;\n if (!isLt5M) {\n params.noticeType = 'error';\n params.content = '文件大小必须小于5MB!';\n errorMessage.value = '文件大小必须小于5MB!';\n if (lastSign.value) {\n message.error('文件大小必须小于5MB');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n }\n params.btnVisible = false;\n emit('get-modal-info', {\n modalVisible: true,\n modalData: params\n });\n licenseCount.value = 1;\n // message.error(\"文件大小必须小于5MB!\")\n return reject(false);\n }\n //判断图片数量\n const fileLength = fileList.length;\n if (fileLength > 100) {\n params.noticeType = 'error';\n params.content = '文件数量不能大于100张';\n errorMessage.value = '文件数量不能大于100张';\n if (lastSign.value) {\n message.error('文件数量不能大于100张');\n lastSign.value = false;\n hasError.value = true;\n errorMessage.value = '';\n }\n params.btnVisible = false;\n emit('get-modal-info', {\n modalVisible: true,\n modalData: params\n });\n licenseCount.value = 1;\n // message.error(\"文件数量不能大于100张\")\n return reject(false);\n }\n if (lastSign.value && errorMessage.value.length > 0) {\n message.error(errorMessage.value);\n lastSign.value = false;\n errorMessage.value = '';\n hasError.value = true;\n return resolve(false);\n }\n\n if (lastSign.value && errorMessage.value.length === 0) {\n lastSign.value = false;\n errorMessage.value = '';\n hasError.value = false;\n licenseFile.value = fileList;\n tempLicenseData.value = fileList;\n submitSign = true;\n return resolve(true);\n }\n\n // licenseFile.value = fileList;\n // tempLicenseData.value = fileList;\n // licenseCount.value = 0;\n // return resolve(true);\n });\n };\n //文件上传进度条显示\n const CANCEL_TOKEN = axios.CancelToken;\n let cancelFunction = () => {\n console.log('no uploading');\n };\n const licenseConfig = {\n onUploadProgress: (progressEvent: any) => {\n if (progressEvent.lengthComputable) {\n const complete = ((progressEvent.loaded / progressEvent.total) * 100) | 0;\n licensePercent.value = complete;\n licenseContent.value =\n Math.floor((progressEvent.loaded / progressEvent.total) * licenseFileNum.value) +\n '/' +\n licenseFileNum.value +\n '(' +\n complete +\n '%完成)';\n }\n },\n // 取消上传\n cancelToken: new CANCEL_TOKEN((c) => {\n //强行中断请求要用到的,记录请求信息\n cancelFunction = () => {\n isCancelUpload = true;\n c();\n };\n })\n };\n\n //轮询获取ocr返回数据\n const pollingGetData = () => {\n if ([1, 2, '1', '2'].includes(isSelected.value) && dataContent.length < licenseFileNum.value) {\n pT.value = setInterval(async () => {\n getOcrist({\n batchId: sessionStorage.getItem('batchNo'),\n current: pagination.currentPage,\n size: pagination.pageSize\n }).then((res: any) => {\n if (res.totalElements >= licenseFileNum.value) {\n clearInterval(pT.value);\n pT.value = 0;\n }\n dataContent.length = 0;\n dataContent.push(...res.content);\n if ((props as any).single) {\n let vinNo = '';\n if ((props as any).istab == 0) {\n vinNo = (props as any).recordVin.vinNo;\n } else {\n vinNo = (props as any).recordVin.vehicleVinNo;\n }\n\n if (dataContent.length) {\n dataContent[0].vinNo = vinNo;\n }\n }\n isContinue.value = true; //后续表格展示\n pagination.pageSize = res.size;\n pagination.currentPage = 1;\n pagination.total = res.totalElements;\n });\n }, 3000);\n }\n };\n\n // 上传成功展示ocr信息\n const showOcrTable = () => {\n getOcrist({\n batchId: sessionStorage.getItem('batchNo'),\n current: pagination.currentPage,\n size: pagination.pageSize\n }).then((res: any) => {\n dataContent.length = 0;\n dataContent.push(...res.content);\n if ((props as any).single && dataContent.length > 0) {\n let vinNo = '';\n if ((props as any).istab == 0) {\n vinNo = (props as any).recordVin.vinNo;\n } else {\n vinNo = (props as any).recordVin.vehicleVinNo;\n }\n dataContent[0].vinNo = vinNo;\n }\n isContinue.value = true; //后续表格展示\n pagination.pageSize = res.size;\n pagination.currentPage = res.totalPages;\n pagination.total = res.totalElements;\n pollingGetData();\n });\n };\n const showOcrTable2 = () => {\n getOcrist({\n batchId: sessionStorage.getItem('batchNo'),\n current: pagination.currentPage,\n size: pagination.pageSize\n }).then((res: any) => {\n dataContent.length = 0;\n dataContent.push(...res.content);\n if ((props as any).single && dataContent.length) {\n let vinNo = '';\n if ((props as any).istab == 0) {\n vinNo = (props as any).recordVin.vinNo;\n } else {\n vinNo = (props as any).recordVin.vehicleVinNo;\n }\n dataContent[0].vinNo = vinNo;\n }\n isContinue.value = true; //后续表格展示\n pagination.pageSize = res.size;\n pagination.currentPage = res.totalPages;\n pagination.total = res.totalElements;\n });\n };\n //批量上传行驶证 cpo+置换\n const batchLicense = async () => {\n isUploading.value = true;\n try {\n if ((props as any).recordVin.id) {\n licenseFormData.append('id', (props as any).recordVin.id);\n } else {\n licenseFormData.append('id', '');\n }\n licenseFormData.append('type', isSelected.value as any);\n licenseFormData.append('batchId', licenseKey.value as any);\n sessionStorage.setItem('batchNo', licenseKey.value);\n const res: any =\n parseInt((props as any).istab) == 0\n ? await fileUpload(licenseFormData, licenseConfig)\n : await fileUploadTrande(licenseFormData, licenseConfig);\n isUploading.value = false;\n //判断返回的code值 除0外都是异常\n if (res.code !== '0') {\n isLicenseSuccess.value = false;\n licenseProStatus.value = 'exception';\n licenseContent.value = '上传失败';\n uploadError.value = true;\n isComplete.value = '上传失败';\n modalParams.content = res.message;\n } else {\n isComplete.value = '完成';\n licenseProStatus.value = 'normal';\n isLicenseSuccess.value = true;\n }\n } catch (e) {\n if (isCancelUpload) {\n setTimeout(() => {\n isCancelUpload = false;\n });\n return;\n }\n isLicenseSuccess.value = false;\n uploadError.value = true;\n licenseProStatus.value = 'exception';\n licenseContent.value = '上传失败';\n modalParams.content = '上传失败';\n }\n };\n\n // 上传报错 关闭弹窗 重置相应数据\n const isResetModal = (param: { continue: boolean }) => {\n const isCloseModal = param.continue;\n if (isCloseModal) {\n if (licenseProStatus.value == 'exception') {\n licenseUploadComplete.value = true;\n licenseProStatus.value = 'normal';\n licensePercent.value = 0;\n tempLicenseData.value = [];\n licenseFormData.delete('files');\n }\n if (ocrProStatus.value == 'exception') {\n licenseUploadComplete.value = true;\n ocrProStatus.value = 'normal';\n ocrPercent.value = 0;\n tempLicenseData.value = [];\n licenseFormData.delete('files');\n }\n }\n };\n // 图片格式错误 再次上传清空之前记录数\n const isResetCount = (param: { continue: boolean }) => {\n const resetCount = param.continue;\n if (resetCount) {\n licenseCount.value = 0;\n }\n };\n // 分页逻辑\n const pageChange = (page: number, pageSize: number) => {\n pagination.currentPage = page > 0 ? page : 1;\n showOcrTable2();\n };\n const sizeChange = (page: number, pageSize: number) => {\n pagination.pageSize = pageSize;\n pagination.currentPage = 1;\n showOcrTable2();\n };\n // ocr提交获取进度\n const batchSub = async (type: string, batchNo: string) => {\n const params = {\n batchNo: batchNo\n };\n isContinue.value = false;\n dataSource.value = {\n content: []\n };\n try {\n // const res = await batchFileSubmit({ params });\n // 临时进度条设置\n const tempFun = (res: any) => {\n if (res.code !== '0') {\n ocrProStatus.value = 'exception';\n ocrContent.value = '提交失败';\n clearInterval(timer.value);\n timer.value = 0;\n modalParams.content = res.message;\n } else {\n const useCurrent = res.data.current;\n const useTotal = res.data.total;\n const percentage = ((useCurrent / useTotal) * 100) | 0;\n ocrProStatus.value = 'normal';\n ocrPercent.value = percentage;\n ocrContent.value = useCurrent + '/' + useTotal + '(' + ocrPercent.value + '%完成)';\n\n if (useCurrent !== 0 && useCurrent == useTotal) {\n clearInterval(timer.value);\n timer.value = 0;\n const activeValue = ref('');\n if (licensePercent.value == 100) {\n activeValue.value = 'ocr';\n }\n if (type !== activeValue.value) {\n isContinue.value = false;\n dataSource.value = {\n content: []\n };\n } else {\n isCheckingOcr.value = false;\n showOcrTable(); //获取上传表格展示信息\n }\n } else {\n if (percentage == 100) {\n modalParams.content = '提交成功!';\n }\n }\n }\n };\n setTimeout(() => {\n const res = {\n code: '0',\n data: { current: 20, total: 100 },\n message: '进行中'\n };\n tempFun(res);\n }, 100);\n setTimeout(() => {\n const res = {\n code: '0',\n data: { current: 40, total: 100 },\n message: '进行中'\n };\n tempFun(res);\n }, 300);\n setTimeout(() => {\n const res = {\n code: '0',\n data: { current: 70, total: 100 },\n message: '进行中'\n };\n tempFun(res);\n }, 500);\n setTimeout(() => {\n const res = {\n code: '0',\n data: { current: 100, total: 100 },\n message: '成功'\n };\n tempFun(res);\n }, 600);\n } catch (e) {\n ocrProStatus.value = 'exception';\n ocrContent.value = '提交失败';\n clearInterval(timer.value);\n clearInterval(pT.value);\n timer.value = 0;\n modalParams.content = '提交失败';\n }\n };\n //ocr提交\n const batchSubmit = async () => {\n isCheckingOcr.value = true;\n ocrContent.value = '0/' + nowSelectedFileNum;\n timer.value = setInterval(async () => {\n console.log('111');\n await batchSub('ocr', licenseKey.value);\n }, 2000);\n sessionStorage.setItem('isOcrContinue', 'ocr');\n // infoVisible.value = true;\n };\n // 智传\n\n const submitFile = async (file: any) => {\n console.log('file', file);\n\n if (hasError.value) {\n hasError.value = false;\n return;\n }\n\n if (submitSign) {\n submitSign = false;\n\n licenseProStatus.value = 'normal';\n // 清空之前请求存储数据\n sessionStorage.setItem('vlLicenseData', '');\n // sessionStorage.setItem('ocrVlSuccess', '')\n sessionStorage.setItem('isOcrContinue', '');\n licenseClickCount.value = 1;\n // 转换上传数据格式\n (tempLicenseData as any).value.forEach((ele: any, index: number) => {\n licenseFormData.append('files', ele);\n });\n await batchLicense();\n // 判断上传是否成功 进行相关处理\n if (isCancelUpload) {\n setTimeout(() => {\n isCancelUpload = false;\n });\n return;\n }\n if (isLicenseSuccess.value === true) {\n ocrFileSize.value = licenseFileSize.value;\n licenseFileSize.value = '';\n // 传递相关需要保存的数据\n const licenseSession = reactive({\n vlLicenseData: tempLicenseData,\n isLicenseSuccess: true,\n licenseFileNum: licenseFileNum,\n licenseFileSize: licenseFileSize,\n licenseKey: licenseKey\n });\n sessionStorage.setItem('vlLicenseData', JSON.stringify(licenseSession));\n // licenseSubSuccess.value = true\n console.log([1, 2, '1', '2'].includes(isSelected.value));\n if (isSelected.value == 1 || isSelected.value == 2) {\n // 发票和登记证处理上传成功调用提交接口\n Modal.warning({\n title: '提示',\n content: '文字自动识别阶段,关闭窗口后可在任务中心关注后续进程及结果'\n });\n batchSubmit();\n } else {\n // 走到这步\n // 除发票和登记证的上传成功展示表格\n if (isComplete.value == '完成') {\n console.log('YYYYYYY');\n showOcrTable2(); //获取表格展示信息\n }\n }\n } else {\n modalParams.noticeType = 'error';\n modalParams.btnVisible = false;\n sessionStorage.setItem('vlLicenseData', '');\n emit('get-modal-info', {\n modalVisible: true,\n modalData: modalParams\n });\n }\n }\n };\n\n const isSelBtn = (param: number) => {\n activeKey.value = param + '';\n if (!licenseUploadComplete.value && licensePercent.value !== 100) {\n message.error('请等当前文件上传完成后再切换页签呦~');\n } else {\n isSelected.value = param;\n licenseFormData = new FormData(); //清空上传的参数信息\n // initCon(); //初始化上次上传结果\n fileNameShow.value =\n param == 1\n ? '二手车发票'\n : param == 2\n ? '登记证'\n : param == 3\n ? '身份证明'\n : param == 4\n ? '寄售合同'\n : param == 5\n ? '销售合同'\n : param == 6\n ? '认证报告'\n : param == 7\n ? '保修报告'\n : '其它';\n nameRules.value =\n param == 1\n ? '无要求'\n : param == 2\n ? '无要求'\n : param == 3\n ? 'SFZM_VIN'\n : param == 4\n ? 'JSHT_VIN'\n : param == 5\n ? 'XSHT_VIN'\n : param == 6\n ? 'RZBG_VIN'\n : param == 7\n ? 'BXBG_VIN'\n : 'QT_VIN';\n continueSumbit();\n }\n };\n continueSumbit(); //进入弹窗清空上传抽屉框,\n //导出提交结果\n const exportSubmitEvent = () => {\n const tableKey = (props as any).isTab + 1;\n const params = {\n url: `/rvapi/ucOrcResult/export` + '?batchId=' + sessionStorage.getItem('batchNo') + '&tableKey=' + tableKey,\n method: 'post',\n fileName:\n (props as any).isTab == 0\n ? `CPO销售${moment(new Date()).format('YYYYMMDDhhmmss')}.xlsx`\n : `置换${moment(new Date()).format('YYYYMMDDhhmmss')}.xlsx`\n };\n downloadFile(params);\n };\n\n const tableHeight = 200;\n\n const onDrop = (event: any) => {\n const files = event.dataTransfer.files;\n if (files.length > 1) {\n message.error('请选择单个文件');\n event.stopPropagation();\n event.preventDefault();\n }\n };\n\n onBeforeUnmount(() => {\n cancelFunction();\n if (timer.value) {\n clearInterval(timer.value);\n timer.value = 0;\n }\n if (pT.value) {\n clearInterval(pT.value);\n pT.value = 0;\n }\n });\n\n return {\n showVinNo,\n tableHeight,\n pagination,\n cancelFunction,\n continueSumbit,\n isCheckingOcr,\n isvisible,\n licenseUploadComplete,\n modalData,\n licenseTit,\n licenseContent,\n licenseFileSize,\n licenseConfig,\n licenseFileNum,\n isLicenseSuccess,\n licenseProStatus,\n uploadError,\n timer,\n licenseClickCount,\n orcTit,\n ocrPercent,\n ocrProStatus,\n batchSubmit,\n dataSource,\n isContinue,\n batchSub,\n closeCount,\n licensePercent,\n isResetModal,\n close,\n beforeUpload,\n batchLicense,\n isResetCount,\n licenseCustomRequest,\n submitFile,\n ocrContent,\n ocrFileSize,\n // getBatchSubmitResult,\n pageChange,\n sizeChange,\n columns,\n exportSubmitEvent,\n ocrKey,\n size,\n isSelBtn,\n nameRules,\n fileNameShow,\n isSelected,\n dataContent,\n isComplete,\n pT,\n infoVisible,\n activeKey,\n changeActiveKey,\n onDrop\n };\n }\n});\n","import { render } from \"./BatchUploadSubmit.vue?vue&type=template&id=5d8b1da2&scoped=true&ts=true\"\nimport script from \"./BatchUploadSubmit.vue?vue&type=script&lang=ts\"\nexport * from \"./BatchUploadSubmit.vue?vue&type=script&lang=ts\"\n\nimport \"./BatchUploadSubmit.vue?vue&type=style&index=0&id=5d8b1da2&lang=scss\"\nimport \"./BatchUploadSubmit.vue?vue&type=style&index=1&id=5d8b1da2&lang=scss&scoped=true\"\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-5d8b1da2\"]])\n\nexport default __exports__","export const b64toBlob = (b64Data='', contentType='', sliceSize=512) => {\n const byteCharacters = atob(b64Data);\n const byteArrays = [];\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\n const slice = byteCharacters.slice(offset, offset + sliceSize),\n byteNumbers = new Array(slice.length);\n for (let i = 0; i < slice.length; i++) {\n byteNumbers[i] = slice.charCodeAt(i);\n }\n const byteArray = new Uint8Array(byteNumbers);\n\n byteArrays.push(byteArray);\n }\n\n const blob = new Blob(byteArrays, {type: contentType});\n return blob;\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!./BatchUploadSubmit.vue?vue&type=style&index=1&id=5d8b1da2&lang=scss&scoped=true\"","module.exports = __webpack_public_path__ + \"img/error.22ad22df.svg\";","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","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, mergeProps as _mergeProps, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ae7a55ca\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"batch-input-title\" }\nconst _hoisted_2 = { class: \"vin-list-box\" }\nconst _hoisted_3 = /*#__PURE__*/_createTextVNode(\"清除\")\nconst _hoisted_4 = /*#__PURE__*/_createTextVNode(\"确认\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_a_input = _resolveComponent(\"a-input\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_modal = _resolveComponent(\"a-modal\")!\n\n return (_openBlock(), _createBlock(_component_a_modal, _mergeProps({\n class: \"batch-input-model\",\n visible: _ctx.visible,\n width: 400,\n bodyStyle: { padding: '2px 20px 20px' },\n style: {\"margin-top\":\"105px\"},\n centered: \"\",\n maskClosable: false,\n onCancel: _ctx.handleClose\n }, _ctx.$attrs), {\n footer: _withCtx(() => [\n _createVNode(_component_a_button, {\n class: \"m-l-16 min-tbn-w\",\n onClick: _ctx.handleReset\n }, {\n default: _withCtx(() => [\n _hoisted_3\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_a_button, {\n class: \"m-l-16 min-tbn-w\",\n type: \"primary\",\n onClick: _ctx.handleConfim\n }, {\n default: _withCtx(() => [\n _hoisted_4\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n default: _withCtx(() => [\n _createElementVNode(\"p\", _hoisted_1, _toDisplayString(_ctx.subTitle), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.inputValues, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"list-item\",\n key: index\n }, _toDisplayString(item), 1))\n }), 128)),\n _createVNode(_component_a_input, {\n ref: \"input\",\n class: \"input-row\",\n value: _ctx.inputContent,\n \"onUpdate:value\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.inputContent) = $event)),\n onChange: _ctx.handleInput\n }, null, 8, [\"value\", \"onChange\"]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.inputValues.length > 0 ? 0 : 6, (index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: index,\n class: \"list-item\"\n }))\n }), 128))\n ])\n ]),\n _: 1\n }, 16, [\"visible\", \"onCancel\"]))\n}","\nimport { defineComponent, ref, watch, nextTick } from \"vue\";\nimport type { PropType } from \"vue\";\nimport { message } from \"ant-design-vue\";\n\nexport default defineComponent({\n emits: [\"update:visible\", \"update:values\"],\n props: {\n visible: {\n type: Boolean,\n default: false,\n required: true,\n },\n values: {\n type: Array as PropType,\n default: () => [],\n },\n subTitle: {\n type: String,\n default: \"\",\n },\n },\n setup(props, { emit }) {\n const input = ref();\n const inputContent = ref(\"\");\n const inputValues = ref([]);\n\n watch(\n () => props.visible,\n (visible) => {\n if (visible) {\n inputValues.value = props.values;\n }\n }\n );\n\n const handleInput = () => {\n if (inputContent.value.length < 5) {\n message.error(\"请从Excel中粘贴复制查询\");\n inputContent.value = \"\";\n return;\n }\n inputValues.value = inputValues.value.concat(\n inputContent.value.split(/\\s/).filter((item) => item !== \"\")\n );\n const dom = document.querySelector(\".vin-list-box\") as HTMLElement;\n inputContent.value = \"\";\n\n nextTick(() => {\n dom.scrollTo(0, dom.scrollHeight + 40);\n input.value.focus();\n });\n };\n\n const handleClose = () => {\n emit(\"update:visible\", false);\n };\n // 重置按钮\n const handleReset = () => {\n inputValues.value = [];\n input.value.focus();\n };\n\n const handleConfim = () => {\n emit(\"update:values\", inputValues.value);\n handleClose();\n };\n\n return {\n input,\n inputContent,\n inputValues,\n handleInput,\n handleClose,\n handleReset,\n handleConfim,\n };\n },\n});\n","import { render } from \"./batchInputModel.vue?vue&type=template&id=ae7a55ca&scoped=true&ts=true\"\nimport script from \"./batchInputModel.vue?vue&type=script&lang=ts\"\nexport * from \"./batchInputModel.vue?vue&type=script&lang=ts\"\n\nimport \"./batchInputModel.vue?vue&type=style&index=0&id=ae7a55ca&lang=scss&scoped=true\"\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-ae7a55ca\"]])\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!./BatchUploadSubmit.vue?vue&type=style&index=0&id=5d8b1da2&lang=scss\"","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!./batchInputModel.vue?vue&type=style&index=0&id=ae7a55ca&lang=scss&scoped=true\""],"sourceRoot":""}