| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483 |
- <template>
- <a-spin :spinning="uploading" size="large" tip="正在提交资料,请勿关闭当前网页...">
- <div>
- <a-page-header
- style="background-color: #FFFFFF;"
- title="特审复开资料填写"
- @back="goBack"
- ></a-page-header>
- <a-card :bordered="false" :title="'客户信息填写'" style="margin-top: 10px;">
- <a-form-model
- ref="form"
- :label-col="labelCol"
- :wrapper-col="wrapperCol"
- :model="model"
- :rules="rules"
- >
- <!-- 业务基本情况内容 -->
- <a-card :bordered="true">
- <div slot="title">
- 业务基本情况
- <span v-show="specialResult.basicInfoState == '1'">✅</span>
- <span v-show="specialResult.basicInfoState == '0'">❌</span>
- </div>
- <a-row>
- <a-col :span="24">
- <a-form-model-item label="用户选择" prop="userOpenState" v-bind="labelCol1">
- <a-radio-group v-model="model.userLable" button-style="solid" @change="changeUserLable()">
- <a-radio-button value="0">个人户</a-radio-button>
- <a-radio-button value="1">单位户</a-radio-button>
- </a-radio-group>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="!batchImproves">
- <a-form-model-item label="申请复开号码" prop="openingNumber" v-bind="labelCol1">
- <a-input :disabled="true" v-model="model.openingNumber" placeholder="申请复开号码"></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="!batchImproves">
- <a-form-model-item label="客户名称(使用人)" prop="customerName" v-bind="labelCol1">
- <a-input :disabled="true" v-model="model.customerName" placeholder="客户名称/使用人名称"></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="model.userLable == '1' || !batchImproves" >
- <a-form-model-item label="单位名称" prop="customerName" v-bind="labelCol1">
- <a-input v-model="model.unitName" placeholder="单位名称"></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="!batchImproves">
- <a-form-model-item label="关停时间" prop="shutdownTime" v-bind="labelCol1">
- <a-date-picker :disabled="true" :style="{width:'100%'}" v-model="model.shutdownTime"
- format="YYYY-MM-DD HH:mm:ss"
- showTime valueFormat="YYYY-MM-DD HH:mm:ss"/>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="!batchImproves">
- <a-form-model-item label="申请复开原因" prop="reasonReopening" v-bind="labelCol1">
- <a-input v-model="model.reasonReopening" placeholder="申请复开原因"></a-input>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="specialResult.basicInfoState != '1'">
- <a-form-model-item label="材料标签选择" prop="userOpenState" v-bind="labelCol1">
- <a-radio-group v-model="model.materialLabel" button-style="solid">
- <a-radio-button value="0">材料不全(有特审)</a-radio-button>
- <a-radio-button value="1">材料齐全(无特审)</a-radio-button>
- </a-radio-group>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="specialResult.basicInfoState != '1'">
- <a-form-model-item label="关停标签选择" prop="userOpenState" v-bind="labelCol1">
- <a-radio-group v-model="model.shutdownLabel" button-style="solid" >
- <a-radio-button value="0">安防停机(高危漫游地)</a-radio-button>
- <a-radio-button value="1">安防关停(紫名单)</a-radio-button>
- <a-radio-button value="2">安防停机(专班研判)</a-radio-button>
- <a-radio-button value="3">安防停机(可复开)</a-radio-button>
- <a-radio-button value="4">沉默移动卡保护性单停</a-radio-button>
- <a-radio-button value="5">集团一点停复机(单停)</a-radio-button>
- <a-radio-button value="6">大数据保护停机单停</a-radio-button>
- <a-radio-button value="7">工信部断卡单停</a-radio-button>
- <a-radio-button value="8">实人核验未通过关停(单停)</a-radio-button>
- </a-radio-group>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="specialResult.basicInfoState == '1'">
- <a-form-model-item label="材料标签选择" prop="userOpenState" v-bind="labelCol1">
- <a-radio-group v-model="model.materialLabel" button-style="solid">
- <a-radio-button v-if="model.materialLabel == '0'" value="0">材料不全(有特审)</a-radio-button>
- <a-radio-button v-if="model.materialLabel == '1'" value="1">材料齐全(无特审)</a-radio-button>
- </a-radio-group>
- </a-form-model-item>
- </a-col>
- <a-col :span="24" v-if="specialResult.basicInfoState == '1'">
- <a-form-model-item label="关停标签选择" prop="userOpenState" v-bind="labelCol1">
- <a-radio-group v-model="model.shutdownLabel" button-style="solid">
- <a-radio-button v-if="model.shutdownLabel == '0'" value="0">安防停机(高危漫游地)</a-radio-button>
- <a-radio-button v-if="model.shutdownLabel == '1'" value="1">安防关停(紫名单)</a-radio-button>
- <a-radio-button v-if="model.shutdownLabel == '2'" value="2">安防停机(专班研判)</a-radio-button>
- <a-radio-button v-if="model.shutdownLabel == '3'" value="3">安防停机(可复开)</a-radio-button>
- <a-radio-button v-if="model.shutdownLabel == '4'" value="4">沉默移动卡保护性单停</a-radio-button>
- <a-radio-button v-if="model.shutdownLabel == '5'" value="5">集团一点停复机(单停)</a-radio-button>
- <a-radio-button v-if="model.shutdownLabel == '6'" value="6">大数据保护停机单停</a-radio-button>
- <a-radio-button v-if="model.shutdownLabel == '7'" value="7">工信部断卡单停</a-radio-button>
- <a-radio-button v-if="model.shutdownLabel == '8'" value="8">实人核验未通过关停(单停)</a-radio-button>
- </a-radio-group>
- </a-form-model-item>
- </a-col>
- </a-row>
- </a-card>
- <!-- 系统实名制截图-->
- <a-card :bordered="true">
- <div slot="title">
- 系统实名制截图
- <span v-show="specialResult.nameFindComplianceState == '1'">✅</span>
- <span v-show="specialResult.nameFindComplianceState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in nameFindCompliance" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.nameFindComplianceState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'nameFindCompliance')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in nameFindCompliance"
- :key="item.id"
- >
- <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.nameFindComplianceState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'nameFindCompliance')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="nameFindCompliance.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- <a-form-model-item style="left: 20%;width: 80%" label="实名制截图备注:" v-bind="labelCol1Plus">
- <a-textarea :disabled="specialResult.nameFindComplianceState == 1 ? true : false" style="height: 50px"
- v-model="nameFindComplianceRemark"
- placeholder="如没有系统实名制截图,需要说明原因"
- />
- <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
- </a-form-model-item>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.nameFindComplianceState == 0 && specialResult.nameFindComplianceNote != null">
- 稽核结果备注:{{ specialResult.nameFindComplianceNote }}
- </li>
- </div>
- </a-card>
- <!-- 材料齐不全有特审核-->
- <a-card v-if="model.materialLabel == '0'" :bordered="true">
- <div slot="title">
- 特审单
- <span v-show="specialResult.specialReviewFormState == '1'">✅</span>
- <span v-show="specialResult.specialReviewFormState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in specialReviewForm" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.specialReviewFormState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'specialReviewForm')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in specialReviewForm"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.specialReviewFormState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'specialReviewForm')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="nameFindCompliance.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- </div>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.specialReviewFormState == 0 && specialResult.specialReviewFormNote != null">
- 稽核结果备注:{{ specialResult.specialReviewFormNote }}
- </li>
- </div>
- </a-card>
- <!-- 附件资料 -->
- <a-card :bordered="true">
- <div slot="title">
- 身份证照片/正反面
- <span v-show="specialResult.idCardState == '1'">✅</span>
- <span v-show="specialResult.idCardState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListIdCard" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.idCardState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListIdCard')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListIdCard"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.idCardState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListIdCard')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListIdCard.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- <!-- 备注-->
- <li style="color: red" v-if="specialResult.idCardState == 0 && specialResult.idCardNote != null">
- 稽核结果备注:{{ specialResult.idCardNote }}
- </li>
- </div>
- </a-card>
- <!-- 手持证件半身照片-->
- <a-card :bordered="true">
- <div slot="title">
- 手持证件半身照片
- <span v-show="specialResult.handCertificateState == '1'">✅</span>
- <span v-show="specialResult.handCertificateState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListHandCertificate" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.handCertificateState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListHandCertificate')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListHandCertificate"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.handCertificateState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListHandCertificate')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListHandCertificate.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.handCertificateState == 0 && specialResult.handCertificateNote != null">
- 稽核结果备注:{{ specialResult.handCertificateNote }}
- </li>
- </div>
- </a-card>
- <!-- 号卡照片-->
- <a-card v-if="model.userLable == '0'" :bordered="true">
- <div slot="title">
- 号卡照片
- <span v-show="specialResult.numberCardState == '1'">✅</span>
- <span v-show="specialResult.numberCardState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListNumberCard" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.numberCardState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListNumberCard')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListNumberCard"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.numberCardState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListNumberCard')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListNumberCard.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- <!-- 备注-->
- <li style="color: red" v-if="specialResult.numberCardState == 0 && specialResult.numberCardNote != null">
- 稽核结果备注:{{ specialResult.numberCardNote }}
- </li>
- </div>
- </a-card>
- <!-- 使用人证件-->
- <a-card v-if="model.userLable == '1'" :bordered="true">
- <div slot="title">
- 使用人证件
- <span v-show="specialResult.userCertificateState == '1'">✅</span>
- <span v-show="specialResult.userCertificateState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative"></div>
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListUserCertificate" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.userCertificateState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListUserCertificate')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListUserCertificate"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.userCertificateState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListUserCertificate')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListUserCertificate.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.userCertificateState == 0 && specialResult.userCertificateNote != null">
- 稽核结果备注:{{ specialResult.userCertificateNote }}
- </li>
- </div>
- </a-card>
- <!-- 营业执照副本(盖公章)-->
- <a-card v-if="model.userLable == '1'" :bordered="true">
- <div slot="title">
- 营业执照副本(盖公章)
- <span v-show="specialResult.businessLicenseState == '1'">✅</span>
- <span v-show="specialResult.businessLicenseState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListBusiness" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.businessLicenseState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListBusiness')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListBusiness"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.businessLicenseState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListBusiness')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListBusiness.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.businessLicenseState == 0 && specialResult.businessLicenseNote != null">
- 稽核结果备注:{{ specialResult.businessLicenseNote }}
- </li>
- </div>
- </a-card>
- <!-- 介绍信-->
- <a-card v-if="model.userLable == '1'" :bordered="true">
- <div slot="title">
- 介绍信
- <span v-show="specialResult.letterIntroductionState == '1'">✅</span>
- <span v-show="specialResult.letterIntroductionState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListIntroduction" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.letterIntroductionState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListIntroduction')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListIntroduction"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.letterIntroductionState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListIntroduction')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListIntroduction.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.letterIntroductionState == 0 && specialResult.letterIntroductionNote != null">
- 稽核结果备注:{{ specialResult.letterIntroductionNote }}
- </li>
- </div>
- </a-card>
- <!-- 防诈骗承诺涵(使用人签署)-->
- <a-card :bordered="true">
- <div slot="title">
- 防诈骗承诺涵(使用人签署)
- <span v-show="specialResult.fraudPreventionState == '1'">✅</span>
- <span v-show="specialResult.fraudPreventionState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListLetter" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.fraudPreventionState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListLetter')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListLetter"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.fraudPreventionState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListLetter')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListLetter.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.fraudPreventionState == 0 && specialResult.fraudPreventionNote != null">
- 稽核结果备注:{{ specialResult.fraudPreventionNote }}
- </li>
- </div>
- </a-card>
- <!-- 消费凭证-->
- <a-card v-if="model.shutdownLabel == '0'" :bordered="true">
- <div slot="title">
- 消费凭证
- <span v-show="specialResult.consumptionVoucherState == '1'">✅</span>
- <span v-show="specialResult.consumptionVoucherState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListVoucher" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.consumptionVoucherState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListVoucher')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListVoucher"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.consumptionVoucherState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListVoucher')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListVoucher.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.consumptionVoucherState == 0 && specialResult.consumptionVoucherNote != null">
- 稽核结果备注:{{ specialResult.consumptionVoucherNote }}
- </li>
- </div>
- </a-card>
- <!-- 承诺视频-->
- <a-card v-if="model.shutdownLabel == '5'" title="承诺视频" :bordered="true">
- <div slot="title">
- 承诺视频
- <span v-show="specialResult.commitmentVideoState == '1'">✅</span>
- <span v-show="specialResult.commitmentVideoState == '0'">❌</span>
- </div>
- <div class="clearfix">
- <div style="width: 50%;left: 25%;position: relative">
- <!-- swiper1 -->
- <swiper
- class="swiper gallery-top"
- :options="swiperOptionTop"
- ref="swiperTop"
- >
- <swiper-slide class="slide-1" v-for="(item, index) in fileListVideo" :key="item.id">
- <iframe
- v-if="item.urlBase"
- frameborder="1"
- :src="item.urlBase"
- ref="ifr"
- width="80%"
- height="400px"
- scrolling="auto">
- </iframe>
- <img style="width: 80%;height: 400px;border: 1px solid;"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- <a-button v-if="item.urlBase && specialResult.commitmentVideoState != '1'"
- style="display: block;margin-top: 10px;border-color: red;color: red"
- danger @click="removeFile(item,'fileListVideo')">移除
- </a-button>
- </swiper-slide>
- </swiper>
- <!-- swiper2 Thumbs -->
- <swiper
- class="swiper gallery-thumbs"
- :options="swiperOptionThumbs"
- ref="swiperThumbs"
- >
- <swiper-slide
- class="slide"
- style="width:100px;height:100px;"
- v-for="(item, index) in fileListVideo"
- :key="item.id"
- >
- <div v-if="item.urlBase"
- style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
- <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{
- item.fileName
- }}</span>
- </div>
- <img style="width: 100%;height: 96px"
- v-if="!item.urlBase" :src="noDataPng" border="1">
- </swiper-slide>
- <!-- 点我上传文件按钮-->
- <div class="clearfix">
- <a-upload
- v-if="specialResult.commitmentVideoState != '1'"
- listType="picture-card"
- name="file"
- :multiple="false"
- :action="importMinioUploadAction"
- :customRequest="e => selfUploadContract(e, 'fileListVideo')"
- :headers="tokenHeader"
- :showUploadList="false"
- :beforeUpload="importBeforeUpload"
- @change="importHandleChange"
- >
- <div v-if="fileListVideo.length < 10">
- <a-icon type="plus"/>
- <div class="ant-upload-text">点我上传文件</div>
- </div>
- </a-upload>
- </div>
- <div class="swiper-button-next swiper-button-white" slot="button-next">
- <div>
- <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
- </div>
- </div>
- <div class="swiper-button-prev swiper-button-white" slot="button-prev">
- <div>
- <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
- </div>
- </div>
- </swiper>
- </div>
- <!-- 备注-->
- <li style="color: red"
- v-if="specialResult.commitmentVideoState == 0 && specialResult.commitmentVideoNote != null">
- 稽核结果备注:{{ specialResult.commitmentVideoNote }}
- </li>
- </div>
- </a-card>
- <!-- 提交申请 -->
- <a-form-model-item :wrapper-col="{ span: 14, offset: 10 }" style="margin-top: 10px;">
- <a-space>
- <a-button type="primary" @click="handleUpload">
- 提交申请
- </a-button>
- </a-space>
- </a-form-model-item>
- </a-form-model>
- </a-card>
- </div>
- </a-spin>
- </template>
- <script>
- import {httpAction, postAction} from "@api/manage";
- /*无数据图片*/
- import noDataPng from '@/assets/nodata.png'
- import Vue from "vue";
- import {ACCESS_TOKEN, TENANT_ID} from "@/store/mutation-types";
- let Base64 = require('js-base64').Base64
- export default {
- name: 'TaskUploadData',
- inject: ['closeCurrent'],
- components: {
- noDataPng
- },
- data() {
- return {
- //是否批量上传
- batchImproves: false,
- //批量上传id
- ids:[],
- //缩略与大图数据源
- swiperId: 0 + 1,
- //轮播配置
- swiperOptionTop: {
- zoom: true,
- loop: false,
- loopedSlides: 5, // looped slides should be the same
- spaceBetween: 10,
- observer: true, //修改swiper自己或子元素时,自动初始化swiper
- observeParents: true, //修改swiper的父元素时,自动初始化swiper
- // autoplay: { //自动轮播
- // delay: 2000,
- // disableOnInteraction: false
- // },
- navigation: {
- nextEl: '.swiper-button-next',
- prevEl: '.swiper-button-prev'
- }
- },
- swiperOptionThumbs: {
- loop: false,
- loopedSlides: 5, // looped slides should be the same
- spaceBetween: 10,
- centeredSlides: true,
- slidesPerView: 'auto',
- touchRatio: 0.2,
- slideToClickedSlide: true,
- navigation: {
- nextEl: '.swiper-button-next',
- prevEl: '.swiper-button-prev'
- }
- },
- /**无数据图片*/
- noDataPng: noDataPng,
- //结果
- specialResult: {},
- //上级传参
- query: {},
- //客户信息ID
- infoId: "",
- //客户资料ID
- dataId: "",
- model: {
- "shutdownLabel": "0",
- "materialLabel": "0",
- "userLable": "0",
- "openingNumber": ""
- },
- //系统实名制截图
- nameFindCompliance: [{}],
- //系统实名制截图备注
- nameFindComplianceRemark: "",
- //特审单
- specialReviewForm: [{}],
- //身份证正反面
- fileListIdCard: [{}],
- //手持证件照片
- fileListHandCertificate: [{}],
- //号卡照片
- fileListNumberCard: [{}],
- //防诈骗承诺涵
- fileListLetter: [{}],
- //营业执照副本
- fileListBusiness: [{}],
- //介绍信
- fileListIntroduction: [{}],
- //使用人证件
- fileListUserCertificate: [{}],
- //消费凭证
- fileListVoucher: [{}],
- //承诺视频
- fileListVideo: [{}],
- //表单验证
- rules: {
- openingNumber: [
- {required: true, message: '必须输入手机号'},
- ],
- customerName: [
- {required: true, message: '必须输入客户名称'},
- ],
- shutdownTime: [
- {required: true, message: '必须选择关停时间'},
- ]
- },
- previewVisible: false,
- previewVideo: false,
- previewImage: "",
- uploading: false,
- formState: {},
- labelCol: {span: 1},
- wrapperCol: {span: 23},
- // 1列
- labelCol1: {
- labelCol: {
- xs: {span: 24},
- sm: {span: 2},
- },
- wrapperCol: {
- xs: {span: 24},
- sm: {span: 21},
- }
- },
- // 2列
- labelCol2: {
- labelCol: {
- xs: {span: 24},
- sm: {span: 4},
- },
- wrapperCol: {
- xs: {span: 24},
- sm: {span: 18},
- }
- },
- labelCol1Plus: {
- labelCol: {
- xs: {span: 24},
- sm: {span: 2},
- },
- wrapperCol: {
- xs: {span: 24},
- sm: {span: 15},
- }
- },
- url: {
- importExcel: window._CONFIG['domainURL'] + "/smsCheck/task/importCustomerExcel",
- minioUpload: "/smsCheck/customerData/uploadMinio",
- findById: "/special/examination/find/id",
- findCheckState: "/special/examination/find/check/log",
- editInfo: "/special/examination/edit/info",
- batchEditInfo: "/special/examination/batch/edit/info"
- },
- videoState: false, // 视频播放状态
- // 学时
- studyTime: {
- currentTime: 0, // 当前已学时长
- duration: 0 // 总时长
- },
- timer: {}, // 定时器
- pauseTimer: {} // 暂停定时器
- }
- },
- computed: {
- importMinioUploadAction() {
- return window._CONFIG['domianURL'] + this.url.minioUpload;
- },
- tokenHeader() {
- let head = {'X-Access-Token': Vue.ls.get(ACCESS_TOKEN)}
- let tenantid = Vue.ls.get(TENANT_ID)
- if (tenantid) {
- head['tenant-id'] = tenantid
- }
- return head;
- }
- },
- props: {
- taskInfo: {
- type: Object,
- require: true
- },
- poster: {
- type: String,
- required: false,
- default: ""
- },
- src: {
- type: String,
- required: true
- },
- controls: {
- type: Boolean,
- required: false,
- default: true
- },
- control: {
- type: Boolean,
- required: false,
- default: false
- },
- videoData: {
- type: Object,
- required: true
- }
- },
- watch: {
- // 监听操作
- videoData(val, oldVal) {
- const {currentTime, duration} = val;
- if (currentTime && duration && currentTime < duration) {
- this.hintOperate();
- }
- }
- },
- created() {
- this.batchImproves = this.$route.query.batchImproves;
- if (this.batchImproves) {
- //批量上传id
- this.ids = this.$route.query.ids;
- }else {
- //客户ID
- this.infoId = this.$route.query.id;
- this.query.data = this.$route.query.data;
- //复开号码
- this.model.openingNumber = this.query.data.smsNumber
- //客户名称
- this.model.customerName = this.query.data.customerName
- //关停时间
- this.model.shutdownTime = this.query.data.shutdownLabelDate
- }
- if (this.$route.query.rectification) {
- //整改操作获取回填信息
- this.findById(this.infoId);
- }
- },
- mounted() {
- // 实现swiper双向控制
- this.$nextTick(() => {
- const swiperTop = this.$refs.swiperTop.swiper
- const swiperThumbs = this.$refs.swiperThumbs.swiper
- swiperTop.controller.control = swiperThumbs
- swiperThumbs.controller.control = swiperTop
- })
- /**监听视频拨放*/
- this.$refs.myVideo.addEventListener("play", () => {
- this.openTimer();
- });
- /**监听视频暂停*/
- this.$refs.myVideo.addEventListener("pause", () => {
- this.closeTimer();
- });
- },
- methods: {
- goBack() {
- this.$router.go(-1);
- this.closeCurrent();
- },
- /**文件上传成功后回调*/
- importHandleChange(info) {
- },
- /**文件格式限制*/
- importBeforeUpload(file) {
- var fileType = file.type;
- if (fileType === 'image') {
- if (fileType.indexOf('image') < 0) {
- this.$message.warning('请上传图片');
- return false;
- }
- } else if (fileType === 'file') {
- if (fileType.indexOf('image') >= 0) {
- this.$message.warning('请上传文件');
- return false;
- }
- }
- return true
- },
- /**移除文件*/
- removeFile(fileData, fileAttribute) {
- let that = this;
- //处理轮播数据
- let swiperImg = that[fileAttribute];
- if (swiperImg) {
- let number = swiperImg.indexOf(fileData);
- swiperImg.splice(number, 1)
- if (swiperImg.length == 0) {
- swiperImg.push({})
- }
- that[fileAttribute] = swiperImg
- }
- },
- /**自定义的上传文件方法*/
- selfUploadContract(data, fileAttribute) {
- let that = this;
- if (data.file) {
- let formData = new FormData();
- formData.append('file', data.file)
- postAction(this.url.minioUpload, formData).then((res) => {
- if (res.success) {
- that.swiperId = that.swiperId + 1;
- //文件链接
- let filePath = res.message;
- let swipData = {
- id: that.swiperId,
- urlBase: window._CONFIG['onlinePreviewDomainURL'] + '?url='
- + encodeURIComponent(
- Base64.encode(
- (filePath)
- )),
- url: filePath,
- fileName: data.file.name
- }
- if (that[fileAttribute][0].urlBase) {
- that[fileAttribute].push(swipData)
- } else {
- that[fileAttribute] = []
- //数据发生变化
- that[fileAttribute][0] = swipData;
- }
- }
- })
- }
- },
- /**获取稽核结果*/
- findCheckState(id) {
- let that = this;
- let model = {
- "dataId": id,
- }
- postAction(this.url.findCheckState, model)
- .then((res) => {
- if (res.success) {
- that.specialResult = res.result;
- }
- })
- },
- /**包装轮播数据*/
- packageArr(data) {
- let id = 0;
- let newArr = []
- if (data == null) {
- newArr.push({})
- return newArr;
- }
- let splice = data.split(",");
- for (var i in splice) {
- id = id + 1;
- let filePath = splice[i];
- if (filePath == "") {
- break;
- }
- let fileName = filePath.split("/");
- fileName = fileName[fileName.length - 1];
- let swipData = {
- id: id,
- urlBase: window._CONFIG['onlinePreviewDomainURL'] + '?url='
- + encodeURIComponent(
- Base64.encode(
- (filePath)
- )),
- url: filePath,
- fileName: fileName
- }
- newArr.push(swipData);
- }
- return newArr;
- },
- /**整改操作获取回填信息*/
- findById(id) {
- let that = this;
- let model = {
- "infoId": id,
- }
- postAction(this.url.findById, model)
- .then((res) => {
- if (res.success) {
- this.result = res.result;
- that.dataId = this.result.id;
- //获取稽核结果
- that.findCheckState(that.dataId)
- this.model.userLable = this.result.userLable.toString();
- this.model.openingNumber = this.result.openingNumber;
- this.model.customerName = this.result.customerName;
- this.model.unitName = this.result.unitName;
- this.model.shutdownTime = this.result.shutdownTime
- this.model.reasonReopening = this.result.reasonReopening
- this.model.materialLabel = this.result.materialLabel.toString();
- this.model.shutdownLabel = this.result.shutdownLabel.toString();
- this.specialNote = this.result.specialNote;
- this.model.status = this.result.status;
- //身份证正反面
- this.fileListIdCard = this.packageArr(this.result.idCard);
- //手持证件照片
- this.fileListHandCertificate = this.packageArr(this.result.handCertificate);
- //号卡照片
- //号卡照片
- this.fileListNumberCard = this.packageArr(this.result.numberCard);
- //使用人证件
- this.fileListUserCertificate = this.packageArr(this.result.userCertificate);
- //营业执照副本
- this.fileListBusiness = this.packageArr(this.result.businessLicense);
- //介绍信
- this.fileListIntroduction = this.packageArr(this.result.letterIntroduction);
- //防诈骗承诺涵
- this.fileListLetter = this.packageArr(this.result.fraudPrevention);
- //消费凭证
- this.fileListVoucher = this.packageArr(this.result.consumptionVoucher);
- //承诺视频
- this.fileListVideo = this.packageArr(this.result.commitmentVideo);
- //系统实名制截图
- this.nameFindCompliance = this.packageArr(this.result.nameFindCompliance);
- if (this.result.nameFindComplianceRemark != null) {
- this.nameFindComplianceRemark = this.result.nameFindComplianceRemark
- }
- //特审单截图
- this.specialReviewForm = this.packageArr(this.result.specialReviewForm);
- } else {
- this.$message.error("查询失败");
- }
- }).finally(() => {
- })
- },
- // 开启定时器
- openTimer() {
- this.timer = setInterval(() => {
- this.$emit("videoStudyTime", this.studyTime);
- }, 5000);
- },
- // 关闭定时器
- closeTimer() {
- clearInterval(this.timer);
- this.$emit("videoStudyTime", this.studyTime);
- },
- // 开启暂停定时器
- openPauseTimer() {
- this.pauseTimer = setInterval(() => {
- this.hintOperate();
- }, 600000);
- },
- // 关闭暂停定时器
- closePauseTimer() {
- clearInterval(this.pauseTimer);
- },
- // 提示操作
- hintOperate() {
- this.operateVideo();
- this.$alert("请点击确认继续学习", "提示", {
- confirmButtonText: "确定",
- confirmButtonClass: "hint-btn",
- showClose: false,
- callback: action => {
- this.$refs.myVideo.currentTime = this.videoData.currentTime;
- this.operateVideo();
- this.openPauseTimer();
- }
- });
- },
- // 获取当前播放位置
- timeupdate(e) {
- this.studyTime.currentTime = e.target.currentTime;
- this.studyTime.duration = e.target.duration ? e.target.duration : 0;
- },
- // 操作视频播放、暂停
- operateVideo() {
- if (!this.src) {
- this.$message({message: "暂无视频资源,请查看其他视频!"});
- return false;
- }
- if (this.$refs.myVideo.paused) {
- this.$refs.myVideo.play();
- this.videoState = true;
- } else {
- this.$refs.myVideo.pause();
- this.videoState = false;
- }
- },
- beforeUploadNameFindCompliance(file) {
- if (this.nameFindCompliance.length > 2) {//判断上传的图片数量
- return false
- }
- this.exeBaseSpecialNameFindCompliance(file)
- return false
- },
- beforeUploadSpecialReviewForm(file) {
- if (this.specialReviewForm.length > 2) {//判断上传的图片数量
- return false
- }
- this.exeBaseSpecialReviewForm(file)
- return false
- },
- beforeUploadIdCard(file) {
- if (this.fileListIdCard.length > 2) {//判断上传的图片数量
- return false
- }
- this.exeBaseIdCard(file)
- return false
- },
- beforeUploadCertificate(file) {
- if (this.fileListHandCertificate.length > 1) {//判断上传的图片数量
- return false
- }
- this.exeBaseCertificate(file)
- return false
- },
- beforeUploadNumberCard(file) {
- if (this.fileListNumberCard.length > 1) {//判断上传的图片数量
- return false
- }
- this.exeBaseNumberCard(file)
- return false
- },
- beforeUploadLetter(file) {
- if (this.fileListLetter.length > 1) {//判断上传的图片数量
- return false
- }
- this.exeBaseLetter(file)
- return false
- },
- beforeUploadBusiness(file) {
- if (this.fileListBusiness.length > 1) {//判断上传的图片数量
- return false
- }
- this.exeBaseBusiness(file)
- return false
- },
- beforeUploadIntroduction(file) {
- if (this.fileListIntroduction.length > 1) {//判断上传的图片数量
- return false
- }
- this.exeBaseIntroduction(file)
- return false
- },
- beforeUploadUserCertificate(file) {
- if (this.fileListUserCertificate.length > 1) {//判断上传的图片数量
- return false
- }
- this.exeBaseUserCertificate(file)
- return false
- },
- beforeUploadVoucher(file) {
- if (this.fileListVoucher.length > 1) {//判断上传的图片数量
- return false
- }
- this.exeBaseVocher(file)
- return false
- },
- beforeUploadVideo(file) {
- if (this.fileListVideo.length > 1) {//判断上传的图片数量
- return false
- }
- this.exeBaseVideo(file)
- return false
- },
- async exeBaseSpecialNameFindCompliance(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.nameFindCompliance.length < 2 && this.preventSpecialNameFindCompliance(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.nameFindCompliance = [...this.nameFindCompliance, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseSpecialReviewForm(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.specialReviewForm.length < 2 && this.preventSpecialReviewForm(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.specialReviewForm = [...this.specialReviewForm, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseIdCard(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListIdCard.length < 2 && this.preventRepeatIdCard(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListIdCard = [...this.fileListIdCard, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseCertificate(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListHandCertificate.length < 1 && this.preventRepeatCertificate(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListHandCertificate = [...this.fileListHandCertificate, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseNumberCard(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListNumberCard.length < 1 && this.preventRepeatNumberCard(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListNumberCard = [...this.fileListNumberCard, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseLetter(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListLetter.length < 1 && this.preventRepeatLetter(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListLetter = [...this.fileListLetter, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseBusiness(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListBusiness.length < 1 && this.preventRepeatBusiness(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListBusiness = [...this.fileListBusiness, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseIntroduction(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListIntroduction.length < 1 && this.preventRepeatIntroduction(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListIntroduction = [...this.fileListIntroduction, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseUserCertificate(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListUserCertificate.length < 1 && this.preventRepeatUserCertificate(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListUserCertificate = [...this.fileListUserCertificate, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseVocher(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListVoucher.length < 1 && this.preventRepeatVoucher(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListVoucher = [...this.fileListVoucher, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- async exeBaseVideo(file) {
- await this.getBase64(file, (imageUrl) => {
- if (this.fileListVideo.length < 1 && this.preventRepeatVideo(imageUrl)) {//判断图片数量及去重
- const file2 = file
- file2.url = imageUrl
- this.fileListVideo = [...this.fileListVideo, file]
- this.loading = false
- }
- }).then((result) => {
- console.log(result)
- })
- },
- //删除实名制截图
- handleRemoveNameFindCompliance(file) {//删除图片
- const index = this.nameFindCompliance.indexOf(file)
- const newFileList = this.nameFindCompliance.slice()
- newFileList.splice(index, 1)
- this.nameFindCompliance = newFileList
- },
- //删除特审单
- handleRemoveSpecialReviewForm(file) {//删除图片
- const index = this.specialReviewForm.indexOf(file)
- const newFileList = this.specialReviewForm.slice()
- newFileList.splice(index, 1)
- this.specialReviewForm = newFileList
- },
- //删除身份证
- handleRemoveIdCard(file) {//删除图片
- const index = this.fileListIdCard.indexOf(file)
- const newFileList = this.fileListIdCard.slice()
- newFileList.splice(index, 1)
- this.fileListIdCard = newFileList
- },
- //删除手持身份证
- handleRemoveCertificate(file) {//删除图片
- const index = this.fileListHandCertificate.indexOf(file)
- const newFileList = this.fileListHandCertificate.slice()
- newFileList.splice(index, 1)
- this.fileListHandCertificate = newFileList
- },
- //删除号卡
- handleRemoveNumberCard(file) {
- const index = this.fileListNumberCard.indexOf(file)
- const newFileList = this.fileListNumberCard.slice()
- newFileList.splice(index, 1)
- this.fileListNumberCard = newFileList
- },
- //删除防诈骗承诺涵
- handleRemoveLetter(file) {
- const index = this.fileListLetter.indexOf(file)
- const newFileList = this.fileListLetter.slice()
- newFileList.splice(index, 1)
- this.fileListLetter = newFileList
- },
- //删除营业执照副本
- handleRemoveBusiness(file) {
- const index = this.fileListBusiness.indexOf(file)
- const newFileList = this.fileListBusiness.slice()
- newFileList.splice(index, 1)
- this.fileListBusiness = newFileList
- },
- //删除介绍信
- handleRemoveIntroduction(file) {
- const index = this.fileListIntroduction.indexOf(file)
- const newFileList = this.fileListIntroduction.slice()
- newFileList.splice(index, 1)
- this.fileListIntroduction = newFileList
- },
- //删除使用人证件
- handleRemoveUserCertificate(file) {
- const index = this.fileListUserCertificate.indexOf(file)
- const newFileList = this.fileListUserCertificate.slice()
- newFileList.splice(index, 1)
- this.fileListUserCertificate = newFileList
- },
- //消费凭证
- handleRemoveVoucher(file) {
- const index = this.fileListVoucher.indexOf(file)
- const newFileList = this.fileListVoucher.slice()
- newFileList.splice(index, 1)
- this.fileListVoucher = newFileList
- },
- //承诺视频
- handleRemoveVideo(file) {
- const index = this.fileListVideo.indexOf(file)
- const newFileList = this.fileListVideo.slice()
- newFileList.splice(index, 1)
- this.fileListVideo = newFileList
- },
- //排除相同图片
- preventRepeatCertificate(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListHandCertificate.length; i < len; i++) {
- if (this.fileListIdCard[i].url === url) {
- return false
- }
- }
- return true
- },
- //排除相同图片
- preventSpecialNameFindCompliance(url) {
- // 排除相同图片
- for (let i = 0, len = this.nameFindCompliance.length; i < len; i++) {
- if (this.nameFindCompliance[i].url === url) {
- return false
- }
- }
- return true
- },
- //排除相同图片
- preventSpecialReviewForm(url) {
- // 排除相同图片
- for (let i = 0, len = this.specialReviewForm.length; i < len; i++) {
- if (this.specialReviewForm[i].url === url) {
- return false
- }
- }
- return true
- },
- //排除相同图片
- preventRepeatIdCard(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListIdCard.length; i < len; i++) {
- if (this.fileListIdCard[i].url === url) {
- return false
- }
- }
- return true
- },
- //排除相同图片
- preventRepeatNumberCard(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListNumberCard.length; i < len; i++) {
- if (this.fileListNumberCard[i].url === url) {
- return false
- }
- }
- return true
- },
- //排除相同图片
- preventRepeatLetter(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListLetter.length; i < len; i++) {
- if (this.fileListLetter[i].url === url) {
- return false
- }
- }
- return true
- },
- preventRepeatBusiness(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListBusiness.length; i < len; i++) {
- if (this.fileListBusiness[i].url === url) {
- return false
- }
- }
- return true
- },
- preventRepeatIntroduction(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListIntroduction.length; i < len; i++) {
- if (this.fileListIntroduction[i].url === url) {
- return false
- }
- }
- return true
- },
- preventRepeatUserCertificate(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListUserCertificate.length; i < len; i++) {
- if (this.fileListUserCertificate[i].url === url) {
- return false
- }
- }
- return true
- },
- preventRepeatVoucher(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListVoucher.length; i < len; i++) {
- if (this.fileListVoucher[i].url === url) {
- return false
- }
- }
- return true
- },
- preventRepeatVideo(url) {
- // 排除相同图片
- for (let i = 0, len = this.fileListVideo.length; i < len; i++) {
- if (this.fileListVideo[i].url === url) {
- return false
- }
- }
- return true
- },
- getBase64(file, callback) {
- return new Promise((resolve) => {
- let reader = new FileReader()
- reader.readAsDataURL(file)
- reader.onload = () => {
- callback(reader.result)
- resolve('成功')
- }
- })
- },
- //点击关闭图片预览
- handleCancel() {//点击关闭图片预览
- this.previewVisible = false;
- },
- handleVideoCancel() {
- this.previewVideo = false;
- },
- //点击查看大图
- async handlePreview(file) {//点击查看大图
- let reader = new FileReader();
- reader.readAsArrayBuffer(file);
- reader.onload = (loadEvent) => {
- let arrayBuffer = loadEvent.target.result;
- this.previewImage = arrayBuffer
- };
- this.previewVisible = true;
- if (!file.url && !file.preview) {
- file.preview = await this.getBase64(file.originFileObj);
- }
- this.previewImage = file.url || file.preview;
- console.log(this.previewImage)
- this.previewVisible = true;
- },
- //点击查看视频大图
- async handlePreviewVideo(file) {//点击查看大图
- if (!file.url && !file.preview) {
- file.preview = await this.getBase64(file.originFileObj);
- }
- this.previewImage = file.url || file.preview;
- this.previewVideo = true;
- },
- //提交申请
- handleUpload() {
- //材料不全有特审
- if (this.model.materialLabel == '0') {
- if (this.specialReviewForm.length == 0 || !this.specialReviewForm[0].urlBase) {
- this.$warning({
- title: '提示',
- content: '材料不全请上特审单',
- })
- return;
- }
- }
- //系统实名制截图
- if ((this.nameFindCompliance.length == 0 || !this.nameFindCompliance[0].urlBase) && this.nameFindComplianceRemark.length == 0) {
- this.$warning({
- title: '提示',
- content: '请上传系统实名制截图,如没有截图则填写备注信息',
- })
- return
- }
- // 消费凭证:|| this.fileListVoucher.length == 0 || !this.fileListVoucher[0].urlBase
- if (this.model.materialLabel == '1' && (this.fileListIdCard.length == 0 || !this.fileListIdCard[0].urlBase ||
- this.fileListHandCertificate.length == 0 || !this.fileListHandCertificate[0].urlBase || this.fileListNumberCard.length == 0
- || !this.fileListNumberCard[0].urlBase
- || this.fileListLetter.length == 0 || !this.fileListLetter[0].urlBase)) {
- this.$warning({
- title: '提示',
- content: '无特审,请上传全部材料',
- })
- return
- }
- if (this.batchImproves){
- let formData = {
- infoIds: this.ids,
- idCard: this.urlBaseJoin(this.fileListIdCard, "url"),
- handCertificate: this.urlBaseJoin(this.fileListHandCertificate, "url"),
- numberCard: this.urlBaseJoin(this.fileListNumberCard, "url"),
- fraudPrevention: this.urlBaseJoin(this.fileListLetter, "url"),
- businessLicense: this.urlBaseJoin(this.fileListBusiness, "url"),
- letterIntroduction: this.urlBaseJoin(this.fileListIntroduction, "url"),
- userCertificate: this.urlBaseJoin(this.fileListUserCertificate, "url"),
- consumptionVoucher: this.urlBaseJoin(this.fileListVoucher, "url"),
- commitmentVideo: this.urlBaseJoin(this.fileListVideo, "url"),
- nameFindCompliance: this.urlBaseJoin(this.nameFindCompliance, "url"),
- nameFindComplianceRemark: this.nameFindComplianceRemark,
- specialReviewForm: this.urlBaseJoin(this.specialReviewForm, "url"),
- };
- //基础信息
- for (var i in this.model) {
- let modelElement = this.model[i];
- formData[i] = modelElement;
- }
- this.uploading = true;
- httpAction(this.url.batchEditInfo, formData, "POST")
- .then((res) => {
- if (res.success) {
- this.uploading = false;
- this.$message.success("提交成功");
- this.$router.go(-1);
- this.closeCurrent();
- } else {
- this.uploading = false;
- this.$error({
- title: '提示',
- content: res.message,
- })
- }
- }).finally(() => {
- this.uploading = false;
- })
- }else {
- let formData = {
- infoId: this.infoId,
- idCard: this.urlBaseJoin(this.fileListIdCard, "url"),
- handCertificate: this.urlBaseJoin(this.fileListHandCertificate, "url"),
- numberCard: this.urlBaseJoin(this.fileListNumberCard, "url"),
- fraudPrevention: this.urlBaseJoin(this.fileListLetter, "url"),
- businessLicense: this.urlBaseJoin(this.fileListBusiness, "url"),
- letterIntroduction: this.urlBaseJoin(this.fileListIntroduction, "url"),
- userCertificate: this.urlBaseJoin(this.fileListUserCertificate, "url"),
- consumptionVoucher: this.urlBaseJoin(this.fileListVoucher, "url"),
- commitmentVideo: this.urlBaseJoin(this.fileListVideo, "url"),
- nameFindCompliance: this.urlBaseJoin(this.nameFindCompliance, "url"),
- nameFindComplianceRemark: this.nameFindComplianceRemark,
- specialReviewForm: this.urlBaseJoin(this.specialReviewForm, "url"),
- };
- //基础信息
- for (var i in this.model) {
- let modelElement = this.model[i];
- formData[i] = modelElement;
- }
- this.uploading = true;
- httpAction(this.url.editInfo, formData, "POST")
- .then((res) => {
- if (res.success) {
- this.uploading = false;
- this.$message.success("提交成功");
- this.$router.go(-1);
- this.closeCurrent();
- } else {
- this.uploading = false;
- this.$error({
- title: '提示',
- content: res.message,
- })
- }
- }).finally(() => {
- this.uploading = false;
- })
- }
- },
- urlBaseJoin(dataArray, name) {
- let newDataArr = [];
- for (var i in dataArray) {
- let dataArrayElementElement = dataArray[i][name];
- newDataArr.push(dataArrayElementElement);
- }
- return newDataArr.toString();
- },
- //用户选择点击事件
- changeUserLable() {
- /* //身份证正反面
- this.cfileListIdCard = []
- //手持证件照片
- this.fileListHandCertificate= []
- //号卡照片
- this.fileListNumberCard = []
- //防诈骗承诺涵
- this.fileListLetter = []
- //营业执照副本
- this.fileListBusiness = []
- //介绍信
- this.fileListIntroduction = []
- //使用人证件
- this.fileListUserCertificate= []
- //消费凭证
- this.fileListVoucher = []
- //承诺视频
- this.fileListVideo = []*/
- },
- //提交特殊申请
- applySpecial() {
- }
- }
- }
- </script>
- <style lang="less">
- #common-video {
- position: relative;
- .video-box {
- box-sizing: border-box;
- border: 0;
- display: block;
- width: 470px;
- height: 500px;
- outline: none !important;
- }
- .isShow {
- //进度条
- video::-webkit-media-controls-timeline {
- display: none;
- }
- }
- video::-webkit-media-controls-play-button {
- visibility: hidden;
- }
- .operate-btn {
- display: block;
- width: 60px;
- height: 60px;
- position: absolute;
- top: calc(50% - 30px);
- left: calc(50% - 30px);
- }
- .operate-btn:hover {
- opacity: 0.8;
- }
- .fade-out {
- opacity: 0;
- }
- }
- .thumb-example {
- width: 864px;
- margin-top: 20px;
- // background: #000;
- }
- .swiper-slide {
- background-size: cover;
- background-position: center;
- }
- .gallery-top {
- // height: 80% !important;
- /*height: 600px;*/
- width: 100%;
- left: 10%;
- margin-bottom: 30px
- }
- .gallery-thumbs {
- height: 20% !important;
- box-sizing: border-box;
- padding: 10px 0px;
- /* width: 864px;*/
- margin-left: 2px;
- .swiper-button-next {
- right: 0px;
- }
- .swiper-button-prev {
- left: 0px;
- }
- .swiper-button-next,
- .swiper-button-prev {
- background: #fff;
- width: 45px;
- text-align: center;
- height: 101px;
- top: 26%;
- div {
- margin-top: 30px;
- background: rgb(207, 205, 205);
- height: 45px;
- border-radius: 50%;
- img {
- margin: 7px 0 0 2px;
- width: 30px;
- }
- }
- }
- .swiper-button-next:hover div {
- background: rgb(189, 186, 186);
- }
- .swiper-button-prev:hover div {
- background: rgb(189, 186, 186);
- }
- }
- .gallery-thumbs .swiper-slide {
- width: 20%;
- height: 80px;
- // opacity: 0.4;
- }
- .gallery-thumbs .swiper-slide-active {
- border: 2px solid red;
- }
- .markdown ul > li {
- color: #000000d9;
- font-size: 15px;
- line-height: 3;
- margin-left: 20px;
- padding-left: 4px;
- list-style-type: circle;
- }
- </style>
|