TaskUploadData.vue 135 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634
  1. <template>
  2. <a-spin :spinning="this.uploading" size="large" tip="正在提交资料,请勿关闭当前网页...">
  3. <!-- 客户信息-->
  4. <a-page-header
  5. style="background-color: #FFFFFF;margin-bottom:10px"
  6. title="行短稽核资料填写"
  7. :sub-title='notes'
  8. @back="back"
  9. >
  10. <div>
  11. <a-form-model
  12. ref="form"
  13. :model="infoModel"
  14. :rules="rules"
  15. >
  16. <a-row>
  17. <a-col :span="6">
  18. <a-form-model-item label="客户编号" v-bind="labelCol4" >
  19. <a-input v-model="infoModel.customerNo" placeholder="客户编号" :disabled='true'></a-input>
  20. </a-form-model-item>
  21. </a-col>
  22. <a-col :span="6">
  23. <a-form-model-item label="用户编号" v-bind="labelCol4" >
  24. <a-input v-model="infoModel.userNo" placeholder="用户编号" :disabled='true'></a-input>
  25. </a-form-model-item>
  26. </a-col>
  27. <a-col :span="6">
  28. <a-form-model-item label="入网时间" v-bind="labelCol4" >
  29. <a-input v-model="infoModel.networkAccessTime" placeholder="入网时间" :disabled='true'></a-input>
  30. </a-form-model-item>
  31. </a-col>
  32. <a-col :span="6">
  33. <a-form-model-item label="用户发展员工" prop="staffNo" v-bind="labelCol4">
  34. <a-input v-model="infoModel.staffNo" placeholder="用户发展员工" :disabled='true'></a-input>
  35. </a-form-model-item>
  36. </a-col>
  37. <a-col :span="6">
  38. <a-form-model-item label="发展员工姓名" prop="staffNo" v-bind="labelCol4">
  39. <a-input v-model="infoModel.staffName" placeholder="发展员工姓名" :disabled='true'></a-input>
  40. </a-form-model-item>
  41. </a-col>
  42. <a-col :span="6">
  43. <a-form-model-item label="客户名称(全)" prop="customerName" v-bind="labelCol4">
  44. <a-input v-model="infoModel.customerName" placeholder="客户名称/使用人名称"></a-input>
  45. </a-form-model-item>
  46. </a-col>
  47. <a-col :span="6">
  48. <!-- <a-form-model-item label="用户状态" prop="userState" v-bind="labelCol4">-->
  49. <!-- <a-input v-model="infoModel.userState" placeholder="用户状态" :disabled='true'></a-input>-->
  50. <!-- </a-form-model-item>-->
  51. <a-form-item label="用户状态"v-bind="labelCol4" prop="userState" >
  52. <j-dict-select-tag placeholder="请选择用户状态" v-model="infoModel.userState" dictCode="user_status_2"/>
  53. </a-form-item>
  54. </a-col>
  55. <a-col :span="6">
  56. <a-form-model-item label="码号" prop="codeNumber" v-bind="labelCol4">
  57. <a-input v-model="infoModel.codeNumber" placeholder="(接入开通码号95/96/10/11/12/106/400(不含拓展位长))"></a-input>
  58. </a-form-model-item>
  59. </a-col>
  60. <a-col :span="6">
  61. <a-form-model-item label="号码详细用途" prop="numberUse" v-bind="labelCol4">
  62. <a-input v-model="infoModel.numberUse" placeholder="(文字描述,最大200字。)"></a-input>
  63. </a-form-model-item>
  64. </a-col>
  65. <a-col :span="6">
  66. <a-form-model-item label="客户经理手机号" prop="managePhone" v-bind="labelCol4">
  67. <a-input v-model="infoModel.managePhone" placeholder="客户经理手机号"></a-input>
  68. </a-form-model-item>
  69. </a-col>
  70. <a-col :span="6">
  71. <a-form-model-item label="单位联系人手机号" prop="codeNumberContactPhone" v-bind="labelCol4">
  72. <a-input v-model="infoModel.codeNumberContactPhone" placeholder="业务合同码号使用单位联系人手机号"></a-input>
  73. </a-form-model-item>
  74. </a-col>
  75. <!-- <a-col :span="6">-->
  76. <!-- <a-form-model-item label="是否完成整改" prop="isComplete" v-bind="labelCol4">-->
  77. <!-- <a-radio-group v-model="infoModel.isComplete" button-style="solid" >-->
  78. <!-- <a-radio-button value="0">否</a-radio-button>-->
  79. <!-- <a-radio-button value="1">是</a-radio-button>-->
  80. <!-- </a-radio-group>-->
  81. <!-- </a-form-model-item>-->
  82. <!-- </a-col>-->
  83. <a-col :span="6">
  84. <a-form-model-item label="是否为CSP商" prop="isCsp" v-bind="labelCol4">
  85. <a-radio-group v-model="infoModel.isCsp" button-style="solid" >
  86. <a-radio-button value="0">否</a-radio-button>
  87. <a-radio-button value="1">是</a-radio-button>
  88. </a-radio-group>
  89. </a-form-model-item>
  90. </a-col>
  91. <a-col :span="10">
  92. <a-form-model-item label="码号证书营业执照合同签约方主体是否一致" prop="codeNumberBusinessLicense" v-bind="labelCol5">
  93. <a-radio-group v-model="infoModel.codeNumberBusinessLicense" button-style="solid" >
  94. <a-radio-button value="0">否</a-radio-button>
  95. <a-radio-button value="1">是</a-radio-button>
  96. </a-radio-group>
  97. </a-form-model-item>
  98. </a-col>
  99. <a-col :span="8">
  100. <a-form-model-item label="签约号码与证书下发码号是否一致" prop="isSigningNumber" v-bind="labelCol5">
  101. <a-radio-group v-model="infoModel.isSigningNumber" button-style="solid" >
  102. <a-radio-button value="0">否</a-radio-button>
  103. <a-radio-button value="1">是</a-radio-button>
  104. </a-radio-group>
  105. </a-form-model-item>
  106. </a-col>
  107. <a-col :span="8" v-if='infoModel.contractDateDateIs==="" || infoModel.contractDateDateIs===null || infoModel.contractDateDateIs==="1" '>
  108. <a-form-model-item label="合同到期时间是否长期" prop="contractDateDateIs" v-bind="labelCol8">
  109. <a-radio-group v-model="infoModel.contractDateDateIs" button-style="solid" >
  110. <a-radio-button value="0">否</a-radio-button>
  111. <a-radio-button value="1">是</a-radio-button>
  112. </a-radio-group>
  113. </a-form-model-item>
  114. </a-col>
  115. <a-col :span="8" v-if='infoModel.contractDateDateIs==="0" ' >
  116. <a-form-model-item label="合同到期时间" prop="contractDateDate" v-bind="labelCol8">
  117. <a-date-picker style="min-width:50px; width: 68% " v-model="infoModel.contractDateDate"
  118. format="YYYY-MM-DD"
  119. showTime valueFormat="YYYY-MM-DD"/>
  120. <a-button @click="backDate('contractDate')" >长期</a-button>
  121. </a-form-model-item>
  122. </a-col>
  123. <a-col :span="8" v-if='infoModel.businessLicenseDateDateIs==="" || infoModel.businessLicenseDateDateIs===null || infoModel.businessLicenseDateDateIs==="1" '>
  124. <a-form-model-item label="营业执照有效期是否长期" prop="businessLicenseDateDateIs" v-bind="labelCol8">
  125. <a-radio-group v-model="infoModel.businessLicenseDateDateIs" button-style="solid" >
  126. <a-radio-button value="0">否</a-radio-button>
  127. <a-radio-button value="1">是</a-radio-button>
  128. </a-radio-group>
  129. </a-form-model-item>
  130. </a-col>
  131. <a-col :span="8" v-if='infoModel.businessLicenseDateDateIs==="0"' >
  132. <a-form-model-item label="营业执照到期时间" prop="businessLicenseDateDate" v-bind="labelCol8">
  133. <a-date-picker style="min-width:50px; width: 68% " v-model="infoModel.businessLicenseDateDate"
  134. format="YYYY-MM-DD"
  135. showTime valueFormat="YYYY-MM-DD"/>
  136. <a-button @click="backDate('businessLicenseDate')" >长期</a-button>
  137. </a-form-model-item>
  138. </a-col>
  139. <a-col :span="8" v-if='infoModel.codeNumberDateDateIs==="" || infoModel.codeNumberDateDateIs===null || infoModel.codeNumberDateDateIs==="1" '>
  140. <a-form-model-item label="码号证书有效期是否长期" prop="codeNumberDateDateIs" v-bind="labelCol8">
  141. <a-radio-group v-model="infoModel.codeNumberDateDateIs" button-style="solid" >
  142. <a-radio-button value="0">否</a-radio-button>
  143. <a-radio-button value="1">是</a-radio-button>
  144. </a-radio-group>
  145. </a-form-model-item>
  146. </a-col>
  147. <a-col :span="8" v-if='infoModel.codeNumberDateDateIs==="0" ' >
  148. <a-form-model-item label="码号证书到期时间" prop="codeNumberDateDate" v-bind="labelCol8">
  149. <a-date-picker style="min-width:50px; width: 68% " v-model="infoModel.codeNumberDateDate"
  150. format="YYYY-MM-DD"
  151. showTime valueFormat="YYYY-MM-DD"/>
  152. <a-button @click="backDate('codeNumberDate')" >长期</a-button>
  153. </a-form-model-item>
  154. </a-col>
  155. <a-col :span="8" v-if='infoModel.filingsDateDateIs==="" || infoModel.filingsDateDateIs===null || infoModel.filingsDateDateIs==="1" '>
  156. <a-form-model-item label="备案到期时间是否长期" prop="filingsDateDateIs" v-bind="labelCol8">
  157. <a-radio-group v-model="infoModel.filingsDateDateIs" button-style="solid" >
  158. <a-radio-button value="0">否</a-radio-button>
  159. <a-radio-button value="1">是</a-radio-button>
  160. </a-radio-group>
  161. </a-form-model-item>
  162. </a-col>
  163. <a-col :span="8" v-if='infoModel.filingsDateDateIs==="0" ' >
  164. <a-form-model-item label="备案通知到期时间" prop="filingsDateDate" v-bind="labelCol8">
  165. <a-date-picker style="min-width:50px; width: 68% " v-model="infoModel.filingsDateDate"
  166. format="YYYY-MM-DD"
  167. showTime valueFormat="YYYY-MM-DD"/>
  168. <a-button @click="backDate('filingsDate')" >长期</a-button>
  169. </a-form-model-item>
  170. </a-col>
  171. <a-col :span="8" v-if='infoModel.permitDateDateIs==="" || infoModel.permitDateDateIs===null || infoModel.permitDateDateIs==="1" '>
  172. <a-form-model-item label="增值业务许可证是否长期" :prop='infoModel.isCsp==="1"?"permitDateDateIs":""' v-bind="labelCol8">
  173. <a-radio-group v-model="infoModel.permitDateDateIs" button-style="solid" >
  174. <a-radio-button value="0">否</a-radio-button>
  175. <a-radio-button value="1">是</a-radio-button>
  176. </a-radio-group>
  177. </a-form-model-item>
  178. </a-col>
  179. <a-col :span="8" v-if='infoModel.permitDateDateIs==="0" ' >
  180. <a-form-model-item label="增值业务许可证到期时间" :prop='infoModel.isCsp==="1"?"permitDateDate":""' v-bind="labelCol8">
  181. <a-date-picker style="min-width:50px; width: 68% " v-model="infoModel.permitDateDate"
  182. format="YYYY-MM-DD"
  183. showTime valueFormat="YYYY-MM-DD"/>
  184. <a-button @click="backDate('permitDate')" >长期</a-button>
  185. </a-form-model-item>
  186. </a-col>
  187. <!-- <a-col :span="8">-->
  188. <!-- <a-form-model-item label="资料是否完整" prop="isAll" v-bind="labelCol4">-->
  189. <!-- <a-radio-group v-model="infoModel.isAll" button-style="solid" >-->
  190. <!-- <a-radio-button value="0">否</a-radio-button>-->
  191. <!-- <a-radio-button value="1">是</a-radio-button>-->
  192. <!-- </a-radio-group>-->
  193. <!-- </a-form-model-item>-->
  194. <!-- </a-col>-->
  195. </a-row>
  196. </a-form-model>
  197. </div>
  198. </a-page-header>
  199. <!-- 步骤条-->
  200. <a-card style="margin-bottom:10px;width: 15%;float: left">
  201. <a-steps direction="vertical" :current="steps.current" size="small" @change="stepsClick">
  202. <a-step v-for="item in steps.stepsNow" :key="item.title" :title="item.title" :status="item.status"/>
  203. </a-steps>
  204. <a-button @click="addIsStaging" style="width: 100%" type="warn">暂存</a-button>
  205. <a-button @click="submitAuditLot" style="width: 100%;position: relative;top: 10px" type="primary">提交申请</a-button>
  206. </a-card>
  207. <!-- 合同到期时间(YYYY-MM-DD)-->
  208. <a-card v-if="steps.currentId == 'contractDate'"
  209. style="margin-bottom:10px;
  210. float: left;width: 83%;left: 2%">
  211. <div slot="title">
  212. <span style="float: left;position: relative;top: 4px">合同资料</span>
  213. </div>
  214. <!-- 文件上传-->
  215. <!-- 附件-->
  216. <div>
  217. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  218. <a-textarea style="height: 77px"
  219. v-model="infoModel.contractDateRemark"
  220. @change="textareaChange('contractDate','contractDateRemark')"
  221. placeholder="如没有合同到期时间,需要说明原因"
  222. />
  223. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  224. </a-form-model-item>
  225. </div>
  226. <div style="height: 70%">
  227. <a-upload
  228. name="file"
  229. :multiple="true"
  230. :action="importMinioUploadAction"
  231. :customRequest="e => selfUploadContract(e, 'contractDate')"
  232. :headers="tokenHeader"
  233. :showUploadList="false"
  234. :beforeUpload="importBeforeUpload"
  235. @change="importHandleChange"
  236. style='margin-left: 90px'
  237. >
  238. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  239. </a-upload>
  240. <div class="thumb-example" >
  241. <!-- swiper1 -->
  242. <swiper
  243. class="swiper gallery-top"
  244. :options="swiperOptionTop"
  245. ref="swiperTop"
  246. >
  247. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.contractDate" :key="item.id">
  248. <iframe
  249. v-if="item.urlBase"
  250. frameborder="1"
  251. :src="item.urlBase"
  252. ref="ifr"
  253. width="85%"
  254. height="445px"
  255. scrolling="auto">
  256. </iframe>
  257. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  258. v-if="!item.urlBase" :src="noDataPng" border="1">
  259. <div>
  260. <a-button v-if="infoModel.contractDate.length && item.urlBase"
  261. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  262. danger @click="removeFile(item,'contractDate')">移除
  263. </a-button>
  264. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  265. v-if="infoModel.contractDate.length && item.urlBase"
  266. @click="jumpUrl(item.urlBase)">预览
  267. </a-button></div>
  268. </div>
  269. </swiper-slide>
  270. <!-- <div
  271. class="swiper-button-next swiper-button-white"
  272. slot="button-next"
  273. ></div>
  274. <div
  275. class="swiper-button-prev swiper-button-white"
  276. slot="button-prev"
  277. ></div>-->
  278. </swiper>
  279. <!-- swiper2 Thumbs -->
  280. <swiper
  281. class="swiper gallery-thumbs"
  282. :options="swiperOptionThumbs"
  283. ref="swiperThumbs"
  284. >
  285. <swiper-slide
  286. class="slide"
  287. style="width:100px;height:100px;"
  288. v-for="(item, index) in infoModel.contractDate"
  289. :key="item.id"
  290. >
  291. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  292. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  293. </div>
  294. <img style="width: 100%;height: 96px"
  295. v-if="!item.urlBase" :src="noDataPng" border="1">
  296. </swiper-slide>
  297. <!-- 点我上传文件按钮-->
  298. <div class="clearfix">
  299. <a-upload
  300. listType="picture-card"
  301. name="file"
  302. :multiple="false"
  303. :action="importMinioUploadAction"
  304. :customRequest="e => selfUploadContract(e, 'contractDate')"
  305. :headers="tokenHeader"
  306. :showUploadList="false"
  307. :beforeUpload="importBeforeUpload"
  308. @change="importHandleChange"
  309. >
  310. <div v-if="infoModel.contractDate.length < 10">
  311. <a-icon type="plus"/>
  312. <div class="ant-upload-text">点我上传合同</div>
  313. </div>
  314. </a-upload>
  315. </div>
  316. <div class="swiper-button-next swiper-button-white" slot="button-next">
  317. <div>
  318. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  319. </div>
  320. </div>
  321. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  322. <div>
  323. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  324. </div>
  325. </div>
  326. </swiper>
  327. </div>
  328. </div>
  329. </a-card>
  330. <!-- 营业执照到期时间-->
  331. <a-card v-if="steps.currentId == 'businessLicenseDate'"
  332. style="margin-bottom:10px;
  333. float: left;width: 83%;left: 2%">
  334. <div slot="title">
  335. <span style="float: left;position: relative;top: 4px">营业执照资料</span>
  336. </div>
  337. <!-- 文件上传-->
  338. <!-- 附件-->
  339. <div>
  340. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  341. <a-textarea style="height: 77px"
  342. @change="textareaChange('businessLicenseDate','businessLicenseDateRemark')"
  343. v-model="infoModel.businessLicenseDateRemark"
  344. placeholder="如没有营业执照到期时间资料,需要说明原因"
  345. />
  346. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  347. </a-form-model-item>
  348. </div>
  349. <div style="height: 70%">
  350. <a-upload
  351. name="file"
  352. :multiple="true"
  353. :action="importMinioUploadAction"
  354. :customRequest="e => selfUploadContract(e, 'businessLicenseDate')"
  355. :headers="tokenHeader"
  356. :showUploadList="false"
  357. :beforeUpload="importBeforeUpload"
  358. @change="importHandleChange"
  359. style='margin-left: 90px'
  360. >
  361. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  362. </a-upload>
  363. <div class="thumb-example" >
  364. <!-- swiper1 -->
  365. <swiper
  366. class="swiper gallery-top"
  367. :options="swiperOptionTop"
  368. ref="swiperTop"
  369. >
  370. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.businessLicenseDate" :key="item.id">
  371. <iframe
  372. v-if="item.urlBase"
  373. frameborder="1"
  374. :src="item.urlBase"
  375. ref="ifr"
  376. width="85%"
  377. height="445px"
  378. scrolling="auto">
  379. </iframe>
  380. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  381. v-if="!item.urlBase" :src="noDataPng" border="1">
  382. <a-button v-if="infoModel.businessLicenseDate.length && item.urlBase"
  383. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  384. danger @click="removeFile(item,'businessLicenseDate')">移除
  385. </a-button>
  386. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  387. v-if="infoModel.businessLicenseDate.length && item.urlBase"
  388. @click="jumpUrl(item.urlBase)">预览
  389. </a-button></div>
  390. </swiper-slide>
  391. <!-- <div
  392. class="swiper-button-next swiper-button-white"
  393. slot="button-next"
  394. ></div>
  395. <div
  396. class="swiper-button-prev swiper-button-white"
  397. slot="button-prev"
  398. ></div>-->
  399. </swiper>
  400. <!-- swiper2 Thumbs -->
  401. <swiper
  402. class="swiper gallery-thumbs"
  403. :options="swiperOptionThumbs"
  404. ref="swiperThumbs"
  405. >
  406. <swiper-slide
  407. class="slide"
  408. style="width:100px;height:100px;"
  409. v-for="(item, index) in infoModel.businessLicenseDate"
  410. :key="item.id"
  411. >
  412. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  413. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  414. </div>
  415. <img style="width: 100%;height: 96px"
  416. v-if="!item.urlBase" :src="noDataPng" border="1">
  417. </swiper-slide>
  418. <!-- 点我上传文件按钮-->
  419. <div class="clearfix">
  420. <a-upload
  421. listType="picture-card"
  422. name="file"
  423. :multiple="false"
  424. :action="importMinioUploadAction"
  425. :customRequest="e => selfUploadContract(e, 'businessLicenseDate')"
  426. :headers="tokenHeader"
  427. :showUploadList="false"
  428. :beforeUpload="importBeforeUpload"
  429. @change="importHandleChange"
  430. >
  431. <div v-if="infoModel.businessLicenseDate.length < 20">
  432. <a-icon type="plus"/>
  433. <div class="ant-upload-text">点我上传营业执照到期时间资料</div>
  434. </div>
  435. </a-upload>
  436. </div>
  437. <div class="swiper-button-next swiper-button-white" slot="button-next">
  438. <div>
  439. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  440. </div>
  441. </div>
  442. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  443. <div>
  444. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  445. </div>
  446. </div>
  447. </swiper>
  448. </div>
  449. </div>
  450. </a-card>
  451. <!-- 码号证书到期时间资料-->
  452. <a-card v-if="steps.currentId == 'codeNumberDate'"
  453. style="margin-bottom:10px;
  454. float: left;width: 83%;left: 2%">
  455. <div slot="title">
  456. <span style="float: left;position: relative;top: 4px">码号证书资料</span>
  457. </div>
  458. <!-- 文件上传-->
  459. <!-- 附件-->
  460. <div>
  461. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  462. <a-textarea style="height: 77px"
  463. @change="textareaChange('codeNumberDate','codeNumberDateRemark')"
  464. v-model="infoModel.codeNumberDateRemark"
  465. placeholder="如没有码号证书到期时间资料,需要说明原因"
  466. />
  467. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  468. </a-form-model-item>
  469. </div>
  470. <div style="height: 70%">
  471. <a-upload
  472. name="file"
  473. :multiple="true"
  474. :action="importMinioUploadAction"
  475. :customRequest="e => selfUploadContract(e, 'codeNumberDate')"
  476. :headers="tokenHeader"
  477. :showUploadList="false"
  478. :beforeUpload="importBeforeUpload"
  479. @change="importHandleChange"
  480. style='margin-left: 90px'
  481. >
  482. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  483. </a-upload>
  484. <div class="thumb-example" >
  485. <!-- swiper1 -->
  486. <swiper
  487. class="swiper gallery-top"
  488. :options="swiperOptionTop"
  489. ref="swiperTop"
  490. >
  491. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.codeNumberDate" :key="item.id">
  492. <iframe
  493. v-if="item.urlBase"
  494. frameborder="1"
  495. :src="item.urlBase"
  496. ref="ifr"
  497. width="85%"
  498. height="445px"
  499. scrolling="auto">
  500. </iframe>
  501. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  502. v-if="!item.urlBase" :src="noDataPng" border="1">
  503. <a-button v-if="infoModel.codeNumberDate.length && item.urlBase"
  504. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  505. danger @click="removeFile(item,'codeNumberDate')">移除
  506. </a-button>
  507. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  508. v-if="infoModel.codeNumberDate.length && item.urlBase"
  509. @click="jumpUrl(item.urlBase)">预览
  510. </a-button></div>
  511. </swiper-slide>
  512. <!-- <div
  513. class="swiper-button-next swiper-button-white"
  514. slot="button-next"
  515. ></div>
  516. <div
  517. class="swiper-button-prev swiper-button-white"
  518. slot="button-prev"
  519. ></div>-->
  520. </swiper>
  521. <!-- swiper2 Thumbs -->
  522. <swiper
  523. class="swiper gallery-thumbs"
  524. :options="swiperOptionThumbs"
  525. ref="swiperThumbs"
  526. >
  527. <swiper-slide
  528. class="slide"
  529. style="width:100px;height:100px;"
  530. v-for="(item, index) in infoModel.codeNumberDate"
  531. :key="item.id"
  532. >
  533. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  534. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  535. </div>
  536. <img style="width: 100%;height: 96px"
  537. v-if="!item.urlBase" :src="noDataPng" border="1">
  538. </swiper-slide>
  539. <!-- 点我上传文件按钮-->
  540. <div class="clearfix">
  541. <a-upload
  542. listType="picture-card"
  543. name="file"
  544. :multiple="false"
  545. :action="importMinioUploadAction"
  546. :customRequest="e => selfUploadContract(e, 'codeNumberDate')"
  547. :headers="tokenHeader"
  548. :showUploadList="false"
  549. :beforeUpload="importBeforeUpload"
  550. @change="importHandleChange"
  551. >
  552. <div v-if="infoModel.codeNumberDate.length < 20">
  553. <a-icon type="plus"/>
  554. <div class="ant-upload-text">点我上传码号证书到期时间资料</div>
  555. </div>
  556. </a-upload>
  557. </div>
  558. <div class="swiper-button-next swiper-button-white" slot="button-next">
  559. <div>
  560. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  561. </div>
  562. </div>
  563. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  564. <div>
  565. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  566. </div>
  567. </div>
  568. </swiper>
  569. </div>
  570. </div>
  571. </a-card>
  572. <!-- 备案通知到期时间-->
  573. <a-card v-if="steps.currentId == 'filingsDate'"
  574. style="margin-bottom:10px;
  575. float: left;width: 83%;left: 2%">
  576. <div slot="title">
  577. <span style="float: left;position: relative;top: 4px"> 备案通知资料</span>
  578. </div>
  579. <!-- 文件上传-->
  580. <!-- 附件-->
  581. <div>
  582. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  583. <a-textarea style="height: 77px"
  584. @change="textareaChange('filingsDate','filingsDateRemark')"
  585. v-model="infoModel.filingsDateRemark"
  586. placeholder="如没有备案通知到期时间资料,需要说明原因"
  587. />
  588. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  589. </a-form-model-item>
  590. </div>
  591. <div style="height: 70%">
  592. <a-upload
  593. name="file"
  594. :multiple="true"
  595. :action="importMinioUploadAction"
  596. :customRequest="e => selfUploadContract(e, 'filingsDate')"
  597. :headers="tokenHeader"
  598. :showUploadList="false"
  599. :beforeUpload="importBeforeUpload"
  600. @change="importHandleChange"
  601. style='margin-left: 90px'
  602. >
  603. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  604. </a-upload>
  605. <div class="thumb-example" >
  606. <!-- swiper1 -->
  607. <swiper
  608. class="swiper gallery-top"
  609. :options="swiperOptionTop"
  610. ref="swiperTop"
  611. >
  612. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.filingsDate" :key="item.id">
  613. <iframe
  614. v-if="item.urlBase"
  615. frameborder="1"
  616. :src="item.urlBase"
  617. ref="ifr"
  618. width="85%"
  619. height="445px"
  620. scrolling="auto">
  621. </iframe>
  622. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  623. v-if="!item.urlBase" :src="noDataPng" border="1">
  624. <a-button v-if="infoModel.filingsDate.length && item.urlBase"
  625. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  626. danger @click="removeFile(item,'filingsDate')">移除
  627. </a-button>
  628. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  629. v-if="infoModel.filingsDate.length && item.urlBase"
  630. @click="jumpUrl(item.urlBase)">预览
  631. </a-button></div>
  632. </swiper-slide>
  633. <!-- <div
  634. class="swiper-button-next swiper-button-white"
  635. slot="button-next"
  636. ></div>
  637. <div
  638. class="swiper-button-prev swiper-button-white"
  639. slot="button-prev"
  640. ></div>-->
  641. </swiper>
  642. <!-- swiper2 Thumbs -->
  643. <swiper
  644. class="swiper gallery-thumbs"
  645. :options="swiperOptionThumbs"
  646. ref="swiperThumbs"
  647. >
  648. <swiper-slide
  649. class="slide"
  650. style="width:100px;height:100px;"
  651. v-for="(item, index) in infoModel.filingsDate"
  652. :key="item.id"
  653. >
  654. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  655. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  656. </div>
  657. <img style="width: 100%;height: 96px"
  658. v-if="!item.urlBase" :src="noDataPng" border="1">
  659. </swiper-slide>
  660. <!-- 点我上传文件按钮-->
  661. <div class="clearfix">
  662. <a-upload
  663. listType="picture-card"
  664. name="file"
  665. :multiple="false"
  666. :action="importMinioUploadAction"
  667. :customRequest="e => selfUploadContract(e, 'filingsDate')"
  668. :headers="tokenHeader"
  669. :showUploadList="false"
  670. :beforeUpload="importBeforeUpload"
  671. @change="importHandleChange"
  672. >
  673. <div v-if="infoModel.filingsDate.length < 20">
  674. <a-icon type="plus"/>
  675. <div class="ant-upload-text">点我上传备案通知到期时间资料</div>
  676. </div>
  677. </a-upload>
  678. </div>
  679. <div class="swiper-button-next swiper-button-white" slot="button-next">
  680. <div>
  681. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  682. </div>
  683. </div>
  684. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  685. <div>
  686. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  687. </div>
  688. </div>
  689. </swiper>
  690. </div>
  691. </div>
  692. </a-card>
  693. <!-- 增值业务许可证到期时间-->
  694. <a-card v-if="steps.currentId == 'permitDate'"
  695. style="margin-bottom:10px;
  696. float: left;width: 83%;left: 2%">
  697. <div slot="title">
  698. <span style="float: left;position: relative;top: 4px"> 增值业务许可证资料</span>
  699. </div>
  700. <!-- 文件上传-->
  701. <!-- 附件-->
  702. <div>
  703. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  704. <a-textarea style="height: 77px"
  705. @change="textareaChange('permitDate','permitDateRemark')"
  706. v-model="infoModel.permitDateRemark"
  707. placeholder="如没有增值业务许可证到期时间资料,需要说明原因"
  708. />
  709. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  710. </a-form-model-item>
  711. </div>
  712. <div style="height: 70%">
  713. <a-upload
  714. name="file"
  715. :multiple="true"
  716. :action="importMinioUploadAction"
  717. :customRequest="e => selfUploadContract(e, 'permitDate')"
  718. :headers="tokenHeader"
  719. :showUploadList="false"
  720. :beforeUpload="importBeforeUpload"
  721. @change="importHandleChange"
  722. style='margin-left: 90px'
  723. >
  724. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  725. </a-upload>
  726. <div class="thumb-example" >
  727. <!-- swiper1 -->
  728. <swiper
  729. class="swiper gallery-top"
  730. :options="swiperOptionTop"
  731. ref="swiperTop"
  732. >
  733. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.permitDate" :key="item.id">
  734. <iframe
  735. v-if="item.urlBase"
  736. frameborder="1"
  737. :src="item.urlBase"
  738. ref="ifr"
  739. width="85%"
  740. height="445px"
  741. scrolling="auto">
  742. </iframe>
  743. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  744. v-if="!item.urlBase" :src="noDataPng" border="1">
  745. <a-button v-if="infoModel.permitDate.length && item.urlBase"
  746. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  747. danger @click="removeFile(item,'permitDate')">移除
  748. </a-button>
  749. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  750. v-if="infoModel.permitDate.length && item.urlBase"
  751. @click="jumpUrl(item.urlBase)">预览
  752. </a-button></div>
  753. </swiper-slide>
  754. <!-- <div
  755. class="swiper-button-next swiper-button-white"
  756. slot="button-next"
  757. ></div>
  758. <div
  759. class="swiper-button-prev swiper-button-white"
  760. slot="button-prev"
  761. ></div>-->
  762. </swiper>
  763. <!-- swiper2 Thumbs -->
  764. <swiper
  765. class="swiper gallery-thumbs"
  766. :options="swiperOptionThumbs"
  767. ref="swiperThumbs"
  768. >
  769. <swiper-slide
  770. class="slide"
  771. style="width:100px;height:100px;"
  772. v-for="(item, index) in infoModel.permitDate"
  773. :key="item.id"
  774. >
  775. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  776. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  777. </div>
  778. <img style="width: 100%;height: 96px"
  779. v-if="!item.urlBase" :src="noDataPng" border="1">
  780. </swiper-slide>
  781. <!-- 点我上传文件按钮-->
  782. <div class="clearfix">
  783. <a-upload
  784. listType="picture-card"
  785. name="file"
  786. :multiple="false"
  787. :action="importMinioUploadAction"
  788. :customRequest="e => selfUploadContract(e, 'permitDate')"
  789. :headers="tokenHeader"
  790. :showUploadList="false"
  791. :beforeUpload="importBeforeUpload"
  792. @change="importHandleChange"
  793. >
  794. <div v-if="infoModel.permitDate.length < 20">
  795. <a-icon type="plus"/>
  796. <div class="ant-upload-text">点我上传增值业务许可证到期时间资料</div>
  797. </div>
  798. </a-upload>
  799. </div>
  800. <div class="swiper-button-next swiper-button-white" slot="button-next">
  801. <div>
  802. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  803. </div>
  804. </div>
  805. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  806. <div>
  807. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  808. </div>
  809. </div>
  810. </swiper>
  811. </div>
  812. </div>
  813. </a-card>
  814. <!-- 法人/责任人证件-->
  815. <a-card v-if="steps.currentId == 'corporationCard'"
  816. style="margin-bottom:10px;
  817. float: left;width: 83%;left: 2%">
  818. <div slot="title">
  819. <span style="float: left;position: relative;top: 4px"> 法人/责任人证件资料</span>
  820. </div>
  821. <!-- 文件上传-->
  822. <!-- 附件-->
  823. <div>
  824. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  825. <a-textarea style="height: 77px"
  826. @change="textareaChange('corporationCard','corporationCardRemark')"
  827. v-model="infoModel.corporationCardRemark"
  828. placeholder="如没有法人/责任人证件,需要说明原因"
  829. />
  830. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  831. </a-form-model-item>
  832. </div>
  833. <div style="height: 70%">
  834. <a-upload
  835. name="file"
  836. :multiple="true"
  837. :action="importMinioUploadAction"
  838. :customRequest="e => selfUploadContract(e, 'corporationCard')"
  839. :headers="tokenHeader"
  840. :showUploadList="false"
  841. :beforeUpload="importBeforeUpload"
  842. @change="importHandleChange"
  843. style='margin-left: 90px'
  844. >
  845. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  846. </a-upload>
  847. <div class="thumb-example" >
  848. <!-- swiper1 -->
  849. <swiper
  850. class="swiper gallery-top"
  851. :options="swiperOptionTop"
  852. ref="swiperTop"
  853. >
  854. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.corporationCard" :key="item.id">
  855. <iframe
  856. v-if="item.urlBase"
  857. frameborder="1"
  858. :src="item.urlBase"
  859. ref="ifr"
  860. width="85%"
  861. height="445px"
  862. scrolling="auto">
  863. </iframe>
  864. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  865. v-if="!item.urlBase" :src="noDataPng" border="1">
  866. <a-button v-if="infoModel.corporationCard.length && item.urlBase"
  867. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  868. danger @click="removeFile(item,'corporationCard')">移除
  869. </a-button>
  870. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  871. v-if="infoModel.corporationCard.length && item.urlBase"
  872. @click="jumpUrl(item.urlBase)">预览
  873. </a-button></div>
  874. </swiper-slide>
  875. <!-- <div
  876. class="swiper-button-next swiper-button-white"
  877. slot="button-next"
  878. ></div>
  879. <div
  880. class="swiper-button-prev swiper-button-white"
  881. slot="button-prev"
  882. ></div>-->
  883. </swiper>
  884. <!-- swiper2 Thumbs -->
  885. <swiper
  886. class="swiper gallery-thumbs"
  887. :options="swiperOptionThumbs"
  888. ref="swiperThumbs"
  889. >
  890. <swiper-slide
  891. class="slide"
  892. style="width:100px;height:100px;"
  893. v-for="(item, index) in infoModel.corporationCard"
  894. :key="item.id"
  895. >
  896. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  897. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  898. </div>
  899. <img style="width: 100%;height: 96px"
  900. v-if="!item.urlBase" :src="noDataPng" border="1">
  901. </swiper-slide>
  902. <!-- 点我上传文件按钮-->
  903. <div class="clearfix">
  904. <a-upload
  905. listType="picture-card"
  906. name="file"
  907. :multiple="false"
  908. :action="importMinioUploadAction"
  909. :customRequest="e => selfUploadContract(e, 'corporationCard')"
  910. :headers="tokenHeader"
  911. :showUploadList="false"
  912. :beforeUpload="importBeforeUpload"
  913. @change="importHandleChange"
  914. >
  915. <div v-if="infoModel.corporationCard.length < 20">
  916. <a-icon type="plus"/>
  917. <div class="ant-upload-text">点我上传法人/责任人证件资料</div>
  918. </div>
  919. </a-upload>
  920. </div>
  921. <div class="swiper-button-next swiper-button-white" slot="button-next">
  922. <div>
  923. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  924. </div>
  925. </div>
  926. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  927. <div>
  928. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  929. </div>
  930. </div>
  931. </swiper>
  932. </div>
  933. </div>
  934. </a-card>
  935. <!-- 责任人授权书-->
  936. <a-card v-if="steps.currentId == 'personResponsible'"
  937. style="margin-bottom:10px;
  938. float: left;width: 83%;left: 2%">
  939. <div slot="title">
  940. <span style="float: left;position: relative;top: 4px"> 责任人授权书资料</span>
  941. </div>
  942. <!-- 文件上传-->
  943. <!-- 附件-->
  944. <div>
  945. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  946. <a-textarea style="height: 77px"
  947. @change="textareaChange('personResponsible','personResponsibleRemark')"
  948. v-model="infoModel.personResponsibleRemark"
  949. placeholder="如没有责任人授权书资料,需要说明原因"
  950. />
  951. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  952. </a-form-model-item>
  953. </div>
  954. <div style="height: 70%">
  955. <a-upload
  956. name="file"
  957. :multiple="true"
  958. :action="importMinioUploadAction"
  959. :customRequest="e => selfUploadContract(e, 'personResponsible')"
  960. :headers="tokenHeader"
  961. :showUploadList="false"
  962. :beforeUpload="importBeforeUpload"
  963. @change="importHandleChange"
  964. style='margin-left: 90px'
  965. >
  966. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  967. </a-upload>
  968. <div class="thumb-example" >
  969. <!-- swiper1 -->
  970. <swiper
  971. class="swiper gallery-top"
  972. :options="swiperOptionTop"
  973. ref="swiperTop"
  974. >
  975. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.personResponsible" :key="item.id">
  976. <iframe
  977. v-if="item.urlBase"
  978. frameborder="1"
  979. :src="item.urlBase"
  980. ref="ifr"
  981. width="85%"
  982. height="445px"
  983. scrolling="auto">
  984. </iframe>
  985. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  986. v-if="!item.urlBase" :src="noDataPng" border="1">
  987. <a-button v-if="infoModel.personResponsible.length && item.urlBase"
  988. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  989. danger @click="removeFile(item,'personResponsible')">移除
  990. </a-button>
  991. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  992. v-if="infoModel.personResponsible.length && item.urlBase"
  993. @click="jumpUrl(item.urlBase)">预览
  994. </a-button></div>
  995. </swiper-slide>
  996. <!-- <div
  997. class="swiper-button-next swiper-button-white"
  998. slot="button-next"
  999. ></div>
  1000. <div
  1001. class="swiper-button-prev swiper-button-white"
  1002. slot="button-prev"
  1003. ></div>-->
  1004. </swiper>
  1005. <!-- swiper2 Thumbs -->
  1006. <swiper
  1007. class="swiper gallery-thumbs"
  1008. :options="swiperOptionThumbs"
  1009. ref="swiperThumbs"
  1010. >
  1011. <swiper-slide
  1012. class="slide"
  1013. style="width:100px;height:100px;"
  1014. v-for="(item, index) in infoModel.personResponsible"
  1015. :key="item.id"
  1016. >
  1017. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1018. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1019. </div>
  1020. <img style="width: 100%;height: 96px"
  1021. v-if="!item.urlBase" :src="noDataPng" border="1">
  1022. </swiper-slide>
  1023. <!-- 点我上传文件按钮-->
  1024. <div class="clearfix">
  1025. <a-upload
  1026. listType="picture-card"
  1027. name="file"
  1028. :multiple="false"
  1029. :action="importMinioUploadAction"
  1030. :customRequest="e => selfUploadContract(e, 'personResponsible')"
  1031. :headers="tokenHeader"
  1032. :showUploadList="false"
  1033. :beforeUpload="importBeforeUpload"
  1034. @change="importHandleChange"
  1035. >
  1036. <div v-if="infoModel.personResponsible.length < 20">
  1037. <a-icon type="plus"/>
  1038. <div class="ant-upload-text">点我上传责任人授权书资料</div>
  1039. </div>
  1040. </a-upload>
  1041. </div>
  1042. <div class="swiper-button-next swiper-button-white" slot="button-next">
  1043. <div>
  1044. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  1045. </div>
  1046. </div>
  1047. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  1048. <div>
  1049. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  1050. </div>
  1051. </div>
  1052. </swiper>
  1053. </div>
  1054. </div>
  1055. </a-card>
  1056. <!-- 经办人证件-->
  1057. <a-card v-if="steps.currentId == 'operatorCard'"
  1058. style="margin-bottom:10px;
  1059. float: left;width: 83%;left: 2%">
  1060. <div slot="title">
  1061. <span style="float: left;position: relative;top: 4px"> 经办人证件资料</span>
  1062. </div>
  1063. <!-- 文件上传-->
  1064. <!-- 附件-->
  1065. <div>
  1066. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  1067. <a-textarea style="height: 77px"
  1068. v-model="infoModel.operatorCardRemark"
  1069. @change="textareaChange('operatorCard','operatorCardRemark')"
  1070. placeholder="如没有经办人证件资料,需要说明原因"
  1071. />
  1072. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  1073. </a-form-model-item>
  1074. </div>
  1075. <div style="height: 70%">
  1076. <a-upload
  1077. name="file"
  1078. :multiple="true"
  1079. :action="importMinioUploadAction"
  1080. :customRequest="e => selfUploadContract(e, 'operatorCard')"
  1081. :headers="tokenHeader"
  1082. :showUploadList="false"
  1083. :beforeUpload="importBeforeUpload"
  1084. @change="importHandleChange"
  1085. style='margin-left: 90px'
  1086. >
  1087. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  1088. </a-upload>
  1089. <div class="thumb-example" >
  1090. <!-- swiper1 -->
  1091. <swiper
  1092. class="swiper gallery-top"
  1093. :options="swiperOptionTop"
  1094. ref="swiperTop"
  1095. >
  1096. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.operatorCard" :key="item.id">
  1097. <iframe
  1098. v-if="item.urlBase"
  1099. frameborder="1"
  1100. :src="item.urlBase"
  1101. ref="ifr"
  1102. width="85%"
  1103. height="445px"
  1104. scrolling="auto">
  1105. </iframe>
  1106. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  1107. v-if="!item.urlBase" :src="noDataPng" border="1">
  1108. <a-button v-if="infoModel.operatorCard.length && item.urlBase"
  1109. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  1110. danger @click="removeFile(item,'operatorCard')">移除
  1111. </a-button>
  1112. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  1113. v-if="infoModel.operatorCard.length && item.urlBase"
  1114. @click="jumpUrl(item.urlBase)">预览
  1115. </a-button></div>
  1116. </swiper-slide>
  1117. <!-- <div
  1118. class="swiper-button-next swiper-button-white"
  1119. slot="button-next"
  1120. ></div>
  1121. <div
  1122. class="swiper-button-prev swiper-button-white"
  1123. slot="button-prev"
  1124. ></div>-->
  1125. </swiper>
  1126. <!-- swiper2 Thumbs -->
  1127. <swiper
  1128. class="swiper gallery-thumbs"
  1129. :options="swiperOptionThumbs"
  1130. ref="swiperThumbs"
  1131. >
  1132. <swiper-slide
  1133. class="slide"
  1134. style="width:100px;height:100px;"
  1135. v-for="(item, index) in infoModel.operatorCard"
  1136. :key="item.id"
  1137. >
  1138. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1139. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1140. </div>
  1141. <img style="width: 100%;height: 96px"
  1142. v-if="!item.urlBase" :src="noDataPng" border="1">
  1143. </swiper-slide>
  1144. <!-- 点我上传文件按钮-->
  1145. <div class="clearfix">
  1146. <a-upload
  1147. listType="picture-card"
  1148. name="file"
  1149. :multiple="false"
  1150. :action="importMinioUploadAction"
  1151. :customRequest="e => selfUploadContract(e, 'operatorCard')"
  1152. :headers="tokenHeader"
  1153. :showUploadList="false"
  1154. :beforeUpload="importBeforeUpload"
  1155. @change="importHandleChange"
  1156. >
  1157. <div v-if="infoModel.operatorCard.length < 20">
  1158. <a-icon type="plus"/>
  1159. <div class="ant-upload-text">点我上传经办人证件资料</div>
  1160. </div>
  1161. </a-upload>
  1162. </div>
  1163. <div class="swiper-button-next swiper-button-white" slot="button-next">
  1164. <div>
  1165. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  1166. </div>
  1167. </div>
  1168. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  1169. <div>
  1170. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  1171. </div>
  1172. </div>
  1173. </swiper>
  1174. </div>
  1175. </div>
  1176. </a-card>
  1177. <!-- 经办人手持身份证照片(背景需为电信营业厅或白墙-->
  1178. <a-card v-if="steps.currentId == 'operatorCardPhone'"
  1179. style="margin-bottom:10px;
  1180. float: left;width: 83%;left: 2%">
  1181. <div slot="title">
  1182. <span style="float: left;position: relative;top: 4px"> 经办人手持身份证照片</span>
  1183. </div>
  1184. <!-- 文件上传-->
  1185. <!-- 附件-->
  1186. <div>
  1187. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  1188. <a-textarea style="height: 77px"
  1189. @change="textareaChange('operatorCardPhone','operatorCardPhoneRemark')"
  1190. v-model="infoModel.operatorCardPhoneRemark"
  1191. placeholder="经办人手持身份证照片备注"
  1192. />
  1193. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  1194. </a-form-model-item>
  1195. </div>
  1196. <div style="height: 70%">
  1197. <a-upload
  1198. name="file"
  1199. :multiple="true"
  1200. :action="importMinioUploadAction"
  1201. :customRequest="e => selfUploadContract(e, 'operatorCardPhone')"
  1202. :headers="tokenHeader"
  1203. :showUploadList="false"
  1204. :beforeUpload="importBeforeUpload"
  1205. @change="importHandleChange"
  1206. style='margin-left: 90px'
  1207. >
  1208. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  1209. </a-upload>
  1210. <div class="thumb-example" >
  1211. <!-- swiper1 -->
  1212. <swiper
  1213. class="swiper gallery-top"
  1214. :options="swiperOptionTop"
  1215. ref="swiperTop"
  1216. >
  1217. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.operatorCardPhone" :key="item.id">
  1218. <iframe
  1219. v-if="item.urlBase"
  1220. frameborder="1"
  1221. :src="item.urlBase"
  1222. ref="ifr"
  1223. width="85%"
  1224. height="445px"
  1225. scrolling="auto">
  1226. </iframe>
  1227. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  1228. v-if="!item.urlBase" :src="noDataPng" border="1">
  1229. <a-button v-if="infoModel.operatorCardPhone.length && item.urlBase"
  1230. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  1231. danger @click="removeFile(item,'operatorCardPhone')">移除
  1232. </a-button>
  1233. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  1234. v-if="infoModel.operatorCardPhone.length && item.urlBase"
  1235. @click="jumpUrl(item.urlBase)">预览
  1236. </a-button></div>
  1237. </swiper-slide>
  1238. <!-- <div
  1239. class="swiper-button-next swiper-button-white"
  1240. slot="button-next"
  1241. ></div>
  1242. <div
  1243. class="swiper-button-prev swiper-button-white"
  1244. slot="button-prev"
  1245. ></div>-->
  1246. </swiper>
  1247. <!-- swiper2 Thumbs -->
  1248. <swiper
  1249. class="swiper gallery-thumbs"
  1250. :options="swiperOptionThumbs"
  1251. ref="swiperThumbs"
  1252. >
  1253. <swiper-slide
  1254. class="slide"
  1255. style="width:100px;height:100px;"
  1256. v-for="(item, index) in infoModel.operatorCardPhone"
  1257. :key="item.id"
  1258. >
  1259. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1260. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1261. </div>
  1262. <img style="width: 100%;height: 96px"
  1263. v-if="!item.urlBase" :src="noDataPng" border="1">
  1264. </swiper-slide>
  1265. <!-- 点我上传文件按钮-->
  1266. <div class="clearfix">
  1267. <a-upload
  1268. listType="picture-card"
  1269. name="file"
  1270. :multiple="false"
  1271. :action="importMinioUploadAction"
  1272. :customRequest="e => selfUploadContract(e, 'operatorCardPhone')"
  1273. :headers="tokenHeader"
  1274. :showUploadList="false"
  1275. :beforeUpload="importBeforeUpload"
  1276. @change="importHandleChange"
  1277. >
  1278. <div v-if="infoModel.operatorCardPhone.length < 20">
  1279. <a-icon type="plus"/>
  1280. <div class="ant-upload-text">点我上传经办人手持身份证照片</div>
  1281. </div>
  1282. </a-upload>
  1283. </div>
  1284. <div class="swiper-button-next swiper-button-white" slot="button-next">
  1285. <div>
  1286. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  1287. </div>
  1288. </div>
  1289. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  1290. <div>
  1291. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  1292. </div>
  1293. </div>
  1294. </swiper>
  1295. </div>
  1296. </div>
  1297. </a-card>
  1298. <!-- 机房设备照片-->
  1299. <a-card v-if="steps.currentId == 'devicePhone'"
  1300. style="margin-bottom:10px;
  1301. float: left;width: 83%;left: 2%">
  1302. <div slot="title">
  1303. <span style="float: left;position: relative;top: 4px"> 机房设备照片</span>
  1304. </div>
  1305. <!-- 文件上传-->
  1306. <!-- 附件-->
  1307. <div>
  1308. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  1309. <a-textarea style="height: 77px"
  1310. @change="textareaChange('devicePhone','devicePhoneRemark')"
  1311. v-model="infoModel.devicePhoneRemark"
  1312. placeholder="机房设备照片"
  1313. />
  1314. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  1315. </a-form-model-item>
  1316. </div>
  1317. <div style="height: 70%">
  1318. <a-upload
  1319. name="file"
  1320. :multiple="true"
  1321. :action="importMinioUploadAction"
  1322. :customRequest="e => selfUploadContract(e, 'devicePhone')"
  1323. :headers="tokenHeader"
  1324. :showUploadList="false"
  1325. :beforeUpload="importBeforeUpload"
  1326. @change="importHandleChange"
  1327. style='margin-left: 90px'
  1328. >
  1329. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  1330. </a-upload>
  1331. <div class="thumb-example" >
  1332. <!-- swiper1 -->
  1333. <swiper
  1334. class="swiper gallery-top"
  1335. :options="swiperOptionTop"
  1336. ref="swiperTop"
  1337. >
  1338. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.devicePhone" :key="item.id">
  1339. <iframe
  1340. v-if="item.urlBase"
  1341. frameborder="1"
  1342. :src="item.urlBase"
  1343. ref="ifr"
  1344. width="85%"
  1345. height="445px"
  1346. scrolling="auto">
  1347. </iframe>
  1348. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  1349. v-if="!item.urlBase" :src="noDataPng" border="1">
  1350. <a-button v-if="infoModel.devicePhone.length && item.urlBase"
  1351. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  1352. danger @click="removeFile(item,'devicePhone')">移除
  1353. </a-button>
  1354. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  1355. v-if="infoModel.devicePhone.length && item.urlBase"
  1356. @click="jumpUrl(item.urlBase)">预览
  1357. </a-button></div>
  1358. </swiper-slide>
  1359. <!-- <div
  1360. class="swiper-button-next swiper-button-white"
  1361. slot="button-next"
  1362. ></div>
  1363. <div
  1364. class="swiper-button-prev swiper-button-white"
  1365. slot="button-prev"
  1366. ></div>-->
  1367. </swiper>
  1368. <!-- swiper2 Thumbs -->
  1369. <swiper
  1370. class="swiper gallery-thumbs"
  1371. :options="swiperOptionThumbs"
  1372. ref="swiperThumbs"
  1373. >
  1374. <swiper-slide
  1375. class="slide"
  1376. style="width:100px;height:100px;"
  1377. v-for="(item, index) in infoModel.devicePhone"
  1378. :key="item.id"
  1379. >
  1380. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1381. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1382. </div>
  1383. <img style="width: 100%;height: 96px"
  1384. v-if="!item.urlBase" :src="noDataPng" border="1">
  1385. </swiper-slide>
  1386. <!-- 点我上传文件按钮-->
  1387. <div class="clearfix">
  1388. <a-upload
  1389. listType="picture-card"
  1390. name="file"
  1391. :multiple="false"
  1392. :action="importMinioUploadAction"
  1393. :customRequest="e => selfUploadContract(e, 'devicePhone')"
  1394. :headers="tokenHeader"
  1395. :showUploadList="false"
  1396. :beforeUpload="importBeforeUpload"
  1397. @change="importHandleChange"
  1398. >
  1399. <div v-if="infoModel.devicePhone.length < 20">
  1400. <a-icon type="plus"/>
  1401. <div class="ant-upload-text">点我上传机房设备照片</div>
  1402. </div>
  1403. </a-upload>
  1404. </div>
  1405. <div class="swiper-button-next swiper-button-white" slot="button-next">
  1406. <div>
  1407. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  1408. </div>
  1409. </div>
  1410. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  1411. <div>
  1412. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  1413. </div>
  1414. </div>
  1415. </swiper>
  1416. </div>
  1417. </div>
  1418. </a-card>
  1419. <!-- 短信模板-->
  1420. <a-card v-if="steps.currentId == 'textMessage'"
  1421. style="margin-bottom:10px;
  1422. float: left;width: 83%;left: 2%">
  1423. <div slot="title">
  1424. <span style="float: left;position: relative;top: 4px"> 短信模板</span>
  1425. </div>
  1426. <!-- 文件上传-->
  1427. <!-- 附件-->
  1428. <div>
  1429. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  1430. <a-textarea style="height: 77px"
  1431. @change="textareaChange('textMessage','textMessageRemark')"
  1432. v-model="infoModel.textMessageRemark"
  1433. placeholder="短信模板"
  1434. />
  1435. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  1436. </a-form-model-item>
  1437. </div>
  1438. <div style="height: 70%">
  1439. <a-upload
  1440. name="file"
  1441. :multiple="true"
  1442. :action="importMinioUploadAction"
  1443. :customRequest="e => selfUploadContract(e, 'textMessage')"
  1444. :headers="tokenHeader"
  1445. :showUploadList="false"
  1446. :beforeUpload="importBeforeUpload"
  1447. @change="importHandleChange"
  1448. style='margin-left: 90px'
  1449. >
  1450. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  1451. </a-upload>
  1452. <div class="thumb-example" >
  1453. <!-- swiper1 -->
  1454. <swiper
  1455. class="swiper gallery-top"
  1456. :options="swiperOptionTop"
  1457. ref="swiperTop"
  1458. >
  1459. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.textMessage" :key="item.id">
  1460. <iframe
  1461. v-if="item.urlBase"
  1462. frameborder="1"
  1463. :src="item.urlBase"
  1464. ref="ifr"
  1465. width="85%"
  1466. height="445px"
  1467. scrolling="auto">
  1468. </iframe>
  1469. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  1470. v-if="!item.urlBase" :src="noDataPng" border="1">
  1471. <a-button v-if="infoModel.textMessage.length && item.urlBase"
  1472. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  1473. danger @click="removeFile(item,'textMessage')">移除
  1474. </a-button>
  1475. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  1476. v-if="infoModel.textMessage.length && item.urlBase"
  1477. @click="jumpUrl(item.urlBase)">预览
  1478. </a-button></div>
  1479. </swiper-slide>
  1480. <!-- <div
  1481. class="swiper-button-next swiper-button-white"
  1482. slot="button-next"
  1483. ></div>
  1484. <div
  1485. class="swiper-button-prev swiper-button-white"
  1486. slot="button-prev"
  1487. ></div>-->
  1488. </swiper>
  1489. <!-- swiper2 Thumbs -->
  1490. <swiper
  1491. class="swiper gallery-thumbs"
  1492. :options="swiperOptionThumbs"
  1493. ref="swiperThumbs"
  1494. >
  1495. <swiper-slide
  1496. class="slide"
  1497. style="width:100px;height:100px;"
  1498. v-for="(item, index) in infoModel.textMessage"
  1499. :key="item.id"
  1500. >
  1501. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1502. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1503. </div>
  1504. <img style="width: 100%;height: 96px"
  1505. v-if="!item.urlBase" :src="noDataPng" border="1">
  1506. </swiper-slide>
  1507. <!-- 点我上传文件按钮-->
  1508. <div class="clearfix">
  1509. <a-upload
  1510. listType="picture-card"
  1511. name="file"
  1512. :multiple="false"
  1513. :action="importMinioUploadAction"
  1514. :customRequest="e => selfUploadContract(e, 'textMessage')"
  1515. :headers="tokenHeader"
  1516. :showUploadList="false"
  1517. :beforeUpload="importBeforeUpload"
  1518. @change="importHandleChange"
  1519. >
  1520. <div v-if="infoModel.textMessage.length < 20">
  1521. <a-icon type="plus"/>
  1522. <div class="ant-upload-text">点我上传短信模板</div>
  1523. </div>
  1524. </a-upload>
  1525. </div>
  1526. <div class="swiper-button-next swiper-button-white" slot="button-next">
  1527. <div>
  1528. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  1529. </div>
  1530. </div>
  1531. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  1532. <div>
  1533. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  1534. </div>
  1535. </div>
  1536. </swiper>
  1537. </div>
  1538. </div>
  1539. </a-card>
  1540. <!-- 端口类短信业务责任承诺书-->
  1541. <a-card v-if="steps.currentId == 'textMessageBook'"
  1542. style="margin-bottom:10px;
  1543. float: left;width: 83%;left: 2%">
  1544. <div slot="title">
  1545. <span style="float: left;position: relative;top: 4px"> 端口类短信业务责任承诺书</span>
  1546. </div>
  1547. <!-- 文件上传-->
  1548. <!-- 附件-->
  1549. <div>
  1550. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  1551. <a-textarea style="height: 77px"
  1552. @change="textareaChange('textMessageBook','textMessageBookRemark')"
  1553. v-model="infoModel.textMessageBookRemark"
  1554. placeholder="端口类短信业务责任承诺书"
  1555. />
  1556. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  1557. </a-form-model-item>
  1558. </div>
  1559. <div style="height: 70%">
  1560. <a-upload
  1561. name="file"
  1562. :multiple="true"
  1563. :action="importMinioUploadAction"
  1564. :customRequest="e => selfUploadContract(e, 'textMessageBook')"
  1565. :headers="tokenHeader"
  1566. :showUploadList="false"
  1567. :beforeUpload="importBeforeUpload"
  1568. @change="importHandleChange"
  1569. style='margin-left: 90px'
  1570. >
  1571. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  1572. </a-upload>
  1573. <div class="thumb-example" >
  1574. <!-- swiper1 -->
  1575. <swiper
  1576. class="swiper gallery-top"
  1577. :options="swiperOptionTop"
  1578. ref="swiperTop"
  1579. >
  1580. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.textMessageBook" :key="item.id">
  1581. <iframe
  1582. v-if="item.urlBase"
  1583. frameborder="1"
  1584. :src="item.urlBase"
  1585. ref="ifr"
  1586. width="85%"
  1587. height="445px"
  1588. scrolling="auto">
  1589. </iframe>
  1590. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  1591. v-if="!item.urlBase" :src="noDataPng" border="1">
  1592. <a-button v-if="infoModel.textMessageBook.length && item.urlBase"
  1593. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  1594. danger @click="removeFile(item,'textMessageBook')">移除
  1595. </a-button>
  1596. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  1597. v-if="infoModel.textMessageBook.length && item.urlBase"
  1598. @click="jumpUrl(item.urlBase)">预览
  1599. </a-button></div>
  1600. </swiper-slide>
  1601. <!-- <div
  1602. class="swiper-button-next swiper-button-white"
  1603. slot="button-next"
  1604. ></div>
  1605. <div
  1606. class="swiper-button-prev swiper-button-white"
  1607. slot="button-prev"
  1608. ></div>-->
  1609. </swiper>
  1610. <!-- swiper2 Thumbs -->
  1611. <swiper
  1612. class="swiper gallery-thumbs"
  1613. :options="swiperOptionThumbs"
  1614. ref="swiperThumbs"
  1615. >
  1616. <swiper-slide
  1617. class="slide"
  1618. style="width:100px;height:100px;"
  1619. v-for="(item, index) in infoModel.textMessageBook"
  1620. :key="item.id"
  1621. >
  1622. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1623. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1624. </div>
  1625. <img style="width: 100%;height: 96px"
  1626. v-if="!item.urlBase" :src="noDataPng" border="1">
  1627. </swiper-slide>
  1628. <!-- 点我上传文件按钮-->
  1629. <div class="clearfix">
  1630. <a-upload
  1631. listType="picture-card"
  1632. name="file"
  1633. :multiple="false"
  1634. :action="importMinioUploadAction"
  1635. :customRequest="e => selfUploadContract(e, 'textMessageBook')"
  1636. :headers="tokenHeader"
  1637. :showUploadList="false"
  1638. :beforeUpload="importBeforeUpload"
  1639. @change="importHandleChange"
  1640. >
  1641. <div v-if="infoModel.textMessageBook.length < 20">
  1642. <a-icon type="plus"/>
  1643. <div class="ant-upload-text">点我上传端口类短信业务责任承诺书</div>
  1644. </div>
  1645. </a-upload>
  1646. </div>
  1647. <div class="swiper-button-next swiper-button-white" slot="button-next">
  1648. <div>
  1649. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  1650. </div>
  1651. </div>
  1652. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  1653. <div>
  1654. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  1655. </div>
  1656. </div>
  1657. </swiper>
  1658. </div>
  1659. </div>
  1660. </a-card>
  1661. <!-- 信息安全责任承诺书-->
  1662. <a-card v-if="steps.currentId == 'secureBook'"
  1663. style="margin-bottom:10px;
  1664. float: left;width: 83%;left: 2%">
  1665. <div slot="title">
  1666. <span style="float: left;position: relative;top: 4px"> 信息安全责任承诺书</span>
  1667. </div>
  1668. <!-- 文件上传-->
  1669. <!-- 附件-->
  1670. <div>
  1671. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  1672. <a-textarea style="height: 77px"
  1673. @change="textareaChange('secureBook','secureBookRemark')"
  1674. v-model="infoModel.secureBookRemark"
  1675. placeholder="信息安全责任承诺书"
  1676. />
  1677. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  1678. </a-form-model-item>
  1679. </div>
  1680. <div style="height: 70%">
  1681. <a-upload
  1682. name="file"
  1683. :multiple="true"
  1684. :action="importMinioUploadAction"
  1685. :customRequest="e => selfUploadContract(e, 'secureBook')"
  1686. :headers="tokenHeader"
  1687. :showUploadList="false"
  1688. :beforeUpload="importBeforeUpload"
  1689. @change="importHandleChange"
  1690. style='margin-left: 90px'
  1691. >
  1692. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  1693. </a-upload>
  1694. <div class="thumb-example" >
  1695. <!-- swiper1 -->
  1696. <swiper
  1697. class="swiper gallery-top"
  1698. :options="swiperOptionTop"
  1699. ref="swiperTop"
  1700. >
  1701. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.secureBook" :key="item.id">
  1702. <iframe
  1703. v-if="item.urlBase"
  1704. frameborder="1"
  1705. :src="item.urlBase"
  1706. ref="ifr"
  1707. width="85%"
  1708. height="445px"
  1709. scrolling="auto">
  1710. </iframe>
  1711. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  1712. v-if="!item.urlBase" :src="noDataPng" border="1">
  1713. <a-button v-if="infoModel.secureBook.length && item.urlBase"
  1714. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  1715. danger @click="removeFile(item,'secureBook')">移除
  1716. </a-button>
  1717. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  1718. v-if="infoModel.secureBook.length && item.urlBase"
  1719. @click="jumpUrl(item.urlBase)">预览
  1720. </a-button></div>
  1721. </swiper-slide>
  1722. <!-- <div
  1723. class="swiper-button-next swiper-button-white"
  1724. slot="button-next"
  1725. ></div>
  1726. <div
  1727. class="swiper-button-prev swiper-button-white"
  1728. slot="button-prev"
  1729. ></div>-->
  1730. </swiper>
  1731. <!-- swiper2 Thumbs -->
  1732. <swiper
  1733. class="swiper gallery-thumbs"
  1734. :options="swiperOptionThumbs"
  1735. ref="swiperThumbs"
  1736. >
  1737. <swiper-slide
  1738. class="slide"
  1739. style="width:100px;height:100px;"
  1740. v-for="(item, index) in infoModel.secureBook"
  1741. :key="item.id"
  1742. >
  1743. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1744. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1745. </div>
  1746. <img style="width: 100%;height: 96px"
  1747. v-if="!item.urlBase" :src="noDataPng" border="1">
  1748. </swiper-slide>
  1749. <!-- 点我上传文件按钮-->
  1750. <div class="clearfix">
  1751. <a-upload
  1752. listType="picture-card"
  1753. name="file"
  1754. :multiple="false"
  1755. :action="importMinioUploadAction"
  1756. :customRequest="e => selfUploadContract(e, 'secureBook')"
  1757. :headers="tokenHeader"
  1758. :showUploadList="false"
  1759. :beforeUpload="importBeforeUpload"
  1760. @change="importHandleChange"
  1761. >
  1762. <div v-if="infoModel.secureBook.length < 20">
  1763. <a-icon type="plus"/>
  1764. <div class="ant-upload-text">点我上传信息安全责任承诺书</div>
  1765. </div>
  1766. </a-upload>
  1767. </div>
  1768. <div class="swiper-button-next swiper-button-white" slot="button-next">
  1769. <div>
  1770. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  1771. </div>
  1772. </div>
  1773. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  1774. <div>
  1775. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  1776. </div>
  1777. </div>
  1778. </swiper>
  1779. </div>
  1780. </div>
  1781. </a-card>
  1782. <!-- 特殊资费审批(标准资费无需提供)-->
  1783. <a-card v-if="steps.currentId == 'special'"
  1784. style="margin-bottom:10px;
  1785. float: left;width: 83%;left: 2%">
  1786. <div slot="title">
  1787. <span style="float: left;position: relative;top: 4px"> 特殊资费审批(标准资费无需提供)</span>
  1788. </div>
  1789. <!-- 文件上传-->
  1790. <!-- 附件-->
  1791. <div>
  1792. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  1793. <a-textarea style="height: 77px"
  1794. @change="textareaChange('special','specialRemark')"
  1795. v-model="infoModel.specialRemark"
  1796. placeholder="特殊资费审批(标准资费无需提供)"
  1797. />
  1798. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  1799. </a-form-model-item>
  1800. </div>
  1801. <div style="height: 70%">
  1802. <a-upload
  1803. name="file"
  1804. :multiple="true"
  1805. :action="importMinioUploadAction"
  1806. :customRequest="e => selfUploadContract(e, 'special')"
  1807. :headers="tokenHeader"
  1808. :showUploadList="false"
  1809. :beforeUpload="importBeforeUpload"
  1810. @change="importHandleChange"
  1811. style='margin-left: 90px'
  1812. >
  1813. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  1814. </a-upload>
  1815. <div class="thumb-example" >
  1816. <!-- swiper1 -->
  1817. <swiper
  1818. class="swiper gallery-top"
  1819. :options="swiperOptionTop"
  1820. ref="swiperTop"
  1821. >
  1822. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.special" :key="item.id">
  1823. <iframe
  1824. v-if="item.urlBase"
  1825. frameborder="1"
  1826. :src="item.urlBase"
  1827. ref="ifr"
  1828. width="85%"
  1829. height="445px"
  1830. scrolling="auto">
  1831. </iframe>
  1832. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  1833. v-if="!item.urlBase" :src="noDataPng" border="1">
  1834. <a-button v-if="infoModel.special.length && item.urlBase"
  1835. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  1836. danger @click="removeFile(item,'special')">移除
  1837. </a-button>
  1838. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  1839. v-if="infoModel.special.length && item.urlBase"
  1840. @click="jumpUrl(item.urlBase)">预览
  1841. </a-button></div>
  1842. </swiper-slide>
  1843. <!-- <div
  1844. class="swiper-button-next swiper-button-white"
  1845. slot="button-next"
  1846. ></div>
  1847. <div
  1848. class="swiper-button-prev swiper-button-white"
  1849. slot="button-prev"
  1850. ></div>-->
  1851. </swiper>
  1852. <!-- swiper2 Thumbs -->
  1853. <swiper
  1854. class="swiper gallery-thumbs"
  1855. :options="swiperOptionThumbs"
  1856. ref="swiperThumbs"
  1857. >
  1858. <swiper-slide
  1859. class="slide"
  1860. style="width:100px;height:100px;"
  1861. v-for="(item, index) in infoModel.special"
  1862. :key="item.id"
  1863. >
  1864. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1865. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1866. </div>
  1867. <img style="width: 100%;height: 96px"
  1868. v-if="!item.urlBase" :src="noDataPng" border="1">
  1869. </swiper-slide>
  1870. <!-- 点我上传文件按钮-->
  1871. <div class="clearfix">
  1872. <a-upload
  1873. listType="picture-card"
  1874. name="file"
  1875. :multiple="false"
  1876. :action="importMinioUploadAction"
  1877. :customRequest="e => selfUploadContract(e, 'special')"
  1878. :headers="tokenHeader"
  1879. :showUploadList="false"
  1880. :beforeUpload="importBeforeUpload"
  1881. @change="importHandleChange"
  1882. >
  1883. <div v-if="infoModel.special.length < 20">
  1884. <a-icon type="plus"/>
  1885. <div class="ant-upload-text">点我上传特殊资费审批(标准资费无需提供)</div>
  1886. </div>
  1887. </a-upload>
  1888. </div>
  1889. <div class="swiper-button-next swiper-button-white" slot="button-next">
  1890. <div>
  1891. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  1892. </div>
  1893. </div>
  1894. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  1895. <div>
  1896. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  1897. </div>
  1898. </div>
  1899. </swiper>
  1900. </div>
  1901. </div>
  1902. </a-card>
  1903. <!-- 入网签报-->
  1904. <a-card v-if="steps.currentId == 'networkAccess'"
  1905. style="margin-bottom:10px;
  1906. float: left;width: 83%;left: 2%">
  1907. <div slot="title">
  1908. <span style="float: left;position: relative;top: 4px"> 入网签报</span>
  1909. </div>
  1910. <!-- 文件上传-->
  1911. <!-- 附件-->
  1912. <div>
  1913. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  1914. <a-textarea style="height: 77px"
  1915. @change="textareaChange('networkAccess','networkAccessRemark')"
  1916. v-model="infoModel.networkAccessRemark"
  1917. placeholder="上传入网签报资料备注"
  1918. />
  1919. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  1920. </a-form-model-item>
  1921. </div>
  1922. <div style="height: 70%">
  1923. <a-upload
  1924. name="file"
  1925. :multiple="true"
  1926. :action="importMinioUploadAction"
  1927. :customRequest="e => selfUploadContract(e, 'networkAccess')"
  1928. :headers="tokenHeader"
  1929. :showUploadList="false"
  1930. :beforeUpload="importBeforeUpload"
  1931. @change="importHandleChange"
  1932. style='margin-left: 90px'
  1933. >
  1934. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  1935. </a-upload>
  1936. <div class="thumb-example" >
  1937. <!-- swiper1 -->
  1938. <swiper
  1939. class="swiper gallery-top"
  1940. :options="swiperOptionTop"
  1941. ref="swiperTop"
  1942. >
  1943. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.networkAccess" :key="item.id">
  1944. <iframe
  1945. v-if="item.urlBase"
  1946. frameborder="1"
  1947. :src="item.urlBase"
  1948. ref="ifr"
  1949. width="85%"
  1950. height="445px"
  1951. scrolling="auto">
  1952. </iframe>
  1953. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  1954. v-if="!item.urlBase" :src="noDataPng" border="1">
  1955. <a-button v-if="infoModel.networkAccess.length && item.urlBase"
  1956. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  1957. danger @click="removeFile(item,'networkAccess')">移除
  1958. </a-button>
  1959. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  1960. v-if="infoModel.networkAccess.length && item.urlBase"
  1961. @click="jumpUrl(item.urlBase)">预览
  1962. </a-button></div>
  1963. </swiper-slide>
  1964. <!-- <div
  1965. class="swiper-button-next swiper-button-white"
  1966. slot="button-next"
  1967. ></div>
  1968. <div
  1969. class="swiper-button-prev swiper-button-white"
  1970. slot="button-prev"
  1971. ></div>-->
  1972. </swiper>
  1973. <!-- swiper2 Thumbs -->
  1974. <swiper
  1975. class="swiper gallery-thumbs"
  1976. :options="swiperOptionThumbs"
  1977. ref="swiperThumbs"
  1978. >
  1979. <swiper-slide
  1980. class="slide"
  1981. style="width:100px;height:100px;"
  1982. v-for="(item, index) in infoModel.networkAccess"
  1983. :key="item.id"
  1984. >
  1985. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  1986. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  1987. </div>
  1988. <img style="width: 100%;height: 96px"
  1989. v-if="!item.urlBase" :src="noDataPng" border="1">
  1990. </swiper-slide>
  1991. <!-- 点我上传文件按钮-->
  1992. <div class="clearfix">
  1993. <a-upload
  1994. listType="picture-card"
  1995. name="file"
  1996. :multiple="false"
  1997. :action="importMinioUploadAction"
  1998. :customRequest="e => selfUploadContract(e, 'networkAccess')"
  1999. :headers="tokenHeader"
  2000. :showUploadList="false"
  2001. :beforeUpload="importBeforeUpload"
  2002. @change="importHandleChange"
  2003. >
  2004. <div v-if="infoModel.networkAccess.length < 20">
  2005. <a-icon type="plus"/>
  2006. <div class="ant-upload-text">点我上传入网签报资料</div>
  2007. </div>
  2008. </a-upload>
  2009. </div>
  2010. <div class="swiper-button-next swiper-button-white" slot="button-next">
  2011. <div>
  2012. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  2013. </div>
  2014. </div>
  2015. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  2016. <div>
  2017. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  2018. </div>
  2019. </div>
  2020. </swiper>
  2021. </div>
  2022. </div>
  2023. </a-card>
  2024. <!-- 集团价格审批-->
  2025. <a-card v-if="steps.currentId == 'groupPriceApproval'"
  2026. style="margin-bottom:10px;
  2027. float: left;width: 83%;left: 2%">
  2028. <div slot="title">
  2029. <span style="float: left;position: relative;top: 4px"> 集团价格审批</span>
  2030. </div>
  2031. <!-- 文件上传-->
  2032. <!-- 附件-->
  2033. <div>
  2034. <a-form-model-item style="left: 5%;width: 85%;" label="上传资料备注:" v-bind="labelCol1Note">
  2035. <a-textarea style="height: 77px"
  2036. @change="textareaChange('groupPriceApproval','groupPriceApprovalRemark')"
  2037. v-model="infoModel.groupPriceApprovalRemark"
  2038. placeholder="集团价格审批"
  2039. />
  2040. <!-- :auto-size="{ minRows: 3, maxRows: 5 }"-->
  2041. </a-form-model-item>
  2042. </div>
  2043. <div style="height: 70%">
  2044. <a-upload
  2045. name="file"
  2046. :multiple="true"
  2047. :action="importMinioUploadAction"
  2048. :customRequest="e => selfUploadContract(e, 'groupPriceApproval')"
  2049. :headers="tokenHeader"
  2050. :showUploadList="false"
  2051. :beforeUpload="importBeforeUpload"
  2052. @change="importHandleChange"
  2053. style='margin-left: 90px'
  2054. >
  2055. <a-button> <a-icon type="upload" /> 上传文件 </a-button>
  2056. </a-upload>
  2057. <div class="thumb-example" >
  2058. <!-- swiper1 -->
  2059. <swiper
  2060. class="swiper gallery-top"
  2061. :options="swiperOptionTop"
  2062. ref="swiperTop"
  2063. >
  2064. <swiper-slide class="slide-1" v-for="(item, index) in infoModel.groupPriceApproval" :key="item.id">
  2065. <iframe
  2066. v-if="item.urlBase"
  2067. frameborder="1"
  2068. :src="item.urlBase"
  2069. ref="ifr"
  2070. width="85%"
  2071. height="445px"
  2072. scrolling="auto">
  2073. </iframe>
  2074. <div><img style="width: 85%;height: 445px;border: 1px solid;"
  2075. v-if="!item.urlBase" :src="noDataPng" border="1">
  2076. <a-button v-if="infoModel.groupPriceApproval.length && item.urlBase"
  2077. style="display: block;margin-top: 1px;border-color: red;color: red;float: left"
  2078. danger @click="removeFile(item,'groupPriceApproval')">移除
  2079. </a-button>
  2080. <a-button style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
  2081. v-if="infoModel.groupPriceApproval.length && item.urlBase"
  2082. @click="jumpUrl(item.urlBase)">预览
  2083. </a-button></div>
  2084. </swiper-slide>
  2085. <!-- <div
  2086. class="swiper-button-next swiper-button-white"
  2087. slot="button-next"
  2088. ></div>
  2089. <div
  2090. class="swiper-button-prev swiper-button-white"
  2091. slot="button-prev"
  2092. ></div>-->
  2093. </swiper>
  2094. <!-- swiper2 Thumbs -->
  2095. <swiper
  2096. class="swiper gallery-thumbs"
  2097. :options="swiperOptionThumbs"
  2098. ref="swiperThumbs"
  2099. >
  2100. <swiper-slide
  2101. class="slide"
  2102. style="width:100px;height:100px;"
  2103. v-for="(item, index) in infoModel.groupPriceApproval"
  2104. :key="item.id"
  2105. >
  2106. <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
  2107. <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
  2108. </div>
  2109. <img style="width: 100%;height: 96px"
  2110. v-if="!item.urlBase" :src="noDataPng" border="1">
  2111. </swiper-slide>
  2112. <!-- 点我上传文件按钮-->
  2113. <div class="clearfix">
  2114. <a-upload
  2115. listType="picture-card"
  2116. name="file"
  2117. :multiple="false"
  2118. :action="importMinioUploadAction"
  2119. :customRequest="e => selfUploadContract(e, 'groupPriceApproval')"
  2120. :headers="tokenHeader"
  2121. :showUploadList="false"
  2122. :beforeUpload="importBeforeUpload"
  2123. @change="importHandleChange"
  2124. >
  2125. <div v-if="infoModel.groupPriceApproval.length < 20">
  2126. <a-icon type="plus"/>
  2127. <div class="ant-upload-text">点我上传集团价格审批</div>
  2128. </div>
  2129. </a-upload>
  2130. </div>
  2131. <div class="swiper-button-next swiper-button-white" slot="button-next">
  2132. <div>
  2133. <!-- <img src="../../../../assets/images/nextImg.png" alt=""/>-->
  2134. </div>
  2135. </div>
  2136. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  2137. <div>
  2138. <!-- <img src="../../../../assets/images/prevImg.png" alt=""/>-->
  2139. </div>
  2140. </div>
  2141. </swiper>
  2142. </div>
  2143. </div>
  2144. </a-card>
  2145. <a-card v-if='isPhoneshow' ref="floatButton"
  2146. class="float-infoPhone">
  2147. <div class="thumb-example1" >
  2148. <!-- swiper1 -->
  2149. <swiper
  2150. class="swiper gallery-top1"
  2151. :options="swiperOptionTop"
  2152. ref="swiperTop"
  2153. >
  2154. </swiper>
  2155. <!-- swiper2 Thumbs -->
  2156. <swiper
  2157. class="swiper gallery-thumbs"
  2158. :options="swiperOptionThumbs"
  2159. ref="swiperThumbs"
  2160. >
  2161. <swiper-slide v-for="(item, index) in phoneList" :key="item.id"
  2162. class="slide"
  2163. style="width:290px;height:200px;">
  2164. <div v-if="item.urlBase" style="width:290px;height: 96px;background: rgb(68,142,247);color: white">
  2165. <iframe
  2166. v-if="item.urlBase"
  2167. frameborder="1"
  2168. :src="item.urlBase"
  2169. ref="ifr"
  2170. @preview="handlePreview"
  2171. @change="handleChange"
  2172. scrolling="auto">
  2173. </iframe>
  2174. <div style="display:flex ;justify-content:center;height:100%;">
  2175. <a-button @click='selfUploadContractView(item)' >使用</a-button>
  2176. <a-button style='margin-left: 10px' @click="jumpUrl(item.urlBase)">预览</a-button>
  2177. </div>
  2178. </div>
  2179. <a-modal :visible="previewVisible" :footer="null" @cancel="handleCancel">
  2180. <img alt="example" style="width: 100%" :src="previewImage" />
  2181. </a-modal>
  2182. </swiper-slide>
  2183. <div class="swiper-button-next swiper-button-white" slot="button-next">
  2184. <div>
  2185. </div>
  2186. </div>
  2187. <div class="swiper-button-prev swiper-button-white" slot="button-prev">
  2188. <div>
  2189. </div>
  2190. </div>
  2191. </swiper>
  2192. </div>
  2193. </a-card>
  2194. <div @click='showPhone(true,true)'
  2195. ref="floatButton"
  2196. class="float-info floating-button"
  2197. :style="{'width': 80 + 'px', 'height': 80 + 'px', 'left': 90+'%' , 'top': 80 + '%'}"
  2198. >
  2199. <a-badge :count=fileShoppingNumber>
  2200. <img style="width: 89%;height: 81%;position: relative;top: 10%" :src="fileShopping" border="1">
  2201. </a-badge>
  2202. </div>
  2203. </a-spin>
  2204. </template>
  2205. <script>
  2206. import {getAction, httpAction, postAction} from "@api/manage";
  2207. /*无数据图片*/
  2208. import noDataPng from '@/assets/nodata.png'
  2209. import Vue from "vue";
  2210. import {ACCESS_TOKEN, TENANT_ID} from "@/store/mutation-types";
  2211. import fileShopping from '@assets/file_shopping.png'
  2212. let Base64 = require('js-base64').Base64
  2213. function getBase64(file) {
  2214. return new Promise((resolve, reject) => {
  2215. const reader = new FileReader();
  2216. reader.readAsDataURL(file);
  2217. reader.onload = () => resolve(reader.result);
  2218. reader.onerror = error => reject(error);
  2219. });
  2220. }
  2221. export default {
  2222. name: 'TaskUploadData',
  2223. inject: ['closeCurrent'],
  2224. components: {
  2225. noDataPng
  2226. },
  2227. data() {
  2228. return {
  2229. // 购物车图标数
  2230. fileShoppingNumber:0,
  2231. fileShopping: fileShopping,
  2232. idCurrent :'',
  2233. previewVisible: false,
  2234. previewImage: '',
  2235. btnStyle:{
  2236. "fontSize":'small',
  2237. "top":'60vh',
  2238. "left":'90vw'
  2239. },
  2240. //缩略与大图数据源
  2241. swiperId: 1,
  2242. //轮播配置
  2243. swiperOptionTop: {
  2244. zoom: true,
  2245. loop: false,
  2246. loopedSlides: 5, // looped slides should be the same
  2247. spaceBetween: 10,
  2248. observer: true, //修改swiper自己或子元素时,自动初始化swiper
  2249. observeParents: true, //修改swiper的父元素时,自动初始化swiper
  2250. // autoplay: { //自动轮播
  2251. // delay: 2000,
  2252. // disableOnInteraction: false
  2253. // },
  2254. navigation: {
  2255. nextEl: '.swiper-button-next',
  2256. prevEl: '.swiper-button-prev'
  2257. }
  2258. },
  2259. swiperOptionThumbs: {
  2260. loop: false,
  2261. loopedSlides: 5, // looped slides should be the same
  2262. spaceBetween: 10,
  2263. centeredSlides: true,
  2264. slidesPerView: 'auto',
  2265. touchRatio: 0.2,
  2266. slideToClickedSlide: true,
  2267. navigation: {
  2268. nextEl: '.swiper-button-next',
  2269. prevEl: '.swiper-button-prev'
  2270. }
  2271. },
  2272. /**无数据图片*/
  2273. noDataPng: noDataPng,
  2274. url: {
  2275. "getInfoDataById": "/smsCheck/customerInfo/queryById",
  2276. "getInfoDataByInfoId": "/smsCheck/customerData/queryDataLogByInfoId",
  2277. // 上传文件
  2278. "minioUpload": "/smsCheck/customerData/uploadMinio",
  2279. },
  2280. //是否批量上传
  2281. batchImproves: false,
  2282. // 稽核结果
  2283. specialResult: {},
  2284. // 全局是否是在加载中
  2285. uploading: false,
  2286. //上级传参
  2287. query: {
  2288. data: {},
  2289. },
  2290. // 客户资料信息
  2291. notes:"",
  2292. phoneList:'',
  2293. infoModel: {
  2294. staffName:"",
  2295. customerNo :"",
  2296. userNo:"",
  2297. networkAccessTime:"",
  2298. infoId:"",
  2299. //是否完成整改
  2300. isComplete:"",
  2301. //资料是否完整
  2302. isAll:"",
  2303. //签约号码与证书下发码号是否一致
  2304. isSigningNumber:"",
  2305. //是否为CSP商
  2306. isCsp:"",
  2307. //码号证书营业执照合同签约方主体是否一致
  2308. codeNumberBusinessLicense:"",
  2309. //码号使用单位联系人手机号
  2310. codeNumberContactPhone:"",
  2311. //客户经理手机号
  2312. managePhone:"",
  2313. //用户发展员工
  2314. staffNo:"",
  2315. //号码用途
  2316. numberUse:"",
  2317. //码号
  2318. codeNumber:"",
  2319. //用户状态
  2320. userState:"",
  2321. // 材料补不全有特审
  2322. materialLabel: "0",
  2323. // 用户类型
  2324. userLable: "0",
  2325. // 申请复开号码
  2326. openingNumber: "",
  2327. // 客户名称
  2328. customerName: "",
  2329. // 最后一次关停时间
  2330. shutdownTime: "",
  2331. // 关停标签
  2332. shutdownLabel: "0",
  2333. // 关停标签-其他
  2334. shutdownLabelOther: "",
  2335. //合同到期时间
  2336. contractDate:[{}],
  2337. contractDateDateIs:"",
  2338. contractDateDate:"",
  2339. contractDateRemark:"",
  2340. //'营业执照到期时间
  2341. businessLicenseDate:[{}],
  2342. businessLicenseDateDate:"",
  2343. businessLicenseDateDateIs:"",
  2344. businessLicenseDateRemark:"",
  2345. //码号证书到期时间
  2346. codeNumberDate:[{}],
  2347. codeNumberDateDate:"",
  2348. codeNumberDateDateIs:"",
  2349. codeNumberDateRemark:"",
  2350. //'备案通知到期时间
  2351. filingsDate:[{}],
  2352. filingsDateDate:"",
  2353. filingsDateDateIs:"",
  2354. filingsDateRemark:"",
  2355. //增值业务许可证到期时间
  2356. permitDate:[{}],
  2357. permitDateDate:"",
  2358. permitDateRemark:"",
  2359. permitDateDateIs:"",
  2360. //法人/责任人证件
  2361. corporationCard:[{}],
  2362. corporationCardRemark:"",
  2363. //责任人授权书
  2364. personResponsible:[{}],
  2365. personResponsibleRemark:"",
  2366. //经办人证件
  2367. operatorCard:[{}],
  2368. operatorCardRemark:"",
  2369. //经办人手持身份证照片(背景需为电信营业厅或白墙)
  2370. operatorCardPhone:[{}],
  2371. operatorCardPhoneRemark:"",
  2372. //机房设备照片'
  2373. devicePhone:[{}],
  2374. devicePhoneRemark:"",
  2375. //短信模板'
  2376. textMessage:[{}],
  2377. textMessageRemark:"",
  2378. //端口类短信业务责任承诺书'
  2379. textMessageBook:[{}],
  2380. textMessageBookRemark:"",
  2381. //信息安全责任承诺书
  2382. secureBook:[{}],
  2383. secureBookRemark:"",
  2384. //特殊资费审批(标准资费无需提供
  2385. special:[{}],
  2386. specialRemark:"",
  2387. //入网签报
  2388. networkAccess:[{}],
  2389. networkAccessRemark:"",
  2390. //集团价格审批
  2391. groupPriceApproval:[{}],
  2392. groupPriceApprovalRemark:"",
  2393. },
  2394. //表单验证
  2395. rules: {
  2396. permitDateDate:[
  2397. {required: true, message: '必须输增值业务许可证到期时间'},
  2398. ],
  2399. filingsDateDate:[
  2400. {required: true, message: '必须输备案证书到期时间'},
  2401. ],
  2402. codeNumberDateDate:[
  2403. {required: true, message: '必须输码号证书到期时间'},
  2404. ],
  2405. openingNumber: [
  2406. {required: true, message: '必须输入手机号'},
  2407. ],
  2408. contractDateDate: [
  2409. {required: true, message: '必须输入合同到期时间'},
  2410. ],
  2411. businessLicenseDateDate: [
  2412. {required: true, message: '必须输入营业执照到期时间'},
  2413. ],
  2414. codeNumberContactPhone: [
  2415. {required: true, message: '请输入单位联系人手机号!', trigger: 'blur'}, {validator: this.isPhone}
  2416. ],
  2417. managePhone: [
  2418. {required: true, message: '请输入客户经理手机号!', trigger: 'blur'}, {validator: this.isPhone}
  2419. ],
  2420. customerName: [
  2421. {required: true, message: '必须输入客户名称'},
  2422. ],
  2423. userState: [
  2424. {required: true, message: '必须输入用户状态'},
  2425. ],
  2426. codeNumber : [
  2427. {required: true, message: '必须输入码号'},
  2428. ],
  2429. numberUse: [
  2430. {required: true, message: '必须输入号码用途'},
  2431. ],
  2432. staffNo: [
  2433. {required: true, message: '必须输入用户发展员工'},
  2434. ],
  2435. isCsp: [
  2436. {required: true, message: '必须输入是否为isCsp商'},
  2437. ],
  2438. codeNumberBusinessLicense: [
  2439. {required: true, message: '必须选择是否一致'},
  2440. ],
  2441. isSigningNumber: [
  2442. {required: true, message: '请选择是否一致'},
  2443. ],
  2444. isAll: [
  2445. {required: true, message: '必须选择资料是否完整'},
  2446. ],
  2447. isComplete: [
  2448. {required: true, message: '必须选择是否完成整改'},
  2449. ],
  2450. contractDateDateIs: [
  2451. {required: true, message: '必须选择合同到期时间是否长期'},
  2452. ],
  2453. businessLicenseDateDateIs: [
  2454. {required: true, message: '必须选择营业执照到期时间是否长期'},
  2455. ],
  2456. codeNumberDateDateIs: [
  2457. {required: true, message: '必须选择码号证书有效期是否长期'},
  2458. ],
  2459. filingsDateDateIs: [
  2460. {required: true, message: '必须选择备案通知是否长期'},
  2461. ],
  2462. permitDateDateIs:[
  2463. {required: true, message: '必须选择增值业务许可证是否长期'},
  2464. ],
  2465. },
  2466. labelCol4: {
  2467. labelCol: {
  2468. xs: {span: 24},
  2469. sm: {span: 10},
  2470. },
  2471. wrapperCol: {
  2472. xs: {span: 24},
  2473. sm: {span: 12},
  2474. }
  2475. },
  2476. labelCol5: {
  2477. labelCol: {
  2478. xs: {span: 24},
  2479. sm: {span: 14},
  2480. },
  2481. wrapperCol: {
  2482. xs: {span: 24},
  2483. sm: {span: 8},
  2484. }
  2485. },
  2486. labelCol1: {
  2487. labelCol: {
  2488. xs: {span: 24},
  2489. sm: {span: 2},
  2490. },
  2491. wrapperCol: {
  2492. xs: {span: 24},
  2493. sm: {span: 22},
  2494. }
  2495. },
  2496. labelCol6: {
  2497. labelCol: {
  2498. xs: {span: 24},
  2499. sm: {span:10},
  2500. },
  2501. wrapperCol: {
  2502. xs: {span: 24},
  2503. sm: {span: 12},
  2504. }
  2505. },
  2506. labelCol8: {
  2507. labelCol: {
  2508. xs: {span: 24},
  2509. sm: {span: 10},
  2510. },
  2511. wrapperCol: {
  2512. xs: {span: 24},
  2513. sm: {span: 12},
  2514. }
  2515. },
  2516. labelCol1Note: {
  2517. labelCol: {
  2518. xs: {span: 24},
  2519. sm: {span: 4},
  2520. },
  2521. wrapperCol: {
  2522. xs: {span: 24},
  2523. sm: {span: 14},
  2524. }
  2525. },
  2526. labelCol1Note2: {
  2527. labelCol: {
  2528. xs: {span: 24},
  2529. sm: {span: 6},
  2530. },
  2531. wrapperCol: {
  2532. xs: {span: 24},
  2533. sm: {span: 14},
  2534. }
  2535. },
  2536. isPhoneshow:false,
  2537. // 步骤条相关
  2538. steps: {
  2539. // 当前所在第几部
  2540. current: 0,
  2541. currentId: "",
  2542. stepsNow: {},
  2543. steps00: [
  2544. {
  2545. title: '上传合同资料',
  2546. content: 'First-content',
  2547. id: "contractDate",
  2548. status: "wait"
  2549. },
  2550. {
  2551. title: '上传营业执照资料',
  2552. content: 'First-content',
  2553. id: "businessLicenseDate",
  2554. status: "wait"
  2555. },
  2556. {
  2557. title: '上传码号证书资料',
  2558. content: 'First-content',
  2559. id: "codeNumberDate",
  2560. status: "wait"
  2561. },
  2562. {
  2563. title: '上传备案通知资料',
  2564. content: 'First-content',
  2565. id: "filingsDate",
  2566. status: "wait"
  2567. },{
  2568. title: '上传增值业务许可证资料',
  2569. content: 'First-content',
  2570. id: "permitDate",
  2571. status: "wait"
  2572. }, {
  2573. title: '上传法人/责任人证件资料',
  2574. content: 'First-content',
  2575. id: "corporationCard",
  2576. status: "wait"
  2577. },{
  2578. title: '上传责任人授权书资料',
  2579. content: 'First-content',
  2580. id: "personResponsible",
  2581. status: "wait"
  2582. },{
  2583. title: '上传经办人证件资料',
  2584. content: 'First-content',
  2585. id: "operatorCard",
  2586. status: "wait"
  2587. },{
  2588. title: '上传入网签报资料',
  2589. content: 'First-content',
  2590. id: "networkAccess",
  2591. status: "wait"
  2592. },{
  2593. title: '上传集团价格审批资料',
  2594. content: 'First-content',
  2595. id: "groupPriceApproval",
  2596. status: "wait"
  2597. },{
  2598. title: '上传机房设备照片',
  2599. content: 'First-content',
  2600. id: "devicePhone",
  2601. status: "wait"
  2602. }, {
  2603. title: '上传短信模板',
  2604. content: 'First-content',
  2605. id: "textMessage",
  2606. status: "wait"
  2607. },{
  2608. title: '上传信息安全责任承诺书',
  2609. content: 'First-content',
  2610. id: "secureBook",
  2611. status: "wait"
  2612. },{
  2613. title: '上传经办人手持身份证照片(背景需为电信营业厅或白墙)',
  2614. content: 'First-content',
  2615. id: "operatorCardPhone",
  2616. status: "wait"
  2617. },
  2618. {
  2619. title: '上传端口类短信业务责任承诺书',
  2620. content: 'First-content',
  2621. id: "textMessageBook",
  2622. status: "wait"
  2623. },{
  2624. title: '上传特殊资费审批(标准资费无需提供)资料',
  2625. content: 'First-content',
  2626. id: "special",
  2627. status: "wait"
  2628. },
  2629. ],
  2630. // 单位户
  2631. stepUserLable1: [
  2632. {
  2633. title: '使用人证件',
  2634. content: 'First-content',
  2635. id: "userCertificate",
  2636. status: "wait"
  2637. },
  2638. {
  2639. title: '营业执照副本(盖公章)',
  2640. content: 'First-content',
  2641. id: "businessLicense",
  2642. status: "wait"
  2643. },
  2644. {
  2645. title: '介绍信',
  2646. content: 'First-content',
  2647. id: "letterIntroduction",
  2648. status: "wait"
  2649. }
  2650. ],
  2651. // 个人户
  2652. stepUserLable0: [
  2653. {
  2654. title: '号卡照片',
  2655. content: 'First-content',
  2656. id: "numberCard",
  2657. status: "wait"
  2658. },
  2659. ],
  2660. // 材料标签
  2661. shutdownLabel0: [
  2662. {
  2663. title: '消费凭证',
  2664. content: 'First-content',
  2665. id: "consumptionVoucher",
  2666. status: "wait"
  2667. },
  2668. ],
  2669. // 承诺视频
  2670. shutdownLabel5: [
  2671. {
  2672. title: '承诺视频',
  2673. content: 'First-content',
  2674. id: "commitmentVideo",
  2675. status: "wait"
  2676. },
  2677. ],
  2678. },
  2679. }
  2680. },
  2681. computed: {
  2682. importMinioUploadAction() {
  2683. return window._CONFIG['domianURL'] + this.url.minioUpload;
  2684. },
  2685. tokenHeader() {
  2686. let head = {'X-Access-Token': Vue.ls.get(ACCESS_TOKEN)}
  2687. let tenantid = Vue.ls.get(TENANT_ID)
  2688. if (tenantid) {
  2689. head['tenant-id'] = tenantid
  2690. }
  2691. return head;
  2692. }
  2693. },
  2694. props: {
  2695. itemWidth: { // 按钮宽度
  2696. type: Number,
  2697. default: 55
  2698. },
  2699. itemHeight: { // 按钮高度
  2700. type: Number,
  2701. default: 55
  2702. },
  2703. gapWidth: { // 距离左右两边距离
  2704. type: Number,
  2705. default: 15
  2706. },
  2707. coefficientHeight: { // 从上到下距离比例
  2708. type: Number,
  2709. default: 0.55
  2710. }
  2711. },
  2712. watch: {},
  2713. created() {
  2714. // 是否批量上传
  2715. this.infoModel.infoId=this.$route.query.id;
  2716. this.batchImproves = this.$route.query.batchImproves;
  2717. // 步骤条默认公用
  2718. this.steps.stepsNow = this.steps.steps00;
  2719. this.steps.currentId = this.steps.stepsNow[0].id
  2720. if (this.batchImproves) {
  2721. //批量上传id
  2722. this.ids = this.$route.query.ids;
  2723. } else {
  2724. //客户ID
  2725. this.query.infoId = this.$route.query.id;
  2726. this.getInfoDataByInfoId(this.query.infoId);
  2727. // 获取客户基础信息
  2728. this.getInfoDataById(this.query.infoId);
  2729. }
  2730. },
  2731. mounted() {
  2732. // 实现swiper双向控制
  2733. this.$nextTick(() => {
  2734. const swiperTop = this.$refs.swiperTop.swiper
  2735. const swiperThumbs = this.$refs.swiperThumbs.swiper
  2736. swiperTop.controller.control = swiperThumbs
  2737. swiperThumbs.controller.control = swiperTop
  2738. })
  2739. // /**监听视频拨放*/
  2740. // this.$refs.myVideo.addEventListener("play", () => {
  2741. // this.openTimer();
  2742. // });
  2743. // /**监听视频暂停*/
  2744. // this.$refs.myVideo.addEventListener("pause", () => {
  2745. // this.closeTimer();
  2746. // });
  2747. },
  2748. methods: {
  2749. handleCancel() {
  2750. this.previewVisible = false;
  2751. },
  2752. async handlePreview(file) {
  2753. if (!file.url && !file.preview) {
  2754. file.preview = await getBase64(file.originFileObj);
  2755. }
  2756. this.previewImage = file.url || file.preview ||file.urlBase ;
  2757. this.previewVisible = true;
  2758. },
  2759. handleChange({ fileList }) {
  2760. this.fileList = fileList;
  2761. },
  2762. showPhone(isShow,msg){
  2763. var data = {
  2764. customerNo: this.infoModel.customerNo,
  2765. stepsId: this.steps.stepsNow[this.steps.current].id,
  2766. //1:行短稽核 2:物联网业务稽核 3.复开审批 4.中继线稽核
  2767. type:'1'
  2768. }
  2769. getAction('/smsCheck/customerInfo/phone/customerPhone', data).then((res) => {
  2770. if (res.success) {
  2771. this.phoneList=JSON.parse(res.result);
  2772. if (this.phoneList!==null && this.phoneList.length!==0){
  2773. this.fileShoppingNumber = this.phoneList.length
  2774. if (this.isPhoneshow === false && isShow) {
  2775. this.isPhoneshow = true;
  2776. }else {
  2777. this.isPhoneshow = false;
  2778. }
  2779. }else {
  2780. this.fileShoppingNumber = 0 ;
  2781. if (msg){
  2782. this.$message.warning("此类无历史上传");
  2783. }
  2784. }
  2785. }else {
  2786. this.fileShoppingNumber = 0 ;
  2787. }
  2788. })
  2789. },
  2790. hoverBtnClick(){
  2791. alert('触发点击事件');
  2792. },
  2793. backDate(name){
  2794. if (name==='contractDate'){
  2795. this.infoModel.contractDateDateIs="1"
  2796. this.infoModel.contractDateDate=""
  2797. }
  2798. if (name==='businessLicenseDate'){
  2799. this.infoModel.businessLicenseDateDateIs="1"
  2800. this.infoModel.businessLicenseDateDate=""
  2801. }
  2802. if (name==='codeNumberDate'){
  2803. this.infoModel.codeNumberDateDateIs="1"
  2804. this.infoModel.codeNumberDateDate=""
  2805. }
  2806. if (name==='filingsDate'){
  2807. this.infoModel.filingsDateDateIs="1"
  2808. this.infoModel.filingsDateDate=""
  2809. }
  2810. if (name==='permitDate'){
  2811. this.infoModel.permitDateDateIs="1"
  2812. this.infoModel.permitDateDate=""
  2813. }
  2814. },
  2815. isPhone(rule, value, callback) {
  2816. if (!value || new RegExp(/^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[89])\d{8}$/).test(value)) {
  2817. callback();
  2818. } else {
  2819. callback("您的手机号码格式不正确!");
  2820. }
  2821. },
  2822. // 点击方法 url为传入的第三方链接或网址 如'www.baidu.com' url前面不要加协议哦!
  2823. jumpUrl(url){
  2824. var a = document.createElement("a");
  2825. a.setAttribute("href", url);
  2826. a.setAttribute("target", "_blank");
  2827. a.click();
  2828. },
  2829. /**备注坚听*/
  2830. textareaChange(name, nameRemark) {
  2831. if (this.infoModel[nameRemark].length > 0) {
  2832. this.steps.stepsNow[this.steps.current].status = "finish"
  2833. } else if (this.infoModel[name].length > 0 && this.infoModel[name][0].urlBase) {
  2834. this.steps.stepsNow[this.steps.current].status = "finish"
  2835. } else {
  2836. this.steps.stepsNow[this.steps.current].status = "wait"
  2837. }
  2838. },
  2839. // 步骤条动态变化
  2840. stepLoading() {
  2841. this.steps.stepsNow = this.steps.stepsNow.splice(0, 16)
  2842. //材料不全有特审步骤条
  2843. this.stepsMaterialLabel()
  2844. /**用户标签点击事件*/
  2845. this.userLableClick()
  2846. /**材料标签点击事件*/
  2847. this.shutdownLabelClick()
  2848. },
  2849. //材料不全有特审步骤条
  2850. stepsMaterialLabel() {
  2851. if (this.infoModel.materialLabel == "0" || this.infoModel.shutdownLabel == "999") {
  2852. let stepsMaterial = this.steps.stepsMaterial;
  2853. for (var i in stepsMaterial) {
  2854. this.steps.stepsNow.push(stepsMaterial[i])
  2855. }
  2856. }
  2857. },
  2858. /**用户标签点击事件*/
  2859. userLableClick() {
  2860. if (this.infoModel[name].length > 0) {
  2861. this.steps.stepsNow[this.steps.current].status = "finish"
  2862. } else if (this.infoModel[name].length > 0 && this.infoModel[name][0].urlBase) {
  2863. this.steps.stepsNow[this.steps.current].status = "finish"
  2864. } else {
  2865. this.steps.stepsNow[this.steps.current].status = "wait"
  2866. }
  2867. },
  2868. /**材料标签点击事件*/
  2869. shutdownLabelClick() {
  2870. var that = this;
  2871. //材料不全有特审步骤条
  2872. //that.stepsMaterialLabel();
  2873. let shutdownLabel = that.infoModel.shutdownLabel;
  2874. switch (shutdownLabel) {
  2875. case "0":
  2876. let shutdownLabel0 = this.steps.shutdownLabel0;
  2877. for (var i in shutdownLabel0) {
  2878. this.steps.stepsNow.push(shutdownLabel0[i])
  2879. }
  2880. break;
  2881. case "5":
  2882. let shutdownLabel5 = this.steps.shutdownLabel5;
  2883. for (var j in shutdownLabel5) {
  2884. this.steps.stepsNow.push(shutdownLabel5[j])
  2885. }
  2886. break;
  2887. }
  2888. if (this.infoModel.shutdownLabel == "999"){
  2889. let shutdownLabel0 = this.steps.shutdownLabel0;
  2890. for (var i in shutdownLabel0) {
  2891. this.steps.stepsNow.push(shutdownLabel0[i])
  2892. }
  2893. let shutdownLabel5 = this.steps.shutdownLabel5;
  2894. for (var j in shutdownLabel5) {
  2895. this.steps.stepsNow.push(shutdownLabel5[j])
  2896. }
  2897. }
  2898. },
  2899. /**移除文件*/
  2900. removeFile(fileData, fileAttribute) {
  2901. let that = this.infoModel;
  2902. //处理轮播数据
  2903. let swiperImg = that[fileAttribute];
  2904. if (swiperImg) {
  2905. let number = swiperImg.indexOf(fileData);
  2906. swiperImg.splice(number, 1)
  2907. if (swiperImg.length == 0) {
  2908. swiperImg.push({})
  2909. let textId = fileAttribute + "Remark";
  2910. if (this.infoModel[textId].trim() > 0) {
  2911. this.steps.stepsNow[this.steps.current].status = "finish"
  2912. } else {
  2913. this.steps.stepsNow[this.steps.current].status = "wait"
  2914. }
  2915. } else {
  2916. this.steps.stepsNow[this.steps.current].status = "finish"
  2917. }
  2918. that[fileAttribute] = swiperImg
  2919. }
  2920. },
  2921. selfUploadContractView(item) {
  2922. this.idCurrent= this.steps.stepsNow[this.steps.current].id;
  2923. var fileAttribute =this.steps.stepsNow[this.steps.current].id;
  2924. var that = this;
  2925. that.swiperId = that.swiperId + 1;
  2926. console.log(that.swiperId)
  2927. //文件链接
  2928. let swipData = item;
  2929. if (that.infoModel[fileAttribute][0].urlBase) {
  2930. that.infoModel[fileAttribute].push(swipData)
  2931. } else {
  2932. that.infoModel[fileAttribute] = []
  2933. //数据发生变化
  2934. that.infoModel[fileAttribute][0] = swipData;
  2935. }
  2936. // 改变步骤条状态
  2937. if (that.infoModel[fileAttribute].length > 0) {
  2938. that.steps.stepsNow[that.steps.current].status = "finish"
  2939. } else {
  2940. that.steps.stepsNow[that.steps.current].status = "wait"
  2941. }
  2942. this.$message.success(that.steps.stepsNow[that.steps.current].title+"上传成功");
  2943. },
  2944. /**自定义的上传文件方法*/
  2945. selfUploadContract(data, fileAttribute) {
  2946. var that = this;
  2947. if (data.file) {
  2948. let formData = new FormData();
  2949. formData.append('file', data.file)
  2950. postAction(this.url.minioUpload, formData).then((res) => {
  2951. if (res.success) {
  2952. that.swiperId = that.swiperId + 1;
  2953. console.log(that.swiperId)
  2954. //文件链接
  2955. let filePath = res.message;
  2956. let swipData = {
  2957. id: that.swiperId,
  2958. urlBase: window._CONFIG['onlinePreviewDomainURL'] + '?url='
  2959. + encodeURIComponent(
  2960. Base64.encode(
  2961. (filePath)
  2962. )),
  2963. url: filePath,
  2964. fileName: data.file.name
  2965. }
  2966. if (that.infoModel[fileAttribute][0].urlBase) {
  2967. that.infoModel[fileAttribute].push(swipData)
  2968. } else {
  2969. that.infoModel[fileAttribute] = []
  2970. //数据发生变化
  2971. that.infoModel[fileAttribute][0] = swipData;
  2972. }
  2973. // 改变步骤条状态
  2974. if (that.infoModel[fileAttribute].length > 0) {
  2975. that.steps.stepsNow[that.steps.current].status = "finish"
  2976. } else {
  2977. that.steps.stepsNow[that.steps.current].status = "wait"
  2978. }
  2979. }
  2980. })
  2981. }
  2982. },
  2983. /**文件格式限制*/
  2984. importBeforeUpload(file) {
  2985. var fileType = file.type;
  2986. if (fileType === 'image') {
  2987. if (fileType.indexOf('image') < 0) {
  2988. this.$message.warning('请上传图片');
  2989. return false;
  2990. }
  2991. } else if (fileType === 'file') {
  2992. if (fileType.indexOf('image') >= 0) {
  2993. this.$message.warning('请上传文件');
  2994. return false;
  2995. }
  2996. }
  2997. return true
  2998. },
  2999. /**文件上传成功后回调*/
  3000. importHandleChange(info) {
  3001. },
  3002. dataListToStr(data){
  3003. if (data.contractDate!==null && data.contractDate!==undefined){
  3004. data.contractDate=JSON.stringify(data.contractDate);
  3005. }
  3006. if (data.businessLicenseDate!==null&& data.businessLicenseDate!==undefined){
  3007. data.businessLicenseDate=JSON.stringify(data.businessLicenseDate);
  3008. }
  3009. if (data.codeNumberDate!==null && data.codeNumberDate!==undefined){
  3010. data.codeNumberDate=JSON.stringify(data.codeNumberDate);
  3011. }
  3012. if (data.filingsDate!==null && data.filingsDate!==undefined){
  3013. data.filingsDate=JSON.stringify(data.filingsDate);
  3014. }
  3015. if (data.permitDate!==null && data.permitDate!==undefined){
  3016. data.permitDate=JSON.stringify(data.permitDate);
  3017. }
  3018. if (data.corporationCard!==null && data.corporationCard!==undefined){
  3019. data.corporationCard=JSON.stringify(data.corporationCard);
  3020. }
  3021. if (data.personResponsible!==null && data.personResponsible!==undefined){
  3022. data.personResponsible=JSON.stringify(data.personResponsible);
  3023. }
  3024. if (data.operatorCard!==null && data.operatorCard!==undefined){
  3025. data.operatorCard=JSON.stringify(data.operatorCard);
  3026. }
  3027. if (data.operatorCardPhone!==null && data.operatorCardPhone!==undefined){
  3028. data.operatorCardPhone=JSON.stringify(data.operatorCardPhone);
  3029. }
  3030. if (data.devicePhone!==null && data.devicePhone!==undefined){
  3031. data.devicePhone=JSON.stringify(data.devicePhone);
  3032. }
  3033. if (data.textMessage!==null && data.textMessage!==undefined){
  3034. data.textMessage=JSON.stringify(data.textMessage);
  3035. }
  3036. if (data.textMessageBook!==null && data.textMessageBook!==undefined){
  3037. data.textMessageBook=JSON.stringify(data.textMessageBook);
  3038. }
  3039. if (data.secureBook!==null && data.secureBook!==undefined){
  3040. data.secureBook=JSON.stringify(data.secureBook);
  3041. }
  3042. if (data.special!==null && data.special!==undefined){
  3043. data.special=JSON.stringify(data.special);
  3044. }
  3045. if (data.networkAccess!==null && data.networkAccess!==undefined){
  3046. data.networkAccess=JSON.stringify(data.networkAccess);
  3047. }
  3048. if (data.groupPriceApproval!==null && data.groupPriceApproval!==undefined){
  3049. data.groupPriceApproval=JSON.stringify(data.groupPriceApproval);
  3050. }
  3051. return data;
  3052. },
  3053. /**暂存*/
  3054. addIsStaging() {
  3055. this.uploading = true;
  3056. var that = this;
  3057. var data=that.infoModel ;
  3058. //data =this.dataListToStr(data);
  3059. postAction("/smsCheck/customerData/addIsStaging", data).then((res) => {
  3060. if (res.success) {
  3061. this.uploading = false;
  3062. this.$message.success("提交成功", 3);
  3063. this.addIng == true
  3064. // this.$router.push({path: '/sms/check/task/check', query: {id: data.taskId}});
  3065. this.closeCurrent();
  3066. } else {
  3067. this.uploading = false;
  3068. if ( res.message !==null){
  3069. this.$message.error( res.message);
  3070. }else {
  3071. this.$message.error("提交失败");
  3072. }
  3073. }
  3074. }).finally(() => {
  3075. this.uploading = false;
  3076. })
  3077. },
  3078. /*提交*/
  3079. submitAuditLot() {
  3080. this.uploading = true;
  3081. var info = "yes";
  3082. this.$refs.form.validate(valid => {
  3083. // 验证通过
  3084. if (!valid) {
  3085. info = "infoNo";
  3086. this.uploading = false;
  3087. }}
  3088. )
  3089. var text= "";
  3090. for (var i in this.steps.stepsNow) {
  3091. if (this.steps.stepsNow[i].status !== "finish") {
  3092. // text+= '111<br/> ';
  3093. var str=this.steps.stepsNow[i].title;
  3094. text+= str+"资料或备注都未上传!!!"+'<br/><br/>';
  3095. //this.$message.warn( this.steps.stepsNow[i].title +"资料或备注都未上传!!!");
  3096. info="no";
  3097. }
  3098. }
  3099. if (this.infoModel.isCsp==='1'){
  3100. if ((this.infoModel.permitDateDate==="" ||this.infoModel.permitDateDate===null
  3101. ) && (this.infoModel.permitDateDateIs==="" ||this.infoModel.permitDateDateIs===null ||this.infoModel.permitDateDateIs==='0') ){
  3102. info="no";
  3103. this.$message.warn( "增值业务许可证到期时间未填写!!!");
  3104. }
  3105. }
  3106. var stringToHTML = function (str) {
  3107. var dom = document.createElement('div');
  3108. dom.innerHTML = str;
  3109. return dom;
  3110. };
  3111. console.log(stringToHTML('<h1>Hello world!</h1><p>How are you today?</p>'));
  3112. if (info==="no"){
  3113. this.$warning({
  3114. title: '提示',
  3115. dangerouslyUseHTMLString: true,
  3116. content:(h) => {
  3117. return h('div', {
  3118. domProps: {
  3119. innerHTML: text
  3120. },
  3121. }, []);
  3122. }
  3123. })
  3124. return
  3125. }
  3126. if (info==="infoNo"){
  3127. this.$warning({
  3128. title: '提示',
  3129. dangerouslyUseHTMLString: true,
  3130. content:(h) => {
  3131. return h('div', {
  3132. domProps: {
  3133. innerHTML: "基本信息校验未通过!!!"
  3134. },
  3135. }, []);
  3136. }
  3137. })
  3138. return
  3139. }
  3140. var that = this;
  3141. var data=that.infoModel ;
  3142. //data =this.dataListToStr(data);
  3143. postAction("/smsCheck/customerData/add", data).then((res) => {
  3144. if (res.success) {
  3145. this.uploading = false;
  3146. this.$message.success("提交成功", 3);
  3147. this.addIng == true
  3148. // this.$router.push({path: '/sms/check/task/check', query: {id: data.taskId}});
  3149. this.closeCurrent();
  3150. } else {
  3151. this.uploading = false;
  3152. if ( res.message !==null){
  3153. this.$message.error( res.message);
  3154. }else {
  3155. this.$message.error("提交失败");
  3156. }
  3157. }
  3158. }).finally(() => {
  3159. this.uploading = false;
  3160. })
  3161. },
  3162. HTMLEncode(str) {
  3163. var stringToHTML = function (str) {
  3164. var dom = document.createElement('div');
  3165. dom.innerHTML = str;
  3166. return dom;
  3167. };
  3168. console.log(stringToHTML('<h1>Hello world!</h1><p>How are you today?</p >'));
  3169. },
  3170. /**步骤条点击事件*/
  3171. stepsClick(current) {
  3172. this.steps.current = current;
  3173. this.steps.currentId = this.steps.stepsNow[current].id
  3174. for (var i in this.steps.stepsNow) {
  3175. if (this.steps.stepsNow[i].status != "finish") {
  3176. this.steps.stepsNow[i].status = "wait"
  3177. }
  3178. if (this.steps.stepsNow[i].status === "finish") {
  3179. this.steps.stepsNow[i].status === "finish"
  3180. }
  3181. }
  3182. if (this.steps.stepsNow[current].status!== "finish") {
  3183. this.steps.stepsNow[current].status = "process"
  3184. }
  3185. this.showPhone(false,false);
  3186. },
  3187. /**返回上一级*/
  3188. back() {
  3189. this.$router.go(-1);
  3190. //关闭当前页
  3191. this.closeCurrent();
  3192. },
  3193. /**获取客户信息*/
  3194. getInfoDataById(id,resultA) {
  3195. var that = this;
  3196. if (id) {
  3197. var data = {
  3198. "id": id,
  3199. }
  3200. getAction(this.url.getInfoDataById, data).then((res) => {
  3201. if (res.success) {
  3202. let result = res.result;
  3203. //用户状态
  3204. that.infoModel.userState =result.userState;
  3205. //用户发展员工
  3206. that.infoModel.staffNo =result.staffNo;
  3207. that.infoModel.customerNo =result.customerNo;
  3208. that.infoModel.userNo =result.userNo;
  3209. that.infoModel.networkAccessTime =result.networkAccessTime;
  3210. that.infoModel.staffName =result.staffName;
  3211. that.notes =result.notes;
  3212. this.showPhone();
  3213. }
  3214. })
  3215. }
  3216. if (resultA!==undefined){
  3217. resultA.userState=that.infoModel.userState
  3218. }
  3219. return resultA
  3220. },
  3221. /**获取客户信息*/
  3222. getInfoDataByInfoId(infoId) {
  3223. var that = this;
  3224. if (infoId) {
  3225. var data = {
  3226. "infoId": infoId,
  3227. }
  3228. getAction(this.url.getInfoDataByInfoId, data).then((res) => {
  3229. if (res.success) {
  3230. let result = res.result;
  3231. result=this.getInfoDataById(infoId,result)
  3232. that.infoModel=result;
  3233. that.infoModel.contractDate= JSON.parse(result.contractDate);
  3234. that.infoModel.businessLicenseDate= JSON.parse(result.businessLicenseDate);
  3235. that.infoModel.codeNumberDate= JSON.parse(result.codeNumberDate);
  3236. that.infoModel.filingsDate= JSON.parse(result.filingsDate);
  3237. that.infoModel.permitDate= JSON.parse(result.permitDate);
  3238. that.infoModel.corporationCard= JSON.parse(result.corporationCard);
  3239. that.infoModel.personResponsible= JSON.parse(result.personResponsible);
  3240. that.infoModel.operatorCard= JSON.parse(result.operatorCard);
  3241. that.infoModel.operatorCardPhone= JSON.parse(result.operatorCardPhone);
  3242. that.infoModel.devicePhone= JSON.parse(result.devicePhone);
  3243. that.infoModel.textMessage= JSON.parse(result.textMessage);
  3244. that.infoModel.textMessageBook= JSON.parse(result.textMessageBook);
  3245. that.infoModel.secureBook= JSON.parse(result.secureBook);
  3246. that.infoModel.special= JSON.parse(result.special);
  3247. that.infoModel.networkAccess= JSON.parse(result.networkAccess);
  3248. that.infoModel.groupPriceApproval= JSON.parse(result.groupPriceApproval);
  3249. // that.infoModel.contractDate=
  3250. // [{
  3251. // "id":4,
  3252. // "urlBase":"http://223.223.177.220:8012/onlinePreview?url=aHR0cDovLzIyMy4yMjMuMTc3LjIyMDo5MDAxL2RlZmF1bHQv5oiq5bGPMjAyMy0xMC0yMzExLjA0LjA3XzE2OTgwMzAyNjAyMzkucG5n",
  3253. // "url":"http://223.223.177.220:9001/default/截屏2023-10-2311.04.07_1698030260239.png",
  3254. // "fileName":"截屏2023-10-23 11.04.07.png"
  3255. // }]
  3256. for (var i in that.steps.stepsNow) {
  3257. for (var j in result[that.steps.stepsNow[i].id]){
  3258. if (result[that.steps.stepsNow[i].id][0].urlBase!==undefined){
  3259. that.steps.stepsNow[i].status = "finish"
  3260. }
  3261. if (result[that.steps.stepsNow[i].id+'Remark'][0]!==undefined){
  3262. that.steps.stepsNow[i].status = "finish"
  3263. }
  3264. }
  3265. }
  3266. }
  3267. })
  3268. }
  3269. }
  3270. }
  3271. }
  3272. </script>
  3273. <style lang="less">
  3274. .ant-input[disabled] {
  3275. color: #1e80ff;
  3276. background-color: #f5f5f5;
  3277. cursor: not-allowed;
  3278. opacity: 1;
  3279. }
  3280. .ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked {
  3281. color: #fff;
  3282. background-color: #1e80ff;
  3283. border-color: #d9d9d9;
  3284. box-shadow: none;
  3285. }
  3286. </style>
  3287. <style lang="less">
  3288. #common-video {
  3289. position: relative;
  3290. .video-box {
  3291. box-sizing: border-box;
  3292. border: 0;
  3293. display: block;
  3294. width: 470px;
  3295. height: 500px;
  3296. outline: none !important;
  3297. }
  3298. .isShow {
  3299. //进度条
  3300. video::-webkit-media-controls-timeline {
  3301. display: none;
  3302. }
  3303. }
  3304. video::-webkit-media-controls-play-button {
  3305. visibility: hidden;
  3306. }
  3307. .operate-btn {
  3308. display: block;
  3309. width: 60px;
  3310. height: 60px;
  3311. position: absolute;
  3312. top: calc(50% - 30px);
  3313. left: calc(50% - 30px);
  3314. }
  3315. .operate-btn:hover {
  3316. opacity: 0.8;
  3317. }
  3318. .fade-out {
  3319. opacity: 0;
  3320. }
  3321. }
  3322. .thumb-example {
  3323. width: 921px;
  3324. margin-top: 20px;
  3325. left: 6%;
  3326. // background: #000;
  3327. }
  3328. .thumb-example1 {
  3329. width: 1200px;
  3330. margin-top: 20px;
  3331. // background: #000;
  3332. }
  3333. .swiper-slide {
  3334. background-size: cover;
  3335. background-position: center;
  3336. }
  3337. .gallery-top {
  3338. // height: 80% !important;
  3339. /*height: 600px;*/
  3340. width: 100%;
  3341. left: 10%;
  3342. margin-bottom: 30px
  3343. }
  3344. .gallery-top1 {
  3345. // height: 80% !important;
  3346. /*height: 600px;*/
  3347. width: 100%;
  3348. left: 10%;
  3349. margin-bottom: -40px
  3350. }
  3351. .gallery-thumbs {
  3352. height: 20% !important;
  3353. box-sizing: border-box;
  3354. padding: 10px 0px;
  3355. width: 948px;
  3356. margin-left: 2px;
  3357. .swiper-button-next {
  3358. right: 0px;
  3359. }
  3360. .swiper-button-prev {
  3361. left: 0px;
  3362. }
  3363. .swiper-button-next,
  3364. .swiper-button-prev {
  3365. width: 45px;
  3366. text-align: center;
  3367. height: 101px;
  3368. top: 26%;
  3369. div {
  3370. margin-top: 30px;
  3371. background: rgb(207, 205, 205);
  3372. height: 45px;
  3373. border-radius: 50%;
  3374. img {
  3375. margin: 7px 0 0 2px;
  3376. width: 30px;
  3377. }
  3378. }
  3379. }
  3380. .swiper-button-next:hover div {
  3381. background: rgb(189, 186, 186);
  3382. }
  3383. .swiper-button-prev:hover div {
  3384. background: rgb(189, 186, 186);
  3385. }
  3386. }
  3387. .gallery-thumbs .swiper-slide {
  3388. width: 20%;
  3389. height: 80px;
  3390. // opacity: 0.4;
  3391. }
  3392. .gallery-thumbs .swiper-slide-active {
  3393. border: 2px solid red;
  3394. }
  3395. .markdown ul > li {
  3396. color: #000000d9;
  3397. font-size: 15px;
  3398. line-height: 3;
  3399. margin-left: 20px;
  3400. padding-left: 4px;
  3401. list-style-type: circle;
  3402. }
  3403. .float-info{
  3404. box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1);
  3405. transition: all 0.3s;
  3406. position: fixed;
  3407. bottom: 50px;
  3408. right: 30px;
  3409. width: 55px;
  3410. height: 55px;
  3411. display: flex;
  3412. flex-flow: column;
  3413. justify-content: center;
  3414. align-items: center;
  3415. z-index: 999;
  3416. background: #1890FF;
  3417. border-radius: 50%;
  3418. cursor: pointer;
  3419. }
  3420. .float-infoPhone{
  3421. margin-bottom:10px;
  3422. float: left;
  3423. right: 11%;
  3424. box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1);
  3425. transition: all 0.3s;
  3426. position: fixed;
  3427. bottom:3%;
  3428. display: flex;
  3429. flex-flow: column;
  3430. justify-content: center;
  3431. align-items: center;
  3432. z-index: 999;
  3433. //background: #b3d4fc;
  3434. cursor: pointer;
  3435. }
  3436. .floating-button {
  3437. position: fixed;
  3438. bottom: 20px;
  3439. right: 20px;
  3440. z-index: 1000;
  3441. border-radius: 50%;
  3442. color: #fff;
  3443. font-size: 24px;
  3444. width: 50px;
  3445. height: 50px;
  3446. text-align: center;
  3447. line-height: 50px;
  3448. transition: all 0.2s ease;
  3449. box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  3450. cursor: pointer;
  3451. }
  3452. .floating-button:hover {
  3453. box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
  3454. transform: translateY(-5px);
  3455. }
  3456. .floating-button:active {
  3457. box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  3458. transform: translateY(2px);
  3459. }
  3460. </style>