{"version":3,"sources":["webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/UploadInformation.vue?af01","webpack:///./src/assets/images/date-icon.svg","webpack:///./src/assets/images/rv/upload.svg","webpack:///./src/assets/images/claim/stop.png","webpack:///./src/views/Claim/DealerClaim/Submit/index.vue?bc55","webpack:///./src/assets/images/rv/complete.svg","webpack:///./src/assets/images/claim/upload.svg","webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/UploadInformation.vue?1ec1","webpack:///./src/assets/images/rv/rect.png","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/UploadInformation.vue?04a4","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/UploadInformation.vue?1326","webpack:///./src/views/Claim/DealerClaim/DealerProgramCategory/index.vue?6b04","webpack:///./src/assets/images/copy-icon.svg","webpack:///./src/utils/claim/b64toBlob.ts","webpack:///./src/views/Claim/DealerClaim/DealerProgramCategory/index.vue?bc45","webpack:///./src/views/Claim/DealerClaim/Submit/index.vue?58ba","webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/SingleInformation.vue?71d1","webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/SingleInformation.vue","webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/SingleInformation.vue?f7d8","webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/UploadInformation.vue?b196","webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/UploadInformation.vue","webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/UploadInformation.vue?ab6c","webpack:///./src/views/Claim/DealerClaim/UploadSupport/UploadExample.vue?ce09","webpack:///./src/views/Claim/DealerClaim/UploadSupport/UploadExample.vue","webpack:///./src/views/Claim/DealerClaim/UploadSupport/UploadExample.vue?57a6","webpack:///./src/views/Claim/DealerClaim/UploadSupport/index.vue?aa2f","webpack:///./src/views/Claim/DealerClaim/UploadSupport/index.vue","webpack:///./src/views/Claim/DealerClaim/UploadSupport/index.vue?6e75","webpack:///./src/views/Claim/DealerClaim/Submit/index.vue","webpack:///./src/views/Claim/DealerClaim/Submit/index.vue?33fa","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/index.vue?b4c5","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/index.vue?26f8","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/index.vue","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/index.vue?5256","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/UploadSupport/index.vue?5d10","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/UploadSupport/index.vue","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/UploadSupport/index.vue?2ada","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/UploadInformation.vue?2897","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/UploadInformation.vue","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/UploadInformation.vue?e62e","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/index.vue","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/index.vue?dc93","webpack:///./src/views/Claim/DealerClaim/DealerProgramCategory/index.vue","webpack:///./src/views/Claim/DealerClaim/DealerProgramCategory/index.vue?f2cb","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/index.vue?0725","webpack:///./src/views/Claim/DealerClaim/UploadSupport/index.vue?a6f8","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/UploadSupport/index.vue?06ca","webpack:///./src/API/claim/delaerClaim/delaer.ts","webpack:///./src/views/Claim/DealerClaim/Submit/ExtendInformation/SingleInformation.vue?14f6","webpack:///./src/views/Claim/DealerClaim/UploadSupport/UploadExample.vue?ae99","webpack:///./src/views/Claim/DealerClaim/DocumentSubmit/ExtendInformation/index.vue?5d8f","webpack:///./src/utils/claim/downloadFile.ts"],"names":["module","exports","b64toBlob","b64Data","contentType","sliceSize","byteCharacters","atob","byteArrays","offset","length","slice","byteNumbers","Array","i","charCodeAt","byteArray","Uint8Array","push","blob","Blob","type","_withScopeId","n","_hoisted_1","class","_hoisted_2","src","_hoisted_3","_hoisted_4","style","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","key","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","render","_ctx","_cache","$props","$setup","$data","$options","_component_Breadcrumb","_component_a_tab_pane","_component_a_tabs","_component_a_radio","_component_a_radio_group","_component_a_button","_component_Submit","_component_DocumentSubmit","dataSource","name","isStop","isShowPic","activeKey","selectTabs","onChange","cutTabs","tabBarStyle","default","tabs","item","index","tab","value","_","endTime","sumNum","programeCode","programNameCn","offerTypeId","$event","categoryArray","radioStyle","typeId","typeName","count","onClick","nextStep","preStep","isDocument","onPrePage","ref","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_component_a_input","_component_a_space","_component_a_range_picker","_component_a_divider","_component_a_step","_component_a_steps","_component_ExclamationCircleOutlined","_component_a_popover","_component_a_checkbox","_component_a_table","_component_SingleInformation","_component_UploadInformation","_component_SupportExample","_component_UploadSupport","_component_a_modal","size","direction","screeningConditions","vinNo","placeholder","batchQueryEvent","allowClear","modelName","disabledRetailDate","valueFormat","format","retailDate","suffixIcon","disabledWholelDate","saleDate","jumpToUploadUsedCarPage","exportTable","clearScreeningConditions","getTableData","stepNum","showUploadSupportDrawer","supportSample","docId","filePath","showExample","docName","downloadExtendInfo","showUploadDrawer","current","currentStep","stepArray","title","pagination","scroll","x","y","tableHeight","columns","rowKey","record","id","rowClassName","placement","content","wholesaleSellerName","customTitle","onCheckAllChange","args","checked","checkAll","indeterminate","checkStatus","showCheckStatus","wholesaleSellerCofico","operation","check","checkChange","supportActive","supportActiveTitle","uploadSingleSupport","supportDocVOS","supportDocName","showSupportPic","supportDocFilePath","extendedInfoTitle","extendactive","extendActive","extendActiveTitle","supportDocVOSTitle","activesupport","categoryName","extendedInfo","showFill","extendinactive","dataCount","nextButtonText","onFreshTable","width","visible","modalVisible","modalTitle","footer","modalDataSource","modalColumns","batchQueryModal","onCancel","closeBatchQueryModal","centered","batchQueryTitle","clearBatchQuery","batchQueryListTitle","textNoArray","textContentNo","textChangEvent","batchPlaceholder","errorModalVisible","exportError","errorDataSource","errorColumns","position","right","bottom","borderTop","padding","background","textAlign","zIndex","_component_a_date_picker","_component_a_select_option","_component_a_select","_component_a_form_item","_component_a_form","_component_a_drawer","closable","afterVisibleChange","paddingBottom","onClose","closeThisDrawer","getContainer","spinWrapper","layout","data","required","isMandatory","label","fieldNameCn","fieldType","onBlur","checkExtend","onKeydown","handleInput","enumValueList","selectItem","errorMessage","error","onSave","disabled","isShow","emits","setup","props","ctx","timeout","bool","console","log","groupID","progDesignOfferTypeId","dealerCode","e","a","replace","keyCode","preventDefault","trim","maxValue","minValue","parseInt","Date","parse","replaceAll","clearTimeout","saveInfo","param","progDesignId","dealerExtendInfoLst","sign","message","forEach","element","one","claimParaExtendInfoId","paraExtendInfoId","then","res","code","success","emit","setTimeout","editExtend","propid","showButton","dealerCodeA","prodId","tdata","enumValue","split","document","querySelector","__exports__","alt","_component_a_upload_dragger","_component_a_progress","multiple","listType","showUploadList","customRequest","invoiceCustomRequest","beforeUpload","invoiceUploadComplete","strokeColor","percent","invoicePercent","status","invoiceProStatus","invoiceFileSize","reUpload","toString","isSubmit","submitFile","isDone","offerTypeKey","window","innerHeight","formData","FormData","curUploadFile","dataFault","dataIndex","showDrawer","has","delete","source","append","file","toFixed","Math","floor","isXlsx","isLt5M","params","_component_a_image","base64code","frameborder","height","pdfHeight","comment","ext","URL","createObjectURL","showDrawerReview","collectionDocId","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","itemMessage","isOnlyRead","activeTabs","supportTabs","hasFile","isUpload","isMultiple","progressPercentage","uploadFileSize","isRe","isFault","total","fault","deleteHandle","isConfirm","confirm","buttonText","prop","selectTabName","cacheData","programId","retailBegin","endTimeRetail","stepTableArray","formDataOCR","uploadFileListSize","uploadFileCount","uploadfileList","uploadFileList","filesArray","filesArrayOrc1","filesArrayOrc2","method","url","onUploadProgress","progressEvent","lengthComputable","complete","loaded","info","failedResultList","totalNum","successNum","failedNum","orcUrl","fileName","failedFileNames","includes","claimParaSetupSupportingDocId","from","keys","catch","uploadFileSingle","currentTab","claimSetupSupportDocId","docPath","fileType","docType","fileSize","documentId","undefined","endq","filearray","fordata","orcForData1","orcForData2","retailEnd","fileList","vinNoList","end","isJpg","isPdf","option","tabName","prams","docList","uploadTypes","reduce","types","join","newVal","docSample","okText","onOk","cancelText","getFirstLevelBU","buTree","bu","buItem","nameEn","children","components","SingleInformation","UploadInformation","SupportExample","UploadSupport","ExclamationCircleOutlined","errorArray","router","extendInfoDom","uploadInfoDom","supportExample","uploadSupportDom","proveText","manager","screeningConditionsTemporary","stepTableArrayDoc","stepTableArraySupport","supportDocSign","supportDocVosLength","columnsValue","slots","customRender","columnsValue2","noStep","activeOperation","selectTableArray","checkAllNum","filter","changeSelect","indexOf","splice","syncStepTableArray","checkDoc","filterData","signArray","VINNo","vinNoArray","vinNos","checkSign","checkArray","checkSupport","support","supportArray","j","isRequired","goDoc","goSupport","goSubmit","claimDocumentMatching","VINarray","onSubmit","parmas","doc","supportDocArray","isArray","offerTypeNameEn","customerName","dealerNameCn","eligiblePeriodFrom","eligiblePeriodTo","eligiblePeriodType","eligiblePeriodName","eligiblePeriodId","inParagraph","modelYear","incentiveCategory","model","offerTypeName","predictAmount","customerPolicyEstimatedAmount","price","programCode","programName","specialUsage","specialVehicleUse","submissionDateFrom","submissionDateTo","typeClass","wholesaleDate","supportDocIds","commissionNo","engineNo","entity","fin","materialNo","programOwner","programCreator","releaseDate","programReleaseDate","supportOfferId","supportOfferName","dealerNameEn","dealerName","offerTypePathKey","programBuId","programBu","programBuName","programBuSecondId","programBuSecond","programBuSecondName","make","siOffer","conflict","orderProtection","presale","getTableDataCheckArray","array","supportType","vin","wholesaleBegin","wholesaleEnd","projectType","scoreMap","obj","cur","Object","create","oldArray","preName","hasDoc","hasSupport","temporary","strLength","isCPO","init","select","firstLevelBU","vinClaimConflict","downloadParams","progId","categoryID","showUploadSupport","assign","declarationIncompatibleList","offerTypeNameCn","par","downloadFile","batchQuery","input","cleanEmptyEleArray","tempArray","setBatchPlaceholder","concat","dom","getElementsByClassName","scrollTo","scrollHeight","focus","fontWeight","color","open","_component_ExtendInformation","_component_supportExample","noDoc","dowloadDoc","isSupport","uploadSupportDraw","addExtendInformation","tableWidth","supportDoc","showSupport","action","editTable","deleteTable","closeDrawer","formState","extendInfoLst","isLock","isFileNamingRule","isUploading","paramOption","isNew","identityCard","groupId","setupDocId","appId","supportDocList","signLength","collectionSetupId","fileNamingRuleContent","docParaExtendInfoId","nameRule","optionMessage","docParaSetupSupportingDocId","rule","ExtendInformation","uploadSupport","uploadInformation","extendInformationDom","exampleImg","isOnlyView","programeName","p33","getExamplePic","getSupportArray","Promise","all","result","supportArrayWidth","Submit","DocumentSubmit","beforeRouteEnter","to","next","fullPath","route","programNameEn","dealerNameEN","dealerNameCN","startTime","declaredVin","SubmitDom","DocumentSubmitDom","isCategory","display","lineHeight","fontSize","shouldShowStop","isPre","ca","docPeriods","offertypeVos","progDesignOfferTypeNameCn","submissionCount","progDesignOfferTypeName","progDesignOfferTypePathKey","times","retailPeriods","toLowerCase","getOfferType","getStatus","getSubmissionOverview","getTabsData","getVINTableData","avaliablePrograms","extendEdit","getExtendInfo","saveInfoExtend","supportReview","supportSaveOrUpdateSingle","saveDealerClaimApp","saveDelayDealerClaimApp","deleteDocSample","docSampleDealer","docSampleReview","docReview","claimReview","validateReplaceAttributes","extendTitleList","getTablelist","getDocView","getDocEdit","dealerSave","deleteFile","deleteTableItem","uploadBatchInfo","downloadExtendInfoApi","downloadProve","uploadExtendInfoApi","resolve","reject","uploadProve","saveClaimDealerProgramInfo","getUser","getAllParentBu","getDealerMessageApi","dealerID","getManagerApi","getAvaliableDelayProgramsApi","setClaimDocumentMatching","matchingCustomerTypeApi","rematch","getTime","OCROne","OCRS","options","config","responseType","downloadElement","createElement","href","str","headers","lastIndexOf","substring","download","decodeURIComponent","now","body","appendChild","click","removeChild","revokeObjectURL"],"mappings":"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","file":"js/chunk-5b7dc452.f930a547.js","sourcesContent":["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!./UploadInformation.vue?vue&type=style&index=1&id=7a254d37&lang=scss\"","module.exports = __webpack_public_path__ + \"img/date-icon.b14f3d24.svg\";","module.exports = __webpack_public_path__ + \"img/upload.e4734716.svg\";","module.exports = __webpack_public_path__ + \"img/stop.97de4c43.png\";","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!./index.vue?vue&type=style&index=0&id=3f9e3854&lang=scss&scoped=true\"","module.exports = __webpack_public_path__ + \"img/complete.92764ba0.svg\";","module.exports = __webpack_public_path__ + \"img/upload.284ae877.svg\";","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!./UploadInformation.vue?vue&type=style&index=0&id=7a254d37&lang=scss&scoped=true\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAQCAYAAADTasWKAAAABGdBTUEAALGPC/xhBQAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAA6ADAAQAAAABAAAAEAAAAABTVpExAAAARklEQVQIHWNgWPf+GcO6Dx0MV/+zsTD8Z5BkYPhfznDzIwMTAxz8j0NwgCoQHKAK+nMYGZ4jWcq4iIUBKMLAwLiIQZ2/DgAi2RE9IOkxIAAAAABJRU5ErkJggg==\"","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!./UploadInformation.vue?vue&type=style&index=1&id=62f49c6f&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!./UploadInformation.vue?vue&type=style&index=0&id=62f49c6f&lang=scss&scoped=true\"","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!./index.vue?vue&type=style&index=0&id=734c252e&lang=scss&scoped=true\"","module.exports = __webpack_public_path__ + \"img/copy-icon.b11fe629.svg\";","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}","import { resolveComponent as _resolveComponent, createVNode as _createVNode, createElementVNode as _createElementVNode, vShow as _vShow, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createBlock as _createBlock, normalizeStyle as _normalizeStyle, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/claim/stop.png'\nimport _imports_1 from '@/assets/images/rv/rect.png'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-734c252e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"stop\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", { src: _imports_0 }, null, -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\nconst _hoisted_4 = { style: {\"font-size\":\"12px\"} }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = { style: {\"font-size\":\"16px\"} }\nconst _hoisted_7 = { class: \"content-dealer\" }\nconst _hoisted_8 = { class: \"overview-dealer\" }\nconst _hoisted_9 = { class: \"bottom-dealer\" }\nconst _hoisted_10 = {\n class: \"message-dealer\",\n style: {\"padding-left\":\"0px\"}\n}\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"申报截止日期: \", -1))\nconst _hoisted_12 = { class: \"time\" }\nconst _hoisted_13 = { class: \"message-dealer\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"已申报统计: \", -1))\nconst _hoisted_15 = { class: \"time\" }\nconst _hoisted_16 = { class: \"message-dealer\" }\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Programe Code: \", -1))\nconst _hoisted_18 = { class: \"code\" }\nconst _hoisted_19 = { class: \"message-dealer\" }\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Programe Name: \", -1))\nconst _hoisted_21 = { class: \"code\" }\nconst _hoisted_22 = {\n key: 0,\n class: \"category\",\n style: {\"background\":\"white\",\"margin-top\":\"10px\"}\n}\nconst _hoisted_23 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"top\" }, [\n /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_1,\n class: \"rect\"\n }),\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"请选择申报类型\")\n], -1))\nconst _hoisted_24 = { class: \"bottom\" }\nconst _hoisted_25 = { style: {\"margin-top\":\"40px\"} }\nconst _hoisted_26 = { style: {\"width\":\"400px\",\"float\":\"left\"} }\nconst _hoisted_27 = { style: {\"width\":\"100px\",\"float\":\"left\",\"margin-top\":\"4px\"} }\nconst _hoisted_28 = { style: {} }\nconst _hoisted_29 = { style: {\"position\":\"absolute\",\"width\":\"calc(100% - 8px)\",\"background\":\"white\",\"height\":\"39px\",\"bottom\":\"0px\",\"border-top\":\"1px solid #d3d3d3\"} }\nconst _hoisted_30 = /*#__PURE__*/_createTextVNode(\" 下一步 \")\nconst _hoisted_31 = /*#__PURE__*/_createTextVNode(\" 上一步 \")\nconst _hoisted_32 = {\n key: 1,\n class: \"category\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Breadcrumb = _resolveComponent(\"Breadcrumb\")!\n const _component_a_tab_pane = _resolveComponent(\"a-tab-pane\")!\n const _component_a_tabs = _resolveComponent(\"a-tabs\")!\n const _component_a_radio = _resolveComponent(\"a-radio\")!\n const _component_a_radio_group = _resolveComponent(\"a-radio-group\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_Submit = _resolveComponent(\"Submit\")!\n const _component_DocumentSubmit = _resolveComponent(\"DocumentSubmit\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createVNode(_component_Breadcrumb, { dataSource: [{ name: '销售激励申报' }] }),\n _withDirectives(_createElementVNode(\"div\", _hoisted_1, _hoisted_3, 512), [\n [_vShow, _ctx.isStop && _ctx.isShowPic]\n ]),\n _createVNode(_component_a_tabs, {\n activeKey: _ctx.selectTabs,\n onChange: _ctx.cutTabs,\n tabBarStyle: _ctx.tabBarStyle\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.tabs, (item, index) => {\n return (_openBlock(), _createBlock(_component_a_tab_pane, { key: index }, {\n tab: _withCtx(() => [\n _createElementVNode(\"span\", _hoisted_4, [\n _createTextVNode(_toDisplayString(item.type), 1),\n _hoisted_5,\n _createElementVNode(\"span\", _hoisted_6, _toDisplayString(item.value), 1)\n ])\n ]),\n _: 2\n }, 1024))\n }), 128))\n ]),\n _: 1\n }, 8, [\"activeKey\", \"onChange\", \"tabBarStyle\"]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _hoisted_11,\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.endTime), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(_ctx.sumNum), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_16, [\n _hoisted_17,\n _createElementVNode(\"span\", _hoisted_18, _toDisplayString(_ctx.programeCode), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_19, [\n _hoisted_20,\n _createElementVNode(\"span\", _hoisted_21, _toDisplayString(_ctx.programNameCn), 1)\n ])\n ])\n ]),\n (_ctx.isCategory)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _hoisted_23,\n _createElementVNode(\"div\", _hoisted_24, [\n _createElementVNode(\"div\", _hoisted_25, [\n _createVNode(_component_a_radio_group, {\n value: _ctx.offerTypeId,\n \"onUpdate:value\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.offerTypeId) = $event))\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.categoryArray, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", { key: index }, [\n _createElementVNode(\"div\", _hoisted_26, [\n _createVNode(_component_a_radio, {\n style: _normalizeStyle(_ctx.radioStyle),\n value: item.typeId\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(item.typeName), 1)\n ]),\n _: 2\n }, 1032, [\"style\", \"value\"])\n ]),\n _createElementVNode(\"div\", _hoisted_27, [\n _createElementVNode(\"span\", _hoisted_28, \"已申报:\" + _toDisplayString(item.count), 1)\n ])\n ]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"value\"])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_29, [\n _withDirectives(_createVNode(_component_a_button, {\n style: {\"float\":\"right\",\"margin-top\":\"3px\",\"margin-right\":\"5px\",\"padding\":\"0px 20px\"},\n type: \"primary\",\n onClick: _ctx.nextStep\n }, {\n default: _withCtx(() => [\n _hoisted_30\n ]),\n _: 1\n }, 8, [\"onClick\"]), [\n [_vShow, !_ctx.isStop]\n ]),\n _createVNode(_component_a_button, {\n style: {\"float\":\"right\",\"margin-top\":\"3px\",\"margin-right\":\"5px\",\"padding\":\"0px 20px\"},\n type: \"primary\",\n onClick: _ctx.preStep\n }, {\n default: _withCtx(() => [\n _hoisted_31\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_32, [\n (!_ctx.isDocument)\n ? (_openBlock(), _createBlock(_component_Submit, {\n key: 0,\n onPrePage: _ctx.cutTabs,\n ref: \"SubmitDom\"\n }, null, 8, [\"onPrePage\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.isDocument)\n ? (_openBlock(), _createBlock(_component_DocumentSubmit, {\n key: 1,\n onPrePage: _ctx.cutTabs,\n ref: \"DocumentSubmitDom\"\n }, null, 8, [\"onPrePage\"]))\n : _createCommentVNode(\"\", true)\n ]))\n ])\n ], 64))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, createTextVNode as _createTextVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/copy-icon.svg'\nimport _imports_1 from '@/assets/images/date-icon.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-3f9e3854\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sub-content-dealer\" }\nconst _hoisted_2 = { class: \"condition-dealer\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"item-name\" }, \"车架号\", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"item-name\" }, \"车型名称\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"item-name\" }, \"零售日期\", -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", { src: _imports_1 }, null, -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"item-name\" }, \"批售日期\", -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", { src: _imports_1 }, null, -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"item-name\" }, \" \", -1))\nconst _hoisted_10 = /*#__PURE__*/_createTextVNode(\"前往二手车文件\")\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"item-name\" }, \" \", -1))\nconst _hoisted_12 = /*#__PURE__*/_createTextVNode(\"导出车辆明细\")\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"item-name\" }, \" \", -1))\nconst _hoisted_14 = /*#__PURE__*/_createTextVNode(\"重置\")\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"item-name\" }, \" \", -1))\nconst _hoisted_16 = /*#__PURE__*/_createTextVNode(\"查询\")\nconst _hoisted_17 = {\n key: 0,\n class: \"various-button\",\n style: {\"float\":\"right\",\"padding-right\":\"5px\"}\n}\nconst _hoisted_18 = /*#__PURE__*/_createTextVNode(\"批量上传文档\")\nconst _hoisted_19 = {\n key: 1,\n style: {\"float\":\"left\",\"padding-left\":\"5px\",\"height\":\"40px\",\"line-height\":\"40px\"}\n}\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { style: {\"color\":\"#333333\",\"font-size\":\"12px\"} }, \"文档样例查看:\", -1))\nconst _hoisted_21 = [\"onClick\"]\nconst _hoisted_22 = {\n key: 2,\n style: {\"cursor\":\"no-drop\"}\n}\nconst _hoisted_23 = {\n key: 2,\n style: {\"margin-right\":\"15px\"}\n}\nconst _hoisted_24 = /*#__PURE__*/_createTextVNode(\"下载扩展信息模板\")\nconst _hoisted_25 = /*#__PURE__*/_createTextVNode(\"批量上传扩展信息\")\nconst _hoisted_26 = { class: \"step-table-dealer clearfix\" }\nconst _hoisted_27 = { style: {\"width\":\"600px\",\"margin\":\"10px auto\"} }\nconst _hoisted_28 = {\n class: \"table clearfix\",\n style: {\"height\":\"calc(100% - 50px)\",\"clear\":\"both\"}\n}\nconst _hoisted_29 = /*#__PURE__*/_createTextVNode(\"操作\")\nconst _hoisted_30 = { key: 0 }\nconst _hoisted_31 = [\"onClick\"]\nconst _hoisted_32 = /*#__PURE__*/_createTextVNode(\"   \")\nconst _hoisted_33 = /*#__PURE__*/_createTextVNode(\" 上传文档\")\nconst _hoisted_34 = [\"onClick\"]\nconst _hoisted_35 = [\"onClick\"]\nconst _hoisted_36 = { style: {\"position\":\"absolute\",\"width\":\"calc(100% - 8px)\",\"background\":\"white\",\"height\":\"39px\",\"bottom\":\"0px\",\"border-top\":\"1px solid #d3d3d3\"} }\nconst _hoisted_37 = { style: {\"line-height\":\"39px\"} }\nconst _hoisted_38 = /*#__PURE__*/_createTextVNode(\" 上一步 \")\nconst _hoisted_39 = /*#__PURE__*/_createTextVNode(\"关闭\")\nconst _hoisted_40 = { class: \"batch-query-title\" }\nconst _hoisted_41 = { style: {\"padding\":\"0 8px\"} }\nconst _hoisted_42 = { class: \"list-title\" }\nconst _hoisted_43 = { class: \"list-content\" }\nconst _hoisted_44 = /*#__PURE__*/_createTextVNode(\"清除\")\nconst _hoisted_45 = /*#__PURE__*/_createTextVNode(\"确定\")\nconst _hoisted_46 = /*#__PURE__*/_createTextVNode(\" 错误信息 \")\nconst _hoisted_47 = { class: \"table\" }\nconst _hoisted_48 = /*#__PURE__*/_createTextVNode(\"导出\")\nconst _hoisted_49 = /*#__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_space = _resolveComponent(\"a-space\")!\n const _component_a_range_picker = _resolveComponent(\"a-range-picker\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_divider = _resolveComponent(\"a-divider\")!\n const _component_a_step = _resolveComponent(\"a-step\")!\n const _component_a_steps = _resolveComponent(\"a-steps\")!\n const _component_ExclamationCircleOutlined = _resolveComponent(\"ExclamationCircleOutlined\")!\n const _component_a_popover = _resolveComponent(\"a-popover\")!\n const _component_a_checkbox = _resolveComponent(\"a-checkbox\")!\n const _component_a_table = _resolveComponent(\"a-table\")!\n const _component_SingleInformation = _resolveComponent(\"SingleInformation\")!\n const _component_UploadInformation = _resolveComponent(\"UploadInformation\")!\n const _component_SupportExample = _resolveComponent(\"SupportExample\")!\n const _component_UploadSupport = _resolveComponent(\"UploadSupport\")!\n const _component_a_modal = _resolveComponent(\"a-modal\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_a_space, {\n size: 4,\n direction: \"vertical\",\n style: {\"margin-right\":\"15px\",\"margin-left\":\"15px\",\"width\":\"220px\"}\n }, {\n default: _withCtx(() => [\n _hoisted_3,\n _createElementVNode(\"div\", null, [\n _createVNode(_component_a_input, {\n style: {\"width\":\"170px\"},\n value: _ctx.screeningConditions.vinNo,\n \"onUpdate:value\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.screeningConditions.vinNo) = $event)),\n placeholder: \"请输入...\"\n }, null, 8, [\"value\"]),\n _createElementVNode(\"img\", {\n src: _imports_0,\n style: {\"margin\":\"0 8px 0 8px\",\"cursor\":\"pointer\"},\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.batchQueryEvent('vinNo')))\n })\n ])\n ]),\n _: 1\n }),\n _createVNode(_component_a_space, {\n size: 4,\n direction: \"vertical\",\n style: {\"margin-right\":\"15px\",\"width\":\"220px\"}\n }, {\n default: _withCtx(() => [\n _hoisted_4,\n _createVNode(_component_a_input, {\n allowClear: \"\",\n value: _ctx.screeningConditions.modelName,\n \"onUpdate:value\": _cache[2] || (_cache[2] = ($event: any) => ((_ctx.screeningConditions.modelName) = $event)),\n placeholder: \"请输入...\"\n }, null, 8, [\"value\"])\n ]),\n _: 1\n }),\n _createVNode(_component_a_space, {\n size: 4,\n direction: \"vertical\",\n style: {\"margin-right\":\"15px\",\"width\":\"220px\"}\n }, {\n default: _withCtx(() => [\n _hoisted_5,\n _createVNode(_component_a_range_picker, {\n \"disabled-date\": _ctx.disabledRetailDate,\n placeholder: ['开始时间', '结束时间'],\n valueFormat: \"YYYY-MM-DD\",\n format: \"YYYY/MM/DD\",\n value: _ctx.screeningConditions.retailDate,\n \"onUpdate:value\": _cache[3] || (_cache[3] = ($event: any) => ((_ctx.screeningConditions.retailDate) = $event))\n }, {\n suffixIcon: _withCtx(() => [\n _hoisted_6\n ]),\n _: 1\n }, 8, [\"disabled-date\", \"value\"])\n ]),\n _: 1\n }),\n _createVNode(_component_a_space, {\n size: 4,\n direction: \"vertical\",\n style: {\"margin-right\":\"15px\",\"width\":\"220px\"}\n }, {\n default: _withCtx(() => [\n _hoisted_7,\n _createVNode(_component_a_range_picker, {\n \"disabled-date\": _ctx.disabledWholelDate,\n placeholder: ['开始时间', '结束时间'],\n valueFormat: \"YYYY-MM-DD\",\n format: \"YYYY/MM/DD\",\n value: _ctx.screeningConditions.saleDate,\n \"onUpdate:value\": _cache[4] || (_cache[4] = ($event: any) => ((_ctx.screeningConditions.saleDate) = $event))\n }, {\n suffixIcon: _withCtx(() => [\n _hoisted_8\n ]),\n _: 1\n }, 8, [\"disabled-date\", \"value\"])\n ]),\n _: 1\n }),\n (_ctx.isCPO)\n ? (_openBlock(), _createBlock(_component_a_space, {\n key: 0,\n size: 4,\n direction: \"vertical\",\n class: \"right-button\"\n }, {\n default: _withCtx(() => [\n _hoisted_9,\n _createVNode(_component_a_button, { onClick: _ctx.jumpToUploadUsedCarPage }, {\n default: _withCtx(() => [\n _hoisted_10\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_a_space, {\n size: 4,\n direction: \"vertical\",\n class: \"right-button\"\n }, {\n default: _withCtx(() => [\n _hoisted_11,\n _createVNode(_component_a_button, { onClick: _ctx.exportTable }, {\n default: _withCtx(() => [\n _hoisted_12\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n }),\n _createVNode(_component_a_space, {\n size: 4,\n direction: \"vertical\",\n class: \"right-button\"\n }, {\n default: _withCtx(() => [\n _hoisted_13,\n _createVNode(_component_a_button, { onClick: _ctx.clearScreeningConditions }, {\n default: _withCtx(() => [\n _hoisted_14\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n }),\n _createVNode(_component_a_space, {\n size: 4,\n direction: \"vertical\",\n class: \"right-button\"\n }, {\n default: _withCtx(() => [\n _hoisted_15,\n _createVNode(_component_a_button, {\n onClick: _ctx.getTableData,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_16\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n })\n ]),\n _createElementVNode(\"div\", {\n style: {\"margin-top\":\"8px\"},\n class: _normalizeClass([\n _ctx.stepNum === 3\n ? 'step-num-div3'\n : _ctx.stepNum === 1\n ? 'step-num-div1'\n : 'step-num-div2',\n ])\n }, [\n (_ctx.stepNum === 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createVNode(_component_a_space, { size: 15 }, {\n default: _withCtx(() => [\n _createVNode(_component_a_button, {\n style: {\"font-size\":\"12px\"},\n onClick: _ctx.showUploadSupportDrawer,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_18\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n })\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.stepNum === 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n _hoisted_20,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.supportSample, (item, index) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n key: item.docId\n }, [\n (index !== 0)\n ? (_openBlock(), _createBlock(_component_a_divider, {\n key: 0,\n type: \"vertical\"\n }))\n : _createCommentVNode(\"\", true),\n (item.filePath !== null && item.filePath.length > 0)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n onClick: ($event: any) => (_ctx.showExample(item)),\n style: {\"color\":\"#00adef\",\"cursor\":\"pointer\",\"font-size\":\"12px\"}\n }, _toDisplayString(item.docName), 9, _hoisted_21))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_22, _toDisplayString(item.docName), 1))\n ]))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.stepNum === 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_23, [\n _createVNode(_component_a_space, { size: 15 }, {\n default: _withCtx(() => [\n _createVNode(_component_a_button, {\n style: {\"font-size\":\"12px\"},\n onClick: _ctx.downloadExtendInfo\n }, {\n default: _withCtx(() => [\n _hoisted_24\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_a_button, {\n style: {\"font-size\":\"12px\"},\n onClick: _ctx.showUploadDrawer,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_25\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n })\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"div\", _hoisted_27, [\n _createVNode(_component_a_steps, { current: _ctx.currentStep }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.stepArray, (item, index) => {\n return (_openBlock(), _createBlock(_component_a_step, {\n title: item,\n key: index\n }, null, 8, [\"title\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"current\"])\n ]),\n _createElementVNode(\"div\", _hoisted_28, [\n _createVNode(_component_a_table, {\n dataSource: _ctx.dataSource,\n pagination: false,\n scroll: { x: 1400, y: _ctx.tableHeight },\n columns: _ctx.columns,\n rowKey: (record) => record.id + record.vinNo,\n class: \"ant-table-striped\",\n rowClassName: \n (record, index) => (index % 2 === 1 ? 'table-striped' : null)\n \n }, {\n vinNo: _withCtx(({record}) => [\n _createElementVNode(\"p\", null, [\n _createElementVNode(\"span\", null, _toDisplayString(record.vinNo), 1),\n (record.wholesaleSellerName)\n ? (_openBlock(), _createBlock(_component_a_popover, {\n key: 0,\n placement: \"topLeft\",\n content: `该车辆为他店批售,付款对象会变更为:${record.wholesaleSellerName}`\n }, {\n default: _withCtx(() => [\n _createVNode(_component_ExclamationCircleOutlined, { style: {\"color\":\"red\",\"margin-left\":\"10px\"} })\n ]),\n _: 2\n }, 1032, [\"content\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n customTitle: _withCtx(() => [\n _createElementVNode(\"div\", {\n style: {\"height\":\"26px\",\"padding-top\":\"3px\"},\n onClick: _cache[6] || (_cache[6] = \n//@ts-ignore\n(...args) => (_ctx.onCheckAllChange && _ctx.onCheckAllChange(...args)))\n }, [\n _createVNode(_component_a_checkbox, {\n checked: _ctx.checkAll,\n \"onUpdate:checked\": _cache[5] || (_cache[5] = ($event: any) => ((_ctx.checkAll) = $event)),\n indeterminate: _ctx.indeterminate\n }, {\n default: _withCtx(() => [\n _hoisted_29\n ]),\n _: 1\n }, 8, [\"checked\", \"indeterminate\"])\n ])\n ]),\n checkStatus: _withCtx(({ record }) => [\n (\n record.checkStatus === '已申报' ||\n record.checkStatus === '提交成功'\n )\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_30, _toDisplayString(record.checkStatus), 1))\n : (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n onClick: ($event: any) => (_ctx.showCheckStatus(record)),\n style: {\"color\":\"#e1292b\",\"cursor\":\"pointer\"}\n }, _toDisplayString(record.checkStatus), 9, _hoisted_31))\n ]),\n wholesaleSellerCofico: _withCtx(({ record }) => [\n _createTextVNode(_toDisplayString(record.wholesaleSellerCofico ?? '本店'), 1)\n ]),\n operation: _withCtx(({ record }) => [\n (record.checkStatus.length <= 0)\n ? (_openBlock(), _createBlock(_component_a_checkbox, {\n key: 0,\n checked: record.check,\n \"onUpdate:checked\": ($event: any) => ((record.check) = $event),\n onChange: ($event: any) => (_ctx.checkChange(record))\n }, null, 8, [\"checked\", \"onUpdate:checked\", \"onChange\"]))\n : _createCommentVNode(\"\", true),\n _hoisted_32,\n (\n record.checkStatus.length <= 0 &&\n _ctx.supportActive &&\n _ctx.supportActiveTitle\n )\n ? (_openBlock(), _createBlock(_component_a_button, {\n key: 1,\n onClick: ($event: any) => (_ctx.uploadSingleSupport(record, 0, false)),\n type: \"link\"\n }, {\n default: _withCtx(() => [\n _hoisted_33\n ]),\n _: 2\n }, 1032, [\"onClick\"]))\n : _createCommentVNode(\"\", true)\n ]),\n supportDocVOS: _withCtx(({ record }) => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(record.supportDocVOS, (item, index) => {\n return (_openBlock(), _createElementBlock(\"span\", { key: index }, [\n (index !== 0 && item.supportDocName.length > 0)\n ? (_openBlock(), _createBlock(_component_a_divider, {\n key: 0,\n type: \"vertical\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"span\", {\n onClick: ($event: any) => (_ctx.showSupportPic(record, index)),\n class: _normalizeClass([\n _ctx.supportActive &&\n item.supportDocFilePath != null &&\n item.supportDocFilePath.length > 0\n ? 'activesupport'\n : 'notsupport',\n ])\n }, _toDisplayString(item.supportDocName), 11, _hoisted_34)\n ]))\n }), 128))\n ]),\n extendedInfoTitle: _withCtx(() => [\n _createElementVNode(\"span\", {\n class: _normalizeClass({\n extendactive: _ctx.extendActive && _ctx.extendActiveTitle,\n })\n }, \"扩展信息\", 2)\n ]),\n supportDocVOSTitle: _withCtx(() => [\n _createElementVNode(\"span\", {\n class: _normalizeClass({\n activesupport: _ctx.supportActive && _ctx.supportActiveTitle,\n })\n }, _toDisplayString(_ctx.categoryName), 3)\n ]),\n extendedInfo: _withCtx(({ record }) => [\n _createElementVNode(\"span\", {\n onClick: ($event: any) => (_ctx.showFill(record)),\n class: _normalizeClass({\n extendactive: _ctx.extendActive,\n extendinactive: !_ctx.extendActive,\n })\n }, _toDisplayString(record.extendedInfo === \"1\"\n ? \"查看\"\n : record.extendedInfo === \"0\"\n ? \"编辑\"\n : \"\"), 11, _hoisted_35)\n ]),\n _: 1\n }, 8, [\"dataSource\", \"scroll\", \"columns\", \"rowKey\", \"rowClassName\"])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_36, [\n _createElementVNode(\"span\", _hoisted_37, \"当前显示数据总数:\" + _toDisplayString(_ctx.dataCount), 1),\n _createVNode(_component_a_button, {\n style: {\"float\":\"right\",\"margin-top\":\"3px\",\"margin-right\":\"5px\",\"padding\":\"0px 20px\"},\n type: \"primary\",\n onClick: _ctx.nextStep\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1)\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_a_button, {\n style: {\"float\":\"right\",\"margin-top\":\"3px\",\"margin-right\":\"5px\",\"padding\":\"0px 20px\"},\n type: \"primary\",\n onClick: _ctx.preStep\n }, {\n default: _withCtx(() => [\n _hoisted_38\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _createVNode(_component_SingleInformation, {\n onFreshTable: _ctx.getTableData,\n ref: \"extendInfoDom\"\n }, null, 8, [\"onFreshTable\"]),\n _createVNode(_component_UploadInformation, {\n onFreshTable: _ctx.getTableData,\n ref: \"uploadInfoDom\"\n }, null, 8, [\"onFreshTable\"]),\n _createVNode(_component_SupportExample, { ref: \"supportExample\" }, null, 512),\n _createVNode(_component_UploadSupport, {\n onFreshTable: _ctx.getTableData,\n ref: \"uploadSupportDom\"\n }, null, 8, [\"onFreshTable\"]),\n _createVNode(_component_a_modal, {\n width: \"750px\",\n visible: _ctx.modalVisible,\n \"onUpdate:visible\": _cache[8] || (_cache[8] = ($event: any) => ((_ctx.modalVisible) = $event))\n }, {\n title: _withCtx(() => [\n _createVNode(_component_ExclamationCircleOutlined, { style: {\"color\":\"rgb(250, 173, 20)\"} }),\n _createTextVNode(\"   \" + _toDisplayString(_ctx.modalTitle), 1)\n ]),\n footer: _withCtx(() => [\n _createVNode(_component_a_button, {\n key: \"submit\",\n onClick: _cache[7] || (_cache[7] = ($event: any) => (_ctx.modalVisible = false)),\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_39\n ]),\n _: 1\n })\n ]),\n default: _withCtx(() => [\n _createVNode(_component_a_table, {\n rowKey: (record) => record.programeCode,\n pagination: false,\n dataSource: _ctx.modalDataSource,\n columns: _ctx.modalColumns\n }, null, 8, [\"rowKey\", \"dataSource\", \"columns\"])\n ]),\n _: 1\n }, 8, [\"visible\"]),\n _createVNode(_component_a_modal, {\n visible: _ctx.batchQueryModal,\n \"onUpdate:visible\": _cache[11] || (_cache[11] = ($event: any) => ((_ctx.batchQueryModal) = $event)),\n width: 420,\n onCancel: _ctx.closeBatchQueryModal,\n class: \"batch-query-modal\",\n centered: \"\"\n }, {\n title: _withCtx(() => [\n _createElementVNode(\"strong\", _hoisted_40, _toDisplayString(_ctx.batchQueryTitle), 1)\n ]),\n footer: _withCtx(() => [\n _createVNode(_component_a_button, {\n size: \"small\",\n onClick: _ctx.clearBatchQuery\n }, {\n default: _withCtx(() => [\n _hoisted_44\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_a_button, {\n size: \"small\",\n type: \"primary\",\n onClick: _cache[10] || (_cache[10] = ($event: any) => {\n _ctx.batchQueryModal = false;\n _ctx.closeBatchQueryModal();\n })\n }, {\n default: _withCtx(() => [\n _hoisted_45\n ]),\n _: 1\n })\n ]),\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_41, [\n _createElementVNode(\"article\", null, [\n _createElementVNode(\"section\", _hoisted_42, _toDisplayString(_ctx.batchQueryListTitle), 1),\n _createElementVNode(\"section\", _hoisted_43, [\n (_ctx.textNoArray.length > 0)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(_ctx.textNoArray, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"list-item\",\n key: index\n }, _toDisplayString(item), 1))\n }), 128))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_a_input, {\n ref: \"input\",\n value: _ctx.textContentNo,\n \"onUpdate:value\": _cache[9] || (_cache[9] = ($event: any) => ((_ctx.textContentNo) = $event)),\n onChange: _ctx.textChangEvent,\n style: {\"height\":\"24px\"}\n }, null, 8, [\"value\", \"onChange\"]),\n (_ctx.batchPlaceholder.length > 0)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 1 }, _renderList(_ctx.batchPlaceholder, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: index,\n class: \"list-item\",\n style: {\"height\":\"24px\",\"margin-top\":\"8px\"}\n }))\n }), 128))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])\n ]),\n _: 1\n }, 8, [\"visible\", \"onCancel\"]),\n _createVNode(_component_a_modal, {\n visible: _ctx.errorModalVisible,\n \"onUpdate:visible\": _cache[13] || (_cache[13] = ($event: any) => ((_ctx.errorModalVisible) = $event))\n }, {\n title: _withCtx(() => [\n _createVNode(_component_ExclamationCircleOutlined, { style: {\"color\":\"#faad14\"} }),\n _hoisted_46\n ]),\n footer: _withCtx(() => [\n _createVNode(_component_a_button, {\n size: \"small\",\n onClick: _ctx.exportError\n }, {\n default: _withCtx(() => [\n _hoisted_48\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_a_button, {\n size: \"small\",\n type: \"primary\",\n onClick: _cache[12] || (_cache[12] = ($event: any) => (_ctx.errorModalVisible = false))\n }, {\n default: _withCtx(() => [\n _hoisted_49\n ]),\n _: 1\n })\n ]),\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_47, [\n _createVNode(_component_a_table, {\n scroll: { y: 400 },\n pagination: false,\n dataSource: _ctx.errorDataSource,\n columns: _ctx.errorColumns\n }, null, 8, [\"dataSource\", \"columns\"])\n ])\n ]),\n _: 1\n }, 8, [\"visible\"])\n ], 64))\n}","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, withCtx as _withCtx, vShow as _vShow, withDirectives as _withDirectives, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-cd11fc24\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"require\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"color\":\"red\"} }, \"*\"),\n /*#__PURE__*/_createTextVNode(\"为必填项\")\n], -1))\nconst _hoisted_2 = { style: {\"padding\":\"10 20px\",\"padding-top\":\"5px\",\"box-sizing\":\"border-box\"} }\nconst _hoisted_3 = { style: {\n position: 'absolute',\n right: 0,\n bottom: 0,\n width: '100%',\n borderTop: '1px solid #e9e9e9',\n padding: '10px 16px',\n background: '#fff',\n textAlign: 'right',\n zIndex: 1\n } }\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_date_picker = _resolveComponent(\"a-date-picker\")!\n const _component_a_select_option = _resolveComponent(\"a-select-option\")!\n const _component_a_select = _resolveComponent(\"a-select\")!\n const _component_a_form_item = _resolveComponent(\"a-form-item\")!\n const _component_a_form = _resolveComponent(\"a-form\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n\n return (_openBlock(), _createBlock(_component_a_drawer, {\n title: \"填写扩展信息\",\n placement: \"right\",\n closable: true,\n width: \"35%\",\n visible: _ctx.visible,\n \"after-visible-change\": _ctx.afterVisibleChange,\n \"body-style\": { paddingBottom: '80px' },\n onClose: _ctx.closeThisDrawer,\n getContainer: _ctx.spinWrapper\n }, {\n default: _withCtx(() => [\n _hoisted_1,\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_a_form, { layout: \"vertical\" }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.data, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", { key: index }, [\n _createVNode(_component_a_form_item, {\n required: item.isMandatory,\n label: item.fieldNameCn\n }, {\n default: _withCtx(() => [\n (item.fieldType === 'Text')\n ? (_openBlock(), _createBlock(_component_a_input, {\n key: 0,\n value: item.content,\n \"onUpdate:value\": ($event: any) => ((item.content) = $event),\n placeholder: \"请输入文字\",\n onBlur: ($event: any) => (_ctx.checkExtend(item))\n }, null, 8, [\"value\", \"onUpdate:value\", \"onBlur\"]))\n : _createCommentVNode(\"\", true),\n (item.fieldType === 'Number')\n ? (_openBlock(), _createBlock(_component_a_input, {\n key: 1,\n onKeydown: _ctx.handleInput,\n value: item.content,\n \"onUpdate:value\": ($event: any) => ((item.content) = $event),\n placeholder: \"请输入数字\",\n onBlur: ($event: any) => (_ctx.checkExtend(item))\n }, null, 8, [\"onKeydown\", \"value\", \"onUpdate:value\", \"onBlur\"]))\n : _createCommentVNode(\"\", true),\n (item.fieldType === 'Date')\n ? (_openBlock(), _createBlock(_component_a_date_picker, {\n key: 2,\n value: item.content,\n \"onUpdate:value\": ($event: any) => ((item.content) = $event),\n placeholder: \"请选择时间\",\n valueFormat: \"YYYY-MM-DD\",\n format: \"YYYY-MM-DD\",\n style: {\"width\":\"100%\"},\n onChange: ($event: any) => (_ctx.checkExtend(item))\n }, null, 8, [\"value\", \"onUpdate:value\", \"onChange\"]))\n : _createCommentVNode(\"\", true),\n (item.fieldType === 'Enumeration')\n ? (_openBlock(), _createBlock(_component_a_select, {\n key: 3,\n value: item.content,\n \"onUpdate:value\": ($event: any) => ((item.content) = $event),\n placeholder: \"请选择\",\n onBlur: ($event: any) => (_ctx.checkExtend(item))\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(item.enumValueList, (selectItem) => {\n return (_openBlock(), _createBlock(_component_a_select_option, {\n value: selectItem,\n key: selectItem\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(selectItem), 1)\n ]),\n _: 2\n }, 1032, [\"value\"]))\n }), 128))\n ]),\n _: 2\n }, 1032, [\"value\", \"onUpdate:value\", \"onBlur\"]))\n : _createCommentVNode(\"\", true),\n _withDirectives(_createElementVNode(\"span\", { style: {\"color\":\"red\",\"font-size\":\"10px\"} }, _toDisplayString(item.errorMessage), 513), [\n [_vShow, item.error]\n ])\n ]),\n _: 2\n }, 1032, [\"required\", \"label\"])\n ]))\n }), 128))\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(_component_a_button, {\n onClick: _ctx.onSave,\n disabled: _ctx.isShow,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_4\n ]),\n _: 1\n }, 8, [\"onClick\", \"disabled\"])\n ])\n ])\n ]),\n _: 1\n }, 8, [\"visible\", \"after-visible-change\", \"onClose\", \"getContainer\"]))\n}","\nimport { defineComponent, ref, onMounted } from 'vue';\nimport { extendEdit, saveInfoExtend, getExtendInfo } from '@/API/claim/delaerClaim/delaer';\nimport { message } from 'ant-design-vue';\nexport default defineComponent({\n //\n emits: ['close-drawer', 'fresh-table'],\n\n setup(props, ctx) {\n const afterVisibleChange = (bool: boolean) => {\n console.log('visible', bool);\n };\n\n const groupID = ref('');\n const progDesignOfferTypeId = ref('');\n const vinNo = ref('');\n const dealerCode = ref('');\n\n const isShow = ref(false);\n\n //是否显示\n const visible = ref(false);\n\n interface ExtendInfoType {\n content: string;\n defaultValue: string;\n enumValue: string;\n fieldNameCn: string;\n fieldNameEn: string;\n fieldType: string;\n id: string;\n isMandatory: boolean;\n maxValue: number | string;\n minValue: number | string;\n paraExtendInfoId: string;\n progDesignId: string;\n progDesignOfferTypeId: string;\n progDesignOfferTypeName: string;\n vinNo: string;\n enumValueList?: string[];\n error: boolean; //是否输入错误,进行判断\n errorMessage: string; //错误信息显示的内容\n }\n\n const data = ref([]);\n\n //限制只能输入数字和小数点和符号3\n const handleInput = (e: any) => {\n const a = e.key.replace(/[^\\d.-]/g, '');\n if (!a && e.keyCode !== 8) {\n e.preventDefault();\n }\n };\n\n interface OneItem {\n claimParaExtendInfoId: string;\n content: string;\n id: string;\n }\n\n interface ExpandInfo {\n dealerCode: string;\n progDesignId: string;\n progDesignOfferTypeId: string;\n vinNo: string;\n dealerExtendInfoLst: OneItem[];\n }\n\n const checkExtend = (item: ExtendInfoType) => {\n item.error = false;\n\n if (item.fieldType === 'Text') {\n if (item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n item.error = true;\n item.errorMessage = '必填项请填写';\n return false;\n }\n if (!item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n return true;\n }\n\n if (item.maxValue !== null && item.maxValue !== '') {\n if (item.content.length > item.maxValue) {\n item.error = true;\n item.errorMessage = `文档长度最大为${item.maxValue}`;\n return false;\n }\n }\n if (item.minValue !== null && item.minValue !== '') {\n if (item.content.length < item.minValue) {\n item.error = true;\n item.errorMessage = `文档长度最小为${item.minValue}`;\n return false;\n }\n }\n\n // if (item.content.length>item.maxValue || item.content.lengthitem.maxValue || item.content.length item.maxValue) {\n item.error = true;\n item.errorMessage = `数值最大为${item.maxValue}`;\n return false;\n }\n }\n if (item.minValue !== null && item.minValue !== '') {\n if (parseInt(item.content) < item.minValue) {\n item.error = true;\n item.errorMessage = `数值最小为${item.minValue}`;\n return false;\n }\n }\n }\n\n if (item.fieldType === 'Enumeration') {\n if (item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n item.error = true;\n item.errorMessage = '必填项请选择';\n return false;\n }\n if (!item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n return true;\n }\n }\n\n if (item.fieldType === 'Date') {\n if (item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n item.error = true;\n item.errorMessage = '必填项请选择';\n return false;\n }\n if (!item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n return true;\n }\n const value = Date.parse(item.content);\n // if (value >= Date.parse(item.maxValue as string) ||value <= Date.parse(item.minValue as string)){\n // item.error = true;\n // item.errorMessage = `日期大小应在${item.minValue}-${item.maxValue}之间`\n // return false;\n // }\n const maxValue = (item.maxValue as string).replaceAll('/', '-');\n const minValue = (item.minValue as string).replaceAll('/', '-');\n if (item.maxValue !== null) {\n if (value > Date.parse(maxValue as string)) {\n item.error = true;\n item.errorMessage = `日期最大为${maxValue}`;\n return false;\n }\n\n if (value < Date.parse(minValue as string)) {\n item.error = true;\n item.errorMessage = `日期最小为${minValue}`;\n return false;\n }\n }\n }\n\n return true;\n };\n\n let timeout: any;\n //保存事件\n const onSave = () => {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n const saveInfo = () => {\n const param: ExpandInfo = {\n progDesignId: groupID.value,\n progDesignOfferTypeId: progDesignOfferTypeId.value,\n vinNo: vinNo.value,\n dealerExtendInfoLst: [],\n dealerCode: dealerCode.value\n };\n\n let count = 0;\n for (let i = 0; i < data.value.length; i++) {\n const item = data.value[i];\n const sign = checkExtend(item);\n if (!sign) {\n count++;\n }\n }\n\n if (count > 0) {\n message.error('填写扩展信息错误,请修改后保存');\n return;\n }\n\n data.value.forEach((element) => {\n const one = {\n claimParaExtendInfoId: element.paraExtendInfoId,\n content: element.content,\n id: element.id,\n dealerCode: dealerCode.value\n };\n param.dealerExtendInfoLst.push(one);\n });\n\n saveInfoExtend(param).then((res: any): void => {\n if (res.code === '0') {\n message.success('数据保存成功');\n visible.value = false;\n ctx.emit('fresh-table');\n } else {\n message.error(res.data[0]);\n }\n });\n };\n\n timeout = setTimeout(saveInfo, 1000);\n };\n\n //关闭抽屉事件\n const closeThisDrawer = () => {\n // ctx.emit('close-drawer','isShowSingleInformation');\n visible.value = false;\n // on-colse\n };\n //编辑填写扩展信息\n const editExtend = (propid: string, item: any, offerTypeId: string, showButton: boolean, dealerCodeA: string) => {\n groupID.value = propid;\n progDesignOfferTypeId.value = offerTypeId;\n vinNo.value = item.vinNo;\n dealerCode.value = dealerCodeA;\n isShow.value = showButton;\n\n if (item.extendedInfo === '1') {\n console.log('查看');\n\n const param = {\n prodId: groupID.value,\n offerTypeId: progDesignOfferTypeId.value,\n vinNo: vinNo.value,\n dealerCode: dealerCode.value\n };\n getExtendInfo(param).then((res: any): void => {\n console.log(res);\n const tdata = res;\n\n for (let i = 0; i < tdata.length; i++) {\n if (tdata[i].fieldType === 'Enumeration') {\n tdata[i].enumValueList = tdata[i].enumValue.split(',');\n }\n }\n data.value = tdata;\n visible.value = true;\n });\n } else {\n console.log('编辑');\n\n extendEdit({ prodId: propid }).then((res: any): void => {\n console.log(res);\n const tdata = res;\n\n for (let i = 0; i < tdata.length; i++) {\n if (tdata[i].fieldType === 'Enumeration') {\n tdata[i].enumValueList = tdata[i].enumValue.split(',');\n }\n tdata[i].content = '';\n }\n data.value = tdata;\n visible.value = true;\n });\n }\n };\n\n const spinWrapper = document.querySelector('.spingWrapper .ant-spin-container');\n\n return {\n isShow,\n visible,\n editExtend,\n closeThisDrawer,\n data,\n onSave,\n afterVisibleChange,\n handleInput,\n checkExtend,\n spinWrapper\n };\n }\n});\n//.ant-form-item\n","import { render } from \"./SingleInformation.vue?vue&type=template&id=cd11fc24&scoped=true&ts=true\"\nimport script from \"./SingleInformation.vue?vue&type=script&lang=ts\"\nexport * from \"./SingleInformation.vue?vue&type=script&lang=ts\"\n\nimport \"./SingleInformation.vue?vue&type=style&index=0&id=cd11fc24&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-cd11fc24\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/rv/upload.svg'\nimport _imports_1 from '@/assets/images/claim/upload.svg'\nimport _imports_2 from '@/assets/images/rv/complete.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7a254d37\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"uploadCon\" }\nconst _hoisted_2 = { class: \"invoiceUploadCon\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"uploadH\"\n}\nconst _hoisted_4 = /*#__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_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { class: \"ant-upload-text\" }, [\n /*#__PURE__*/_createTextVNode(\" 拖拽文件到此处或\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"blueFont\" }, \"点击浏览文件\")\n], -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"uploadH uploadProgressCon\"\n}\nconst _hoisted_7 = { class: \"progressCon\" }\nconst _hoisted_8 = { class: \"progressFlexCon\" }\nconst _hoisted_9 = { class: \"totalProgressCon\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_1,\n alt: \"\",\n class: \"batchIcon\"\n}, null, -1))\nconst _hoisted_11 = { class: \"progressShow\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"progressTit\" }, \"文件上传\", -1))\nconst _hoisted_13 = { class: \"filePro uploadPro\" }\nconst _hoisted_14 = {\n key: 0,\n class: \"completeCon\"\n}\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_2,\n class: \"completeIcon\"\n}, null, -1))\nconst _hoisted_16 = /*#__PURE__*/_createTextVNode(\" 100%完成 \")\nconst _hoisted_17 = [\n _hoisted_15,\n _hoisted_16\n]\nconst _hoisted_18 = { class: \"filePro fileSize\" }\nconst _hoisted_19 = {\n key: 0,\n style: {\"margin-top\":\"5px\",\"display\":\"flex\",\"flex-direction\":\"row-reverse\"}\n}\nconst _hoisted_20 = /*#__PURE__*/_createTextVNode(\"继续上传\")\nconst _hoisted_21 = { class: \"resultCon\" }\nconst _hoisted_22 = {\n key: 0,\n class: \"result\"\n}\nconst _hoisted_23 = { style: {\n position: 'absolute',\n right: 0,\n bottom: 0,\n width: '100%',\n borderTop: '1px solid #e9e9e9',\n padding: '10px 16px',\n background: '#fff',\n textAlign: 'right',\n zIndex: 1,\n } }\nconst _hoisted_24 = /*#__PURE__*/_createTextVNode(\"上传\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_a_upload_dragger = _resolveComponent(\"a-upload-dragger\")!\n const _component_a_progress = _resolveComponent(\"a-progress\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_table = _resolveComponent(\"a-table\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n\n return (_openBlock(), _createBlock(_component_a_drawer, {\n title: \"批量上传扩展信息\",\n placement: \"right\",\n closable: true,\n width: \"488px\",\n visible: _ctx.visible,\n \"after-visible-change\": _ctx.afterVisibleChange,\n \"body-style\": { paddingBottom: '40px' },\n onClose: _ctx.closeThisDrawer\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.invoiceUploadComplete)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createVNode(_component_a_upload_dragger, {\n name: \"file\",\n multiple: false,\n listType: \"picture-card\",\n showUploadList: false,\n customRequest: _ctx.invoiceCustomRequest,\n \"before-upload\": _ctx.beforeUpload\n }, {\n default: _withCtx(() => [\n _hoisted_4,\n _hoisted_5\n ]),\n _: 1\n }, 8, [\"customRequest\", \"before-upload\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (!_ctx.invoiceUploadComplete)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"div\", _hoisted_9, [\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, [\n _hoisted_12,\n _createVNode(_component_a_progress, {\n strokeColor: \"#00adef\",\n percent: _ctx.invoicePercent,\n status: _ctx.invoiceProStatus\n }, null, 8, [\"percent\", \"status\"]),\n _createElementVNode(\"div\", _hoisted_13, [\n (_ctx.invoicePercent == 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, _hoisted_17))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_18, _toDisplayString(_ctx.invoiceFileSize), 1)\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.isDone)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n _createVNode(_component_a_button, {\n onClick: _ctx.reUpload,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_20\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_21, [\n (_ctx.dataFault)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createVNode(_component_a_table, {\n rowKey: \n (record, index) => {\n return index.toString() + record.vinNo;\n }\n ,\n scroll: { y: _ctx.tableHeight },\n columns: _ctx.columns,\n pagination: false,\n dataSource: _ctx.dataSource,\n rowClassName: \n (record, index) => (index % 2 === 1 ? 'table-striped' : null)\n \n }, null, 8, [\"rowKey\", \"scroll\", \"columns\", \"dataSource\", \"rowClassName\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_23, [\n _createVNode(_component_a_button, {\n type: \"primary\",\n disabled: _ctx.isSubmit,\n onClick: _ctx.submitFile\n }, {\n default: _withCtx(() => [\n _hoisted_24\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"visible\", \"after-visible-change\", \"onClose\"]))\n}","\nimport { defineComponent, ref } from \"vue\";\nimport { message } from \"ant-design-vue\";\nimport { FileItem } from \"@/API/types\";\nimport {uploadExtendInfoApi} from \"@/API/claim/delaerClaim/delaer\";\nimport { getSourceData } from \"@/API/checking/SICCOCheckingDetail\";\n\nexport default defineComponent({\n // components: {\n // },\n setup(props, ctx) {\n const isDone = ref(false);\n const prodId = ref(\"\");\n const offerTypeId = ref(\"\");\n const dealerCode = ref(\"\");\n const offerTypeKey = ref(\"\");\n const visible = ref(false);\n const tableHeight = window.innerHeight - 450;\n // 文件上传\n const invoiceUploadComplete = ref(true);\n const formData = new FormData();\n const curUploadFile = ref({});\n //文件大小\n const invoiceFileSize = ref(\"\");\n //进度条\n const invoicePercent = ref(0);\n const invoiceProStatus = ref(\"normal\");\n //上传按钮\n const isSubmit = ref(true);\n\n //显示回传信息\n const dataFault = ref(false);\n\n //表格\n const columns = [\n {\n title: \"车架号\",\n dataIndex: \"vinNo\",\n key: \"vinNo\",\n width: 100,\n },\n {\n title: \"提交结果\",\n dataIndex: \"message\",\n key: \"message\",\n width: 100,\n },\n ];\n\n // const dataSource = [\n // {\n // vinNo: \"vinNo\",\n // rtnMessage: \"rtnMessage\",\n // },\n // {\n // vinNo: \"vinNo\",\n // rtnMessage: \"rtnMessage\",\n // },\n // ];\n\n interface Message {\n vinNo: string;\n message: string;\n }\n const dataSource = ref();\n\n const showDrawer = (item: any) => {\n prodId.value = item.prodId;\n offerTypeId.value = item.offerTypeId;\n dealerCode.value = item.dealerCode;\n offerTypeKey.value = item.offerTypeKey;\n visible.value = true;\n };\n\n //关闭抽屉事件\n const closeThisDrawer = () => {\n visible.value = false;\n \n };\n //关闭抽屉后事件\n const afterVisibleChange = () => {\n //aaa\n console.log(\"关闭\");\n if (formData.has(\"file\")) {\n formData.delete(\"file\");\n }\n isDone.value = false;\n invoiceUploadComplete.value = true;\n isSubmit.value = true;\n invoicePercent.value = 0;\n invoiceProStatus.value = \"normal\";\n dataFault.value = false;\n };\n\n // 重写默认上传方法 获取合规的发票图片信息\n const invoiceCustomRequest = (source: any) => {\n if (formData.has(\"file\")) {\n formData.delete(\"file\");\n }\n formData.append(\"file\", source.file);\n curUploadFile.value = source.file;\n invoiceFileSize.value =\n source.file.size / 1024 > 1024\n ? `${(source.file.size / 1024 / 1024).toFixed(1)} MB`\n : `${Math.floor(source.file.size / 1024)} KB`;\n invoiceUploadComplete.value = false;\n };\n\n // 上传前\n const beforeUpload = (file: FileItem) => {\n const isXlsx =\n file.type ===\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\";\n if (!isXlsx) {\n message.error(\"上传文件仅支持xlsx格式\");\n }\n const isLt5M = file.size / 1024 / 1024 < 10;\n if (!isLt5M) {\n message.error(\"文件大小不能超过10M\");\n }\n isSubmit.value = false;\n return isXlsx && isLt5M;\n };\n //上传文件\n const submitFile = () => {\n const params = {\n prodId: prodId.value,\n offerTypeId: offerTypeId.value,\n dealerCode:dealerCode.value,\n offerTypeKey:offerTypeKey.value,\n file: formData,\n };\n console.log(params);\n\n uploadExtendInfoApi(formData,params).then((res: any): void => {\n invoicePercent.value = 100;\n invoiceProStatus.value = \"success\";\n const data = res;\n isDone.value = true;\n if (data.code !== \"0\") {\n dataFault.value = true;\n dataSource.value = data.data;\n } else {\n message.success(\"上传成功\");\n ctx.emit(\"close-drawer\", {\n name: \"isShowUploadInformation\",\n value: false,\n });\n }\n ctx.emit(\"fresh-table\");\n })\n\n // axios({\n // method: \"post\",\n // data: formData,\n // url: \"/claimapi/dealer/extend/uploadExtendInfo\",\n // params: params,\n // }).then((res) => {\n // console.log(res);\n // invoicePercent.value = 100;\n // invoiceProStatus.value = \"success\";\n // const data = res.data;\n // if (data.code !== \"0\") {\n // dataFault.value = true;\n // dataSource.value = data.data;\n // } else {\n // message.success(\"上传成功\");\n // ctx.emit(\"close-drawer\", {\n // name: \"isShowUploadInformation\",\n // value: false,\n // });\n // }\n // ctx.emit(\"fresh-table\");\n // });\n };\n\n const reUpload = ()=>{\n dataSource.value = [];\n dataFault.value = false;\n if (formData.has(\"file\")) {\n formData.delete(\"file\");\n }\n invoiceUploadComplete.value = true;\n isSubmit.value = true;\n invoicePercent.value = 0;\n invoiceProStatus.value = \"normal\";\n dataFault.value = false;\n isDone.value = false;\n }\n\n return {\n reUpload,\n showDrawer,\n tableHeight,\n dataFault,\n dataSource,\n columns,\n isSubmit,\n submitFile,\n invoiceFileSize,\n invoiceCustomRequest,\n curUploadFile,\n invoiceUploadComplete,\n closeThisDrawer,\n afterVisibleChange,\n beforeUpload,\n invoicePercent,\n invoiceProStatus,\n visible,\n isDone\n };\n },\n});\n","import { render } from \"./UploadInformation.vue?vue&type=template&id=7a254d37&scoped=true&ts=true\"\nimport script from \"./UploadInformation.vue?vue&type=script&lang=ts\"\nexport * from \"./UploadInformation.vue?vue&type=script&lang=ts\"\n\nimport \"./UploadInformation.vue?vue&type=style&index=0&id=7a254d37&lang=scss&scoped=true\"\nimport \"./UploadInformation.vue?vue&type=style&index=1&id=7a254d37&lang=scss\"\n\nimport exportComponent from \"/app/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7a254d37\"]])\n\nexport default __exports__","import { normalizeStyle as _normalizeStyle, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/rv/rect.png'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ab027ad8\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { style: {\"width\":\"100%\"} }\nconst _hoisted_2 = [\"src\"]\nconst _hoisted_3 = { class: \"resultCon\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"top\" }, [\n /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_0,\n class: \"rect\"\n }),\n /*#__PURE__*/_createElementVNode(\"strong\", { style: {\"margin-left\":\"4px\"} }, \"上传样例描述\")\n], -1))\nconst _hoisted_5 = { style: {\n position: 'absolute',\n right: 0,\n bottom: 0,\n width: '100%',\n borderTop: '1px solid #e9e9e9',\n padding: '10px 16px',\n background: '#fff',\n textAlign: 'right',\n zIndex: 1,\n } }\nconst _hoisted_6 = /*#__PURE__*/_createTextVNode(\"Close\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_a_image = _resolveComponent(\"a-image\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n\n return (_openBlock(), _createBlock(_component_a_drawer, {\n title: _ctx.title,\n placement: \"right\",\n closable: true,\n width: \"488px\",\n visible: _ctx.visible,\n \"body-style\": { paddingBottom: '40px' },\n onClose: _ctx.closeThisDrawer\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n (_ctx.type === 'pdf')\n ? (_openBlock(), _createElementBlock(\"iframe\", {\n key: 0,\n src: _ctx.base64code,\n frameborder: \"0\",\n class: \"pdf\",\n style: _normalizeStyle({ height: _ctx.pdfHeight + 'px' })\n }, null, 12, _hoisted_2))\n : _createCommentVNode(\"\", true),\n (_ctx.type === 'jpg')\n ? (_openBlock(), _createBlock(_component_a_image, {\n key: 1,\n style: {\"width\":\"100%\"},\n src: _ctx.base64code\n }, null, 8, [\"src\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.comment), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createVNode(_component_a_button, {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.visible = false)),\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_6\n ]),\n _: 1\n })\n ])\n ]),\n _: 1\n }, 8, [\"title\", \"visible\", \"onClose\"]))\n}","\nimport { defineComponent, ref } from \"vue\";\nimport { docSampleReview ,docReview} from \"@/API/claim/delaerClaim/delaer\";\nimport { b64toBlob } from \"@/utils/claim/b64toBlob\";\nexport default defineComponent({\n setup() {\n //隐藏显示抽屉\n const visible = ref(false);\n\n //关闭抽屉\n const closeThisDrawer = () => {\n visible.value = false;\n };\n\n const title = ref(\"文档样例上传-居民身份证\");\n //64码\n const base64code = ref(\"\");\n //显示的类型\n const type = ref(\"\");\n //概览的中文西悉尼\n const comment = ref(\"\");\n //pdf高度\n const pdfHeight = window.innerHeight - 250;\n\n //显示抽屉方法\n const showDrawer = (item: any) => {\n docSampleReview({ docId: item.docId }).then((res: any): void => {\n if (res.ext === \"jpg\"){\n base64code.value = \"data:image/jpg;base64,\" + res.base64code;\n type.value = \"jpg\";\n } else if (res.ext === \"pdf\"){\n base64code.value = URL.createObjectURL(\n b64toBlob(res.base64code, \"application/pdf\")\n );\n type.value = \"pdf\";\n }\n \n title.value = \"文档上传样例-\" + item.docName;\n comment.value = res.comment;\n\n visible.value = true;\n });\n };\n\n //显示抽屉方法\n const showDrawerReview = (item: any) => {\n\n docReview({ collectionDocId: item.collectionDocId }).then((res: any): void => {\n debugger\n if (res.ext === \"jpg\"){\n base64code.value = \"data:image/jpg;base64,\" + res.base64code;\n type.value = \"jpg\";\n } else if (res.ext === \"pdf\"){\n base64code.value = URL.createObjectURL(\n b64toBlob(res.base64code, \"application/pdf\")\n );\n type.value = \"pdf\";\n }\n \n title.value = \"文档上传样例-\" + item.docName;\n comment.value = res.comment;\n\n visible.value = true;\n });\n };\n\n return {\n showDrawerReview,\n type,\n title,\n visible,\n pdfHeight,\n comment,\n base64code,\n showDrawer,\n closeThisDrawer,\n };\n },\n});\n","import { render } from \"./UploadExample.vue?vue&type=template&id=ab027ad8&scoped=true&ts=true\"\nimport script from \"./UploadExample.vue?vue&type=script&lang=ts\"\nexport * from \"./UploadExample.vue?vue&type=script&lang=ts\"\n\nimport \"./UploadExample.vue?vue&type=style&index=0&id=ab027ad8&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-ab027ad8\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, normalizeStyle as _normalizeStyle, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/rv/upload.svg'\nimport _imports_1 from '@/assets/images/claim/upload.svg'\nimport _imports_2 from '@/assets/images/rv/complete.svg'\nimport _imports_3 from '@/assets/images/rv/rect.png'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7e412e6c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"ovewView\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"title_style\" }, \"文档命名规则:\", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"message_style\" }, \"   VIN_内容可自定义\", -1))\nconst _hoisted_5 = [\n _hoisted_3,\n _hoisted_4\n]\nconst _hoisted_6 = { key: 1 }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"title_style\" }, \"车架号:\", -1))\nconst _hoisted_8 = { class: \"message_style\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_10 = {\n key: 0,\n class: \"title_style\"\n}\nconst _hoisted_11 = {\n key: 1,\n class: \"message_style\"\n}\nconst _hoisted_12 = { class: \"support_tabs\" }\nconst _hoisted_13 = {\n key: 0,\n style: {\"margin-top\":\"5px\"}\n}\nconst _hoisted_14 = { key: 0 }\nconst _hoisted_15 = /*#__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_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { class: \"ant-upload-text\" }, [\n /*#__PURE__*/_createTextVNode(\"拖拽文件到此处或\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"blueFont\" }, \"点击浏览文件\")\n], -1))\nconst _hoisted_17 = { key: 1 }\nconst _hoisted_18 = { class: \"uploadH uploadProgressCon\" }\nconst _hoisted_19 = { class: \"progressCon\" }\nconst _hoisted_20 = { class: \"progressFlexCon\" }\nconst _hoisted_21 = { class: \"totalProgressCon\" }\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_1,\n alt: \"\",\n class: \"batchIcon\"\n}, null, -1))\nconst _hoisted_23 = { class: \"progressShow\" }\nconst _hoisted_24 = { class: \"progressTit\" }\nconst _hoisted_25 = {\n key: 0,\n class: \"filePro uploadPro\"\n}\nconst _hoisted_26 = {\n key: 0,\n class: \"completeCon\"\n}\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_2,\n class: \"completeIcon\"\n}, null, -1))\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { style: {\"color\":\"#00adef\",\"padding-top\":\"2px\"} }, \"100% 文件加载完成,请点击确认执行上传\", -1))\nconst _hoisted_29 = [\n _hoisted_27,\n _hoisted_28\n]\nconst _hoisted_30 = { key: 1 }\nconst _hoisted_31 = {\n key: 1,\n class: \"filePro uploadPro\"\n}\nconst _hoisted_32 = { class: \"completeCon\" }\nconst _hoisted_33 = {\n key: 0,\n style: {\"color\":\"#00adef\"}\n}\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_2,\n class: \"completeIcon\"\n}, null, -1))\nconst _hoisted_35 = { key: 1 }\nconst _hoisted_36 = { class: \"filePro fileSize\" }\nconst _hoisted_37 = {\n key: 0,\n class: \"resultCon\"\n}\nconst _hoisted_38 = /*#__PURE__*/_createTextVNode(\"重新上传\")\nconst _hoisted_39 = {\n key: 1,\n class: \"resultCon\"\n}\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"top\" }, [\n /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_3,\n class: \"rect\"\n }),\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"上传概览\")\n], -1))\nconst _hoisted_41 = { class: \"resTit\" }\nconst _hoisted_42 = { class: \"entry\" }\nconst _hoisted_43 = /*#__PURE__*/_createTextVNode(\"总数: \")\nconst _hoisted_44 = /*#__PURE__*/_createTextVNode(\" 个\")\nconst _hoisted_45 = { class: \"entry\" }\nconst _hoisted_46 = /*#__PURE__*/_createTextVNode(\"成功: \")\nconst _hoisted_47 = { style: {\"color\":\"#008a00\"} }\nconst _hoisted_48 = /*#__PURE__*/_createTextVNode(\" 个\")\nconst _hoisted_49 = { class: \"entry\" }\nconst _hoisted_50 = /*#__PURE__*/_createTextVNode(\"失败: \")\nconst _hoisted_51 = { style: {\"color\":\"#e1292b\"} }\nconst _hoisted_52 = /*#__PURE__*/_createTextVNode(\" 个\")\nconst _hoisted_53 = { class: \"result\" }\nconst _hoisted_54 = {\n key: 1,\n style: {\"margin-top\":\"5px\"}\n}\nconst _hoisted_55 = [\"src\"]\nconst _hoisted_56 = { style: {\n position: 'absolute',\n right: 0,\n bottom: 0,\n width: '100%',\n borderTop: '1px solid #e9e9e9',\n padding: '10px 16px',\n background: '#fff',\n textAlign: 'right',\n zIndex: 1\n } }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_a_upload_dragger = _resolveComponent(\"a-upload-dragger\")!\n const _component_a_progress = _resolveComponent(\"a-progress\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_table = _resolveComponent(\"a-table\")!\n const _component_a_image = _resolveComponent(\"a-image\")!\n const _component_a_tab_pane = _resolveComponent(\"a-tab-pane\")!\n const _component_a_tabs = _resolveComponent(\"a-tabs\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n\n return (_openBlock(), _createBlock(_component_a_drawer, {\n title: _ctx.title,\n placement: \"right\",\n closable: true,\n width: \"488px\",\n visible: _ctx.visible,\n \"after-visible-change\": _ctx.afterVisibleChange,\n \"body-style\": { paddingBottom: '10px' },\n onClose: _ctx.closeThisDrawer\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n (_ctx.isMultiple)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, _hoisted_5))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _hoisted_7,\n _createElementVNode(\"span\", _hoisted_8, \"   \" + _toDisplayString(_ctx.itemMessage.vinNo), 1),\n _hoisted_9,\n (!_ctx.isOnlyRead)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_10, \"文档命名规则:\"))\n : _createCommentVNode(\"\", true),\n (!_ctx.isOnlyRead)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_11, \"   无要求\"))\n : _createCommentVNode(\"\", true)\n ]))\n ]),\n _createElementVNode(\"div\", _hoisted_12, [\n _createVNode(_component_a_tabs, {\n activeKey: _ctx.activeTabs,\n onChange: _ctx.cutTabs\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.supportTabs, (item, index) => {\n return (_openBlock(), _createBlock(_component_a_tab_pane, {\n key: index,\n tab: item.name\n }, {\n default: _withCtx(() => [\n (!item.hasFile)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_13, [\n (!item.isUpload && !_ctx.isOnlyRead)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _createVNode(_component_a_upload_dragger, {\n name: \"file\",\n multiple: _ctx.isMultiple,\n listType: \"picture-card\",\n showUploadList: false,\n customRequest: _ctx.invoiceCustomRequest,\n \"before-upload\": _ctx.beforeUpload\n }, {\n default: _withCtx(() => [\n _hoisted_15,\n _hoisted_16\n ]),\n _: 1\n }, 8, [\"multiple\", \"customRequest\", \"before-upload\"])\n ]))\n : (!_ctx.isOnlyRead)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, [\n _hoisted_22,\n _createElementVNode(\"div\", _hoisted_23, [\n _createElementVNode(\"div\", _hoisted_24, \"文件上传:\" + _toDisplayString(item.curUploadFile.name), 1),\n _createVNode(_component_a_progress, {\n strokeColor: \"#00adef\",\n percent: item.invoicePercent,\n status: item.invoiceProStatus,\n \"show-info\": false\n }, null, 8, [\"percent\", \"status\"]),\n (!_ctx.isMultiple)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [\n (item.invoicePercent == 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_26, _hoisted_29))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_30, _toDisplayString(item.invoicePercent) + \" %完成 \", 1))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_31, [\n _createElementVNode(\"div\", _hoisted_32, [\n (item.invoicePercent == 100)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_33, [\n _hoisted_34,\n _createTextVNode(_toDisplayString(item.progressPercentage), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_35, _toDisplayString(item.progressPercentage), 1))\n ])\n ])),\n _createElementVNode(\"div\", _hoisted_36, _toDisplayString(item.uploadFileSize), 1)\n ])\n ])\n ])\n ])\n ]),\n (item.invoicePercent === 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_37, [\n _createVNode(_component_a_button, {\n onClick: _ctx.reUpload,\n disabled: _ctx.isRe,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_38\n ]),\n _: 1\n }, 8, [\"onClick\", \"disabled\"])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.isMultiple && item.isFault)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_39, [\n _hoisted_40,\n _createElementVNode(\"p\", _hoisted_41, [\n _createElementVNode(\"span\", _hoisted_42, [\n _hoisted_43,\n _createElementVNode(\"span\", null, _toDisplayString(item.total), 1),\n _hoisted_44\n ]),\n _createElementVNode(\"span\", _hoisted_45, [\n _hoisted_46,\n _createElementVNode(\"span\", _hoisted_47, _toDisplayString(item.success), 1),\n _hoisted_48\n ]),\n _createElementVNode(\"span\", _hoisted_49, [\n _hoisted_50,\n _createElementVNode(\"span\", _hoisted_51, _toDisplayString(item.fault), 1),\n _hoisted_52\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_53, [\n _createVNode(_component_a_table, {\n rowKey: \n (record, index) => {\n return index.toString() + record.vinNo;\n }\n ,\n scroll: { y: _ctx.tableHeight },\n columns: _ctx.columns,\n pagination: false,\n dataSource: _ctx.dataSource,\n rowClassName: (record, index) => (index % 2 === 1 ? 'table-striped' : null)\n }, null, 8, [\"rowKey\", \"scroll\", \"columns\", \"dataSource\", \"rowClassName\"])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_54, [\n (item.type === 'pdf')\n ? (_openBlock(), _createElementBlock(\"iframe\", {\n key: 0,\n id: \"iframe\",\n src: item.base64code,\n frameborder: \"0\",\n class: \"pdf\",\n style: _normalizeStyle({ height: _ctx.pdfHeight + 'px' })\n }, null, 12, _hoisted_55))\n : _createCommentVNode(\"\", true),\n (item.type === 'jpg')\n ? (_openBlock(), _createBlock(_component_a_image, {\n key: 1,\n style: {\"width\":\"100%\"},\n src: item.base64code\n }, null, 8, [\"src\"]))\n : _createCommentVNode(\"\", true)\n ]))\n ]),\n _: 2\n }, 1032, [\"tab\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"activeKey\", \"onChange\"])\n ]),\n (!_ctx.isOnlyRead && _ctx.supportTabs[_ctx.activeTabs].hasFile)\n ? (_openBlock(), _createElementBlock(\"i\", {\n key: 0,\n class: \"delete font_family icon-delete1 blue right\",\n style: {\"cursor\":\"pointer\",\"position\":\"'absolute'\"},\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.deleteHandle(_ctx.supportTabs[_ctx.activeTabs])))\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_56, [\n _createVNode(_component_a_button, {\n disabled: _ctx.isConfirm,\n onClick: _ctx.confirm,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.buttonText), 1)\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"title\", \"visible\", \"after-visible-change\", \"onClose\"]))\n}","\nimport { reactive, defineComponent, ref, computed, watch } from 'vue';\nimport { FileItem } from '@/API/types';\nimport { message, Modal } from 'ant-design-vue';\nimport axios from 'axios';\nimport { supportSaveOrUpdateSingle, OCROne, OCRS, deleteDocSample } from '@/API/claim/delaerClaim/delaer';\nimport { b64toBlob } from '@/utils/claim/b64toBlob';\n\n//上传扩展信息共有多少个类型,对应有多少个tabs页\ninterface TabsType {\n key: string; //用于循环的key\n name: string; //用于显示tabs的名称\n id: string; //上传文件的id,若没上传为空\n base64code: string; //上传的文件base64\n hasFile: boolean; //是否已经上传了文件,若已经上传,直接显示\n isUpload: boolean; //用于区别与上传和提交的显示\n type: string; //上传文件的类型,用于回显\n filePath: string; //上传文件的文件路径\n total: number; //上传文件的总数\n success: number; //上传文件的成功数\n fault: number; //上传文件的失败数\n progressPercentage: string; //上传文件的步骤信息\n isFault: boolean; //是否有错误信息\n invoicePercent: number; //进度条\n invoiceProStatus: string; //上传状态\n curUploadFile: string; //文件名\n uploadFileSize: string; //总文件大小\n uploadFileCount: number; //上传文件数目\n\n fileName: string;\n fileType: string;\n fileSize: string;\n documentId: string;\n}\n\nexport default defineComponent({\n emits: ['fresh-table'],\n setup(prop, ctx) {\n //用于判断ORC\n const selectTabName = ref('');\n //抽屉的标题\n const title = ref('');\n //是否显示抽屉\n const visible = ref(false);\n\n //用于缓存初始化时从后端传进来的数据,最后确认的时候,将上传完的path合并,一起传给后端\n const cacheData = ref();\n\n //是否是批量上传\n const isMultiple = ref(true);\n //是否,只是单独预览\n const isOnlyRead = ref(true);\n\n //pdf高度\n const pdfHeight = window.innerHeight - 280;\n\n //单个文件上传的传入数保存,包含groupid,vinNo,类型\n interface ItemMessageType {\n offerTypeId: string;\n programId: string;\n vinNo: string;\n dealerCode: string;\n offerTypeKey: string;\n retailBegin?: string;\n endTimeRetail?: string;\n }\n const itemMessage = reactive({\n offerTypeId: '',\n programId: '',\n vinNo: '',\n retailBegin: '',\n endTimeRetail: '',\n dealerCode: '',\n offerTypeKey: ''\n });\n //已存在的数组列表\n const stepTableArray = ref([]);\n //文件上传\n const formData = new FormData();\n const formDataOCR = new FormData();\n // 进度条\n // const curUploadFile = ref({});\n\n //批量上传总大小\n const uploadFileListSize = ref(0);\n const uploadFileCount = ref(0);\n const uploadfileList = ref([]);\n\n const isConfirm = ref(true);\n\n const supportTabs = ref([]);\n //当前的tabs页\n const activeTabs = ref(0);\n //表格列头\n const columns = [\n {\n title: '文件名称',\n dataIndex: 'fileName',\n key: 'fileName',\n width: 100\n },\n {\n title: '上传失败原因',\n dataIndex: 'failedReason',\n key: 'failedReason',\n width: 100\n }\n ];\n //表格的高度\n const tableHeight = computed(() => {\n if (isMultiple.value) {\n return window.innerHeight - 460;\n } else {\n return window.innerHeight - 480;\n }\n });\n //抽屉的下方按钮显示的内容\n const buttonText = ref('关闭');\n watch(isOnlyRead, () => {\n //直接监听\n console.log('count改变了');\n if (isOnlyRead.value) {\n isConfirm.value = false;\n buttonText.value = '关闭';\n } else {\n isConfirm.value = true;\n buttonText.value = '确认';\n }\n });\n\n //返回的结果列表\n interface Message {\n fileName: string;\n failedReason: string;\n }\n const dataSource = ref();\n\n //关闭抽屉事件\n const closeThisDrawer = () => {\n visible.value = false;\n };\n //关闭抽屉的回调\n const afterVisibleChange = () => {\n //关闭后的事件处理\n };\n\n //重新上传按钮\n const isRe = ref(true);\n\n //多个文档上传\n const uploadFileList = (params: any, filesArray: any, filesArrayOrc1: any, filesArrayOrc2: any) => {\n isRe.value = true;\n axios({\n method: 'post',\n data: filesArray,\n url: '/claimapi/salesIncentiveClaim/uploadBatch',\n params: params,\n onUploadProgress: (progressEvent: any) => {\n if (progressEvent.lengthComputable) {\n const complete = ((progressEvent.loaded / progressEvent.total) * 100) | 0;\n supportTabs.value[activeTabs.value].invoicePercent = complete;\n supportTabs.value[activeTabs.value].progressPercentage =\n '' +\n Math.floor((progressEvent.loaded / progressEvent.total) * uploadFileCount.value) +\n '/' +\n uploadFileCount.value +\n '' +\n (complete === 100 ? '(100% 文件加载完成)' : `(${complete}%完成)`);\n }\n }\n })\n .then((res) => {\n isConfirm.value = false;\n isRe.value = false;\n if (res.data.code === 50061 || res.data.code === 50074) {\n message.info(res.data.message);\n\n // supportTabs.value[activeTabs.value].isFault = false;\n } else {\n supportTabs.value[activeTabs.value].isFault = true;\n dataSource.value = res.data.data.failedResultList;\n supportTabs.value[activeTabs.value].total = res.data.data.totalNum;\n supportTabs.value[activeTabs.value].success = res.data.data.successNum;\n supportTabs.value[activeTabs.value].fault = res.data.data.failedNum;\n console.log(res.data.data.failedResultList);\n\n let orcUrl = '';\n console.log(selectTabName.value);\n if (selectTabName.value.trim() === '二手车发票') {\n orcUrl = '/ocr/claim/batchUCInvoice';\n } else if (selectTabName.value.trim() === '持有车辆购车发票') {\n orcUrl = '/ocr/claim/repurchase/batchUCInvoice';\n } else if (selectTabName.value.trim() === '身份证') {\n orcUrl = '/ocr/claim/batchIdCard';\n } else if (selectTabName.value.trim() === '机动车登记证') {\n orcUrl = '/ocr/claim/batchRegistration';\n }\n if (orcUrl.length > 0) {\n const fileName = [];\n for (let i = 0; i < res.data.data.failedResultList.length; i++) {\n fileName.push(res.data.data.failedResultList[i].fileName);\n }\n const param: Record = {\n failedFileNames: fileName,\n dealerCode: itemMessage.dealerCode,\n offerTypeId: itemMessage.offerTypeId,\n progDesignId: itemMessage.programId\n };\n if (['二手车发票', '持有车辆购车发票'].includes(selectTabName.value.trim())) {\n param.claimParaSetupSupportingDocId = params.claimParaSetupSupportingDocId\n }\n if (Array.from(filesArrayOrc1.keys()).length > 0) {\n OCRS(filesArrayOrc1, param, orcUrl).then((res) => {\n console.log(res);\n });\n }\n if (Array.from(filesArrayOrc2.keys()).length > 0) {\n OCRS(filesArrayOrc2, param, orcUrl).then((res) => {\n console.log(res);\n });\n }\n }\n }\n })\n .catch((error) => {\n // message.error('上传失败');\n isRe.value = false;\n });\n };\n\n //单个上传文档\n const uploadFileSingle = (currentTab: number) => {\n //上传文件单个\n const params = {\n document: formData\n };\n isConfirm.value = true;\n isRe.value = true;\n axios({\n method: 'post',\n data: formData,\n url: '/claimapi/salesIncentiveClaim/upload',\n params: {\n claimSetupSupportDocId: cacheData.value[currentTab].claimParaSetupSupportingDocId,\n vinNo: itemMessage.vinNo\n },\n onUploadProgress: (progressEvent: any) => {\n if (progressEvent.lengthComputable) {\n const complete = ((progressEvent.loaded / progressEvent.total) * 100) | 0;\n supportTabs.value[currentTab].invoicePercent = complete;\n }\n }\n })\n .then((res) => {\n if (res.data.code === '0') {\n //上传文件到后端,显示下方的确定按钮\n isConfirm.value = false;\n supportTabs.value[currentTab].invoicePercent = 100;\n supportTabs.value[currentTab].invoiceProStatus = 'success';\n\n cacheData.value[currentTab].filePath = res.data.data.docPath;\n cacheData.value[currentTab].fileName = res.data.data.docName;\n cacheData.value[currentTab].fileType = res.data.data.docType;\n cacheData.value[currentTab].fileSize = res.data.data.fileSize;\n cacheData.value[currentTab].documentId = res.data.data.id;\n isRe.value = false;\n let orcUrl = '';\n if (selectTabName.value.trim() === '二手车发票') {\n orcUrl = '/ocr/claim/ucInvoice';\n } else if (selectTabName.value.trim() === '持有车辆购车发票') {\n orcUrl = '/ocr/claim/repurchase/ucInvoice';\n } else if (selectTabName.value.trim() === '身份证') {\n orcUrl = '/ocr/claim/idCard';\n } else if (selectTabName.value.trim() === '机动车登记证') {\n orcUrl = '/ocr/claim/registration';\n }\n if (orcUrl.length > 0) {\n OCROne(\n formDataOCR,\n {\n vinNo: itemMessage.vinNo,\n progDesignId: itemMessage.programId,\n offerTypeId: itemMessage.offerTypeId,\n dealerCode: itemMessage.dealerCode,\n claimParaSetupSupportingDocId: ['二手车发票', '持有车辆购车发票'].includes(selectTabName.value.trim())\n ? cacheData.value[currentTab].claimParaSetupSupportingDocId\n : undefined\n },\n orcUrl\n ).then((res) => {\n console.log(res);\n });\n }\n } else {\n message.error(res.data.message);\n }\n })\n .catch(() => {\n // message.error('上传失败');\n isRe.value = false;\n });\n };\n\n // 重写默认上传方法 获取合规的文件\n let endq = true;\n const invoiceCustomRequest = (source: any) => {\n if (isMultiple.value) {\n //批量上传\n const filearray = [];\n if (!endq) {\n return;\n }\n const fordata = new FormData();\n const orcForData1 = new FormData();\n const orcForData2 = new FormData();\n for (let i = 0; i < uploadfileList.value.length; i++) {\n const file = uploadfileList.value[i];\n fordata.append('document', file);\n if (i % 2 == 0) {\n orcForData1.append('file', file);\n } else {\n orcForData2.append('file', file);\n }\n // orcForData.append(\"files\", file);\n filearray.push(fordata);\n }\n const param = {\n programId: itemMessage.programId,\n offerTypeId: itemMessage.offerTypeId,\n claimParaSetupSupportingDocId: cacheData.value[activeTabs.value].claimParaSetupSupportingDocId,\n retailBegin: itemMessage.retailBegin,\n retailEnd: itemMessage.endTimeRetail,\n fileList: filearray,\n vinNoList: [],\n offerTypeKey: itemMessage.offerTypeKey,\n dealerCode: itemMessage.dealerCode\n };\n endq = false;\n supportTabs.value[activeTabs.value].isUpload = true;\n uploadFileList(param, fordata, orcForData1, orcForData2);\n } else {\n //单个上传\n if (formData.has('document')) {\n formData.delete('document');\n formDataOCR.delete('file');\n }\n formData.append('document', source.file);\n formDataOCR.append('file', source.file);\n supportTabs.value[activeTabs.value].curUploadFile = source.file;\n const isLt5M = source.file.size / 1024 / 1024 < 10;\n if (!isLt5M) {\n message.error('文件大小不能超过10M');\n return;\n }\n supportTabs.value[activeTabs.value].uploadFileSize =\n source.file.size / 1024 > 1024\n ? `${(source.file.size / 1024 / 1024).toFixed(1)} MB`\n : `${Math.floor(source.file.size / 1024)} KB`;\n supportTabs.value[activeTabs.value].isUpload = true;\n uploadFileSingle(activeTabs.value);\n }\n };\n // 上传前,多个文件上传会回调文件次数,所以用end作为标记,防止多次验证\n let end = 0;\n const beforeUpload = (file: FileItem, fileList: any) => {\n if (isMultiple.value) {\n let fault = 0;\n uploadFileListSize.value = 0;\n end++;\n\n if (end !== fileList.length) {\n return false;\n }\n\n for (let i = 0; i < fileList.length; i++) {\n const file = fileList[i];\n if (file.type === 'image/jpeg' || file.type === 'application/pdf') {\n if (file.size / 1024 / 1024 < 10) {\n uploadFileListSize.value = uploadFileListSize.value + file.size / 1024 / 1024;\n } else {\n fault = 2;\n }\n } else {\n fault = 1;\n }\n }\n if (fileList.length > 30) {\n message.error('传输文件不能超过30个');\n end = 0;\n return false;\n } else if (fault === 1) {\n message.error('只能上传 jpg/pdf 格式的文件');\n end = 0;\n return false;\n } else if (fault === 2) {\n message.error('文件大小不能超过10M');\n end = 0;\n return false;\n } else {\n uploadfileList.value = fileList;\n uploadFileCount.value = fileList.length;\n supportTabs.value[activeTabs.value].uploadFileSize = uploadFileListSize.value.toFixed(2) + 'MB';\n end = 0;\n return true;\n }\n } else {\n const isJpg = file.type === 'image/jpeg';\n const isPdf = file.type === 'application/pdf';\n if (!isJpg && !isPdf) {\n message.error('jpg/pdf format files can be uploaded!');\n }\n return isJpg || isPdf;\n }\n };\n\n //tabs页切换的事件\n const cutTabs = (index: number) => {\n activeTabs.value = index;\n // invoicePercent.value = 0;\n // invoiceProStatus.value = 'normal'\n selectTabName.value = supportTabs.value[activeTabs.value].name;\n endq = true;\n };\n\n //根据传入的参数,显示指定的上传页面内容\n const showDrawer = (option: any) => {\n isOnlyRead.value = option.isOnlyRead; //只读标记\n isConfirm.value = !isOnlyRead.value;\n activeTabs.value = option.message.index; //第几个tabs\n title.value = option.isMultiple ? '批量上传文档' : '上传文档'; //标题\n isMultiple.value = option.isMultiple; //是否是多选\n supportTabs.value = []; //tabs 数组\n itemMessage.programId = option.message.programId; //programId\n itemMessage.offerTypeId = option.message.offerTypeId; //类型id\n itemMessage.vinNo = option.message.vinNo;\n itemMessage.retailBegin = option.message.retailBegin;\n itemMessage.endTimeRetail = option.message.endTimeRetail;\n itemMessage.offerTypeKey = option.message.offerTypeKey;\n itemMessage.dealerCode = option.message.dealerCode;\n cacheData.value = option.data;\n stepTableArray.value = option.stepTableArray.value;\n // invoicePercent.value = 0\n // invoiceProStatus.value = \"normal\"\n endq = true;\n for (let i = 0; i < option.data.length; i++) {\n const one = option.data[i];\n supportTabs.value.push({\n key: i + '',\n name: one.tabName,\n id: one.id,\n base64code:\n one.ext === 'jpg'\n ? 'data:image/jpg;base64,' + `${one.base64code}`\n : URL.createObjectURL(b64toBlob(one.base64code, 'application/pdf')),\n hasFile: one.ext === 'pdf' || one.ext === 'jpg',\n isUpload: false,\n type: one.ext,\n filePath: one.filePath,\n total: 0,\n success: 0,\n fault: 0,\n progressPercentage: '',\n isFault: false,\n invoicePercent: 0,\n invoiceProStatus: 'normal',\n curUploadFile: '',\n uploadFileSize: '',\n uploadFileCount: 0,\n\n fileName: one.fileName,\n fileType: one.fileType,\n fileSize: one.fileSize,\n documentId: one.documentId\n });\n }\n selectTabName.value = supportTabs.value[0].name;\n visible.value = true;\n };\n\n //确认按钮事件\n const confirm = () => {\n if (isMultiple.value) {\n //批量上传确认事件\n isConfirm.value = true;\n visible.value = false;\n } else {\n //单个上传确认事件\n //supportSaveOrUpdateSingle\n if (!isOnlyRead.value) {\n //进行确认的事件\n const array: any[] = [];\n for (let i = 0; i < cacheData.value.length; i++) {\n const param = {\n docId: cacheData.value[i].id,\n vinNo: itemMessage.vinNo,\n programId: itemMessage.programId,\n offerTypeId: itemMessage.offerTypeId,\n claimParaSetupSupportingDocId: cacheData.value[i].claimParaSetupSupportingDocId,\n filePath: cacheData.value[i].filePath,\n\n fileName: cacheData.value[i].fileName,\n fileType: cacheData.value[i].fileType,\n fileSize: cacheData.value[i].fileSize,\n documentId: cacheData.value[i].documentId\n };\n array.push(param);\n }\n\n const prams = {\n dealerCode: itemMessage.dealerCode,\n offerTypeKey: itemMessage.offerTypeKey,\n offerTypeId: itemMessage.offerTypeId,\n programId: itemMessage.programId,\n docList: array,\n vinNo: itemMessage.vinNo\n };\n\n supportSaveOrUpdateSingle(prams).then((res: any): void => {\n isConfirm.value = true;\n const uploadTypes = array.reduce((types: string[], item: any, index: number) => {\n if (item.documentId && !item.docId) {\n types.push(supportTabs.value[index].name)\n }\n return types\n }, []);\n message.success(`${uploadTypes.join(\"、\")}上传成功`);\n visible.value = false;\n });\n } else {\n //进行关闭的事件\n visible.value = false;\n }\n }\n };\n watch(visible, (newVal: boolean) => {\n if (!isOnlyRead.value && !newVal) {\n ctx.emit('fresh-table');\n }\n });\n\n const reUpload = () => {\n if (isMultiple.value) {\n uploadFileListSize.value = 0;\n uploadfileList.value = [];\n uploadFileCount.value = 0;\n supportTabs.value[activeTabs.value].uploadFileSize = 0 + 'MB';\n supportTabs.value[activeTabs.value].hasFile = false;\n supportTabs.value[activeTabs.value].isUpload = false;\n cacheData.value[activeTabs.value].filePath = '';\n\n cacheData.value[activeTabs.value].fileName = '';\n cacheData.value[activeTabs.value].fileType = '';\n cacheData.value[activeTabs.value].fileSize = '';\n cacheData.value[activeTabs.value].documentId = '';\n\n isConfirm.value = true;\n isOnlyRead.value = false;\n supportTabs.value[activeTabs.value].invoicePercent = 0;\n supportTabs.value[activeTabs.value].progressPercentage = '';\n supportTabs.value[activeTabs.value].isFault = false;\n dataSource.value = [];\n endq = true;\n } else {\n supportTabs.value[activeTabs.value].base64code = '';\n supportTabs.value[activeTabs.value].type = '';\n supportTabs.value[activeTabs.value].filePath = '';\n supportTabs.value[activeTabs.value].hasFile = false;\n supportTabs.value[activeTabs.value].isUpload = false;\n cacheData.value[activeTabs.value].filePath = '';\n\n isConfirm.value = true;\n isOnlyRead.value = false;\n }\n };\n const deleteHandle = (docSample: { id: string }) => {\n Modal.confirm({\n title: '确认',\n content: '确定要删除这条支持文档吗?',\n okText: '确认',\n async onOk() {\n await deleteDocSample(docSample.id);\n supportTabs.value[activeTabs.value].base64code = '';\n supportTabs.value[activeTabs.value].type = '';\n supportTabs.value[activeTabs.value].filePath = '';\n supportTabs.value[activeTabs.value].hasFile = false;\n supportTabs.value[activeTabs.value].isUpload = false;\n\n cacheData.value[activeTabs.value].id = '';\n cacheData.value[activeTabs.value].filePath = '';\n cacheData.value[activeTabs.value].fileName = '';\n cacheData.value[activeTabs.value].fileType = '';\n cacheData.value[activeTabs.value].fileSize = '';\n cacheData.value[activeTabs.value].documentId = '';\n\n isConfirm.value = false;\n isOnlyRead.value = false;\n // confirm();\n },\n cancelText: '取消'\n });\n };\n\n // const showDelete = computed(() => {\n // return tab\n // });\n\n return {\n // showDelete,\n isRe,\n reUpload,\n uploadFileCount,\n // progressPercentage,\n buttonText,\n deleteHandle,\n isOnlyRead,\n pdfHeight,\n itemMessage,\n confirm,\n isConfirm,\n // curUploadFile,\n // uploadFileSize,\n // invoiceProStatus,\n // invoicePercent,\n activeTabs,\n showDrawer,\n // isFault,\n tableHeight,\n cutTabs,\n columns,\n dataSource,\n // uploadResult,\n beforeUpload,\n invoiceCustomRequest,\n isMultiple,\n supportTabs,\n visible,\n title,\n afterVisibleChange,\n closeThisDrawer\n };\n }\n});\n","import { render } from \"./index.vue?vue&type=template&id=7e412e6c&scoped=true&ts=true\"\nimport script from \"./index.vue?vue&type=script&lang=ts\"\nexport * from \"./index.vue?vue&type=script&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=7e412e6c&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-7e412e6c\"]])\n\nexport default __exports__","\n//筛选条件类型接口\ninterface ScreeningConditionsType {\n vinNo: null | string;\n modelName: null | string;\n retailDate: string[];\n saleDate: string[];\n vinNoList: string[];\n}\n//上传支持文档类型\ninterface SupportDocVOSType {\n id: string;\n supportDocName: string;\n supportDocFilePath: string;\n isRequired: string | boolean;\n}\n//表格类型\ninterface DealerVINList {\n id: string;\n vinNo: string;\n modelName: string;\n modelYear: string;\n retailDate: string;\n saleDate: string;\n financialApplicationDate: string;\n customerName: string;\n specialVehicleUse: string;\n extendedInfo: string;\n supportDocVOS: SupportDocVOSType[];\n customerPolicyEstimatedAmount: string;\n checkStatus: string;\n check: boolean;\n //新增的\n commissionNo: string;\n engineNo: string;\n entity: string;\n fin: string;\n materialNo: string;\n programBu: string;\n programCode: string;\n programCreator: string;\n programName: string;\n programNameCn: string;\n programReleaseDate: string;\n supportOfferId: string;\n supportOfferName: string;\n typeClass: string;\n programBuSecond: string;\n make: string;\n siOffer: string;\n orderProtection: boolean;\n presale: boolean;\n conflict?: any;\n}\nimport downloadFile from \"@/utils/claim/downloadFile\";\nimport { ExclamationCircleOutlined } from \"@ant-design/icons-vue\";\nimport { message, Modal } from \"ant-design-vue\";\nimport moment from \"moment\";\nimport SingleInformation from \"./ExtendInformation/SingleInformation.vue\";\nimport UploadInformation from \"./ExtendInformation/UploadInformation.vue\";\nimport SupportExample from \"../UploadSupport/UploadExample.vue\";\nimport UploadSupport from \"../UploadSupport/index.vue\";\nimport { useRouter } from \"vue-router\";\nimport { Moment } from \"moment\";\nimport {\n defineComponent,\n h,\n createVNode,\n ref,\n computed,\n reactive,\n onMounted,\n nextTick,\n toRefs,\n} from \"vue\";\nimport {\n getVINTableData,\n setClaimDocumentMatching,\n downloadExtendInfoApi,\n supportReview,\n saveDealerClaimApp,\n docSample,\n validateReplaceAttributes,\n} from \"@/API/claim/delaerClaim/delaer\";\nimport { getBuTreeList } from \"@/API/approvalChain\";\nimport type { BuTreeProps } from \"@/store\";\n\nfunction getFirstLevelBU(buTree: BuTreeProps[], bu: string) {\n for (const buItem of buTree) {\n if (buItem.nameEn === bu || getFirstLevelBU(buItem.children, bu)) {\n return buItem;\n }\n }\n return null;\n}\n\nexport default defineComponent({\n components: {\n SingleInformation,\n UploadInformation,\n SupportExample,\n UploadSupport,\n ExclamationCircleOutlined,\n },\n emits: [\"pre-page\"],\n setup(props, ctx) {\n // //map对象,用于缓存总数据\n // const scoreMap = ref();\n // //是否是第一次加载\n // let isFirst = true;\n\n const errorModalVisible = ref(false);\n let errorArray: Array = [];\n // const errorDataSource,errorColumns\n const errorDataSource = ref([]);\n const errorColumns = [\n {\n title: \"车架号\",\n dataIndex: \"VINNo\",\n key: \"VINNo\",\n },\n {\n title: \"错误信息\",\n dataIndex: \"message\",\n key: \"message\",\n },\n ];\n\n const router = useRouter();\n //填写扩展信息子页面\n const extendInfoDom = ref(null);\n //上传批量扩展信息子页面\n const uploadInfoDom = ref(null);\n //显示样例子页面\n const supportExample = ref(null);\n //批量上传支持文档\n const uploadSupportDom = ref(null);\n //参数\n const option = ref({});\n const categoryName = ref(\"\");\n\n //按钮文字\n const nextButtonText = ref(\"下一步\");\n\n //证明文件名称\n const proveText = ref(\"aaaa.pdf\");\n\n //区域经理\n const manager = ref(\"\");\n\n //数据总数\n const dataCount = ref(0);\n\n //筛选条件\n const screeningConditions: ScreeningConditionsType = reactive({\n vinNo: null,\n modelName: null,\n retailDate: [],\n saleDate: [],\n vinNoList: [],\n });\n\n //筛选条件查询\n const screeningConditionsTemporary: ScreeningConditionsType = reactive({\n vinNo: null,\n modelName: null,\n retailDate: [],\n saleDate: [],\n vinNoList: [],\n });\n\n //当前步骤记录\n const currentStep = ref(0);\n //步骤条\n const stepArray = ref([]);\n //步骤的编号,用于显示对应的安修和文件预览\n const stepNum = ref(1);\n\n //支持文档样例\n const supportSample = ref([]);\n\n //表格\n //是否高量显示扩展字段\n const extendActive = ref(true);\n const extendActiveTitle = ref(true);\n //是否是上传支持图片\n const supportActive = ref(false);\n\n const supportActiveTitle = ref(false);\n //用于刷新数据时,确定现在还有多少数据剩余,避免显示全部数据\n const stepTableArray = ref([]);\n\n //应对CR,新增上一步按钮,添加步骤存储,存储从1->2 ,2->3 ,1-3>时,未对数据进行筛选前的,vinNoArray,用于上一步去判断\n const stepTableArrayDoc = ref([]);\n const stepTableArraySupport = ref([]);\n\n const dataSource = ref([]);\n //上传扩展信息标题长度\n const supportDocSign = ref(false);\n const supportDocVosLength = ref(150);\n\n const columnsValue = [\n // {\n // title: \"id\",\n // dataIndex: \"id\",\n // key: \"id\",\n // width: 120,\n // },\n {\n title: \"车架号\",\n dataIndex: \"vinNo\",\n key: \"vinNo\",\n width: 180,\n slots: {\n customRender: \"vinNo\",\n },\n },\n {\n title: \"车型名称\",\n dataIndex: \"modelName\",\n key: \"modelName\",\n width: 220,\n },\n {\n title: \"车款\",\n dataIndex: \"modelYear\",\n key: \"modelYear\",\n width: 120,\n },\n {\n title: \"批售日期\",\n dataIndex: \"saleDate\",\n key: \"saleDate\",\n width: 120,\n },\n {\n title: \"零售日期\",\n dataIndex: \"retailDate\",\n key: \"retailDate\",\n width: 120,\n },\n\n {\n title: \"金融申请时间\",\n dataIndex: \"financialApplicationDate\",\n key: \"financialApplicationDate\",\n width: 120,\n },\n {\n title: \"客户名称\",\n dataIndex: \"customerName\",\n key: \"customerName\",\n width: 220,\n },\n {\n title: \"特殊车辆用途\",\n dataIndex: \"specialVehicleUse\",\n key: \"specialVehicleUse\",\n width: 150,\n },\n {\n dataIndex: \"extendedInfo\",\n key: \"extendedInfo\",\n width: 120,\n slots: {\n title: \"extendedInfoTitle\",\n customRender: \"extendedInfo\",\n },\n },\n {\n // title: categoryName.value,\n dataIndex: \"supportDocVOS\",\n key: \"supportDocVOS\",\n // width: 120,\n width: supportDocVosLength,\n slots: {\n title: \"supportDocVOSTitle\",\n customRender: \"supportDocVOS\",\n },\n },\n {\n title: \"客户政策预估金额\",\n dataIndex: \"customerPolicyEstimatedAmount\",\n key: \"customerPolicyEstimatedAmount\",\n width: 140,\n },\n {\n title: \"检查状态\",\n dataIndex: \"checkStatus\",\n key: \"checkStatus\",\n width: 120,\n slots: {\n customRender: \"checkStatus\",\n },\n },\n {\n title: \"批售方\",\n dataIndex: \"wholesaleSellerCofico\",\n key: \"wholesaleSellerCofico\",\n width: 120,\n slots: {\n customRender: \"wholesaleSellerCofico\"\n }\n },\n {\n dataIndex: \"operation\",\n key: \"operation\",\n width: 130,\n // fixed: 'right',\n slots: {\n title: \"customTitle\",\n customRender: \"operation\",\n },\n },\n ];\n\n const columnsValue2 = [\n {\n title: \"车架号\",\n dataIndex: \"vinNo\",\n key: \"vinNo\",\n width: 150,\n },\n {\n title: \"车型名称\",\n dataIndex: \"modelName\",\n key: \"modelName\",\n width: 220,\n },\n {\n title: \"车款\",\n dataIndex: \"modelYear\",\n key: \"modelYear\",\n width: 120,\n },\n {\n title: \"批售日期\",\n dataIndex: \"saleDate\",\n key: \"saleDate\",\n width: 120,\n },\n {\n title: \"零售日期\",\n dataIndex: \"retailDate\",\n key: \"retailDate\",\n width: 120,\n },\n\n {\n title: \"金融申请时间\",\n dataIndex: \"financialApplicationDate\",\n key: \"financialApplicationDate\",\n width: 120,\n },\n {\n title: \"客户名称\",\n dataIndex: \"customerName\",\n key: \"customerName\",\n width: 220,\n },\n {\n title: \"特殊车辆用途\",\n dataIndex: \"specialVehicleUse\",\n key: \"specialVehicleUse\",\n width: 150,\n },\n {\n dataIndex: \"extendedInfo\",\n key: \"extendedInfo\",\n width: 120,\n slots: {\n title: \"extendedInfoTitle\",\n customRender: \"extendedInfo\",\n },\n },\n {\n dataIndex: \"supportDocVOS\",\n key: \"supportDocVOS\",\n width: supportDocVosLength,\n slots: {\n title: \"supportDocVOSTitle\",\n customRender: \"supportDocVOS\",\n },\n },\n {\n title: \"检查状态\",\n dataIndex: \"checkStatus\",\n key: \"checkStatus\",\n width: 120,\n slots: {\n customRender: \"checkStatus\",\n },\n },\n {\n title: \"批售方\",\n dataIndex: \"wholesaleSellerCofico\",\n key: \"wholesaleSellerCofico\",\n width: 120,\n slots: {\n customRender: \"wholesaleSellerCofico\"\n }\n },\n {\n dataIndex: \"operation\",\n key: \"operation\",\n width: 130,\n // fixed: 'right',\n slots: {\n title: \"customTitle\",\n customRender: \"operation\",\n },\n },\n ];\n\n const columns = ref(columnsValue);\n const noStep = ref(false);\n //表格高度\n const tableHeight = computed(() => {\n if (noStep.value) {\n return window.innerHeight - 450;\n }\n\n if (stepNum.value === 2 || stepNum.value === 1) {\n return window.innerHeight - 535;\n } else {\n return window.innerHeight - 485;\n }\n });\n //多选框参数\n // const checkState = reactive({\n // indeterminate: false,\n // checkAll: false,\n // });\n const indeterminate = ref(false);\n const checkAll = ref(false);\n const activeOperation = ref({\n height: \"0px\",\n width: \"0px\",\n });\n\n //用于存储,table中被选中的数组\n const selectTableArray: string[] = new Array();\n\n //所有可进行申请的条数,应该从后端数据中进行判断,这里只先进行测试先赋值\n const checkAllNum = computed(() => {\n return dataSource.value.filter(\n (item) => item.checkStatus.trim().length <= 0\n ).length;\n });\n\n //--------事件--------\n //更改表格后面复选框的状态\n const changeSelect = (sign: number) => {\n if (sign === 0) {\n indeterminate.value = false;\n checkAll.value = false;\n activeOperation.value = {\n height: \"0px\",\n width: \"0px\",\n };\n } else if (sign === 2) {\n indeterminate.value = true;\n checkAll.value = false;\n activeOperation.value = {\n height: \"7px\",\n width: \"8px\",\n };\n } else if (sign === 1) {\n indeterminate.value = false;\n checkAll.value = true;\n activeOperation.value = {\n height: \"15px\",\n width: \"15px\",\n };\n }\n };\n //每个多选框的事件\n const checkChange = (item: any) => {\n const id = item.vinNo;\n const index = selectTableArray.indexOf(id);\n if (index > -1) {\n selectTableArray.splice(index, 1);\n } else {\n selectTableArray.push(id);\n }\n\n if (selectTableArray.length === 0) {\n changeSelect(0);\n } else if (selectTableArray.length === checkAllNum.value) {\n changeSelect(1);\n } else {\n changeSelect(2);\n }\n };\n //多选框全选事件\n const onCheckAllChange = () => {\n //如果列表数量为0,就不能点击\n if (checkAllNum.value === 0) {\n return;\n }\n //将可添加的都放入到selectTableArray中\n\n if (selectTableArray.length === 0) {\n selectTableArray.splice(0, selectTableArray.length);\n dataSource.value.forEach((item) => {\n if (item.checkStatus.trim().length <= 0) {\n item.check = true;\n selectTableArray.push(item.vinNo);\n }\n });\n //更改全选框状态\n changeSelect(1);\n } else if (selectTableArray.length < checkAllNum.value) {\n selectTableArray.splice(0, selectTableArray.length);\n dataSource.value.forEach((item) => {\n if (item.checkStatus.trim().length <= 0) {\n item.check = true;\n selectTableArray.push(item.vinNo);\n }\n });\n changeSelect(1);\n } else {\n selectTableArray.splice(0, selectTableArray.length);\n dataSource.value.forEach((item) => {\n item.check = false;\n });\n changeSelect(0);\n }\n };\n\n //同步stepTableArray\n const syncStepTableArray = () => {\n stepTableArray.value = [];\n\n dataSource.value.forEach((item) => stepTableArray.value.push(item.vinNo));\n };\n\n //校验2275\n const checkDoc = async () => {\n let filterData = [];\n stepTableArray.value = [];\n\n //CR新添加\n stepTableArrayDoc.value = [];\n for (let i = 0; i < dataSource.value.length; i++) {\n stepTableArrayDoc.value.push(dataSource.value[i].vinNo);\n }\n\n //判断是否有选择,获取需要进行校验的数据\n if (selectTableArray.length !== 0) {\n filterData = dataSource.value.filter(\n (item) => selectTableArray.indexOf(item.vinNo) > -1\n );\n } else {\n filterData = dataSource.value.filter((item) => {\n return item.checkStatus.length <= 0 && item.extendedInfo === \"1\";\n });\n }\n if (filterData.length === 0) {\n message.error(\"没有填写扩展信息的数据,请填写后提交\");\n return;\n }\n\n //判断选择的数据里面有没有没填写扩展信息的\n let sign = 0;\n const signArray = [];\n errorArray = [];\n errorDataSource.value = [];\n for (let i = 0; i < filterData.length; i++) {\n if (filterData[i].extendedInfo === \"0\") {\n sign = 1;\n // if (signArray.length<5){\n signArray.push(\n h(\"p\", \"车辆:\" + filterData[i].vinNo + \"未填写扩展信息,请补充\")\n );\n errorArray.push(filterData[i].vinNo + \",\" + \"未填写扩展信息\");\n errorDataSource.value.push({\n VINNo: filterData[i].vinNo,\n message: \"未填写扩展信息\",\n });\n // }\n }\n }\n //如果有为填写扩展信息的,报错给提示\n // if (sign){\n // message.error('选择的数据中,有包含未填写扩展信息的条目,请检查')\n // return false;\n // }\n\n if (sign) {\n errorModalVisible.value = true;\n\n // Modal.confirm({\n // title: '错误信息',\n // icon: () => h(ExclamationCircleOutlined),\n // content: h('div', { style: {height: '400px',overflow:'auto'}}, signArray),\n // width:\"500px\",\n // okText:'确定',\n // cancelText:'导出',\n // onOk() {\n // console.log('OK');\n\n // },\n // onCancel() {\n // console.log('导出信息');\n // const params = {\n // url: `/claimapi/salesIncentiveClaim/export/error/message`,\n // method: \"post\",\n // params: errorArray,\n // fileName: `模板.xlsx`,\n // };\n // downloadExtendInfoApi(params)\n // },\n // });\n return false;\n }\n\n //进行后端校验\n const vinNoArray: Array = [];\n\n filterData.forEach((item) => {\n vinNoArray.push(item.vinNo);\n });\n\n const param = {\n dealerCode: option.value.dealerCode,\n offerTypeId: option.value.offerTypeId,\n progDesignId: option.value.programId,\n vinNos: vinNoArray,\n };\n let checkSign = false;\n const checkArray: Array = [];\n\n await validateReplaceAttributes(param).then((res: any): void => {\n if (res.length > 0) {\n for (let i = 0; i < res.length; i++) {\n if (checkArray.length < 5) {\n checkArray.push(h(\"p\", res[i].vinNo + \",\" + res[i].message));\n }\n }\n checkSign = true;\n }\n });\n if (checkSign) {\n Modal.error({\n title: \"错误信息\",\n content: h(\"div\", {}, checkArray),\n });\n\n return false;\n }\n\n //重置所有数据的复选框状态,并保存到底去下一步有多少数据\n filterData.forEach((item) => {\n item.check = false;\n stepTableArray.value.push(item.vinNo);\n });\n //对表格重新赋值\n //重置复选框功能,并清空保存数组\n dataSource.value = filterData;\n selectTableArray.splice(0, selectTableArray.length);\n changeSelect(0);\n\n return true;\n };\n //校验2276\n const checkSupport = () => {\n stepTableArraySupport.value = [];\n for (let i = 0; i < dataSource.value.length; i++) {\n stepTableArraySupport.value.push(dataSource.value[i].vinNo);\n }\n let filterData = [];\n //判断是否有选择\n if (selectTableArray.length !== 0) {\n filterData = dataSource.value.filter(\n (item) => selectTableArray.indexOf(item.vinNo) > -1\n );\n } else {\n filterData = dataSource.value.filter(\n (item) => item.checkStatus.length <= 0\n );\n }\n if (filterData.length === 0) {\n message.error(\"没有可以提交的数据\");\n return false;\n }\n\n //对必填项进行校验\n let support = false;\n errorArray = [];\n const supportArray = [];\n errorDataSource.value = [];\n for (let i = 0; i < filterData.length; i++) {\n const one = filterData[i];\n for (let j = 0; j < one.supportDocVOS.length; j++) {\n if (one.supportDocVOS[j].isRequired === \"Y\") {\n if (!one.supportDocVOS[j].supportDocFilePath) {\n // if (one.supportDocVOS[j].supportDocFilePath!==null && one.supportDocVOS[j].supportDocFilePath.trim().length<=0){\n // message.error('有必须填写的支持文档没有上传,不能进行下一步操作')\n support = true;\n // if (supportArray.length<5){\n errorArray.push(\n filterData[i].vinNo +\n \",\" +\n one.supportDocVOS[j].supportDocName +\n \"文档未上传\"\n );\n errorDataSource.value.push({\n VINNo: filterData[i].vinNo,\n message: one.supportDocVOS[j].supportDocName + \"文档未上传\",\n });\n supportArray.push(\n h(\n \"p\",\n one.vinNo +\n \",\" +\n one.supportDocVOS[j].supportDocName +\n \"的文档未上传\"\n )\n );\n // }\n }\n }\n }\n }\n\n if (support) {\n errorModalVisible.value = true;\n // Modal.confirm({\n // title: '错误信息',\n // icon: () => h(ExclamationCircleOutlined),\n // width:\"500px\",\n // content: h('div', { style: {height: '400px',overflow:'auto'}}, supportArray),\n // okText:'确定',\n // cancelText:'导出',\n // onOk() {\n // console.log('OK');\n\n // },\n // onCancel() {\n // console.log('导出信息');\n // const params = {\n // url: `/claimapi/salesIncentiveClaim/export/error/message`,\n // method: \"post\",\n // params: errorArray,\n // fileName: `模板.xlsx`,\n // };\n // downloadExtendInfoApi(params)\n // },\n // });\n\n return false;\n } else {\n dataSource.value = filterData;\n return true;\n }\n };\n //跳转到扩展信息\n const goDoc = () => {\n extendActive.value = true;\n extendActiveTitle.value = true;\n //更改supportActive状态\n supportActive.value = false;\n supportActiveTitle.value = false;\n\n stepNum.value = 1;\n nextButtonText.value = \"下一步\";\n currentStep.value = 0;\n };\n\n //跳转到支持文档\n const goSupport = () => {\n docSample({ programId: option.value.programId }).then(\n (res: any): void => {\n if (res.length > 0) {\n supportSample.value = res;\n }\n //所有数据设置为全选状态\n // changeSelect(1);\n //进入到一步\n stepNum.value = 2;\n nextButtonText.value = \"下一步\";\n //更改css状态,更改step状态\n\n for (let i = 0; i < stepArray.value.length; i++) {\n if (stepArray.value[i] === \"提交支持文档\") {\n currentStep.value = i;\n }\n }\n //全部变亮\n // dataSource.value.forEach((item) => {\n // if (item.checkStatus.length === 0){\n // item.check = true;\n // // stepTableArray.value.push(item.vinNo)\n // selectTableArray.push(item.vinNo)\n // }\n\n // });\n dataCount.value = dataSource.value.length;\n\n extendActive.value = false;\n extendActiveTitle.value = false;\n //更改supportActive状态\n supportActive.value = true;\n supportActiveTitle.value = true;\n }\n );\n };\n //跳转到提交\n const goSubmit = () => {\n nextButtonText.value = \"提交\";\n stepNum.value = 3;\n // stepTableArray.value = [];\n\n changeSelect(0);\n\n dataSource.value.forEach((item) => {\n item.check = false;\n // stepTableArray.value.push(item.vinNo)\n });\n changeSelect(0);\n //更改css状态,更改步骤条\n for (let i = 0; i < stepArray.value.length; i++) {\n if (stepArray.value[i] === \"提交\") {\n currentStep.value = i;\n }\n }\n selectTableArray.splice(0, selectTableArray.length);\n\n dataCount.value = dataSource.value.length;\n supportActive.value = true;\n extendActive.value = true;\n extendActiveTitle.value = false;\n supportActiveTitle.value = false;\n };\n\n const claimDocumentMatching = ref({});\n let VINarray: Array = [];\n //提交数据\n const onSubmit = () => {\n const parmas = [];\n VINarray = [];\n let filterData = [];\n if (selectTableArray.length !== 0) {\n filterData = dataSource.value.filter(\n (item) => selectTableArray.indexOf(item.vinNo) > -1\n );\n } else {\n filterData = dataSource.value;\n }\n filterData = filterData.filter(\n (item) => item.checkStatus.trim().length <= 0\n );\n\n for (let i = 0; i < filterData.length; i++) {\n const doc = filterData[i];\n\n const supportDocArray = [];\n\n if (Array.isArray(doc.supportDocVOS)) {\n for (let j = 0; j < doc.supportDocVOS.length; j++) {\n supportDocArray.push(doc.supportDocVOS[j].id);\n }\n }\n\n const param = {\n //新增的,offerTypeNameEn,programNameCn,其中programNameCn还没有,先传空\n offerTypeNameEn: option.value.offerTypeNameEn,\n programNameCn: doc.programNameCn,\n customerName: doc.customerName,\n dealerCode: option.value.dealerCode,\n dealerNameCn: option.value.dealerNameCn,\n eligiblePeriodFrom:\n option.value.retailBegin === \"\"\n ? \"\"\n : moment(option.value.retailBegin).format(\"YYYY-MM-DD\"),\n eligiblePeriodTo:\n option.value.retailEnd === \"\"\n ? \"\"\n : moment(option.value.retailEnd).format(\"YYYY-MM-DD\"),\n eligiblePeriodType: option.value.eligiblePeriodName, //事成\n eligiblePeriodId: option.value.eligiblePeriodId, //事成\n // firstSubmitDate: doc.financialApplicationDate ===\"\" ? \"\": moment(doc.financialApplicationDate).format( \"YYYY-MM-DD\"),\n id: \"\",\n inParagraph: doc.modelYear,\n incentiveCategory: option.value.incentiveCategory,\n model: doc.modelName,\n offerTypeId: option.value.offerTypeId,\n offerTypeName: option.value.categoryName,\n predictAmount: doc.customerPolicyEstimatedAmount,\n price: \"\",\n progDesignId: option.value.programId,\n programCode: doc.programCode,\n programName: doc.programName,\n retailDate:\n doc.retailDate === \"\" || doc.retailDate === null\n ? \"\"\n : moment(doc.retailDate).format(\"YYYY-MM-DD\"),\n specialUsage: doc.specialVehicleUse,\n status: \"\",\n submissionDateFrom:\n option.value.submissionDateFrom === \"\"\n ? \"\"\n : moment(option.value.submissionDateFrom).format(\"YYYY-MM-DD\"),\n submissionDateTo:\n option.value.submissionDateTo === \"\"\n ? \"\"\n : moment(option.value.submissionDateTo).format(\"YYYY-MM-DD\"),\n typeClass: doc.typeClass,\n vinNo: doc.vinNo,\n wholesaleDate:\n doc.saleDate === \"\"\n ? \"\"\n : moment(doc.saleDate).format(\"YYYY-MM-DD\"),\n supportDocIds: supportDocArray,\n commissionNo: doc.commissionNo,\n engineNo: doc.engineNo,\n entity: doc.entity,\n fin: doc.fin,\n materialNo: doc.materialNo,\n programOwner: doc.programCreator,\n releaseDate: doc.programReleaseDate,\n supportOfferId: doc.supportOfferId,\n supportOfferName: doc.supportOfferName,\n dealerNameEn: option.value.dealerName,\n offerTypePathKey: option.value.offerTypeKey,\n // programBuSecond:doc.programBuSecond,\n // bu:doc.programBu,\n programBuId:\n option.value.programBu === \"null\" ? \"\" : option.value.programBu,\n bu:\n option.value.programBuName === \"null\"\n ? \"\"\n : option.value.programBuName,\n programBuSecondId:\n option.value.programBuSecond === \"null\"\n ? \"\"\n : option.value.programBuSecond,\n programBuSecond:\n option.value.programBuSecondName === \"null\"\n ? \"\"\n : option.value.programBuSecondName,\n make: doc.make,\n siOffer: doc.siOffer,\n conflict: doc.conflict,\n orderProtection: doc.orderProtection,\n presale: doc.presale,\n };\n VINarray.push(doc.vinNo);\n parmas.push(param);\n }\n\n claimDocumentMatching.value = {\n dealerCode: option.value.dealerCode,\n offerTypeId: option.value.offerTypeId,\n programId: option.value.programId,\n vinNos: VINarray,\n };\n\n saveDealerClaimApp(parmas).then((res: any): void => {\n if (res.length !== 0) {\n if (res[0].checkStatus === \"提交成功\") {\n setClaimDocumentMatching(claimDocumentMatching.value).then(\n (res: any): void => {\n //console.log(\"保存成功\");\n }\n );\n message.success(\"提交成功,即将跳转\");\n setTimeout(() => {\n router.push({ name: \"Sales Incentive Claim\" });\n }, 1000);\n } else {\n for (let i = 0; i < res.length; i++) {\n for (let j = 0; j < dataSource.value.length; j++) {\n if (res[i].vinNo === dataSource.value[j].vinNo) {\n dataSource.value[j].checkStatus = res[i].checkStatus;\n if (selectTableArray.length !== 0) {\n const index = selectTableArray.indexOf(res[i].vinNo);\n selectTableArray.splice(index, 1);\n }\n continue;\n }\n }\n }\n message.error(\"校验数据中存在错误,请取消选择后重新提交\");\n }\n }\n });\n };\n\n //CR添加,单纯获取数据,并根据传入参数,进行对表格数据复原\n const getTableDataCheckArray = (array: Array | null) => {\n const param = {\n dealerCode: option.value.dealerCode,\n modelName: screeningConditionsTemporary.modelName,\n modelYear: \"\",\n offerTypeKey: option.value.offerTypePathKey,\n // offerTypeKey:\"Overall\",\n programId: option.value.programId,\n retailBegin: \"\",\n retailEnd: \"\",\n supportType: option.value.offerTypeId,\n vin: screeningConditionsTemporary.vinNo,\n wholesaleBegin: \"\",\n wholesaleEnd: \"\",\n };\n\n if (screeningConditionsTemporary.retailDate.length > 0) {\n param.retailBegin = screeningConditionsTemporary.retailDate[0];\n param.retailEnd = screeningConditionsTemporary.retailDate[1];\n } else {\n if (option.value.projectType === \"零售日期\") {\n param.retailBegin = option.value.retailBegin;\n param.retailEnd = option.value.retailEnd;\n }\n }\n\n if (screeningConditionsTemporary.saleDate.length > 0) {\n param.wholesaleBegin = screeningConditionsTemporary.saleDate[0];\n param.wholesaleEnd = screeningConditionsTemporary.saleDate[1];\n } else {\n if (option.value.projectType === \"批售日期\") {\n param.wholesaleBegin = option.value.submissionDateFrom;\n param.wholesaleEnd = option.value.submissionDateTo;\n }\n }\n\n getVINTableData(param).then((data: any): void => {\n //console.log(data);\n const scoreMap = data.reduce((obj: any, cur: any) => {\n obj[cur.vinNo] = cur;\n return obj;\n }, Object.create(null));\n const oldArray = [];\n stepTableArray.value = [];\n if (array && array.length > 0 && array.length !== data.length) {\n for (let i = 0; i < array.length; i++) {\n oldArray.push(scoreMap[array[i]]);\n stepTableArray.value.push(array[i]);\n }\n dataSource.value = oldArray;\n } else {\n dataSource.value = data;\n }\n dataCount.value = dataSource.value.length;\n });\n };\n const selectTabs = ref(0);\n const preStep = () => {\n //上一步按钮\n\n // stepNum.value = 1;\n // currentStep.value = 0;\n //console.log(currentStep.value);\n if (currentStep.value === 0 || stepArray.value.length === 0) {\n //需要跳转到2797\n ctx.emit(\"pre-page\", selectTabs.value);\n } else {\n //跳转到上一步\n const preName = stepArray.value[currentStep.value - 1];\n debugger;\n let array = null;\n if (preName === \"填写扩展信息\") {\n goDoc();\n } else {\n goSupport();\n array = stepTableArraySupport.value;\n }\n\n getTableDataCheckArray(array);\n }\n };\n\n const nextStep = async () => {\n // debugger\n //从2275 -> 2276\n if (stepArray.value.length === 3 && currentStep.value === 0) {\n const sign = await checkDoc();\n\n if (sign) {\n syncStepTableArray();\n goSupport();\n }\n return;\n }\n //从2276 -> 2277\n if (stepArray.value.length === 3 && currentStep.value === 1) {\n const sign = checkSupport();\n if (sign) {\n syncStepTableArray();\n nextButtonText.value = \"提交\";\n goSubmit();\n }\n\n return;\n }\n //从 2275 - > 2277 ,2276 -> 2277\n if (stepArray.value.length === 2 && currentStep.value === 0) {\n if (stepArray.value[0] === \"填写扩展信息\") {\n const sign = await checkDoc();\n\n if (sign) {\n syncStepTableArray();\n goSubmit();\n }\n } else {\n const sign = checkSupport();\n if (sign) {\n syncStepTableArray();\n nextButtonText.value = \"提交\";\n goSubmit();\n }\n }\n\n return;\n }\n //2277 -> 提交功能\n if (stepArray.value.length === 3 && currentStep.value === 2) {\n //提交\n onSubmit();\n }\n //2277 -> 提交功能\n if (stepArray.value.length === 2 && currentStep.value === 1) {\n //提交\n onSubmit();\n }\n //2277 -> 提交功能\n if (stepArray.value.length === 1 && currentStep.value === 0) {\n //提交\n onSubmit();\n }\n if (stepArray.value.length === 0) {\n //提交\n onSubmit();\n }\n };\n\n //重置查询条件方法\n const clearScreeningConditions = () => {\n screeningConditions.vinNo = null;\n screeningConditions.modelName = null;\n screeningConditions.retailDate = [];\n screeningConditions.saleDate = [];\n screeningConditions.vinNoList = [];\n\n screeningConditionsTemporary.vinNo = null;\n screeningConditionsTemporary.modelName = null;\n screeningConditionsTemporary.retailDate = [];\n screeningConditionsTemporary.saleDate = [];\n screeningConditionsTemporary.vinNoList = [];\n };\n\n let hasDoc = false;\n let hasSupport = false;\n\n //获取表格数据\n const getTableData = () => {\n supportDocSign.value = false;\n hasDoc = false;\n hasSupport = false;\n // screeningConditionsTemporary\n screeningConditionsTemporary.vinNo = screeningConditions.vinNo;\n screeningConditionsTemporary.modelName = screeningConditions.modelName;\n screeningConditionsTemporary.retailDate = screeningConditions.retailDate;\n screeningConditionsTemporary.saleDate = screeningConditions.saleDate;\n screeningConditionsTemporary.vinNoList = screeningConditions.vinNoList;\n // console.log(screeningConditionsTemporary.retailDate);\n // console.log(screeningConditionsTemporary.saleDate);\n // let retailBeginT = \"\";\n // let retailEndT = \"\";\n // let wholesaleBegiT = \"\";\n // let wholesaleEndT = \"\";\n // if (screeningConditionsTemporary.retailDate === []){\n // retailBeginT = screeningConditionsTemporary.retailDate[0];\n // retailEndT = screeningConditionsTemporary.retailDate[1];\n // } else {\n // // retailBeginT = option.value.startTimeRetail;\n // // retailEndT = option.value.endTimeRetail;\n // retailBeginT = \"\";\n // retailEndT = \"\";\n // }\n\n // if (screeningConditionsTemporary.saleDate === []){\n // wholesaleBegiT = screeningConditionsTemporary.saleDate[0];\n // wholesaleEndT = screeningConditionsTemporary.saleDate[1];\n // } else {\n // wholesaleBegiT = \"\";\n // wholesaleEndT = \"\";\n // }\n\n // const param = {\n // supportType: option.value.offerTypeId,\n // programId: option.value.programId,\n // retailBegin: retailBeginT,\n // retailEnd: retailEndT,\n // dealerCode: option.value.dealerCode,\n // vin: screeningConditionsTemporary.vinNo,\n // wholesaleBegin: wholesaleBegiT,\n // wholesaleEnd: wholesaleEndT\n // };\n\n // option.value.dealerCode = \"193120320\";\n // option.value.programId =\"6f12d388-79d8-4c48-a9be-dad0d7a9ef0e\"\n // option.value.offerTypeKey = \"overall\"\n const param = {\n dealerCode: option.value.dealerCode,\n modelName: screeningConditionsTemporary.modelName,\n modelYear: \"\",\n offerTypeKey: option.value.offerTypePathKey,\n // offerTypeKey:\"Overall\",\n programId: option.value.programId,\n retailBegin: \"\",\n retailEnd: \"\",\n supportType: option.value.offerTypeId,\n vin:\n screeningConditionsTemporary.vinNoList.length >= 1 &&\n screeningConditionsTemporary.vinNoList[0] !== \"\"\n ? \"\"\n : screeningConditionsTemporary.vinNo,\n vinNoList:\n screeningConditionsTemporary.vinNoList.length === 1 &&\n screeningConditionsTemporary.vinNoList[0] === \"\"\n ? []\n : screeningConditionsTemporary.vinNoList,\n wholesaleBegin: \"\",\n wholesaleEnd: \"\",\n };\n //console.log(option);\n if (screeningConditionsTemporary.retailDate.length > 0) {\n param.retailBegin = screeningConditionsTemporary.retailDate[0];\n param.retailEnd = screeningConditionsTemporary.retailDate[1];\n } else {\n if (option.value.projectType === \"零售日期\") {\n param.retailBegin = option.value.retailBegin;\n param.retailEnd = option.value.retailEnd;\n }\n }\n\n if (screeningConditionsTemporary.saleDate.length > 0) {\n param.wholesaleBegin = screeningConditionsTemporary.saleDate[0];\n param.wholesaleEnd = screeningConditionsTemporary.saleDate[1];\n } else {\n if (option.value.projectType === \"批售日期\") {\n param.wholesaleBegin = option.value.retailBegin;\n param.wholesaleEnd = option.value.retailEnd;\n }\n }\n\n getVINTableData(param).then((data: any): void => {\n if (data.length === 0) {\n message.error(\"未查询到数据\");\n dataSource.value = [];\n return;\n }\n\n // if (isFirst){\n // scoreMap.value = data.reduce((obj: any, cur: any) => {\n // obj[cur.vinNo] = cur;\n // return obj;\n // }, Object.create(null));\n // console.log(scoreMap.value)\n // isFirst = false;\n // }\n\n //用于筛选每次步骤剩余的table的条目\n if (stepTableArray.value.length !== 0) {\n const scoreMap = data.reduce((obj: any, cur: any) => {\n obj[cur.vinNo] = cur;\n return obj;\n }, Object.create(null));\n const temporary = [];\n for (let i = 0; i < stepTableArray.value.length; i++) {\n if (scoreMap[stepTableArray.value[i]]) {\n temporary.push(scoreMap[stepTableArray.value[i]]);\n }\n }\n\n dataSource.value = temporary;\n } else {\n dataSource.value = data;\n }\n\n dataCount.value = dataSource.value.length;\n\n //用于判断支持文档的长度\n for (let i = 0; i < dataSource.value.length; i++) {\n const data = dataSource.value[i];\n let strLength = 0;\n for (let j = 0; j < data.supportDocVOS.length; j++) {\n strLength =\n strLength + data.supportDocVOS[j].supportDocName.length + 2;\n supportDocSign.value = true;\n }\n\n if (strLength * 15 > supportDocVosLength.value) {\n supportDocVosLength.value = strLength * 15;\n }\n }\n //步骤条\n stepArray.value = [];\n\n //判断是否显示填写扩展信息\n if (\n data.length > 0 &&\n data[0].extendedInfo &&\n data[0].extendedInfo.length > 0\n ) {\n stepArray.value.push(\"填写扩展信息\");\n hasDoc = true;\n }\n //判断是否显示提交支持文档\n if (supportDocSign.value) {\n stepArray.value.push(\"提交支持文档\");\n hasSupport = true;\n }\n\n //添加提交\n if (\n (data.length > 0 &&\n data[0].extendedInfo &&\n data[0].extendedInfo.length > 0) ||\n supportDocSign.value\n ) {\n stepArray.value.push(\"提交\");\n } else {\n noStep.value = true;\n }\n //重置复选框\n selectTableArray.splice(0, selectTableArray.length);\n changeSelect(0);\n\n //对没有扩展信息和支持文档的情况,之际进行跳转\n if (!hasDoc) {\n if (!hasSupport) {\n goSubmit();\n return;\n } else {\n goSupport();\n return;\n }\n }\n });\n };\n\n const modalColumns = ref([\n {\n title: \"项目编号\",\n dataIndex: \"programeCode\",\n key: \"programeCode\",\n width: 150,\n },\n {\n title: \"项目类型\",\n dataIndex: \"categoryName\",\n key: \"categoryName\",\n width: 170,\n },\n {\n title: \"客户政策预估金额\",\n dataIndex: \"customerPolicyEstimatedAmount\",\n key: \"customerPolicyEstimatedAmount\",\n width: 170,\n },\n {\n title: \"状态\",\n dataIndex: \"checkStatus\",\n key: \"checkStatus\",\n width: 170,\n },\n ]);\n\n // 一级BU是否为CPO\n const isCPO = ref(false);\n\n //初始化事件\n const init = (item: any, select: number) => {\n selectTabs.value = select;\n option.value = item;\n categoryName.value = option.value.categoryName;\n\n getBuTreeList().then((buTree) => {\n const firstLevelBU = getFirstLevelBU(\n buTree as any as BuTreeProps[],\n option.value.programBuName\n );\n if (firstLevelBU?.nameEn === \"CPO\") {\n isCPO.value = true;\n }\n });\n\n if (option.value.incentiveCategory !== \"Customer Incentive\") {\n columns.value = columnsValue2;\n modalColumns.value = [\n {\n title: \"项目编号\",\n dataIndex: \"programeCode\",\n key: \"programeCode\",\n width: 150,\n },\n {\n title: \"项目类型\",\n dataIndex: \"categoryName\",\n key: \"categoryName\",\n width: 170,\n },\n {\n title: \"状态\",\n dataIndex: \"checkStatus\",\n key: \"checkStatus\",\n width: 170,\n },\n ];\n }\n\n getTableData();\n };\n\n //下载扩展信息文档\n const downloadExtendInfo = () => {\n const vinClaimConflict: any[] = [];\n\n if (selectTableArray.length === 0) {\n dataSource.value.forEach((item) => {\n if (item.checkStatus.trim().length <= 0) {\n vinClaimConflict.push({\n conflict: item.conflict,\n vinNo: item.vinNo,\n });\n }\n });\n } else {\n // vinNoArray = vinNoArray.concat(selectTableArray);\n for (let i = 0; i < selectTableArray.length; i++) {\n const vinNo = selectTableArray[i];\n for (let j = 0; j < dataSource.value.length; j++) {\n if (vinNo === dataSource.value[j].vinNo) {\n vinClaimConflict.push({\n conflict: dataSource.value[j].conflict,\n vinNo: dataSource.value[j].vinNo,\n });\n continue;\n }\n }\n }\n }\n const downloadParams = {\n progId: option.value.programId,\n vinClaimConflict: vinClaimConflict,\n offerTypeId: option.value.categoryID,\n dealerCode: option.value.dealerCode,\n offerTypeKey: option.value.offerTypeKey,\n };\n\n const params = {\n url: `/claimapi/dealer/extend/templateDownload`,\n method: \"post\",\n params: downloadParams,\n fileName: `模板.xlsx`,\n };\n downloadExtendInfoApi(params);\n };\n\n //显示填写扩展信息的抽屉\n const showFill = (item: DealerVINList) => {\n if (extendActive.value === false) {\n return;\n }\n\n let sign = true;\n if (extendActiveTitle.value === true) {\n sign = false;\n }\n\n if (item.checkStatus === \"已申报\") {\n sign = true;\n }\n\n extendInfoDom.value.editExtend(\n option.value.programId,\n item,\n option.value.offerTypeId,\n sign,\n option.value.dealerCode\n );\n };\n //显示批量上传扩展信息抽屉\n const showUploadDrawer = () => {\n uploadInfoDom.value.showDrawer({\n prodId: option.value.programId,\n offerTypeId: option.value.offerTypeId,\n offerTypeKey: option.value.offerTypeKey,\n dealerCode: option.value.dealerCode,\n });\n };\n //显示模板样例\n const showExample = (item: any) => {\n supportExample.value.showDrawer(item);\n };\n //根据参数显示上传文档抽屉\n const showUploadSupport = (\n data: any,\n message: any,\n isMultiple: boolean,\n isOnlyRead: boolean\n ) => {\n let title = \"上传文档\";\n if (isOnlyRead) {\n title = \"文档预览\";\n }\n\n // const vinNos = ref([]);\n // if (stepTableArray.value.length !== 0){\n // vinNos.value = stepTableArray.value;\n // } else {\n // for (let i=0;i {\n const param = {\n vinNo: record.vinNo,\n programId: option.value.programId,\n offerTypeId: option.value.offerTypeId,\n dealerCode: option.value.dealerCode,\n offerTypeKey: option.value.offerTypeKey,\n index: index,\n };\n\n supportReview(param).then((data: any): void => {\n //返回的数据,各类必须参数,是否是多选,是否只读,\n\n const filterData: Array = [];\n\n for (let i = 0; i < data.length; i++) {\n if (data[i].tabName.length > 0) {\n filterData.push(data[i]);\n }\n }\n\n const obj = Object.assign(\n {\n retailBegin: option.value.retailBegin,\n endTimeRetail: option.value.retailEnd,\n },\n param\n );\n\n showUploadSupport(filterData, obj, false, isOnlyRead);\n });\n };\n\n //预览上传文档\n const showSupportPic = (record: any, index: number) => {\n if (\n supportActive.value === true &&\n record.supportDocVOS[index].supportDocFilePath !== null &&\n record.supportDocVOS[index].supportDocFilePath.length > 0\n ) {\n uploadSingleSupport(record, index, true);\n }\n };\n\n //批量上传支持文档\n const showUploadSupportDrawer = () => {\n const param = {\n vinNo: \"\",\n programId: option.value.programId,\n offerTypeId: option.value.offerTypeId,\n dealerCode: option.value.dealerCode,\n offerTypeKey: option.value.offerTypeKey,\n index: 0,\n };\n supportReview(param).then((data: any): void => {\n const obj = Object.assign(\n {\n retailBegin: option.value.retailBegin,\n endTimeRetail: option.value.retailEnd,\n },\n param\n );\n\n showUploadSupport(data, obj, true, false);\n });\n };\n\n const modalVisible = ref(false);\n const modalTitle = ref(\"\");\n const modalDataSource = ref([]);\n\n //显示检查状态\n const showCheckStatus = (record: any) => {\n if (\n record.checkStatus === \"兼容性校验不通过\" &&\n record.declarationIncompatibleList.length > 0\n ) {\n // if (record.checkStatus !== '兼容性校验不通过'){\n modalVisible.value = true;\n modalTitle.value = \"车架号:\" + record.vinNo;\n modalDataSource.value = [\n {\n checkStatus: record.declarationIncompatibleList[0].status,\n customerPolicyEstimatedAmount:\n record.declarationIncompatibleList[0]\n .customerPolicyEstimatedAmount,\n programeCode: record.declarationIncompatibleList[0].programCode,\n categoryName: record.declarationIncompatibleList[0].offerTypeNameCn,\n },\n ];\n }\n };\n\n onMounted(() => {\n // stepArray.value = ['步骤1','步骤2','步骤3']\n });\n\n const disabledWholelDate = (current: Moment) => {\n if (option.value.projectType !== \"零售日期\") {\n return (\n current < moment(option.value.retailBegin + \" 00:00:00\") ||\n current > moment(option.value.retailEnd + \" 23:59:59\")\n );\n } else {\n return false;\n }\n };\n\n const disabledRetailDate = (current: Moment) => {\n if (option.value.projectType === \"零售日期\") {\n return (\n current < moment(option.value.retailBegin + \" 00:00:00\") ||\n current > moment(option.value.retailEnd + \" 23:59:59\")\n );\n } else {\n return false;\n }\n };\n const exportTable = () => {\n const array = [];\n for (let i = 0; i < dataSource.value.length; i++) {\n array.push(dataSource.value[i].vinNo);\n }\n const param = {\n dealerCode: option.value.dealerCode,\n modelName: screeningConditionsTemporary.modelName,\n modelYear: \"\",\n offerTypeKey: option.value.offerTypePathKey,\n programId: option.value.programId,\n retailBegin: \"\",\n retailEnd: \"\",\n supportType: option.value.offerTypeId,\n vin: \"\",\n vinNoList: array,\n wholesaleBegin: \"\",\n wholesaleEnd: \"\",\n };\n\n // const param ={\n // dealerCode: option.value.dealerCode,\n // modelName: screeningConditionsTemporary.modelName,\n // modelYear: \"\",\n // offerTypeKey: option.value.offerTypePathKey,\n // programId: option.value.programId,\n // retailBegin: \"\",\n // retailEnd: \"\",\n // supportType: option.value.offerTypeId,\n // vin: (screeningConditionsTemporary.vinNoList.length>=1 && (screeningConditionsTemporary.vinNoList[0] !== \"\"))?'':screeningConditionsTemporary.vinNo,\n // vinNoList: (screeningConditionsTemporary.vinNoList.length === 1 && (screeningConditionsTemporary.vinNoList[0] === \"\"))?[]:screeningConditionsTemporary.vinNoList,\n // wholesaleBegin: \"\",\n // wholesaleEnd: \"\"\n // }\n // if (screeningConditionsTemporary.retailDate.length>0){\n // param.retailBegin = screeningConditionsTemporary.retailDate[0];\n // param.retailEnd = screeningConditionsTemporary.retailDate[1];\n // } else {\n // if (option.value.projectType === '零售日期'){\n // param.retailBegin = option.value.retailBegin;\n // param.retailEnd = option.value.retailEnd;\n // }\n // }\n\n // if (screeningConditionsTemporary.saleDate.length>0){\n // param.wholesaleBegin = screeningConditionsTemporary.saleDate[0];\n // param.wholesaleEnd = screeningConditionsTemporary.saleDate[1];\n\n // } else {\n // if (option.value.projectType === '批售日期'){\n // param.wholesaleBegin = option.value.submissionDateFrom;\n // param.wholesaleEnd = option.value.submissionDateTo;\n // }\n // }\n\n // console.log(param)\n const par = {\n url: `/claimapi/salesIncentiveClaim/export`,\n method: \"post\",\n params: param,\n };\n downloadFile(par, \"application/vnd-excel; char-set=UTF-8\").then((res) => {\n //console.log(res);\n });\n };\n // 批量查询\n const batchQuery = reactive({\n batchQueryTitle: \"VIN码查询\",\n batchQueryModal: false,\n batchQueryListTitle: \"VIN码列表\",\n });\n //Modal的输入框\n const textContentNo = ref(\"\");\n //输入框,用于控制焦点\n const input = ref();\n //显示的VIN数组\n const textNoArray = ref([]);\n //空占位\n const batchPlaceholder = ref([\"\", \"\", \"\", \"\", \"\", \"\"]);\n const cleanEmptyEleArray = (array: Array) => {\n if (array.length > 1) {\n const tempArray = array.filter((item) => item !== \"\");\n tempArray.length || tempArray.push(\"\");\n return tempArray;\n } else {\n return array;\n }\n };\n // 关闭批量查询Modal\n const closeBatchQueryModal = () => {\n screeningConditions.vinNo = cleanEmptyEleArray(\n screeningConditions.vinNoList\n )[0] as string;\n };\n // 设置批量查询modal 的 占位div\n const setBatchPlaceholder = () => {\n if (textNoArray.value.length) {\n batchPlaceholder.value = [];\n } else {\n batchPlaceholder.value = [\"\", \"\", \"\", \"\", \"\", \"\"];\n }\n };\n // 批量文本内容\n const textChangEvent = () => {\n if (textContentNo.value.length < 5) {\n message.error(\"请从Excel中粘贴复制查询\");\n textContentNo.value = \"\";\n return;\n }\n textNoArray.value = textNoArray.value.concat(\n textContentNo.value.replace(/\\r|\\n|\\s/g, \",\").split(\",\")\n );\n const dom = document.getElementsByClassName(\"list-content\")[0];\n textContentNo.value = \"\";\n screeningConditions.vinNoList = [];\n screeningConditions.vinNoList = screeningConditions.vinNoList.concat(\n textNoArray.value\n );\n setBatchPlaceholder();\n nextTick(() => {\n dom.scrollTo(0, dom.scrollHeight + 40);\n input.value.focus();\n });\n };\n\n // 批量查询按钮事件\n const batchQueryEvent = () => {\n batchQuery.batchQueryModal = true;\n textNoArray.value =\n cleanEmptyEleArray(screeningConditions.vinNoList)[0] === \"\"\n ? []\n : cleanEmptyEleArray(screeningConditions.vinNoList);\n setBatchPlaceholder();\n const dom = document.getElementsByClassName(\"list-content\")[0];\n nextTick(() => {\n dom && dom.scrollTo(0, textNoArray.value.length * 36);\n input.value.focus();\n });\n };\n // 清除批量查询\n const clearBatchQuery = () => {\n screeningConditions.vinNoList = [\"\"];\n textNoArray.value =\n cleanEmptyEleArray(screeningConditions.vinNoList)[0] === \"\"\n ? []\n : cleanEmptyEleArray(screeningConditions.vinNoList);\n setBatchPlaceholder();\n screeningConditions.vinNo = null;\n input.value.focus();\n };\n\n const exportError = () => {\n const params = {\n url: `/claimapi/salesIncentiveClaim/export/error/message`,\n method: \"post\",\n params: errorArray,\n fileName: `模板.xlsx`,\n };\n downloadExtendInfoApi(params);\n errorModalVisible.value = false;\n };\n\n const jumpToUploadUsedCarPage = () => {\n Modal.confirm({\n title: h(\n \"span\",\n { style: { fontWeight: \"bold\", color: \"#838383\" } },\n \"页面跳转\"\n ),\n content: h(\"p\", {}, [\n \"置换及CPO销售的支持文档需至\",\n h(\"span\", { style: { color: \"#00ADEF\" } }, \"二手车文件模块\"),\n \"进行提交,请确认是否跳转至该模块?\",\n ]),\n okText: \"确认\",\n cancelText: \"取消\",\n onOk() {\n window.open(\"/#/UploadUsedCarPage?type=1\", \"_blank\");\n },\n });\n };\n\n return {\n errorModalVisible,\n exportError,\n errorDataSource,\n errorColumns,\n clearBatchQuery,\n batchQueryEvent,\n textContentNo,\n input,\n closeBatchQueryModal,\n ...toRefs(batchQuery),\n textNoArray,\n textChangEvent,\n batchPlaceholder,\n dataCount,\n preStep,\n exportTable,\n disabledRetailDate,\n disabledWholelDate,\n modalVisible,\n modalTitle,\n modalDataSource,\n modalColumns,\n extendInfoDom,\n uploadInfoDom,\n supportExample,\n showUploadSupportDrawer,\n uploadSupportDom,\n showCheckStatus,\n extendActive,\n extendActiveTitle,\n supportActive,\n supportActiveTitle,\n supportSample,\n categoryName,\n nextButtonText,\n screeningConditions,\n currentStep,\n stepArray,\n stepNum,\n tableHeight,\n dataSource,\n columns,\n stepTableArray,\n indeterminate,\n checkAll,\n activeOperation,\n nextStep,\n init,\n clearScreeningConditions,\n getTableData,\n downloadExtendInfo,\n checkChange,\n onCheckAllChange,\n showFill,\n showUploadDrawer,\n showExample,\n showSupportPic,\n uploadSingleSupport,\n proveText,\n manager,\n isCPO,\n jumpToUploadUsedCarPage,\n };\n },\n});\n","import { render } from \"./index.vue?vue&type=template&id=3f9e3854&scoped=true&ts=true\"\nimport script from \"./index.vue?vue&type=script&lang=ts\"\nexport * from \"./index.vue?vue&type=script&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=3f9e3854&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-3f9e3854\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createVNode as _createVNode, normalizeClass as _normalizeClass, normalizeStyle as _normalizeStyle, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-45869046\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { style: {\"background\":\"#FFFFFF\",\"height\":\"100%\",\"width\":\"100%\"} }\nconst _hoisted_2 = { class: \"top\" }\nconst _hoisted_3 = { style: {\"float\":\"left\",\"padding-left\":\"5px\"} }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { style: {\"color\":\"#333333\",\"font-size\":\"12px\"} }, \"文档样例查看:\", -1))\nconst _hoisted_5 = [\"onClick\"]\nconst _hoisted_6 = {\n key: 2,\n style: {\"cursor\":\"no-drop\"}\n}\nconst _hoisted_7 = {\n class: \"various-button\",\n style: {\"float\":\"right\",\"padding-right\":\"5px\"}\n}\nconst _hoisted_8 = /*#__PURE__*/_createTextVNode(\"下载扩展信息模板\")\nconst _hoisted_9 = /*#__PURE__*/_createTextVNode(\"批量上传扩展信息\")\nconst _hoisted_10 = /*#__PURE__*/_createTextVNode(\"批量上传文档\")\nconst _hoisted_11 = /*#__PURE__*/_createTextVNode(\"新增\")\nconst _hoisted_12 = { class: \"table\" }\nconst _hoisted_13 = [\"onClick\"]\nconst _hoisted_14 = [\"onClick\"]\nconst _hoisted_15 = [\"onClick\"]\nconst _hoisted_16 = { style: {\"position\":\"absolute\",\"width\":\"calc(100% - 8px)\",\"background\":\"white\",\"height\":\"39px\",\"bottom\":\"0px\",\"border-top\":\"1px solid #D3D3D3\"} }\nconst _hoisted_17 = /*#__PURE__*/_createTextVNode(\" 提交 \")\nconst _hoisted_18 = /*#__PURE__*/_createTextVNode(\" 上一步 \")\nconst _hoisted_19 = { style: {\"width\":\"100%\"} }\nconst _hoisted_20 = [\"src\"]\nconst _hoisted_21 = { class: \"bottomButton\" }\nconst _hoisted_22 = /*#__PURE__*/_createTextVNode(\"Close\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_a_divider = _resolveComponent(\"a-divider\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_space = _resolveComponent(\"a-space\")!\n const _component_a_table = _resolveComponent(\"a-table\")!\n const _component_ExtendInformation = _resolveComponent(\"ExtendInformation\")!\n const _component_supportExample = _resolveComponent(\"supportExample\")!\n const _component_a_image = _resolveComponent(\"a-image\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n const _component_UploadSupport = _resolveComponent(\"UploadSupport\")!\n const _component_UploadInformation = _resolveComponent(\"UploadInformation\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.supportSample, (item, index) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n key: item.docId\n }, [\n (index !== 0)\n ? (_openBlock(), _createBlock(_component_a_divider, {\n key: 0,\n type: \"vertical\"\n }))\n : _createCommentVNode(\"\", true),\n (\n item.filePath !== null &&\n item.filePath !== '' &&\n item.filePath.length > 0\n )\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n onClick: ($event: any) => (_ctx.showExample(item)),\n style: {\"color\":\"#00adef\",\"cursor\":\"pointer\",\"font-size\":\"12px\"}\n }, _toDisplayString(item.docName), 9, _hoisted_5))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_6, _toDisplayString(item.docName), 1))\n ]))\n }), 128))\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createVNode(_component_a_space, { size: 15 }, {\n default: _withCtx(() => [\n _createVNode(_component_a_button, {\n style: {\"font-size\":\"12px\"},\n disabled: _ctx.noDoc,\n onClick: _ctx.dowloadDoc\n }, {\n default: _withCtx(() => [\n _hoisted_8\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"]),\n _createVNode(_component_a_button, {\n style: {\"font-size\":\"12px\"},\n disabled: _ctx.noDoc,\n onClick: _ctx.showUploadDrawer\n }, {\n default: _withCtx(() => [\n _hoisted_9\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"]),\n _createVNode(_component_a_button, {\n style: {\"font-size\":\"12px\"},\n disabled: _ctx.noDoc === true ? true : _ctx.isSupport,\n onClick: _ctx.uploadSupportDraw\n }, {\n default: _withCtx(() => [\n _hoisted_10\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"]),\n _createVNode(_component_a_button, {\n style: {\"font-size\":\"12px\"},\n onClick: _ctx.addExtendInformation,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_11\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n })\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_12, [\n _createVNode(_component_a_table, {\n dataSource: _ctx.dataSource,\n columns: _ctx.columns,\n class: \"ant-table-striped\",\n scroll: { x: _ctx.tableWidth, y: _ctx.tableHeight },\n pagination: false,\n rowKey: (record) => record.id\n }, {\n supportDoc: _withCtx(({ record }) => [\n _createElementVNode(\"span\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(record.supportDoc, (item, index) => {\n return (_openBlock(), _createElementBlock(\"span\", { key: index }, [\n (index !== 0)\n ? (_openBlock(), _createBlock(_component_a_divider, {\n key: 0,\n type: \"vertical\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"span\", {\n onClick: ($event: any) => (_ctx.showSupport(item, record)),\n class: _normalizeClass([\n item.filePath != null &&\n item.filePath.length > 0\n ? 'activeDoc'\n : 'unactiveDoc',\n ])\n }, _toDisplayString(item.docName), 11, _hoisted_13)\n ]))\n }), 128))\n ])\n ]),\n action: _withCtx(({ record }) => [\n _createElementVNode(\"span\", null, [\n _createElementVNode(\"a\", {\n style: {\"color\":\"#00adef\"},\n onClick: ($event: any) => (_ctx.editTable(record))\n }, \"编辑\", 8, _hoisted_14),\n _createVNode(_component_a_divider, { type: \"vertical\" }),\n _createElementVNode(\"a\", {\n style: {\"color\":\"#767676\"},\n onClick: ($event: any) => (_ctx.deleteTable(record))\n }, \"删除\", 8, _hoisted_15)\n ])\n ]),\n _: 1\n }, 8, [\"dataSource\", \"columns\", \"scroll\", \"rowKey\"])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_16, [\n _createVNode(_component_a_button, {\n style: {\"float\":\"right\",\"margin-top\":\"3px\",\"margin-right\":\"5px\",\"padding\":\"0px 20px\"},\n type: \"primary\",\n onClick: _ctx.nextStep\n }, {\n default: _withCtx(() => [\n _hoisted_17\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_a_button, {\n style: {\"float\":\"right\",\"margin-top\":\"3px\",\"margin-right\":\"5px\",\"padding\":\"0px 20px\"},\n type: \"primary\",\n onClick: _ctx.preStep\n }, {\n default: _withCtx(() => [\n _hoisted_18\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _createVNode(_component_ExtendInformation, {\n onFreshTable: _ctx.getTableData,\n ref: \"extendInformationDom\"\n }, null, 8, [\"onFreshTable\"]),\n _createVNode(_component_supportExample, { ref: \"supportExample\" }, null, 512),\n _createVNode(_component_a_drawer, {\n title: \"查看支持文档\",\n placement: \"right\",\n closable: true,\n width: \"488px\",\n visible: _ctx.visible,\n \"body-style\": { paddingBottom: '40px' },\n onClose: _ctx.closeDrawer\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_19, [\n (_ctx.type === 'pdf')\n ? (_openBlock(), _createElementBlock(\"iframe\", {\n key: 0,\n src: _ctx.base64code,\n frameborder: \"0\",\n class: \"pdf\",\n style: _normalizeStyle({ height: _ctx.pdfHeight + 'px' })\n }, null, 12, _hoisted_20))\n : _createCommentVNode(\"\", true),\n (_ctx.type === 'jpg')\n ? (_openBlock(), _createBlock(_component_a_image, {\n key: 1,\n style: {\"width\":\"100%\"},\n src: _ctx.base64code\n }, null, 8, [\"src\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createVNode(_component_a_button, {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.visible = false)),\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_22\n ]),\n _: 1\n })\n ])\n ]),\n _: 1\n }, 8, [\"visible\", \"onClose\"]),\n _createVNode(_component_UploadSupport, {\n onFreshTable: _ctx.getTableData,\n ref: \"uploadSupport\"\n }, null, 8, [\"onFreshTable\"]),\n _createVNode(_component_UploadInformation, {\n onFreshTable: _ctx.getTableData,\n ref: \"uploadInformation\"\n }, null, 8, [\"onFreshTable\"])\n ], 64))\n}","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, vShow as _vShow, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createVNode as _createVNode, normalizeStyle as _normalizeStyle, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/rv/upload.svg'\nimport _imports_1 from '@/assets/images/claim/upload.svg'\nimport _imports_2 from '@/assets/images/rv/complete.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-50a4b4ca\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { style: {\"margin-bottom\":\"80px\"} }\nconst _hoisted_2 = { style: {\"color\":\"#767676\",\"font-size\":\"14px\"} }\nconst _hoisted_3 = /*#__PURE__*/_createTextVNode(\"文档命名规则:\")\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { style: {\"color\":\"#333333\"} }, \"无要求\", -1))\nconst _hoisted_5 = [\n _hoisted_3,\n _hoisted_4\n]\nconst _hoisted_6 = { key: 0 }\nconst _hoisted_7 = { key: 0 }\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 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { class: \"ant-upload-text\" }, [\n /*#__PURE__*/_createTextVNode(\"拖拽文件到此处或点击\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"blueFont\" }, \"浏览文件\")\n], -1))\nconst _hoisted_10 = { key: 1 }\nconst _hoisted_11 = { class: \"uploadH uploadProgressCon\" }\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 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_2,\n class: \"completeIcon\"\n}, null, -1))\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { style: {\"color\":\"#00adef\",\"padding-top\":\"2px\"} }, \"100%完成\", -1))\nconst _hoisted_22 = [\n _hoisted_20,\n _hoisted_21\n]\nconst _hoisted_23 = { key: 1 }\nconst _hoisted_24 = { class: \"filePro fileSize\" }\nconst _hoisted_25 = {\n key: 0,\n class: \"resultCon\"\n}\nconst _hoisted_26 = /*#__PURE__*/_createTextVNode(\"重新上传\")\nconst _hoisted_27 = {\n key: 1,\n class: \"resultCon\"\n}\nconst _hoisted_28 = /*#__PURE__*/_createTextVNode(\"上传\")\nconst _hoisted_29 = {\n key: 1,\n style: {\"margin-top\":\"5px\"}\n}\nconst _hoisted_30 = [\"src\"]\nconst _hoisted_31 = { style: {\"height\":\"25px\"} }\nconst _hoisted_32 = [\"onClick\"]\nconst _hoisted_33 = { style: {\n position: 'absolute',\n right: 0,\n bottom: 0,\n width: '100%',\n borderTop: '1px solid #e9e9e9',\n padding: '10px 16px',\n background: '#fff',\n textAlign: 'right',\n zIndex: 1\n } }\nconst _hoisted_34 = /*#__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_date_picker = _resolveComponent(\"a-date-picker\")!\n const _component_a_select_option = _resolveComponent(\"a-select-option\")!\n const _component_a_select = _resolveComponent(\"a-select\")!\n const _component_a_form_item = _resolveComponent(\"a-form-item\")!\n const _component_a_form = _resolveComponent(\"a-form\")!\n const _component_a_upload_dragger = _resolveComponent(\"a-upload-dragger\")!\n const _component_a_progress = _resolveComponent(\"a-progress\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_image = _resolveComponent(\"a-image\")!\n const _component_a_tab_pane = _resolveComponent(\"a-tab-pane\")!\n const _component_a_tabs = _resolveComponent(\"a-tabs\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n\n return (_openBlock(), _createBlock(_component_a_drawer, {\n title: _ctx.title,\n placement: \"right\",\n closable: true,\n width: \"488px\",\n visible: _ctx.visible,\n \"onUpdate:visible\": _cache[1] || (_cache[1] = ($event: any) => ((_ctx.visible) = $event)),\n getContainer: _ctx.spinWrapper\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", null, [\n _createVNode(_component_a_form, {\n style: {\"width\":\"100%\"},\n layout: \"vertical\",\n model: _ctx.formState\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.extendInfoLst, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", { key: index }, [\n _createVNode(_component_a_form_item, {\n required: item.isMandatory,\n style: {\"width\":\"100%\"},\n label: item.fieldNameCn\n }, {\n default: _withCtx(() => [\n (item.fieldType === 'Text')\n ? (_openBlock(), _createBlock(_component_a_input, {\n key: 0,\n placeholder: \"请输入...\",\n value: item.content,\n \"onUpdate:value\": ($event: any) => ((item.content) = $event),\n onBlur: ($event: any) => (_ctx.checkExtend(item)),\n disabled: _ctx.isLock && item.isFileNamingRule\n }, null, 8, [\"value\", \"onUpdate:value\", \"onBlur\", \"disabled\"]))\n : _createCommentVNode(\"\", true),\n (item.fieldType === 'Number')\n ? (_openBlock(), _createBlock(_component_a_input, {\n key: 1,\n onKeydown: _ctx.handleInput,\n placeholder: \"请输入...\",\n value: item.content,\n \"onUpdate:value\": ($event: any) => ((item.content) = $event),\n onBlur: ($event: any) => (_ctx.checkExtend(item)),\n disabled: _ctx.isLock && item.isFileNamingRule\n }, null, 8, [\"onKeydown\", \"value\", \"onUpdate:value\", \"onBlur\", \"disabled\"]))\n : _createCommentVNode(\"\", true),\n (item.fieldType === 'Date')\n ? (_openBlock(), _createBlock(_component_a_date_picker, {\n key: 2,\n value: item.content,\n \"onUpdate:value\": ($event: any) => ((item.content) = $event),\n placeholder: \"请选择时间...\",\n valueFormat: \"YYYY-MM-DD\",\n format: \"YYYY-MM-DD\",\n style: {\"width\":\"100%\"},\n onChange: ($event: any) => (_ctx.checkExtend(item)),\n disabled: _ctx.isLock && item.isFileNamingRule\n }, null, 8, [\"value\", \"onUpdate:value\", \"onChange\", \"disabled\"]))\n : _createCommentVNode(\"\", true),\n (item.fieldType === 'Enumeration')\n ? (_openBlock(), _createBlock(_component_a_select, {\n key: 3,\n value: item.content,\n \"onUpdate:value\": ($event: any) => ((item.content) = $event),\n placeholder: \"请选择...\",\n onBlur: ($event: any) => (_ctx.checkExtend(item)),\n disabled: _ctx.isLock && item.isFileNamingRule\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(item.enumValueList, (selectItem) => {\n return (_openBlock(), _createBlock(_component_a_select_option, {\n value: selectItem,\n key: selectItem\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(selectItem), 1)\n ]),\n _: 2\n }, 1032, [\"value\"]))\n }), 128))\n ]),\n _: 2\n }, 1032, [\"value\", \"onUpdate:value\", \"onBlur\", \"disabled\"]))\n : _createCommentVNode(\"\", true),\n _withDirectives(_createElementVNode(\"span\", { style: {\"color\":\"red\",\"font-size\":\"10px\"} }, _toDisplayString(item.errorMessage), 513), [\n [_vShow, item.error]\n ])\n ]),\n _: 2\n }, 1032, [\"required\", \"label\"])\n ]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"model\"])\n ]),\n _createElementVNode(\"div\", null, [\n _withDirectives(_createElementVNode(\"span\", _hoisted_2, _hoisted_5, 512), [\n [_vShow, _ctx.supportTabs.length > 0]\n ])\n ]),\n _withDirectives(_createElementVNode(\"div\", null, [\n _createVNode(_component_a_tabs, {\n activeKey: _ctx.activeTabs,\n \"onUpdate:activeKey\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.activeTabs) = $event)),\n onChange: _ctx.cutTabs\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.supportTabs, (item, index) => {\n return (_openBlock(), _createBlock(_component_a_tab_pane, {\n key: index + '',\n tab: item.name\n }, {\n default: _withCtx(() => [\n (!item.hasFile)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n (!item.isUpload)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createVNode(_component_a_upload_dragger, {\n name: \"file\",\n multiple: false,\n listType: \"picture-card\",\n showUploadList: false,\n customRequest: _ctx.invoiceCustomRequest,\n \"before-upload\": _ctx.beforeUpload\n }, {\n default: _withCtx(() => [\n _hoisted_8,\n _hoisted_9\n ]),\n _: 1\n }, 8, [\"customRequest\", \"before-upload\"])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_10, [\n _createElementVNode(\"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(item.curUploadFile.name), 1),\n _createVNode(_component_a_progress, {\n strokeColor: \"#00adef\",\n percent: item.invoicePercent,\n status: item.invoiceProStatus,\n \"show-info\": false\n }, null, 8, [\"percent\", \"status\"]),\n _createElementVNode(\"div\", _hoisted_18, [\n (item.invoicePercent == 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, _hoisted_22))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_23, _toDisplayString(item.invoicePercent) + \" %完成\", 1))\n ]),\n _createElementVNode(\"div\", _hoisted_24, _toDisplayString(item.uploadFileSize), 1)\n ])\n ])\n ])\n ])\n ]),\n (item.invoicePercent === 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, [\n _createVNode(_component_a_button, {\n onClick: _ctx.reUpload,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_26\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_27, [\n _createVNode(_component_a_button, {\n onClick: _ctx.uploadFileSingle,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_28\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]))\n ]))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_29, [\n (item.type === 'pdf')\n ? (_openBlock(), _createElementBlock(\"iframe\", {\n key: 0,\n id: \"iframe\",\n src: item.base64code,\n frameborder: \"0\",\n class: \"pdf\",\n style: _normalizeStyle({ height: _ctx.pdfHeight + 'px' })\n }, null, 12, _hoisted_30))\n : _createCommentVNode(\"\", true),\n (item.type === 'jpg')\n ? (_openBlock(), _createBlock(_component_a_image, {\n key: 1,\n style: {\"width\":\"100%\"},\n src: item.base64code\n }, null, 8, [\"src\"]))\n : _createCommentVNode(\"\", true)\n ])),\n _createElementVNode(\"div\", _hoisted_31, [\n (_ctx.isOnlyRead && _ctx.supportTabs[_ctx.activeTabs].hasFile)\n ? (_openBlock(), _createElementBlock(\"i\", {\n key: 0,\n class: \"delete font_family icon-delete1 blue right\",\n style: {\"cursor\":\"pointer\"},\n onClick: ($event: any) => (_ctx.deleteHandle(item))\n }, null, 8, _hoisted_32))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _: 2\n }, 1032, [\"tab\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"activeKey\", \"onChange\"])\n ], 512), [\n [_vShow, _ctx.supportTabs.length > 0]\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_33, [\n _createVNode(_component_a_button, {\n onClick: _ctx.onSave,\n disabled: _ctx.isUploading,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_34\n ]),\n _: 1\n }, 8, [\"onClick\", \"disabled\"])\n ])\n ]),\n _: 1\n }, 8, [\"title\", \"visible\", \"getContainer\"]))\n}","\nimport { defineComponent, ref, computed, UnwrapRef, reactive } from 'vue';\nimport { message, Modal } from 'ant-design-vue';\nimport { FileItem } from '@/API/types';\nimport { getDocView, getDocEdit, dealerSave, rematch, deleteFile } from '@/API/claim/delaerClaim/delaer';\nimport { b64toBlob } from '@/utils/claim/b64toBlob';\nimport axios from 'axios';\ninterface FormState {\n name: string;\n identityCard: string | undefined | null;\n}\n//上传扩展信息共有多少个类型,对应有多少个tabs页\ninterface TabsType {\n key: string; //用于循环的key\n name: string; //用于显示tabs的名称\n id: string; //上传文件的id,若没上传为空\n setupDocId: string; //上传文件的tab页id\n base64code: string; //上传的文件base64\n hasFile: boolean; //是否已经上传了文件,若已经上传,直接显示\n isUpload: boolean; //用于区别与上传和提交的显示\n type: string; //上传文件的类型,用于回显\n filePath: string; //上传文件的文件路径\n curUploadFile: string; //文件名\n fileName: string;\n invoicePercent: number; //进度条\n uploadFileSize: string; //总文件大小\n invoiceProStatus: string; //上传状态\n\n fileType: string;\n fileSize: string;\n documentId: string;\n}\n\n//扩展信息类型\ninterface ExtendInfoLstType {\n content: string; //显示的内容\n defaultValue: string; //默认值\n enumValue: string; //枚举类型,用,分割\n fieldNameCn: string; //字段中文名称\n fieldNameEn: string; //字段英文名称\n fieldType: string; //字段类型,共4个\n id: string;\n isMandatory: boolean; //是否必填\n maxValue: number | string; //最大值\n minValue: number | string; //最小值\n paraExtendInfoId: string;\n progDesignId: string;\n progDesignOfferTypeId: string;\n progDesignOfferTypeName: string;\n isFileNamingRule: boolean; //是否是命名字段\n error: boolean; //是否输入错误,进行判断\n errorMessage: string; //错误信息显示的内容\n enumValueList?: string[]; //对应的枚举值\n supportDocList?: any; //支持文档\n}\n\nexport default defineComponent({\n emits: ['fresh-table'],\n setup(props, ctx) {\n const paramOption = ref({});\n\n //文件命名参数\n const isFileNamingRule = ref('');\n //锁定文件命名参数,不能修改\n const isLock = ref(false);\n\n //上传的时候,不能保存文件\n const isUploading = ref(false);\n\n //pdf高度\n const pdfHeight = window.innerHeight - 450;\n\n //是否,只是单独预览\n const isOnlyRead = ref(true);\n\n //是否是新添加文档\n const isNew = ref(false);\n //是否可见抽屉\n const visible = ref(false);\n //弹出窗的标题\n const title = computed(() => {\n if (isNew.value) {\n return '新增支持文档';\n } else {\n return '编辑支持文档';\n }\n });\n\n //用于存储整个上传的id信息\n const id = ref('');\n\n //列表的内容\n const extendInfoLst = ref([]);\n\n //进度条\n // const invoicePercent = ref(0);\n // const invoiceProStatus = ref(\"normal\");\n //文件信息\n const curUploadFile = ref({});\n const uploadFileSize = ref('');\n\n //tabs的默认第几个\n const activeTabs = ref('1');\n\n //文件上传\n const formData = new FormData();\n\n const supportTabs = ref([]);\n\n //填写的内容\n const formState: UnwrapRef = reactive({\n name: '',\n identityCard: undefined\n });\n\n //初始化弹窗\n const showDrawer = (item: any, type: string, option: any) => {\n paramOption.value = option;\n isLock.value = false;\n isUploading.value = false;\n if (type === 'view') {\n isNew.value = true;\n isOnlyRead.value = false;\n getDocView({ programId: item.groupId }).then((res: any): void => {\n //console.log(res)\n\n id.value = res.id;\n\n if (res.extendInfoLst === null) {\n extendInfoLst.value = [];\n } else {\n const tdata = res.extendInfoLst;\n for (let i = 0; i < tdata.length; i++) {\n if (tdata[i].fieldType === 'Enumeration') {\n tdata[i].enumValueList = tdata[i].enumValue.split(',');\n }\n }\n extendInfoLst.value = tdata;\n }\n\n if (res.docList !== null && res.docList.length > 0) {\n supportTabs.value = [];\n\n for (let i = 0; i < res.docList.length; i++) {\n supportTabs.value.push({\n key: i + '', //用于循环的key\n name: res.docList[i].docName, //用于显示tabs的名称\n id: res.docList[i].collectionDocId, //上传文件的id,若没上传为空\n base64code: '', //上传的文件base64\n hasFile: false, //是否已经上传了文件,若已经上传,直接显示\n isUpload: false, //用于区别与上传和提交的显示\n type: '', //上传文件的类型,用于回显\n filePath: '', //上传文件的文件路径\n curUploadFile: '', //文件\n invoicePercent: 0, //进度条\n uploadFileSize: '', //总文件大小\n invoiceProStatus: 'normal', //上传状态\n setupDocId: res.docList[i].setupDocId,\n\n fileName: '',\n fileType: '',\n fileSize: '',\n documentId: ''\n });\n }\n }\n visible.value = true;\n activeTabs.value = '0';\n });\n } else {\n isNew.value = false;\n isLock.value = true;\n getDocEdit({ programId: item.groupId, appId: item.appId }).then((res: any): void => {\n //console.log(res)\n\n isOnlyRead.value = true;\n id.value = res.id;\n if (res.extendInfoLst === null) {\n extendInfoLst.value = [];\n } else {\n const tdata = res.extendInfoLst;\n for (let i = 0; i < tdata.length; i++) {\n if (tdata[i].fieldType === 'Enumeration') {\n tdata[i].enumValueList = tdata[i].enumValue.split(',');\n }\n }\n extendInfoLst.value = tdata;\n }\n if (res.supportDocList.length > 0) {\n supportTabs.value = [];\n for (let i = 0; i < res.supportDocList.length; i++) {\n supportTabs.value.push({\n key: i + '', //用于循环的key\n name: res.supportDocList[i].tabName, //用于显示tabs的名称\n id: res.supportDocList[i].docId, //上传文件的id,若没上传为空\n base64code:\n res.supportDocList[i].ext === 'jpg'\n ? 'data:image/jpg;base64,' + `${res.supportDocList[i].base64code}`\n : URL.createObjectURL(b64toBlob(res.supportDocList[i].base64code, 'application/pdf')), //上传的文件base64\n hasFile:\n res.supportDocList[i].docPath !== null && res.supportDocList[i].docPath.length > 0 ? true : false, //是否已经上传了文件,若已经上传,直接显示\n isUpload: false, //用于区别与上传和提交的显示\n type: res.supportDocList[i].ext, //上传文件的类型,用于回显\n filePath: res.supportDocList[i].docPath, //上传文件的文件路径\n curUploadFile: '', //文件名\n invoicePercent: 0, //进度条\n uploadFileSize: '', //总文件大小\n invoiceProStatus: 'normal', //上传状态\n setupDocId: res.supportDocList[i].setupDocId,\n\n fileName: res.supportDocList[i].fileName,\n fileType: res.supportDocList[i].fileType,\n fileSize: res.supportDocList[i].fileSize,\n documentId: res.supportDocList[i].documentId\n });\n }\n }\n visible.value = true;\n activeTabs.value = '0';\n });\n }\n };\n\n //tabs切换的事件\n const cutTabs = (index: string) => {\n //console.log(index);\n activeTabs.value = index;\n // invoicePercent.value = 0;\n // invoiceProStatus.value = \"normal\";\n };\n\n const checkExtend = (item: ExtendInfoLstType) => {\n console.log(item);\n item.error = false;\n\n if (item.isFileNamingRule) {\n isFileNamingRule.value = item.content;\n }\n\n if (item.fieldType === 'Text') {\n if (item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n item.error = true;\n item.errorMessage = '必填项请填写';\n return false;\n }\n if (!item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n return true;\n }\n\n if (item.maxValue !== null && item.maxValue !== '') {\n if (item.content.length > item.maxValue) {\n item.error = true;\n item.errorMessage = `文档长度最大为${item.maxValue}`;\n return false;\n }\n }\n if (item.minValue !== null && item.minValue !== '') {\n if (item.content.length < item.minValue) {\n item.error = true;\n item.errorMessage = `文档长度最小为${item.minValue}`;\n return false;\n }\n }\n\n // if (item.content.length>item.maxValue || item.content.lengthitem.maxValue || item.content.length item.maxValue) {\n item.error = true;\n item.errorMessage = `数值最大为${item.maxValue}`;\n return false;\n }\n }\n if (item.minValue !== null && item.minValue !== '') {\n if (parseInt(item.content) < item.minValue) {\n item.error = true;\n item.errorMessage = `数值最小为${item.minValue}`;\n return false;\n }\n }\n }\n\n if (item.fieldType === 'Enumeration') {\n if (item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n item.error = true;\n item.errorMessage = '必填项请选择';\n return false;\n }\n if (!item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n return true;\n }\n }\n\n if (item.fieldType === 'Date') {\n if (item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n item.error = true;\n item.errorMessage = '必填项请选择';\n return false;\n }\n if (!item.isMandatory && (item.content === null || (item.content as string).trim() === '')) {\n return true;\n }\n const value = Date.parse(item.content);\n // if (value >= Date.parse(item.maxValue as string) ||value <= Date.parse(item.minValue as string)){\n // item.error = true;\n // item.errorMessage = `日期大小应在${item.minValue}-${item.maxValue}之间`\n // return false;\n // }\n const maxValue = (item.maxValue as string).replaceAll('/', '-');\n const minValue = (item.minValue as string).replaceAll('/', '-');\n if (item.maxValue !== null) {\n if (value > Date.parse(maxValue as string)) {\n item.error = true;\n item.errorMessage = `日期最大为${maxValue}`;\n return false;\n }\n\n if (value < Date.parse(minValue as string)) {\n item.error = true;\n item.errorMessage = `日期最小为${minValue}`;\n return false;\n }\n }\n }\n\n return true;\n };\n\n //单个上传文档\n const uploadFileSingle = () => {\n //进行上传前校验\n const signLength = extendInfoLst.value.length;\n let count = 0;\n for (let i = 0; i < extendInfoLst.value.length; i++) {\n const item = extendInfoLst.value[i];\n const sign = checkExtend(item);\n if (sign) {\n count++;\n }\n }\n\n if (signLength !== count) {\n message.error('填写扩展信息错误,请改正后上传文档');\n return;\n }\n //上传文件单个\n isUploading.value = true;\n axios({\n method: 'post',\n data: formData,\n url: '/claimapi/claimDocCollection/upload',\n params: {\n collectionSetupId: supportTabs.value[activeTabs.value].setupDocId,\n fileNamingRuleContent: isFileNamingRule.value\n }\n }).then((res) => {\n //res\n isUploading.value = false;\n if (res.status === 200) {\n supportTabs.value[activeTabs.value].invoicePercent = 100;\n supportTabs.value[activeTabs.value].invoiceProStatus = 'success';\n // cacheData.value[activeTabs.value].filePath = res.data.data;\n supportTabs.value[activeTabs.value].filePath = res.data.data.docPath;\n supportTabs.value[activeTabs.value].fileName = res.data.data.docName;\n supportTabs.value[activeTabs.value].fileType = res.data.data.docType;\n supportTabs.value[activeTabs.value].fileSize = res.data.data.fileSize;\n supportTabs.value[activeTabs.value].documentId = res.data.data.id;\n\n isLock.value = true;\n message.success('文件上传成功');\n }\n });\n };\n\n // 重写默认上传方法 获取合规的文件\n const invoiceCustomRequest = (source: any) => {\n if (formData.has('document')) {\n formData.delete('document');\n }\n formData.append('document', source.file);\n supportTabs.value[activeTabs.value].curUploadFile = source.file;\n supportTabs.value[activeTabs.value].fileName = source.file.name;\n const isLt5M = source.file.size / 1024 / 1024 < 10;\n if (!isLt5M) {\n message.error('文件大小不能超过10M');\n return;\n }\n supportTabs.value[activeTabs.value].uploadFileSize =\n source.file.size / 1024 > 1024\n ? `${(source.file.size / 1024 / 1024).toFixed(1)} MB`\n : `${Math.floor(source.file.size / 1024)} KB`;\n supportTabs.value[activeTabs.value].isUpload = true;\n // uploadFileSingle();\n };\n // 上传前\n const beforeUpload = (file: FileItem) => {\n const isJpg = file.type === 'image/jpeg';\n const isPdf = file.type === 'application/pdf';\n if (!isJpg && !isPdf) {\n message.error('jpg/pdf format files can be uploaded!');\n }\n return isJpg || isPdf;\n };\n\n //保存事件\n const onSave = () => {\n //进行上传前校验\n const signLength = extendInfoLst.value.length;\n let count = 0;\n for (let i = 0; i < extendInfoLst.value.length; i++) {\n const item = extendInfoLst.value[i];\n const sign = checkExtend(item);\n if (sign) {\n count++;\n }\n }\n\n if (signLength !== count) {\n message.error('填写扩展信息错误,请修改后保存');\n return;\n }\n // //console.log(\"保存\");\n // let sign = 0;\n // //支持文档校验\n // extendInfoLst.value.forEach((element) => {\n // //console.log(element.content)\n // if (element.isMandatory === true && (element.content === null || element.content.length < 1)) {\n // message.error(`${element.fieldNameCn}为必填项目,请填写`);\n // sign++;\n // return;\n // }\n\n // if (element.fieldType === \"Text\") {\n // if (\n // element.content.length > (element.maxValue as number) * 1 ||\n // element.content.length < (element.minValue as number) * 1\n // ) {\n // message.error(\n // `${element.fieldNameCn}长度应在${element.minValue}-${element.maxValue}之间`\n // );\n // sign++;\n // return;\n // }\n // }\n\n // if (element.fieldType === \"Number\") {\n // const value = parseFloat(element.content);\n // if (\n // value >= (element.maxValue as number) * 1 ||\n // value <= (element.minValue as number) * 1\n // ) {\n // message.error(\n // `${element.fieldNameCn}数字大小应在${element.minValue}-${element.maxValue}之间`\n // );\n // sign++;\n // return;\n // }\n // }\n\n // if (element.fieldType === \"Date\") {\n // const value = Date.parse(element.content);\n // if (\n // value >= Date.parse(element.maxValue as string) ||\n // value <= Date.parse(element.minValue as string)\n // ) {\n // message.error(\n // `${element.fieldNameCn}日期大小应在${element.minValue}-${element.maxValue}之间`\n // );\n // sign++;\n // return;\n // }\n // }\n // });\n\n // if (sign !== 0){\n // return;\n // }\n\n const param = Object.assign(paramOption.value, { id: id.value });\n //合并参数\n const supportArray: Array = [];\n const dealerExtendInfoLst: Array = [];\n extendInfoLst.value.forEach((element) => {\n dealerExtendInfoLst.push({\n docParaExtendInfoId: element.paraExtendInfoId,\n content: element.content,\n id: element.id\n });\n });\n\n for (let i = 0; i < supportTabs.value.length; i++) {\n const one = supportTabs.value[i];\n supportArray.push({\n base64code: one.base64code,\n docId: one.id,\n docPath: one.filePath,\n ext: one.type,\n setupDocId: one.setupDocId,\n tabName: one.name,\n fileName: one.fileName,\n fileType: one.fileType,\n fileSize: one.fileSize,\n documentId: one.documentId\n });\n }\n\n param.dealerExtendInfoLst = dealerExtendInfoLst;\n param.supportDocList = supportArray;\n isUploading.value = true;\n dealerSave(param)\n .then((res: any): void => {\n if (res.code === '0') {\n ctx.emit('fresh-table');\n message.success('添加成功');\n rematch({\n dealerCode: paramOption.value.dealerCode,\n offerTypeId: paramOption.value.offerTypeId,\n programId: paramOption.value.programId\n }).then((res) => {\n console.log(res);\n });\n isUploading.value = false;\n visible.value = false;\n } else {\n message.error(res);\n isUploading.value = false;\n }\n })\n .catch(() => {\n // message.error('数据错误')\n });\n };\n //删除现有图片重新上传\n const deleteHandle = (item: any) => {\n Modal.confirm({\n title: '确认',\n content: '确定要删除这条支持文档吗?',\n okText: '确认',\n onOk() {\n //console.log({docId : item.id })\n isUploading.value = true;\n deleteFile({ docId: item.id }).then((res: any): void => {\n //console.log(res)\n isUploading.value = false;\n supportTabs.value[activeTabs.value].base64code = '';\n supportTabs.value[activeTabs.value].type = '';\n supportTabs.value[activeTabs.value].filePath = '';\n supportTabs.value[activeTabs.value].hasFile = false;\n supportTabs.value[activeTabs.value].isUpload = false;\n\n supportTabs.value[activeTabs.value].fileName = '';\n supportTabs.value[activeTabs.value].filePath = '';\n supportTabs.value[activeTabs.value].fileSize = '';\n supportTabs.value[activeTabs.value].documentId = '';\n supportTabs.value[activeTabs.value].fileType = '';\n });\n },\n cancelText: '取消'\n });\n };\n //重新上传\n const reUpload = () => {\n supportTabs.value[activeTabs.value].uploadFileSize = 0 + 'MB';\n supportTabs.value[activeTabs.value].hasFile = false;\n supportTabs.value[activeTabs.value].isUpload = false;\n supportTabs.value[activeTabs.value].invoicePercent = 0;\n supportTabs.value[activeTabs.value].progressPercentage = '';\n\n supportTabs.value[activeTabs.value].fileName = '';\n supportTabs.value[activeTabs.value].filePath = '';\n supportTabs.value[activeTabs.value].fileSize = '';\n supportTabs.value[activeTabs.value].fileType = '';\n supportTabs.value[activeTabs.value].documentId = '';\n };\n\n const spinWrapper = document.querySelector('.spingWrapper .ant-spin-container');\n console.log(spinWrapper);\n\n return {\n checkExtend,\n reUpload,\n isUploading,\n deleteHandle,\n extendInfoLst,\n uploadFileSize,\n curUploadFile,\n // invoiceProStatus,\n // invoicePercent,\n supportTabs,\n activeTabs,\n formState,\n visible,\n title,\n isNew,\n showDrawer,\n invoiceCustomRequest,\n beforeUpload,\n cutTabs,\n onSave,\n pdfHeight,\n isOnlyRead,\n uploadFileSingle,\n isLock,\n spinWrapper\n };\n }\n});\n","import { render } from \"./index.vue?vue&type=template&id=50a4b4ca&scoped=true&ts=true\"\nimport script from \"./index.vue?vue&type=script&lang=ts\"\nexport * from \"./index.vue?vue&type=script&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=50a4b4ca&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-50a4b4ca\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/rv/upload.svg'\nimport _imports_1 from '@/assets/images/claim/upload.svg'\nimport _imports_2 from '@/assets/images/rv/complete.svg'\nimport _imports_3 from '@/assets/images/rv/rect.png'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e60d92c6\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"ovewView\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"title_style\" }, \"文档命名规则:\", -1))\nconst _hoisted_3 = { class: \"message_style\" }\nconst _hoisted_4 = { class: \"support_tabs\" }\nconst _hoisted_5 = { key: 0 }\nconst _hoisted_6 = /*#__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_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { class: \"ant-upload-text\" }, [\n /*#__PURE__*/_createTextVNode(\" 拖拽文件到此处或点击\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"blueFont\" }, \"浏览文件\")\n], -1))\nconst _hoisted_8 = { key: 1 }\nconst _hoisted_9 = { class: \"uploadH uploadProgressCon\" }\nconst _hoisted_10 = { class: \"progressCon\" }\nconst _hoisted_11 = { class: \"progressFlexCon\" }\nconst _hoisted_12 = { class: \"totalProgressCon\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_1,\n alt: \"\",\n class: \"batchIcon\"\n}, null, -1))\nconst _hoisted_14 = { class: \"progressShow\" }\nconst _hoisted_15 = { class: \"progressTit\" }\nconst _hoisted_16 = { class: \"filePro uploadPro\" }\nconst _hoisted_17 = { class: \"completeCon\" }\nconst _hoisted_18 = {\n key: 0,\n style: {\"color\":\"#00adef\"}\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_2,\n class: \"completeIcon\"\n}, null, -1))\nconst _hoisted_20 = { key: 1 }\nconst _hoisted_21 = { class: \"filePro fileSize\" }\nconst _hoisted_22 = {\n key: 0,\n class: \"resultCon\"\n}\nconst _hoisted_23 = /*#__PURE__*/_createTextVNode(\"重新上传\")\nconst _hoisted_24 = {\n key: 1,\n class: \"resultCon\"\n}\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"top\" }, [\n /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_3,\n class: \"rect\"\n }),\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"上传概览\")\n], -1))\nconst _hoisted_26 = { class: \"resTit\" }\nconst _hoisted_27 = { class: \"entry\" }\nconst _hoisted_28 = /*#__PURE__*/_createTextVNode(\"总数: \")\nconst _hoisted_29 = /*#__PURE__*/_createTextVNode(\" 个\")\nconst _hoisted_30 = { class: \"entry\" }\nconst _hoisted_31 = /*#__PURE__*/_createTextVNode(\"成功: \")\nconst _hoisted_32 = { style: {\"color\":\"#008a00\"} }\nconst _hoisted_33 = /*#__PURE__*/_createTextVNode(\" 个\")\nconst _hoisted_34 = { class: \"entry\" }\nconst _hoisted_35 = /*#__PURE__*/_createTextVNode(\"失败: \")\nconst _hoisted_36 = { style: {\"color\":\"#e1292b\"} }\nconst _hoisted_37 = /*#__PURE__*/_createTextVNode(\" 个\")\nconst _hoisted_38 = { class: \"result\" }\nconst _hoisted_39 = { style: {\n position: 'absolute',\n right: 0,\n bottom: 0,\n width: '100%',\n borderTop: '1px solid #e9e9e9',\n padding: '10px 16px',\n background: '#fff',\n textAlign: 'right',\n zIndex: 1,\n } }\nconst _hoisted_40 = /*#__PURE__*/_createTextVNode(\"确认\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_a_upload_dragger = _resolveComponent(\"a-upload-dragger\")!\n const _component_a_progress = _resolveComponent(\"a-progress\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_table = _resolveComponent(\"a-table\")!\n const _component_a_tab_pane = _resolveComponent(\"a-tab-pane\")!\n const _component_a_tabs = _resolveComponent(\"a-tabs\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n\n return (_openBlock(), _createBlock(_component_a_drawer, {\n title: \"批量上传文档\",\n placement: \"right\",\n closable: true,\n width: \"488px\",\n visible: _ctx.visible,\n \"after-visible-change\": _ctx.afterVisibleChange,\n \"body-style\": { paddingBottom: '40px' },\n onClose: _ctx.closeThisDrawer\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", null, [\n _hoisted_2,\n _createElementVNode(\"span\", _hoisted_3, \"   \" + _toDisplayString(_ctx.nameRule), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(_component_a_tabs, {\n activeKey: _ctx.activeTabs,\n onChange: _ctx.cutTabs\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.supportTabs, (item, index) => {\n return (_openBlock(), _createBlock(_component_a_tab_pane, {\n key: index,\n tab: item.name\n }, {\n default: _withCtx(() => [\n (!item.isUpload)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createVNode(_component_a_upload_dragger, {\n name: \"file\",\n multiple: true,\n listType: \"picture-card\",\n showUploadList: false,\n customRequest: _ctx.invoiceCustomRequest,\n \"before-upload\": _ctx.beforeUpload\n }, {\n default: _withCtx(() => [\n _hoisted_6,\n _hoisted_7\n ]),\n _: 1\n }, 8, [\"customRequest\", \"before-upload\"])\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"div\", _hoisted_12, [\n _hoisted_13,\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"div\", _hoisted_15, \" 文件上传\" + _toDisplayString(item.curUploadFile.name), 1),\n _createVNode(_component_a_progress, {\n strokeColor: \"#00adef\",\n percent: item.invoicePercent,\n status: item.invoiceProStatus,\n \"show-info\": false\n }, null, 8, [\"percent\", \"status\"]),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"div\", _hoisted_17, [\n (item.invoicePercent == 100)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_18, [\n _hoisted_19,\n _createTextVNode(_toDisplayString(item.progressPercentage), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_20, _toDisplayString(item.progressPercentage), 1))\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_21, _toDisplayString(item.uploadFileSize), 1)\n ])\n ])\n ])\n ])\n ]),\n (item.invoicePercent === 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createVNode(_component_a_button, {\n onClick: _ctx.reUpload,\n disabled: _ctx.isRe,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_23\n ]),\n _: 1\n }, 8, [\"onClick\", \"disabled\"])\n ]))\n : _createCommentVNode(\"\", true),\n ( item.isFault)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_24, [\n _hoisted_25,\n _createElementVNode(\"p\", _hoisted_26, [\n _createElementVNode(\"span\", _hoisted_27, [\n _hoisted_28,\n _createElementVNode(\"span\", null, _toDisplayString(item.total), 1),\n _hoisted_29\n ]),\n _createElementVNode(\"span\", _hoisted_30, [\n _hoisted_31,\n _createElementVNode(\"span\", _hoisted_32, _toDisplayString(item.success), 1),\n _hoisted_33\n ]),\n _createElementVNode(\"span\", _hoisted_34, [\n _hoisted_35,\n _createElementVNode(\"span\", _hoisted_36, _toDisplayString(item.fault), 1),\n _hoisted_37\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_38, [\n _createVNode(_component_a_table, {\n rowKey: \n (record, index) => {\n return index.toString() + record.vinNo;\n }\n ,\n scroll: { y: _ctx.tableHeight },\n columns: _ctx.columns,\n pagination: false,\n dataSource: _ctx.dataSource,\n rowClassName: \n (record, index) =>\n index % 2 === 1 ? 'table-striped' : null\n \n }, null, 8, [\"rowKey\", \"scroll\", \"columns\", \"dataSource\", \"rowClassName\"])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n ]),\n _: 2\n }, 1032, [\"tab\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"activeKey\", \"onChange\"])\n ]),\n _createElementVNode(\"div\", _hoisted_39, [\n _createVNode(_component_a_button, {\n disabled: _ctx.isConfirm,\n onClick: _ctx.confirm,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _hoisted_40\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"visible\", \"after-visible-change\", \"onClose\"]))\n}","\nimport { reactive, defineComponent, ref, computed } from \"vue\";\nimport { FileItem } from \"@/API/types\";\nimport { message,Modal } from \"ant-design-vue\";\nimport axios from \"axios\";\nimport { uploadBatchInfo,rematch} from \"@/API/claim/delaerClaim/delaer\";\n\n\n//上传扩展信息共有多少个类型,对应有多少个tabs页\ninterface TabsType {\n key: string; //用于循环的key\n name: string; //用于显示tabs的名称\n id: string; //上传文件的id,若没上传为空\n base64code: string; //上传的文件base64\n hasFile: boolean; //是否已经上传了文件,若已经上传,直接显示\n isUpload: boolean; //用于区别与上传和提交的显示\n type: string; //上传文件的类型,用于回显\n filePath: string; //上传文件的文件路径\n total: number; //上传文件的总数\n success: number; //上传文件的成功数\n fault: number; //上传文件的失败数\n progressPercentage: string; //上传文件的步骤信息\n isFault: boolean; //是否有错误信息\n invoicePercent: number; //进度条\n invoiceProStatus: string; //上传状态\n curUploadFile: string; //文件名\n uploadFileSize: string; //总文件大小\n uploadFileCount: number; //上传文件数目\n rule: string;//规则\n}\n\n//单个文件上传的传入数保存,包含groupid,vinNo,类型\ninterface ItemMessageType {\n offerTypeId: string;\n programId: string;\n vinNo: string;\n retailBegin?: string;\n endTimeRetail?: string;\n}\n//返回的结果列表\ninterface Message {\n fileName: string;\n failedReason: string;\n}\n\nexport default defineComponent({\nemits: [\"fresh-table\"],\n setup(prop, ctx) {\n //是否显示抽屉\n const visible = ref(false);\n\n const optionMessage = ref({});\n\n //文档命名规则\n const nameRule = ref(\"\");\n\n //用于缓存初始化时从后端传进来的数据,最后确认的时候,将上传完的path合并,一起传给后端\n const cacheData = ref();\n\n const itemMessage = reactive({\n offerTypeId: \"\",\n programId: \"\",\n vinNo: \"\",\n retailBegin: \"\",\n endTimeRetail: \"\",\n });\n\n\n //批量上传总大小\n const uploadFileListSize = ref(0);\n const uploadFileCount = ref(0);\n const uploadfileList = ref([]);\n\n const isConfirm = ref(true);\n\n const supportTabs = ref([]);\n //当前的tabs页\n const activeTabs = ref(0);\n //表格列头\n const columns = [\n {\n title: \"文件名称\",\n dataIndex: \"fileName\",\n key: \"fileName\",\n width: 100,\n },\n {\n title: \"上传失败原因\",\n dataIndex: \"failedReason\",\n key: \"failedReason\",\n width: 100,\n },\n ];\n //表格的高度\n const tableHeight = computed(() => {\n return window.innerHeight - 500;\n });\n\n \n const dataSource = ref();\n\n //关闭抽屉事件\n const closeThisDrawer = () => {\n visible.value = false;\n };\n //关闭抽屉的回调\n const afterVisibleChange = () => {\n //关闭后的事件处理\n };\n\n //重新上传按钮\n const isRe = ref(true);\n\n\n //多个文档上传\n const uploadFileList = (params: any, filesArray: any) => {\n debugger\n isRe.value = true;\n axios({\n method: \"post\",\n data: filesArray,\n url: \"/claimapi/dealer/doc/uploadBatch\",\n params: params,\n onUploadProgress: (progressEvent: any) => {\n if (progressEvent.lengthComputable) {\n const complete =\n ((progressEvent.loaded / progressEvent.total) * 100) | 0;\n supportTabs.value[activeTabs.value].invoicePercent = complete;\n supportTabs.value[activeTabs.value].progressPercentage =\n \"\"+ Math.floor(\n (progressEvent.loaded / progressEvent.total) *\n uploadFileCount.value\n ) +\n \"/\" +\n uploadFileCount.value +\"\"+\n \"(\" +\n complete +\n \"%完成)\";\n }\n },\n }).then((res) => {\n isConfirm.value = false;\n isRe.value = false;\n if (res.data.code === 50061 || res.data.code === 50074) {\n message.info(res.data.message);\n // supportTabs.value[activeTabs.value].isFault = false;\n } else {\n supportTabs.value[activeTabs.value].isFault = true;\n dataSource.value = res.data.data.failedResultList;\n supportTabs.value[activeTabs.value].total = res.data.data.totalNum;\n supportTabs.value[activeTabs.value].success =\n res.data.data.successNum;\n supportTabs.value[activeTabs.value].fault = res.data.data.failedNum;\n\n rematch({dealerCode:optionMessage.value.dealerCode,offerTypeId:optionMessage.value.offerTypeId,programId:optionMessage.value.programId}).then((res)=>{\n console.log(res)\n })\n }\n }).catch((error)=> { \n // message.error('上传失败');\n isRe.value = false;\n });\n };\n\n \n // 重写默认上传方法 获取合规的文件\n let endq = true;\n const invoiceCustomRequest = (source: any) => {\n debugger\n //批量上传\n const filearray = [];\n if (!endq) {\n return;\n }\n const fordata = new FormData();\n for (let i = 0; i < uploadfileList.value.length; i++) {\n const file = uploadfileList.value[i];\n fordata.append(\"document\", file);\n filearray.push(fordata);\n }\n const param = {\n dealerCode:optionMessage.value.dealerCode,\n programId: optionMessage.value.progDesignId,\n offerTypeId: optionMessage.value.offerTypeId,\n docParaSetupSupportingDocId:supportTabs.value[activeTabs.value].id,\n offerTypeKey:optionMessage.value.offerTypeKey\n // programId: itemMessage.programId,\n // offerTypeId: itemMessage.offerTypeId,\n // claimParaSetupSupportingDocId:\n // cacheData.value[activeTabs.value].claimParaSetupSupportingDocId,\n // retailBegin: itemMessage.retailBegin,\n // retailEnd: itemMessage.endTimeRetail,\n // fileList: filearray,\n };\n\n endq = false;\n supportTabs.value[activeTabs.value].isUpload = true;\n uploadFileList(param, fordata);\n\n };\n // 上传前,多个文件上传会回调文件次数,所以用end作为标记,防止多次验证\n let end = 0;\n const beforeUpload = (file: FileItem, fileList: any) => {\n let fault = 0;\n uploadFileListSize.value = 0;\n end++;\n\n if (end !== fileList.length) {\n return false;\n }\n\n for (let i = 0; i < fileList.length; i++) {\n const file = fileList[i];\n if (file.type === \"image/jpeg\" || file.type === \"application/pdf\") {\n if (file.size / 1024 / 1024 < 10) {\n uploadFileListSize.value =\n uploadFileListSize.value + file.size / 1024 / 1024;\n } else {\n fault = 2;\n }\n } else {\n fault = 1;\n }\n }\n if (fileList.length >100){\n message.error('传输文件不能超过100个')\n end = 0;\n return false;\n } else if (fault === 1) {\n message.error(\"只能上传 jpg/pdf 格式的文件\");\n end = 0;\n return false;\n } else if (fault === 2) {\n message.error(\"文件大小不能超过10M\");\n end = 0;\n return false;\n } else {\n uploadfileList.value = fileList;\n uploadFileCount.value = fileList.length;\n supportTabs.value[activeTabs.value].uploadFileSize = uploadFileListSize.value.toFixed(2)+\"MB\"\n end = 0;\n return true;\n }\n \n };\n\n //tabs页切换的事件\n const cutTabs = (index: number) => {\n activeTabs.value = index;\n // invoicePercent.value = 0;\n // invoiceProStatus.value = 'normal'\n nameRule.value = supportTabs.value[index].rule;\n endq = true;\n };\n\n //根据传入的参数,显示指定的上传页面内容\n const showDrawer = (option: any) => {\n\n console.log(option)\n optionMessage.value = option;\n // debugger\n uploadBatchInfo({ programId: option.progDesignId }).then((res: any): void => {\n console.log(res)\n supportTabs.value = [];\n for (let i=0;i {\n //批量上传确认事件\n ctx.emit(\"fresh-table\");\n isConfirm.value = true;\n visible.value = false;\n };\n const reUpload = ()=>{\n uploadFileListSize.value = 0;\n uploadfileList.value = [];\n uploadFileCount.value = 0;\n supportTabs.value[activeTabs.value].uploadFileSize = 0+\"MB\"\n supportTabs.value[activeTabs.value].hasFile = false;\n supportTabs.value[activeTabs.value].isUpload = false;\n\n isConfirm.value = true;\n supportTabs.value[activeTabs.value].invoicePercent = 0;\n supportTabs.value[activeTabs.value].progressPercentage = \"\";\n supportTabs.value[activeTabs.value].isFault = false;\n dataSource.value = [];\n endq = true;\n }\n\n return {\n isRe,\n reUpload,\n uploadFileCount,\n itemMessage,\n confirm,\n isConfirm,\n activeTabs,\n showDrawer,\n tableHeight,\n cutTabs,\n columns,\n dataSource,\n beforeUpload,\n invoiceCustomRequest,\n supportTabs,\n visible,\n afterVisibleChange,\n closeThisDrawer,\n nameRule\n };\n },\n});\n","import { render } from \"./index.vue?vue&type=template&id=e60d92c6&scoped=true&ts=true\"\nimport script from \"./index.vue?vue&type=script&lang=ts\"\nexport * from \"./index.vue?vue&type=script&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=e60d92c6&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-e60d92c6\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/images/rv/upload.svg'\nimport _imports_1 from '@/assets/images/claim/upload.svg'\nimport _imports_2 from '@/assets/images/rv/complete.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-62f49c6f\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"uploadCon\" }\nconst _hoisted_2 = { class: \"invoiceUploadCon\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"uploadH\"\n}\nconst _hoisted_4 = /*#__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_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { class: \"ant-upload-text\" }, [\n /*#__PURE__*/_createTextVNode(\" 拖拽文件到此处或\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"blueFont\" }, \"点击浏览文件\")\n], -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"uploadH uploadProgressCon\"\n}\nconst _hoisted_7 = { class: \"progressCon\" }\nconst _hoisted_8 = { class: \"progressFlexCon\" }\nconst _hoisted_9 = { class: \"totalProgressCon\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_1,\n alt: \"\",\n class: \"batchIcon\"\n}, null, -1))\nconst _hoisted_11 = { class: \"progressShow\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"progressTit\" }, \"文件上传\", -1))\nconst _hoisted_13 = { class: \"filePro uploadPro\" }\nconst _hoisted_14 = {\n key: 0,\n class: \"completeCon\"\n}\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n src: _imports_2,\n class: \"completeIcon\"\n}, null, -1))\nconst _hoisted_16 = /*#__PURE__*/_createTextVNode(\" 100%完成 \")\nconst _hoisted_17 = [\n _hoisted_15,\n _hoisted_16\n]\nconst _hoisted_18 = { class: \"filePro fileSize\" }\nconst _hoisted_19 = { class: \"resultCon\" }\nconst _hoisted_20 = {\n key: 0,\n class: \"result\"\n}\nconst _hoisted_21 = { style: {\n position: 'absolute',\n right: 0,\n bottom: 0,\n width: '100%',\n borderTop: '1px solid #e9e9e9',\n padding: '10px 16px',\n background: '#fff',\n textAlign: 'right',\n zIndex: 1,\n } }\nconst _hoisted_22 = /*#__PURE__*/_createTextVNode(\"上传\")\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\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_button = _resolveComponent(\"a-button\")!\n const _component_a_drawer = _resolveComponent(\"a-drawer\")!\n\n return (_openBlock(), _createBlock(_component_a_drawer, {\n title: \"批量上传扩展信息\",\n placement: \"right\",\n closable: true,\n width: \"488px\",\n visible: _ctx.visible,\n \"after-visible-change\": _ctx.afterVisibleChange,\n \"body-style\": { paddingBottom: '40px' },\n onClose: _ctx.closeThisDrawer\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.invoiceUploadComplete)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createVNode(_component_a_upload_dragger, {\n name: \"file\",\n multiple: false,\n listType: \"picture-card\",\n showUploadList: false,\n customRequest: _ctx.invoiceCustomRequest,\n \"before-upload\": _ctx.beforeUpload\n }, {\n default: _withCtx(() => [\n _hoisted_4,\n _hoisted_5\n ]),\n _: 1\n }, 8, [\"customRequest\", \"before-upload\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (!_ctx.invoiceUploadComplete)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"div\", _hoisted_9, [\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, [\n _hoisted_12,\n _createVNode(_component_a_progress, {\n strokeColor: \"#00adef\",\n percent: _ctx.invoicePercent,\n status: _ctx.invoiceProStatus\n }, null, 8, [\"percent\", \"status\"]),\n _createElementVNode(\"div\", _hoisted_13, [\n (_ctx.invoicePercent == 100)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, _hoisted_17))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_18, _toDisplayString(_ctx.invoiceFileSize), 1)\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_19, [\n (_ctx.dataFault)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _createVNode(_component_a_table, {\n rowKey: \n (record, index) => {\n return index.toString() + record.vinNo;\n }\n ,\n scroll: { y: _ctx.tableHeight },\n columns: _ctx.columns,\n pagination: false,\n dataSource: _ctx.dataSource,\n rowClassName: \n (record, index) => (index % 2 === 1 ? 'table-striped' : null)\n \n }, null, 8, [\"rowKey\", \"scroll\", \"columns\", \"dataSource\", \"rowClassName\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createVNode(_component_a_button, {\n type: \"primary\",\n disabled: _ctx.isSubmit,\n onClick: _ctx.submitFile\n }, {\n default: _withCtx(() => [\n _hoisted_22\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"visible\", \"after-visible-change\", \"onClose\"]))\n}","\nimport { defineComponent, ref } from \"vue\";\nimport { message } from \"ant-design-vue\";\nimport { FileItem } from \"@/API/types\";\nimport axios from \"axios\";\nexport default defineComponent({\n emits: [\"close-drawer\", \"fresh-table\"],\n props: {\n },\n // components: {\n // },\n setup(props, ctx) {\n\n const optionMessage = ref({});\n\n const visible = ref(false);\n\n const tableHeight = window.innerHeight - 410;\n // 文件上传\n const invoiceUploadComplete = ref(true);\n const formData = new FormData();\n const curUploadFile = ref({});\n //文件大小\n const invoiceFileSize = ref(\"\");\n //进度条\n const invoicePercent = ref(0);\n const invoiceProStatus = ref(\"normal\");\n //上传按钮\n const isSubmit = ref(true);\n\n //显示回传信息\n const dataFault = ref(false);\n\n //表格\n const columns = [\n {\n title: \"提交结果\",\n dataIndex: \"message\",\n key: \"message\",\n width: 100,\n },\n ];\n\n // const dataSource = [\n // {\n // vinNo: \"vinNo\",\n // rtnMessage: \"rtnMessage\",\n // },\n // {\n // vinNo: \"vinNo\",\n // rtnMessage: \"rtnMessage\",\n // },\n // ];\n\n interface Message {\n message: string;\n }\n const dataSource = ref();\n\n //显示抽屉时间\n const showDrawer=(item: any)=>{\n optionMessage.value = item;\n visible.value = true;\n }\n\n //关闭抽屉事件\n const closeThisDrawer = () => {\n visible.value = false;\n };\n //关闭抽屉后事件\n const afterVisibleChange = () => {\n //aaa\n console.log(\"关闭\");\n if (formData.has(\"file\")) {\n formData.delete(\"file\");\n }\n invoiceUploadComplete.value = true;\n isSubmit.value = true;\n invoicePercent.value = 0;\n invoiceProStatus.value = \"normal\";\n dataFault.value = false;\n };\n\n // 重写默认上传方法 获取合规的发票图片信息\n const invoiceCustomRequest = (source: any) => {\n if (formData.has(\"file\")) {\n formData.delete(\"file\");\n }\n formData.append(\"file\", source.file);\n curUploadFile.value = source.file;\n invoiceFileSize.value =\n source.file.size / 1024 > 1024\n ? `${(source.file.size / 1024 / 1024).toFixed(1)} MB`\n : `${Math.floor(source.file.size / 1024)} KB`;\n invoiceUploadComplete.value = false;\n };\n\n // 上传前\n const beforeUpload = (file: FileItem) => {\n const isXlsx =\n file.type ===\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\";\n if (!isXlsx) {\n message.error(\"Only xlsx format files can be uploaded!\");\n }\n const isLt5M = file.size / 1024 / 1024 < 10;\n if (!isLt5M) {\n message.error(\"The file size should not be larger than 10MB!\");\n }\n isSubmit.value = false;\n return isXlsx && isLt5M;\n };\n //上传文件\n const submitFile = () => {\n const params = {\n dealerCode: optionMessage.value.dealerCode,\n dealerNameCn: optionMessage.value.dealerNameCn,\n incentiveCategory: optionMessage.value.incentiveCategory,\n offerTypeId: optionMessage.value.offerTypeId,\n offerTypeName: optionMessage.value.offerTypeName,\n progDesignId: optionMessage.value.progDesignId,\n programCode: optionMessage.value.programCode,\n programName: optionMessage.value.programName,\n eligiblePeriodFrom:optionMessage.value.eligiblePeriodFrom,\n eligiblePeriodTo:optionMessage.value.eligiblePeriodTo\n };\n console.log(params);\n\n axios({\n method: \"post\",\n data: formData,\n url: \"/claimapi/dealer/doc/uploadExtendInfo\",\n params: params,\n }).then((res) => {\n debugger\n console.log(res);\n invoicePercent.value = 100;\n invoiceProStatus.value = \"success\";\n const data = res.data;\n if (data.code !== \"0\") {\n dataFault.value = true;\n\n const array: Array = []\n\n for (let i=0;i({});\n\n //上传文档抽屉页面\n const uploadSupport = ref(null);\n\n //批量上传扩展信息\n const uploadInformation = ref(null);\n\n //预览抽屉\n const supportExample = ref(null);\n\n //查看支持文档的抽屉\n const visible = ref(false);\n //预览文件\n const base64code = ref('');\n const type = ref('');\n const pdfHeight = window.innerHeight - 250;\n\n //子dom\n const extendInformationDom = ref();\n //表格高度\n const tableHeight = window.innerHeight - 380;\n //表格宽度\n const tableWidth = ref(600);\n\n //样例的照片\n const exampleImg = ref('@/assets/images/rv/upload.svg');\n\n //是否只是单纯的预览上传的照片\n const isOnlyView = ref(false);\n\n //文档样例\n const supportSample = ref([]);\n\n //如果没有扩展信息,不能点击上传扩展信息按钮\n const isSupport = ref(false);\n\n const dataSource = ref([]);\n\n const columns = ref([]);\n\n //没有扩展信息时,不能点击批量按钮\n const noDoc = ref(false);\n\n //关闭样例抽屉\n const closeDrawer = () => {\n visible.value = false;\n };\n\n //显示样例图片\n const showExample = (item: any) => {\n supportExample.value.showDrawer(item);\n };\n //编辑table一列\n const editTable = (item: any) => {\n const param = {\n groupId: option.value.programId,\n appId: item.id,\n };\n extendInformationDom.value.showDrawer(param, 'edit', option.value);\n };\n\n //添加新的扩展信息\n const addExtendInformation = () => {\n if (noDoc.value && dataSource.value.length > 0) {\n message.error('请在一条数据中,上传所有支持文档');\n return;\n }\n const param = {\n groupId: option.value.programId,\n incentiveCategory: option.value.incentiveCategory,\n offerTypeId: option.value.offerTypeId,\n offerTypeName: option.value.categoryName,\n programCode: option.value.programeCode,\n programName: option.value.programeName,\n };\n\n extendInformationDom.value.showDrawer(param, 'view', option.value);\n };\n\n const getTableData = () => {\n getTablelist({\n eligiblePeriodFrom: option.value.eligiblePeriodFrom,\n eligiblePeriodTo: option.value.eligiblePeriodTo,\n programId: option.value.programId,\n offerTypeId: option.value.offerTypeId,\n dealerCode: option.value.dealerCode,\n }).then((res: any): void => {\n // console.log('刷新表格')\n const p33 = res;\n\n dataSource.value = [];\n for (let i = 0; i < p33.length; i++) {\n const one = {\n id: p33[i].id,\n supportDoc: p33[i].docList,\n };\n if (p33[i].extendInfoLst !== null) {\n p33[i].extendInfoLst.forEach((item: any) => {\n one[item.fieldNameCn] = item.content;\n });\n }\n\n dataSource.value.push(one);\n }\n });\n };\n //删除table一列\n const deleteTable = (item: any) => {\n console.log(item);\n Modal.confirm({\n title: '请确认',\n content: '请确认是否要删除此条数据?',\n okText: '确认',\n onOk() {\n deleteTableItem({ appId: item.id }).then(\n (res: any): void => {\n console.log(res);\n if (res === '' || res === null) {\n message.success('删除数据成功');\n getTableData();\n }\n }\n );\n },\n cancelText: '取消',\n });\n };\n\n //初始化view\n const init = (item: any, select: number) => {\n selectTabs.value = select;\n option.value = {\n progDesignId: item.programId,\n programId: item.programId,\n incentiveCategory: item.incentiveCategory,\n offerTypeId: item.offerTypeId,\n offerTypeName: item.categoryName,\n programCode: item.programeCode,\n programName: item.programeName,\n dealerNameCn: item.dealerNameCn,\n dealerCode: item.dealerCode,\n eligiblePeriodFrom: item.retailBegin,\n eligiblePeriodTo: item.retailEnd,\n offerTypeKey: item.offerTypeKey,\n };\n\n console.log(option.value);\n\n //进行初始化,进行异步访问\n\n const getExamplePic = docSampleDealer({\n programId: option.value.programId,\n }); //获取文档样例\n const getSupportArray = extendTitleList({\n programId: option.value.programId,\n }); //获取列表表头列信息\n const getTableData = getTablelist({\n eligiblePeriodFrom: option.value.eligiblePeriodFrom,\n eligiblePeriodTo: option.value.eligiblePeriodTo,\n programId: option.value.programId,\n offerTypeId: option.value.offerTypeId,\n dealerCode: option.value.dealerCode,\n }); //获取表格数据\n // cosnt p3 -\n\n Promise.all([getExamplePic, getSupportArray, getTableData])\n .then((result) => {\n // console.log(result) //['成功了', 'success']\n if (result[0].length > 0) {\n supportSample.value = result[0];\n }\n\n if (result[1].length === 0) {\n noDoc.value = true;\n }\n\n //支持文档表格长度\n const supportArrayWidth = ref(0);\n //处理表格标题\n const supportArray = result[1];\n columns.value = [];\n for (let i = 0; i < supportArray.length; i++) {\n columns.value.push({\n title: supportArray[i],\n dataIndex: supportArray[i],\n key: supportArray[i],\n width: supportArray[i].length * 15,\n });\n supportArrayWidth.value =\n supportArrayWidth.value +\n supportArray[i].length * 8;\n }\n if (supportArrayWidth.value === 0) {\n supportArrayWidth.value = 300;\n }\n columns.value.push({\n title: '支持文档',\n slots: { customRender: 'supportDoc' },\n key: 'supportDoc',\n width: supportArrayWidth.value,\n });\n columns.value.push({\n title: '操作',\n key: 'action',\n slots: { customRender: 'action' },\n width: 100,\n });\n\n if (supportArrayWidth.value + 100 > tableWidth.value) {\n tableWidth.value = supportArrayWidth.value + 100;\n }\n // debugger\n\n if (\n result[2].length > 0 &&\n result[2][0].docList.length === 0\n ) {\n isSupport.value = true;\n }\n\n //处理列表数据\n\n const p33 = result[2];\n for (let i = 0; i < p33.length; i++) {\n const one = {\n id: p33[i].id,\n supportDoc: p33[i].docList,\n };\n\n if (p33[i].extendInfoLst === '') {\n continue;\n }\n if (p33[i].extendInfoLst !== null) {\n p33[i].extendInfoLst.forEach((item: any) => {\n one[item.fieldNameCn] = item.content;\n });\n }\n dataSource.value.push(one);\n }\n\n console.log(dataSource.value);\n })\n .catch((error) => {\n console.log(error);\n });\n };\n //预览支持文档\n const showSupport = (item: any, record: any) => {\n if (item.filePath != null && item.filePath.length > 0) {\n // supportExample.value.showDrawerReview(item);\n\n docReview({ collectionDocId: item.collectionDocId }).then(\n (res: any): void => {\n if (res.ext === 'jpg') {\n base64code.value =\n 'data:image/jpg;base64,' + res.base64code;\n type.value = 'jpg';\n } else if (res.ext === 'pdf') {\n base64code.value = URL.createObjectURL(\n b64toBlob(res.base64code, 'application/pdf')\n );\n type.value = 'pdf';\n }\n\n visible.value = true;\n }\n );\n // visible.value = true;\n }\n };\n\n //下载信息模板\n const dowloadDoc = () => {\n const downloadParams = {\n progDesignId: option.value.programId,\n };\n const params = {\n url: `/claimapi/dealer/doc/extendTemplateDownload`,\n method: 'get',\n params: downloadParams,\n };\n downloadFile(params, 'application/vnd-excel; char-set=UTF-8').then(\n (res) => {\n console.log(res);\n }\n );\n };\n\n //批量上传文档\n const uploadSupportDraw = () => {\n uploadSupport.value.showDrawer(option.value);\n };\n\n //扩展信息批量上传\n const showUploadDrawer = () => {\n uploadInformation.value.showDrawer(option.value);\n };\n\n //进行跳转\n const nextStep = () => {\n console.log('nextStep');\n message.success('操作已完成');\n router.push({ name: 'Sales Incentive Claim' });\n };\n const preStep = () => {\n ctx.emit('pre-page', selectTabs.value);\n };\n\n // onMounted(() => {\n // //根据传入的id和其他参数,获取列表信息\n // init();\n\n // option.value ={\n // progDesignId:props.groupId,\n // incentiveCategory: props.incentiveCategory,\n // offerTypeId: props.categoryID,\n // offerTypeName: props.categoryName,\n // programCode: props.programeCode,\n // programName: props.programeName,\n // dealerNameCn: \"\",\n // dealerCode: \"\",\n // }\n\n // });\n return {\n preStep,\n isSupport,\n showUploadDrawer,\n uploadSupportDraw,\n uploadSupport,\n uploadInformation,\n dowloadDoc,\n base64code,\n type,\n pdfHeight,\n supportExample,\n supportSample,\n extendInformationDom,\n isOnlyView,\n visible,\n columns,\n exampleImg,\n dataSource,\n tableHeight,\n closeDrawer,\n editTable,\n deleteTable,\n addExtendInformation,\n showExample,\n init,\n showSupport,\n nextStep,\n getTableData,\n tableWidth,\n noDoc,\n };\n },\n});\n","import { render } from \"./index.vue?vue&type=template&id=45869046&scoped=true&ts=true\"\nimport script from \"./index.vue?vue&type=script&lang=ts\"\nexport * from \"./index.vue?vue&type=script&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=45869046&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-45869046\"]])\n\nexport default __exports__","\nimport { defineComponent, ref, reactive, onMounted, nextTick } from 'vue';\nimport Submit from '../Submit/index.vue';\nimport DocumentSubmit from '../DocumentSubmit/index.vue';\nimport {\n getTabsData,\n saveClaimDealerProgramInfo,\n getTime,\n} from '@/API/claim/delaerClaim/delaer';\nimport { useRoute, useRouter } from 'vue-router';\n//申报类型\ninterface CategoryType {\n typeName: string;\n typeId: string;\n count: string;\n offerTypeNameEn: string;\n incentiveCategory: string;\n offerTypePathKey: string;\n}\n//tab页信息列表\ninterface TabsType {\n type: string;\n endTime: string;\n startTime: string;\n value: string;\n retailBegin: string;\n retailEnd: string;\n categoryArray: Array;\n isDocument: boolean;\n eligiblePeriodId: string;\n eligiblePeriodName: string;\n}\n\nexport default defineComponent({\n components: {\n Submit,\n DocumentSubmit,\n },\n beforeRouteEnter(to, from, next) {\n if (from.fullPath === '/claim/Dealer') {\n next();\n } else if (from.fullPath === '/claim/DealerVINList') {\n next();\n } else {\n next('/claim/Dealer');\n }\n },\n setup() {\n const route = useRoute();\n const router = useRouter();\n const programId = ref(route.params.groupId);\n const programeCode = ref(route.params.programCode);\n const programeName = ref(route.params.programNameEn);\n const programNameCn = ref(route.params.programNameCn); //对应CN\n\n // const programBu =ref(route.params.programBu);\n const programBu = ref(route.params.programBu);\n const programBuName = ref(route.params.programBuName);\n const programBuSecond = ref(route.params.programBuSecond);\n const programBuSecondName = ref(route.params.programBuSecondName);\n\n const programOwner = ref(route.params.programOwner);\n const releaseDate = ref(route.params.releaseDate);\n\n const dealerCode = ref(route.params.dealerCode);\n // const dealerCode = ref('193120340')\n const dealerName = ref(route.params.dealerNameEN);\n const dealerNameCn = ref(route.params.dealerNameCN);\n // const offerTypeNameEn = ref('offerTypeNameEn');\n\n //概览内容\n const startTime = ref('startTime');\n const endTime = ref('endTime');\n const sumNum = ref(route.params.declaredVin);\n\n const retailBegin = ref('retailBegin');\n const retailEnd = ref('retailEnd');\n\n //子组件实例\n const SubmitDom = ref(null);\n const DocumentSubmitDom = ref(null);\n\n const isStop = ref(false);\n const isDocument = ref(false);\n\n //tabs相关内容\n const selectTabs = ref(0);\n const tabs = ref([\n {\n type: ' ',\n endTime: ' ',\n startTime: ' ',\n value: ' ',\n retailBegin: ' ',\n retailEnd: ' ',\n categoryArray: [],\n isDocument: false,\n eligiblePeriodId: '',\n eligiblePeriodName: '',\n },\n ]);\n\n const tabBarStyle = ref({\n background: 'white',\n });\n\n //申报类型单选框\n const offerTypeId = ref('');\n const categoryArray = ref([]);\n const isCategory = ref(true);\n //单选框样式\n const radioStyle = reactive({\n display: 'block',\n height: '30px',\n lineHeight: '30px',\n fontSize: '14px',\n });\n\n const option = reactive({\n offerTypeId: '',\n categoryName: '',\n programId: programId.value,\n programeName: programeName.value,\n programeCode: '',\n retailEnd: '',\n retailBegin: '',\n incentiveCategory: '',\n submissionDateFrom: '',\n submissionDateTo: '',\n offerTypeNameEn: '',\n dealerCode: dealerCode.value,\n dealerName: dealerName.value,\n programNameCn: programNameCn.value,\n dealerNameCn: dealerNameCn.value,\n offerTypePathKey: '',\n offerTypeKey: '',\n eligiblePeriodId: '',\n eligiblePeriodName: '',\n\n programBu: '',\n programBuName: '',\n programBuSecond: '',\n programBuSecondName: '',\n projectType: '',\n });\n const isShowPic = ref(true);\n\n //------所有事件--------\n const shouldShowStop = () => {\n getTime().then((res) => {\n if (Date.parse(endTime.value + ' 23:59:59') <= res) {\n isStop.value = true;\n } else {\n isStop.value = false;\n }\n });\n };\n\n //切换tabs\n const cutTabs = (activeKey: number) => {\n endTime.value = tabs.value[activeKey].endTime;\n startTime.value = tabs.value[activeKey].startTime;\n selectTabs.value = activeKey;\n categoryArray.value = tabs.value[activeKey].categoryArray;\n retailBegin.value = tabs.value[activeKey].retailBegin;\n retailEnd.value = tabs.value[activeKey].retailEnd;\n\n isDocument.value = tabs.value[activeKey].isDocument;\n isCategory.value = true;\n isShowPic.value = true;\n shouldShowStop();\n };\n\n const preStep = () => {\n router.push({\n name: 'Sales Incentive Claim',\n params: { isPre: 'true' },\n });\n };\n\n //进行下一步\n const nextStep = () => {\n // isCategory.value = false;\n\n option.programId = programId.value;\n\n let name = '';\n let incentiveCategory = '';\n let offerTypeNameEn = '';\n let offerTypeKey = '';\n for (\n let i = 0;\n i < tabs.value[selectTabs.value].categoryArray.length;\n i++\n ) {\n const ca = tabs.value[selectTabs.value].categoryArray[i];\n if (ca.typeId === offerTypeId.value.trim()) {\n name = ca.typeName;\n incentiveCategory = ca.incentiveCategory;\n offerTypeNameEn = ca.offerTypeNameEn;\n offerTypeKey = ca.offerTypePathKey;\n }\n }\n option.incentiveCategory = incentiveCategory;\n option.offerTypeId = offerTypeId.value;\n option.offerTypeNameEn = offerTypeNameEn;\n option.categoryName = name;\n option.programeName = programeName.value as string;\n option.programeCode = programeCode.value as string;\n option.retailBegin = retailBegin.value;\n option.retailEnd = retailEnd.value;\n option.submissionDateFrom = startTime.value;\n option.submissionDateTo = endTime.value;\n option.offerTypePathKey = offerTypeKey;\n option.offerTypeKey = offerTypeKey;\n option.eligiblePeriodId =\n tabs.value[selectTabs.value].eligiblePeriodId;\n option.eligiblePeriodName =\n tabs.value[selectTabs.value].eligiblePeriodName;\n option.programBu =\n programBu.value === 'null' ? '' : (programBu.value as string);\n option.programBuName =\n programBuName.value === 'null'\n ? ''\n : (programBuName.value as string);\n option.programBuSecond =\n programBuSecond.value === 'null'\n ? ''\n : (programBuSecond.value as string);\n option.programBuSecondName =\n programBuSecondName.value === 'null'\n ? ''\n : (programBuSecondName.value as string);\n option.projectType = tabs.value[selectTabs.value].type;\n //还未有数据的\n // option.programNameCn = \"programNameCn\";\n // option.dealerNameCn = \"dealerNameCn\";\n console.log(option);\n\n const params = {\n dealerCode: dealerCode.value,\n eligiblePeriodFrom: option.retailBegin,\n eligiblePeriodTo: option.retailEnd,\n offerTypeId: option.offerTypeId,\n offerTypeKey: option.offerTypeKey,\n offerTypeNameCn: option.categoryName,\n offerTypeNameEn: option.offerTypeNameEn,\n progDesignId: programId.value,\n programCode: programeCode.value,\n programNameCn: programNameCn.value,\n programNameEn: programeName.value,\n programOwner: programOwner.value,\n releaseDate: releaseDate.value,\n\n programBu: programBu.value === 'null' ? '' : programBu.value,\n programBuName:\n programBuName.value === 'null' ? '' : programBuName.value,\n programBuSecond:\n programBuSecond.value === 'null'\n ? ''\n : programBuSecond.value,\n programBuSecondName:\n programBuSecondName.value === 'null'\n ? ''\n : programBuSecondName.value,\n };\n\n if (isDocument.value) {\n isCategory.value = false;\n nextTick(() => {\n isShowPic.value = false;\n DocumentSubmitDom.value.init(option, selectTabs.value);\n });\n } else {\n saveClaimDealerProgramInfo(params).then((res: any): void => {\n isCategory.value = false;\n nextTick(() => {\n isShowPic.value = false;\n SubmitDom.value.init(option, selectTabs.value);\n });\n });\n }\n };\n\n //初始化页面\n const init = () => {\n getTabsData({\n progDesignId: programId.value as string,\n dealerCode: dealerCode.value as string,\n }).then((res: any): void => {\n tabs.value = [];\n //循环doc\n for (let i = 0; i < res.docPeriods.length; i++) {\n const doc = res.docPeriods[i];\n //radioCategoryArray\n const supportArray = [];\n const offertypeVos = doc.offertypeVos;\n\n for (let i = 0; i < offertypeVos.length; i++) {\n supportArray.push({\n typeId: offertypeVos[i].progDesignOfferTypeId,\n typeName: offertypeVos[i].progDesignOfferTypeNameCn,\n count: offertypeVos[i].submissionCount,\n offerTypeNameEn:\n offertypeVos[i].progDesignOfferTypeName,\n incentiveCategory:\n offertypeVos[i].incentiveCategory,\n offerTypePathKey:\n offertypeVos[i].progDesignOfferTypePathKey,\n });\n }\n\n const times =\n doc.eligiblePeriodFrom + ' - ' + doc.eligiblePeriodTo;\n\n tabs.value.push({\n startTime: doc.submissionDateFrom,\n endTime: doc.submissionDateTo,\n type: '订单合同签署日期:',\n value: times,\n retailBegin: doc.eligiblePeriodFrom,\n retailEnd: doc.eligiblePeriodTo,\n categoryArray: supportArray,\n isDocument: true,\n eligiblePeriodId: doc.eligiblePeriodId,\n eligiblePeriodName: doc.eligiblePeriodName,\n });\n }\n\n //循环零售\n for (let i = 0; i < res.retailPeriods.length; i++) {\n const doc = res.retailPeriods[i];\n //radioCategoryArray\n const supportArray = [];\n const offertypeVos = doc.offertypeVos;\n\n for (let i = 0; i < offertypeVos.length; i++) {\n supportArray.push({\n typeId: offertypeVos[i].progDesignOfferTypeId,\n typeName: offertypeVos[i].progDesignOfferTypeNameCn,\n count: offertypeVos[i].submissionCount,\n offerTypeNameEn:\n offertypeVos[i].progDesignOfferTypeName,\n incentiveCategory:\n offertypeVos[i].incentiveCategory,\n offerTypePathKey:\n offertypeVos[i].progDesignOfferTypePathKey,\n });\n }\n\n const times =\n doc.eligiblePeriodFrom + ' - ' + doc.eligiblePeriodTo;\n\n tabs.value.push({\n startTime: doc.submissionDateFrom,\n endTime: doc.submissionDateTo,\n type:\n (res.retailPeriods[i].eligiblePeriodName as string)\n .toLowerCase()\n .indexOf('retail') > -1\n ? '零售日期'\n : '批售日期',\n value: times,\n retailBegin: doc.eligiblePeriodFrom,\n retailEnd: doc.eligiblePeriodTo,\n categoryArray: supportArray,\n isDocument: false,\n eligiblePeriodId: doc.eligiblePeriodId,\n eligiblePeriodName: doc.eligiblePeriodName,\n });\n }\n console.log(tabs.value);\n isDocument.value = tabs.value[selectTabs.value].isDocument;\n //对参数赋值\n retailBegin.value = tabs.value[selectTabs.value].retailBegin;\n retailEnd.value = tabs.value[selectTabs.value].retailEnd;\n endTime.value = tabs.value[selectTabs.value].endTime;\n startTime.value = tabs.value[selectTabs.value].startTime;\n //默认选取tabs\n categoryArray.value =\n tabs.value[selectTabs.value].categoryArray;\n //默认第一个勾选\n offerTypeId.value = categoryArray.value[0].typeId;\n shouldShowStop();\n });\n };\n\n onMounted(() => {\n init();\n });\n\n return {\n selectTabs,\n tabBarStyle,\n tabs,\n startTime,\n endTime,\n sumNum,\n programeCode,\n programeName,\n retailBegin,\n retailEnd,\n offerTypeId,\n isCategory,\n categoryArray,\n radioStyle,\n isStop,\n SubmitDom,\n isDocument,\n nextStep,\n cutTabs,\n DocumentSubmitDom,\n isShowPic,\n programNameCn,\n preStep,\n };\n },\n});\n","import { render } from \"./index.vue?vue&type=template&id=734c252e&scoped=true&ts=true\"\nimport script from \"./index.vue?vue&type=script&lang=ts\"\nexport * from \"./index.vue?vue&type=script&lang=ts\"\n\nimport \"./index.vue?vue&type=style&index=0&id=734c252e&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-734c252e\"]])\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!./index.vue?vue&type=style&index=0&id=45869046&lang=scss&scoped=true\"","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!./index.vue?vue&type=style&index=0&id=7e412e6c&lang=scss&scoped=true\"","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!./index.vue?vue&type=style&index=0&id=e60d92c6&lang=scss&scoped=true\"","import { fetchGet, fetchDelete, fetchPost, fetchPostPic } from \"../../index\";\nimport downloadFile from \"@/utils/claim/downloadFile\";\nimport axios from \"axios\";\n// 查询2275上方tabs页数据\n// export const apitest = (): Promise => {\n// \treturn fetchGet('claimapi/parameter/setup/getParameterPeriod?progDesignId=1')\n// }\n\n//过去激励类型和项目类型\nexport const getOfferType = (): Promise => {\n return fetchGet(\"/claimapi/common/getIncentiveOfferType\");\n};\n//获取项目状态\nexport const getStatus = (): Promise => {\n return fetchGet(\"/claimapi/common/programStatus\");\n};\n\n//获取概览总数\nexport const getSubmissionOverview = (\n params = { dealerCode: \"1\" }\n): Promise => {\n return fetchGet(\"/claimapi/dealer/submissionOverview\", { params });\n};\n\n//获取tabs的数据\nexport const getTabsData = (params = {}): Promise => {\n return fetchGet(\"/claimapi/parameter/setup/getParameterPeriod\", { params });\n};\n\n//获取delaer的列表数据\nexport const getVINTableData = (params = {}): Promise => {\n return fetchPost(\n \"/claimapi/salesIncentiveClaim/salesIncentiveClaimList\",\n params\n );\n};\n\n//获取programe的列表数据\n\nexport const avaliablePrograms = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/avaliablePrograms\", { params });\n};\n\n//导出项目明细\n\nexport const exportAvaliablePrograms = (params = {}): Promise => {\n return fetchPost(\"/claimapi/dealer/exportAvaliablePrograms\", params);\n};\n\n//获取扩展信息类型\nexport const extendEdit = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/extend/edit\", { params });\n};\n\n//查看已经填写的扩展信息\nexport const getExtendInfo = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/extend/view\", { params });\n};\n\n//保存单个扩展信息\nexport const saveInfoExtend = (params = {}): Promise => {\n return fetchPostPic(\"/claimapi/dealer/extend/save\", params);\n};\n\n//下载扩展信息文档\nexport const templateDownload = (params = {}): Promise => {\n return fetchPost(\"/claimapi/dealer/extend/templateDownload\", params);\n};\n\n//查询上传文档的查询接口,返回到底有什么需要上传的文档\nexport const supportReview = (params = {}): Promise => {\n return fetchGet(\"/claimapi/salesIncentiveClaim/review\", { params });\n};\n\n//上传单个支持文档\nexport const supportSaveOrUpdateSingle = (params = {}): Promise => {\n return fetchPost(\"/claimapi/salesIncentiveClaim/saveOrUpdate\", params);\n};\n\n//批量上传支持文档\n// export const supportSaveOrUpdateList = (params = {}): Promise => {\n// return fetchPost('/claimapi/salesIncentiveClaim/uploadBatch', params)\n// }\n//批量上传支持文档\nexport const supportSaveOrUpdateList = (\n invoiceConfig = {},\n params = {}\n): Promise => {\n return fetchPostPic(\n \"/claimapi/salesIncentiveClaim/uploadBatch\",\n params,\n invoiceConfig\n );\n};\n\n//提交零售记录\nexport const saveDealerClaimApp = (data = {}): Promise => {\n console.log(data);\n return fetchPost(\"/claimapi/salesIncentiveClaim/saveDealerClaimApp\", data);\n};\n\n//延期保存\nexport const saveDelayDealerClaimApp = (data = {}): Promise => {\n console.log(data);\n return fetchPost(\n \"/claimapi/salesIncentiveClaim/saveDealerDelayClaimApp\",\n data\n );\n};\n\n//查询支持文档样例\nexport const docSample = (params = {}): Promise => {\n return fetchGet(\"/claimapi/salesIncentiveClaim/docSample\", { params });\n};\n//删除文档\nexport const deleteDocSample = (docId: string): Promise => {\n return fetchPost(\n \"/claimapi/salesIncentiveClaim/deleteFile\",\n {},\n { params: { docId } }\n );\n};\n\n//查询支持文档样例2278\nexport const docSampleDealer = (params = {}): Promise => {\n return fetchGet(\"/claimapi/claimDocCollection/docSample\", { params });\n};\n\n//显示支持文档样例\nexport const docSampleReview = (params = {}): Promise => {\n return fetchGet(\"/claimapi/salesIncentiveClaim/docSampleReview\", {\n params,\n });\n};\n\n//显示已经上传的图片 2278\nexport const docReview = (params = {}): Promise => {\n return fetchGet(\"/claimapi/claimDocCollection/review\", { params });\n};\n//显示单个上传图片 2276实际是4954再用\nexport const claimReview = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealerClaimSupportingDoc/review\", { params });\n};\n\n//2275的下一步校验\n\nexport const validateReplaceAttributes = (data = {}): Promise => {\n return fetchPost(\n \"/claimapi/salesIncentiveClaim/validateReplaceAttributes\",\n data\n );\n};\n\n// 2278的接口\n\n//获取表格列信息\nexport const extendTitleList = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/doc/extendTitleList\", { params });\n};\n\n//获取表格数据\nexport const getTablelist = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/doc/list\", { params });\n};\n\n//获取新增的 ,扩展字段类型,弹出抽屉\nexport const getDocView = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/doc/view\", { params });\n};\n\n//获取已填写的 ,扩展字段类型,弹出抽屉\nexport const getDocEdit = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/doc/edit\", { params });\n};\n\n//保存抽屉信息\nexport const dealerSave = (params = {}): Promise => {\n // return fetchGet('/claimapi/dealer/doc/save', {params})\n return fetchPostPic(\"/claimapi/dealer/doc/save\", params);\n};\n\n//删除单个图片\nexport const deleteFile = (params = { docId: \"\" }): Promise => {\n // return fetchGet('/claimapi/dealer/doc/save', {params})\n return fetchPost(\n \"/claimapi/claimDocCollection/deleteFile?docId=\" + params.docId\n );\n};\n\n//删除一条记录\nexport const deleteTableItem = (params = {}): Promise => {\n // return fetchGet('/claimapi/dealer/doc/save', {params})\n return fetchDelete(\"/claimapi/dealer/doc/delete\", { params });\n};\n\n//获取批量上传窗口信息\nexport const uploadBatchInfo = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/doc/uploadBatchInfo\", { params });\n};\n\n//下载扩展信息文档\nexport const downloadExtendInfoApi = (params: any): void => {\n downloadFile(params, \"application/vnd-excel; char-set=UTF-8\").then((res) => {\n console.log(res);\n });\n};\n\n//下载证明文件5027\n// export const downloadProve = (params: any): void => {\n// downloadFile(params, \"application/json; char-set=UTF-8\").then(\n// (res) => {\n// console.log(res);\n// }\n// );\n// }\n\nexport const downloadProve = (params = {}): Promise => {\n return fetchGet(`/claimapi/salesIncentiveClaim/downloadFile`, { params });\n};\n\n//批量上传扩展信息2275\nexport const uploadExtendInfoApi = (\n formData: FormData,\n params: any\n): Promise => {\n // return fetchGet('/claimapi/dealer/doc/save', {params})\n return new Promise((resolve, reject) => {\n axios({\n method: \"post\",\n data: formData,\n url: \"/claimapi/dealer/extend/uploadExtendInfo\",\n params: params,\n })\n .then((res) => {\n resolve(res.data);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\n//上传文件证明 2277\nexport const uploadProve = (formData: FormData, params: any): Promise => {\n // return fetchGet('/claimapi/dealer/doc/save', {params})\n return new Promise((resolve, reject) => {\n axios({\n method: \"post\",\n data: formData,\n url: \"/claimapi/salesIncentiveClaim/region/upload\",\n params: params,\n })\n .then((res) => {\n resolve(res.data);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\n//获取区域证明文件\nexport const getProveApi = (params = {}): Promise => {\n return fetchGet(\"/claimapi/salesIncentiveClaim/region/fileName\", {\n params,\n });\n};\n\n//在2797跳转时,先给后端存储数据\nexport const saveClaimDealerProgramInfo = (data = {}): Promise => {\n return fetchPost(\n \"/claimapi/ClaimDealerProgramInfoController/saveClaimDealerProgramInfo\",\n data\n );\n};\n\n//获取user,获取DealerID\nexport const getUser = (params = {}): Promise => {\n return fetchGet(\"/usapi/users/currentuser\");\n};\n\n//获取所有一级BU\nexport const getAllParentBu = (): Promise => {\n return fetchGet(\"/usapi/noAuth/bu/parentBu\");\n};\n\n//获取Dealer相关信息\nexport const getDealerMessageApi = (dealerID: string): Promise => {\n return fetchGet(\"/dapi/dealerInfo/\" + dealerID);\n};\n//根据dealerCode和programBU获取区域经理\nexport const getManagerApi = (params = {}): Promise => {\n return fetchGet(\"/claimapi/common/regionManagerEnquiry\", { params });\n};\n\n//5027获取延期申报列表\nexport const getAvaliableDelayProgramsApi = (params = {}): Promise => {\n return fetchGet(\"/claimapi/dealer/avaliableDelayPrograms\", { params });\n};\n\n//申报完成后,给后端保存\nexport const setClaimDocumentMatching = (data = {}): Promise => {\n return fetchPost(\"/claimapi/salesIncentiveClaim/claimDocumentMatching\", data);\n};\n\n//2273新增 匹配客户关系,异步\nexport const matchingCustomerTypeApi = (params: any): Promise => {\n return fetchPost(\"/claimapi/dealer/matchingCustomerType\", params);\n};\n\n//2278新增 中途上传文件后重新匹配文档\nexport const rematch = (params: any): Promise => {\n return fetchPost(\"/claimapi/dealer/doc/rematch\", params);\n};\n\nexport const getTime = (): Promise => {\n return fetchGet(\"/claimapi/common/getTime\");\n};\n\n//单个文件OCR验证\nexport const OCROne = (\n formData: FormData,\n params: any,\n url: string\n): Promise => {\n // return fetchGet('/claimapi/dealer/doc/save', {params})\n return new Promise((resolve, reject) => {\n axios({\n method: \"post\",\n data: formData,\n url: \"/claimapi\" + url,\n params: params,\n })\n .then((res) => {\n resolve(res.data);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\n//多个文件OCR验证\nexport const OCRS = (\n formData: FormData,\n param: any,\n url: string\n): Promise => {\n // return fetchGet('/claimapi/dealer/doc/save', {params})\n return new Promise((resolve, reject) => {\n axios({\n method: \"post\",\n data: formData,\n url: \"/claimapi\" + url,\n params: param,\n })\n .then((res) => {\n resolve(res.data);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\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!./SingleInformation.vue?vue&type=style&index=0&id=cd11fc24&lang=scss&scoped=true\"","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!./UploadExample.vue?vue&type=style&index=0&id=ab027ad8&lang=scss&scoped=true\"","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!./index.vue?vue&type=style&index=0&id=50a4b4ca&lang=scss&scoped=true\"","/*\n * @Author: zhengda.lv\n * @Date: 2021-10-30 10:15:26\n * @LastEditTime: 2021-12-17 16:13:15\n * @LastEditors: zhengda.lv\n * @Description:\n */\nimport axios from 'axios';\nimport { AxiosRequestConfig } from '@/API/types';\nexport default (options: AxiosRequestConfig, type: string) => {\n const { url, method = 'get', params, fileName } = options;\n const config: any = {\n url: url,\n method,\n responseType: 'blob',\n };\n if (method === 'get') {\n config['params'] = params;\n } else {\n config['data'] = params;\n }\n return new Promise((resolve, reject) => {\n axios(config)\n .then((res: any) => {\n // 文件格式\n const blob = new Blob([res.data], { type: type }); //指定格式为vnd.ms-excel\n const downloadElement = document.createElement('a');\n const href = window.URL.createObjectURL(blob); //创建下载的链接\n downloadElement.href = href;\n const str = res.headers['content-disposition'];\n const index = str.lastIndexOf('=');\n if (str.substring(index + 1, str.length)) {\n downloadElement.download = decodeURIComponent(\n str.substring(index + 1, str.length)\n );\n } else if (fileName) {\n downloadElement.download = fileName;\n } else {\n downloadElement.download = Date.now().toString();\n }\n document.body.appendChild(downloadElement);\n downloadElement.click(); //点击下载\n document.body.removeChild(downloadElement); //下载完成移除元素\n window.URL.revokeObjectURL(href); //释放掉blob对象\n resolve(res);\n })\n .catch(function(error: string) {\n console.log(error);\n return reject(error);\n });\n });\n};\n"],"sourceRoot":""}