| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947 |
- <template>
- <div :spinning="addIng">
- <!-- <div slot="title">
- <span style="float: left;position: relative;top: 4px">入网信息登记</span>
- </div>-->
- <!-- 步骤条-->
- <a-card style="margin-bottom:10px">
- <!-- v-model:current="current"-->
- <a-steps :current="current" size="default">
- <a-step v-for="item in steps" :key="item.title" :title="item.title"/>
- </a-steps>
- </a-card>
- <!--身份信息-->
- <a-card style="margin-bottom:10px" v-if="current==0">
- <div>
- <a-form-model
- ref="form"
- :label-col="labelCol"
- :wrapper-col="wrapperCol"
- :model="model"
- :rules="rules"
- >
- <div>
- <a-button type="link" @click="keyupInfoSelect()">身份证件号码检索</a-button>
- <a-row>
- <a-col :span="6">
- <a-form-model-item required label="身份证件号码" prop="cardNo" :labelCol="{ span:8 }" :wrapperCol="{ span: 14 }" >
- <!-- <a-radio-group v-model="model.cardNo" button-style="solid" slot-scope="text, record">-->
- <a-input v-model="model.cardNo" placeholder="请输入身份证件号码" @keyup="keyupInfo()" ></a-input>
- <!-- </a-radio-group>--><a-icon slot="prefix" type="user" :style="{ color: 'rgba(0,0,0,.25)' }"/>
- </a-form-model-item>
- </a-col>
- <a-col :span="6">
- <a-form-model-item label="身份证姓名" :labelCol="{ span:8 }" :wrapperCol="{ span: 14 }" prop="cardName" >
- <!-- <a-radio-group v-model="model.cardName" button-style="solid" prop="cardNo">-->
- <a-input v-model="model.cardName" placeholder="身份证姓名" ></a-input>
- <!-- </a-radio-group>-->
- </a-form-model-item>
- </a-col>
- <!-- <a-col :span="8" >-->
- <!-- <a-form-item label="证件期限(开始日期)" v-bind="labelCol2" prop="cardStartTime">-->
- <!-- <j-date :show-time="true" prop="cardStartTime" date-format="YYYY-MM-DD" placeholder="请选择开始时间" class="query-group-cust" v-model="model.cardStartTime"></j-date>-->
- <!-- </a-form-item>-->
- <!-- </a-col>-->
- <a-col :span="12" prop="cardDate">
- <a-form-item label="身份证证件有效期" :labelCol="{ span:6 }" :wrapperCol="{ span: 16 }" prop="cardDate">
- <j-date :show-time="true" date-format="YYYY-MM-DD" placeholder="请选择开始时间" class="query-group-cust"
- v-model="model.cardStartTime" prop="cardDate"></j-date>
- <span class="query-group-split-cust"></span>
- <j-date :show-time="true" date-format="YYYY-MM-DD" placeholder="请选择结束时间" class="query-group-cust"
- v-model="model.cardEndTime" prop="cardDate"></j-date>
- </a-form-item>
- </a-col>
- </a-row>
- </div>
- </a-form-model>
- </div>
- </a-card>
- <!-- 入网信息登记表单-->
- <a-card style="margin-bottom:10px" v-if="current==0">
- <div>
- <a-form-model
- ref="form"
- :label-col="labelCol"
- :wrapper-col="wrapperCol"
- :model="model"
- :rules="rules"
- >
- <div>
- <!-- <a-divider orientation="left">填写营业厅入网提示卡-->
- <!-- </a-divider>-->
- <a-row>
- <a-col :span="7">
- <a-form-model-item label="拨测联系电话" :labelCol="{ span:8 }" :wrapperCol="{ span: 12 }" prop="modelPhone">
- <!-- <a-radio-group v-model="model.phone" button-style="solid">-->
- <a-input v-model="model.phone" placeholder="请输入拨测联系电话"
- @keyup="keyupInfoPhone(model.phone)"></a-input>
- <!-- </a-radio-group>-->
- </a-form-model-item>
- </a-col>
- <a-col :span="7">
- <a-form-model-item label="联电归属地" prop="modelAddress" :labelCol="{ span:8 }" :wrapperCol="{ span: 12 }">
- <!-- <a-radio-group v-model="model.address" button-style="solid">-->
- <a-input v-model="model.address" placeholder="请输入联电归属地"></a-input>
- <!-- </a-radio-group>-->
- </a-form-model-item>
- </a-col>
- <!-- <a-col :span="8">-->
- <!-- <a-form-model-item label="现用号码使用年限" prop="userOpenState" v-bind="labelCol2">-->
- <!-- <a-radio-group v-model="model.useLife" button-style="solid">-->
- <!-- <a-input v-model="model.useLife" placeholder="请输入使用年限"></a-input>-->
- <!-- </a-radio-group>-->
- <!-- </a-form-model-item>-->
- <!-- </a-col>-->
- <!-- <a-col :span="8">-->
- <!-- <a-form-model-item label="运营商类型" prop="userOpenState" v-bind="labelCol2">-->
- <!-- <a-radio-group v-model="model.phonePurpose" button-style="solid">-->
- <!-- <a-input v-model="model.phonePurpose" placeholder="请输入运营商类型"></a-input>-->
- <!-- </a-radio-group>-->
- <!-- </a-form-model-item>-->
- <!-- </a-col>-->
- <a-col :span="10">
- <a-form-model-item label="运营商类型" v-bind="labelCol2" prop="operatorType">
- <a-radio-group v-model="model.operatorType" button-style="solid">
- <a-radio value="1">移动</a-radio>
- <span v-if="this.model.yidong>5 " style="color: red">[{{ this.model.yidong }}]</span><span
- v-if="this.model.yidong<5 " style="color: green">[{{ this.model.yidong }}]</span>
- <a-radio value="2">联通</a-radio>
- <span v-if="this.model.liantong>5 " style="color: red">[{{ this.model.liantong }}]</span><span
- v-if="this.model.liantong<5 " style="color: green">[{{ this.model.liantong }}]</span>
- <a-radio value="3">电信</a-radio>
- <span v-if="this.model.dianxin>5 " style="color: red">[{{ this.model.dianxin }}]</span><span
- v-if="this.model.dianxin<5 " style="color: green">[{{ this.model.dianxin }}]</span>
- <a-radio value="4">其他</a-radio>
- <span v-if="this.model.qita>5 " style="color: red">[{{ this.model.qita }}]</span><span
- v-if="this.model.qita<5 " style="color: green">[{{ this.model.qita }}]</span>
- </a-radio-group>
- </a-form-model-item>
- </a-col>
- </a-row>
- <a-row>
- <a-col :span="7">
- <a-form-model-item label="新办号码用途" prop="phonePurpose" :labelCol="{ span:8 }" :wrapperCol="{ span: 12 }">
- <!-- <a-radio-group v-model="model.phonePurpose" button-style="solid">-->
- <a-input v-model="model.phonePurpose" placeholder="请输入用途"></a-input>
- <!-- </a-radio-group>-->
- </a-form-model-item>
- </a-col>
- <a-col :span="7">
- <a-form-item label="客户所属行业" prop="industry" :labelCol="{ span:8 }" :wrapperCol="{ span: 12 }">
- <j-dict-select-tag placeholder="请选择客户所属行业" v-model="model.industry" dictCode="custom_industry" />
- </a-form-item>
- </a-col>
- <a-col :span="8">
- <a-form-model-item label="客户现用号码" prop="modelOperator" :labelCol="{ span:9 }"
- :wrapperCol="{ span: 15 }">
- <a-radio-group v-model="model.operator" button-style="solid">
- <a-radio value="1">本地运营商</a-radio>
- <a-radio value="2">异地运营商</a-radio>
- </a-radio-group>
- </a-form-model-item>
- </a-col>
- </a-row>
- <a-row>
- </a-row>
- <a-row>
- <a-col :span="15">
- <a-form-model-item label="拨测结果" prop="calltestResultsName" :labelCol="{ span: 3 }" :wrapperCol="{ span: 15 }">
- <a-radio-group v-model="model.calltestResults" button-style="solid">
- <a-radio value="1">关机</a-radio>
- <a-radio value="2">未接通</a-radio>
- <a-radio value="3">可接通不知晓入网事宜</a-radio>
- <a-radio value="4">可接通认可办理</a-radio>
- </a-radio-group>
- <a-button type="link" style="color: red" v-if="this.model.calltestResults==='1' ">拨测号码关机!</a-button>
- </a-form-model-item>
- </a-col>
- </a-row>
- </div>
- </a-form-model>
- </div>
- </a-card>
- <a-card style="margin-bottom:10px" v-if="current==1">
- <div>
- <a-form-model
- ref="form"
- :label-col="labelCol"
- :wrapper-col="wrapperCol"
- :model="model"
- :rules="rules"
- >
- <div style="overflow: auto">
- <a-list size="large" bordered>
- <template>
- <a-list-item class="box">
- <a-col :span="12" >
- <div>
- <div style="float:left;margin: 20px 3px;"><div class="redInfo" >*</div>1、客户名下无电信号码</div>
- <div style="float:right;margin: 20px 10px;" >
- <a-radio-group v-model="model.isDxNumber" button-style="solid">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="2">否</a-radio>
- </a-radio-group>
- </div>
- </div>
- </a-col>
- <a-col :span="12">
- <div style="clear: both"></div>
- <a-input v-model="model.isDxNumberNote" placeholder="请输入排查结果备注信息" style="margin: 3px 3px;width: 400px;float: right"></a-input>
- </a-col>
- </a-list-item>
- <a-list-item class="box">
- <a-col :span="12">
- <div>
- <div style="float:left;margin: 20px 3px;"><div class="redInfo" >*</div>2、申请号码办理征信类、融合宽带业务</div>
- <div style="float:right;margin: 20px 10px;" >
- <a-radio-group v-model="model.isBroadband" button-style="solid">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="2">否</a-radio>
- </a-radio-group>
- </div>
- </div>
- </a-col>
- <a-col :span="12">
- <div style="clear: both"></div>
- <a-input v-model="model.isBroadbandNote" placeholder="请输入排查结果备注信息" style="margin: 3px 3px;width: 400px;float: right"></a-input>
- </a-col>
- </a-list-item>
- <a-list-item class="box">
- <a-col span="12">
- <div>
- <div style="float:left;margin: 20px 3px;"><div class="redInfo" >*</div>3、 申请号码使用用途异常</div>
- <div style="float:right;margin: 20px 10px;" >
- <a-radio-group v-model="model.isUseTo" button-style="solid">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="2">否</a-radio>
- </a-radio-group>
- </div>
- </div>
- </a-col>
- <a-col :span="12">
- <div style="clear: both"></div>
- <a-input v-model="model.isUseToNote" placeholder="请输入排查结果备注信息" style="margin: 3px 3px;width: 400px;float: right"></a-input>
- </a-col>
- </a-list-item>
- <a-list-item class="box">
- <a-col :span="12">
- <div>
- <div style="float:left;margin: 20px 3px;"><div class="redInfo" >*</div>4、客户名下号码存在异常高频率充值、退费</div>
- <div style="float:right;margin: 20px 10px;" >
- <a-radio-group v-model="model.isRefund" button-style="solid">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="2">否</a-radio>
- </a-radio-group>
- </div>
- </div>
- </a-col>
- <a-col :span="12">
- <div style="clear: both"></div>
- <a-input v-model="model.isRefundNote" placeholder="请输入排查结果备注信息" style="margin: 3px 3px;width: 400px;float: right"></a-input>
- </a-col>
- </a-list-item>
- <a-list-item class="box">
- <a-col span="12">
- <div>
- <div style="float:left;margin: 20px 3px;"><div class="redInfo" >*</div>5、客户名下已有号码(含已注销号码)存在各类关停</div>
- <div style="float:right;margin: 20px 10px;" >
- <a-radio-group v-model="model.isShutDown" button-style="solid">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="2">否</a-radio>
- </a-radio-group>
- </div>
- </div>
- </a-col>
- <a-col :span="12">
- <div style="clear: both"></div>
- <a-input v-model="model.isShutDownNote" placeholder="请输入排查结果备注信息" style="margin: 3px 3px;width: 400px;float: right"></a-input>
- </a-col>
- </a-list-item>
- <a-list-item class="box">
- <a-col span="12">
- <div>
- <div style="float:left;margin: 20px 3px;"><div class="redInfo" >*</div>6、客户名下在用号码无使用记录,仍要求新办号码</div>
- <div style="float:right;margin: 20px 10px;" >
- <a-radio-group v-model="model.isNewly" button-style="solid">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="2">否</a-radio>
- </a-radio-group>
- </div>
- </div>
- </a-col>
- <a-col :span="12">
- <div style="clear: both"></div>
- <a-input v-model="model.isNewlyNote" placeholder="请输入排查结果备注信息" style="margin: 3px 3px;width: 400px;float: right"></a-input>
- </a-col>
- </a-list-item>
- <a-list-item class="box">
- <a-col span="12">
- <div>
- <div style="float:left;margin: 20px 3px;"><div class="redInfo" >*</div>7、在多个渠道多频次入网的异常情况</div>
- <div style="float:right;margin: 20px 10px;" >
- <a-radio-group v-model="model.isChannel" button-style="solid">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="2">否</a-radio>
- </a-radio-group>
- </div>
- </div>
- </a-col>
- <a-col :span="12">
- <div style="clear: both"></div>
- <a-input v-model="model.isChannelNote" placeholder="请输入排查结果备注信息" style="margin: 3px 3px;width: 400px;float: right"></a-input>
- </a-col>
- </a-list-item>
- <a-list-item class="box">
- <a-col span="12">
- <div>
- <div style="float:left;margin: 20px 3px;"><div class="redInfo" >*</div>8、黑名单到期客户新入网的高危疑似涉诈号码</div>
- <div style="float:right;margin: 20px 10px;" >
- <a-radio-group v-model="model.isInvolvingFraud" button-style="solid">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="2">否</a-radio>
- </a-radio-group>
- </div>
- </div>
- </a-col>
- <a-col :span="12">
- <div style="clear: both"></div>
- <a-input v-model="model.isInvolvingFraudNote" placeholder="请输入排查结果备注信息" style="margin: 3px 3px;width: 400px;float: right"></a-input>
- </a-col>
- </a-list-item>
- </template>
- </a-list>
- </div>
- </a-form-model>
- </div>
- </a-card>
- <a-card style="margin-bottom:10px" v-if="current==2 && !this.showInfo">
- <div>
- <a-form-model
- ref="form"
- :label-col="labelCol"
- :wrapper-col="wrapperCol"
- :model="model"
- :rules="rules"
- >
- <div>
- <a-list size="large" bordered>
- <a-list-item>
- <a-col :span="14">
- <a-form-model-item label="新办手机号码" :labelCol="{ span:7 }" :wrapperCol="{ span: 8 }" prop="modelPhone">
- <!-- <a-radio-group v-model="model.newPhone" button-style="solid">-->
- <a-input v-model="model.newPhone" placeholder="新办手机号码"></a-input>
- <!-- </a-radio-group>-->
- </a-form-model-item>
- </a-col>
- </a-list-item>
- <a-list-item>
- <a-col :span="16">
- <a-form-model-item label="是否将高危号码上报蓝、紫名单或不可复开关停" v-bind="labelCol1ProMaxPlus" prop="modelPhone">
- <a-checkbox-group v-model="model.numberResults" style="width: 100%">
- <a-row>
- <template v-for="(des) in this.optionsWithDisabled">
- <a-col :span="8">
- <a-checkbox :value="des.value">{{ des.text }}</a-checkbox>
- </a-col>
- </template>
- </a-row>
- </a-checkbox-group>
- </a-form-model-item>
- </a-col>
- </a-list-item>
- </a-list>
- </div>
- </a-form-model>
- </div>
- </a-card>
- <a-card style="margin-bottom:10px" v-if="current==2 && this.showInfo ">
- <div>
- <a-form-model
- ref="form"
- :label-col="labelCol"
- :wrapper-col="wrapperCol"
- :model="model"
- :rules="rules"
- >
- <div id="showInfo">
- <a-col :span="24">
- <div>身份证件号码 : 【 {{ this.model.cardNo }} 】 身份证姓名:【 {{ this.model.cardName }} 】 身份证证件有效期【
- {{ this.model.cardStartTime }}~{{ this.model.cardEndTime }}】
- </div>
- <div>拨测联系电话: 【 {{ this.model.phone }} 】 拨测结果: 【 {{ this.calltestResultsName }}】</div>
- <div>营业厅地址: 【 {{ this.companyName }}--{{ this.hallName }} 】 工作地址:
- 【{{ this.model.wordAddress }}】现住地址(到村/小区) 【{{ this.model.currentAddress }}】
- </div>
- </a-col>
- <a-col :span="24" style="margin-top: 30px">
- <div v-for="value in newDatas" style="color: red">
- {{ value }}
- </div>
- </a-col>
- </div>
- </a-form-model>
- </div>
- </a-card>
- <!--附加信息-->
- <a-card style="margin-bottom:10px" v-show="current==0">
- <div>
- <a-form-model
- ref="form"
- :label-col="labelCol"
- :wrapper-col="wrapperCol"
- :model="model"
- :rules="rules"
- >
- <div>
- <!-- <a-divider orientation="left">附加信息-->
- <!-- </a-divider>-->
- <a-row>
- <a-col :span="12">
- <a-row>
- <a-col>
- <a-form-model-item label="营业厅地址" prop="sysBusinessHallAndSysCompany" v-bind="labelCol2">
- <a-col :span="10">
- <a-select placeholder="请选择分公司" v-model="model.company">
- <a-select-option v-for="(item,index) in sysCompany" :key="item.id" :value="item.id"
- @click="change(item.id)">{{ item.name }}
- </a-select-option>
- </a-select>
- </a-col>
- <a-col :span="10">
- <a-select placeholder="请选择营业厅地址" v-model="model.sysBusinessHall">
- <a-select-option v-for="item in sysBusinessHallList" :key="item.id" :value="item.id"
- @click="searchKeyWordsysBusinessHall('中国电信'+item.name,'businessAddress')">
- {{ item.name }}
- </a-select-option>
- </a-select>
- </a-col>
- <!-- <a-radio-group v-model="model.businessAddress" button-style="solid">-->
- <!-- <a-input v-model="model.businessAddress" placeholder="请输入营业厅地址" @keyup="searchKeyWord('model.businessAddress')" ></a-input>-->
- <!-- <div class="map_search_result" v-show="this.showsearchResultBusinessAddress" >-->
- <!-- <ul>-->
- <!-- <li click="markerResult(item,'businessAddress')" v-for="(item,index) in poiList" :key="index">{{item.name}}</li>-->
- <!-- </ul>-->
- <!-- </div>-->
- <!-- </a-radio-group>-->
- </a-form-model-item>
- </a-col>
- </a-row>
- <a-row>
- <a-col>
- <a-form-model-item label="工作地址" prop="workAddress" :labelCol="{ span:7}" :wrapperCol="{ span: 7}">
- <!-- <a-radio-group v-model="model.wordAddress" button-style="solid">-->
- <a-input v-model="model.wordAddress" placeholder="请输入工作地址"
- @keyup="searchKeyWord('model.wordAddress')"></a-input>
- <div class="map_search_result" v-show="this.showsearchResult">
- <ul style=" border-radius: 5px ;border: 0.5px solid #f1f1f1;padding: 0px; background-color: #f1f1f1;">
- <li style=" border-radius: 5px;list-style: none;border: 0px solid;padding: 0px; " @click="markerResult(item,'wordAddress')" v-for="(item,index) in poiList" :key="index">
- {{ item.name }}
- </li>
- </ul>
- </div>
- <!-- </a-radio-group>-->
- </a-form-model-item>
- </a-col>
- </a-row>
- <a-row>
- <a-col>
- <a-form-model-item label="现住地址(到村/小区)" prop="currentAddress" :labelCol="{ span:7}" :wrapperCol="{ span: 7}">
- <!-- <a-radio-group v-model="model.currentAddress" button-style="solid">-->
- <a-input v-model="model.currentAddress" placeholder="请输入现住地址"
- @keyup="searchKeyWord('model.currentAddress')"></a-input>
- <div class="map_search_result" v-show="this.showsearchcurrentAddress">
- <ul style=" border-radius: 5px ;border: 0.5px solid #f1f1f1;padding: 0px; background-color: #f1f1f1;">
- <li style=" border-radius: 5px;list-style: none;border: 0px solid;padding: 0px; "@click="markerResult(item,'currentAddress')" v-for="(item,index) in poiList"
- :key="index">{{ item.name }}
- </li>
- </ul>
- </div>
- <!-- </a-radio-group>-->
- </a-form-model-item>
- </a-col>
- </a-row>
- <a-row>
- <a-col :span="24">
- <a-form-model-item label="" prop="userOpenState" v-bind="labelCol2" :labelCol="{span:3}"
- :wrapperCol="{span:24}">
- <a-radio-group v-model="model.judgmentResearch" button-style="solid">
- <a-radio value="1" style="color: red ;margin-left: 30px">智能判研-异常</a-radio>
- <a-radio value="4">智能判研-正常</a-radio>
- <a-radio value="3" style="color: red">人工判研-异常</a-radio>
- <a-radio value="2">人工判研-正常</a-radio>
- </a-radio-group>
- </a-form-model-item>
- </a-col>
- </a-row>
- </a-col>
- <a-col :span="9">
- <div>
- <div id="container" :style="{width: '600px', height: '300px'}"></div>
- </div>
- </a-col>
- </a-row>
- </div>
- </a-form-model>
- </div>
- </a-card>
- <a-card style="position: relative;bottom: 0;width: 100%">
- <div style="text-align: center">
- <a-button v-if="current < steps.length - 1 && !this.showInfo" type="primary" @click="nextSteps">下一步</a-button>
- <a-button
- v-if="current == steps.length - 1 && !this.showInfo"
- @click="submitBusiness"
- type="primary"
- >
- 提交
- </a-button>
- <a-button v-if="current > 0 && !this.showInfo" style="margin-left: 8px" @click="prevSteps">上一步</a-button>
- <a-button @click="continueOperation" type="primary" v-if="current==2 && this.showInfo ">
- 继续操作
- </a-button>
- <a-button v-if="current==2 && this.showInfo " style="margin-left: 8px" @click="terminatingOperation">终止操作
- </a-button>
- </div>
- </a-card>
- </div>
- </template>
- <script>
- import Popup from './PopupSubTable.vue';
- import {httpAction, postAction, getAction} from "@api/manage";
- import {JeecgListMixin} from '@/mixins/JeecgListMixin'
- import AMapLoader from '@amap/amap-jsapi-loader'
- import {reactive} from 'vue';
- import axios from 'axios';
- window._AMapSecurityConfig = {
- securityJsCode: 'f762c44f71422cd56f90acc2a8e75144' //填写你的安全密钥
- };
- export default {
- name: "registration",
- inject: ['closeCurrent'],
- mixins: [JeecgListMixin],
- data() {
- return {
- validatorRules:{
- },
- calltestResultsName: '',
- companyName: '',
- hallName: '',
- sysCompany: [],
- sysBusinessHallList: "",
- cities: "",
- formValidate: {
- province: '',
- city: ''
- },
- ruleValidate: '',
- countryName: "",
- cityName: "",
- country: '',
- lnglats: [],
- map: null,
- lnglatMaps: new Map(),
- zoom: 18,
- center: [118.02, 24.48],
- searchOption: {
- // 限制搜索城市的范围
- citylimit: false,
- },
- optionsWithDisabled:
- [{
- text: '非高危',
- value: '1',
- }, {
- text: '已报关停',
- value: '3',
- }, {
- text: '已报蓝紫名单',
- value: '2',
- }],
- defaultValue: "",
- content: "",
- inputValue: "",
- mapResultList: [],
- searchResult: {
- address: "",
- latitude: "",
- longitude: "",
- name: "",
- type: "",
- country: "",
- province: "",
- city: "",
- area: "",
- township: "",
- street: "",
- neighborhood: "",
- locationName: "",
- },
- events: {
- click(e) {
- _this.center = [e.lnglat.lng, e.lnglat.lat];
- _this.form.lon = e.lnglat.lng;
- _this.form.lat = e.lnglat.lat;
- _this.getAddress(_this.center);
- _this.defaultValue = "";
- },
- },
- addIng: false,
- url: {
- "querySizeByCardNo": "/businessReminderCard/querySizeByCardNo",
- "list": "",
- "add": "/businessReminderCard/add",
- "editById": "/businessReminderCard/editById",
- "queryById": "/businessReminderCard/queryById",
- "queryByCardNo": "/businessReminderCard/queryByCardNo",
- "getCompany": "/sysCompany/list",
- },
- labelCol: {span: 2},
- wrapperCol: {span: 23},
- // 1列
- labelCol1: {
- labelCol: {
- xs: {span: 24},
- sm: {span: 2},
- },
- wrapperCol: {
- xs: {span: 24},
- sm: {span: 21},
- }
- },
- labelCol1Pro: {
- labelCol: {
- span: 8
- },
- wrapperCol: {
- span: 15
- }
- },
- labelCol1Pro1A3: {
- labelCol: {
- span: 14
- },
- wrapperCol: {
- span: 10
- }
- },
- labelCol1ProA3: {
- labelCol: {
- span: 8
- },
- wrapperCol: {
- span: 15
- }
- },
- labelCol1Results: {
- labelCol: {
- span: 5
- },
- wrapperCol: {
- span: 15
- }
- },
- labelCol1ProMax: {
- labelCol: {
- span: 8
- },
- wrapperCol: {
- span: 15
- }
- },labelCol1ProMax5A6: {
- labelCol: {
- span: 14
- },
- wrapperCol: {
- span: 5
- }
- },
- labelCol1ProMaxA6: {
- labelCol: {
- span: 14
- },
- wrapperCol: {
- span: 5
- }
- },
- labelCol1ProMax4A8: {
- labelCol: {
- span: 12
- },
- wrapperCol: {
- span: 5
- }
- }, labelCol1ProMaxA8: {
- labelCol: {
- span: 13
- },
- wrapperCol: {
- span: 5
- }
- },
- labelCol1ProMax2A7: {
- labelCol: {
- span: 11
- },
- wrapperCol: {
- span: 5
- }
- },
- labelCol1ProMaxPlus: {
- labelCol: {
- span: 12
- },
- wrapperCol: {
- span: 12
- }
- },
- // 2列
- labelCol2: {
- labelCol: {
- span: 7
- },
- wrapperCol: {
- span: 16
- }
- }, labelColDate: {
- labelCol: {
- span: 7
- },
- wrapperCol: {
- span: 14
- }
- },
- addressCol: {
- labelCol: {
- span: 8
- },
- wrapperCol: {
- span: 16
- }
- },
- //校验的规则
- rules: {
- cardNo: [
- { required: true, message: '请输入身份证号码!' },
- { validator: this.validatePhone }
- ],
- cardName: [{
- required: true, message: '请输姓名!'
- }],
- cardDate: [
- {required: true, message: '请输入身份证证件有效期...'}
- ],
- modelPhone: [
- {
- required: true,
- message: '请输入电话号码',
- trigger: 'blur'
- }],
- modelAddress:[
- {
- required: true,
- message: '请输入联电归属地!',
- trigger: 'blur'
- }
- ],
- operatorType:[
- {
- required: true,
- message: '请选择运营商类型',
- trigger: 'blur'
- }
- ],
- phonePurpose:[
- {
- required: true,
- message: '请选择新办号码用途',
- trigger: 'blur'
- }
- ],
- industry:[
- {
- required: true,
- message: '请选择客户所属行业',
- trigger: 'blur'
- }
- ],
- modelOperator:[
- {
- required: true,
- message: '请选择客户现用号码!',
- trigger: 'blur'
- }
- ],
- calltestResultsName:[
- {
- required: true,
- message: '请选择拨测结果!',
- trigger: 'blur'
- }
- ],
- sysBusinessHallAndSysCompany:[
- {
- required: true,
- message: '请选择营业厅地址!',
- trigger: 'blur'
- }
- ],
- workAddress:[
- {
- required: true,
- message: '请输入工作地址!',
- trigger: 'blur'
- }
- ],
- currentAddress:[
- {
- required: true,
- message: '请输入现居住地址!',
- trigger: 'blur'
- }
- ],
- isDxNumber:[
- {
- required: true,
- message: '请选择客户名下无电信号码!',
- trigger: 'blur'
- }
- ],
- judgmentResearch:[
- {
- required: true,
- message: '请选择判研结果结果!',
- trigger: 'blur'
- }
- ]
- },
- poiList: '',
- isSizeNumberResults: '',
- showsearchResult: false,
- showsearchResultBusinessAddress: true,
- showsearchcurrentAddress: false,
- addressG: '',
- lnglat: {},
- distance: '20',
- distance1: '',
- distance2: '',
- distance3: '',
- showInfo: false,
- newDatas: [],
- //表单信息
- model: {
- sysBusinessHall: '',
- company: '',
- industry: '',
- judgmentResearch: '',
- isShutDownNote: '',
- isShutDown: '',
- isRefundNote: '',
- isRefund: '',
- isUseToNote: '',
- isUseTo: '',
- isBroadbandNote: '',
- isBroadband: '',
- isDxNumberNote: '',
- isDxNumber: '',
- calltestResults: '',
- operatorType: '',
- yidong: 0,
- liantong: 0,
- dianxin: 0,
- qita: 0,
- operator: '',
- currentAddress: '',
- phonePurpose: '',
- useLife: '',
- address: '',
- isNewly: '',
- isNewlyNote: '',
- isChannel: '',
- isChannelNote: '',
- isInvolvingFraud: '',
- isInvolvingFraudNote: '',
- numberResults: [],
- id: null,
- phone: null,
- cardNo: '',
- cardName: '',
- cardStartTime: '',
- cardEndTime: '',
- idCardAddress: '',
- wordAddress: '',
- positionInformation: '',
- businessAddress: '',
- newPhone: ''
- },
- current: 0,
- //步骤条
- steps: [
- {
- title: '入网提示卡',
- content: 'First-content',
- },
- {
- title: '排查',
- content: 'First-content',
- },
- {
- title: '后期处理',
- content: 'First-content',
- },
- ],
- }
- },
- created() {
- this.model.id = this.$route.query.id;
- },
- mounted() {
- this.queryById();
- //DOM初始化完成进行地图初始化
- this.initMap();
- this.getSysCompany();
- },
- methods: {
- validateMobile(rule, value, callback) {
- let reg = /^1(3|4|5|7|8)\d{9}$/
- if (!reg.test(value)) {
- callback('请输入正确手机号')
- } else {
- callback()
- }
- },
- // 校验手机号
- validatePhone(rule,value,callback){
- if (value.length === 15 || value.length === 18) {
- if (!value || new RegExp(/(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{7}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}$)/).test(value)) {
- callback();
- } else {
- callback("您的身份证格式不正确!");
- }
- }
- },
- //校验姓名
- getPhoneTypeSize() {
- let data = {
- "cardNo": this.model.cardNo
- };
- getAction(this.url.querySizeByCardNo, data).then((res) => {
- if (res.success) {
- let result = res.result;
- if (result != null) {
- this.model.yidong = result.yidong;
- this.model.dianxin = result.dianxin;
- this.model.liantong = result.liantong;
- this.model.qita = result.qita;
- }
- }
- })
- },
- getSysCompany() {
- let data = {
- "cardNo": this.model.cardNo
- };
- getAction(this.url.getCompany, data).then((res) => {
- if (res.success) {
- let result = res.result;
- console.log(result + "result");
- if (result != null) {
- this.sysCompany = result;
- }
- }
- })
- },
- change(val) {
- for (var i = 0; i < this.sysCompany.length; i++) {
- if (val == this.sysCompany[i].id) {
- this.sysBusinessHallList = this.sysCompany[i].sysBusinessHallList;
- }
- }
- },
- //新增标记
- showLocation(data) {
- let marker = new AMap.Marker({
- position: new AMap.LngLat(data[0], data[1]) //参数为经纬度
- })
- this.map.clearMap()// 清除所有覆盖物(点标志)
- this.map.add(marker)// 添加点标志
- this.showInfoWindow(marker);//自定义信息窗体
- },
- //自定义信息窗体
- showInfoWindow(marker) {
- let infoWindow = new AMap.InfoWindow({
- isCustom: true, //是否自定义信息窗体
- content: `<div style="background-color: white;padding: 0 5px; border-radius: 5px;border: 1px solid #cccccc;"> 地址:${this.model.wordAddress}</div>`,
- closeWhenClickMap: true,
- zIndex: 999,
- offset: new AMap.Pixel(16, -35)
- });
- infoWindow.open(this.map, marker.getPosition());
- },
- /** 初始化搜索 */
- mapSearchInit() {
- let autoOptions = {
- input: "tipInput",
- }
- let autoCompleteComponent = new AMap.Autocomplete(autoOptions);
- this.autoCompleteComponent = autoCompleteComponent;
- // 注册placeSearch组件
- this.placeSearchComponent = new AMap.PlaceSearch()
- },
- searchKeyWordsysBusinessHall(data, nameType) {
- let that = this
- that.placeSearchComponent.search(data, function (status, result) {
- if (status === 'complete' && result.info === "OK") {
- that.showsearchResultBusinessAddress = true
- that.showsearchResult = false
- that.showsearchcurrentAddress = false
- that.poiList = result.poiList.pois
- that.markerResult(that.poiList[0], nameType)
- } else {
- that.showsearchResultBusinessAddress = false
- that.showsearchResult = false
- that.showsearchcurrentAddress = false
- that.poiList = []
- //that.$message.warning("没有查到结果");
- }
- })
- },
- //根据输入内容查询
- searchKeyWord(data) {
- let that = this
- if (data === 'model.wordAddress') {
- this.showsearchResult = true;
- that.placeSearchComponent.search(that.model.wordAddress, function (status, result) {
- if (status === 'complete' && result.info === "OK") {
- that.showsearchResultBusinessAddress = false
- that.showsearchResult = true
- that.showsearchcurrentAddress = false
- that.poiList = result.poiList.pois
- } else {
- that.showsearchResult = false
- that.showsearchResultBusinessAddress = false;
- that.showsearchcurrentAddress = false
- that.poiList = []
- //that.$message.warning("没有查到结果");
- }
- })
- }
- if (data === 'model.businessAddress') {
- this.showsearchResultBusinessAddress = true;
- that.placeSearchComponent.search(that.model.businessAddress, function (status, result) {
- if (status === 'complete' && result.info === "OK") {
- that.showsearchResultBusinessAddress = true
- that.showsearchResult = false
- that.showsearchcurrentAddress = false
- that.poiList = result.poiList.pois
- } else {
- that.showsearchResultBusinessAddress = false
- that.showsearchResult = false
- that.showsearchcurrentAddress = false
- that.poiList = []
- //that.$message.warning("没有查到结果");
- }
- })
- }
- if (data === 'model.currentAddress') {
- this.showsearchcurrentAddress = true;
- that.placeSearchComponent.search(that.model.currentAddress, function (status, result) {
- if (status === 'complete' && result.info === "OK") {
- that.showsearchcurrentAddress = true
- that.showsearchResult = false
- that.showsearchResultBusinessAddress = false
- that.poiList = result.poiList.pois
- } else {
- that.showsearchcurrentAddress = false
- that.showsearchResultBusinessAddress = false
- that.showsearchResult = false
- that.poiList = []
- //that.$message.warning("没有查到结果");
- }
- })
- }
- },
- getdiscount(lat1, lng1, lat2, lng2) {
- // console.log(paramObj)
- var lng1 = lng1
- var lat1 = lat1
- var lng2 = lng2
- var lat2 = lat2
- var radLat1 = lat1 * Math.PI / 180.0;
- var radLat2 = lat2 * Math.PI / 180.0;
- var a = radLat1 - radLat2;
- var b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0;
- var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) +
- Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
- s = s * 6378.137;// EARTH_RADIUS;
- s = Math.round(s * 10000) / 10000;
- s = s * 1000
- if (isNaN(s)) {
- return 0 + 'm';
- }
- if (s > 1000) {
- // 大于1000米时
- s = Math.floor(s / 1000 * 100) / 100;
- s = s + 'km'
- } else {
- // 小于1000米直接返回
- s = s + 'm'
- }
- this.distance = s;
- return s;
- },
- space(lat1, lng1, lat2, lng2) {
- console.log(lat1, lng1, lat2, lng2)
- var radLat1 = lat1 * Math.PI / 180.0;
- var radLat2 = lat2 * Math.PI / 180.0;
- var a = radLat1 - radLat2;
- var b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0;
- var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) +
- Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
- s = s * 6378.137;
- s = Math.round(s * 10000) / 10000;
- return s // 单位千米
- },
- carGPSIP(data) {
- var map = new AMap.Map("container", {resizeEnable: true});//初始化地图
- //信息窗口实例
- var infoWindow = new AMap.InfoWindow({offset: new AMap.Pixel(0, -30)});
- //遍历生成多个标记点
- data.forEach((val, key) => {
- console.log("属性:" + key + ",值:" + data.get(key));
- console.log("wordAddressname".indexOf("name"));
- console.log(key.includes("name"));
- if (!key.includes("name")) {
- var marker = new AMap.Marker({
- position: data.get(key),//不同标记点的经纬度
- map: map
- });
- marker.content = data.get(key + 'name');
- marker.on('click', markerClick);
- marker.emit('click', {target: marker});//默认初始化不出现信息窗体,打开初始化就出现信息窗体
- }
- })
- function markerClick(e) {
- infoWindow.setContent(e.target.content);
- infoWindow.open(map, e.target.getPosition());
- }
- map.setFitView();
- },
- //选择搜索的内容
- markerResult(data, nameType) {
- if (nameType === 'wordAddress') {
- this.model.wordAddress = data.name;
- }
- if (nameType === 'businessAddress') {
- this.model.businessAddress = data.name;
- }
- if (nameType === 'currentAddress') {
- this.model.currentAddress = data.name;
- }
- this.lnglatMaps;
- console.log(data)
- this.showsearchResult = false;
- this.showsearchResultBusinessAddress = false;
- this.showsearchcurrentAddress = false;
- //this.model.wordAddress = data.name; //地点名称
- var marker = new AMap.Marker({
- position: [Number(data.location.lng), Number(data.location.lat)],//地点名称 坐标
- });
- //this.map.clearMap()// 清除所有覆盖物(点标志)
- //this.map.add(marker)// 添加点标志
- //this.showInfoWindow(marker);
- this.lnglatMaps.set(nameType, [Number(data.location.lng), Number(data.location.lat)]);
- this.lnglatMaps.set(nameType + 'name', data.name);
- if (this.lnglatMaps.size > 6) {
- this.lnglatMaps.clear();
- }
- //this.lnglats.push( [Number(data.location.lng),Number(data.location.lat)]); //添加坐标
- // if (this.model.wordAddress ===null || this.model.businessAddress===null || this.model.currentAddress===null){
- // return;
- // }
- // if (this.lnglatMaps.size===4){
- this.carGPSIP(this.lnglatMaps);//各个点分别显示坐标
- //}
- setTimeout(() => {
- this.map.setCenter(data.location);
- this.map.setZoom(15);
- }, 50)
- let thisPosition = {
- mapAddress: this.model.wordAddress,
- lng: data.location.lng,
- lat: data.location.lat
- };
- var map = new Map();
- map.set("lng", data.location.lng);
- map.set("lat", data.location.lat);
- this.mapResultList.push(map);
- console.log(data.location.lng + data.location.lat + "thisPosition")
- this.$emit("select", thisPosition)
- if (this.lnglatMaps.size === 6) {
- var currentAddressD = this.lnglatMaps.get("currentAddress");
- var wordAddressD = this.lnglatMaps.get("wordAddress");
- var businessAddressD = this.lnglatMaps.get("businessAddress");
- this.distance1 = this.space(currentAddressD[1], currentAddressD[0], businessAddressD[1], businessAddressD[0]);//现住地址 营业厅地址
- this.distance2 = this.space(wordAddressD[1], wordAddressD[0], businessAddressD[1], businessAddressD[0]);//工作地址 营业厅地址
- this.distance3 = this.space(currentAddressD[1], currentAddressD[0], wordAddressD[1], wordAddressD[0]);//现住地址 工作地址
- if (parseFloat(this.distance1) > parseFloat(this.distance) || parseFloat(this.distance2) > parseFloat(this.distance) || parseFloat(this.distance3) > parseFloat(this.distance)) {
- this.model.judgmentResearch = "1";
- } else {
- this.model.judgmentResearch = "4";
- }
- }
- },
- // 获取详细地址
- getAddress(center) {
- let _this = this;
- let geocoder = new AMap.Geocoder({});
- geocoder.getAddress(center, function (status, result) {
- if (status === "complete" && result.info === "OK") {
- let obj = result.regeocode.addressComponent;
- let locationName =
- obj.province +
- obj.city +
- obj.district +
- obj.township +
- obj.street +
- obj.streetNumber;
- _this.form.address = locationName;
- }
- });
- },
- initMap() {
- AMapLoader.load({
- key: "8e513e3c374bdb2dd0095cd337b02ee6", // 申请好的Web端开发者Key,首次调用 load 时必填
- version: "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
- plugins: [
- 'AMap.ToolBar',
- 'AMap.Scale',
- 'AMap.Geolocation',
- 'AMap.PlaceSearch',
- 'AMap.AutoComplete',
- 'AMap.Geocoder',
- 'AMap.CitySearch',
- 'AMap.RangingTool' // 这个就是测距插件
- ],
- resizeEnable: true,
- }).then((AMap) => {
- const that = this;
- that.map = new AMap.Map("container", { //设置地图容器id
- viewMode: "3D", //是否为3D地图模式
- zoom: 12, //初始化地图级别
- });
- that.handleClick(AMap)//地图选点
- that.map.addControl(new AMap.Scale()) // 在图面添加比例尺控件,展示地图在当前层级和纬度下的比例尺
- that.map.addControl(new AMap.ToolBar()) //在图面添加鹰眼控件,在地图右下角显示地图的缩略图
- that.geocoder = new AMap.Geocoder()
- that.mapSearchInit()
- }).catch(e => {
- console.log(e);
- })
- },
- //点击地图获取地理位置
- handleClick() {
- this.map.on('click', (e) => {
- let lng = e.lnglat.lng
- let lat = e.lnglat.lat
- let marker = new AMap.Marker({
- position: new AMap.LngLat(lng, lat)
- })
- this.map.clearMap()// 清除所有覆盖物(点标志)
- this.map.add(marker)// 添加点标志
- let lnglat = [lng, lat]
- let that = this
- that.geocoder.getAddress(lnglat, function (status, result) {
- if (status === 'complete' && result.regeocode) {
- that.address = result.regeocode.formattedAddress;
- that.showInfoWindow(marker);//自定义信息窗体
- let thisPosition = {
- address: that.address,
- lng: lng,
- lat: lat
- };
- that.$emit("select", thisPosition) //返回给父组件
- } else {
- this.$message.error('根据经纬度查询地址失败')
- }
- })
- })
- },
- //获取当前定位
- getCurrentLocation() {
- const that = this;
- that.geolocation = new AMap.Geolocation({
- timeout: 3000, //超过3秒后停止定位,默认:5s
- enableHighAccuracy: true,
- zoomToAccuracy: true, //定位成功后是否自动调整地图视野到定位点
- });
- that.geolocation.getCurrentPosition(function (status, result) {
- //备注:getCurrentPosition方法会调用超时或失败:
- //Get geolocation time out:浏览器定位超时,包括原生的超时,可以适当增加超时属性的设定值以减少这一现象。
- //另外还有个别浏览器(如google Chrome浏览器等)本身的定位接口是黑洞,通过其请求定位完全没有回应,也会超时返回失败。
- //Get geolocation failed:定位失败,Chrome、火狐以及部分套壳浏览器接入的定位服务在国外,有较大限制,失败率高。
- console.log(status, result);
- if (status == 'complete') {
- that.onComplete(result)
- } else {
- that.onError(result) //失败后可使用getCityInfo获取非精准定位(具体到省市)
- }
- });
- },
- //解析定位结果
- onComplete(data) {
- console.log('定位结果:' + data.position) //经纬度信息
- let lnglat = data.position;
- let marker = new AMap.Marker({ //创建标记
- position: new AMap.LngLat(lnglat[0], lnglat[1])
- })
- this.map.clearMap()// 清除所有覆盖物(点标志)
- this.map.add(marker)// 添加点标志
- let that = this
- //经纬度转换为中文地址详情
- that.geocoder.getAddress(lnglat, function (status, result) {
- if (status === 'complete' && result.regeocode) {
- that.address = result.regeocode.formattedAddress;
- that.showInfoWindow(marker);//自定义信息窗体
- } else {
- this.$message.error('根据经纬度查询地址失败')
- }
- })
- },
- //解析定位错误信息
- onError(data) {
- this.getLngLatLocation()
- },
- //在获取具体定位失败时调用的代码:(非精准定位!!!)
- getLngLatLocation() {
- const that = this;
- that.geolocation.getCityInfo(function (status, result) {
- if (status === 'complete') {
- let data = result.position
- that.address = result.province + result.city;
- that.showLocation(data)
- } else {
- this.$message.error('获取地址失败')
- }
- })
- },
- keyupInfoSelect() {
- if (this.model.cardNo === '') {
- return;
- }
- this.closeCurrent();
- this.$router.push({path: '/network/PopupSub', query: {cardNo: this.model.cardNo}});
- },
- keyupInfoPhone(phone) {
- let data = {
- "number": phone
- };
- if (phone.length === 11) {
- let data = {
- "mobile": phone
- };
- getAction("businessReminderCard/queryByMobile", data).then((res) => {
- console.log(res)
- if (res != null) {
- this.model.address = res;
- }
- })
- }
- },
- keyupInfo() {
- //身份证输入查询
- if (this.model.cardNo.length === 15 || this.model.cardNo.length === 18) {
- let that = this;
- let data = {
- "cardNo": this.model.cardNo
- }
- this.getPhoneTypeSize();
- getAction(that.url.queryByCardNo, data).then((res) => {
- if (res.success) {
- let result = res.result;
- let view = this.model;
- if (result != null) {
- for (var i in result) {
- Object.keys(view).forEach(function (key) {
- view[key] = result[i][key];
- })
- this.isSizeNumberResults = result[i]["isSizeNumberResults"];
- }
- if (result[i]["isSizeNumberResults"] === 'is') {
- this.$confirm({
- title: "确认是否继续...",
- content: '该用户有多个不友好研判结果',
- onOk: function () {
- },
- onCancel: function () {
- Object.keys(view).forEach(function (key) {
- view[key] = '';
- })
- }
- });
- }
- }
- // this.$refs.modalDetail.detail( );
- // this.$refs.modalDetail.title = "详情";
- }
- })
- }
- for (var item of this.sysCompany) {
- if (item.id === this.model.company) {
- this.companyName = item.name
- for (var it of item.sysBusinessHallList) {
- if (it.id === this.model.sysBusinessHall) {
- this.hallName = it.name
- }
- }
- }
- }
- this.searchKeyWordsysBusinessHall(this.model.wordAddress,'wordAddress');
- this.searchKeyWordsysBusinessHall('中国电信'+this.hallName,'businessAddress');
- this.searchKeyWordsysBusinessHall(this.model.currentAddress,'currentAddress');
- },
- /**获取详情*/
- queryById() {
- let that = this;
- let data = {
- "id": that.model.id
- }
- getAction(that.url.queryById, data).then((res) => {
- if (res.success) {
- let result = res.result;
- if (result != null) {
- for (var i in result) {
- that.model[i] = result[i] == null ? null : result[i].toString();
- }
- }
- }
- })
- },
- /**下一步骤*/
- nextSteps() {
- // if (this.current===0){
- // const newDatas = [];
- // let message = '';
- // const h = this.$createElement
- // if (this.model.cardNo==='' || this.model.cardNo===null){
- // newDatas.push(h('p', null, '<身份证件号码> 不可为空... '))
- //
- // }
- // if (this.model.cardName==='' || this.model.cardName===null){
- // newDatas.push(h('p', null, '<身份证件姓名> 不可为空... '))
- //
- // }
- // // if (this.model.idCardAddress==='' || this.model.idCardAddress===null){
- // // newDatas.push(h('p', null, '<身份证件地址> 不可为空...... '))
- // // message=message+ '<身份证件地址> 不可为空... '+<br/>
- // // }
- // if (this.model.cardStartTime===''|| this.model.cardStartTime===null){
- // newDatas.push(h('p', null, '<身份证件开始时间> 不可为空... '))
- // }
- // if (this.model.cardEndTime==='' || this.model.cardEndTime===null){
- // newDatas.push(h('p', null, '<身份证件截止日期> 不可为空... '))
- // }
- // if (this.model.phone==='' ||this.model.phone===null){
- // newDatas.push(h('p', null, '<拨测联系电话> 不可为空... '))
- // }
- // if (this.model.address===''|| this.model.address===null){
- // newDatas.push(h('p', null, '<联电归属地> 不可为空... '))
- // }
- // // if (this.model.useLife==='' || this.model.useLife===null){
- // // newDatas.push(h('p', null, '<号码使用年限> 不可为空... '))
- // // }
- // if (this.model.phonePurpose==='' || this.model.phonePurpose===null){
- // newDatas.push(h('p', null, '<号码使用用途> 不可为空... '))
- // }
- // // if (this.model.idCardAddress==='' ||this.model.idCardAddress=== null){
- // // newDatas.push(h('p', null, '<证件地址(到村/小区)> 不可为空... '))
- // // }
- // if (this.model.currentAddress==='' || this.model.currentAddress===null){
- // newDatas.push(h('p', null, '<现住地址(到村/小区)> 不可为空... '))
- // }
- // if (this.model.operator==='' || this.model.operator===null){
- // newDatas.push(h('p', null, '<客户现用号码> 不可为空... '))
- // }
- // if (this.model.operatorType==='' || this.model.operatorType===null){
- // newDatas.push(h('p', null, '<运营商类型> 不可为空... '))
- // }
- // if (this.model.calltestResults==='' ||this.model.calltestResults===null){
- // newDatas.push(h('p', null, '<拨测结果> 不可为空... '))
- // }
- // // if (this.model.positionInformation==='' || this.model.positionInformation===null){
- // // newDatas.push(h('p', null, '<位置信息> 不可为空... '))
- // // }
- // if (this.model.wordAddress===''|| this.model.wordAddress===null){
- // newDatas.push(h('p', null, '<工作地址> 不可为空... '))
- // }
- // if (this.model.businessAddress===''|| this.model.businessAddress===null){
- // newDatas.push(h('p', null, '<营业厅地址> 不可为空... '))
- // }
- // if (newDatas.length!==0){
- // this.$confirm({
- // title: "入网提示卡页签有未输入值...",
- // content: h('div', null, newDatas),
- // // message: h('div', null, newDatas),
- // onOk: function () {
- //
- // },
- // onCancel:function (){
- //
- // }
- // });
- // return;
- // }
- // }
- if (this.current === 1) {
- let that = this;
- console.info(this.model.calltestResults);
- that.addIng == false
- let data = this.getData();
- let id = that.model.id;
- let i = 1;
- let dataMessage = '';
- const h = this.$createElement
- this.newDatas = [];
- if (this.model.calltestResults === 1 || this.model.calltestResults === '1') {
- this.calltestResultsName = '关机';
- }
- if (this.model.calltestResults === 2 || this.model.calltestResults === '2') {
- this.calltestResultsName = '未接通';
- }
- if (this.model.calltestResults === 3 || this.model.calltestResults === '3') {
- this.calltestResultsName = '可接通不知晓入网事宜';
- }
- if (this.model.calltestResults === 4 || this.model.calltestResults === '4') {
- this.calltestResultsName = '可接通认可办理';
- }
- //集合遍历
- var company = '';
- var hall = '';
- for (var item of this.sysCompany) {
- if (item.id === this.model.company) {
- this.companyName = item.name
- for (var it of item.sysBusinessHallList) {
- if (it.id === this.model.sysBusinessHall) {
- this.hallName = it.name
- }
- }
- }
- }
- this.newDatas.push('异常信息提醒:')
- if (data["calltestResults"] === '2') {
- this.newDatas.push(i++ + '、该用户拨测号码未接通 请确认是否继续操作 。 ')
- }
- if ( data["judgmentResearch"] === '3' ) {
- this.newDatas.push(i++ + '、该用户附件地址人工判研异常 。 ')
- }
- if (data["calltestResults"] === '1') {
- this.newDatas.push(i++ + '、该用户拨测号码关机 请确认是否继续操作 。 ')
- }
- if (this.isSizeNumberResults === 'is') {
- this.newDatas.push(i++ + ' 、该用户有多个不友好研判结果 请确认是否继续操作 。 ')
- }
- if (data["judgmentResearch"] === '1' ) {
- if (parseFloat(this.distance1) > parseFloat(this.distance)) {
- this.newDatas.push(i++ + ' 、该用户现住地址(到村/小区),营业厅地址 距离过远 请确认是否继续操作 。 ')
- }
- if (parseFloat(this.distance2) > parseFloat(this.distance)) {
- this.newDatas.push(i++ + ' 、该用户 工作地址 , 营业厅地址 距离过远 请确认是否继续操作 。 ')
- }
- if (parseFloat(this.distance3) > parseFloat(this.distance)) {
- this.newDatas.push(i++ + ' 、该用户现住地址(到村/小区),工作地址距离过远 请确认是否继续操作 。 ')
- }
- }
- if (this.newDatas.length === 1) {
- //newDatas.push(h('p', null, i++ +'、 暂无风险提示 请继续操作。 '))
- } else {
- this.showInfo = true;
- //document.getElementById('showInfo').innerHTML = h('div', null, this.newDatas)
- // this.$confirm({
- // okText: '继续操作',
- // cancelText: '终止操作',
- // title: "确认是否继续",
- // content: h('div', null, newDatas),
- // onOk: function () {
- //
- // } ,
- // onCancel:function (){
- // data['status']="0";//中断提交
- // that.submit(data,id)
- // }
- // });
- }
- }
- if (this.current < this.steps.length) {
- this.current = this.current + 1;
- }
- },
- /**上一步骤*/
- prevSteps() {
- if (this.current != 0) {
- this.current = this.current - 1;
- }
- },
- getData() {
- var arr = '';
- if (this.model.numberResults === "undefined") {
- arr = this.model.numberResults.join(",");
- }
- let data = {
- "sysBusinessHall": this.model.sysBusinessHall,
- "company": this.model.company,
- //用户id
- "id": this.model.id,
- //联电归属地
- "address": this.model.address,
- //拨测联系电话
- "phone": this.model.phone,
- //拨测结果
- "calltestResults": this.model.calltestResults,
- //证件地址
- "idCardAddress": this.model.idCardAddress,
- //现住地址
- "currentAddress": this.model.currentAddress,
- //现用号码运营商
- "operator": this.model.operator,
- //现用号码运营商类型
- "operatorType": this.model.operatorType,
- //现用号码运营商类型备注
- "operatorTypeNote": this.model.operatorTypeNote,
- //现用号码使用年限
- "useLife": this.model.useLife,
- //现用号码使用用途
- "phonePurpose": this.model.phonePurpose,
- //客户名下无电信号码
- "isDxNumber": this.model.isDxNumber,
- //客户名下无电信号码备注
- "isDxNumberNote": this.model.isDxNumberNote,
- //申请号码办理征信类、融合宽带业务
- "isBroadband": this.model.isBroadband,
- //申请号码办理征信类、融合宽带业务备注
- "isBroadbandNote": this.model.isBroadbandNote,
- //申请号码使用用途异常
- "isUseTo": this.model.isUseTo,
- //申请号码使用用途异常备注
- "isUseToNote": this.model.isUseToNote,
- //客户名下号码存在异常高频率充值、退费
- "isRefund": this.model.isRefund,
- //客户名下号码存在异常高频率充值、退费备注
- "isRefundNote": this.model.isRefundNote,
- //客户名下已有号码(含已注销号码)存在各类关停
- "isShutDown": this.model.isShutDown,
- //客户名下已有号码(含已注销号码)存在各类关停备注
- "isShutDownNote": this.model.isShutDownNote,
- //客户名下在用号码无使用记录,仍要求新办号码
- "isNewly": this.model.isNewly,
- //客户名下在用号码无使用记录,仍要求新办号码备注
- "isNewlyNote": this.model.isNewlyNote,
- //在多个渠道多频次入网的异常情况
- "isChannel": this.model.isChannel,
- //在多个渠道多频次入网的异常情况备注
- "isChannelNote": this.model.isChannelNote,
- //黑名单到期客户新入网的高危疑似涉诈号码
- "isInvolvingFraud": this.model.isInvolvingFraud,
- //黑名单到期客户新入网的高危疑似涉诈号码备注
- "isInvolvingFraudNote": this.model.isInvolvingFraudNote,
- //是否将高危号码上报蓝、紫名单或不可复开关停
- "numberResults": arr,
- "cardNo": this.model.cardNo,
- "cardName": this.model.cardName,
- "cardStartTime": this.model.cardStartTime,
- "endStartTime": this.model.endStartTime,
- "wordAddress": this.model.wordAddress,
- "businessAddress": this.model.businessAddress,
- "positionInformation": this.model.positionInformation,
- "status": '',
- "judgmentResearch":this.model.judgmentResearch
- };
- return data;
- },
- submit(data, id) {
- let mes = '提交成功';
- if (data["status"] === '0') {
- mes = "终止操作 数据保存成功! "
- }
- if (id == null) {
- postAction("/businessReminderCard/add", data).then((res) => {
- if (res.success) {
- this.clearModel()
- this.$message.success(mes, 7);
- this.addIng == true
- } else {
- this.$message.error("提交失败");
- this.addIng == true;
- }
- })
- } else {
- postAction("/businessReminderCard/editById", data).then((res) => {
- if (res.success) {
- this.clearModel()
- this.$message.success(mes, 7);
- this.addIng == true
- this.$router.go(-1);
- this.closeCurrent();
- } else {
- this.$message.error("修改失败");
- this.addIng == true;
- }
- })
- }
- },
- //继续操作
- continueOperation() {
- this.showInfo = false;
- },
- //终止操作
- terminatingOperation() {
- let data = this.getData();
- data['status'] = "0";//中断提交
- this.showInfo = false;
- this.submit(data, this.model.id)
- },
- /**新增*/
- submitBusiness() {
- let that = this;
- that.addIng == false
- let data = this.getData();
- let id = that.model.id;
- let i = 1;
- let dataMessage = '';
- const h = this.$createElement
- const newDatas = [];
- data['status'] = "1";//确认提交
- this.submit(data, id)
- // if( data["calltestResults"] ==='2'){
- // newDatas.push(h('p', null, i++ +'、该用户拨测号码未接通 请确认风险 。 '))
- //
- // }if(this.isSizeNumberResults==='is' ){
- // newDatas.push(h('p', null, i++ +' 、该用户有多个不友好研判结果 请确认风险 。 '))
- //
- // }if(this.isSizeNumberResults==='is' ){
- // newDatas.push(h('p', null, i++ +' 、该用户现住地址(到村/小区),工作地址,营业厅地址距离过远 请确认风险 。 '))
- //
- // }else{
- // newDatas.push(h('p', null, i++ +' 暂无风险提示 请继续。 '))
- // }
- //
- // this.$confirm({
- // title: "确认是否继续提交",
- // content: h('div', null, newDatas),
- // onOk: function () {
- // if (id == null){
- // postAction("/businessReminderCard/add", data).then((res) => {
- // if (res.success) {
- // that.clearModel()
- // that.$message.success("提交成功", 7);
- // that.addIng == true
- // } else {
- // that.$message.error("提交失败");
- // that.addIng == true;
- // }
- // })
- // }else {
- // postAction("/businessReminderCard/editById", data).then((res) => {
- // if (res.success) {
- // that.clearModel()
- // this.$message.success("修改成功", 7);
- // that.addIng == true
- // this.$router.go(-1);
- // this.closeCurrent();
- // } else {
- // this.$message.error("修改失败");
- // that.addIng == true;
- // }
- // })
- //
- // }
- // }
- // });
- },
- /**充值表单*/
- clearModel() {
- this.model = {}
- this.current = 0;
- },
- },
- }
- </script>
- <style scoped>
- .is-error {
- border-color: red
- }
- .box {
- margin: 0;
- padding: 0;
- }
- .redInfo {
- display: inline-block;
- margin-right: 4px;
- color: #f5222d;
- font-size: 14px;
- font-family: SimSun, sans-serif;
- line-height: 1;
- content: '*';
- }
- </style>
|